在哪些情况下,TCP校验和不会检测到错误?

在哪些情况下,TCP校验和不会检测到错误?,tcp,checksum,Tcp,Checksum,我有一个关于计算机网络的问题,问题是在以下哪种情况下TCP校验和不会发现错误: 1)第10个字节发生单位翻转(即,第10个字节中的一位从0变为1,或从1变为0) 2)最初为00000001的有效负载的第一个字节变为00000000,最初为00000000的有效负载的第三个字节变为00000001 3)有效负载第一个字节的第三位从1翻转到0,有效负载第二个字节的第三位从0翻转到1 4)最初为00000001的有效负载的第一个字节变为00000000,最初为00000000的有效负载的第二个字节变为

我有一个关于计算机网络的问题,问题是在以下哪种情况下TCP校验和不会发现错误:

1)第10个字节发生单位翻转(即,第10个字节中的一位从
0
变为
1
,或从
1
变为
0

2)最初为
00000001
的有效负载的第一个字节变为
00000000
,最初为
00000000
的有效负载的第三个字节变为
00000001

3)有效负载第一个字节的第三位从
1
翻转到
0
,有效负载第二个字节的第三位从
0
翻转到
1

4)最初为
00000001
的有效负载的第一个字节变为
00000000
,最初为
00000000
的有效负载的第二个字节变为
00000001
表示:

校验和字段是1的16位1的补码 标题和文本中所有16位字的补码和

1)单位翻转可更改校验和

2)由于总和在16位字上,这将保持校验和不变

3)两位更改不会相加,而是会更改校验和

4)与3相同)


只有第二种情况下校验和保持不变。

这不在SO的范围内。@zubergu计算TCP校验和是一项网络编程任务。@OrtomalaLokni我认为这是有争议的。标记,看看会发生什么。对这么长时间的死板话题争论毫无意义。可能是重复的