三层交换基础.docx
- 文档编号:1588627
- 上传时间:2022-10-23
- 格式:DOCX
- 页数:14
- 大小:293.06KB
三层交换基础.docx
《三层交换基础.docx》由会员分享,可在线阅读,更多相关《三层交换基础.docx(14页珍藏版)》请在冰豆网上搜索。
三层交换基础
“交换”一词最初来源于电话交换,在电话网中使用程控交换机来完成线路的选择和连接,这是一种电路交换技术。
本文中的“交换”是指数据通信领域的数据报交换技术,主要通过储存/转发的方式来完成数据报文的传输。
根据国际标准化组织(ISO)提出的开放系统互联参考模型(OSI-RM),依据二层(链路层)信息进行数据帧转发的称为二层交换,仅支持二层交换的交换机称为二层交换机;依据三层(网络层)信息进行数据包转发的称为三层交换,支持三层交换的交换机称为三层交换机。
本文主要根据以太网互连技术的演进来介绍二、三层交换的相关基础知识。
1.共享式以太网互连
以太网采用CSMA/CD机制,这种冲突检测方法使得以太网可以使用共享总线型的连接方式。
最初的局域网搭建采用HUB或者同轴电缆将同一网络的主机互连起来,如图1所示。
图1共享式以太网互连
HUB与同轴电缆都是典型的物理层设备,所有互连的设备位于一个冲突域中,当网络流量较小时,冲突较少发生,利用冲突检测机制已经可以较好的保证通信质量;但是当网络流量增加到一定程度时,将导致冲突不断,网络的吞吐量受到严重影响,数据也可能频繁的由于冲突而被拒绝发送。
二层交换机的出现有效的解决了这个问题,大大的减小了冲突域的范围。
2.二层交换原理
二层交换机工作在OSI模型的第二层,即数据链路层,它对数据包的转发是建立在链路层信息——MAC(MediaAccessControl)地址基础之上的,它的内部一般使用称为ASIC(ApplicationSpecificIntegratedCircuit)的硬件芯片来实现转发,同时由于是硬件转发,其转发性能非常高。
二层交换机不同的端口发送和接收数据独立,各端口属于不同的冲突域,因此有效地隔离了网络中物理层冲突域,使得通过它互连的主机(或网络)之间不必再担心流量大小对于数据发送冲突的影响,典型的组网结构如图2所示。
图2多台主机通过二层交换机互连
由于二层交换机的转发依据是MAC地址,下面先简单介绍一下这个概念。
2.1.MAC地址简介
在每个以太网帧的帧头,都包含有一个目的MAC地址和一个源MAC地址,它的作用是标志帧的源节点和目的节点的物理地址。
一个MAC地址有48bit(6个字节),从应用上可以分为单播地址、组播地址、广播地址:
1)单播地址:
第1字节的最低位为0,比如0000-0EF3-0038,一般用于标志唯一的设备;
2)组播地址:
第1字节的最低位为1,比如0100-5E00-0001,一般用于标志同属一组的多个设备;
3)广播地址:
所有48bit全为1,即FFFF-FFFF-FFFF,它用于标志同一网段中的所有设备。
在常用的以太网帧结构中,目的、源MAC的位置如图3所示。
图3常见的以太网帧结构
2.2.二层交换基本原理
二层交换机通过解析和学习以太网帧的源MAC来维护MAC地址与端口的对应关系(保存MAC与端口对应关系的表称为MAC表),通过其目的MAC来查找MAC表决定向哪个端口转发,基本流程如下:
1)二层交换机收到以太网帧,将其源MAC与接收端口的对应关系写入MAC表,作为以后的二层转发依据。
如果MAC表中已有相同表项,那么就刷新该表项的老化时间。
MAC表表项采取一定的老化更新机制,老化时间内未得到刷新的表项将被删除掉;
2)根据以太网帧的目的MAC去查找MAC表,如果没有找到匹配表项,那么向所有端口转发(接收端口除外);如果目的MAC是广播地址,那么向所有端口转发(接收端口除外);如果能够找到匹配表项,则向表项所示的对应端口转发,但是如果表项所示端口与收到以太网帧的端口相同,则丢弃该帧。
从上述流程可以看出,二层交换通过维护MAC表以及根据目的MAC查表转发,有效的利用了网络带宽,改善了网络性能。
图4是一个二层交换的示例。
图4二层交换示例
二层交换机的MAC地址老化和刷新通常直接由硬件ASIC芯片来完成,这里顺便介绍一下其通常采用的机制:
1)在芯片中储存的每一个动态添加的MAC地址表项都有一个1bit长度的老化标志,同时芯片有一个老化定时器用于控制地址老化;
2)对于新学习到的MAC地址表项,其老化标志位置1;对于已经学习到的MAC表项,如果后续有报文的源MAC与表项相同,那么将其老化标志位刷新为1;
3)每当芯片的老化定时器超时后,将MAC地址表中老化标志位等于1的项目,修改其老化标志位等于0;对于MAC地址表中老化标志位等于0的项目,直接删除。
在这样的老化更新机制下,MAC地址的实际老化时间并不是精确的,而是一个范围:
1~2倍的老化定时器时间。
二层交换机虽然能够隔离冲突域,但是它并不能有效的划分广播域。
因为从前面介绍的二层交换机转发流程可以看出,广播报文以及目的MAC查找失败的报文会向所有端口转发,当网络中的主机数量增多时,这种情况会消耗大量的网络带宽,并且在安全性方面也带来一系列问题。
当然,通过路由器来隔离广播域是一个办法,但是由于路由器的高成本以及转发性能低的特点使得这一方法应用有限。
基于这些情况,二层交换中出现了VLAN技术。
2.3.支持VLAN的二层交换机
2.3.1.VLAN简介
VLAN,即VirtualLocalAreaNetwork(虚拟局域网),遵循IEEE802.1Q标准,它在原来的以太网帧源MAC字段的后面加入了4个字节的VLANTag,这4字节的结构如图5所示。
图5VLANTag示意图
VLANTag中各字段的含义如下:
Type:
取固定值0x8100,用于标志VLANTag;
UserPriority:
用户优先级,用于流量的等级划分;
Flag:
该bit在以太网中固定取0;
VLAN-ID:
取值为0~4095,用于标志不同VLAN。
由于不同VLAN之间是二层隔离的,通过将不同的主机划分到不同的VLAN中去,就有效的控制了广播域的范围。
我们知道,通常情况下主机发出的报文都是不带VLANTag的(称为Untagged报文),那么如何将这样的报文划分到某个VLAN中去呢。
VLAN划分的方法有多种,包括基于端口划分、基于MAC划分、基于IP划分、基于协议划分等等。
目前,基于端口来划分VLAN是使用最为广泛的,也就是通过收到报文的端口来决定Untagged报文属于哪个VLAN。
当Untagged报文进入交换机内部以后,会根据VLAN划分被加上VLANTag,然后进行后续转发处理。
当然,如果报文本身是带了VLANTag的,就直接根据其中的VLANID来决定了。
图6是一个VLAN应用的示意图。
图6VLAN应用示意图
图6中,两台二层交换机之间的链路一般称为Trunk链路,其上传输的一般都是带VLANTag的报文(称为Tagged报文),这样的报文进入交换机以后直接根据其VLANID来区分VLAN。
交换机引入VLAN后,带来了以下好处:
1)有效控制广播域范围,广播流量仅在VLAN内转发;
2)配置灵活,虚拟局域网的范围可根据需要随时调整;
3)由于不同VLAN之间二层隔离,带来了更高的安全性。
有关VLAN的内容这里不再深入讨论,感兴趣的同学可参考其他VLAN相关文档。
支持VLAN的二层交换机,其二层转发和MAC地址维护方式都发生了一定的变化,下面分别讨论两种不同的MAC地址维护方式的交换机。
2.3.2.SVL方式的二层交换机
SVL(SharedVLANLearning)方式的二层交换机在学习MAC地址并建立MAC地址表的过程中并不附加VLANID,或者说它的MAC地址表是为所有VLAN共享使用的。
它的二层转发基本流程如下:
1)根据接收到的以太网帧的源MAC信息添加或刷新MAC地址表项;
2)根据目的MAC信息查找MAC地址表,如果没有找到匹配项,那么在报文对应的VLAN内广播;
3)如果找到匹配项,但是表项对应的端口并不属于报文对应的VLAN,那么丢弃该帧;
4)如果找到匹配项,且表项对应的端口属于报文对应的VLAN,那么将报文转发到该端口,但是如果表项对应端口与收到以太网帧的端口相同,则丢弃该帧。
这种类型的二层交换机转发与普通二层交换机转发基本相同,只是多了转发过程中的VLAN检查。
这样的交换机可能遇到下述问题:
位于不同VLAN的主机(或网络设备)具有相同的MAC地址,由于SVL交换机所有VLAN共享一个MAC表,这样对应的MAC表项中端口就会不断的变化,而且两个VLAN的报文转发也会受到影响,这种情况如图7所示。
图7SVL二层交换示意图
图7中,VLAN10的PCA发送给PCB的报文由于MAC地址表查找结果与VLAN不符而被丢弃了;同理,当MACB学习到PORT2时,VLAN20的PCD和PCC之间的通信就会出现问题。
这样,虽然不同的主机被隔离在了不同的冲突域和广播域中,但是MAC地址却可能导致不同VLAN的通信相互影响。
在实际应用中,SVL方式的二层交换机已经比较少见了。
2.3.3.IVL方式的二层交换机
IVL(IndependentVLANLearning)方式的交换机在学习MAC地址并建立MAC地址表的过程中同时附加VLANID,同一个MAC地址可以出现在不同的VLAN中,这样的方式也可以理解为每个VLAN都有自己独立的MAC地址表。
它的二层转发基本流程如下:
1)根据接收到的以太网帧的源MAC+VLAN-ID信息添加或刷新MAC地址表项;
2)根据目的MAC+VLAN-ID查找MAC地址表项,如果没有找到匹配项,那么在VLAN-ID对应的VLAN内广播;
3)如果能够找到匹配表项,则向表项所示的对应端口转发,但是如果表项所示端口与收到以太网帧的端口相同,则丢弃该帧。
SVL方式交换机上可能遇到的转发问题,在IVL交换机中得以解决,如图8所示。
图8IVL二层交换示意图
IVL方式的二层交换机转发流程更加清晰,VLAN之间不会互相影响,目前实际应用中的二层交换机大多采用这种方式。
3.三层交换基本原理
早期的网络中一般使用二层交换机来搭建局域网,而不同局域网之间的网络互通由路由器来完成。
那时的网络流量,局域网内部的流量占了绝大部分,而网络间的通信访问量比较少,使用少量路由器已经足够应付了。
通常的组网结构如图9。
图9二层交换机+路由器组网
但是,随着数据通信网络范围的不断扩大,网络业务的不断丰富,网络间互访的需求越来越大,而路由器由于自身成本高、转发性能低、端口数量少等特点无法很好的满足网络发展的需求。
我们知道,路由器主要是通过IP转发(三层转发)来实现不同网络间的互连,那么是否能够将交换机的高性能应用到三层转发中去呢?
答案是肯定的,三层交换机就是这样一种实现了高速三层转发的设备。
大多数三层交换机采用ASIC硬件芯片来完成转发,ASIC芯片内部集成了IP三层转发的功能,包括检查IP报文头、修改存活时间(TTL)参数、重新计算IP头校验和、IP包的数据链路封装等等。
三层交换机的组网结构如图10所示。
图10三层交换机组网结构
路由器的三层转发主要依靠C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 三层 交换 基础