网络层入门笔记

网络层服务模型

网络层的主要功能有两个:转发和路由。按照是否预先建立连接,可以分为无连接服务模型和连接服务模型。其中无连接服务模型的代表是数据报模型。有链接的代表是虚电路网络模型。

虚电路网络(Virtual Circuit network)

特点是:复杂网络,简化边缘
VC模型是基于连接服务模型的,类似于传统的电话电路网络,会首先建立连接,然后依据该链接进行传输,最后在关闭该链接。其好处是数据流速的较好控制性能。如ATM(Asynchronous Transfer Mode异步传输模式)网络。
对于某次连接,VC会分配给该链接一个虚电路号VCid,该链接的数据都会携带该VCid进行传输,由每个中间点的路由器进行识别VCid并转发。值得注意的是:每段路由器间同一连接的VCid是不一样的,如下图所示。
这里写图片描述
当数据从源端到R1时,VCid为12,但是从R1到下一个路由时,VCid为22。因此,路由器除了转发数据包,还要进行的就是更换VCid。
由于目前的intel网络采用的是另一种数据报模型,因此VC在这里不做过多探讨。

数据报网络

特点是:简化网络,复杂边缘
目前Internet主要使用的是数据报网络。数据报网络采用的是无连接模式,每个数据包都携带由目的IP,每个路由器都会依据自身当时情况根据IP地址依次对每个数据包进行转发。因此会出现乱序的情况。由于对每个数据包都进行了IP判断,路由器需要维护一个IP地址转发表。
这里写图片描述
如上图所示,转发表实际上是采用了IP范围的方式,并且,当一个IP符合两个IP范围的时候就要选择更加精确的IP地址范围进行转发。
因为转发是基于IP范围的,因此IP的划分就显得十分重要,之后会讲解IP地址是如何划分的。

IPv4协议

IP数据报格式

这里写图片描述
如上图所示,IP数据报主要由首部加数据组成。现在简要介绍下首部的各个数据。
版本号:4bit用于标识是IPv4还是IPv6;
首部长度:4bit,由于固定部分长度至少有5*32bit=20Byte,因此要用4bit来表示不现实,故首部长度的1各单位表示4Byte。如1000表示有8*4=32Byte。
总长度:IP数据报的总Byte数。由于只有16位,因此可以计算一个IP数据报的最大长度。
生存时间(Time To Live):由一开始的源主机设定,当经过一个路由,TTL减一,当减为零时,路由将其丢弃,并给源主机报错。
协议:上层结构的协议(TCP,UDP)代号。
首部校验和:同原来的,即求和后取反码。

IP分片

拓展参考:TCP层的分段和IP层的分片之间的关系 & MTU和MSS之间的关系
由于在路由传输过程中,每个路由的传输能力不一样(用MTU最大传输单元衡量),当一个路由接到一个大于自身传输能力的IP数据报,他会将数据报分片,对每片IP数据报都加上首部(仅有第一片含有上层(TCP/UDP)的头部,其他部分没有。)。这里就用到了之前首部里面的标识,标志位和片偏移。
注意一点,路由只分不装,组装要在目的主机进行,如果目的主机没有收齐IP片,则丢弃当前保有的IP片,要求源主机进行重传。
标识:每次进行IP分片,此项加一。
标志位:有3个bit,1个保留,一个表示是否允许对该IP数据报分片,另一个表示该片是否是最后一片。
偏移量:由于位数较少,而数据报较大,因此这里的1bit代表了8Byte的数据量。

IP编址

IP地址可以分为两个部分 ,一个是网络号NetID,一个是主机号HostID。在实际中,Internet采用有类编址的方式,如下图:
这里写图片描述
对第一位bit为0的我们成为A类地址,他占总IP地址量的一半。根据规定,A类地址的NetID部分为前8位bit为NetID,后24位为HostID。因此可以看出该类地址的特点是分组少,每个子网的IP数多。
B类以10开头。C类以110开头。且他们的NetID位数都不一样。C类地址的特点是分组多,每个子网的IP数少。D类IP地址第一个字节以“1110”开始 。它并不指向特定的网络,目前这一类地址被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。E类IP地址保留。
从上图可以看出A类地址由于一个子网内有大量IP,因此可能存在着浪费的问题。为此我们提出了子网掩码的概念,以此进行子网的划分。

子网掩码

这里写图片描述
子网掩码的本质就是在某一确定子网内(NetID相同),利用向HostID借位来对子网划分。具体做法是利用了位与操作。已知1与任何数相与,可以起到保留该字段的作用。因此我们采用全1来作为子网掩码,然后将子网掩码和IP地址相与,就可以得到该IP地址属于当前子网掩码划分下哪个子网范围了。
举个例子:
这里写图片描述
如上图所示,假设已知IP地址172.32.1.112,我们可以计算出其属于B类IP地址,配合255.255.254.0的子网掩码,划分如下:

172.32.1.112  = 10101100 00100000 00000001 01110000
                |
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值