ip协议解析 首部校验和
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,3. 初始计算校验和字段时该字段全部用0填充;以上是对于发送者来说如何计算校验和的,而对于接收者来说,验证也很简单:1. 对于接收的IP报文头部以16位为单位逐个求和;2. 若结果为1,则校验正确,否
千家信息网最后更新 2026年11月02日ip协议解析 首部校验和

3. 初始计算校验和字段时该字段全部用0填充;
以上是对于发送者来说如何计算校验和的,而对于接收者来说,验证也很简单:
1. 对于接收的IP报文头部以16位为单位逐个求和;
2. 若结果为1,则校验正确,否则出错丢弃;
原理很简单,接收方的计算对象是A和A的反的异或,结果当然是1了!
具体的程序实现例子如下:
SHORT checksum(USHORT* buffer, int size)
{
unsigned long cksum = 0;
while(size>1)
{
cksum += *buffer++;
size -= sizeof(USHORT);
}
if(size)
{
cksum += *(UCHAR*)buffer;
}
cksum = (cksum>>16) + (cksum&0xffff);
cksum += (cksum>>16);
return (USHORT)(~cksum);
}
IP头:
4500 0046
17d9 0000
4011 ec1d(校验字段)
ac1c 0f3b
ac1c 0f3d
计算:
4500 + 0046 +17d9 + 0000 + 4011+ ec1d +ac1c + 0f3b + ac1c + 0f3d
取出的和相加再取反->即为应填充的校验和
当接受到IP数据包时,要检查IP头是否正确,则对IP头进行检验,方法同上:
计算:
44500 + 0046 +17d9 + 0000 + 4011+ ec1d +ac1c + 0f3b + ac1c + 0f3d再与它们的和相加得出的一个数再次相加为FFFF,得到的结果是全一,正确。
字段
结果
个数
例子
再次
单位
原理
发送者
头部
对象
报文
接收者
收方
数据
方法
程序
检查
检验
验证
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技股
互联网加科技
云之行互联网科技
互联网金融监管科技数据
互联网通讯科技
互联网科技会
米客互联网科技
互联网金融 科技创新
长亮科技互联网金融
左右互联网络科技
互联网 科技馆
随着互联网科技发展
宁夏科技产业互联网案例
荆州市昕露互联网络科技有限公司
保险科技服务互联网营销体系
互联网相关科技技术
工业互联网科技成果转化
陕西九四连强互联网科技有限公司
唐山双旺合互联网科技产业园
绵阳真晨互联网科技有限公司
成都互联网科技公司
赫美联合互联网科技
互联网科技创新企业排名
卫星互联网科技股票
玉溪互联网科技怎么选
广州互联网高科技取餐柜
容联科技互联网电商
科技互联网公司两年变化
河南商务圈互联网科技有限公司
互联网科技企业文化