为什么需要二层交换?
有很多LAN,如何将它们连接起来?
可用网桥(bridges )将它们连接起来。
网桥工作在DLL层,通过检查MAC地址做出转发帧的决策
不会检查网络层,所以,IPv4, IPv6, AppleTalk, ATM, IPX, and
OSI 分组均可穿越网桥
从 802.11 到 802.3 的网桥操作
从 802.X 到 802.Y的网桥
遇到的问题:
不同的帧格式 – 重新封装
不同的数据传输速率 - Buffering
不同的802LAN有不同的最大帧长度 (如, 802.3 1526 字节,
802.11 2346 字节)
安全: 802.11 和 802.16 支持数据链路层的加密,但 802.3
不支持
服务质量:802.11 和 802.16 提供了服务质量,但 802.3 没有
透明的网桥
通过透明网桥(transparent bridges )将多个LAN连接起来,硬
件和软件不需要做任何的变化
透明网桥工作在混杂模式(promiscuous mode ),它接收所有
跟它相联的LAN的帧
当一个帧到达网桥时,它必须作出丢弃(discard)还是转发
( forward )的决策,如果是转发,它还要知道向哪个LAN转发
决策是通过在网桥内部的一张地址表(hash table)中查找目的
MAC地址而作出的
怎样透明?
网桥如何维护它的内部转发表?
初始时,这张表是空的
扩散算法(泛洪算法,flooding algorithm)
当网桥不知道目的地址时(表中查不到),它会将这帧从除
来的LAN外的所有LAN转发出去
逆向学习(backward learning)
网桥从到达帧的源地址认识到源地址对应的那台机是在帧来
的那个LAN上,所以,把它写入MAC地址表
但是拓扑是变化的,网桥怎样适应这种变化?
无论何时,凡往表中加入记录,也必须同时打下时戳
到达帧的源地址在表中已有记录,将时戳更新为当前时间
网桥周期性地扫描表,将那些超时的记录从表中删除
网桥工作原理
当一帧到达时,网桥启动如下算法:
如果源LAN和目的LAN相同,则丢弃该帧;
如果源LAN和目的LAN不同,则转发该帧;
如果目的LAN未知,则广播该帧。
每当一帧到达,上述算法都将执行一遍
有些专用的 VLSI 芯片可以在几微秒内完成查找和更新表项的动作
网桥和中继器的比较
网桥/交换机将不同的LAN段连在一起了。
MAC地址表是通过逆向地址学习建立、更
新和维护的。
二层交换的基本原理是:
泛洪/扩散
转发
过滤
网桥/交换机隔离了冲突了