在学习协议时要记得协议的英语缩写,在各种场合用的基本都是英语缩写,不会用中文全称!
文章目录
4.1 网络层概述
- 首先要明确的是,网络层的主要任务是实现网络互连,进而实现数据包在网络之间的传输。
要是要网络层的任务,需要解决以下问题:
- 网络层向运输层提供怎么样的服务(可靠传输还是不可靠传输)
关于可靠服务和不可靠服务在数据链路层文章有详细讲到:数据链路层
在不同网络体系结构中提供的服务可能是不同的,在因特网所使用的TCP/IP协议的网络层中使用的是无连接、不可靠的数据报服务。
ATM、帧中继和X.25的网络层使用的都是面向连接的、可靠的虚电路服务。
- 网络层如何寻址问题

在图中,各个路由器接口都有不同的IP地址来进行识别,根据其IP地址(网络编号)来识别其路由器接口,就能解决寻址问题。
- 路由如何选择问题(路径选择问题)

在图中,从最左端到最右端右多个路径可以选择,如何解决路径选择也就成了网络层的第三个问题。
但是在路由器中,路由器收到数据后是一句什么来决定将数据包从自己的哪个接口发送出去的,这里就引出了路由器中的路由表:
路由表中记录了目的网络以及各级跳的路由器端口,以此来选择走哪个路由器到达端口。
路由记录表的记录有两种情况生成:
- 由用户或网络管理员进行人工配置。这种方法只适用于规模较小且网络拓扑不改变的小型互联网。
- 实现各种路由选择协议,由路由器执行路由选择协议中所规定的路由选择算法,而自动得出路由表中的路有记录,这种方法更适合规模较大且网络拓扑经常改变的大型互联网
解决以上问题就能实现网络层的功能。
网络层(网际层)除了 IP协议外,还有之前介绍过的地址解析协议ARP(详细请看第三章数据链路层),还有网际控制报文协议ICMP,网际组管理协议IGMP。
小结:

4.2 网络层提供的两种服务
面向连接的虚电路服务
- 虚电路与电路交换类似。
- 虚电路要求通信双方必须建立网络层的连接——虚电路(Virtual Circuit)
- 通信双方必须沿着建立的虚电路发送分组
例如:

通信双方在通信过程中先建立一条虚电路连接,数据沿着这条虚电路有序传输。
目的主机的地址仅在建立连接阶段使用,之后每个分组的首部只需携带一条****虚电路编号(构成虚电路的每一段链路都一个虚电路编号)。
这种通信方式再使用可靠传输的网络协议便可使分组最终正确到达接收方。
通信结束后释放虚拟连接。
- 虚电路相当于逻辑上建立了电路交换,但是不产生物理上的连接。

无连接的数据报服务
- 无连接数据报服务相当于分组交换
- 要求可靠连接应当由用户主机来保证
- 不需要建立网络层连接(虚电路需要)
- 每个分组可以走不同的路径

其路径的选择类似分组交换。
因此每个分组的首部必须携带目的主机的完整地址。
这种通信方法所传送的分组可能会产生分组差错(误码、丢失、重复、失序|具体请看第三章文章)。
由于网络本身不提供端到端的可靠传输服务,因此网络中的路由器可以做的比较简单,造价低廉(与电信网种的交换机相比)。
因特网采用了这种设计思想。
将复杂的网络处理功能至于因特网的边缘(用户主机和其内部的运输层)。
相对简单的分组交付功能尽最大努力的至于因特网核心。
好处:
-
使得网络造价大大降低。
-
运行方式灵活,能够适应多种应用。
数据报服务和虚电路服务对比:

4.3 IPv4地址
IPv4地址概述
- 在TCP/IP体系中,IP地址是一个最基本的概念,也是网络层最重要的概念之一。
- IPv4地址就是给因特网上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的32比特的标识符。
- IP地址又因特网名字和数字分配机构ICANN(Internet Corporation for Assigned Names and Numbers)进行分配。
我国用户可向亚太网信息钟信申请IP地址,但是不对个任开放,需要缴费。
2011年2月3日,互联网号码分配局宣布,IP地址已经分配完毕。
我过在2014至2015年也逐步停止了向新用户和应用分配IPv4地址,同时全面开展商用部署IPv6。
- IPv4地址的编制方法经历了三个阶段:

这些都会在后面详细讲解。
IPv4地址由于采用了32比特的记录,不方便用户阅读,记录,以及输入,因此IPv4地址采用了点分十进制标识方法以方便用户使用。
例如:

对于8位无符号二进制数转十进制整数,用每个位数权值相加的方法。

例如:

- 在后续进行IPv4地址的相关计算时,要用到十进制数转为8位二进制数,因此也需要了解一下。(熟悉的同学可以跳过)
十进制数转为8位二进制数的常用方法是:
除2取余法:
例如:

每次对数字进行除2取余,当被除数变为0时,停止。并且将所有的余数由下往上取出,便是该十进制数转换后的二进制数。
分类编制的IPv4地址
IPv4地址按照分配分为5类:
A类地址:

