IP、TCP、UDP校验和计算

article/2025/9/22 1:23:26

校验和计算:
1.对所有需要进行校验的数据(校验和部分全部置0),每16bit分成一组。
2.对所有的组,依次按位求和,求和时如有溢出,则进行回卷。
3.对所求的和进行反码运算。
4.将反码后所得数据填入校验和位置。

具体例子参考RFC:https://tools.ietf.org/html/rfc1071
以下列出了校验和的计算过程,最后一列为网络字节顺序(高低字节Swapped)

                  Byte-by-byte    "Normal"  SwappedOrder    OrderByte 0/1:    00   01        0001      0100Byte 2/3:    f2   03        f203      03f2Byte 4/5:    f4   f5        f4f5      f5f4Byte 6/7:    f6   f7        f6f7      f7f6---  ---       -----     -----Sum1:       2dc  1f0       2ddf0     1f2dcdc   f0        ddf0      f2dcCarrys:       1    2           2         1--   --        ----      ----Sum2:        dd   f2        ddf2      f2ddFinal Swap:  dd   f2        ddf2      ddf2

注:接收端收到之后,对需要进行校验的部分(含校验和部分),16bit 一组,依次按位求和,得到11111111111 则校验通过。

IP 校验和计算:
这里写图片描述

IP校验和:仅对IP首部进行校验,校验方法如上。

TCP/UDP校验和计算:

TCP校验和:对TCP首部,数据部分,伪首部进行求和。
UDP校验和:对UDP首部,数据部分,伪首部进行求和。

TCP/UDP计算方法和IP保持一致,其中伪首部格式如下:

0        7       15       23       31 
+--------+--------+--------+--------+
|             source address        |
+--------+--------+--------+--------+
|           destination address     |
+--------+--------+--------+--------+
|  zero  |protocol| TCP/UDP length  |
+--------+--------+--------+--------+

以下UDP 图供参考,图片来源网络:
这里写图片描述

相关链接:
有抓包,有C程序实现
http://blog.csdn.net/weiweiliulu/article/details/17923043
解释了校验和为什么需要伪头部
http://blog.csdn.net/baidu_27386223/article/details/47678979


http://chatgpt.dhexx.cn/article/PFn0aPDY.shtml

相关文章

基于UDP协议的接收和发送

基于UDP协议的接收和发送 一、UDP编程框架1.UDP编程框图2.UDP服务器编程框架3.UDP客户端编程框架 二、UDP协议程序设计的常用函数 1.建立套接字socket()和绑定套接字bind()2.接收数据recvfrom()/recv()3.发送数据sendto()/send()三、UDP接收和发送数据的例子 1.UDP服务器端/UDP…

udp和tcp的应用

udp和tcp的应用 本文主要针对各个协议对 tcp 和 udp 的应用 tcp的应用: 对于 SMTP,TELNET,HTTP,FTP等协议是应用了 tcp udp的应用 对于 DNS,TFTP,SNMP,NFS等协议,应用了udp

TCP协议和UDP协议的对比

TCP与UDP区别和应用场景,基于TCP的协议有哪些,基于UDP的有哪些 类型特点性能应用过场景首部字节TCP面向连接、可靠、字节流传输效率慢、所需资源多文件、邮件传输20-60UDP无连接、不可靠、数据报文段传输效率快、所需资源少语音、视频、直播8个字节 TC…

TCP和UDP的异同

文章目录 udp和tcp的相同点udp和tcp的不同点区别udp的介绍tcp的介绍 最近看了计网的资料和视频,以及其他博主的资料,对最近所学的知识进行以下总结,方便让其他小伙伴儿参考学习,也利于自己巩固,回头复习用,…

TCP和UDP的介绍及使用场景

TCP和UDP的优势和劣势 TCP 最核心的价值是提供了可靠性,而 UDP 最核心的价值是灵活,你几乎可以用它来做任何事情。 例如:HTTP 协议 1.1 和 2.0 都基于 TCP,而到了 HTTP 3.0 就开始用 UDP 了。 TCP 的稳定性 TCP 作为一个传输层…

Qt UDP和TCP对比

一、UPD和TCP区别总结 二、详细对比UDP和TCP如下: 1、TCP是面向连接的,UDP是面向无连接的 TCP则在通信前需要进行三次握手,UDP不需要。 UDP在发送端,应用层将数据传递给传输层的UDP协议,UDP只会给数据增加一个UDP头&…

