<?xml version="1.0"?>
<rss version="2.0">
   <channel>
      <title>Why Silly window syndrome happen? by Ayu Latip</title>
      <link>https://padlet.com/hairul_ayu/skr5306week8</link>
      <description>How to solve this issue?</description>
      <language>en-us</language>
      <pubDate>2018-04-10 10:31:03 UTC</pubDate>
      <lastBuildDate>2025-08-27 17:36:26 UTC</lastBuildDate>
      <webMaster>hello@padlet.com</webMaster>
      <image>
         <url></url>
      </image>
      <item>
         <title>Faten</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250194757</link>
         <description><![CDATA[<div><strong>Silly window syndrome</strong> is a problem in <a href="https://en.m.wikipedia.org/wiki/Computer_networking">computer networking</a> caused by poorly implemented <a href="https://en.m.wikipedia.org/wiki/Transmission_Control_Protocol">TCP</a> <a href="https://en.m.wikipedia.org/wiki/Flow_control_(data)">flow control</a>. A serious problem can arise in the sliding window operation when the sending application program creates data slowly, the receiving application program consumes data slowly, or both. If a <a href="https://en.m.wikipedia.org/wiki/Server_(computing)">server</a> with this problem is unable to process all incoming data, it requests that its <a href="https://en.m.wikipedia.org/wiki/Client_(computing)">clients</a> reduce the amount of data they send at a time (the window setting on a TCP <a href="https://en.m.wikipedia.org/wiki/Packet_(information_technology)">packet</a>). If the server continues to be unable to process all incoming data, the window becomes smaller and smaller, sometimes to the point that the data transmitted is smaller than the packet header, making data transmission extremely inefficient. The name of this problem is due to the window size shrinking to a "<a href="https://en.wiktionary.org/wiki/silly">silly</a>" value.</div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 10:51:54 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250194757</guid>
      </item>
      <item>
         <title>Awadh</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250194850</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 10:52:21 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250194850</guid>
      </item>
      <item>
         <title>Shakir</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250195169</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 10:53:47 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250195169</guid>
      </item>
      <item>
         <title>ALIYU MUHAMMAD, AHMED SWARA</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250195359</link>
         <description><![CDATA[<div>&nbsp;</div><div>Silly Window Syndrome (<strong>SWS</strong>) is a problem that can arise in poor implementations of the transmission control protocol (TCP) when the receiver is only able to accept a few bytes at a time or when the sender transmits data in small segments repeatedly. The resulting number of small packets, or <a href="https://www.extrahop.com/company/blog/2015/what-is-a-tinygram/">tinygrams</a>, on the network can lead to a significant reduction in network performance and can indicate an overloaded server or a sending application that is limiting throughput.&nbsp;<br><br></div><div><strong>What Causes Silly Window Syndrome from the Sender Side?</strong>&nbsp;<br><br></div><div>On the sender's side, silly window syndrome can be caused by an application that only generates very small amounts of data to send at a time. Even if the receiver advertises a large window, the default behavior for TCP would be to send each individual small segment instead of buffering the data as it comes in and sending it in one larger segment.&nbsp;<br><br></div><div><strong>What Causes Silly Window Syndrome from the Receiver-Side?</strong>&nbsp;<br><br></div><div>If the receiver processes data slower than the sender transmits it, eventually the usable window becomes smaller than the maximum segment size (MSS) that the sender is allowed to send. However, since the sender wants to get its data to the receiver as quickly as possible, it immediately sends a smaller packet to match the usable window. As long as the receiver continues to consume data at a slower rate, the usable window, and therefore the transmitted segments, will get smaller and smaller.&nbsp;<br><br></div><div><strong>SOLUTIONS TO SWS</strong>&nbsp;<br><br></div><div><strong>Nagles: from the sender </strong><br><br></div><div><strong>1.</strong>&nbsp; &nbsp; &nbsp; Sends the first segments even it is small&nbsp;</div><div><strong>2.</strong>&nbsp; &nbsp; &nbsp; Wait for acknowledgement from the receiver and accumulate silly window created by receiver.&nbsp;<br><br></div><div><strong>Clarks : from the receiver</strong>&nbsp;<br><br></div><div><strong>1.</strong>&nbsp; &nbsp; &nbsp; Sends ACK as soon as data arrive&nbsp;</div><div><strong>2.</strong>&nbsp; &nbsp; &nbsp; Announce a window size of the zero until:&nbsp;<br><br></div><div>Available space in receiver buffer is equal or greater than the maximum segments size or half of the receiver buffer is empty.&nbsp;<br><br></div><div><strong>Delay acknowledgement:</strong>&nbsp;<br><br></div><div>Received segment is not ACK until there is decent amount of free space in receiver buffer. Ack delayed typically for 200ms.&nbsp;<br><br></div><div><strong>Nagles delay ACK deadlock</strong>:&nbsp;<br><br></div><div>This happen when there is no ACK or PSH received by the sender then the transmission became deadlock.&nbsp;<br><br></div><div><strong>&nbsp;</strong><br><br></div><div>&nbsp;<br><br></div><div><strong>&nbsp;</strong><br><br></div><div><strong>&nbsp;</strong><br><br></div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 10:54:37 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250195359</guid>
      </item>
      <item>
         <title>Patrick</title>
         <author>ayomide2omotayo</author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250195439</link>
         <description><![CDATA[<div>Silly Window Syndrome<br>This happens when the application supplying data to the sender does do in large chunks, but the application taking data from receiver (probably an interactive application) does it in very small chunks, say 1 byte at a time. The sender keeps advertising windows of size 1 byte each as the application consumes the bytes one at a time.<br><br>Clark's Solution to this problem<br>We try to prevent the sender from advertising very small windows. The sender should try to wait until it has accumulated enough space in the window to send a full segment or half the receiver's buffer size, which it can estimate from the pattern of window updates that it received in the past.<br>Another problem: What if the same behavior is shown by an interactive application at the sender's end ? That is , what if the sender keeps sending in segments of very small size?<br><br>Nagle's algorithm<br>when data comes to the sender one byte at a time , send the first byte and buffer all the remaining bytes till the outstanding byte is acknowledged. Then send all the buffered characters in one segment and start buffering again till they are acknowledged. It can help reduce the bandwidth usage for example when the user is typing quickly into a telnet connection and the network is slow .<br><br>Persistent Timer<br>Consider the following deadlock situation . The receiver sends an ACK with 0 sized window, telling the sender to wait. Later it send an ACK with non-zero window, but this ACK packet gets lost. Then both the receiver and the sender will be waiting for each other to do something. So we keep another timer. When this timer goes off, the sender transmits a probe packet to the sender with an ACK number that is old. The receiver responds with an ACK with updated window size and transmission resumes.<br>Now we look at the solution of the last two problems ,namely Problem of Random Losses and Sequence Number Wrap Around.<br><br>Problem of Random Losses<br>How do we know if a loss is a congestion related loss or random loss ?If our window size is very large then we cannot say that one packet loss is random loss.So we need to have some mechanism to find what packets are lost. Cumulative Acknowledgement is not a good idea for this.<br><br>Solutions<br>Selective Acknowledgement<br>We need a selective acknowledgement but that creates a problem in TCP because we use byte sequence numbers .So what we we do is that we send the sequence number and the length. We may have to send a large number of such Selective Acknowledgements which will increase the overhead So whenever we get out of sequence packets we send the information a few time not in all the packets anyway. So we cannot rely on Selective Acknowledgement anyway. If we have 32 bit sequence number and 32 bit length,then already we will have too much of overhead .One proposal is to use 16 bit length field. If we have very small gaps then we will think that random losses are there and we need to fill them .If large gaps are there we assume that congestion is there and we need to slow down.</div>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/265571967/efa9adb1e215125e0d7db336d1b3b640/nagle_control_maxresdefault.jpg" />
         <pubDate>2018-04-10 10:55:04 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250195439</guid>
      </item>
      <item>
         <title>Bakr</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250195971</link>
         <description><![CDATA[<div><br>Silly Window Syndrome&nbsp;is a creation of one of those flaws. To understand what is Silly Window Syndrome or SWS, you will first need to understand the underlying mechanism of data communication in TCP/IP.<br><br><br>When two points are communicating under TCP/IP, it involves an acknowledging mechanism. This acknowledging mechanism is what causes Silly Window Syndrome as explained further. Points may refer to two computers, client and server etc.<br><br><br>How Does Silly Window Syndrome Work<br><br>According to the above example of A and B, if B sends 1000B as window size, A will split it into two 500B and send two packets of 500B. Upon receipt of first packet, B will send an acknowledgement saying 500B is available for the window as the second packet is yet to be received. A assumes 500B is the window size and send two packets of 250B consequently. While at B, 500B is used and 500 is just received, it will send 0B as available. At this point, A will assume no window is available though it might happen that buffer is empty as the processor used up the data there. A will still send a smaller packet to see if any window is available. If the contents of buffer at B are not yet removed, it will still receive 0 as response/acknowledgement.<br><br>Thus, the window size keeps on reducing as B sends acknowledgement every time it receives a packet from A. This size is usually smaller than previous acknowledgement as B is receiving data packets in parts. There would be no problem if A could send a packet big enough to cover the buffer size on B at a time. But that is would require additional mechanisms and hence Silly Window Syndrome. The communication stops after A receives 0 two or three times.<br><br>How to prevent Silly Window Syndrome (SWS)<br><br>There is a simple algorithm to be implemented to get rid of SWS. Upon receiving initial packet, B sends half the really available space as the window. That will make A send smaller packets. Consequently, when the packets become too smaller, then B sends the total buffer size so that A can start sending bigger data bytes again.<br><br>In other words, if 1000B is available, B sends 500B as acknowledgement. Accordingly, A sends 250B x 2 packets. For this, A receives 100B as acknowledgement. When it receives 50B packet, B sends 1000B – 50B to A. That makes the entire conversation operational again. This might induce a little delay in processing but will prevent Silly Window Syndrome from occurring and stopping the entire conversation.<br><br>To sum up, SWS is based on the buffer size available on recipient and the assumed size calculated by the sender. To prevent SWS, a delay is introduced and deliberate smaller window size is reciprocated until packet size becomes too small. Then the recipient discloses actually available window size. The entire process keeps on repeating until the communication is complete.</div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 10:57:41 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250195971</guid>
      </item>
      <item>
         <title>Ali</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250195991</link>
         <description><![CDATA[<div>When there is no synchronization between the sender and receiver regarding capacity of the flow of data or the size of the packet, the window syndrome problem is created. When the silly window syndrome is created by the sender, <a href="https://en.m.wikipedia.org/wiki/Nagle%27s_algorithm">Nagle's algorithm</a> is used. Nagle's solution requires that the sender send the first <a href="https://en.m.wikipedia.org/wiki/TCP_segment">segment</a> even if it is a small one, then that it wait until an <a href="https://en.m.wikipedia.org/wiki/ACK_(TCP)">ACK</a> is received or a maximum sized segment (MSS) is accumulated. When the silly window syndrome is created by the receiver, <a href="https://en.m.wikipedia.org/w/index.php?title=David_D_Clark%27s_algorithm&amp;action=edit&amp;redlink=1">David D Clark's solution</a> is used. Clark's solution closes the window until another segment of maximum segment size (MSS) can be received or the buffer is half empty.</div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 10:57:46 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250195991</guid>
      </item>
      <item>
         <title>Mazin</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250195997</link>
         <description><![CDATA[<div>&nbsp;Silly Window Syndrome (SWS) is a problem that can arise in poor implementations of the transmission control protocol (TCP) when the receiver is only able to accept a few bytes at a time or when the sender transmits data in small segments repeatedly. The resulting number of small packets, or <a href="https://www.extrahop.com/company/blog/2015/what-is-a-tinygram/">tinygrams</a>, on the network can lead to a significant reduction in network performance and can indicate an overloaded server or a sending application that is limiting throughput.&nbsp;</div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 10:57:47 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250195997</guid>
      </item>
      <item>
         <title>Aws</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250196023</link>
         <description><![CDATA[<div>When there is no synchronization between the sender and receiver regarding capacity of the flow of data or the size of the packet, the window syndrome problem is created. When the silly window syndrome is created by the sender, <a href="https://en.m.wikipedia.org/wiki/Nagle%27s_algorithm">Nagle's algorithm</a> is used. Nagle's solution requires that the sender send the first <a href="https://en.m.wikipedia.org/wiki/TCP_segment">segment</a> even if it is a small one, then that it wait until an <a href="https://en.m.wikipedia.org/wiki/ACK_(TCP)">ACK</a> is received or a maximum sized segment (MSS) is accumulated. When the silly window syndrome is created by the receiver, <a href="https://en.m.wikipedia.org/w/index.php?title=David_D_Clark%27s_algorithm&amp;action=edit&amp;redlink=1">David D Clark's solution</a> is used. Clark's solution closes the window until another segment of maximum segment size (MSS) can be received or the buffer is half empty.</div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 10:57:52 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250196023</guid>
      </item>
      <item>
         <title>mustafa</title>
         <author>mustafahamied4</author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250197088</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/263671268/c5c144fca7e02bfb1dc87205c16b3555/Silly_Window_Syndrome_caused_by_Receiver_.jpg" />
         <pubDate>2018-04-10 11:02:00 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250197088</guid>
      </item>
      <item>
         <title>Ahmed Swara</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250197691</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/280437072/859b1bb7ee2fdf06b627c15371a0e6da/slide_10.jpg" />
         <pubDate>2018-04-10 11:04:15 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250197691</guid>
      </item>
      <item>
         <title></title>
         <author>dilanaddy</author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250197849</link>
         <description><![CDATA[<div><strong>Silly window syndrome</strong> is a problem in <a href="https://en.m.wikipedia.org/wiki/Computer_networking">computer networking</a> caused by poorly implemented <a href="https://en.m.wikipedia.org/wiki/Transmission_Control_Protocol">TCP</a> <a href="https://en.m.wikipedia.org/wiki/Flow_control_(data)">flow control</a>. A serious problem can arise in the sliding window operation when the sending application program creates data slowly, the receiving application program consumes data slowly, or both.<br>The solution are:<br>1. Nagle: Improving the efficiency of <a href="https://en.m.wikipedia.org/wiki/TCP/IP">TCP/IP</a>networks by reducing the number of packets that need to be sent over the network<br><br></div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 11:04:48 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250197849</guid>
      </item>
      <item>
         <title>Silly window syndrome is a problem in computer networking caused by poorly implemented TCP flow control. ... If a server with this problem is unable to process all incoming data, it requests that its clients reduce the amount of data they send at a time (the window setting on a TCP packet).</title>
         <author>sam071974</author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250198176</link>
         <description><![CDATA[]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 11:06:00 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250198176</guid>
      </item>
      <item>
         <title>Maqsood Ul Haq</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250198952</link>
         <description><![CDATA[<div>&nbsp;</div><div>&nbsp;The first segment is sent regardless of size.&nbsp;<br>&nbsp;Next, if the receiving window and the data to send are at least the maximum segment size (MSS), a full MSS segment is sent.&nbsp;</div><div>&nbsp;Otherwise, if the sender is still waiting on the receiver to acknowledge previously sent data, the sender buffers its data until it receives an acknowledgment.</div><div>&nbsp;<br><figure class="attachment attachment--preview" data-trix-attachment="{&quot;contentType&quot;:&quot;image&quot;,&quot;height&quot;:290,&quot;url&quot;:&quot;file:///C:\\Users\\Maqsood\\AppData\\Local\\Temp\\msohtmlclip1\\01\\clip_image001.jpg&quot;,&quot;width&quot;:330}" data-trix-content-type="image"><img src="file:///C:\Users\Maqsood\AppData\Local\Temp\msohtmlclip1\01\clip_image001.jpg" width="330" height="290"><figcaption class="attachment__caption"></figcaption></figure>&nbsp;</div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 11:09:21 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250198952</guid>
      </item>
      <item>
         <title>Nad</title>
         <author>dilanaddy</author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250199135</link>
         <description><![CDATA[<div><strong>Silly window syndrome</strong> is a problem in <a href="https://en.m.wikipedia.org/wiki/Computer_networking">computer networking</a> caused by poorly implemented <a href="https://en.m.wikipedia.org/wiki/Transmission_Control_Protocol">TCP</a> <a href="https://en.m.wikipedia.org/wiki/Flow_control_(data)">flow control</a>. A serious problem can arise in the sliding window operation when the sending application program creates data slowly, the receiving application program consumes data slowly, or both.<br><br>The solution are:<br><br>1. Nagle Algo: Improving the efficiency of <a href="https://en.m.wikipedia.org/wiki/TCP/IP">TCP/IP</a>networks by reducing the number of packets that need to be sent over the network<br><br>2.Clark: closess the window until another segment of maximum segment size (MSS) can be receive or buffer is haft empty.<br><br>3.Delay Ack: TCP provides <a href="https://en.m.wikipedia.org/wiki/Reliability_(computer_networking)">reliable</a>, ordered, and <a href="https://en.m.wikipedia.org/wiki/Error_detection_and_correction">error-checked</a> delivery of a stream of <a href="https://en.m.wikipedia.org/wiki/Octet_(computing)">octets</a>(bytes) between applications running on hosts communicating by an IP network.<br>service may use the <a href="https://en.m.wikipedia.org/wiki/User_Datagram_Protocol">User Datagram Protocol</a> (UDP), which provides a <a href="https://en.m.wikipedia.org/wiki/Connectionless_communication">connectionless</a> <a href="https://en.m.wikipedia.org/wiki/Datagram">datagram</a>service that emphasizes reduced <a href="https://en.m.wikipedia.org/wiki/Latency_(engineering)">latency</a> over reliability.</div>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/265572266/728b716c844c3ceaa6ff6cd877d61fa5/The_Nagle_Algorithm_and_Delayed_Acknowledgements.gif" />
         <pubDate>2018-04-10 11:10:10 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250199135</guid>
      </item>
      <item>
         <title>MUZZAMMIL MANSUR</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250200131</link>
         <description><![CDATA[<div>Nagle works to solve the silly window syndrome by combining a number of small outgoing messages and sending tham all at once. as long as there is a sent packet for which the sender has received no acjnowledgement, the sender should keep bufeering its output until it has a full packets worth of ouput, allowing output to be sent all at once.<figure class="attachment attachment--preview" data-trix-attachment="{&quot;contentType&quot;:&quot;image&quot;,&quot;height&quot;:586,&quot;url&quot;:&quot;http://www.tcpipguide.com/free/diagrams/tcpsws.png&quot;,&quot;width&quot;:666}" data-trix-content-type="image"><img src="http://www.tcpipguide.com/free/diagrams/tcpsws.png" width="666" height="586"><figcaption class="attachment__caption"></figcaption></figure><br><br></div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 11:13:52 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250200131</guid>
      </item>
      <item>
         <title>Aiman</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250201528</link>
         <description><![CDATA[<div>Zoom in if unable to see.. sorry for awful handwrite</div>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/280434532/ce4935165bb205f18700f9ed229c9439/C46D0E8D_95B5_4CCC_AC9B_09BCE74D2EC1.jpeg" />
         <pubDate>2018-04-10 11:19:20 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250201528</guid>
      </item>
      <item>
         <title>sam</title>
         <author>sam071974</author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250201589</link>
         <description><![CDATA[<div><strong>Silly window syndrome</strong> is a problem in <a href="https://en.wikipedia.org/wiki/Computer_networking">computer networking</a> caused by poorly implemented <a href="https://en.wikipedia.org/wiki/Transmission_Control_Protocol">TCP</a> <a href="https://en.wikipedia.org/wiki/Flow_control_(data)">flow control</a>. A serious problem can arise in the sliding window operation when the sending application program creates data slowly, the receiving application program consumes data slowly, or both. If a <a href="https://en.wikipedia.org/wiki/Server_(computing)">server</a> with this problem is unable to process all incoming data, it requests that its <a href="https://en.wikipedia.org/wiki/Client_(computing)">clients</a> reduce the amount of data they send at a time (the window setting on a TCP <a href="https://en.wikipedia.org/wiki/Packet_(information_technology)">packet</a>). If the server continues to be unable to process all incoming data, the window becomes smaller and smaller, sometimes to the point that the data transmitted is smaller than the packet header, making data transmission extremely inefficient. The name of this problem is due to the window size shrinking to a "<a href="https://en.wiktionary.org/wiki/silly">silly</a>" value.&nbsp;<br><br></div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 11:19:34 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250201589</guid>
      </item>
      <item>
         <title>huwaina &amp; Humam &amp; Ahmed</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250202434</link>
         <description><![CDATA[<div> </div><div>To see how this can happen, let's consider an example that is a variation on the one we’ve been using so far in this section. We'll assume the MSS is 360 and a client/server pair where again, the server's initial receive window is set to this same value, 360. This means the client can send a “full-sized” segment to the server. As long as the server can keep removing the data from the buffer as fast as the client sends it, we should have no problem. (In reality the buffer size would normally be larger than the MSS.)</div><div>Now, imagine that instead, the server is bogged down for whatever reason while the client needs to send it a great deal of data. For simplicity, let's say that the server is only able to remove 1 byte of data from the buffer for every 3 it receives. Let's say it also removes 40 additional bytes from the buffer during the time it takes for the next client's segment to arrive. Here's what will happen:</div><ol><li>The client's send window is 360, and it has lots of data to send. It immediately sends a 360 byte segment to the server. This uses up its entire send window. <br><br></li><li>When the server gets this segment it acknowledges it. However, it can only remove 120 bytes so the server reduces the window size from 360 to 120. It sends this in the <em>Window</em> field of the acknowledgment. <br><br></li><li>The client receives an acknowledgment of 360 bytes, and sees that the window size has been reduced to 120. It wants to send its data as soon as possible, so it sends off a 120 byte segment. <br><br></li><li>The server has removed 40 more bytes from the buffer by the time the 120-byte segment arrives. The buffer thus contains 200 bytes (240 from the first segment, less the 40 removed). The server is able to immediately process one-third of those 120 bytes, or 40 bytes. This means 80 bytes are added to the 200 that already remain in the buffer, so 280 bytes are used up. The server must reduce the window size to 80 bytes. <br><br></li><li>The client will see this reduced window size and send an 80-byte segment. <br><br></li><li>The server started with 280 bytes and removed 40 to yield 240 bytes left. It receives 80 bytes from the client, removes one third, so 53 are added to the buffer, which becomes 293 bytes. It reduces the window size to 67 bytes (360-293). </li></ol>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/271444112/f9a47eb0628d33564d12aabab64a9a2a/tcpsws.png" />
         <pubDate>2018-04-10 11:23:13 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250202434</guid>
      </item>
      <item>
         <title>Maqsood Ul Haq</title>
         <author></author>
         <link>https://padlet.com/hairul_ayu/skr5306week8/wish/250203519</link>
         <description><![CDATA[<div>&nbsp;Delay Ack  <figure class="attachment attachment--preview" data-trix-attachment="{&quot;contentType&quot;:&quot;image&quot;,&quot;height&quot;:173,&quot;url&quot;:&quot;https://media2.picsearch.com/is?TymrdGmN6aEv-RoJX3jUElqMTXOB_V5pFNmOdDkKokU&amp;height=173&quot;,&quot;width&quot;:341}" data-trix-content-type="image"><img src="https://media2.picsearch.com/is?TymrdGmN6aEv-RoJX3jUElqMTXOB_V5pFNmOdDkKokU&amp;height=173" width="341" height="173"><figcaption class="attachment__caption"></figcaption></figure>&nbsp;</div>]]></description>
         <enclosure url="" />
         <pubDate>2018-04-10 11:27:25 UTC</pubDate>
         <guid>https://padlet.com/hairul_ayu/skr5306week8/wish/250203519</guid>
      </item>
   </channel>
</rss>
