交换机学习笔记.docx
- 文档编号:24488699
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:11
- 大小:102.94KB
交换机学习笔记.docx
《交换机学习笔记.docx》由会员分享,可在线阅读,更多相关《交换机学习笔记.docx(11页珍藏版)》请在冰豆网上搜索。
交换机学习笔记
交换技术
一、以太网
以太网技术标准主要定义了数据链路层和物理层的规范。
同一层次的技术标准包括令牌环网等等。
TCP/IP协议本身是与数据链路层和物理层无关的,TCP/IP协议栈可以架构在以太网技术上,也可以是令牌环网。
以太网是广播网。
半双工传输时采用CSMA/CD技术,全双工模式不需要。
在采用CSMA/CD传输介质访问的以太网中,任何一个CSMA/CD LAN工作站在任何一时刻都可以访问网络。
发送数据前,工作站要侦听网络是否堵塞,只有检测到网络空闲时,工作站才能发送数据。
工作站在发送数据帧时需要等待一个时间片的时间,用来检测刚才发送出去的帧是否发生冲突。
冲突发生时,采用时间指数退避算法,延后一段时间后在发送数据包。
一层设备:
代表设备是HUB,作用于7层网络模型的第1层,物理层,主要用于电信号的放大,以增加传输距离。
一层设备不存在交换。
以太网HUB工作于半双工状态,HUB连接的所有主机同时只能有一台主机发送以太帧,并且所有的主机都能够接收到这个帧,所有的端口处于同一个冲突域,一个广播域。
以太网帧结构:
前导符
帧开始符
目的地址
源地址
类型
数据
CRC
7字节
1字节
6字节
6字节
2字节
46-1500字节
4字节
最小以太帧为64字节,若小于64字节,则需要“填充”。
二、交换机基本结构
目前的L2/L3交换芯片一般采用分布式交换的体系结构,主要包括:
CPU(带管理的交换机)或者EEPROM(不带管理的交换机)、交换结构、MAC芯片、物理层芯片几个部分,如果是提供光口还需要光模块。
其中的核心是MAC芯片,实现了MAC源地址学习和L2层以太帧转发,以及流量控制功能,如果是L3芯片,则在MAC层芯片中还有路由模块。
所有的2层地址学习、2层转发和3层路由都是分散在各个MAC芯片中完成的。
虽然地址学习是分散在各个芯片中完成的,但是系统中的所有MAC芯片会通过内部通讯协议通过交换结构互相交换地址学习信息,使得整个系统中的地址学习表是统一的。
图中所示的是一个L2/L3层交换的MAC芯片,它主要包括了L2交换模块、L3路由模块、流分类模块和转发引擎等几个部分:
1、L2交换模块主要进行MAC地址学习和L2层转发判断
2、L3路由模块主要根据路由表进行L3层路由转发,如果是L2芯片则没有这个模块
3、流分类模块主要是对进入以太帧做QOS方面的调整或者流量限制。
如果是L2层芯片,则可以根据源目的MAC地址、端口、VLAN号、以太帧中的COS位进行流控,降低优先级甚至丢弃,如果是L3层芯片还可以根据IP包中的TOS位、IP源目的地址、IP地址加上TCP/UDP的端口号,甚至根据应用层的信息进行QOS调整和流量控制。
转发引擎主要是根据前面几个模块的结果做转发操作,输出队列的选择依据以太帧中的COS与优先级队列映射表或者Diffserv表等。
交换机构:
总线结构、共享内存交换结构、CROSSBAR结构
两种转发方式:
直接转发、存储转发
三、VLAN及三层交换
二层交换式网络中,整个网络是一个扁平的结构。
网络全部由二层交换机构造起来,整个网络是一个大的广播域。
在以太网中,所谓广播域就是指在一个网络中,广播帧(目的MAC地址为ff-ff-ff-ff-ff-ff的帧)将要被转发的最大范围。
在二层交换机中,交换机仅根据MAC地址进行帧的选路和转发,当一个完整正确的以太网帧从一个交换机端口上被接收上来以后,交换机将在自己维护的MAC地址表中去查找地址,根据地址类型的不同和查找结果的不同情况,交换机对帧采取不同的处理。
单播帧(Unicast),目的地址在MAC地址表中存在:
按照目的地址在地址表中的表项所指的输出端口,将帧转发到相应的端口上。
(单播MAC地址在地址表中只能指向一个输出端口)
单播帧(Unicast),目的地址在MAC地址表中不存在:
在广播域的所有端口上广播该帧
多播帧(Multicast),目的地址在MAC地址表中存在:
按照目的地址在地址表中的表项所指的输出端口,将帧转发到相应的端口上。
(多播MAC地址在地址表中可以指向一个或一组输出端口)
多播帧(Multicast),目的地址在MAC地址表中不存在:
在广播域的所有端口上广播该帧
广播帧(Broadcast):
在广播域的所有端口上广播该帧
为了解决网络由广播导致的效率下降和安全性等问题,VLAN的概念被引入,在支持VLAN功能的交换机组成的网络中,每一个VLAN被设计为一个独立的广播域。
VLAN之间被严格地隔离开来,任何一个帧都不能从自己所属的VLAN被转发到其他的VLAN中。
整个网络被划分为若干个规模更小的广播域,网络的广播被控制在相对比较小的范围内,提高了网络的带宽利用率,改善网络效率和性能。
每一个人都不能随意地从网络上的一点,毫无控制地直接访问另一点的网络或监听整个网络上的帧,隔离的广播域改善了网络的安全性。
对于VLAN概念的理解,有几点要注意:
分离了广播域;
2.单独的一个VLAN模拟了一个常规的交换以太网,因此VLAN将一个物理交换机分割成了一个或多个逻辑交换机;
3.不同VLAN之间通信需要三层参与;
4.当多台交换机级联时,VLAN通过VID来识别,该ID插入到标准的以太帧中,被称作tag;
5.大多数的tag都不是端到端的,一般在上行路上第一个VLAN交换机打tag,下行链路的最后一个VLAN交换机去除tag;
6.只有在一个数据帧不打tag就不能区分属于哪个VLAN时才会打上tag,能去掉时尽早要去掉tag;
7.最终,IEEE解决了VLAN的tag问题。
VLAN间通信
用传统的路由器进行VLAN之间的路由在性能上还有一定的不足:
由于路由器利用通用的CPU,转发完全依靠软件进行,同时支持各种通信接口,给软件带来的负担也比较大。
软件要处理包括报文接收、校验、查找路由、选项处理、报文分片,导致性能不能做到很高,要实现高的转发率就会带来高昂的成本。
由此就诞生了三层交换机,利用三层交换技术来进一步改善性能。
三层交换机的设计基于对IP路由的仔细分析,把IP路由中每一个报文都必须经过的过程提取出来,这个过程是个十分简化的过程:
IP路由中绝大多数报文是不包含IP选项的报文,因此处理报文IP选项的工作在多数情况下是多余的;
不同的网络的报文长度都是不同的,为了适应不同的网络,IP实现了报文分片的功能,但是在全以太网的环境中,网络的帧(报文)长度是固定的,因此报文分片的功能也是一个可以裁减的工作;
三层交换机采用了和路由器的最长地址掩码匹配不同的方法,使用精确地址匹配的方式处理,有利于硬件实现快速查找;
三层交换机采用了Cache的方法,把最近经常使用的主机路由放到了硬件的查找表中,只有在这个Cache中无法匹配到的项目才会通过软件去转发。
这样,只有每个流的第一个报文会通过软件进行转发,其后的大量数据流则可以在硬件中得以完成。
三层交换机在IP路由的处理上做了以上改进,实现了简化的IP转发流程,利用专用的芯片实现了硬件的转发,这样绝大多数的报文处理都在硬件中实现了,只有极少数报文才需要使用软件转发,整个系统的转发性能能够得以成百上千倍地增加。
相同性能的设备在成本上得以大幅度下降。
四、交换机的报文转发
L2交换机中的3张表:
1、地址转发表
地址学习表是L2交换的转发依据。
它主要记录某个MAC地址是从哪个端口收到的,以及这个被学习的帧属于哪个VLAN的信息,另外还有一个比较重要的栏是标志,在标志栏中可以设置标志,使匹配到这个条目的以太帧被送到CPU进行处理,或者送到L3路由模块进行处理。
也可以设置标志表示该表项是属于静态表项,不进行老化处理。
2、VLAN表
VLAN表主要记录哪些端口属于某个VLAN。
一个端口可以属于多个VLAN,比如端口1既属于VLAN1,又属于VLAN3,此时这个端口输出时采用的帧格式。
3、端口寄存器表
端口寄存器表项主要记录了该端口的缺省VLAN。
交换机的报文转发机制分两种:
SVL和IVL。
SVL:
Sharedvlanlearning,共享式vlan学习。
在这种方式下,MAC地址在整张表中是唯一的,一个MAC地址在地址表中只能有一条记录,一个MAC只能被学习到一个端口上。
IVL:
Independentvlanlearning,独立式vlan学习。
在这种方式下,MAC地址表在逻辑上可以被看成根据VLAN信息分成了很多张表,一个MAC地址可学习到不同VLAN对应的“地址表”上。
MAC地址在不同方式的地址表中的存在可以形象的表示为:
在IVL方式下,MAC2可以学习在VLAN1的“地址表”上,也可以学习在VLAN2的“地址表”上。
两种转发机制的转发报文的流程
而在SVL方式下,MAC2只能有一条记录,只能对应某个VLAN和端口。
对于SVL方式而言:
交换机先根据目的MAC地址查MAC地址表,找到端口之后,然后判断这个端口所属的VLAN是否和报文携带的VLAN信息对应的VLAN相等,如果相等就转发,否则就丢弃。
如果根据目的MAC没有找到对应的端口,则在报文所属的VLAN内进行广播。
而对于IVL而言:
交换机根据MAC地址和VLAN信息一起查MAC地址表,如果找到对应的端口则转发,否则在报文所属的VLAN内进行广播。
三层交换机的数据包转发流程
假设两个使用IP协议的站点(源站点A、目的站点B)通过第三层交换机,通信的过程如下:
-源站点A在开始发送时,已知目的站的IP地址,但尚不知道在局域网上发送所需要的MAC地址。
首先需要采用地址解析(ARP)来确定目的站的MAC地址。
源站点把自己的IP地址与目的的站的IP地址比较。
-若目的站B与源站A在同一子网内,源站A广播一个ARP请求,目的B站返回其MAC地址,A站得到目的站点B的MAC地址后将这一地址缓存起来存放在ARP表中,并用此MAC地址封装包后转发数据。
三层以太网交换机的第二层交换模块根据源站A发送的以太网帧中的目的MAC地址查找MAC地址表确定将数据包发向目的端口。
-若目的站B与源站A不在同一子网内,如源站A要与目的站B通信,源站A要向“缺省路径(其软件中配置的网关地址)”发出ARP封装包,“缺省路径”的IP地址实际上对应所连接第三层交换机的一个路由接口,即连接源站A的物理端口所属VLAN接口。
当发源站A对“缺省路径”的IP地址广播出一个ARP请求时,交换机回相应路由接口(即发源站A的“缺省路径”)的MAC地址给源站。
第三层交换模块在以往的通信过程中已得到目的站B的MAC地址,则直接将数据包以此MAC地址封装并发向目的站B;
否则则提取出输入帧的IP包去查路由表,根据路由表中的路由信息向目的站网段广播一个ARP请求,目的站B得到此ARP请求后,向第三层交换模块回复其MAC地址,以后,当再进行站点A与站点B之间的数据包转发时,将用最终的目的站点B的IP地址为索引查找底层硬件转发表,得到出端口与对应的MAC地址,并用查到MAC地址封装包,从查到的出端口将数据转发出去;数据转发过程全部交给第二层交换处理,因此信息得到高速交换。
报文到报文的交换方式与流交换方式的区别:
如果每一个报文都要经历第三层处理,并且业务流转发是基于第三层地址的,这种交换方式就是报文到报文交换方式;如果只是第一个报文经过第三层处理,其他后续报文只进行第二层转发,这种交换方式就是流交换方式。
在上图报文到报文的流活动中,报文进入系统中OSI参考模型的第一层物理接口,然后到达第二层接口进行目的MAC地址检查,如果查表检查的结果是不能交换则进入到第三层。
在第三层,报文经过路由计算、地址解析等处理,经过三层处理后,报文头被修改并被传回第二层,二层确定合适的输出端口后,报文通过第一层传送到物理介质上。
对于后续的每一个报文的转发,都要经过这样的一个过程。
在流交换中,第一个报文被分析以确定其是否表示了一个“流”或者一组具有相同源地址和目的地址的报文,如果第一个报文具有了正确的特征,则该标识流中的后续报文将拥有相同的优先权,同一流中的后续报文被交换到基于第二层的目的地址,流交换节省了检查每一个报文要花费的处理时间。
现在三层交换机为了实现高速交换,都采用流交换的方式。
五、关于access、trunk、hybrid
先介绍PVID:
“PVID”是“PortVLANID”的缩写,是“端口缺省VLANID”的意思,即一个端口缺省属于的VLAN。
PVID的作用是:
当一个数据帧进入交换机端口时,如果没有带VLAN标签,则该数据帧就会被打上端口的PVID。
当交换机收到一个数据帧时
1.Access端口
(1)收到一个二层帧
(2)判断是否有VLAN标签:
没有则转到第3步,有则转到第4步
(3)打上端口的PVID,并进行交换转发
(4)若VLAN标签和PVID一致,转发VLAN帧;否则丢弃
2.trunk端口
(1)收到一个二层帧
(2)判断是否有VLAN标签:
没有则转到第3步,有则转到第4步
(3)打上端口的PVID,并进行交换转发
(4)判断该trunk端口是否允许该VLAN帧进入:
允许则转发,否则丢弃
(注意:
trunk口允许或不允许VLAN帧,是对进入的帧而言的,对出去的帧没有限制。
)
3.hybrid端口
(1)收到一个二层帧
(2)判断是否有VLAN标签:
没有则转到第3步,有则转到第4步
(3)打上端口的PVID,并进行交换转发
(4)判断该hybrid端口是否允许该VLAN帧进入:
允许则转发,否则丢弃
当交换机把数据帧转发出端口时:
1.Access端口
(1)将二层帧的VLAN标签剥离,直接发送出去
2.trunk端口
(1)比较端口的PVID和将要发送二层帧的VLAN标签
(2)如果两者相等则转到第3步,否则转到第4步
(3)剥离VLAN标签,再发送
(4)直接发送
3.hybrid端口
(1)判断VLAN在本端口的属性。
查看该端口对哪些VLAN是untag,哪些VLAN是tag
(2)如果是untag则转到第3步,如果是tag则转到第4步
(3)剥离VLAN标签,再发送
(4)直接发送
由上述可知,交换机内的数据都是有标签的。
在入方向,不管端口配置的是何种模式,对于没有VLAN标签的数据帧都会打上PVID;在出方向,不管端口配置的是何种模式,对于PVID=VID的数据帧,都会去掉标签发送。
六、MAC地址漂移
如图所示,当Switch1向两个方向同时发报文时,在Switch2上的两个不同端口都会收到该报文,从而出现MAC地址漂移。
当Switch2的两个端口出现了MAC地址漂移时,说明交换机的两个端口间可能出现了环路。
图:
MAC-Flapping示意图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 交换机 学习 笔记