如何计算IP报头的checksum
如果你研究过TCP/IP协议,那么你肯定知道IP报头中的checksum字段,或许你还曾经为如何计算这个字段的值所困扰,本文我们将讨论checksum的概念,并详细介绍IP报头中的checksum是如何计算的。
1. checksum是什么?
- 简单地说,checksum就是从数据包中计算出来的一个值,用于检查数据包完整性;通过检查checksum来判断收到的数据是否有错误;
- 数据在网络上传输时,由于各种原因数据包有可能损坏,所以在接收端必须要有一种方法来判断数据是否已经损坏,为此,在报头中加入checksum字段;
- 在发送端要按照规定的算法计算checksum并将其设置为报头中的一个字段中;在接收端,要使用同样的算法重新计算checksum,并与收到的报头中的checksum进行交叉校验,以确定数据包是否正常。
2. IP报头中的checksum
IP报头的checksum仅用于验证IP报头是否正确,所以仅需在IP报头上计算即可,与IP报头后面数据无关,因为IP报头后面的数据(比如UDP、TCP、ICMP等)通常都有自己的checksum;
计算IP报头的checksum当然要了解IP协议的基本报头结构,下面是IP报头的基本格式:
图1:IP报头的基本格式
如何计算IP报头的checksum相关推荐
- 如何计算UDP头的checksum
UDP报头只有4个字段,分别是:源端口号.目的端口号.报文长度和报头checksum,其中的报头checksum这个字段在IPv4中并不是强制的,但在IPv6中是强制的,本文介绍UDP报头中check ...
- WireShark 无法抓取以太帧前序和FCS或出现IP报头校验和错误 -- 原因
今天解决wireshark的2个问题: 1.为什么wireshark抓不到前序和FCS 2.为什么wireshark的IP报头会出错 1.为什么wireshark抓不到帧尾的FCS 4字节和以太网V2 ...
- OVS流表精确匹配TCP/IP报头五元组
---------------- 版权:本文转自cnblogs 刘超的通俗云计算 原文链接: https://www.cnblogs.com/popsuper1982/p/5870181.html h ...
- IP报头的协议类型字段取值
以下内容来自此处. IP报头的协议类型字段定义如下: 取值 协议 0 HOPOPT 1 ICMP 2 IGMP 3 GGP 4 IP-in-IP 5 ST 6 TCP 7 CBT 8 EGP 9 IG ...
- c语言 checksum,容易被忽视的IP报头中的Checksum校验和
看计算机网络相关的书,每次看到IP或者UDP报头校验和时,都一瞥而过,以为相当简单.可是今天一看真傻眼了,怎么算的,为什么用反码不用补码还真不知道怎么回事. 算法的C语言实现: unsignedsho ...
- TCP及IP报头及协议
看到有道题目要问:tcp头多少字节?哪些字段?(必问) 这个... 看了这篇文章做参考:http://blog.163.com/tianshuai11@126/blog/static/61894543 ...
- IP协议 Header Checksum算法
引用:http://www.cnblogs.com/vamei/archive/2012/12/02/2796988.html 协议森林05 我尽力 (IP协议详解) 作者:Vamei 出处:http ...
- 已知子网掩码如何计算IP地址中的主机位
原文链接:https://zhidao.baidu.com/question/214865175.html 某A类地址上的子网掩码是255.192.0.0,那么该IP地址中主机有多少位? 255.19 ...
- 怎么计算计算机的网络地址,如何计算IP地址的网络号和主机号?
http://www.cnblogs.com/Jessy/archive/2011/12/29/2306334.html 2011 IP地址与网络分类 (1)IP地址 不同的物理网络技术有不同的编址方 ...
最新文章
- 网络流-EK求最大流
- 除了修改WEBCONFIG会导致WEB服务重启外,还有其他的什么操作会导致重启?
- 小程序解决方案 Westore - 组件、纯组件、插件开发
- 简单的制作一个动态链接库(DLL)
- 一幅图看懂prototype与[[Prototype]]
- 在Entity Framework中使用事务
- R语言︱文本挖掘之中文分词包——Rwordseg包(原理、功能、详解)
- 20160504课堂作业
- 简述delete与delete[]的区别
- LeetCode算法,多多路上从左到右有N棵树(编号1~N),其中第i个颗树有和谐值Ai。 多多鸡认为,如果一段连续的树,它们的和谐值之和可以被M整除,那么这个区间整体看起来就是和谐的....
- 马蜂窝视频编辑框架设计及在 iOS 端的业务实践
- Excel如何实现随机抽取
- js实现双人对战五子棋
- 常见的测试用例设计方法8---正交试验法
- Java第三章-数组
- 使用虚拟机备份软件备份OpenStack虚拟机
- 王者荣耀服务器维护5月22,王者荣耀5月22日更新维护公告 更新内容汇总
- 漫谈autoencoder:降噪自编码器/稀疏自编码器/栈式自编码器(含tensorflow实现)
- linux 服务器被植入ddgs、qW3xT.2挖矿病毒处理记录
- HomeAssistant和Node-Red
热门文章
- linux 下 .o 文件, .a文件,.so文件的区别
- Linux查看so文件信息
- 使用Druid监控SQL执行状态
- TabLayout——浅谈
- 字符串分割(split),将字符串按照指定字符进行分割。split(String regex)和split(String regex, int limit)
- 如何用php农场项目,2020全新亲测php农场游戏源码-金币菇种植理财区块链源码 带商城系统...
- 【公开课】如何使用Arm-2D在小资源Cortex-M处理器芯片中实现图形界面?
- Android实现QQ分享功能
- Maven 入门教程
- pyspark运行加速方法思考(一)