现在,我们已经完成了进入网络核心的两章之旅-从我们在第4章中对网络层数据平面的研究开始,到这里结束,我们对网络层的控制平面进行了研究。我们了解到,控制平面是网络范围的逻辑,它不仅控制数据报如何沿着从源主机到目的主机的端到端路径在路由器之间转发,而且还控制网络层组件和服务的配置和管理方式。<br />我们了解到,构建控制平面有两种广泛的方法:传统的每路由器控制(每台路由器上运行路由算法,路由器中的路由组件与其他路由器中的路由组件通信)和软件定义网络(SDN)控制(逻辑上集中的控制器计算并分发每台路由器要使用的转发表)。在第5.2节中,我们研究了在图中计算最小代价路径的两种基本路由算法-链路状态路由和距离矢量路由,这些算法在每路由器控制和SDN控制中都有应用。这些算法是我们在5.3和5.4节中介绍的两种广泛部署的Internet路由协议(OSPF和BGP)的基础。我们在第5.5节介绍了网络层控制平面的SDN方法,研究了SDN网络控制应用程序、SDN控制器,以及用于控制器和SDN控制的设备之间通信的OpenFlow协议。在第5.6节和第5.7节中,我们介绍了管理IP网络的一些细节:ICMP(Internet控制消息协议)以及使用SNMP和NETCONF/YANG的网络管理。<br />在完成对网络层的研究之后,我们的旅程现在将我们进一步向下带到协议栈,即到链路层。与网络层一样,链路层也是每台联网设备的一部分。但我们将在下一章中看到,链路层具有更为本地化的任务,即在同一链路或LAN上的节点之间传输数据包。尽管与网络层的任务相比,这项任务表面上看起来相当简单,但我们将看到,链路层涉及许多重要而有趣的问题,这些问题可能会让我们长时间忙于工作。