Ask your own question, for FREE!
Computer Science 13 Online
OpenStudy (anonymous):

Suppose bits (0s or 1s) are being sent over a network in packets, where every packet has a fixed size of exactly 10 bits. The last bit is not part of the message, but is a checksum bit, used to indicate whether the other bits were transmitted correctly. The last bit is set by the sender to 0 if in the previous 9 bits there an even number of 1s, and the last bit is set to 1 if in the previous 9 bits there is an odd number of 1s.

OpenStudy (anonymous):

a. True or false: the sender always sends a packet with an even number of bits set to 1. b. Explain how the receiver of the packet can use this scheme to determine whether it is likely that a bit was flipped during transmission. c. Is there any possibility that the receiver will get a corrupted packet, and yet won't be able to tell that? Explain your answer carefully.

OpenStudy (anonymous):

What you're describing here is called 'parity bit' and is used to indicate whether there is an even or odd number of 1's in the packet. The bits of the data itself could be anything, so of course the number of 1's is not always even. If that number was supposed to always be even, then you wouldn't need this bit to tell what it was supposed to be. Once the receiver gets the packet it could count how many bits are 1's and see if it matches what the parity bit says. If it doesn't, then it means some of the bits have flipped and therefore that the message is corrupted. However, even if the parity bit matches, you can't be sure that no error has occurred. That is because it is possible that an even number of bits have 'flipped' and the parity has remained the same (still even or still odd number of 1's). In general a parity bit can only indicate error in a single bit in the message, it cannot guarantee more than that. If you're likely to have error in multiple bits then you should probably use different checksum.

Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!
Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!