数据链路层最重要的内容是:
本文主要讲解适配器、转发器、集线器、网桥、以太网交换机的作用以及使用场合。
在许多情况下,我们希望把以太网的覆盖范围扩展。本节先讨论在物理层把以太网扩展,然后讨论在数据链路层把以太网扩展。这种扩展的以太网在网络层看来仍然是一个网络。
以太网上的主机之间的距离不能太远,否则主机发送的信号经过铜线的传输就会衰减到使CSMA/CD协议无法正常工作。在过去广泛使用粗缆或细缆以太网时,常使用工作在物理层的转发器来扩展以太网的地理覆盖范围。那时,两个网段可用一个转发器连接起来。IEEE802.3标准还规定,任意两个站之间最多可以经过三个电缆网段。但随着双绞线以太网成为以太网的主流类型,扩展以太网的覆盖范围已很少使用转发器了。
现在,扩展主机和集线器之间的距离的一种简单方法就是使用光纤和一对光纤调制解调器,如下图所示。

光纤调制解调器的作用就是进行电信号和光信号的转换。由于光纤带来的时延很小,并且带宽很宽,因此使用这种方法可以很容易地使主机和几公里以外的集线器相连接。
如果使用多个集线器,就可以连接成覆盖更大范围的多级星形结构的以太网。这样做可以有以下两个好处。
但这种多级结构的集线器以太网也带来了一些缺点。
扩展以太网更常用的方法是在数据链路层进行的。最初人们使用的是网桥(bridge)。网桥对收到的帧根据其MAC帧的目的地址进行转发和过滤。当网桥收到一个帧时,并不是向所有的端口转发此帧,而是根据此帧的目的MAC地址,查找网桥中的地址表,然后确定将该帧转发到哪一个端口,或者是把它丢弃(即过滤)。
1990年问世的交换式集线器(switching hub),很快就淘汰了网桥。交换式集线器常称为以太网交换机(switch)或第二层交换机(L2 switch),强调这种交换机工作在数据链路层。
下面简单地介绍以太网交换机的特点。
以太网交换机实质上就是一个多端口的网桥,通常都有十几个或更多的端口,和工作在物理层的转发器、集线器有很大的差别。以太网交换机的每个端口都直接与一个单台主机或另一个以太网交换机相连,并且一般都工作在全双工方式。以太网交换机还具有并行性,即能同时连通多对端口,使多对主机能同时通信(而网桥只能一次分析和转发一个帧)。相互通信的主机都独占传输媒体,无碰撞地传输数据。换句话说,每一个端口和连接到端口的主机构成了一个碰撞域,具有 N N N个端口的以太网交换机的碰撞域共有 N N N个。
以太网交换机的端口还有存储器,能在输出端口繁忙时把到来的帧进行缓存。因此,如果连接在以太网交换机上的两台主机,同时向另一台主机发送帧,那么当这台主机的端口繁忙时,发送帧的这两台主机的端口会把收到的帧暂存一下,以后再发送出去。
以太网交换机是一种即插即用设备,其内部的帧交换表(又称为地址表)是通过自学习算法自动地逐渐建立起来的。实际上,这种交换表就是一个内容可寻址存储器CAM(Content Addressable Memory)。以太网交换机由于使用了专用的交换结构芯片,用硬件转发收到的帧,其转发速率要比使用软件转发的网桥快很多。
虽然许多以太网交换机对收到的帧采用存储转发方式进行转发,但也有一些交换机采用直通(cut-through)的交换方式。直通交换不必把整个数据帧先缓存后再进行处理,而是在接收数据帧的同时就立即按数据帧的目的MAC地址决定该帧的转发端口,因而提高了帧的转发速度。如果在这种交换机的内部采用基于硬件的交叉矩阵,交换时延就非常小。直通交换的一个缺点是它不检查差错就直接将帧转发出去,因此有可能也将一些无效帧转发给其他的站。
我们用一个简单例子来说明以太网交换机是怎样进行自学习的。
假定在下图中的以太网交换机有4个端口,各连接一台计算机,其MAC地址分别是A,B,C和D。交换表最重要的就是两个项目:目的MAC地址和转发端口。在一开始,以太网交换机里面的交换表是空的(如下图(a)所示)。

(A,1),因此以后不管从哪个端口收到帧,只要其目的地址是A,就把收到的帧从端口1转发出去送交A。这样做的依据是:既然A发送的帧是从端口1进入交换机的,那么从端口1转发出的帧肯定到达A。(B,3),表明今后如有发送给B的帧,应从端口3转发。以太网交换机的这种自学习方法使得以太网交换机能够即插即用,不必人工进行配置,因此非常方便。
但有时为了增加网络的可靠性,在使用以太网交换机组网时,往往会增加一些冗余的链路。在这种情况下,自学习的过程就可能导致以太网帧在网络的某个环路中无限制地兜圈子。我们用下图的简单例子来说明这个问题。

