首页 > 代码库 > 第4章 数据链路层(4)_扩展以太网
第4章 数据链路层(4)_扩展以太网
4. 扩展以太网
4.1 集线器(hub)
(1)集线器组网
①10BASE-T双绞线以太网的通信距离短,每个站到集线器的距离不超过100m(注意,10表示10Mb/s的数据传输率,BASE表示连接线上的信号是基带信号,T代表双绞线)
②集线器组成的以太网中的计算机共享带宽,计算机数量越多,平分下来的带宽越低。
③集线器和网线一样工作在物理层,它的功能和网线一样,只是将数字信号发送到其他端口,并不能识别哪些数字信号是同步码、哪些是帧定界符、哪些是网络层数据首部。
(2)计算机数量和距离扩展和冲突域问题
①可以将多个集线器通过网线、集线器或光纤连接起来形成一个更大的以太网,这不仅可以扩展以太网中计算机的数量,也可以扩展以太网的覆盖范围。
②相连的集线器要求每个接口带宽要一样。教室1是10M以太网,教室2是100M以太网,连接之后只能工作10M的速率上,这是因为集线器接口不能缓存帧。
③多集线器组成的以太网是一个大的以太网,形成一个大的冲突域。如上图,计算机A组B发送帧时,数字信号会通过集线器之间的网线达到集线器2的所有接口,这里D和E不能通信,形成一个大的冲突域。
4.2 网桥
(1)网桥设备的引入
①一个接口一个冲突域,将冲突域控制在一个小范围。由于将一个大冲突域划分成多个小冲突域,所以冲突域数量增加了,但冲突减少了,优化以以太网。
②网桥中有个MAC地址表,该表记录了MAC地址和对应的转发接口的关系。网桥根据帧的目标MAC地址选择转发的接口,这意味着网桥能看懂链路层的首部和尾部,因此工作在数据链路层。
③网桥接口具有帧缓存能力,能实现帧的存储转发,但这也增加了时延。同时由于具有缓存能力,也可以连接不同的带宽。
(2)网桥转发帧
①网桥接口收到一个帧,会进行CRC检验该帧是否有错。如果出错则直接丢弃。
②如果没错,会利用帧的目标MAC地址去查找MAC地址表对应的出口。当MAC地址表中有相应的转发端口,则转发到该端口。如果没有,则将该帧转发到全部端口(除接收端口),而如果转发表中给出的接口就是该帧进入网桥的接口,则会丢弃该帧(如A->B时,由于目标B对应的端口是E0,即该帧的入口和出口都是E0,说明不需要转发,会被丢弃)。
③选择好出口以后,在转发出去之前还要运行CSMA/CD协议,以防止发生碰撞或进行必要的退避,然后才能将帧发送出去。
(2)网桥的自学习(构建MAC地址的过程)
①网桥接入以太网时,MAC地址表是空的。网桥会在计算机通信过程中自动构建MAC地址表,这称为“自学习”。(注意,构建MAC地址表是根据源MAC来学习的。而转发帧是根据目标MAC地址来查找MAC地址表的转发端口的。)
②网桥接口收到一个帧时,会先检查MAC地址中与收到的帧的源MAC有无匹配的项目。
③如果没有匹配的项目,就在MAC地址表中添加该接口与该帧的源MAC地址的对应关系(用以表示该源MAC位于接口的一侧)以及进入接口的时间。同时该帧转发到网桥所有的其他接口出去(除接收帧的接口)
④如果有匹配项目,则对原来的项目进行更新。因为这种对应关系是临时的,有一定的时效性,这是为了适应网络中计算机发生的调整。
⑤完整的地址映射表如,E0接口对应的MAC地址有MA、MB,即E0左侧的计算机。E1接口对应的MC、MD、ME、MF,即E1右侧的计算机。E2接口对应的MAC地址有MA、MB、MC、MD,即E2左侧的计算机。E3接口对应ME、MF,即E3右侧的计算机,以此类推。
4.3 交换机(多接口网桥)
(1)网桥的进化:随着技术不断发展,网桥接口越来越多,网桥就可以直接连接计算机,网桥也发展成现在的交换机。
(2)交换机组网的特点(与集线器组网相比)
①端口独享带宽,每个端口中独享带宽。这和集线器的共享带宽不同。
②更安全,交换机根据MAC地址表只转发到目标端口,其他端口是收不到的,也就无法用抓包工具抓取数据。
③全双工通信:交换机和计算机直接连接,每个端口与一台计算机相连,不需要监听链路是否有冲突,所以不再使用CSMA/CD协议(被直接转发了,可理解为不需要协议),只有当它与集线器相连时才会工作在半双工模式。注意集线器只能工作在半双工模式。
④接口可以工作在不同的速率,因为端口有存储功能。
⑤会转发广播帧:广播帧的目标MAC地址为48位全1的二进制。注意交换机组成的网络是一个大的冲突域,这与集线器组网一样。
(3)实战:查看交换机的MAC地址表(用路由器来充当交换机,查看命令:show mac-address-table)
4.4 生成树协议
(1)双汇聚层网络架构
①双汇聚层:当企业的业务对网络要求比较高,不允许长时间网络中断。为了让网络更加可靠,可在网络中部署两个的汇聚层交换层。如此,即便一个汇聚层交换层坏掉或断掉一条链路,接入层交换机可通过另一个汇聚层访问网络。
②有环路,可能形成广播风暴。
③交换机为了避免广播风暴,使用生成树(Spainning tree)协议来阻断环路,因为树状结构是没有环的。
(2)生成树协议的算法过程:选择根网桥、选择根端口、选择指定端口。
①选择根交换机:再全网中选择一个根交换机。会选择网桥ID值最小的作为根交换机。其中的ID值由两部分组成:交换机的优先级和MAC地址(这个MAC地址是全局的,用来管理交换机用的)。如果交换机的优先级相同则比较其MAC地址,地址值越小,就被选为根交换机。(改变交换机的优先级的命令,如Switch(config)#spanning-tree vlan 1 priority 4096)
②选择根端口:在每个非根交换机上选择根端口。首先比较根路径成本,根路径取决于链路的带宽,带宽越大,路径成本越低,则选择该端口为根端口。其次如果根路径成本相同,则要比较所在交换机的ID值,值越小,则其优先级越高。最后比较端口ID值,该值分为两 部分:端口优先级和端口编号,值小的被选为根端口。
③选择指定端口:在每条链路上选择一个指定端口(注意,根交换机上所有端口都是指定端口)。首先比较根路径成本,其次比较端口所在交换机的ID值,最后比较端口的ID值。(注意,交换机上的端口有三种类型:根端口、指定端口和阻断端口。指定端口和根端口都处于转发状态。阻断端口不能转发数据帧,处于阻断状态)
第4章 数据链路层(4)_扩展以太网