在二层交换网中应用最广泛的是采用IEEE 802.3标准的以太网(Ethernet)。目前,全世界的局域网90%以上是采用以太网技术组网的。随着以太网技术的发展,该技术已经进入接入网和城域网领域。在本讲中,笔者提出了以太网交换技术中存在虚电路的新观点。
1 以太网的分类
以太网的特点是多个数据终端共享传输总线。以太网按其总线的传输速率可划分为10 Mbit/s以太网、100 Mbit/s以太网、1 000 Mbit/s(吉比特)以太网以及10 Gbit/s以太网等;以太网按其总线的传输介质可划分为同轴电缆以太网、双绞线以太网以及光纤(多模、单模)以太网。
2 载波侦听多路访问/冲突检测(CSMA/CD)协议
共享式以太网的核心思想是多个主机共享公共传输通道。在电话通信中采用了时分、频分或码分等方法,使多个用户终端共享公共传输通道。但在数据通信中,数据是突发性的,若占用固定时隙、频段或信道进行数据通信,会造成资源上的浪费。
若多个主机共享公共传输通道(总线)而不采取任何措施,必然会产生碰撞与冲突。CSMA/CD协议正是为解决多个主机争用公共传输通道而制定的。
(1) 载波侦听多路访问(CSMA)
每个以太网帧(MAC帧)均有源主机和宿主机的物理地址(MAC地址)。当网上某台主机要发送MAC帧时,应先监听信道。如果信道空闲,则发送;如果发现信道上有载波(指基带信号),则不发送,等信道空闲时立即发送或延迟一个随机时间再发送,从而大大减少碰撞的次数。
(2) 碰撞检测(CD)
对于碰撞检测,在一般情况下,当总线上的信号摆动超过正常值时,即认为发生冲突。这种检测方法容易出错,因为信号在线路上传播时存在衰耗,当两个主机相距很远时,另一台主机的信号到达时已经很弱,与本地主机发送的信号叠加时,达不到冲突检测的幅度,就会出错。为此,IEEE 802?郾3标准中限制了线缆的长度。目前,应用较多的冲突检测方法是主机的发送器把数据发送到线缆上,该主机的接收机又把数据接收回来,然后与发送数据相比,判别是否一致。若一致,则无冲突发生;若不一致,则表示有冲突发生。
3 MAC帧格式
每一帧以7个字节的前导码开始,前导码为“1010”交替码,其作用是使目的主机接收器时钟与源主机发送器时钟同步。紧接着是帧开始分界符字节“10101011”,用于指示帧的开始。
帧包括两个地址:目的地址和源地址。目的地址最高位如为“0”,则表示普通地址;如为“1”,则表示组地址。地址的次高位用于区分是局部地址还是全局地址。局部地址由局部网络管理者分配,离开这个局部网,该地址就毫无意义。全局地址由IEEE统一分配,以保证全世界没有两个主机具有相同的全局地址。允许大约有7×1013个全局地址。全局地址可用于全球性的MAC帧寻址。数据域长度给出数据域中存在多少个字节的数据,其值为0~1 500。数据域长度为“0”是合法的,但太短的帧在传送过程中可能会产生问题,其中一个原因就是:当主机检测到冲突时,便停止发送,这时一部分数据已经发送到线缆上,而目的主机却无法简单区分这是正确帧还是垃圾帧。为此,IEEE规定:正确长度必须大于64字节,如果小于64字节,那么必须用填充字段填充到帧的最小长度。
4 以太网的互联
根据OSI 7层模型,以太网可以在低3层和高3层上互联。实现互联的网元设备有中继器、集线器、网桥、路由器、交换机和网关。
4.1 中继器
中继器工作在OSI 7层模型的物理层。因为数字脉冲信号经过一定距离的传输后,会产生衰耗和波形失真,在接收端引起误码。中继器的作用是再生(均衡放大、整形)通过网络传输的数据信号,扩展局域网的范围。
中继器工作在物理层,对高层协议是完全透明的。用中继器相联的两个网络,对链路层而言相当于一个网络,中继器仅起到扩展距离的作用,而不能提供隔离和扩展有效带宽的作用。
4.2 集线器(Hub)
集线器就像一个星型结构的多端口转发器,每个端口都具有发送与接收数据的能力。当某个端口收到连在该端口上的主机发来的数据时,就转发至其它端口。在数据转发之前,每个端口都对它进行再生、整形,并重新定时。
集线器可以互相串联,形成多级星型结构,但相隔最远的两个主机受最大传输延时的限制,因此只能串联几级。当连接的主机数过多时,总线负载很重,冲突将频频发生,导致网络利用率下降。
与中继器一样,集线器工作在OSI 7层模型的物理层,不能提供隔离作用,相当于一个多端口的中继器。
4.3 网桥
网桥工作在OSI 7层模型的链路层(MAC层)。当一个以太网帧通过网桥时,网桥检查该帧的源和目的MAC地址。如果这两个地址分别属于不同的网络,则网桥将该MAC帧转发到另一个网络上,反之不转发。所以,网桥具有过滤与转发MAC帧的功能,能起到网络间的隔离作用。对共享型网络而言,网络间的隔离意味着提高了网络的有效带宽。
网桥最简单的形式是连接两个局域网的两端口网桥。在多个局域网互联时,为不降低网络的有效带宽,可以采用多端口网桥或以太网交换机。但采用这些工作在链路层的设备联网,存在以下缺点:
(1) 多端口网桥或以太网交换机只有简单的路由表,当某一端口收到一个数据包,若设备根据其目的地址找不到对应的输出端口时,即对所有端口广播这个包,当网络较大时易引起广播风暴;
(2) 多端口网桥或以太网交换机无链路层协议转换功能,因此不能做到不同协议网络的互联,例如以太网与X.25、FR、N-ISDN和ATM等网络的互联。
4.4 路由器
在路由器中存放有庞大而复杂的路由表,并能根据网络拓扑、负荷的改变及时维护该路由表。当路由器找不到某一端口输入的数据包对应的输出端口时,即删除该包。因为路由器废除了广播机制,所以可以抑制广播风暴。
4.5 网关
网关工作在OSI 7层模型的高3层,即对话层、表示层和应用层。网关用于两个完全不同网络的互联,其特点是具有高层协议的转换功能。网关最典型的应用是IP电话网关。IP电话网关将时分复用的64 kbit/s编码话音和No?郾7共路信令转换为IP包,送入Internet进行传输,从而使PSTN和Internet两个完全不同的网络可以互联互通。
5 以太网交换机
5.1 以太网交换机的基本原理
大型网络为了提高网络的效率,需要将网络在链路层上进行分段,以提高网络的有效带宽。对于小型网络,可以利用网桥对网络进行分段;对于大型网络,往往采用以太网交换机对网络进行分段,即利用以太网交换机将一个共享型以太网分割成若干个网段。分段后的网络称为交换型以太网。在交换型以太网中,工作在每一网段中的主机对介质的争用仍采用CSMA/CD机制,而联接各网段的交换机则采用路由机制。若某一共享型以太网带宽为M,共带有N台主机,则每台主机平均带宽为M/N。若在该网内引入一台8端口的以太网交换机,将该网分割为8个网段,则每一网段带宽仍为M,而总带宽则拓宽至8M。
目前,大中型以太网中引入了多台交换机的级联工作方式。处在用户级的交换机一般可做到1个端口接1台主机,则该主机可享用所连接端口的全部带宽,无需竞争网络资源。
在以太网中引入交换机将网络分段后,是否能使网络容量无限扩大?答案是否定的。因为在以太网交换机中对MAC帧的寻址采用了广播方式,网络太大时易引起广播风暴。这就需要有路由器对网络在网络层上进行分段。路由器将计算机网分割成若干个子网,从而缩小了其底层以太网的广播域,抑制了广播风暴。
5.2 以太网交换机的路由方式
当该交换机中的某一个端口接收到一个MAC帧时,交换机的首要任务是根据该MAC帧的目的地址寻找输出端口,然后向该输出端口转发这个MAC帧。通常情况下,在以太网交换机中存有一张路由表,该表根据所接收MAC帧的目的地址,为每个MAC帧选择输出端口。
(1) 固定路由
固定路由是指交换机有一张人工配置的路由表,表上标明各端口及其所对应的目的地址。固定路由虽然不失为一种路由方式,但如果网络规模过大,则配置路由表将变成一项很繁重的工作,再加上交换机所处的网络经常会变更网络配置或增删主机,网络管理员很难使路由表及时更新来适应拓扑结构的变化。
(2) 自学习路由
在实际应用中,通常通过自学习方法来建立一张动态路由表,以自动适应网络拓扑结构的变化。该动态路由表可在人工建立的路由表的基础上,通过自学习过程不断修改而得到。
所谓自学习,即是根据到达每一端口MAC帧的源地址来建立或刷新路由表。假设交换机从X端口收到一个MAC帧,检查该MAC帧的源地址为A地址,则说明凡是目的地址为A地址的MAC帧,应该通过X端口转发。从X端口收到源地址为A地址的MAC帧后,交换机控制部分检查路由表。若路由表中目的地址一项无A地址,则在X端口对应的目的地址项中增加A地址内容;若表中目的地址一项有A地址,但其对应端口为Y端口,则需修改路由表。由上可见,以太网交换机利用广播帧和自学习的方法来建立路由表,一旦配置好路由表,后续的以太帧根据目的MAC地址(未使用标记)和路由表选择路由,从而形成一条从源主机到目的 主机的虚电路。
……