-
计算校验和
校验和算法描述:为保证网络上传输的数据的可靠性,在许多协议中都设置了校验和项,例如:IPv4、ICMPv4、IGMPV4、ICMPv6、UDP...
计算校验和
校验和算法描述:为保证网络上传输的数据的可靠性,在许多协议中都设置了校验和项,例如:IPv4、ICMPv4、IGMPV4、ICMPv6、UDP和TCP 等等。计算这些校验和的算法称为网际校验和算法,简单来说就是:把被校验的数据16位进行累加,然后取反码,若数据字节长度为奇数,则数据尾部补一个字节的0以凑成偶数。
由于从输入文件读入的数据不能直接满足计算校验和的条件,所以首先对从文件读入缓冲区的数据进行预处理,即读入缓冲区时忽略空格。由于累加是按16位进行的,所以每次从缓冲区中读出4个字符,并将字符转换成对应的16进制数字,如此依次累加,直至数据全部读完。
还有一种情况,即如果数据长度为奇数个字节,则需要判断,并补0累加。程序中利用的是缓冲区长度计数器i和当前读取到计数器j判断数据长度是否为奇数。即如果数据长度为偶数,则读完数据时当前读取到计数器j的值应与缓冲区长度i相等,而如果数据长度为奇数,则读完数据时,当前读取到计数器j>缓冲区长度i,此时需将缓冲区中剩余的两个字符读出,并补0,转换成相应16进制数以后参与累加。
当累加结束后,将累加和的16位以上数据位移下再进行一次累加,并对最后累加和取反即得所求校验和。
-calculated checksum checksum algorithm Description : To ensure the network transmission of data reliability, in many of the agreements are set up and calibration, for example : IPv4, ICMPv4, IGMPV4, ICMPv6. UDP and TCP so on. Calculating checksum algorithm called the Internet checksum algorithm, the simple answer is : as has been the calibration data for 16 cumulative, and then take the anti-code, if the data byte length of the odd, data will make up the tai
- 2022-01-26 06:39:03下载
- 积分:1
-
wordcount
实现了hadoop mapreduce模块中的wordcount例程(hadoop mapreduce wordcount)
- 2020-06-30 02:20:01下载
- 积分:1
-
dev
windows 编程循序渐进源码,分为3部分,每四章做了包,因为怕太大了(windows programming step-by-step source, divided into 3 parts, each of four chapters to do the package, because too much fear)
- 2009-03-04 09:56:25下载
- 积分:1
-
RedHatWindow
VB语言写的仿Unix红帽操作系统界面,附带源码(VB language to write the copy Unix red hat operating system interface, with the source code)
- 2013-08-09 11:26:55下载
- 积分:1
-
command
用boost::shared_ptr实现command模式,并提供MacroCommand来支持复合的command。(command pattern)
- 2013-08-30 22:59:44下载
- 积分:1
-
用一个网页写的
用vc写的一个基于网络的程序,可以用它来得到ip地址。-vc written with a Web-based program, you may use it to be ip address.
- 2023-08-21 20:55:03下载
- 积分:1
-
173079
让窗体在屏幕中央,方便管理就这么回事我就编啊()
- 2017-09-27 19:20:48下载
- 积分:1
-
C++Builder下实现端口读写
本文介绍怎样在C++Builder下实现端口读写,并举出一个具体例子。...
C++Builder下实现端口读写
本文介绍怎样在C++Builder下实现端口读写,并举出一个具体例子。
-C Builder achieve ports This paper describes how to read and write in C++ Builder achieve literacy port, citing a specific example.
- 2022-08-04 09:19:55下载
- 积分:1
-
multisimSample
基于multisim的仿真实验实例,电路仿真实例(multisim sample)
- 2009-12-07 15:23:17下载
- 积分:1
-
findpeaks
c++实现获取一维数组极值点。可以通过调整阈值,改变极值点获取值(The c++ implementation gets the extreme point of one dimension array. We can adjust the threshold and change the extreme value to get the value.)
- 2018-04-04 16:44:11下载
- 积分:1