IP协议协议--IP头部信息 - CSDN博客
文章推薦指數: 80 %
1. IP协议概述. IP协议是TCP/IP协议簇的核心,它为上层(传输层)协议(TCP/UDP)提供无状态、无连接、不可靠的服务。
· 2. IPv4头部结构. 以IPv4版本的IP协议 ...
IP协议协议--IP头部信息
mybright_
于 2017-11-1818:13:07 发布
25931
收藏
45
分类专栏:
Linux系统/网络编程
Linux编程
文章标签:
IPv4
版权声明:本文为博主原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_29344757/article/details/78570272
版权
Linux系统/网络编程
同时被2个专栏收录
63篇文章
4订阅
订阅专栏
Linux编程
62篇文章
9订阅
订阅专栏
《Linux高性能服务器编程》阅读笔记:
1.IP协议概述
IP协议是TCP/IP协议簇的核心,它为上层(传输层)协议(TCP/UDP)提供无状态、无连接、不可靠的服务。
(1)无状态:IP通信双方的数据状态信息不同步,即所有的IP数据报的发送、传输、接收都是相互独立的,没有上下文关系。
优点是简单高效,不占用内核结构来保存通信状态,每次传输数据时不用携带状态信息 (2)无连接:IP通信双方不能长久地维持对方的任何信息。
上层协议每次发送数据时都需要指明通信对方的地址 (3)不可靠:不能保证IP数据报准确地到达接收端,它只是承诺尽最大的努力
在网络协议中无状态无连接是很常见的,如UDP协议和HTTP协议。
HTTP协议中,一个浏览器的连续两次网页请求之间并没有关联,它们被WEB服务器独立处理。
使用IP服务的上层协议若要实现数据确认、超时重传等机制,就需要在上层协议中实现,如TCP协议。
2.IPv4头部结构
以IPv4版本的IP协议为例,分析其头部信息: IPv4的头部结构长度为20字节,若含有可变长的选项部分,最多60字节。
(1)版本号:IP协议的版本。
对于IPv4来说值是4 (2)头部长度:4位最大为0xF,注意该字段表示单位是字(4字节) (3)服务类型(TypeOfService,TOS):3位优先权字段(现已被忽略)+4位TOS字段+1位保留字段(须为0)。
4位TOS字段分别表示最小延时、最大吞吐量、最高可靠性、最小费用,其中最多有一个能置为1。
应用程序根据实际需要来设置TOS值,如ssh和telnet这样的登录程序需要的是最小延时的服务,文件传输ftp需要的是最大吞吐量的服务 (4)总长度:指整个IP数据报的长度,单位为字节,即IP数据报的最大长度为65535字节(2的16次方)。
由于MTU的限制,长度超过MTU的数据报都将被分片传输,所以实际传输的IP分片数据报的长度远远没有达到最大值
下来的3个字段则描述如何实现分片: (5)标识:唯一地标识主机发送的每一个数据报,其初始值是随机的,每发送一个数据报其值就加1。
同一个数据报的所有分片都具有相同的标识值 (6)标志:位1保留,位2表禁止分片(DF),若设置了此位,IP模块将不对数据报进行分片,在此情况下若IP数据报超过MTU,IP模块将丢弃数据报并返回一个ICMP差错报文;位3标识更多分片(MF),除了数据报的最后一个分片,其他分片都要把它设置为1 (7)位偏移:分片相对原始IP数据报数据部分的偏移。
实际的偏移值为该值左移3位后得到的,所以除了最后一个IP数据报分片外,每个IP分片的数据部分的长度都必须是8的整数倍
(8)生存时间::数据报到达目的地之前允许经过的路由器跳数。
TTL值被发送端设置,常设置为64。
数据报在转发过程中每经过一个路由该值就被路由器减1.当TTL值为0时,路由器就将该数据包丢弃,并向源端发送一个ICMP差错报文。
TTL可以防止数据报陷入路由循环 (9)协议:区分IP协议上的上层协议。
在Linux系统的/etc/protocols文件中定义了所有上层协议对应的协议字段,ICMP为1,TCP为6,UDP为17 (10)头部校验和:由发送端填充接收端对其使用CRC算法校验,检查IP数据报头部在传输过程中是否损坏 (11)源IP地址和目的IP地址:表示数据报的发送端和接收端。
一般情况下这两个地址在整个数据报传递过程中保持不变,不论中间经过多少个路由器 (12)选项:可变长的可选信息,最多包含40字节。
选项字段很少被使用。
可用的IP可选项有: a.记录路由:记录数据包途径的所有路由的IP,这样可以追踪数据包的传递路径 b.时间戳:记录每个路由器数据报被转发的时间或者时间与IP地址对,这样就可以测量途径路由之间数据报的传输的时间 c.松散路由选择:指定路由器的IP地址列表数据发送过程中必须经过所有的路由器 d.严格路由选择:数据包只能经过被指定的IP地址列表的路由器 e.上层协议(如TCP/UDP)的头部信息
3.tcpdump抓取IP数据报
在Ubuntu14.04中执行telnet命令登录本机,并在另一终端抓取这个过程中telnet服务器-telnet客户端之间的数据包:
$sudotcpdump-ntx-ilo
在另一终端:
$telnet127.0.0.1
观察tcpdump抓取到的数据:
tcpdump:verboseoutputsuppressed,use-vor-vvforfullprotocoldecode
listeningonlo,link-typeEN10MB(Ethernet),capturesize65535bytes
IP127.0.0.1.44626>127.0.0.1.23:Flags[S],seq3041640326,win43690,options[mss65495,sackOK,TSval4701824ecr0,nop,wscale7],length0
0x0000:4510003c0106400040063ba47f000001
0x0010:7f000001ae520017b54bbf8600000000
0x0020:a002aaaafe3000000204ffd70402080a
0x0030:0047be800000000001030307
这是一个IP数据报: (1)telnet登录的是本机,所以IP数据报的源端IP地址和目的端IP地址都是127.0.0.1。
telnet服务器使用的端口号是23,
telnet23/tcp#摘自/etc/services文件
telnet客户端使用的是临时端口号44626。
telnet服务使用的是TCP协议,Flags、sq、win、options描述的都是TCP头部信息,详细将在TCP协议分析中解析。
(2)tcpdump命令开启-x选项,使之输出二进制码。
这些二进制码用十六进制的格式呈现,共60字节:前20字节是IP头部,后40字节是TCP头部。
length为0表示这些数据不包含数据。
对照前面表格的IPv4,可得各数据取值意义如下:
0x44位的版本号IP版本号
0x54位的头部长度头部长度为5个字(20字节)
0x108位的服务类型TOS开启最小延时服务
0x003c16位的总长度数据包总长度(60字节)
0x010616位的标识数据报标识
0x43位的标志禁止分片,因没携带数据
0x00013位的位偏移为0表没发生位偏移
0x408位的生存时间生存时间为64跳
0x068位的协议字段为6表上层协议是TCP协议
0x3ba416位的IP头部校验和头部校验和
0x7f00000132位的源端IP地址源端IP地址127.0.0.1
0x7f00000132位的目的端IP地址目的端IP地址127.0.0.1
mybright_
关注
关注
9
点赞
踩
1
评论
45
收藏
打赏
扫一扫,分享内容
点击复制链接
专栏目录
mac头和ip头部详解
hzj_001的博客
08-18
5182
报文封装整体结构
mac帧头定义
/*数据帧定义,头14个字节,尾4个字节*/
typedefstruct_MAC_FRAME_HEADER
{
charm_cDstMacAddress[6];//目的mac地址
charm_cSrcMacAddress[6];//源mac地址
shortm_cType; //上一层协议类型,如0x0...
IPHeader解析
Jieen的专栏
01-05
2万+
版本号(Version):长度4比特。
标识目前采用的IP协议的版本号。
一般的值为0100(IPv4),IPv6的值(0110)。
IP包头长度(HeaderLength):长度4比特。
这个字段的作用是为了描述IP包头的长度,因为在IP包头中有变长的可选部分。
该部分占4个bit位,单位为32bit(4个字节),即本区域值=IP头部长度(单位为bit)/(8*4),因此,一个IP包头的长度最
评论 1
您还未登录,请先
登录
后发表或查看评论
ip头部
06-01
297
计算机网络—IP头部结构,TCP头部结构,UDP头部结构
08-29
576
IP头部结构
IP头部结构图如下
注意:一行32bit为4字节,扩展的时候总是一行一行的拓展,也就是4个字节4个字节的扩展
版本号(Version):长度4bit,标识目前采用的IP协议的版本号,一般的值0100(IPv4),0110(IPv6)
首部长度(HeaderLength):长度4bit,这个字段的作用是为了描述IP头部的长度,IP头部长度是可变的(最常用的是红框中的部分,一共占20字节)。
-首部长度部分占4个bit位,取值范围是0-15,单位为32bit(4个字节)
-整个IP头部
IP协议
qq_38362274的博客
06-10
202
一、IP协议概述
相比之前讲的ARP协议,IP协议无论对于普通用户还是对于工程师而言,大家都要熟悉得多。
例如,我们在很多电影和电视剧里面,总能看到以下这些场面:
场面1:
警方要抓一个全球通缉犯的时候,所有人围绕在作战室神情紧张的凝视着墙面上巨大的屏幕,技术侦查组的警员快速的敲打着键盘,随时准备大干一场。
这个时候警员突然起来手一指:IP追踪到了,就在xxx区yyy街zzz号。
警长:兄弟们,抓活的!
场面2:
电影主角被黑道老大胁迫干坏事,黑道老大为了无死角监控到电影主角的执行情况,..
IP头以及头的各部分含义
hanzhen7541的博客
01-14
1万+
我们来看一下IP的头的结构:
IP的头每行有32位,分为版本,头长度,区分服务等十多项内容。
第一个版本,记录IP头为IPv4的头还是IPv6的头。
如果是IPv4的头往往为4,如果是IPv6的头则是6.第二个IHL为IPHeadLength’也就是头长度,以字节计数。
区分服务指的是对于不同的类型的数据包,采用不同的服务方式。
举个例子,对于语音数据
IP头部详解
热门推荐
fujibao的博客
06-29
4万+
版本号(Version):长度4比特。
标识目前采用的IP协议的版本号。
一般的值为0100(IPv4),0110(IPv6)IP包头长度(HeaderLength):长度4比特。
这个字段的作用是为了描述IP包头的长度,因为在IP包头中有变长的可选部分。
该部分占4个bit位,单位为32bit(4个字节),即本区域值=IP头部长度(单位为bit)/(8*4),因此,一个IP包头的长度最长为“1111...
网络——IP协议头格式
audience_fzn的博客
07-29
1万+
网络层
在复杂的网络环境中确定一个合适的路径(路由选择)
网络层的目的是实现俩个端系统之间的数据透明传输,具体工能包括寻址,路由选择,连接的建立,保持和终止。
IP协议:
基本概念:
主机:配有IP地址,但不进行路由控制的设备
路由器:配有IP地址,又能进行路由控制的设备
节点:主机和路由器的统称
IP协议的功能
寻址和路由(根据对方的IP地址,寻找出最佳的路径传输信息)
传递服...
IP头详解
cooling_time的博客
05-30
365
version:版本号,4比特,IP协议的版本号。
例如:ipv4(0100)、ipv6(0110)。
HeaderLength:IP包头长度。
4比特,最小20字节,最大60字节。
TypeofService:服务类型:按位定义PPPDTRC0
000普通(Routine)
001优先的(Priority)
010立即的发送(Immediate)
011闪电式的(Flash)
100比闪电还闪电式的(FlashOverride)
101CRI/TIC/ECP(找不到这个词.
IP协议详解之头部结构
weixin_44135544的博客
11-24
2366
IP头部信息:
出现在每个IP数据报中,用于指定IP通信的源端IP地址,目的端IP地址,指导IP分片和重组,以及指定部分通信行为。
IP数据报的路由和转发:
发生在除目标机器之外的所有主机和路由器上。
它们决定数据报是否应该转发以及如何转发。
IP服务的特点
IP协议是TCP/IP协议族的动力,他为上层协议提供无状态、无连接、不可靠的服务。
无状态:
是指IP通信双方不同步传输数据的...
ip包头
AStoryofHelloWorld
04-27
589
网上摘抄的ip包头介绍:
IP包头结构如下图所示
[img]http://dl.iteye.com/upload/attachment/240801/998dee3b-d5c4-3fe9-b2c9-5edefe6b8d78.jpg[/img]
下面具体分析IP包头中各部分的作用。
[b]版本号(Version):[/b]长度4比特。
标识目前采用的IP协议的版本号。
一般的值为...
IP协议头格式
weixin_34082789的博客
07-14
85
以下内容摘自笔者编著的《网管员必读——网络测试、监控和实验》一书。
3.3IP协议头格式和SniifferPortable的IP头
IP(InternetProtocol,因特网协议)是OSI第三层——网络层协议,本节仅以IPv4版本为例进行介绍。
IP协议也是一个无连接的协议,主要就是负责在主机间寻址,并为数据包设定路由,在交换数据前它并不建立会话。
因为它不保证正确传递。
另一方面,数据在...
常用的几个HTTPheadIP头
夜班机器人的博客
03-01
3802
x-forwarded-forx-remote-IPx-originating-IPx-remote-ipx-remote-addrx-client-ipx-client-IPX-Real-ip
IP协议报文头部解析
tecoes的博客
04-18
5265
IP协议是TCP/IP协议族中最为核心的协议。
它提供不可靠、无连接的服务,也即依赖其他层的协议进行差错控制。
在局域网环境,IP协议往往被封装在以太网帧中传送。
而所有的TCP、UDP、ICMP、IGMP数据都被封装在IP数据报中传送。
...
IP协议头详细说明
yuxiang1014的专栏
09-12
864
IP数据包头部格式:
上面是在数据到达传输层对数据进行IP头部封装的数据
下面是详细说明:
版本号(Version):长度4比特。
标识目前采用的IP协议的版本号。
一般的值为0100(IPv4),0110(IPv6)
IP包头长度(HeaderLength):长度4比特。
这个字段的作用是为了描述IP包头的长度,因为在IP包头中有变长的可选部分。
该部分占4个bit位,单位为32bit(4个字节),即本区域值=IP头部长度(单位为bit)/(8*4),因此,一个IP包头的长度最长为“1111”,即1
分析IP头的结构
shaoNianABin123的博客
11-07
570
分析IP头的结构
根据IP数据报来分析IP
由抓包结果可知IP包为灰色部分
“45” 其中“4”是IP协议的版本(Version),说明是IP4。
“5”是IHL位,表示IP头部的长度,是一个4bit字段,最大就是1111了,值为15(表示有15行,一行有32bit),IP头部的最大长度就是60字节。
而这里为“5”,说明是20字节,这是标准的IP头部长度,头部报文中没有发送可选部分数据。
“00” 为服务类型(TypeofService)。
这个8bit字段由3bit的优先权子字段,4bit的T
【计算机网络】IP协议及其头部详解
维欣~fighting✔
06-26
276
IP协议基础
1、IP协议是网络层协议,网络层协议负责数据的选路和转发
2、IP协议特点:无连接、无状态、不可靠
每一台网络设备(路由器)只是实现尽力转发,只负责将收到的数据转发出
去。
至于能够到达目的地,每一台路由器都不负责。
(1)无连接是指IP通信双方都不长久地维持对方的任何信息。
这样,上层协议每次发送数据的时候,都必须明确指定对方的IP地址。
(2)无状态是指IP通信双方不同步传输数据的状态信息,因此所有IP数据报的发送、传输和接收都是相互独立、没有上下文关系的。
网络层的IP协议并不能保证数据到达
IP协议详解(ip头部,ip分片,ip路由选择)
Rocketcp3的博客
10-01
2074
IP协议是TCP/IP协议族中至关重要的协议,同时也是socker网络编程的基础之一。
其中最重要的部分为
(1)ip头部信息:ip头部信息出现在每个ip报文数据报中,用于指定ip通信的远端ip地址,目的端ip地址,指导ip分片和重组,以及部分的通信行为。
(2)ip数据报的路由和转发:ip数据报文的路由和转发发生在除目标机器之外的所有主机和路由器上。
他们决定数据包是否应该转发以及如何转发。
1.IP服务特点
ip协议是TCP/IP协议族的动力,为上层协议提供无状态,无连接,不可靠的服务。
无状态:
IP协议分析——网络原理基础
最新发布
哪有什么合适不合适的博客
11-20
400
文章目录实验目的实验过程和步骤任务1:在实验室环境中,捕获ping命令产生的IP分组并进行分析。
任务2:在实验室环境中,捕获分片情况下的IP分组并进行分析。
任务3:在PacketTracert中查看IP分组。
实验目的
1.掌握IP分组的捕获和分析方法
2.加深对IP分组各字段的理解
3.掌握IP分组的分片情况
实验过程和步骤
任务1:在实验室环境中,捕获ping命令产生的IP分组并进行分析。
具体做法:DOS窗口下,输入pingX.X.X.X–n1(X.X.X.X为同学主机的IP地址),此
©️2022CSDN
皮肤主题:编程工作室
设计师:CSDN官方博客
返回首页
mybright_
CSDN认证博客专家
CSDN认证企业博客
码龄7年
暂无认证
207
原创
1万+
周排名
77万+
总排名
122万+
访问
等级
1万+
积分
887
粉丝
1043
获赞
203
评论
3478
收藏
私信
关注
欢迎关注,每周至少分享一篇干货
热门文章
RS-485通讯协议
76902
TCP/IP协议四层模型
69082
STM32的printf函数重定向
50325
常见的DoS攻击
45357
SPI通讯协议介绍
35402
分类专栏
Lua编程
1篇
c/c++语言
74篇
uCOS-II操作系统
14篇
Linux编程
62篇
C/C++编程
78篇
Linux系统/网络编程
63篇
C++设计模式
11篇
网络/网络安全
10篇
数据库基础
3篇
ARM9裸板程序设计
Qt编程
13篇
STM32单片机
22篇
uCOS-II系统
13篇
硬件原理
11篇
工作生活感悟
5篇
最新评论
RS-485通讯协议
知识搬运工zzz:
找个正点原子pdf好好看一看,都介绍的很详细了
RS-485通讯协议
知识搬运工zzz:
找个正点原子pdf好好看一看,都介绍的很详细了
RS-485通讯协议
知识搬运工zzz:
找个正点原子pdf好好看一看,都介绍的很详细了
c++的默认拷贝构造函数,从深度拷贝和浅拷贝说起
k1837364033:
我明白了,浅拷贝(包括类:s1=s2或者classs1(s2))都是逐字节复制的,所以如果类中没有指针就没关系,有指针的话,两个对象的指针的内容就一致了,指向一致,在其中一个对象中的通过指针操作指向内容,也改变了另一个对象的指针指向的内容,因此需要自己重载=和复制构造函数。
RS-485通讯协议
F1261690129:
楼主,我是个研一小白,硬件基础挺差的,所以想了解这些基础知识我该从哪里入手啊
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
字符串和字符串标准库
初识Lua语言
欢迎关注我的个人公众号
2020年2篇
2019年6篇
2018年51篇
2017年161篇
目录
目录
分类专栏
Lua编程
1篇
c/c++语言
74篇
uCOS-II操作系统
14篇
Linux编程
62篇
C/C++编程
78篇
Linux系统/网络编程
63篇
C++设计模式
11篇
网络/网络安全
10篇
数据库基础
3篇
ARM9裸板程序设计
Qt编程
13篇
STM32单片机
22篇
uCOS-II系统
13篇
硬件原理
11篇
工作生活感悟
5篇
目录
打赏作者
mybright_
你的鼓励将是我创作的最大动力
¥2
¥4
¥6
¥10
¥20
输入1-500的整数
余额支付
(余额:--)
扫码支付
扫码支付:¥2
获取中
扫码支付
您的余额不足,请更换扫码支付或充值
打赏作者
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。
余额充值
延伸文章資訊
- 1在第四版的IP 中,優先權欄位並未被使用。
在IP 層的封包稱為資料包( datagram ),為一不固定長度的封包,包括標頭( header ) 及資料( data ) 這兩個部分。 標頭有20 到60 個位元組長,包含傳送路徑的重要訊息。
- 2IP协议协议--IP头部信息 - CSDN博客
1. IP协议概述. IP协议是TCP/IP协议簇的核心,它为上层(传输层)协议(TCP/UDP)提供无状态、无连接、不可靠的服务。 · 2. IPv4头部结构. 以IPv4版本的IP协议 ...
- 3IP头部详解 - 知乎专栏
IP包头最小长度为20字节。 ... IP包总长(Total Length):长度16比特。 以字节为单位计算的IP包的长度(包括头部和数据),所以IP包最大长度65535字节。 标识 ...
- 4IP 協定 - 翻轉工作室
表示 IP 封包的 IP 版本。 (2) 網際標頭長度(Internet Header Length, IHL):4 位 ...
- 5IP协议头部格式 - 腾讯云
IPv4 头格式. Version(版本号):IP 协议版本号。目前只有两个版本:IPv4 和IPv6. Header Length(IP 协议头部长度):IP 协议头部的长度,单位字 ...