【计算机网络基础】数据链路相关技术(下)
【计算机网络基础】数据链路相关技术(下)
本篇总结自《图解TCP/IP》
1.根据MAC地址转发
在使用同轴电缆的以太网等介质共享型网络中,同一时间只能有一台主机发送数据。当联网的主机数量增加时,通信性能会明显下降。若将集线器或集中器等设备以星型连接,就出现了一款新的网络设备——交换集线器
,这是一种将非介质共享型网络中所使用的交换机用在以太网中的技术,交换集线器也叫做以太网交换机
以太网交换机就是持有多个端口的网桥。他们根据数据链路层中每个帧的目标MAC地址,决定从哪个网络接口发送数据。这时所参考的,用以记录发送接口的表叫做转发表。
这种转发表的内容不需要使用者在每个终端或交换机上手工设置,而是可以自动生成。数据链路层的每个通过点在接到包时。会从中将源MAC地址以及曾经接收该地址发送的数据包的接口作为对应关系记录到转发表中。以某个MAC地址作为源地址的包由某一接口接收,是指上可以理解为该MAC地址就是该接口的目标,因此也可以说,以该MAC地址作为目标地址的包,经由该接口送出即可。这一过程也叫自学过程
由于MAC地址没有层次性,转发表中的入口个数与整个数据链路中所有网络设备的数量有关。当设备数量增加时,转发表也会随之变大,检索转发表所用的时间也就越来越长。当连接多个终端时,有必要将网络分成多个数据链路,采用类似于网络层的IP地址一样对地址进行分层管理。
交换机转发方式:
- 存储转发
存储转发方式检查以太网数据帧末尾的FCS位后再进行转发。因此,可以避免发送由于冲突而被破会的帧或噪声导致的错误帧- 直通转发
直通转发方式中不需要将整个帧全部接收下来以后再进行转发。只需要得知目标地址即可转发。因此它具有延迟较短的优势。但同时也不可避免地有发送错误帧的可能性。
2.环路检测技术
通过网桥连接网络时,一旦出现环路该如何处理?
这与网络的拓扑结构和所使用的网桥种类有直接关系。最坏的情况下,数据帧会在环路中被一而再再而三地持续转发。而一旦这种数据帧越积越多将会导致网络瘫痪。
为此,有必要解决网络中的环路问题。具体有生成树
于源路由
两种方式。如果使用具有这些功能的网桥。那么即使构建了一个带有环路的网络,也不会造成那么严重的问题,只要搭建合适的环路,就能分散网络流量,在发生某一处路由故障时选择绕行,就可以提高容灾能力
2.1生成树方式
该方法由IEEE802.1D定义,每个网桥必须在每1~10秒内相互转换BPDU(Bridge Protocol Data Unit)包,从而判断哪些端口使用哪些不使用,以便消除环路,一旦发生故障,则自动切换通信线路,利用哪些没有被使用的端口进行传输。
例如:以某一个网桥为构造树的根(Root),并对每个端口设置权重,这一权重可以和由网络管理员适当地设置,指定优先使用哪些端口以及发生为题时该使用哪些端口。
生成树法其实与计算机和路由器的功能没有关系,但是只要有生成树的功能就足以消除环路
IEEE802.1D所定义的生成树方法有一个弊端,就是在发生故障切换网络时需要几十秒的时间。为了解决这个用时过长的问题,在IEEE802.1W中定义了一个叫RSTP(Rapit Spanning Tree Protocol)的方法,该方法能将发生问题时的恢复时间缩短到几秒以内。
2.2 源路由法
源路由法最早由IBM提出,以解决令牌环的问题,该方法可以判断发送数据的源地址是用过哪个网桥实现传输的,并将帧写入RIF(Roting Information Field)。网桥则根据这个RIF信息发送帧到目标地址。因此,即使网桥中出现了环路,数据帧也不会重复转发,可成功地发送给目标地址。在这种机制中发送端本身必须具备源路由的功能
3.VLAN
进行网络管理的时候,时常会遇到分散网络负载,变换部署网络设备的位置等情况。而有时管理员在做这些操作时,不得不修改网络的拓扑结构,这也就意味着必须进行硬件线路的改造,然而如果采用带有VLAN技术的网桥,就不用实际修改网络布线,只需要修改网络的结构即可。VLAN技术附加到网桥/2层交换机上,就可以切断所有VLAN之间的通信,因此,相比一般的网桥/2层交换机,VLAN可以过滤多余的包,提高网络的承载效率。
那么VLAN究竟是什么?
该交换机按照其端口区分了多个网段,从而区分了广播数据传播的范围,减少了网络负载并提高了网络的安全性 。然而异构的两个网段之间,就需要利用具有路由功能的交换机(如3层交换机),或在各段中通过路由器的连接才能通信。
对这种VLAN进行了拓展,又定义IEEE802.1Q的标准(也叫TAC VLAN),该标准允许包含跨域异构交换机的网段。TAG VLAN中对每个网段都用一个VLAN ID的标签进行唯一标识。在交换机中传输帧时,在以太网首部加入这个VID标签,根据这个值决定将数据帧发送到哪个网段。
随着VLAN技术的应用,不必再重新修改布线,只要修改网段即可。当然有时物理网络结构与逻辑网络机构也可能出现不一致的情况,导致不易管理。为此,应该加强对网段构成及网络运行 等的管理。