【问题标题】:In which cases, the TCP checksum will not detect an error?在哪些情况下,TCP 校验和不会检测到错误?
【发布时间】:2014-12-09 14:30:00
【问题描述】:

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

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

2)负载的第一个字节原来是00000001变成00000000,负载的第三个字节原来是00000000变成00000001

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

4)负载的第一个字节原来是00000001变成00000000,负载的第二个字节原来是00000000变成00000001

【问题讨论】:

标签: tcp checksum


【解决方案1】:

RFC 793 说:

校验和字段是一个的 16 位反码 对标题和文本中所有 16 位字的总和进行补码。

1)一个位翻转改变校验和。

2) 由于总和是 16 位字,这将使校验和保持不变。

3)这两个位的变化不会相加,会改变校验和。

4)同3)

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

【讨论】:

    猜你喜欢
    • 2011-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-20
    • 1970-01-01
    • 2010-11-22
    • 2015-01-30
    • 1970-01-01
    相关资源
    最近更新 更多