CS 3413 Data Communications, Fall 2004 Assignment 5

Due Tuesday, November 23, 2004

These problems concern two protocols discussed in class.
The code for these is available here.

Use this sheet to turn in your answers to these problems. In each Problems 1-11, fill in the appropriate table. For programs 11 and 12, describe what action is taken.

Problems 1-6 are about Protocol 5, Sequential Receive with 3-bit sequence numbers.

Problems 7-12 are about Protocol 6, Nonsequential Receive, also with 3-bit sequence numbers.


Problem 1: The frames with sequence numbers 4, 5, 6, and 7 are buffered by the sender and the receiver is expecting frame 3.

Problem 2: Starting with the situation in Problem 1, a frame, s, arrives with s.seq = 2 and s.ack = 6.

Problem 3: Starting with the situation in Problem 1, a frame, s, arrives with s.seq = 3 and s.ack = 2.

Problem 4: The frames with sequence numbers 0, 1 and 7 are buffered by the sender and the receiver is expecting frame 5.

Problem 5: Starting with the situation in Problem 4, a frame, s, arrives with s.seq = 5 and s.ack = 7.

Problem 6: Starting with the situation in Problem 4, two network_layer_ready events occur.

Problem 7: The frames with sequence numbers 5, 6, and 7 are buffered by the sender and the receiver is expecting frame 3. The receiver has frames 4 and 6 buffered.

Problem 8: Starting with the situation in Problem 7, a frame, s, of type data arrives with s.seq = 5 and s.ack = 6.

Problem 9: Starting with the situation in Problem 7, a frame, s, of type data arrives with s.seq = 3 and s.ack = 4.

Problem 10: Starting with the situation in Problem 7, a network_layer_ready event occurs.

Problem 11: Starting with the situation in Problem 7, a frame, s, of type nak arrives with s.ack = 6. Also, describe what action is taken as far as sending frames in response to this event.

Problem 12: Starting with the situation in Problem 7, an ack_timeout occurs. What action is taken? Be specific.