Presentation is loading. Please wait.

Presentation is loading. Please wait.

Protocol Strategies. Idle RQ (Stop-and-Wait) Transmission Initiated Ack Received Send Next Send N Send N+1 Fig 1.23.

Similar presentations


Presentation on theme: "Protocol Strategies. Idle RQ (Stop-and-Wait) Transmission Initiated Ack Received Send Next Send N Send N+1 Fig 1.23."— Presentation transcript:

1 Protocol Strategies

2 Idle RQ (Stop-and-Wait) Transmission Initiated Ack Received Send Next Send N Send N+1 Fig 1.23

3 Message is lost Send N Repeat NSend N+1 Fig 1.23

4 Ack is lost Send N Repeat NSend N+1 Fig 1.23

5 Message Propagates First bit of message arrives at receiver -> Propagation delay Fig 1.24

6 Message Transmission SAME Transmission time Transmission time Fig 1.24

7 Message Transmission Plus Propagation Transmission + Propagation time Fig 1.24

8 Receiver Processes Turnaround time Fig 1.24

9 Receiver Send Ack Short time to transmit ACK Fig 1.24

10 ACK Propagates First bit of ACK arrives at receiver -> Propagation delay… same as before Fig 1.24

11 Continuous RQ Sender continues sending, eventually acks arrive from the receiver At the same rate as they depart from the transmitter No Errors Idealistic Fig 1.26

12 Aggressive Sending Strategy but messages are lost Receiver recognizes Sender knows N+1 problem Sends in next slot What is the strategy being used by the receiver when receiving messages out of sequence? Fig 1.27

13 Now ACK is lost! Fig 1.27

14 A different retransmission strategy Information frame lost Fig 1.28

15 Again ACK is Lost Fig 1.28

16 Strategies Idle RQ -> Stop and Wait Continuous RQ-> –Selective Repeat –Go-Back-N

17 Idle RQ Send a message Do not send the next until ACK is received Messages and ACKS numbered 0/1/0/1/…. If “a” is large, –capacity of link may be severely underutilized –Overall user delay may be excessive (why wait)

18 Selective repeat Aggressive sending Multiple outstanding messages (w/o ACK) If error at receiver –Receiver keeps later messages buffered at a lower level and only passes them up when the missing frames arrive –Sender only resends error messages –Extra management effort required at receiver

19 Go-Back-N Aggressive sending Multiple outstanding messages (w/o ACK) If error at receiver –Receiver REJECTs out of order messages –Sender only resends ALL messages from point of error –Simple management effort required at receiver

20 How do you number frames? Fig 1.29

21 SIZE not NAMES Fig 1.29

22 This Shows How To Name Fig 1.30

23 SenderReceiver N=4, K=3 (will lead to a problem) Send M1, M2 and M3 Recv M1, M2 and M3 ACK M1, M2 and M3 Recv ACK M1, M2 and M3 Send M4, M1* and M2* time

24 SenderReceiver N=4, K=3 ACKs are lost Send M1, M2 and M3 Recv M1, M2 and M3 ACK M1, M2 and M3 Recv ACK M1, M2 and M3 ReSend M1, M2 and M3 time

25 SenderReceiver N=7, K=3 (NO problems) Send M1, M2 and M3 Recv M1, M2 and M3 ACK M1, M2 and M3 Recv ACK M1, M2 and M3 Send M4, M5 and M6 time

26 SenderReceiver N=7, K=3 ACKs lost.. No problems Send M1, M2 and M3 Recv M1, M2 and M3 ACK M1, M2 and M3 Recv ACK M1, M2 and M3 ReSend M1, M2 and M3 time

27 Naming… A summary Fig 1.30

28 What about 2-way traffic?

29 PiggyBacked ACKs Traffic frequently going in the reverse direction No send to send an entire new frame with additional overhead. Typically, a message contains the name of the message in transit AND the name of the ack message, message expected in the other direction

30 What if nothing in the other driection? Set a timer waiting for return travel If no return travel before the timer goes off, –Send a separate ACK when the timer expires. ELSE –Piggyback on return traffic.

31 What about reverse traffic Discussion only focuses on traffic in one direction Problem is symmetric. Software is tricky but the send and receive code are integrated into the same process.

32 Protocol Design and Software Development

33 Link Layer Complexity Link SubLayers Fig 1.31

34 Link Layer Complexity Timer to alert sender to resend Fig 1.31

35 Events From AboveFrom BelowFrom Side Fig 1.32

36 State Diagram event action state change Fig 1.33

37 State Machine and Events Figs 1.32 and 1.33

38 Actions Create Outgoing Events (Events at the receiver) Figs 1.32 and 1.33

39 These Outgoing Events Are INCOMING to the receiver via MAC layer sender receiver Figs 1.33 and 1.34

40 One more time Ls_User Creates LdataReq TxFrame to destination iRCVD from MAC_provider to destination

41 Focus on State Machines

42 Three Ways = Same Event-State Table State Transition Diagram Program

43 Event-State Table Fig 1.33

44 Program Main Loop Choose -action -next State based on -current state -event Fig 1.33

45 An Example : HDLC

46 1-Connect 2- Data 3-Disconnect 1 2 3

47 linkphysicalnetworkphysicallinknetwork linknetworklinknetwork

48 1-Connect 2- Data 3-Disconnect 1 2 3

49 HDLC Frame Format

50 Frame Types

51 16 bit version

52 Network Link Link Link

53 Entire State Machine (Sender AND Receiver)

54 Information Exchange Station AStation B SEND I Frames N(R)=0 N(S)=0 SEND I Frames N(R)=0 N(S)=0 N(R)=0 N(S)=1 Frame Damaged N(R)=1 N(S)=2 Frame Rejected Send REJ with N(R)=1 SEND I Frames N(R)=2 N(S)=1 N(R)=2 N(S)=2 N(R)=2 N(S)=3 (no activity) Send RRJ with N(R)=3


Download ppt "Protocol Strategies. Idle RQ (Stop-and-Wait) Transmission Initiated Ack Received Send Next Send N Send N+1 Fig 1.23."

Similar presentations


Ads by Google