交换机学习笔记.docx

上传人:b****3 文档编号:10859943 上传时间:2023-05-28 格式:DOCX 页数:11 大小:102.94KB
下载 相关 举报
交换机学习笔记.docx_第1页
第1页 / 共11页
交换机学习笔记.docx_第2页
第2页 / 共11页
交换机学习笔记.docx_第3页
第3页 / 共11页
交换机学习笔记.docx_第4页
第4页 / 共11页
交换机学习笔记.docx_第5页
第5页 / 共11页
交换机学习笔记.docx_第6页
第6页 / 共11页
交换机学习笔记.docx_第7页
第7页 / 共11页
交换机学习笔记.docx_第8页
第8页 / 共11页
交换机学习笔记.docx_第9页
第9页 / 共11页
交换机学习笔记.docx_第10页
第10页 / 共11页
交换机学习笔记.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

交换机学习笔记.docx

《交换机学习笔记.docx》由会员分享,可在线阅读,更多相关《交换机学习笔记.docx(11页珍藏版)》请在冰点文库上搜索。

交换机学习笔记.docx

交换机学习笔记

交换技术

一、以太网

以太网技术标准主要定义了数据链路层和物理层的规范。

同一层次的技术标准包括令牌环网等等。

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示意图

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2