- A类地址网络号占8比特,主机号占24比特
- 网络号最高位固定为0
A类地址网络号的两个不可指派(分配)的值:
1.最小网络号0,此时网络号位数全部取0,保留不指派。
2. 最大网络号127,此时网络号位数全部取1,作为本地环回测试地址,不指派。
根据其主机号的位数可以得出:
最小的本地环回地址为127.0.0.1(主机号为全0是网络号,因此最小为1)
最大的本地环回地址为127.255.255.254主机号为全1是广播地址,因此最小为1)
A类地址网络号的可指派(分配)的最小值和最大值:
- 可指派的网络号最小值为1,网络地址为1.0.0.0
- 最大的可指派网络号为126,网络地址为126.0.0.0
可以得出:
2多少次幂取决于可以改变的二进制数字有多少。在这里网络共有8个二进制数,减去首位固定为0,因此为8 - 1 = 7
B类地址:

- B类地址网络号和主机号分别占16比特
- B类地址网络号前两位固定为10
B类地址网络号的不可指派(分配)的值与A类相同。
B类地址网络号的可指派(分配)的最小值和最大值:

B类地址的可指派数量:

C类地址:

- C类地址网络号占24位,主机号占8位
- C类地址网络号前三位固定为110
C类地址网络号的不可指派(分配)的值与A类相同。
C类地址网络号的可指派(分配)的最小值和最大值:

C类地址的可指派数量:

D类地址:

-
D类地址为多播号,不区分网络地址和主机地址
-
D类地址前4位为1110
E类地址:

-
E类地址为保留地址,保留为今后使用
**注意事项:** 
一些特殊的IPv4地址:

一般不适用的IP地址:

小练习题:

关于分配地址,寻找网络个数的练习题:

- 寻找图中有哪些网络
首先明确概念:
网络由若干节点和连接这些节点的链路组成。
并且路由器可以划分网络
因此可以明显看出,此图中有4个网络。
- 根据个网络中主机和路由器接口总数量来决定给个网络分配哪个类别的网络号:
题目中要求要节约IP地址,也就是网络号的比特数要尽量大,主机比特尽量小(这样子可分配的网络树增大,就可以实现解决IP地址)因此:
对于黄色区域主机个数为65534台,B类地址和C类主机地址个数都不能满足要求,只有A类地址的主机号足够,因此分配A类网络号。
蓝色区域需要254台,此时C类主机地址不足够,B类主机地址足够使用,因此分配B类地址给蓝色块。
同理,可得:
- 一句所确定的网络号类型,为每个网络挑选一个网络号。
IP 地址的一些重要特点
- IP 地址是一种分等级的地址结构。分两个等级的好处是:
第一,IP 地址管理机构在分配 IP 地址时只分配网络号,而剩下的主机号则由得到该网络号的单位自行分配。这样就方便了 IP 地址的管理。
第二,路由器仅根据目的主机所连接的网络号来转发分组(而不考虑目的主机号),这样就可以使路由表中的项目数大幅度减少,从而减小了路由表所占的存储空间。
- 实际上 IP 地址是标志一个主机(或路由器)和一条链路的接口。
- 当一个主机同时连接到两个网络上时,该主机就必须同时具有两个相应的 IP 地址,其网络号 net-id 必须是不同的。这种主机称为多归属主机 (multihomed host)。
- 由于一个路由器至少应当连接到两个网络(这样它才能将 IP 数据报从一个网络转发到另一个网络),因此一个路由器至少应当有两个不同的 IP 地址。
- 用转发器或网桥连接起来的若干个局域网仍为一个网络,因此这些局域网都具有同样的网络号 net-id。
- 所有分配到网络号 net-id 的网络,无论是范围很小的局域网,还是可能覆盖很大地理范围的广域网,都是平等的。
划分子网的IPv4地址
首先先明确为何要引出划分子网的概念:
在 ARPANET 的早期,IP 地址的设计确实不够合理:
- IP 地址空间的利用率有时很低。
- 给每一个物理网络分配一个网络号会使路由表变得太大因而使网络性能变坏。
- 两级的 IP 地址不够灵活。
例如:
某一个大型局域网需要连接到因特网:

- 此时由于C类地址不够存放所有主机,选择可分配主机数为65534个的B类地址,但是很明显此时会有很多主机地址没有被利用。
- 但是对于剩余的IP地址只能有该单位的同一个网络使用,其他网络不得使用。
随着单位的发展,该单位需要将原来的网络划分成三个独立的网络:

本文深入浅出地介绍了网络层协议的基础知识,包括IP地址的分类、子网划分、路由选择协议等工作原理,以及ICMP、NAT等关键技术。











&spm=1001.2101.3001.5002&articleId=113503377&d=1&t=3&u=f1df8743e56b43819e23db348a4d950f)
2万+

被折叠的 条评论
为什么被折叠?