UDP和TCP对比与区别

文章目录 UDP和TCP对比总对比1.udp是无连接的服务,tcp是面向连接的服务2.udp支持单播,多播以及广播;tcp仅支持单播3.udp面向报文,tcp面向字节流4.udp是不可靠传输,tcp是可靠传输5.udp数据报首部短,tcp报文段…

UDP和TCP的对比

用户数据报协议UDP(User Datagram Protocol)、传输控制协议TCP(Transmission Control Protocol) UDP和TCP是TCP/IP体系结构运输层中的两个重要协议,其使用频率仅次于网际层的IP协议 运输层采用面向连接的 TCP 协议时…

848-UDP 检验和 的计算过程

UDP 检验和 的计算过程 对发送方的 UDP 报文段的所有 16 比特字的和进行反码运算,当求和遇见溢出的时候,进行回卷(回卷的补充在下面),得到的结果放在 UDP 报文段中的检验和字段。 什么是回卷? 所谓 “回卷…

点估计 矩估计

1.说明: 设总体 X 的分布函数形式已知, 但它的一个或多个参数为未知, 借助于总体 X 的一个样本来估计总体未知参数的值的问题称为点估计问题. 在统计问题中往往先使用最大似然估计法, 在最大似然估计法使用不方便时, 再用矩估计法. 2.常用构造估计量的方法 1&#…

概率论-小记录(矩估计)

目录 矩估计量 无偏性-估计量的评选标准 一致估计量 矩估计量 定义: 矩估计法: 用样本k阶矩Ak作为总体k阶矩E(Xk)的估计量的方法. 注意最后用B2作为方差的矩估计量。 矩估计量不唯一 在总体的均值和方差都存在时,求均值μ和方差σ2 的矩估计量, 并不一定要知道…

矩估计和最大似然估计关系

1、矩估计 理论根源是辛钦大数定律,样本之间是独立同分布,当数据样本量很大的时候,样本观测值的平均值和总体的数学期望是在一个极小的误差范围内。 矩估计法, 也称“矩法估计”,就是利用样本矩来估计总体中相应的参数。首先推导…

数学:矩估计和最大似然估计

一、为什么要估计(estimate) 在概率,统计学中,我们所要观测的数据往往是很大的,(比如统计全国身高情况)我们几乎不可能去统计如此之多的值。这时候,就需要用到估计了。我们先抽取样本&#xff0…

矩估计和最大似然估计

参数估计 参数估计 :是根据从总体中抽取的样本估计总体分布中包含的未知参数的方法。它是统计推断的一种基本形式,是数理统计学的一个重要分支,分为点估计和区间估计两部分。 点估计 :依据样本估计总体分布中所含的未知参数或未…

广义矩估计

矩估计就是用样本矩代替总体矩进行统计推断的方法。 举例:正态参数估计问题, ,估计μ和σ。 ,而根据大数定理,在一定的条件下:当样本量足够大的时候,样本矩与总体矩只差了一个无穷小量&#xff…

机器学习总结(三):矩估计

鉴于后续机器学习课程中多次提到参数估计的概念,为了避免囫囵吞枣的理解某些知识点,决定对概率统计的这部分知识点进行简要总结,这篇博客主要涉及的是点估计中的矩估计知识点,后续的博客将总结点估计中其他两个比较常见的方式&…

参数估计-矩估计

​​​​​​​参数估计:分布类型有很多种,决定正态分布的两个参数:均值和方差。因此,参数就是决定分布的关键性数据。知道了参数,也就知道了分布的详细内容。 问题来了,总体的分布类别如果我们知道了&am…

矩估计与最大似然估计

一、为什么要估计(estimate) 在概率,统计学中,我们所要观测的数据往往是很大的,(比如统计全国身高情况)我们几乎不可能去统计如此之多的值。这时候,就需要用到估计了。我们先抽取样本&#xff0…

机器学习笔记1.矩估计、极大似然估计。

1.矩估计 1.1矩估计思想: 矩估计是基于一种简单的“替换”思想,即用样本矩估计总体矩 1.2矩估计理论: 矩估计的理论依据就是基于大数定律的,大数定律语言化表述为:当总体的k阶矩存在时,样本的k阶矩依概率收…