首页 > 其他分享 >网络层

网络层

时间:2023-08-09 17:13:54浏览次数:34  
标签:字节 IP 网络层 分片 长度 路由 路由器

网络层

数据单元:包/报文


IP包头

()里代表多少bit

IP包头固定为20字节,可选项中最多有10行,一行32bit=4个字节,因此可选项长度为0-40字节。

!注意:后面的值是以十进制表示,但在IP包里存储的都是二进制。


版本

长度:4bit(值最大15)

用于保存IP版本,ipv4/ipv6。

当值为4(0100)时代表版本为ipv4,值为6时代表版本为ipv6。


首部长度

长度:4b

保存IP包头的长度,IP包头中有可选项,长度可能有变化。

这里面的值:1对应4字节,2对应8字节,即这15个值对应的字节数为4的倍数,以此来表示IP包头的长度


优先级(QOS)与服务类型(TOS)

长度:8b

前三个比特位代表优先级,值越高,优先级越高,但现在基本忽略。

中间四个比特位代表服务类型,按顺序分别为最小时延、最大吞吐量、最高可靠性、最小费用。四个比特位最多只能同时启用一个,如果全为0则表示一般服务。

最后一位未启用,必须为0。


总长度

长度:16b(值最大65535,一个包最大传输65535字节)

记录原始IP包的长度,即IP包头+上层数据(4、5层数据)。

到达数据链路层有个MTU值,一般为1500字节,在我们这里表示一个包只能1500字节,也就是20字节(IP包头)+1480字节(上层数据),如果上层数据超过1480字节,就会分片(拆成多个包)。

每个分片会会有一个新的IP包头(大部分内容和原来一样)。


标识符

长度:16b

可理解成ID。后面分片重组时 会将相同标识符的分片放一起来重组。


标志

长度:3b

第一个位为保留位,未使用,为0

第二位说明是否进行了分片,值为0代表进行了分片,值为1代表未分片

第三位说明该分片是否为最后一个分片,值为0代表后面没有分片了(最后一个分片),为1时代表后面还跟着有分片


片偏移量

长度:13b

单位:8字节

假设有分片1、2、3

分片1的片偏移量为0字节,分片2的片偏移量为1400字节,分片3的片偏移量为2800字节。

因为单位是8字节,所以IP包头中的值是0、1400/8=175、350

片偏移量的大小受数据链路层中的MTU值影响


分片重组个人理解:标识符一样的数据在一起,片偏移量0的包放第一,取掉其他的包头,根据前一个包的片偏移量值来拼接到对应位置,标志位来辅助重组。


TTL

长度:8b

TTL:time to live(生存时间)

表示可经过路由器的次数,每经过一个路由器减一,值为0时被丢弃。

作用:防止数据包在网络上永久循环


协议号

长度:8b

表示在IP上层承载的是什么协议

常见:值为1是ICMP协议,6是TCP协议,17是UDP协议


首部校验和

长度:16b

用于检验数据包首部是否出问题(不包括上层数据)。

过程:发送端将数据包首部通过一些列操作(反码算术运算求和等,可自行了解),得出一段16位的校验和,放进首部校验和中,接收端也通过一系列操作计算,结果为0保留,否则丢弃。

注:这里的发送/接收端不一定是两个pc


源地址和目标地址和可选项省略。


路由原理

路由:选择从源地址到目的地址的最佳路径的过程


路由器

路由器是实现路由原理的网络设备,路由器上的端口一般充当网关(端口有自己的IP地址),用来隔离/连接两个不同的网段。

三层设备的端口一般处于人工down状态。


路由表

内容:

  1. 路由类型
  2. 目标IP地址:通常以网段为单位,目标网段
  3. 下一跳IP地址

路由策略


静态路由策略

直连网段中:路由器的端口连接网线并做好配置时,就会在路由表中生成记录,如图中左边的路由表前两条记录,这两条记录的路由类型是C(直连路由),目标IP地址对应的是10网段和20网段整个网段(因为主机位全0),下一跳IP则是各自的端口。

直连路由有最高优先级

管理距离值:用来说明通过哪条记录进行路由(最先走哪条路),数值小,优先级大,在配置时后面跟着数值即可,会隐藏优先级小的那个。
如:在路由表中,f0/1到f0/1的端口IP地址会被隐藏


非直连网段中(没跟路由器直接用线相连的):

静态路由:手动为路由表配置记录,如图中左边的路由表后面的记录,这些路由类型是S(静态路由),我理解的下一跳IP地址是端口连接的对面的IP地址(数字60上面的那个路由器的左端口 的IP地址)

