4-1 网络层概述
# 410.4-1 网络层概述
从本节课开始,我们进入第 4 章网络层的学习。
本节课我们对网络层进行概述。
网络层的主要任务是实现网络互连,进而实现数据包在各网络之间的传输,如图所示。
这些异构型网络,如果只是需要各自内部通信,他们只要实现各自的物理层和数据链入层即可,但是如果需要将这些异构型网络互连起来,形成一个更大的互联网,就需要使用网络层互联设备路由器。
需要说明的是为了简单起见,有时我们可以不用画出这些网络,而将他们看作是一条链路即可。
对于互联网而言,仅实现计算机网络体系结构中的物理层和数据链路层,是不能实现数据包在互联网中各网络之间传输的,要实现该功能,就要必须实现网络层,网络层需要解决以下主要问题:
首要问题是网络层应该向其上面的运输层提供怎样的服务,是可靠传输服务,还是不可靠传输服务?我们在之前的课程中曾介绍过,数据包在传输过程中可能会出现误码,也有可能由于路由器繁忙而被路由器丢弃,还有可能出现按序发送的数据包,不能按序到达接收方:
- 如果网络层对于上述传输错误不采取任何措施,则提供的是不可靠传输服务。
- 如果网络层对于上述传输错误采取措施,并使得接收方能正确接收发送方所发送的数据包,则提供的是可靠传输服务。
- 不同网络体系结构所提供的服务可能是不同的。例如因特网使用的 tcpip 协议体系的网际层,提供的是无连接的不可靠的数据报服务,而 ATM,帧中继和 X.25 的网络层提供的都是面向连接的可靠的虚电路服务。
网络层需要解决的第二个主要问题是寻址问题,例如 TCP/IP 协议体系的网际层使用 IP 地址,我们来举例说明:
- 这是网络 N1 上两个路由器接口各自所分配的 IP 地址,它们的前三个数是相同的,可以看作是他们所在网络的网络编号,而第 4 个数各不相同,用于区分这两个不同的路由器接口
- 这是网络 N3 上两个路由器接口各自所分配的 IP 地址,它们的前两个数是相同的,可以看作是他们所在网络的网络编号,而后两个数不完全相同,用于区分这两个不同的路由器接口
- 这是网络 N7 上两个路由器接口各自所分配的 IP 地址,它们的第一个数是相同的,可以看作是他们所在网络的网络编号,而后三个数不完全相同,用于区分这两个不同的路由器接口
网络层需要解决的第三个主要问题是路由选择问题。我们来举例说明,如图所示,数据包从原站到达目的站,可以走这样一条路径,也可以走这样一条路径。对于本例还有其他路径可走,我们就要不一一演示了。
那么路由器收到数据包后,是依据什么来决定将数据包从自己的哪个接口转发出去的呢?这个问题在我们之前的课程中曾简单介绍过,不知大家是否还记得。没错,依据的是数据包中的目的地址和路由器中的路由表:
- 例如这是路由器 R1 的路由表,里面记录着路由器、R1 所知道的网络以及数据包要到达这些网络,应该从自己的哪个接口转发
- 假设 R1 知道数据包要到达网络 N7,下一跳,应将其转发给路由器 R4,则路由表中应该有这样一条记录
- 而数据包要到达网络 N6,下一跳,应将其转发给路由器 R2,则路由表装应该有这样一条记录
请大家想想看,刚才是我们假设而已,知道这些路由记录,但在实践当中路由器是如何得出这样的路由记录呢?有两种方法:
- 一种是由用户或网络管理员进行人工配置,这种方法只适用于规模较小,且网络拓扑不改变的小型互联网
- 另一种是实现各种路由选择协议,由路由器执行路由选择协议中所规定的路由选择算法,而自动得出路由表中的路由记录。这种方法更适用于规模较大,且网络拓扑经常改变的大型互联网
因特网是目前全世界用户数量最多的互联网,它使用 4 层协议体系的 TCP/IP 协议栈,如图所示,由于 TCP/IP 协议栈的网络层需要网际协议 IP,它是整个协议栈的核心协议。因此在 TCP/IP 协议栈中,网络层常称为网际层。由于 TCP/IP 协议栈在全世界被广泛使用,因此在本章节的教学中,我们主要基于 TCP/IP 协议栈的网际层,来学习计算机网络体系结构中的网络层的理论知识和实践技术。
另外需要说明的是 TCP/IP 协议栈的网际层中除网际协议 IP 外,还包含有我们之前课程中已经介绍过的地址解析协议 ARP,以及在本章后续课程中将要介绍的网际控制报文协议 ICMP 和网际组管理协议 IGMP 等
本节课的内容小结如下:
- 01
- 中国网络防火长城简史 转载10-12
- 03
- 公告:博客近期 RSS 相关问题10-02