silly window syndrome

Upload: vishal-taj-pm

Post on 12-Oct-2015

22 views

Category:

Documents


1 download

DESCRIPTION

silly windows

TRANSCRIPT

  • Flow Control The sending station must send frames at a rate that receiving station can absorb themSo transmitting entity should not overwhelm a receiving entity with dataThe receiver maintains a buffer space it store received data temporarilyFlow control manages the data to buffer space and avoids overflow

  • Sliding Window Flow Control Allows multiple frames to transmit at the same timeSequence numbers are used to identify framesSource can send multiple frames before getting acknowledgmentReceiver acknowledges with the next expected sequence numberAck number also indicates how many frames can accomodate at the receiver

  • Sliding Window Flow Control

    Receiver can acknowledge mutiple frames at a timeSource maintains a list of sequence numbers that is allowed to sendDestination maintains a list of sequence numbers that is prepared to receiveEach of these list is called window of frames, this operation is referred as SLIDING WINDOW FLOW CONTROL

  • Sliding Window Flow Control Sequence number occupies a field in the frameFor a k bit field, it occupies sequence number in the range 0 2k -1 Frames are numbered modulo 2kMaximum window size is 2k -1

  • Sliding Window Depiction

  • Sliding Window Flow Control window shrinks when a frame is receivedwindow grows when an ack is sentSender also maintains the list of all frames that are already received, but not acknowledgedWindow size need not be the maximum possible sizeRR and RNR signals are sent to indicate the status of receiver

  • Sliding Window Flow Control If two stations exchange data, each needs to maintain two Windows, one for transmit and other for receiveEach side needs to send the data and acknowledgment to the otherData and ACK can send in a frame called piggybackingA data frame contains Sequence number of that frame, Sequence number used for acknowlegmentACK frame is sends when no data to sendIf no ACK to send along with data, it repeats last ACK number

  • Silly Window Syndrome Problem with sliding window-inefficiencyArises when the sending application creates data slowly or receiving application consumes data slowly.Results in sending very small segments.If TCP sends segments containing 1byte of data, it means 41 byte(20 TCP header+20 IP) datagram transfers only 1 byte of user data.Inefficient use of the network capacity.Even worse if considering the physical and DLL overheads.this problem is called silly window syndrome

  • Syndorme created by sender Sending TCP creates a silly window syndrome if it is serving an application program that creates data slowly, eg, 1byte at a time.In the absence of specific instructions, it may create segments of 1byte of data.Results in a large no of 41 byte segments in internet.Solution-prevent sending TCP from sending byte by byte. It must be forced to wait until it collects a block of data.How long to wait?Nagle found an elegant solution-Nagles algorithm.

  • Nagles algorithm is simple and takes into consideration the speed of the data creating application and speed of the networkIf application program is faster than the network, segments are larger. Otherwise, segments will be smaller.