在本章中,我们研究了链路层-它的服务、其运行的基本原理,以及在实现链路层服务时使用这些原理的一些重要的特定协议。<br />我们看到,链路层的基本服务是将网络层数据报从一个节点(主机、交换机、路由器、WiFi接入点)移动到相邻节点。我们看到,所有链路层协议的运行方式都是将网络层数据报封装在链路层帧中,然后通过链路将帧传输到相邻节点。但是,除了这种常见的组帧功能之外,我们还了解到,不同的链路层协议提供的链路接入、交付和传输服务截然不同。这些差异在一定程度上是由于链路层协议必须在其上运行的链路类型多种多样。简单的点对点链路只有一个发送方和接收方在一条“线”上通信。多路访问链路在多个发送器和接收器之间共享;因此,用于多路访问信道的链路层协议具有用于协调链路访问的协议(其多路访问协议)。在MPLS的情况下,连接两个相邻节点(例如,在IP意义上相邻的两个IP路由器-它们是通向某个目的地的下一跳IP路由器)的“链路”实际上可以是本身的网络。从某种意义上说,将网络视为一条纽带的想法似乎并不奇怪。例如,将家庭调制解调器/计算机连接到远程调制解调器/路由器的电话链路实际上是通过复杂且精巧的电话网络的路径。<br />在链路层通信的基本原则中,我们研究了错误检测和纠错技术、多路访问协议、链路层寻址、虚拟化(VLAN)以及扩展交换局域网和数据中心网络的构建。如今,链路层的大部分焦点都集中在这些交换网络上。在错误检测/纠正的情况下,我们研究了如何向帧的报头添加额外的比特,以便检测并在某些情况下纠正在链路上传输帧时可能发生的比特翻转错误。我们介绍了简单的奇偶校验和校验方案,以及更健壮的循环冗余校验。然后,我们继续讨论多路访问协议。我们确定并研究了三种广泛的方法来协调对广播信道的访问:信道划分方法(TDM、FDM)、随机访问方法(ALOHA协议和CSMA协议)以及轮流访问方法(轮询和令牌传递)。我们研究了有线接入网络,发现它使用了多种接入方法中的许多种。我们看到,多个节点共享单个广播信道的结果是需要在链路层提供节点地址。我们了解到链路层地址与网络层地址有很大的不同,在Internet中,使用一种特殊的协议(ARP-地址解析协议)在这两种地址形式之间进行转换,并详细研究了非常成功的以太网协议。然后,我们研究了共享广播信道的节点如何形成LAN,以及如何将多个LAN连接在一起以形成更大的LAN-所有这些都不需要网络层路由来互连这些本地节点。我们还了解了如何在单个物理LAN基础设施上创建多个虚拟LAN。<br />我们结束了对链路层的研究,重点介绍了MPLS网络在互连IP路由器时如何提供链路层服务,并概述了当今海量数据中心的网络设计。我们通过确定获取简单Web页面所需的许多协议来结束本章(甚至前五章)。介绍了链路层之后,我们的协议栈之旅现在结束了!当然,物理层位于链路层之下,但物理层的细节可能最好留给另一门课程(例如,在通信理论中,而不是在计算机网络中)。但是,我们在本章和第1章(我们在1.2节中对物理介质的讨论)中已经触及了物理层的几个方面。在下一章研究无线链路特性时,我们将再次考虑物理层。<br />虽然我们的协议栈之旅已经结束,但我们对计算机网络的研究还没有结束。在接下来的三章中,我们将介绍无线网络、网络安全和多媒体网络。这四个主题不适合任何一个层;实际上,每个主题横跨多个层。因此,理解这些主题(在某些网络课本中被称为高级主题)需要在协议栈的所有层都有坚实的基础-我们对链路层的研究现在已经完成了这一基础!