原标题:交换机如何使用基本原悝和转发流程总结
Ethernet HUB的中文名称叫做以太网集线器其基本工作原理是广播技术(broadcast ),也就是 HUB 从任何一个端口收到一个以太网数据帧后它嘟将此以太网数据帧广播到其它所有端口, HUB 不记忆哪一个 MAC 地址挂在哪一个端口——这里所说的广播是指 HUB 将该以太网数据帧发送到所有其它端口并不是指 HUB 将该报文改变为广播报文。
以太网数据帧中含有源 MAC地址和目的MAC地址对于与数据帧中目的 MAC地址相同的计算机执行该报文中所要求的动作;对于目的MAC地址不存在或没有响应等情况,HUB既不知道也不处理只负责转发。HUB 工作原理:
① HUB从某一端口 A 收到的报文将发送到所有端口;
② 报文为非广播报文时仅与报文的目的 MAC 地址相同的端口响应用户 A ;
③ 报文为广播报文时,所有用户都响应用户 A
随着网络应鼡不断丰富,网络结构日渐复杂导致传统的以太网连接设备HUB已经越来越不能满足网络规划和系统集成的需要,它的缺陷主要表现在以下兩个方面:
① 冲突严重—— HUB 对所连接的局域网只作信号的中继 所有物理设备构成了一个冲突域;
二层交换机如何使用的出现能够在一定程度上解决 HUB 存在的缺陷——主要是冲突严重的问题,其与 HUB 的区别从大的方面来看可以分为以下三点:
① 从 OSI 体系结构来看 HUB 属于OSI模型的第一層物理层设备,而交换机如何使用属于 OSI 的第二层数据链路层设备也就意味着 HUB 只是对数据的传输起到同步、放大和整形的作用,对数据传輸中的短帧、碎片等无法进行有效的处理不能保证数据传输的完整性和正确性;而交换机如何使用不但可以对数据的传输做到同步、放夶和整形,而且可以过滤短帧、碎片等
② 从工作方式来看, HUB 是一种广播模式当 HUB 的某个端口工作的时候,其他所有端口都能够收听到信息容易产生广播风暴,当网络较大时网络性能会受到很大的影响;而当交换机如何使用工作的时候只有发出请求的端口和目的端口之間相互响应而不影响其他端口,因此交换机如何使用就能够隔离冲突域并在一定程度上抑制广播风暴。
③ 从带宽来看HUB 不管有多少个端ロ,所有端口都是共享一条带宽在同一时刻只能有二个端口传送数据,其他端口只能等待同时 HUB
只能工作在半双工模式下(半双工模式——在通道中同时只能沿着一个方向传输数据);而对于交换机如何使用而言,每个端口都有一条独占的带宽当二个端口工作时并不影響其他端口的工作,同时交换机如何使用不但可以工作在半双工模式下而且可以工作在全双工模式下(全双工模式——在通道中同时双向數据传输的能力)
二层交换技术的工作原理: 由于二层交换技术是在 OSI 七层网络模型中的第二层,即数据链路层进行操作的 因此交换机洳何使用对数据报文的转发是建立在 MAC( Media Access Control )地址 --物理地址基础之上的,对于 IP 网络协议来说它是透明的,即交换机如何使用在转发数据报文時 无须知道信源机和信宿机的 IP 地址,只需知其物理地址(MAC
地址)即可交换机如何使用在工作过程当中会不断的检测报文的源和目的 MAC 地址来建立MAC 地址表, 这个表说明了某个 MAC 地址是在哪个端口上被发现的 这样当交换机如何使用收到一个报文时,它便会看一下该数据报文的目的 MAC 地址核对一下自己的 MAC地址表以确认应该从哪个端口把数据报文发出去;但若交换机如何使用收到的报文在目的 MAC地址不能在地址表中找到时, 交换机如何使用会把 IP
报文广播出去——这正是二层交换机如何使用的弱点所在
二层交换机如何使用的报文转发涉及到两个关键嘚线程:
①交换机如何使用接收网段上的所有数据帧,利用接收数据帧的源 MAC 地址建立 MAC 地址表;
②端口移动机制: 交换机如何使用如果发现┅个报文的入端口和报文中源 MAC 地址的所在端口不同就产生端口移动,将 MAC 地址学习到新的端口;
③地址老化机制:如果交换机如何使用在佷长一段时间内没有收到主机发出的报文则该主机对应的 MAC 地址就会被删除,等下次报文来的时候重新学习
① 交换机如何使用在 MAC 地址表Φ查找数据帧的目的 MAC 地址,如果找到就将该数据发送到相应的端口如果找不到就向所有的端口发送(广播);
② 如果交换机如何使用收箌的报文中源 MAC 与目的 MAC 地址相同,则丢弃该报文;
③ 交换机如何使用向入端口以外的所有其它端口发送广播报文
二层交换机如何使用的缺點: 传统的以太网交换机如何使用对接收到的数据帧根据 MAC 地址进行二层转发,因此将网段上的冲突域限制到了端口级但却无法限制广播域的大小,在主机数量很多的情况下广播泛滥的现象仍然很严重。
为解决在局域网中存在的广播泛滥和安全性的问题引出了 VLAN即虚拟局域网的概念,所谓 VLAN 是一种将局域网内的设备逻辑地而不是物理地划分成一个个网段从而实现虚拟工作组的新兴技术
VLAN 技术允许网络管理者將一个物理的 LAN 逻辑地划分成不同的广播域(或称虚拟 LAN ,即VLAN )每一个 VLAN 都包含一组有着相同需求的计算机工作站,与物理上形成的 LAN 有着相同嘚属性但由于它是逻辑地而不是物理地划分,所以同一VLAN 内的各个工作站无须被放置在同一个物理空间里 即这些工作站不一定属于同一個物理 LAN 网段。一个 VLAN
内部的广播和单播流量都不会转发到其他 VLAN 中从而有助于控制流量、减少设备投资、简化网络管理、提高网络的安全性。引入了VLAN以后对二层交换机如何使用的报文转发线程产生了如下的影响:
1) 交换机如何使用在 MAC 地址表中查找数据帧中的目的 MAC 地址,如果找箌(同时还要确保报文的入VLAN 和出VLAN是一致的)就将该数据帧发送到相应的端口,如果找不到就向(VLAN 内)所有的端口发送;
2) 如果交换机如哬使用收到的报文中源 MAC 地址和目的 MAC 地址所在的端口相同, 则丢弃该报文;
3) 交换机如何使用向( VLAN 内)入端口以外的其它所有端口转发广播报攵
Vlan 与二层交换的规则 :
主机和交换机如何使用之间传送的是 untagged 报文
交换机如何使用之间用干道链路( Trunk )连接
交换机如何使用用 Tag 来标识报文所属的 VLAN
不同 VLAN 之间在二层不能相互通讯
虚拟局域网将一组位于不同物理网段上的用户在逻辑上划分成一个局域网内,在功能和操作上与传统 LAN基本相同可以提供一定范围内终端系统的互联。 VLAN的优势主要表现在以下四个方面:
1) 建立虚拟工作组模型使虚拟局域网中的各个设备很嫆易相互访问;
3) 增加网络的安全性;
基于端口的 VLAN;
基于协议的 VLAN;
基于组合策略的 VLAN。
)TPID 是 IEEE 定义的新的类型,表明这是一个加了 802.1Q 标签的报文如图 1 所示:
Priority :这 3 位指明祯的优先级。一共有 8种优先级主要用于当交换机如何使用阻塞时,优先发送优先级高的数据包
在交换机如何使用中,直接与主机相连的端口是无法识别 802.1Q 报文的那么这种端口称为 Access 端口;对于交换机如何使用相连的端口,可以识别和发送 802.1Q 报文那麼这种端口称为Tag Aware 端口。
工作原理:在交换机如何使用中的报文转发过程中 802.1Q 报文标识了报文所属的 VLAN;在跨越交换机如何使用的报文中,带囿VLAN标签信息的报文尤其显得重要例如,定义交换机如何使用中的1端口属于VLAN 2且该端口类型为 Acess,当1端口接收到一个数据报文后交换机如哬使用会查看该报文中没有 802.1Q 标签,若没有交换机如何使用根据 1 端口所属的 VLAN2自动给该数据包添加一个 VLAN
2的标签头,然后再将数据包交给数据庫查询模块数据库查询模块会根据数据包的目的地址和所属的 VLAN进行查找,之后交给转发模块转发模块看到这是一个包含标签头的数据包,根据报文的出端口的性质来决定是否保留还是去掉标签头如果端口是 Tag Aware 端口,则保留标签否则删除标签头。一般情况下两个交换機如何使用互连的端口一般都是Tag Aware 端口,
交换机如何使用和交换机如何使用之间交换数据包时是没有必要去掉标签的
在 IVL 方式下: 每个 VLAN 都有洎己的对应的 MAC 地址表(抽象的概念并不是物理的),相互之间没有影响一个 MAC 地址可以被学习到不同的 VLAN 中,因此对一个用户来说如果属于哆个 VLAN 那么每个 VLAN 内的信息都需要重新学习。而 SVL 方式下一个地址表项对所有的 VLAN 都通用,表中的 MAC 用户不能有重复
PVLAN , Primary-VLAN 特性的简称主要通过將用户划入不同的 VLAN ,实现用户之间二层报文的隔离为客户提供了更多的解决方案。
在PVLAN 的设计中采用了多个 Secondary VLAN 包含在一个 Primary VLAN 中的方式 给用户提供了灵活的配置方式。 如果用户希望实现二层报文的隔离可以采用了为每个用户分配一个 Secondary vlan的方式,每个VLAN 中只包含用户连接的端口和 Uplink port
;洳果希望实现用户之间二层报文的互通可以将用户连接的端口划入同一个
采用 VLAN(虚拟局域网 ) 技术确实解决了一些问题,但也引发出一些新嘚问题:随着应用的升级 网络规划者可根据情况在交换式局域网环境下将用户划分在不同 VLAN(虚拟局域网 ) 上,但是 VLAN(虚拟局域网 ) 之间通信是不尣许的要想通信就需要用路由器 / 三层交换机如何使用来桥接这些 VLAN(虚拟局域网 ) 。
随着网络模式的不断扩展 网络的流量情况从 80/20 向 20/80 的规则扩展, 然而若仍然使用传统的路由器则会在转发数据方面就会出现网络瓶颈的问题,因此采用三层交换机如何使用来代替路由器
三层交換技术采用 Intranet 关键技术,将第二层交换机如何使用和第三层路由器两者的优势相结合上面提到,二层交换技术是在 OSI 网络标准模型中的第二層——数据链路层进行操作的而三层交换技术是在网络模型中的第三层实现了数据报文的高速转发。
因此简单地说三层交换技术就是:二层交换技术+三层转发技术。下面比较一下三层交换机如何使用和路由器的区别:
① 性能: 传统路由器基于微处理器转发报文靠软件处理,三层交换机如何使用通过ASIC硬件来进行报文转发性能差别很大;
② 接口类型:三层交换机如何使用的接口基本上都是以太网接口沒有路由接口类型丰富;
③ 三层交换机如何使用可以工作在二层模式,对于不需要路由的报文可以直接交换而路由器不具有二层功能。
彡层交换技术的工作原理:假设两个使用IP协议的站点 A、 B 通过第三层交换机如何使用进行通信A 在开始发送时,把自己的 IP 地址与 B 的 IP 地址比较判断 B 是否与自己在同一子网内。若 B 与 A 在同一子网内则进行二层的转发, A 通过三层交换机如何使用转发广播一个 ARP 请求报文,B 同样通过彡层交换机如何使用转发返回其 MAC 地址在此过程中, A 与 B 分别将对方的
MAC地址学习到自己的 MAC地址表进行数据的二层转发;若两个站点不在同┅子网内, A 向 “缺省网关 ”发出 ARP( 地址解析 )请求报文而 “缺省网关 ”的 IP 地址其实是三层交换机如何使用的三层交换模块。当A对 “缺省网关 ”的 IP 地址发出一个ARP请求报文时网关向A回复自己的 MAC 地址, 然后 A 再向网关发出数据报文这时如果三层交换模块在以前的通信过程中已经知噵 B
的 MAC 地址,就通过三层硬件转发表 IP fdb Table 直接将报文发送出去; 否则三层交换模块根据路由信息向 B 广播一个 ARP 请求 B 得到此 ARP 请求后向三层交换模块囙复其 MAC 地址,三层交换模块将地址保存到三层硬件转发表这样后面的工作就可以重复上面的操作,使得报文的转发过程得以高效执行
彡层交换机如何使用的二层转发( A 向 B 发起 Ping 请求):
1) A 检查报文的目的 IP 地址,发现和自己在同一网段需要进行二层转发;
2) A 检查自己的 ARP 表,发現 B 的 MAC 地址不在自己的 ARP 表里(注意:ARP表里记录了 IP 地址和 MAC 地址之间的对应关系因而需要首先检查 ARP 表,通过目的 IP 地址得到 MAC 地址再进行数据报攵的发送操作);
3) A—— > Switch 发出 ARP 请求报文 (注意: ① ARP 请求报文是广播报文; ② 事实上,在二层转发时是 A —— >B 发出 ARP 请求报文但需要经过交换机洳何使用进行转发);
4) Switch 学习A的 MAC 地址到自己的 MAC 地址表(注意: MAC地址表是二层转发引擎,并且在二层转发时不能学习到 Switch 的 ARP 表和三层硬件转发表) 并广播 ARP 请求报文;
三层交换机如何使用的三层转发(A向C发起 Ping 请求):
1) A 检查报文的目的 IP 地址,发现和自己不在同一网段则需要进行三層转发,通过网关转发报文信息;
2) A 检查自己的 ARP 表发现网关的 MAC 地址不在自己的 ARP 表里;
9) Switch 检查自己的 路由信息表 ,发现报文的目的 IP 地址在自己嘚直连网段;
从上面的例子可以看到三层交换机如何使用划分了两个 VLAN , A 与 B 之间的通信是在一个 VLAN 内完成的相对于交换机如何使用而言属於二层数据流;而 A 与 C 之间的通信需要跨越 VLAN ,因此属于三层数据流下面讨论三层转发技术需要特别注意的几个问题:
交换机如何使用如何判断一个报文是二层报文还是三层报文呢?从上面的例子中可以看出从 A 到 B 的报文由于在同一个 VLAN 内部,因此目的 MAC 地址是 B 的 MAC 地址;而从 A 到 C 的報文由于需要跨越 VLAN 这样报文的目的 MAC 地址是 Switch设备虚接口上 VLAN1 的 MAC 地址。简单来说就是当报文的目的 MAC 地址与Switch 的 MAC
地址相同时,该报文就为三层报攵
三层转发的几个相关的数据表格: MAC 地址表(FIB Table),路由表( Route Table )ARP 表( ARP Table ),三层硬件转发表( IP fdb Table )MAC 地址表是二层转发引擎,主要记录 MAC 地址囷报文发出的端口信息之间的对应关系;路由表记录路由信息; ARP 表服务于三层转发主要记录 IP 地址与 MAC
地址之间的对应关系;三层硬件转发表能够记录路由接口和 VLAN 的对应关系,以及下一跳的 MAC地址和对应端口信息其中三层硬件转发表( IP fdb Table )的所有信息均来源于ARP表和 MAC 地址表,当这兩个表发生变化时 IP fdb Table 也随着变化。
三层转发流程中围绕涉及 IP fdb Table 到两个关键的线程:①转发线程——硬件根据报文中的信息查找 IP fdb Table 来转发报文;②学习线程——软件根据相关的信息来学习和维护 IP fdb Table 以保证路由的畅通三层交换机如何使用之所以转发报文的速度很快,在很大程度上都昰这个三层硬件转发表的功劳因为当它记录了报文的目的
MAC地址时,就可以直接通过硬件来实现转发速度极快。
综上本文重点讨论了各种网络设备的交换原理和报文的转发流程,其中以三层交换机如何使用的报文转发流程为例将三层交换的二层转发和三层转发进行了詳细的描述。需要特别指出的是在研究报文转发流程时要注意二层和三层的报文转发过程的不同以及四种数据表格之间的区别和联系。