Data Communications I, Autumn 2000

Exercise 3 (2.-6. September 2000)

  1. About frames and error checking
    1. If the bit string 0111101111101111110 is bit stuffed, what is the output string?
    2. CRC checking is used and the generator polynomial is X**3 +1. A frame 110101011 is received. Is it corrupted?
    3. When bit stuffing is used, is it possible for the loss, insertion, or modification of a single bit to cause an error not detected by the checksum? If not, why not? If so, how? Does the checksum length play any role here?

    4. Consider an error-free 64-kbps satellite channel used to send 512-byte data frames in one direction, with very short acknowledgements coming back the other way. What is the maximum throughput for window sizes of 1, 7, 15, and 127?

    5. Stop and wait protocol
      1. Why is it enough to have one bit sequence number (only using numbers 0 and 1) in stop and wait protocol?
      2. Is it also necessary to add numbers to ACK and NAK acknowledgements? Give reasons for your answer.

    6. Windows and window protocols
      1. In one bit sliding window protocol a simultaneous intiation of communication or too early timeouts for the sender timer can cause quite a lot unnecessary sending of frames. Tanenbaum (p. 207) gives a scenario showing how simultaneous initiation is causing the sending of extra frames. Give an example how premature timeouts can cause same kind of situation.
      2. If the window size is K, then in the Selective Repeat method 2K sequence numbers are needed. Give an example of a situation where a smaller amount of sequence numbers leads to erroneus situation.

    7. The operation of sliding window protocols
      Suppose an error burst destroys frame I(N+1), ACK(N) and the following acknowlegdement. Simulate, in the situation, the operation of
      1. the Go-Back -N protocol,
      2. the selective repeat protocol that does not use NAK,
      3. the selective repeat protocol using NAK. NAK(N) informs the sender that frame I(N) is either missing or corrupted.

    8. HDLC protocol differs in some amount from the PPP protocol. The operation of HDLC protocol is explained in Tanenbaum's book pp. 224-228.
      1. Why is HDLC using the address field?
      2. What facilities does HDLC provide for error control?
      3. Does HDLC also provide facilities for flow control? If it is, what kind of facilities does it provide?
      4. Why does PPP not need the control field, even when the field is so important for HDLC protocol?For what different task is the control field used in HDLC-protocol?