本文为阅读总结个人认为书里概念性的、对本人有帮助的内容,仅供参考。
与运输层和应用层不同的是,在网络中的每一台主机和路由器中都有一个网络层部分。正因如此,网络层协议是协议栈中最具挑战性的部分。
网络层协议也是协议栈中最复杂的层次之一。
网络层的作用从表面上看极为简单,即将分组从一台发送主机移动到一台接收主机。为此,需要两种重要的网络层功能:转发、路由选择。
转发是指将分组从一个输入链路接口转移到适当的输出链路接口的路由器本地动作。
路由选择是指网络范围的过程,以决定分组从源到目的地所采取的端到端路径。
每台路由器都具有一张转发表。
路由选择算法可能是集中式的,或是分布式的。
仅在网络层提供连接服务的计算机网络称为虚电路(Virtual-Circuit,VC)网络;仅在网络层提供无连接服务的计算机网络称为数据报网络。
一条虚电路的组成:1、源和目的的主机之间的路径(即一系列链路和路由器);2、VC号,沿着该路径的每段链路的一个号码;3、沿着该路径的每台路由器中的转发表表项。
运输层的链接建立仅涉及两个端系统,在运输层的连接建立期间,两个端系统肚子决定运输层连接的参数。对于一个虚电路网络层,沿两个端系统之间路径上的路由器都要参与虚电路的建立,且每台路由器都完全知道经过它的所有虚电路。
在数据报网络中,每当一个端系统要发送分组,它就为该分组加上目的端系统的地址,然后将分组推进网络中。
因为在数据报网络中的转发表能够在任何时刻修改,从一个端系统到另一个端系统发送一系列分组可能在通过网络时走不同的路径,并可能无序到达。
路由器的4个组成部分:输入端口、交换结构、输出端口、路由选择处理器。
一台路由器的输入端口、输出端口和交换结构共同实现了转发功能,并且总是用硬间实现。这些转发功能有时总称为路由器转发平面。
路由器的控制功能(即执行路由器选择协议、对上线或下线的连接链路进行响应,以及执行一些管理功能),这些路由器控制平面通常用软件实现并在路由器选择处理器上执行(通常是一种传统的CPU)。
输入端口执行几项关键功能:1、将一条输入的物理链路与路由器相连接的物理层功能;2、需要与位于入链路远端的数据链路层交互的数据链路层功能;3、在输入端口还要完成查找功能;
交换结构将路由器的输入端口和输出端口相连接。
输出端口存储从交换结构接收的分组,并通过执行必要的链路层和物理层功能的输入链路上传输这些分组。
路由器选择处理器执行路由选择协议,维护路由选择表以及连接的链路状态信息,并为路由器计算转发表。
输入端口的动作:1、必须出现物理层和链路层处理;2、必须检查分组的版本号、检验和以及寿命字段,并且重写后两个字段;3、必须更新用于网络管理的计数器;4、查找输出端口。
交换结构位于一台路由器的核心部位。交换可以用许多方式完成:经内存交换、经总线交换、经互联网络交换。
对路由器缓存长度的经验方法是,缓存数量(B)应当等于平均往返时间(RTT)乘以链路的容量(C)。这个结果是基于相对少量的TCP流的排队动态分析得到的。
主动队列管理(Active Queue Management,AQM)
随机早期检测(Random Early Detection,RED)算法是一种得到最广泛研究和实现的AQM算法。
在RED算法中,为输出队列长度维护一个加权平均值。
因特网编址和转发是国际协议(IP)的重要组件。目前有两个版本的IP在使用——广泛部署的IP协议版本4(IPv4)、新的IP版本6(IPv6)。
因特网的网络层有三个主要组件:1、IP协议;2、路由选择部分,它决定了数据包从源到目的地所流经的路径;3、报告数据中的差错和对某些网络层信息请求进行响应的设施(互联网控制报文协议,ICMP)。
IPv4数据包中的关键字段:1、版本(号),这4比特规定了数据包的IP协议版本,通过查看版本号,路由器能确定如何解释IP数据包的剩余部分;2、首