【网络】网络层IP地址和IP数据报的格式

这篇具有很好参考价值的文章主要介绍了【网络】网络层IP地址和IP数据报的格式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【网络】网络层IP地址和IP数据报的格式,网络知识,网络,tcp/ip,网络协议,IP数据报,IP地址

🦄 个人主页——🎐开着拖拉机回家_Linux,大数据运维-CSDN博客 🎐✨🍁

🪁🍁🪁🍁🪁🍁🪁🍁 🪁🍁🪁🍁🪁🍁🪁 🪁🍁🪁🍁🪁🍁🪁🍁🪁🍁🪁🍁

感谢点赞和关注 ,每天进步一点点!加油!

目录

一、IP概述

1.1 IP简介

1.2 IP协议

1.3 IP地址

1.4 IP地址特点

1.5 IP地址表

二、IP地址及其表示方法

三、IP数据报的格式


一、IP概述


1.1 IP简介


IP地址(Internet Protocol Address)是指互联网协议地址,又译为网际协议地址。

IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。【网络】网络层IP地址和IP数据报的格式,网络知识,网络,tcp/ip,网络协议,IP数据报,IP地址

1.2 IP协议


IP协议是为计算机网络相互连接进行通信而设计的协议。在因特网中,它使得连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。IP协议实际上是一套由软件程序组成的协议软件,它把各种不同“帧”统一转换成“IP数据报”格式,这种转换是因特网的一个最重要的特点,使所有各种计算机都能在因特网上实现互通,即具有“开放性”的特点(百度百科)。

1.3 IP地址


IP协议中还有一个非常重要的内容,那就是给因特网上的每台计算机和其它设备都规定了一个唯一的地址,叫做“IP地址”。由于有这种唯一的地址,才保证了用户在连网的计算机上操作时,能够高效而且方便地从千千万万台计算机中选出自己所需的对象来。

IP地址就像是我们的家庭住址一样,如果你要写信给一个人,你就要知道他的地址,这样邮递员才能把信送到。计算机发送信息就好比是邮递员,它必须知道唯一的“家庭地址”才能不至于把信送错人家。只不过我们的地址是用文字来表示的,计算机的地址用二进制数字表示。(百度百科)

1.4 IP地址特点


IP地址具有以下一些重要特点。

(1)每一个IP地址都由网络号和主机号两部分组成。从这个意义上说,IP地址是一种分等级的地址结构。分两个等级的好处是:第一,IP地址管理机构在分配IP地址时只分配网络号(第一级),而剩下的主机号(第二级)则由得到该网络号的单位自行分配。这样就方便了IP地址的管理;第二,路由器仅根据目的主机所连接的网络号来转发分组(而不考虑目的主机号),这样就可以使路由表中的项目数大幅度减少,从而减小了路由表所占的存储空间以及查找路由表的时间。

(2)IP地址是标志一台主机(或路由器)和一条链路的接口。当一台主机同时连接到两个网络上时,该主机就必须同时具有两个相应的IP地址,其网络号必须是不同的。这种主机称为多归属主机(multihomed host)。由于一个路由器至少应当连接到两个网络,因此一个路由器至少应当有两个不同的IP地址。这好比一个建筑正好处在北京路和上海路的交叉口上,那么这个建筑就可以拥有两个门牌号码。例如,北京路4号和上海路37号。

(3)一个网络是指具有相同网络号net-id的主机的集合,因此,用转发器或网桥连接起来的若干个局域网仍为一个网络,因为这些局域网都具有同样的网络号。具有不同网络号的局域网必须使用路由器进行互连。

(4)在IP地址中,所有分配到网络号的网络(不管是范围很小的局域网,还是可能覆盖很大地理范围的广域网)都是平等的。所谓平等,是指互联网同等对待每一个IP地址。

1.5 IP地址表


根据范围,IP地址分为五个地址类别,如下所示。

类别

高位

网络地址位

主机地址位

网络数量

每个网络的主机数量

范围

A

0

8

24

2^7

2^24-2

0.0.0.0 到 125.255.255.255

B

10

16

16

2^14

2^16-2

128.0.0.0 到 191.255.255.255

C

110

