430 likes | 637 Views
第十二章 层 2 交换技术. Part.1 以太网交换机基础. 什么是以太网. 计算机网络分2类:采用点到点连接的网络和采用广播信道的网络。以太网就是一种典型的广播网络。 以太网由施乐公司 PARC 研究中心于1973年5月22日首次提出,经过不断的发展和创新,已成为世界上最流行的局域网技术。. 以太网与 CSMA/CD. CSMA/CD(Carrier Sense Multiple Acess with Collision Detection) 即载波监听多路访问/冲突检测,它是广播式以太网共享传输介质的理论基础。
E N D
什么是以太网 • 计算机网络分2类:采用点到点连接的网络和采用广播信道的网络。以太网就是一种典型的广播网络。 • 以太网由施乐公司PARC研究中心于1973年5月22日首次提出,经过不断的发展和创新,已成为世界上最流行的局域网技术。
以太网与CSMA/CD • CSMA/CD(Carrier Sense Multiple Acess with Collision Detection)即载波监听多路访问/冲突检测,它是广播式以太网共享传输介质的理论基础。 • CSMA/CD规定一个想传输数据的节点必须执行以下步骤: • 监视信道直到其空闲; • 传输数据,并监视信道是否有冲突发生; • 如果检测到冲突发生,则停止传输并发出一个冲突信号到网络上,以便其它节点知道网络上有冲突,再等待一个随机的时间,然后回到第一步。这个随机时间依如下规则选定:如果数据包冲突了n次(n<16),则此节点以等概率从0,1,2,…2n-1中随机选一个数K,然后等待K*512比特时间(在10Mbps以太网中1比特时间=10-7秒),如果n>15,则放弃发送。
以太网络与802.3标准 • IEEE 802.3标准规定了以太网的物理层和数据链路层的MAC子层。 • IEEE 802.3规定的以太网物理层: 10BASE-5 使用粗同轴电缆,最大传输距离为500m; 10BASE-2 使用细同轴电缆,最大传输距离为200m; 10BASE-T 使用非屏蔽双绞线,最大传输距离为100m; 10BASE-F 使用光缆,最大传输距离为2000m;
以太网络与802.2标准逻辑链路控制层LLC • IEEE 802.2规定的以太网链路层之LLC子层(802.2帧格式): 数据包 网络层 LLC 数据链路层 MAC 比特流 物理层 注意:IEEE802.2 LLC逻辑链路控制子层隐藏了各种802网络之间的差别,向网络层提供了一个统一的格式和接口。
3种常用的802.3连接方式 1、10Base-5:总线型结构,使用粗缆和收发器连接主机。 2、10Base-2:总线型结构,使用细缆和无源BNC T型接头连接主机。 3、10Base-T:总线型(或星型)结构,双绞线和集线器连接主机。
其他概念(1) 冲突域:带冲突检测的载波侦听多路访问(CSMA/CD)以太网中的所有节点在任何需要的时候都可以发送数据,而CSMA/CD网络却努力确保任一时刻只有一个节点发送数据。但是,两个节点却有可能同时发送数据,出现这种情况就会导致冲突。如果一个设备检测到冲突,它就停止发送,并将冲突情况通知其他节点。其他所有正在发送的节点得到通知后停止发送。 广播域:广播就是要发送到网段上的所有节点、而不是单个节点或一组节点的数据。要广播的节点将数据送到MAC地址0xFFFFFFFFFFFF,就能实现上述目的。广播域由一组能够接收同组中所有其他节点发来的广播报文的节点构成。 局域网分段:影响局域网性能的两个常见问题是过高的冲突和过多的广播。“分段”将网络分割成较小的段。网桥、交换机和路由器通过将冲突域分割成较小的部分,从而降低对带宽的竞争,减少冲突。路由器还有一个好处,它可以划分更小的广播域。
设备 OSI层 分隔冲突域 分隔广播域 备注 HUB 物理层 不 不 网桥 数据链路层 是 不 每个端口是单独的冲突域 交换机 数据链路层 是 不 实际上是多端口网桥,每个端口是单独的冲突域 路由器 网络层 是 是 每个端口是单独的广播域 其他概念(2)
地址学习 帧的转发/过滤 环路防止 交换机的三个功能
交换机如何学习主机的位置 MAC地址表 A B 0260.8c01.1111 0260.8c01.3333 E0 E1 E2 E3 C D 0260.8c01.2222 0260.8c01.4444 • 最初开机时MAC地址表是空的 • 1900 最大mac地址表可存1024个. 一旦地址表满, 就会洪泛所有到新MAC地址的帧,直到现存地址条目老化为止. • Mac地址表条目默认老化时间是300秒,以下命令可改变老化时间: • wg_sw_a(config)#mac-address-table aging-time ? • <10-1000000> Aging time value
交换机如何学习主机的位置 MAC地址表 E0: 0260.8c01.1111 A B 0260.8c01.1111 0260.8c01.3333 E0 E1 C D E2 E3 0260.8c01.2222 0260.8c01.4444 • 主机A发送数据帧给主机C • 交换机通过学习数据帧的源MAC地址,记录下主机A的MAC地址 对应端口E0 • 该数据帧转发到除端口E0以外的其它所有端口 (不清楚目标主机的单点传送用泛洪方式)
交换机如何学习主机的位置 MAC地址表 E0: 0260.8c01.1111 E3: 0260.8c01.4444 A B 0260.8c01.1111 0260.8c01.3333 E0 E1 E2 E3 C D 0260.8c01.2222 0260.8c01.4444 • 主机D发送数据帧给主机C • 交换机通过学习数据帧的源MAC地址,记录下主机D的MAC地址对应端口E3 • 该数据帧转发到除端口E3以外的其它所有端口 (不清楚目标主机的单点传送用泛洪方式)
交换机如何过滤帧 MAC地址表 E0: 0260.8c01.1111 E2: 0260.8c01.2222 E1: 0260.8c01.3333 A B E3: 0260.8c01.4444 0260.8c01.1111 0260.8c01.3333 E0 E1 X X D C E2 E3 0260.8c01.2222 0260.8c01.4444 • 交换机A发送数据帧给主机C • 在地址表中有目标主机,数据帧不会泛洪而直接转发
广播帧和多点传送帧 MAC地址表 E0: 0260.8c01.1111 E2: 0260.8c01.2222 A B E1: 0260.8c01.3333 E3: 0260.8c01.4444 0260.8c01.1111 0260.8c01.3333 E0 E1 E2 E3 C D 0260.8c01.2222 0260.8c01.4444 • 主机D发送广播帧或多点帧 • 广播帧或多点帧泛洪到除源端口外的所有端口
冗余网络拓扑 • 冗余拓扑消除了由于单点故障所引致的网络不通问题 • 冗余拓扑却带来了广播风暴、重复帧和MAC地址表不稳定的问题 服务器/主机 X 路由器 Y 网段 1 网段 2
广播风暴 服务器/主机 X 路由器 Y 网段 1 广播 交换机 A 交换机 B 网段 2 主机 X 发送一广播信息
广播风暴 服务器/主机 X 路由器 Y 网段 1 广播 交换机 A 交换机 B 网段 2 主机 X 发送一广播信息
广播风暴 服务器/主机 X 路由器 Y 网段 1 交换机 A 交换机 B 广播 网段 2 • 交换机不停地发出广播信息
重复帧 服务器/主机 X 单点帧 路由器 Y 网段 1 交换机 A 交换机 B 网段 2 • 主机X发关一单点帧给路由器Y • 路由器Y的MAC地址还没有被交换机A和B学习到
单点帧 单点帧 单点帧 重复帧 路由器 Y 服务器/主机 X 网段 1 交换机 A 交换机 B 网段 2 • 主机X发送一单点帧给路由器Y • 路由器Y的MAC地址还没有被交换机A和B学习到 • 路由器Y会收到同一帧的两个拷贝
MAC地址表不稳定 路由器 Y 服务器/主机 X 网段 1 单点帧 单点帧 端口 0 端口0 交换机 A 交换机 B 端口1 端口1 网段 2 • 主机X发送一单点帧给路由器Y • 路由器Y的MAC地址还没有被交换机A和B学习到 • 交换机A和B都学习到主机X的MAC地址对应端口0
MAC地址表不稳定 路由器 Y 服务器/主机 X 网段 1 Unicast 单点帧 端口 0 端口0 交换机 A 交换机 B 端口1 端口1 网段 2 • 主机X发送一单点帧给路由器Y • 路由器Y的MAC地址还没有被交换机A和B学习到 • 交换机A和B都学习到主机X的MAC地址对应端口0 • 到路由器Y的数据帧在交换机A和B上会泛洪处理 • 交换机A和B都错误学习到主机X的MAC地址对应端口 1
更复杂的拓扑结构可能导致多重回路 在第2层没有能够防止这种回路的机制 广播 多重回路问题 服务器/主机 回路 回路 回路 工作站
回路的解决办法: 生成树协议Spanning-Tree Protocol x 阻塞 • 将某些端口置于阻塞状态就能防止冗余结构的网络拓扑中产生回路
生成树运作 • # • 每个网络只能有一个根桥,根桥具有最低的桥ID,根桥上的所有端口都是指派端口 • 每个非根桥只能有一个根端口,根端口到达根桥所花代价最低 • 每段只能有一个指派端口,指派端口到达根桥所花代价最低 100baseT 指派端口(F) 根端口(F) 非根桥 根桥 SW X SW Y x 指派端口(F) 非指派端口(B) 10baseT
Root Bridge的选择 交接机 X 缺省的优先级 32768 (8000 十六进制) MAC 0c0011111111 交换机 Y 缺省的优先级 32768 (8000 十六进制) MAC 0c0022222222 BPDU BPDU = Bridge protocol data unit (缺省地每2秒发送BPDU数据) 根桥 = 有最低桥识别码的桥(桥ID) 桥识别码 = 桥优先级 + 桥MAC地址 例中,哪个交换机的桥识别码最低?
端口状态 100baseT 指派端口(F) 根端口 (F) 端口 0 端口0 交换机 X 缺省的优先级 32768 MAC 0c0011111111 交接机 Y 缺省的优先级 32768 MAC 0c0022222222 Root bridge 端口1 端口1 x 指派端口(F) 非指派端口(B) 10baseT • 每个非根桥有且仅有一个根端口forwarding ,根端口到达根桥所花代价+优先级+MAC地址+Port#最小(从左到右依次比较) • 根端口RP和指派端口DP一般处于forwarding状态,非指派NDP一般是blocked状态
路径代价 连接速率 代价(修订的 IEEE 规范) 代价(旧IEEE 规范) ---------------------------------------------------------------------------------------------------- 10 Gbps 2 1 1 Gbps 4 1 100 Mbps 19 10 10 Mbps 100 100
生成树 交换机 Z Mac 0c0011110000 缺省的优先级 32768 端口 0 100baseT 端口0 端口 0 交换机X MAC 0c0011111111 缺省的优先级 32768 交换机Y MAC 0c0022222222 缺省的优先级 32768 端口1 端口1 100baseT • 请指出: • 根桥 • 指派端口、非指派端口和根端口? • 各端口分别是转发还是阻塞状态?
生成树 交换机 Z Mac 0c0011110000 缺省的优先级 32768 端口 0 指派端口(F) 100baseT 根端口 (F) 根端口 (F) 端口0 端口 0 交换机X MAC 0c0011111111 缺省的优先级 32768 交换机Y MAC 0c0022222222 缺省的优先级 32768 端口1 端口1 指派端口 (F) 非指派端口 (阻塞) 100baseT • 请指出: • 根桥 • 指派端口、非指派端口和根端口? • 各端口分别是转发还是阻塞状态?
阻 塞 Blocking 侦 听 Listening 学 习 Learning 转 发 Forwarding 生成树端口状态 • 生成树会将每个端口的状态作以下变换:
100baseT 指派端口 根端口 (F) 端口 0 端口0 交换机 X MAC 0c0011111111 缺省的优先级 32768 交换机Y MAC 0c0022222222 缺省的优先级 32768 Root Bridge 端口 1 端口1 x 指派端口 非指派端口 (阻塞) 10baseT 生成树重新生成
100baseT 指派端口 根端口 (F) 端口 0 端口 0 x MAXAGE x 交换机 X MAC 0c0011111111 缺省优先级 32768 交换机Y MAC 0c0022222222 缺省优先级 32768 Root Bridge BPDU 端口 1 端口1 x 指派端口 非指派端口(阻塞) 10baseT 生成树重新生成 • Switch Y 在最多20秒后会发现从 Switch X 来的 BPDU 信号消失,于是就重新计算 STP 。 • 网络恢复后, Switch Y 将会是根桥, 而且它的所有单口都会处于转发状态(Designated port)。
基于软件实现 每个桥只能有一个生成树 每个桥通常最多到16个端口 基于硬件实现(ASIC) 每个交换机可以有多个生成树 有更多的端口 桥与交换机的比较 桥 交换机 透明桥接
帧交换 • 直通转发Cut-through • 交换机检测到目标地址后即转发帧 Frame 交换机一确定帧的目的MAC地址和正确的端口号,就立即将帧转发出去。通常情况下,大约在收到帧头14个字节左右就开始转发。这使得直通法比存储转发法具有更小且相对固定的延迟时间,但它连小于64字节的帧以及一些坏帧也一块儿转发,可能浪费带宽。
存贮转发Store and forward 完整地收到帧并检查无错后才转发 帧交换 • 直通转发 • 交换机检测到目标地址后即转发帧 Frame Frame Frame Frame 交换机将帧向目的端口转发之前要先收到完整的帧并进行CRC校验、确定目的地址。交换机将整个帧存储在内存缓冲区中,直到它获得有效资源才将其发往目的地。好处是能够抛弃小于64字节的帧以及其他任何受损的帧,这样可以节约带宽。缺点是延迟较大且不固定,因为它在转发之前要收到并处理完整的帧。
帧交换 • 直通转发Cut-through • 交换机检测到目标地址后即转发帧 • 存贮转发Store and forward • 完整地收到帧并检查无错后才转发 Frame Frame Frame Frame • 片断转发 Fragment free (直通转发的修订版)—Cat1900 的缺省模式 • (modified cut-through) • 交换机检测到帧的前64字节后即转发 Frame
多层交换 第2层交换:本质上是多端口的透明桥接,但比传统桥接增加了存储转发外的两种转发交换方式。2层交换机比桥增加了VLAN功能,同一交换机可以当作多个独立的桥使用,在分割冲突域的同时,分隔广播域。 第3层交换:类似于路由,根据目的IP来转发帧,同时改变帧中的MAC地址,减少生存期TTL域,执行一次帧检测。但3层交换机使用ASIC来实现,传统路由器使用通用微处理器和软件来实现。Cisco实现了“路由一次,交换多次”的快捷交换方式。 第4层交换:即交换机的ASIC硬件可以识别第4层的传输控制协议TCP和用户数据报协议UDP,并且使用不同的服务层次来区分应用。也就是说,可以一次完成基于MAC地址、IP地址和上层应用端口号在内的复杂路由与交换功能。
双工综述 交换机 • 半双工 (CSMA/CD) • 单向数据传送 • 冲突可能性高 • 用集线器连接 集线器 • 集线器永远工作在半双工 • 有冲突的环境只能使用半双工 • 无冲突的环境可以使用全双工
双工综述 交换机 • 半双工 (CSMA/CD) • 单向数据传送 • 冲突可能性高 • 用集线器连接 集线器 • 全双工 • 只能用于点对点 • 连接到特定的端口 • 两端均须支持全双工 • 无冲突 • 冲突检测电路关闭