Answer the following questions in depth
- What is the chief advantage of using preassigned UDP port numbers? The chief disadvantages?
- What is the chief advantage of using protocol ports instead of process identifiers to specify the destination within a machine?
- UDP provides unreliable datagram communication because it does not guarantee delivery of the message. Devise a reliable datagram protocol that uses timeouts and acknowledgements to guarantee delivery. How much network overhead and delay does reliability introduce?
- TCP uses a finite field to contain stream sequence numbers. Study the protocol specification to find out how it allows an arbitrary length stream to pass from one machine to another.
- Lost TCP acknowledgements do not necessarily force retransmissions. Explain why.
- What are the arguments for and against automatically closing idle connects?
Suppose an implementation of TCP uses initial sequence number 1 when it creates a connection. Explain how a system crash and restart can confuse a remote system into believing that the old connection remained open.