Computer Networks

Tutorial #2

  1. What are the characteristics of the service delivered to application processes by TCP? Give three important aspects.

  2. The TCP protocol is commonly used in the context of a client-server model of communication. Describe briefly what is meant by this term. In particular, what characterises a server process? How does a client process use the facilities provided by a server?

  3. The TCP segment header contains both a sequence number and an acknowledgement number. Discuss the significance of this.

  4. Lost TCP acknowledgements do not necessarily force retransmissions. Explain why.

  5. It is (usually) possible, by examining the contents of the two "port" fields of a TCP segment to discover whether this particular segment came from a server process or a client. How?

  6. The TCP disconection mechanism is particularly complex. This complexity is due, in part, to what is sometimes referred to as the "Red Army - Blue Army" problem. Discuss this problem in the tutorial session, and explain why TCP takes the approach it does. NB: part of the problem is that TCP must not (under any circumstances) lose application data.

  7. When a segment (or its corresponding acknowledgement) is lost, the sender will time out and resend. Participate in a discussion in the tutorial about how long the sender should wait before resending.

  8. The following gives the contents of a TCP segment, obtained using a network analyser. The values are given in hexadecimal.
        09 6c 00 19 45 6d 70 01 3c 32 28 7d 50 18 10 00
        a6 bd 00 00 45 48 4c 4f 20 72 65 64 67 75 6d 2e
        62 65 6e 64 69 67 6f 2e 6c 61 74 72 6f 62 65 2e
        65 64 75 2e 61 75 0d 0a
    
    What are the source and destination port numbers, the sequence and acknowledgement numbers and the contents of the data area? Did this segment probably originate from a client or a server process?
    Note that if you are unfamiliar with hexadecimal notation you may skip this question.

Practical exercises:


[Previous Tutorial] [Tutorial Index] [Next Tutorial] [Suggested Solutions]
Phil Scott