以太网交换机基础
– CD: 冲突检测:
• 边发送边检测,发现冲突后进行回退
– 回退:
• 检测到冲突后的处理:发现冲突就停止发送,然后延迟一个随 机时间之后继续发送
冲突域和广播域
• 物理网段(冲突域):连接在同一导线上所有工 作站的集合 • 逻辑网段(广播域):限制以太网广播报文的范 围。一般来说,逻辑网段定义了第三层网络,如 IP子网等。
三层交换技术和L3的提出
• 二层交换技术极大的提升了以太网的性能,但仍然不能完全满足局域 网的需要; • 为了将广播和本地流量限制在一定的范围内,交换式以太网采取划分 逻辑子网(VLAN)的方式; • VLAN间的互通传统上需要由路由器来完成,但路由器配置复杂,造价 昂贵,而且转发速度容易成为网络的瓶颈;
• 二者最大的区别
– 三层交换采用ASIC硬件进行包转发 – 而传统路由器采用CPU进行包转发
• 相比于传统路由器三层交换具有以下优点:
– 基于硬件的包转发,转发效率高 – 低时延 – 低花费
• 三层交换机实质就是一种特殊的路由器,有很强交换能力 而价格低廉的路由器。
三层交换机功能模型
ETH0:10.153.0.254/24 ETH2:10.153.2.254/24
A :10.153.80.10/24 MAC:0-0-A
B :10.153.80.11/24 MAC:0-0-B
C :10.153.90.20/24 MAC:0-0-C
三层交换机转发---精确匹配(流转发)
• • • • 支持精确匹配转发的L3FDB是类似于二 层交换机MAC地址表的Cache; 交换机根据报文的目的IP在L3FDB表中 进行查找; 对于能够在此“Cache”命中的报文,则 直接根据表项的端口信息进行转发; 不能在“Cache”命中的报文将被送到 CPU进行软件路由,路由的原理和路由 器完全相同的最长地址匹配; 软件路由后将把该目的IP添加到L3FDB 表中; 如果表项长期不被刷新则会被老化掉; 因此,通过多次地址学习就可以把表项 逐一加进来,这样后续的流量就可以直 接Cache命中,不需要软件路由。这就 是三层交换机所谓的“一次路由,多次 Port 1 交换”。
P3
P4
P5
P6
P7
P8
P9
1 2 3
VLAN标准(12比特彻底改变了以太网!)
• VLAN的标准:
– 802.10,Cisco在1995年提出 – 802.1Q,IEEE于1996 制定
Dest Src Len/Etype Data FCS
6 Dest
6 Src
2 Etype
2
2 p/Q Label
VLAN的划分方法
• • • • •
基于端口划分 基于MAC地址划分 基于网络层(协议、IP地址、IP子网)划分 基于IP组播划分 基于组合策略划分
基于端口VLAN的划分
• 建议VLAN和IP子网间是一对一的关系,便于管理
VLAN和端口对应表
虚拟网 工程部 市场部 销售部
VLAN ID
P1
P2
二层交换机基本交换过程
• 通过识别MAC进行
A
Switch
B
C
D
二层交换机工作模型
应用层 表示层 会话层 传输层 网络层 链路层 物理层 链路层 物理层 链路层 物理层
应用层 表示层 会话层
S witch
传输层 网络层 链路层 物理层
二层交换引擎
• ASIC--Application Specific Integrated Circuit • L2FDB—Layer 2 forwarding database
IVL
SVL
支持VLAN二层交换机转发流程-IVL
• • • 根据帧内Tag Header的VLAN ID查找L2FDB表,确定查找的范围; 根据目的MAC查找出端口,图中应该从端口2转发出去; 如果在L2FDB表中查找不到该目的MAC,则该报文将通过广播的方式在该VLAN内 所有端口转发; 同时该以太网帧的源MAC将被学习到接收到报文的端口上,即端口1(VLAN 2); L2FDB表中的MAC地址通过老化机制更新; 在转发的过程中,不会对帧的内容进行修改
三层交换引擎
MAC
MAC
MAC
MAC
MAC
MAC
二层交换引擎
L2FDB L2FDB L2FDB
三层交换引擎
L3FDB
IP网络规则
主机IP/掩码/目的主机IP确定目 的主机是否在本地网络内 在本地网络内 不在本地网络内
ARP请求目的主机MAC
ARP查找设定网关MAC
目的MAC填入以太网帧
网关MAC填入以太网帧
支持VLAN的二层交换引擎
MAC
MAC
MAC
MAC
MAC
MAC
二层交换引擎
L2FDB L2FDB L2FDB
支持VLAN二层交换机地址学习方式
IVL: Independent VLAN Learning; SVL: Shared VLAN Learning;
MAC1 VLAN1 PORT1 MAC2 VLAN1 PORT2 MAC2 VLAN2 PORT3 MAC3 VLAN3 PORT3 MAC1 VLAN1 PORT1 MAC2 VLAN2 PORT2 MAC3 VLAN3 PORT3
70年代
80年代
90年代
92年
96年
2002年
以太网工作机制
• CSMA/CD:载波侦听与冲突检测-Carrier Sense Multiple Access/Collision Detection
– CS: 载波侦听
• 发送之前的侦听,确保线路空闲,减少冲突机会
– MA: 多址访问
• 每个站点发送的数据,可以被多个站点接收
port1 port2 port3 port4 port5 port6
MAC
MAC
MAC
MAC
MAC
MAC
Swit机转发处理流程
• 查MAC转发表(即L2FDB)处理转发 • 对于表中不包含的地址,通过广播的方式转发 • 使用地址自动学习(根据以太网帧的源MAC)和老化机制进行地址表维 护 • 一般不对帧格式进行修改
• VLAN的基本概念
– 标签的定义,VLAN的范围 – VLAN的划分方法 – Access链路和Trunk链路
• 支持VLAN的交换机的转发流程(可选,了解即可)
– 地址学习方式为SVL的转发流程 – 地址学习方式为IVL的转发流程
培训大纲
• • • •
以太网基本概念 二层交换机基本原理 三层交换机基本原理 交换机相关协议和技术
• Trunk链路
– 连接Trunk链路的交换机端口称为Trunk端口 – 帧在Trunk链路上转发带VLAN Tag,因此允许多个VLAN的帧在 Trunk链路上转发 – 交换机Trunk端口接收到以太网帧后,需要判断该Trunk端口是否允 许帧中VLAN ID对应的VLAN通过。若允许,则进行转发;否则要 直接丢弃该帧 – 帧从Trunk端口发送出去,VLAN Tag一般不会被去掉
Access和Trunk链路
• Access链路
– 连接Access链路的交换机端口称为Access端口 – 帧在Access链路上转发不带VLAN Tag – 交换机Access端口接收到以太网帧后,按照端口所在VLAN加上 VLAN Tag,然后进行转发 – 帧从Access端口发送出去,帧中的VLAN Tag会被去掉
... Len/Etype
4 Data FCS
VLAN-ID and T-R VLAN-ID Encaps Flag are .1Q, not .1p VLAN ID range: 0-4095 Token-Ring Encapsulation Flag 4字节称为VLAN Tag Header
VLAN实现虚拟工作组
MACD MACA
端口2
• • •
VLAN 2
......
MACD
MACA
端口1
VLAN 2
......
VLAN ID MAC地址
所在端口 MACA MACB MACC MACD 1 1 2 2
2 3 3 2
支持VLAN二层交换机转发流程-SVL
• • • • • 根据帧的目的MAC查MAC转发表(即L2FDB),查找相应的出端口。根据现有L2FDB 表,报文应该从端口2发送出去; 判断出端口的VLAN ID和报文Tag Header内的VLAN ID是否匹配,匹配则转发,不 匹配则丢弃; 如果在L2FDB表中查找不到该目的MAC,则判断出端口的VLAN ID和报文Tag Header内的VLAN ID是否匹配,不匹配直接丢弃;匹配则在该VLAN内广播; L2FDB表中MAC地址通过老化机制来更新; 在转发的过程中,不会对帧的内容进行修改
MACD MACA
端口2
......
MACD
MACA
端口1
......
MAC地址
所在端口 1 1 2 2
MACA MACB MACC MACD
二层交换机的局限性
• 二层交换机将网段上的冲突域限制到了端口级、但是无法 限制广播域的大小。
扁平二层网络
• 问题
– 广播泛滥,网络性 能差 – 网络安全性差
• 解决方法
– 在二层交换机上引 入VLAN功能
VLAN的基本作用
• Virtual Local Area Network • 相同VLAN内主机可以任意通信
– 二层交换
• 不同VLAN内主机二层流量完全隔离
– 阻断广播包,减小广播域 – 提供了网络安全性
• 相同VLAN跨设备通信