上图中可能出现无限制地循环兜圈子(2→3→4→5)。显然这就白白消耗了网络资源。
为了解决这种兜圈子问题,IEEE的802.1D标准制定了一个生成树协议STP(SpanningTree Protocol)。其要点就是不改变网络的实际拓扑,但在逻辑上则切断某些链路,使得从一台主机到所有其他主机的路径是无环路的树状结构,从而消除了兜圈子现象。
大家知道,传统的电话网是星形结构,其中心就是电话交换机。但是在20世纪70年代中期出现的局域网,都没有采用这种星形结构。这是因为在当时的技术条件下,还很难用廉价的方法制造出高可靠性的以太网交换机。所以那时的以太网就采用无源的总线结构。这种总线式以太网一问世就受到广大用户的欢迎,并获得了很快的发展。
然而随着以太网上站点数目的增多,使得总线结构以太网的可靠性下降。与此同时,大规模集成电路以及专用芯片的发展,使得星形结构的以太网交换机可以做得既便宜又可靠。在这种情况下,采用以太网交换机的星形结构就成为以太网的首选拓扑,而传统的总线以太网也很快从市场上消失了。
总线以太网使用CSMA/CD协议,以半双工方式工作。但以太网交换机不使用共享总线,没有碰撞问题,因此不使用CSMA/CD协议,而是以全双工方式工作。既然连以太网的重要协议CSMA/CD都不使用了(相关的“争用期”也没有了),为什么还叫作以太网呢?原因就是它的帧结构未改变,仍然采用以太网的帧结构。
以太网交换机的问世,加速了以太网的普及应用。一个以太网交换机可以非常方便地连接几十台计算机,构成一个星形以太网。但是,当一个以太网包含的计算机太多时,往往会带来两个缺点。
如果使每一个小部门各拥有自己的较小的局域网,那么这不但可使局域网的广播域范围缩小,同时也提高了局域网的安全性。在以太网交换机出现后,我们可以很方便灵活地建立虚拟局域网VLAN (Virtual LAN)。这样就把一个较大的局域网,分割成为一些较小的局域网,而每一个局域网是一个较小的广播域。
在IEEE802.1Q标准中,对虚拟局域网VLAN是这样定义的:虚拟局域网VLAN是由一些局域网网段构成的与物理位置无关的逻辑组,而这些网段具有某些共同的需求。每一个 VLAN的帧都有一个明确的标识符,指明发送这个帧的计算机属于哪一个VLAN。
虚拟局域网其实只是局域网给用户提供的一种服务,而并不是一种新型局域网。
随着电子技术的发展,以太网的速率也不断提升。从传统的10Mbit/s以太网一直发展到现在常用的速率为1Gbit/s的吉比特以太网,甚至更快的以太网。下面简单介绍几种高速以太网技术。
100BASE-T是在双绞线上传送100Mbit/s基带信号的星形拓扑以太网,仍使用IEEE802.3的CSMA/CD协议,它又称为快速以太网(Fast Ethernet)。用户只要使用10Mbit/s的适配器和100Mbit/s的集线器或交换机,就可很方便地由10BASE-T以太网直接升级到100Mbit/s,而不必改变网络的拓扑结构。所有在10BASE-T上的应用软件和网络软件都可保持不变。100BASE-T的适配器有很强的自适应性,能够自动识别10Mbit/s和100Mbit/s。1995年IEEE已把100BASE-T快速以太网定为正式标准(IEEE 802.3u),是对现行的IEEE 802.3标准的补充。
100BASE-T可使用以太网交换机提供很好的服务质量,可在全双工方式下工作而无冲突发生。因此,CSMA/CD 协议对全双工方式工作的快速以太网是不起作用的(但在半双工方式工作时则一定要使用CSMA/CD协议)。快速以太网使用的MAC帧格式仍然是IEEE802.3标准规定的帧格式。
IEEE在1997年通过了吉比特以太网的标准802.3z,并在1998年成为正式标准。几年来,吉比特以太网迅速占领了市场,成为以太网的主流产品。
吉比特以太网的标准IEEE 802.3z有以下几个特点:
吉比特以太网可用作现有网络的主干网,也可在高带宽(高速率)的应用场合中(如医疗图像或CAD的图形等)用来连接计算机和服务器。
吉比特以太网的物理层使用两种成熟的技术
采用成熟技术就能大大缩短吉比特以太网标准的开发时间。
吉比特以太网增加了一种功能称为分组突发(packet bursting)。这就是当很多短帧要发送时,第一个短帧要采用载波延伸的方法进行填充。但随后的一些短帧则可一个接一个地发送,它们之间只需留有必要的帧间最小间隔即可。这样就形成一串分组的突发,直到达到1500字节或稍多一些为止。当吉比特以太网工作在全双工方式时(即通信双方可同时进行发送和接收数据),不使用载波延伸和分组突发。
10GbE并非把吉比特以太网的速率简单地提高到10倍,因为还有许多技术上的问题要解决。下面是10GbE的主要特点。
顺便指出,10吉比特就是 10 × 1 0 9 10 \times 10^9 10×109比特。
现在以太网的工作范围已经从局域网(校园网、企业网)扩大到城域网和广域网,从而实现了端到端的以太网传输。这种工作方式的好处是:
以太网从10Mbit/s到10Gbit/s甚至到400Gbit/s的演进,证明了以太网是:
现在人们也在使用以太网进行宽带接入互联网。为此,IEEE在2001年初成立了802.3EFM工作组,专门研究高速以太网的宽带接入技术问题。
以太网接入的一个重要特点是它可以提供双向的宽带通信,并且可以根据用户对带宽的需求灵活地进行带宽升级(例如,把10兆的以太网交换机更新为吉比特的以太网交换机)。
当城域网和广域网都采用吉比特以太网或10吉比特以太网时,采用以太网接入可以实现端到端的以太网传输,中间不需要再进行帧格式的转换。这就提高了数据的传输效率且降低了传输的成本。
然而以太网的帧格式标准中,在地址字段部分并没有用户名字段,也没有让用户键入密码来鉴别用户身份的过程。如果网络运营商要利用以太网接入到互联网,就必须解决这个问题。于是有人就想法子把数据链路层的两个成功的协议结合起来,即把PPP协议中的PPP帧再封装到以太网中来传输。这就是1999年公布的PPPoE (PPP over Ethernet),意思是“在以太网上运行PPP”。现在的光纤宽带接入FTTx都要使用PPPoE的方式进行接入。