IPV4数据包格式
IPV4和IPV6
IPv6
IPv6简化了IPv4中的IP头结构,并增加了对安全性的设计。IPv6 把 IP 地址由 32 位增加到 128 位,从而能够支持更大的地址空间,估计在地球表 面每平米有 4*10^18 个 IPv6 地址,使 IP 地址在可预见的将来不会用完。 IPv6 地址的编码采用类似于 CIDR 的分层分级结构,如同电话号码。简化了 路由, 加快了路由速度。 在多点传播地址中增加了一个“范围”域,从而使 多点传播不仅仅局限在子网 内,可以横跨不同的子网,不同的局域网。 IPv6是Internet Protocol Version 6的缩写,IPv6是 IETF(互联网工程任务组, Internet Engineering Task Force)设计的用于替代现行版本IP协议(IPv4) 的下一代IP协议。
2
•
•
•
网络号,它标志主机所连接到的网络。一个网络号在整个因特网范围 内必须是唯一的。 主机号,它标志该主机(或路由器)。一个主机号在它前面的网络号 所指明的网络范围内必须是唯一的。 • A类、B类和C类地址的网络号字段分别为1、2和3字节长,而在网 络号字段Байду номын сангаас最前面有1—3位的类别位,其数值分别规定为0,10和 110 • A类、B类和C类地址的主机号字段分别为3、2和1字节长 • D类地址(前4位是1110)用于多播(一对多通信)。 • E类地址(前4位是1111)保留为以后用
IPv4书写格式:
IPv4中规定IP地址长度为32(按TCP/IP参考模型划分) , 即有2^32-1个地址,它是一个32位的二进制地址,为了便 于记忆,将它们分为4组,每组8位,由小数点分开,用四 个字节来表示,而且,用点分开的每个字节的数值范围是 0~255,一般的书写法为4个用小数点分开的十进制数, 如202.116.0.1,这种书写方法叫做点数表示法。
ipv4协议的详解
ipv4协议的详解协议名称:IPv4协议的详解一、引言IPv4(Internet Protocol version 4)是互联网协议的第四个版本,是一种网络层协议,用于在网络中传输数据包。
本协议旨在详细解释IPv4协议的工作原理、数据格式和相关特性。
二、协议概述1. IPv4协议是一种面向连接的协议,用于在不同主机之间进行数据通信。
2. IPv4协议使用32位的IP地址来唯一标识网络中的主机。
3. IPv4协议使用分组交换技术来传输数据,将数据分割成小的数据包进行传输。
4. IPv4协议提供了一些基本的服务,如寻址、路由和分组重组等。
三、IPv4协议的数据格式1. IPv4数据包由首部和数据部分组成。
2. 首部包含了源IP地址、目标IP地址、协议版本号、首部长度、服务类型、数据包长度、标识、标志、片偏移、生存时间、协议类型、首部校验和等字段。
3. 数据部分包含了传输的实际数据。
四、IPv4协议的工作原理1. IP地址分配:IPv4协议使用32位的IP地址来标识网络中的主机,IP地址由网络号和主机号组成。
2. 数据传输:当一台主机要向另一台主机发送数据时,它会将数据分割成小的数据包,每个数据包都包含了源IP地址和目标IP地址。
3. 路由选择:数据包在传输过程中会经过多个路由器,路由器根据目标IP地址选择合适的路径进行转发。
4. 分组重组:当数据包到达目标主机时,目标主机会将接收到的数据包按照顺序进行重组,恢复原始数据。
五、IPv4协议的特性1. 有限的地址空间:IPv4协议使用32位的IP地址,理论上最多可以分配约42亿个IP地址,但由于地址空间有限,导致IP地址短缺问题。
2. 无连接性:IPv4协议是一种无连接协议,每个数据包都是独立传输的,不保证数据包的可靠性。
3. 不提供加密和认证:IPv4协议不提供数据加密和身份认证功能,数据在传输过程中可能会被窃听或篡改。
4. 不支持多播和广播:IPv4协议不直接支持多播和广播功能,但可以通过特殊的IP地址实现多播和广播通信。
IP数据包的格式详解
IP数据包的格式详解IP数据包在通信中是⾮常重要的,为了加深对IP数据包格式的理解,今天来看看IP数据包究竟包含哪些字段,这些字段起到什么作⽤。
来先看看IP包长啥样⼦的,请看下图从上图可看到IP包的包头是20个字节。
看看IP包头包含哪些信息版本:占4位,指IP协议版本。
并且通信双⽅使⽤的版本必须⼀致,⽬前我们使⽤的是IPv4,IPv6也是⼀种版本,⽬前⽤的不多,以后会使⽤⾸部长度:占4位,表⽰的最⼤⼗进制数是15(注意:⾸部长度字段所表⽰的单位是32位⼦,⼀个32位字长是4字节),因此⾸部长度的最⼩值为5(即:0101),相当于5*4=20字节,最⼤值为15(即:1111),相当于15*4=60字节,切记当⾸部长度不是4的整数倍时,必须利⽤最后的填充字段填充区分服务:占 8位,⽤来获得更好的服务,⼀般情况下不怎么使⽤这个字段,只有在区分服务时使⽤这个字段。
总长度:指⾸部和数据之和的长度,单位为字节,总长度字段为16位,因此数据报的最⼤长度为2^16 - 1 = 65535标识:占16位,IP软件在存储器中维持⼀个计数器,每产⽣⼀个数据包,计数器加1,并将此值赋给标识字段,当数据包长度超过⽹络的MTU时,就要采⽤分⽚处理,分⽚时,这个标识字段的值就会被复制到所有的数据报切⽚中。
最后相同的数据报标识字段的分⽚就会重装成为原来的数据报。
标志:占3位,但⽬前只有两位有意义标志字段中最低位记MF,MF=1表⽰后⾯还有分⽚的数据报,MF=0,表⽰这是若⼲数据报中的最后⼀个中间的⼀位为DF,意思是不能分⽚,只有当DF=0时才允许分⽚⽚偏移:占13位,表⽰相对于⽤户数据的起点,该⽚从何处开始,⽚偏移以8字节为偏移量,也就是说每⼀个分⽚的长度⼀定是8字节的整数倍。
⽣存时间:占8位,⽣存时间常⽤的字段是TTL(Time To Live),表⽰数据报在⽹络中的寿命,由发出的源站点设置,⽬的就是防⽌⽆法交付的数据报在因特⽹中⽆限制的兜圈⼦,⽩⽩消耗资源。
IPv4数据报格式及其语义
IPv4数据报格式及其语义⼀、IP数据报的格式如下图所⽰版本⾸部长度服务类型数据报长度16⽐特标识标志13⽐特⽚偏移寿命上层协议⾸部检验和32⽐特源IP地址32⽐特⽬的IP地址选项(如果有的话)数据IPv4数据报格式⼆、各部分语义1)版本(号):4bit,规定了数据包的IP协议版本;通过查看版本号,路由器能够确定如何解释IP数据报的剩余部分2)⾸部长度:因为IPV4数据报可包含⼀些可变数量的选项,所以需要⽤这4bit来确定⾸部的长度,以确定IP数据报的数据部分实际从哪⾥开始。
⼤多数IP数据报不包含选项,所以⼀般IP数据报具有20字节的⾸部3)服务类型:8bit,服务类型包含在⾸部中以使不同类型的IP数据报能相互区分开来,例如,将实时数据报(如⽤于IP电话应⽤)与⾮实时流量(如FTP)区分开来也许是有⽤,提供特定等级的服务是⼀个由路由器管理员决定的策略问题4)数据报长度:这是IP数据报的总长度(⾸部加上数据),以字节计,因为该字段长为16bit,所以IP数据报的理论最⼤长度为65535字节,然⽽数据报很少有超过1500字节的(因为IP数据还要靠数据链路层运输的,⽽链路层帧能承载的最⼤数据量为叫做最⼤运输单元(Maximum Transmission Unit,MTU))5)标识、标志、⽚偏移: 要理解这三个内容,要先理解⼀些其他知识 (1)分⽚:把IP数据报中的数据分成两个或者更多个较⼩的IP数据报,⽤单独的链路层帧封装成较⼩的IP数据报,每个这些较⼩的数据报称为⽚ (2)为什么要分⽚:因为每个IP数据报封装在链路层帧中从⼀台路由器传输到下⼀台路由器,⽽链路层帧能承载的最⼤数据量(最⼤运输单元(Maximum Transmission Unit,MTU)是⼀定的,故链路层帧严格限制着IP数据报的长度;⽽且发送⽅和与⽬的路径上的每段链路可能使⽤不同的链路层协议,且每种协议可能具有不同的MTU,所以就更有可能需要分⽚了,以便能够使得数据报能够顺利的传递数据报 (3)组装:⽬的主机从相同源收到⼀系列数据报时,需要确定哪些数据报是分⽚,如果是分⽚的话,还要进⼀步指导何时收到最后⼀个分⽚,如何将接收到的分⽚拼接起来以形成初始的数据报,故IPV4的设计者将标识、标志和⽚偏移字段放在IP数据报⾸部中,当⽣成⼀个数据报时,发送主机为该数据报设置源和⽬的地址的同时,再填上标识号标识:16bit,源主机发送IP数据报的时候,通常为它发送的每个数据报的标识号加1,所以当某个路由器需要对某⼀个数据报分⽚时,形成的每个数据报(分⽚)具有初始数据报的源地址、⽬的地址、与标识号,这样⽬的主机就可以判别哪些分⽚是属于⼀个初始数据报的标志:3bit,由于IP是⼀种不可靠服务,⼀个或者多个⽚可能永远到不了⽬的地,所以为了让⽬的主机绝对的相信它已经收到了初始数据报的最后⼀个⽚,最后⼀个⽚的标志⽐特被设置为0,⽽所有其他⽚的标志⽐特被设置为1⽚偏移:13bit,标⽰数据相对于初始数据报的偏移值,并且偏移值应当被规定以8字节块为单位。
IPv4数据包格式课件.
《数据通信与计算机网》课程 NhomakorabeaIPv4数据包格式
主讲:李辉
目 录
01
02
IPv4概念 IPv4协议结构 IPv4数据包格式
03
1.IPv4的概念——定义
IPv4,是互联网协议(Internet Protocol,IP)的第四版,也是第一 个被广泛使用,构成现今互联网技术 的基石的协议。1981年 Jon 在 RFC791中定义了IP,Ipv4可以运行 在各种各样的底层网络上,比如端对 端的串行数据链路(PPP协议和SLIP协 议) ,卫星链路等等。
1.IPv4的概念—IP路由
Ipv4并不区分作为网络终端的主机(host) 和网络中的中间设备如路 由器中间的差别。每台电脑可以既做主机又做路由器。路由器用来 联结不同的网络。所有用路由器联系起来的这些网络的总和就是互 联网。 IPv4技术即适用于局域网(LAN) 也适用于广域网。一个IP包 从发送方出发,到接送方收到,往往要穿过通过路由器连接的许许 多多不同的网络。每个路由器都拥有如何传递IP包的知识,这些知 识记录在路由表中。路由表中记录了到不同网络的路径,在这儿每 个网络都被看成一个目标网络。路由表中记录由路由协议管理,可 能是静态的记录比如由网络管理员写入的,也有可能是由路由协议 动态的获取的。有的路由协议可以直接在IP协议上运行。
——通信类专业教学资源库
谢谢
主讲: 李辉
石家庄邮电职业技术学院
3.IPv4地址格式
IPv4中规定IP地址长度为32(按TCP/IP 参考模型划分) ,即有2^32-1个地址。 一般的书写法为4个用小数点分开的 十进制数。也有人把4位数字化成一 个十进制长整数,但这种标示法并不 常见。在IPv4也有人用,但使用范围 更少。 如在C类网络中,前24位为网 络地址,后8位为局域网地址,可提 供254个设备地址(因为有两个地址不 能为网络设备使用: 255为广域网,0 代表此网络本身) 。网络掩码限制了 网络的范围,1代表网络部分,0代表 设备地址部分,例如C类地址常用的 网络掩码为255.255.255.0。
Ipv4协议收发实验
Ipv4协议收发实验实验说明:由于tcp/ipv4协议已经集成在系统和网卡的驱动程序中,自己单独编写实现基于ipv4协议收发的实验,要求对系统及硬件的相关接口能够理解和应用。
其中的工作量是很大的,在网上也没有相关可以利用的实现平台。
只查到了基于NetRiver2000实验系统的tcp协议收发实验例程,该系统提供了操作系统和硬件底层的接口用来实现函数的的编写及调用。
这里,限于知识储备,我对相关的函数及ipv4数据包的格式,分组,封装实现及收发流程做了分析和研究,对tcp/ipv4的协议有了更好的理解。
1.实验目的IPv4协议是互联网的核心协议,它保证了网络节点(包括网络设备和主机)在网络层能够按照标准协议互相通信。
IPv4地址唯一标识了网络节点。
在我们日常使用的计算机的主机协议栈中,IPv4协议必不可少,它能够接收网络中传送给本机的分组,同时也能根据上层协议的要求将报文封装为IPv4分组发送出去。
本实验通过设计实现主机协议栈中的IPv4协议,让学生深入了解网络层协议的基本原理,学习IPv4协议基本的分组接收和发送流程。
另外,通过本实验,学生可以初步接触互联网协议栈的结构和计算机网络实验系统,为后面进行更为深入复杂的实验奠定良好的基础。
2.实验原理TCP协议簇本身4层:主机-网络层(接口层)、互连层、传输层、应用层。
IP协议在第二层(OSI的第三层:网络层)TCP在第三层。
(OSI的第四层:传输层)Ipv4数据包格式:3 实验要求在理解TCP/Ipv4协议数据格式及处理流程的基础上,根据计算机网络实验系统所提供的上下层接口函数和协议中分组收发的主要流程,设计实现一个简单的IPv4分组收发模块。
要求实现的主要功能包括:1)IPv4分组的基本接收处理;2)IPv4分组的封装发送;3)理解对IPv4协议中的选项和分片处理的原理4 .实验内容1)实现IPv4分组的基本接收处理功能对于接收到的IPv4分组,检查目的地址是否为本地地址,并检查IPv4分组头部中其它字段的合法性。
详谈IPv6与IPv4数据报格式
详谈IPv6与IPv4数据报格式1.IPv6数据包每一个分组由必须要有的基本首部和跟随在后面的有效载荷组成。
有效载荷有两部分组成:可选的扩展首部和从上层来的数据(不超65535字节)。
具体如图所示:详细说明:Version:和ipv4包头中的一样,4个bit区域表示ip的版本(0110)优先级:即Traffic Class是一个8位bit的区域,同ipv4中的tos区域一样。
但是在这些年中随着TOS区域的进化,这个区域也可以用来被 DifferentiatedClass of Service (DiffServ)使用。
但是尽管这里这样的标识仍然符合老的Tos的格式,只不过Traffic Class这个名字更符合当前的应用。
流标记:Flow Label流量标签是在ipv6中独有的区域。
这个20个bit的区域设计的目的在于可以给一些特殊的数据做标记。
也就是说尽管数据包并非是从原来的源发到目的,但是仍然包含原有的源和目的的应用。
区分数据流有很多好处,可以确保不同类别服务的处理方式得以区分,在数据流经多个路径的负载均衡时,在同一个数据流的数据包将使用经由同一个路径转发,从而避免了数据包可能继续查找路径的现象。
典型的flow(更加精确一点的说法是微流)就是在源地址和目的地址上加一个团体的源地址和目的地址。
如果使用定义源和目的端口号,路由器必须识别ip包头还要进一步识别tcp或者udp(或者其他传输层协议)的头,这样就增加了转发进程的复杂性,可能会影响路由器的处理。
因为出现扩展包头(下一段介绍),所以在ipv6数据包中查找传输层协议的头就成为一个特殊的问题。
支持ipv6的路由器必须从按照数据包格式的顺序从头到位查找,可能会经过很多扩展包头再会找到传输层地址(这样的话影响查找时间)。
如果在数据包发起是适当的加入流量标签,路由器更比查找数据包头更容易辨识数据流。
然而,在本书书写时,如何使用流量标签区域的完全详细文档仍在讨论中,所以当前路由器读取数据时忽略这个区域。
ipv4协议的详解
ipv4协议的详解协议名称:IPv4协议的详解一、引言IPv4(Internet Protocol version 4)是互联网上广泛使用的网络协议,它为互联网上的设备提供了唯一的标识和通信方式。
本协议旨在详细解释IPv4协议的工作原理、数据包格式、地址分配和路由选择等关键方面,以便读者能够全面了解和应用IPv4协议。
二、IPv4协议的工作原理1. IPv4协议是一种无连接的协议,每个数据包(称为IP数据报)都是独立地传输。
发送端将数据分割成较小的数据块,并添加IP首部信息,然后通过网络传输到目标设备。
2. IPv4协议使用IP地址来唯一标识网络上的设备。
IP地址由32位二进制数表示,通常以点分十进制表示法呈现。
IP地址分为网络地址和主机地址两部分,网络地址用于标识网络,主机地址用于标识具体设备。
3. IPv4协议还使用子网掩码来划分网络和主机地址。
子网掩码是一个32位的二进制数,与IP地址进行逻辑与运算,以确定网络地址和主机地址的范围。
4. IPv4协议还支持网络地址转换(NAT),它允许多个设备共享一个公共IP 地址。
NAT通过修改IP数据报的源地址和目标地址来实现。
三、IPv4数据包格式1. IPv4数据包由首部和数据两部分组成。
首部包含了控制信息,用于路由选择和数据包重组等操作。
数据部分包含了传输的实际数据。
2. IPv4首部包含了20个字节,由14个字段组成。
这些字段包括版本、首部长度、服务类型、总长度、标识、标志、片偏移、生存时间、协议、首部校验和、源IP地址和目标IP地址等。
3. 首部长度字段指示了首部的长度,单位为4字节。
IPv4首部的最小长度为20字节,最大长度为60字节。
4. 标志字段包含了3个位,用于指示数据包的特殊处理要求。
片偏移字段用于指示数据包在原始数据中的位置。
5. 生存时间字段用于指定数据包在网络中的最大生存时间,以防止数据包在网络中无限循环。
6. 协议字段用于指示IP数据报中封装的上层协议,如TCP、UDP或ICMP等。
Ipv4和Ipv6数据报格式详解
IPv4和IPv6数据报格式一、IPv4数据报格式1)数据报可以分为报头区和数据区,数据区的数据来自上一层。
说明:首部和报头和头等字眼是同一意思。
2)版本:指明IP协议是哪个版本,IPv4为0100。
3)报头长度:也叫首部长度,指明报头区的长度。
最小值为20个字节,最大值为60字节。
说明:a.当没有选项和填充字段时,32位(每行的长度)*5(5行固有的)=160位=20字节,这个时候4个比特位的值为0101,为什么呢?因为这里规定以4个字节为单位,如果把0101用换算成十进制,0101=5,5*4=20字节。
如果4个比特位为1111,把1111换算成十进制则等于15,则它表示15*4=60个字节。
(简单记成换算成十进制后乘以4才等于它报头区的字节数)b.当 IP 分组的首部长度不是4字节的整数倍时,必须利用最后的填充字段加以填充。
4)服务类型:转发过程中对该数据报的处理方式。
5)总长度:等于报头区及数据区的长度相加。
说明:a.最大长度为65535个字节(当8个bit都等于1时),2^16-1=65535个字节。
b. IP数据报的最大长度的确是65535字节。
但是实践中最大长度很少用,因为大多物理网络都有长度限制,例如,数据链路层有自己的帧格式,其中包括了数据字段的最大长度,即最大数据传输单元MTU,当一个数据报封装成链路层的帧时,此数据报的总长度一定不能超过下面的数据链路层的MTU 值,以太网把载荷长度限制在1500字节。
6)标识:IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加 1,并将此值赋给标识字段。
但这个“标识”并不是序号,因为 IP是无连接的服务,数据报不存在按序接收的问题。
当数据报由于长度超过网络的 MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。
相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。
附加:IP数据报在各个物理网络中需要重新封装:与路由器连接的各个网络的MTU可能不同:当数据报超过网络的MTU进行分片后,路由器可以为每个分片独立选路:7)标志:占三位,但目前只有两位有意义。
IPv4 数据报首部格式
北京理工大学珠海学院实验报告ZHUHAI CAMPAUS OF BEIJING INSTITUTE OF TECHNOLOGY 班级XXX 3班学号0123456 姓名 XXX 指导教师ZHANG XUE 成绩实验题目IPv4 数据报首部格式实验时间 2014.1一、实验目的掌握IPv4 协议原理,理解IPv4 分组首部结构及各字段的含义。
二、实验环境1.连接外网的Windows XP 主机一台,并安装有科来网络分析系统。
2.通过科来网络分析系统捕获一段时间内的IPv4 分组。
三、实验内容1.用科来网络分析系统捕获数据包。
2.分析捕获到的IP数据包中首部各个字段的意义。
四、实验步骤1.打开科来网络分析系统,开始捕获数据包。
2.用浏览器访问百度,用ping 命令探测临机、网关和百度。
3.停止捕获,观察捕获到的数据包。
访问百度:Ping临机如图:Ping网关如图:Ping百度如图:4.将访问百度以及ping 临机、网关和百度的IP 数据包首部中各字段的值记录在下表中,需要记录IP 数据报的版本号、首部长度、总长度、标识、标志、片偏移、生存时间、上层协议、源地址和目的地址。
5.比较所记录的各字段的值,理解首部字段的含义和作用。
五、心得体会经过上一次上机实践对网络命令的操作的结果分析,本次实践已经大概明白了网络命令的操作和作用和对网络命令的操作的结果分析…六、实验要求完成本次实验后,仔细观察所捕获的数据包,对网络层数据包首部的各字段进行整理,说明参数之间的关联性,进而加深理解网络层的工作过程。
思考与讨论:1.在连续捕获到的数据包中,IPv4首部哪些字段的值是不变的?说明原因。
实验发现IPv4首部的版本号,首部长度,片偏移,生存时间这些值不变。
原因是不管ping哪个网址,这些字段在IP协议中都是规定好所占用的位数的,所以这些值不变。
2.在连续捕获到的数据包中,IPv4首部哪些字段的值是变化的?说明原因。
实验发现IPv4首部的总长度,标识,标志,源地址,目的地址的值会改变。
IP数据包格式简介
IP数据包格式简介IP 数据包格式IP 数据包是网络传输的信封,它说明了数据发送的源地址和目的地址,以及数据传输状态。
一个完整的数据包由首部和数据两部分组成。
首部前20字节属于固定长度,是所有IP 数据包必须有的,后面是可选字段,其长度可变,首部后面是数据包携带的数据,见图5.3.1。
48161931版本号标志生存时间协议标识服务类型数据包总长度段偏移首部检验和源地址目的地址可选字段+ 填充位首部长度数据部分数据首部首部IP 数据包发送图5.3.1 IP 数据包格式1. 版本号(4bit )版本号占4位,是IP 协议所使用的版本号,目前是广泛使用的是第四版本,即IPv4。
2. 首部长度(4bit )首部长度用于指出IP 包头长度,用于标识数据包头在何处结束,所携带的数据在何处开始。
首部长度占四位,数值范围5~15,以4字节为单位,则IP 首部长度为20字节~60字节。
如假设首部长度取值“1010”,转换为十进制为“10”,表示IP 包头长度为10×4=40字节,数据从第41字节开始。
3. 服务类型(8bit )服务类型用于获得更好服务,大多数情况下并不使用。
当网络流量较大时,路由器会根据不同数据包服务类型取值决定哪些先发送,哪些后发送,见图5.3.2。
D 优先级T R C 未用0 1 23 4 56 7图5.3.2 服务类型格式(1)前3个bit 表示优先级,取值范围0~7共8个优先级,数值越低优先级越高。
(2)后四位是服务类型子字段,用于标识QOS 质量服务。
D :表示要求更低时延 T :表示要求更多吞吐量 R :表示要求更多可靠性 C :表示要求更小路径开销注:DTRC 默认4位值都为0,表示一般服务;DTRC只能1为设为1,如T为1,其余三位只能为0。
(3)最后1位尚未使用4. 数据包总长度(16bit)数据包总长度用于标识整个数据包(包含包头和数据)的总长度,结合首部长度可以计算出数据包所携带数据的起始地址和长度。
IPv4协议简介
一、IPv4协议报头格式0 4 8 16 19 24 32说明:Version : 4 bits,显示当前正在运行的IP版本信息。
当前为4IHL : 4 bits,标明了以32比特为单位的消息中数据报报头的长度,这是所有报头的总长度。
注意:它的最小值为5Type of Service : 8 bits,标明了一个特定的上层协议所分配的重要等级。
TOS字段包括一个3 bit的优先权子字段(现在已被忽略),4 bit的TOS子字段和1 bit未用位但必须置0。
4 bit的TOS分别代表:最小时延、最大吞吐量、最高可靠性和最小费用。
4 bit中只能置其中1 bit。
如果所有4 bit均为0,那么就意味着是一般服务。
每TOS值最多只能有一个为1.如下所示:协议TOS 值TELNET/RLOGIN (1)1000 (minimize delay)FTPControl 1000 (minimize delay)Data (2) 0100 (maximize throughput)TFTP 1000 (minimize delay)SMTP (3)Command phase 1000 (minimize delay)DATA phase 0100 (maximize throughput)Domain Name ServiceUDP Query 1000 (minimize delay)TCP Query 0000Zone Transfer 0100 (maximize throughput)NNTP0001 (minimize monetary cost)ICMPErrors 0000Requests 0000 (4)Responses <same as request> (4)Any IGP 0010 (maximize reliability)EGP0000SNMP0010 (maximize reliability)BOOTP0000Total Length: 16 bits,标明整个分组的长度,以字节为单位。
ipv4的报文格式
ipv4的报⽂格式IPV4 数据报头部格式摘⾃:《深⼊理解计算机⽹络》王达著机械⼯业出版社图解前⾔发送端的⽹络层在收到它的上⼀层——传输层发来的数据段时,需要通过⽹络层协议将其封装成数据报,也就是加上⽹络层IP协议(在此仅以IP协议为例进⾏介绍)头部。
IP协议头部主要是源和⽬的⽹络的IP地址,以便可以数据分段传输到⽬的⽹络中。
然后数据包向下传输,到了数据链路层后⼜要封装成数据帧。
与在数据帧格式中包括帧头和数据部分类似,⼀个IP数据报也包括报头和数据这两个部分,如上图所⽰。
其中数据部分就是来⾃传输层的完整数据段,⽽报头部分是为了正确传输数据报⽽增加的⽹络层IPV4/IPV6协议信息。
格式版本(Version)版本字段指定了IP数据报中使⽤的IP协议版本,占四位。
如过协议是IPV4,则值为0100。
头部长度(Header Length)头部长度字段指⽰IP数据报头部的总长度,IP数据报头部的总长度以4字节为单位,该字段占4位。
当报头中⽆选项字段时,报头的总长度为5,也就是5×4=205×4=20字节(此时,报头长度的值为0101)。
这就是说IP数据报头部固定部分长度为20字节。
当IP头部长度为1111时,头部的固定长度为15×4=6015×4=60字节。
但报头长度必须是32位(四字节)的整数倍,如果不是,需要在选项字段的填充(PAD)字段中补0凑齐。
区分服务(Differentialted Services)最开始IP数据报的这个字段为优先级和服务类型字段,⼜称为服务类型(ToS)字段,⽤于表⽰数据报的优先级和服务类型,占⼋位。
它包括⼀个3位长度的优先级、4位长度的标志位。
标志位分别是D(Delay延迟)、T(Throughput吞吐量)、R(Reliability可靠性)和C(Cost 开销),分别表⽰延迟、吞吐量、可靠性和开销值,⽤来获得更好的服务。
最⾼1位未⽤。
ipv4协议详解
ipv4协议详解协议名称:IPv4协议详解一、引言IPv4(Internet Protocol version 4)是互联网协议的第四个版本,是目前广泛使用的网络协议之一。
本协议旨在详细解释IPv4协议的工作原理、结构和功能,以及与之相关的重要概念和术语。
二、协议概述IPv4是一种面向数据包交换的协议,它为互联网上的主机和路由器提供了一种统一的寻址和路由机制。
IPv4协议使用32位的地址空间来标识网络上的每一个设备,其中包含网络号和主机号两部份。
IPv4协议还定义了数据包的格式和传输规则,以确保可靠的数据传输和正确的路由选择。
三、IPv4地址结构1. IPv4地址格式IPv4地址由4个8位的十进制数(范围为0-255)组成,以点分十进制(dotted decimal)表示。
例如,192.168.0.1是一个常见的IPv4地址。
2. IPv4地址分类IPv4地址根据网络号和主机号的划分方式,分为5个类别:A类、B类、C类、D类和E类。
其中A、B和C类地址用于公共互联网,D类地址用于多播(Multicast),E类地址保留用于实验和特殊用途。
3. 子网掩码子网掩码用于划分网络号和主机号的边界。
它与IPv4地址进行逻辑与运算,以确定网络号的范围。
子网掩码通常由32位的二进制数表示,例如255.255.255.0。
四、IPv4数据包格式IPv4数据包由首部和数据两部份组成。
首部包含了对数据包进行路由和传输所需的控制信息,包括版本号、首部长度、服务类型、总长度、标识、标志、片偏移、生存时间、协议、首部校验和、源地址和目的地址等字段。
五、IPv4协议的工作原理1. 寻址和路由IPv4协议使用IP地址来寻址和路由数据包。
发送方根据目的主机的IP地址确定数据包的目的地,并通过路由表选择合适的路径进行传输。
路由器根据数据包的目的IP地址进行转发,直到数据包到达目的主机。
2. 分片和重组当数据包的大小超过网络的最大传输单元(MTU)时,IPv4协议会将数据包进行分片,并在目的主机上进行重组。
IPv4报文格式
IPv4分析IPv4的头部格式:1. Version版本号,默认是4。
2. IHL(Internet Header Length)就是IPv4头部长度。
这个长度的单位是32bit,一般是5,那么头部的长度就是5x32bit=160bit。
3. DSCP(Differentiated Services Code Point),ECN(Explicit Congestion Notification)原来这8字节是被定义成TOS(Type of Service),现在被RFC2474定义成Differentiated services(差异化服务)和ECN。
背景:随着互联网的发展,各种各样的服务被提供,比如语音、视频、流音乐、网页、邮件等等。
原来的TOS定义已经跟不上时代的需要,所以在1998年,IETF发布了RFC 2474,将原来的TOS 替换成DSCP和ECN。
4. Total Length整个数据包的长度,含头部,单位为Byte。
5. Identification数据包标识,用来区分相同的包,比如ping包。
6. Flagsbit 0 : 保留,总是0bit 1 : Don’t Fragment, DF。
表示不分片。
当需要发送的数据大于最长数据包限制的时候,数据需要分片发送。
如果这位置1,IP模块将不会对数据报进行分片。
这种情况下,如果IP数据报长度超过MTU,IP模块将丢弃数据报并返回一个ICMP差错报文。
bit 2 : More Fragment,MF。
表示更多分片,除了数据报的最后一个分片外,其他分片都要把它置1.7. Fragment Offset。
ipv4协议的详解
ipv4协议的详解协议名称:IPv4协议的详解一、引言IPv4(Internet Protocol version 4)是互联网上最常用的网络层协议,它为互联网上的设备提供了唯一的IP地址。
本协议旨在详细解释IPv4协议的工作原理、数据包格式、寻址机制以及相关的扩展功能。
二、工作原理1. 数据包传输IPv4协议使用分组交换技术,将数据分割成小的数据包进行传输。
每个数据包包含源IP地址和目标IP地址,以及其他控制信息。
在传输过程中,数据包通过多个网络节点进行路由,直到到达目标设备。
2. IP地址分配IPv4使用32位的地址空间,共计约42亿个可用地址。
其中一部分地址用于特殊用途,如私有地址和保留地址。
IP地址由网络管理员分配给设备,以确保网络上的每个设备都有唯一的标识。
三、数据包格式IPv4数据包由首部和数据两部分组成。
1. 首部格式IPv4首部包含20字节(或更多)的固定长度字段和可选的选项字段。
首部字段包括:- 版本:指示使用的IPv4版本号。
- 首部长度:指示首部长度,单位为4字节。
- 服务类型:用于指定数据包的优先级或服务质量。
- 总长度:指示整个数据包的长度。
- 标识、标志和片偏移:用于分片和重组数据包。
- 生存时间(TTL):指定数据包在网络中的最大生存时间。
- 协议:指示上层协议类型,如TCP或UDP。
- 首部校验和:用于校验首部的完整性。
- 源IP地址和目标IP地址:指示数据包的源和目标设备的IP地址。
2. 数据格式IPv4数据部分包含传输的实际数据。
数据的格式和内容由上层协议(如TCP或UDP)决定。
四、寻址机制IPv4使用32位的IP地址来唯一标识网络上的设备。
IP地址分为网络地址和主机地址两部分。
1. 网络地址网络地址用于标识设备所连接的网络。
网络地址由网络管理员分配,通常以CIDR(无类别域间路由)表示法表示,如192.168.0.0/24。
2. 主机地址主机地址用于标识网络上的具体设备。
ipv4协议格式例子
ipv4协议格式例子IPv4(Internet Protocol version 4)是互联网上使用最广泛的一种网络层协议,它定义了互联网数据包的格式和传输规则。
IPv4数据包的格式包括首部和数据两部分。
IPv4首部包括了多个字段,每个字段都有特定的作用,下面是一个IPv4协议格式的例子:版本(Version),4位,表示IP协议的版本,对于IPv4来说,这个字段的值为4。
首部长度(Header Length),4位,表示IPv4首部的长度,以32位字为单位。
最小值为5,最大值为15。
区分服务(Type of Service),8位,用于定义数据包的优先级和服务质量。
总长度(Total Length),16位,表示整个IPv4数据包的长度,包括首部和数据,最大长度为65535字节。
标识(Identification),16位,用于标识数据包的唯一性。
标志(Flags),3位,包括标志位和片偏移。
生存时间(Time to Live),8位,表示数据包在网络中的生存时间,每经过一个路由器,该字段的值减1,直到为0时数据包被丢弃。
协议(Protocol),8位,表示数据部分所使用的协议,例如TCP协议对应的值为6,UDP协议对应的值为17。
首部校验和(Header Checksum),16位,用于检验首部在传输过程中是否发生错误。
源地址(Source Address),32位,表示数据包的源IP地址。
目的地址(Destination Address),32位,表示数据包的目的IP地址。
以上是一个简单的IPv4协议格式的例子,每个字段都扮演着重要的角色,共同构成了IPv4数据包的格式。
希望这个例子能够帮助你更好地理解IPv4协议的格式。
IPv4 数据报格式_计算机网络_[共4页]
4.2 网络层协议111 无误时,对数据报中包含的目的地址同主机的IP 地址进行比较,如果比较结果一致,则表明数据报已传送到正确的目的地址。
随后,IP 检查数据报中的各个域,以确定源主机IP 发送的是什么指令,在通常情况下,这些指令是要将数据报传给TCP 或UDP 层。
图中画出了源主机、目的主机及路由器的协议栈,同时也画出了数据在各协议栈中流动的方向。
我们注意到,主机的协议栈有5层,而路由器的协议栈只有下3层。
我们还可以注意到,在R 4、R 5之间使用了卫星链路,而R 5所连接的是一个无线局域网。
R 1与R 4之间的3个网络可以是任意类型的网络。
总之,由于在网际协议IP 的控制下,从图中可以看出,通过工作在网络层的路由器可以将多种异构网络互连起来形成统一的互联网。
图4-5 分组在互联网中的传送如果只从网络层的角度去考虑,而不考虑协议栈中其他层的存在。
我们可以想象IP 数据报在网络层中传送,如图4-6所示。
图4-6 从网络层看数据报的传送IP 有两个版本:IPv4和IPv6。
IPv4是目前Internet 的主流,IPv6处于试验阶段。
下面着重介绍IPv4的数据报格式及IPv4的地址。
4.2.2 IPv4数据报格式在IP 分组的传递过程中,不管传送多长的距离,或跨越多少个物理网络,IP 的寻址机制和路由选择功能都能保证将数据送到正确的目的地。
所经过的各个物理网络可能采用不同的链路协议和帧格式,但是,无论是在源主机和目的主机中还是在路过的每个路由器中,网络层都使用始终如一的协议(IP )和不变的分组格式(IP 分组)。
IP 使用的分组称为数据报(datagram )。
图4-7所示为IPv4数据报的格式。
数据报是可变长分组,由两部分组成:首部和数据。
首部长度由20~60个字节组成,包括有与路由选择和传。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.路由器不需要对分片进行重组,也不可能对分片进行重组
返回总目录 返回章目录
分片控制
1.标识
源主机赋予IP数据报的标识符 该域需要复制到新分片的报头中 目的主机利用此域和目的地址判断分片属于哪个数据报
2.标志
标识是否已经分片,是否是最后一个分片
Windows 2000的ping命令形式
ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS] [-r count] [-s count] [[-j host-list] | [-k host-list]] [-w timeout] 目的IP地址
返回章目录
ICMP差错报文的主要特点
ICMP差错报告作为一般数据传输,不享受特别
优先权和可靠性
ICMP差错报告数据中除包含故障IP数据报报头 外,还包含故障IP数据报数据区的前64bit数据 ICMP差错报告是伴随着抛弃出错IP数据报而产 生的
返回总目录 返回章目录
ICMP主要差错报告类型
目的地不可达报告
严格源路由选项:规定IP数据报要经过路径上的每一个路由器 松散源路由选项:只给出IP数据报必须经过的一些“要点”
返回总目录 返回章目录
记录路由选项
1.记录路由:记录IP数据报从源主机到目的主机所
经过路径上各个路由器的IP地址
2.应用场合
查看IP数据报传输过程中所经过的路径 测试路由器的路由配置是否正确
第8章 IP 数 据 报
8.1 8.2 8.3 8.4 8.5
IP数据报的格式 IP封装、分片与重组 IP数据报选项 差错与控制报文 实践:ping命使用
返回总目录 返回章目录
本章主要内容
1.IP数据报的格式及主要字段的功能 2.IP数据报的分片与重组 3.源路由、记录路由及时间戳选项 4.ICMP的主要功能 5.实践内容
剖析ping命令
返回总目录
使用ping命令及其选项
返回章目录
IP数据报的格式
IP数据报包含报头区和数据区两部份
数据区:高层传输的数据 报头区:为了正确传输高层数据而增加的控制信息
返回总目录 返回章目录
报头中各主要字段的功能(1)
1.版本与协议类型
版本:数据报对应的IP协议版本号(目前使用的IP协议版本号为4) 协议类型:数据报数据区数据的高级协议类型(如TCP)
没有到目的地的路由
ping对目的地不可达的屏幕响应
原因:通常是“Reply from”中列出的路由器路由错误
造成的
2.请求超时(Request timed out)
在指定的超时时间内没有对探测报文作出响应 原因:路由器关闭、目标主机关闭、没有路由返回到
返回总目录
主机或响应的等待时间大于指定的超时时间等
2.ICMP协议不严格规定对出现的差错采取的处理方式
3.ICMP差错报告都是采用路由器到源主机的模式
IP数据报本身只包含源主机地址和目的主机地址,错误报告给目 的主机没有意义(有时也不可能) 路由器独立选路,发现错误的路由器不知道该数据报经过的路 径,无法将错误通知相应路由器 返回总目录 返回章目录
往该目的地的最优路径
功能:保证主机拥有动态的、既小且优的路由表
2.ICMP重定向机制只能在同一网络的路由器与主机 之间使用
返回总目录 返回章目录
返回总目录 返回章目录
ICMP请求/应答报文对
回应请求与应答
测试目的主机或路由器的可达性
时戳请求与应答
获取其他设备的当前时间
掩码请求与应答
从路由器获取本网的子网掩码
路由器的处理速度太慢,不能完成数据报排队等日常工作 路由器传入数据速率大于传出数据速率。
2.拥塞控制:源站抑制
利用ICMP源抑制报文抑制源主机发送数据报的速率
返回总目录 返回章目录
拥塞控制与源抑制报文(2)
3.发送源站抑制报文策略
路由器的某输出队列溢出后,抛弃新来的数据报,发送ICMP源
抑制报文 为路由器的输出队列设置阈值,超过域值后抛弃新来的数据报,
3.片偏移
本片数据在初始IP数据报数据区的位置
偏移量以8B为单位
返回总目录 返回章目录
IP数据报选项
功能:主要用于控制和测试 用户可以使用也可以不使用IP选项。但所有实现 IP协议的设备必须能处理IP选项
IP数据报选项由选项码、长度和选项数据三部分
组成
返回总目录 返回章目录
源路由选项
源路由:IP数据报穿越互联网所经过的路径是由源主机指定 的应用场合:测试某特定网络的吞吐率、使数据报绕开出错 网络等 源路由选项分为:
发送ICMP源抑制报文
有选择地抑制IP数据报发送率较高的源主机
4.接收源站抑制报文
收到源抑制报文后,源主机可以降低发送IP数据报的速率 注意:拥塞解除后路由器不主动通知源主机
返回章目录 返回总目录
路由控制与重定向报文
1.ICMP重定向机制
主机在启动时具有一定的路由信息,但不一定是最优的 路由器检测到IP数据报经非优路由传输,就通知主机去
返回总目录 返回章目录
回应请求与应答
1.机理
请求者向特定目的IP地址发送包含任选数据区的回应请求报文
目的主机或路由器收到,响应回应应答报文(包含请求报文中任选
数据的复制)
2.请求者成功收到应答则说明
目的主机(或路由器)可以到达 源主机与目的主机(或路由器)的ICMP软件和IP 软件工作正常
返回总目录
回应请求与应答ICMP报文经过的中间路由器的路由选择功能正常
返回章目录
实践:ping命令剖析与使用
功能:测试网络的连通性和可达性
工作机理:回应请求/应答ICMP报文对的具体实现
UNIX、Linux、Windows等网络操作系统都支持
ping命令
不同网络操作系统对ping命令的实现稍有不同
返回总目录 返回章目录
返回总目录 返回章目录
时间戳选项
时间戳:记录IP数据报经过每一路由器时的当地时间
应用场合:分析网络吞吐率、拥塞情况、负载报文
IP互联网利用ICMP传输控制报文和差错报文
ICMP报文的封装:封装在IP数据报中
返回总目录 返回章目录
ICMP差错控制
1.ICMP的基本功能之一是提供差错报告
2.长度
报头长度:报头区的长度(以32bit为单位) 总长度:整个IP数据报的长度(以8bit为单位)
3.服务类型
转发过程中对该数据报的处理方式
返回总目录 返回章目录
报头中各主要字段的功能
1.生存周期
IP数据报在互联网中的存活时间(避免死循环)
2.头部校验和
保证IP数据报报头的完整性
3.地址
源IP地址:数据报的发送者
返回总目录 返回章目录
连续发送ping探测报文
返回总目录 返回章目录
自选数据长度的ping探测报文
返回总目录 返回章目录
不允许对ping探测报分片
返回总目录 返回章目录
修改“ping”命令的请求超时时间
返回总目录 返回章目录
1.目的网络不可达(Destination net eachable)
目的IP地址:数据报的接收者
返回总目录 返回章目录
IP封装
IP数据报在
各个物理网 络中需要重 新封装
返回总目录 返回章目录
MTU
MTU:网络规定的一个帧最多能够携带的数据量
IP数据报的长度只有小于或等于网络的MTU,才能
在这个网络传输
与路由器连接的各个网络的MTU可能不同
返回总目录 返回章目录
分片
网络不可达、主机不可达、协议和端口不可达等
超时报告 参数出错报告
返回总目录 返回章目录
ICMP控制报文
拥塞控制与源抑制报文
路由控制与重定向报文 ICMP请求/应答报文对
返回总目录 返回章目录
拥塞控制与源抑制报文(1)
1.拥塞
(1)什么是拥塞?
路由器被大量涌入的IP数据报“淹没”的现象
(2)拥塞产生的原因
分片:IP数据报的尺寸大于将发往网络的MTU值时,路由器
将IP数据报分成若干较小的部分的过程 每个分片由报头区和数据区两部分构成 每个分片经过独立的路由选择等处理过程,最终到达目的主 机
返回总目录 返回章目录
重组
1.重组:在接收到所有分片的基础上,主机对分片进行重新 组装的过程
2.目的主机进行重组