Answer to Question #91665 in Computer Networks for Hung
• 97% of packets reach their destination correctly in less than 50ms
• 1% of packets reach their destination correctly in more than 50ms but less than 10,000ms.
• 1% of packets are lost in transit
• 1% of packets arrive at their destination in less than 50ms but have one or two random single-bit errors.
For each of the following applications, indicate and explain your decision whether it would be best to use TCP with checksum, or UDP with checksum, or UDP without checksum:
(a) A live audio / video chat system like Skype
(b) A general purpose network file system such as NFS: https://en.wikipedia.org/wiki/Network_File_System
(c) Remote control of a bomb disposal robot (each packet contains an array of floating-point numbers indicating the current desired location of the robot)
Note: more than one answer is possible for this question. The ties can be decided based on the
weight of some slight details which are not included in the questions, but might be found in the
lectures or textbook. This is the kind of question where many professors take as “good” or “the
best” answer the one from the instructor’s manual (and don’t bother investigating alternative
options or justifications).
a). A live audio/video like Skype deals with online streaming over the Internet. Transmission
speed is a key feature and some lack of precisions is acceptable. Judging on these parameters of
the connection, UDP without checksum is an appropriate choice.
b). A NFS system over UDP would be less reliable and less routable than a NFS over TCP.
Because the precision of transfers is a key feature for a network file system, TCP (with
checksum) is an appropriate choice in this case.
c).This time both the speed and precision are key features for the remote control robot.
Therefore, UDP with checksum is the appropriate choice for the provided scenario. It involves
some trade-off compared to the maximum achievable speed, because the checksum assumes
some error recovery process; however, the trade-off is acceptable in this case given the specific
nature of the application which requires high accuracy in (almost) real-time.