24

8

2^21

2^8-2

192.0.0.0 到 223.255.255.255

D

1110

未定义,保留作为未来使用

未定义,保留作为未来使用

未定义,保留作为未来使用

未定义,保留作为未来使用

224.0.0.0 到 239.255.255.255

E

1111

未定义,保留作为未来使用

未定义,保留作为未来使用

未定义,保留作为未来使用

未定义,保留作为未来使用

240.0.0.0 到 255.255.255.255


二、IP地址及其表示方法


所谓“分类的IP地址”就是将IP地址划分为若干个固定类,每一类地址都由两个固定长度的字段组成,其中第一个字段是网络号(net-id),它标志主机(或路由器)所连接到的网络。一个网络号在整个互联网范围内必须是唯一的。第二个字段是主机号(host-id),它标志该主机(或路由器)。一台主机号在它前面的网络号所指明的网络范围内必须是唯一的。由此可见,一个IP地址在整个互联网范围内是唯一的。

这种两级的IP地址可以记为:

IP地址 = {网络号 + 主机号}

这里A类、B类和C类地址都是单播地址(一对一通信),是最常用的。【网络】网络层IP地址和IP数据报的格式,网络知识,网络,tcp/ip,网络协议,IP数据报,IP地址

对主机或路由器来说,IP地址都是32位的二进制代码。为了提高可读性,我们常常把32位的IP地址中的每8位插入一个空格(但在机器中并没有这样的空格)。为了便于书写,可用其等效的十进制数字表示,并且在这些数字之间加上一个点。这就叫做点分十进制记法(dotted decimal notation)。如下图是一个B类IP地址的表示方法。【网络】网络层IP地址和IP数据报的格式,网络知识,网络,tcp/ip,网络协议,IP数据报,IP地址


三、IP数据报的格式


IP数据报的格式能够说明IP协议都具有什么功能。在TCP/IP的标准中,各种数据格式常常以32位(即4字节)为单位来描述。下图是IP数据报的完整格式。【网络】网络层IP地址和IP数据报的格式,网络知识,网络,tcp/ip,网络协议,IP数据报,IP地址

从上图可看出,一个IP数据报由首部和数据两部分组成。首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。下面介绍首部各字段的意义。

IP数据报首部的固定部分中的各字段

(1)版本 占4位,指IP协议的版本。通信双方使用的IP协议的版本必须一致。目前广泛使用的IP协议版本号为4(即IPv4)。

(2)首部长度 占4位,可表示的最大十进制数值是15。请注意,首部长度字段所表示数的单位是32位。因为IP首部的固定长度是20字节,因此首部长度字段的最小值是5(即二进制表示的首部长度是0101)。而当首部长度为最大值1111时(即十进制数的15),就表明首部长度达到最大值15个32位字长,即60字节。当IP分组的首部长度不是4字节的整数倍时,必须利用最后的填充字段加以填充。因此IP数据报的数据部分永远在4字节的整数倍时开始,这样在实现IP协议时较为方便。首部长度限制为60字节的缺点是有时可能不够用。但这样做是希望用户尽量减少开销。最常用的首部长度是20字节(即首部长度为0101),这时不使用任何选项。

(3)区分服务 占8位,用来获得更好的服务。这个字段在旧标准中叫做服务类型,但实际上一直没有被使用过。只有在使用区分服务时,这个字段才起作用。

(4)总长度 总长度指首部和数据之和的长度,单位为字节。总长度字段为16位,因此数据报的最大长度为2[^16]− 1 = 65535 字。然而实际上传送这样长的数据报在现实中是极少遇到的。

我们知道,在IP层下面的每一种数据链路层协议都规定了一个数据帧中的数据字段的最大长度,这称为最大传送单元MTU(Maximum Transfer Unit)。当一个IP数据报封装成链路层的帧时,此数据报的总长度(即首部加上数据部分)一定不能超过下面的数据链路层所规定的MTU值。例如,最常用的以太网就规定其MTU值是1500字节。若所传送的数据报长度超过数据链路层的MTU值,就必须把过长的数据报进行分片处理。