这里的s*是静态默认路由:用于无法匹配到路由项的目标(未知或未匹配的目标网络流量),通常设定为0.0.0.0/0,即全0子网掩码,下一跳IP地址设定为默认网关或出口路由器。


动态路由策略

动态路由:自动地学习,以更新和维护路由表中的路由项。允许路由器之间相互通信,并交换路由信息。

如:IGP、EGP、BGP

动态路由协议中可使用浮动路由策略:用作备用路径,当主要路径不可用时,浮动路由可以自动激活备用路径,如上文的管理距离值的例子。


路由过程

个人理解版:https://www.cnblogs.com/xhzccy/p/17617277.html



标签:字节,IP,网络层,分片,长度,路由,路由器
From: https://www.cnblogs.com/xhzccy/p/17617284.html

相关文章

  • 网络层次划分
    网络层次划分是什么网络层次划分是指将计算机网络按照功能和组织结构划分为不同的层次,以实现网络的有效管理和运行。网络层次划分最常见的模型是TCP/IP参考模型和OSI参考模型。TCP/IP参考模型将网络分为四个层次:网络接口层、网络层、传输层和应用层。网络接口层处理与物理网络连......
  • 网络层
    一,网络层概述1.1分组转发和路由选择网络层主要任务是:将分组从源主机经过多个网络和多段链路传输到目的主机,可以将该任务划分为分组转发和路由选择两种重要的功能。分组在多段网络中传输的图:1.2网络层向其上层提供的两种服务1.2.1面向连接的虚电路服务核心思想:可靠通信......
  • 实战设计模式解耦项目网络层框架
    作者:依乐祝写在前面仔细想想我们的这个极简CMS系统,可以说很简单,简单到都无须进行特殊的架构设计,只需按照你所熟悉的编码方式直接进行快速的编码实现即可,如果做得好的话,访问量上来了你再加一个缓存处理完全能够支撑一定的并发!如下图所示:我们前期先进行单体架构的实现,等后期分布式系......
  • 网络层 :IP协议详解
        网络层的目的就是实现终端节点之间的通信,即点对点通信。具体功能包括路由选择与地址管理等。    这一层主要有IP和ICMP两个协议组成,在这里就先重点讲解IP协议,后面会单独将IP协议相关的如ICMP,DNS,NAT,NAPT,DHCP等协议单独写一篇博客汇总。    IP层协议......
  • 网络层协议注册
    staticDEFINE_SPINLOCK(ptype_lock);structlist_headptype_base[PTYPE_HASH_SIZE];structlist_headptype_all;/*Taps*/structpacket_type{__be16type;/*Thisisreallyhtons(ether_type).*/structnet_device*dev;/*NULLiswildcardedhere......
  • 从问题中了解网络层
    从问题中了解网络层问题(Problem)参考文献问题(Problem)1.存在多种异构网络对不同网络之间的通信会造成一些麻烦,但为什么世界上还存在多种异构网络?解答:世界上之所以存在着多种异构网络,就是因为仅用一种体系结构的网络根本无法满足所有用户的所有需求。OSl假定全世界所有的人都在......
  • 网络层
       现在用的是无连接的数据报服务  IPV4采用点分十进制表示方法:    分类编址:        子网编址:   下面这个题,1.从218可以看出是C类网络。2.说明子网掩码只有最后一位是分配给主机的,是192,化成二进制就是00000011. 3.因......
  • 计算机网络----网络层
    《网络层概述》 来看一群网络,如果只是网络独立各自通信,那么只要实现物理层和数据链路层即可(一朵云中的多个节点通过交换机实现通信)如果想要实现这群网络之间的通信,则是网络层干的事情了(各个云之间通过路由器实现通信)《网络层需要解决的问题》  1.网络层提供两......
  • 网络七层模型—网络层
        对于OSI网络七层模型,我想大家都有所了解吧,今天我也在学习中,整理下OSI七层模型种的网络层。废话不多说,我们直接开始!!网络层网络层基本概念    首先是网络层,作为OSI模型的第三层,其主要任务是:通过路由选择算法,为报文或分组通过通信子网选择最适当的路径。具体功能就......
  • 4.1 网络层概述
    一、网络层提供的功能  1、从发送方主机传输报文段到接收方主机。发送方主机封装报文段(segments)为数据报(datagrams),接收方主机递交报文段给传输层。  2、在每个主机、路由器上都需要运行网络层协议。  3、路由器会检查通过它的所有IP数据报的头部字段,然后根据......