Problem:
UDP and TCP use the 1s complement for their check sums. Suppose you have the following three 8-bit bytes: 10011001, 01010010, and 01011001.
a. What is the 1s complement of the sum of these 8-bit bytes? Show all your work.
b. Why is it that UDP takes the 1s complement of the sum; that is, why not just use the sum?
c. With the 1s complement scheme, how does the receiver detect errors?
d. Is it possible that a l-bit error will go undetected? How about a two-bit error? (Note that although UDP and TCP use 16-bit words to compute the checksum, for this problem you are being asked to consider 8-bit summands.)
Additional Information:
This question is from Computer Science, particularly to Networking as well as it is about 8-bit bytes complement in TCP and UDP. The difference in complement of sums has been given in solution.