虽然使用尽可能长的IP数据报会使传输效率得到提高(因为每一个IP数据报中首部长度占数据报总长度的比例就会小些),但数据报短些也有好处。每一个IP数据报越短,路由器转发的速度就越快。为此,IP协议规定,在互联网中所有的主机和路由器,必须能够接受长度不超过576字节的数据报。这是假定上层交下来的数据长度有512字节(合理的长度),加上最长的IP首部60字节,再加上4字节的富余量,就得到576字节。当主机需要发送长度超过576字节的数据报时,应当先了解一下,目的主机能否接受所要发送的数据报长度。否则,就要进行分片。

(5)标识(identification) 占16位。IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段。但这个“标识”并不是序号,因为IP是无连接服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的MTU而必须分片时,这个标识字段的值就被复制到所有的数据报片的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。

(6)标志(flag) 占3位,但目前只有两位有意义。

标志字段中的最低位记为MF(More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。

标志字段中间的一位记为DF(Don't Fragment),意思是“不能分片”。只有当DF=0时才允许分片。

(7)片偏移 占13位。片偏移指出:较长的分组在分片后,某片在原分组中的相对

位置。也就是说,相对于用户数据字段的起点,该片从何处开始。片偏移以8个字节为偏移单位。这就是说,每个分片的长度一定是8字节(64位)的整数倍。

(8)生存时间 占8位,生存时间字段常用的英文缩写是TTL(Time To Live),表明这是数据报在网络中的寿命。由发出数据报的源点设置这个字段。其目的是防止无法交付的数据报无限制地在互联网中兜圈子(例如从路由器R1转发到R2,再转发到R3,然后又转发到R1),因而白白消耗网络资源。最初的设计是以秒作为TTL值的单位。每经过一个路由器时,就把TTL减去数据报在路由器所消耗掉的一段时间。若数据报在路由器消耗的时间小于1秒,就把TTL值减1。当TTL值减为零时,就丢弃这个数据报。

然而随着技术的进步,路由器处理数据报所需的时间不断在缩短,一般都远远小于1秒,后来就把TTL字段的功能改为“跳数限制”(但名称不变)。路由器在每次转发数据报之前就把TTL值减1。若TTL值减小到零,就丢弃这个数据报,不再转发。因此,现在TTL的单位不再是秒,而是跳数。TTL的意义是指明数据报在互联网中至多可经过多少个路由器。显然,数据报能在互联网中经过的路由器的最大数值是255。若把TTL的初始值设置为1,就表示这个数据报只能在本局域网中传送。因为这个数据报一传送到局域网上的某个路由器,在被转发之前TTL值就减小到零,因而就会被这个路由器丢弃。

(9)协议 占8位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个协议进行处理。

常用的一些协议和相应的协议字段值如下(8):

(10)首部检验和 占16位。这个字段只检验数据报的首部,但不包括数据部分。这是因为数据报每经过一个路由器,路由器都要重新计算一下首部检验和(一些字段,如生存时间、标志、片偏移等都可能发生变化)。不检验数据部分可减少计算的工作量。为了进一步减小计算检验和的工作量,IP首部的检验和不采用复杂的CRC检验码而采用下面的简单计算方法:在发送方,先把IP数据报首部划分为许多16位字的序列,并把检验和字段置零。用反码算术运算(9)把所有16位字相加后,将得到的和的反码写入检验和字段。接收方收到数据报后,将首部的所有16位字再使用反码算术运算相加一次。将得到的和取反码,即得出接收方检验和的计算结果。若首部未发生任何变化,则此结果必为0,于是就保留这个数据报。否则即认为出差错,并将此数据报丢弃。

————————————————

原文链接:网络层——IP协议的转发流程_计算机a发往计算机b数据包的路径是什么-CSDN博客

【IP数据报】网络层协议-CSDN博客文章来源地址https://www.toymoban.com/news/detail-777177.html

到了这里,关于【网络】网络层IP地址和IP数据报的格式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux 网络基础(1)基础知识、IP地址、端口、协议、网络字节序

    网络发展背景: 网络的划分:局域网(覆盖范围在1000m以内)、城域网(覆盖范围在20km以内)、广域网(更大范围) 组网方式:以太网、令牌环网.... 日常名词:互联网,因特网----说的是一个网络,就是国际化的广域网 网卡:实现数字信号与电信号之间的转换 中继器:信号

    2024年02月05日
    浏览(90)
  • 计算机网络之TCP/IP协议第一篇:网络基础知识

    😉😉 学习交流群: ✅✅1:这是孙哥suns给大家的福利! ✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 🥭🥭3:QQ群:583783824   📚📚  工作微信:BigTreeJava 拉你进微信群,免费领取! 🍎🍎4:本文章内容出自上述:Spring应用课程!💞💞

    2024年02月09日
    浏览(61)
  • 详解TCP/IP协议第一篇:网络基础知识

    😉😉 学习交流群: ✅✅1:这是孙哥suns给大家的福利! ✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 🥭🥭3:QQ群:583783824   📚📚  工作微信:BigTreeJava 拉你进微信群,免费领取! 🍎🍎4:本文章内容出自上述:Spring应用课程!💞💞

    2024年02月09日
    浏览(53)
  • 计算机网络基础知识(二)—— 什么是Ip地址、Mac地址、网关、子网掩码、DNS

    初次接触网络时,只知道电脑连接网线,就可以打开4399玩小游戏,可以登录QQ和朋友聊天; 再次接触网络时,知道了怎么查看自己电脑的网络情况(Windows终端下敲入ipconfig),但是对于其中的一串串数字完全一头雾水,现在来看下这些数字都代表着什么意思吧🤓 I P 地址是网

    2024年02月03日
    浏览(43)
  • IPV6网络协议基础知识 IPV6地址和IPV6报文格式详细介绍

    由于互联网的快速发展与普及,原有的IPV4地址已不能满足网络用户的需求,虽然NAT可以缓解IPV4地址的耗尽,但NAT破坏了网络环境的开放、透明以及端到端的特性,因此IPV6地址协议应运而生。IPV6协议使用128位地址替代32位的IPV4地址,这样大约可以产生340万亿亿亿亿(3.4*1038)个

    2024年02月08日
    浏览(64)
  • 【Netty专题】【网络编程】从OSI、TCP/IP网络模型开始到BIO、NIO(Netty前置知识)

    我是有点怕网络编程的,总有点【谈网色变】的感觉。为了让自己不再【谈网色变】,所以我想过系统学习一下,然后再做个笔记这样,加深一下理解。但是真要系统学习,其实还是要花费不少时间的,所以这里也只是简单的,尽可能地覆盖一下,梳理一些我认为比较迫切需

    2024年02月06日
    浏览(60)
  • 网络抓包分析【IP,ICMP,ARP】以及 IP数据报,MAC帧,ICMP报和ARP报的数据报格式

    Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。 软件界面如下图: MAC帧的帧头包括三个字段。前两个字段分别为6字节长的目的

    2023年04月22日
    浏览(49)
  • 网络ipv4地址相关知识

    IPv4地址是一个32位的二进制数字,通常被表示为4个8位的十进制数,每个数之间用点号(.)分隔开来,例如192.168.0.1。IPv4地址是互联网中广泛使用的一种网络地址,用于标识网络中的设备。 IPv4地址分为网络地址和主机地址两个部分。其中,网络地址用于标识设备所在的网络

    2024年02月09日
    浏览(44)
  • 网络知识梳理:TCP与UDP

    TCP(传输控制协议)和UDP(用户数据报协议)是两种主要的互联网协议,它们都用于在网络层和传输层进行数据传输,但它们在数据传输的方式和特性上有显著的区别: 连接导向 :TCP是一种基于连接的协议。在数据传输开始之前,它需要在发送方和接收方之间建立一个连接

    2024年01月19日
    浏览(43)
  • 网络编程 tcp udp http编程流程 网络基础知识

    OSI分层:应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 tcp/ip: 应用层 传输层 网络层 数据链路 ip地址:唯一标识一台主机 ipv4 32位 ipv6 128位 寻址 可以反映物理上的一个变化 MAC地址:48 固化在计算机中 ip地址又两部分构成:网络号+主机号 端口号:标识一个应用程序

    2024年02月13日
    浏览(71)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包