三九宝宝网宝宝百科宝宝知识

IP数据包的校验和算法C#版

12月07日 编辑 39baobao.com

[防缺维生素c的妙计]1、母乳中含维生素c较多,可以满足宝贝身体的需要,吃母乳的宝贝一般不容易缺乏维生素c,所以一定要坚持喂母乳。 2、哺乳妈咪多吃富含维生素c的蔬菜、水果,就可给宝贝补充丰富的维...+阅读

为做伪IP,特地做了一个IP包,用C#改写IP头的校验和算法。

资料一:

IP头格式:

版本号 (4位)

IP头长度 (4位)

服务类型 (8位)

数据包长度 (16位)

标识段 (16位)

标志段 (16位)

生存时间 (8位)

传输协议 (8位)

头校验和 (16位)

发送地址 (16位)

目标地址 (16位)

选项

填充

资料二:

IP 协议采用统一的校验算法,其计算比较简单:设校验和初值为0,然后对数据每16位求异或,结果取反,便得校验和。校验时将数据(含校验和)按同样的算法求和,结果为0则数据正确,不为0表示通讯出错,需要丢弃该数据包。

算法源代码:

public static UInt16 checksum(UInt16[] buffer,int size)

{

Int32 cksum=0;

int counter;

counter=0;

while(size>0)

{

UInt16 val=buffer[counter];

cksum+=Convert.ToInt32(buffer[counter]);

counter+=1;

size=-1;

}

cksum=(cksum>>16)+(cksum

cksum+=(cksum>>16);

return (UInt16)(~cksum);

}

注意:buffer数组为整个ip包数组,需要转换成UInt16[];size为buffer数组的长度。

关于byte[]转换成UInt16[]的方法比较简单,在此不介绍了。

以下为关联文档:

晨尿结果出来了,CMVPCR还吗尊敬的大夫您好:前段时间我检查出的IGM(CMV)++医生吩咐我今天做晨尿检查。今天去做了晨尿检查。结果是HCMV-DNA 人体巨细胞病毒 试剂盒检测下限5.0*10^2拷贝、ML大夫说无大碍...

宝贝进入ICU保持冷静是关键把新生儿早日带回家是每个父母都期待已久的事,但如果发生了难以想象的事,比如新生儿被纳入特殊照顾一行进入到ICU病房,便会让很多父母感到害怕。任何一个父母都无法预料自己的...

TORCH有问题孩子还能要么我已经怀孕16周了,去医院做TORCH检查的时候,发现其中一项CMV为阳性,经复查后还是阳性。不知道这个孩子还能要不,也不知道这个项目对孩子以后的影响是什么,会造成什么不良反应或者...

弓形体IgG阳性IgM阴性CAg阴性我妹怀孕7个多月了,家里养了猫,虽然尽量不接触,可她的检查结果是弓形体IgG阳性IgM阴性CAg阴性,这对宝宝有没有影响?很担心啊!请帮助解答一下!谢谢! 如果是这样的话, 要去省市级以上...

bread sausage milk coffeeTeaching aims: 1 ew word :bread ausage milk coffee 2 Revisio :little car,milk 3 What day i today ? How are you ? How old are you ? Teaching aids: icture ag reor...

ABC计划南京市游府西街小学 六(2)班 蔡文睿 男孩子向妈妈说爱,就那么难?我要尝试突破。晚上七点钟,我终于制定好了A计划,备用B计划和C计划。 行动开始。 A计划为直接大声表达。我大模大样...

Playway to English—— Merry Christmas 1背景介绍p297:英国的圣诞习俗 活动目标: 1, 在圣诞环境中使孩子感知英国圣诞的习俗。 2, 在活动中,引起孩子对于不同文化和生活方式的兴趣。 活动准备: 1,请家长协助孩子利用媒体...

33周+3天BC,请看是否偏小呢双顶径82mm,股骨长60mm;胎盘前壁,成熟度2级;臀位。请问:1)宝宝偏小吗,小多少呢? 2)胎盘成熟度高吗,是不是有早产的危险呢? 3)臀位宝宝可以自己转正吗? 你的宝宝各项都是在正常范围内,不会...

我爱英语,我爱Courage我爱英语,我爱Courage! 济南市经五路幼儿园与外教课堂互动 今天早上,大一班的孩子们显得比往常活跃兴奋了许多,原来,他们的老朋友Courage要来到班里了!孩子们都焦急的等待着,热...

推荐阅读
图文推荐