精华内容
下载资源
问答
  • 交换机二三层转发原理简单总结

    万次阅读 多人点赞 2018-08-26 23:57:48
    另外,由于二三层转发基于MAC地址、IP地址、FDB表(MAC地址学习、更新、老化、删除等)、ARP表、路由表、三层转发表、VLAN端口类型(Access、Trunk、Hybrid)、VLAN帧格式、ARP报文格式等需要对此有基本的熟知...

    首先二层转发是基于MAC地址转发,三层转发基于IP地址转发,但是这并不意味着仅仅依靠IP地址就能转发,三层转发是建立在二层的基础上的,而仅仅依靠MAC地址是能够转发的。另外,由于二三层转发基于MAC地址、IP地址、FDB表(MAC地址学习、更新、老化、删除等)、ARP表、路由表、三层转发表、VLAN端口类型(Access、Trunk、Hybrid)、VLAN帧格式、ARP报文格式等需要对此有基本的熟知。以下图为例,总结一下交换机中,基于VLAN的二三层转发原理。
    这里写图片描述

    0、基本概念术语:
    ①MAC地址:48bit的硬件地址,组播地址格式为首字节最低位为1,单播地址格式为首字节最低位为0,广播地址为全1(即FF:FF:FF:FF:FF:FF)。
    ②FDB表(FordWarding DateBase):即MAC地址映射表,有MAC地址、端口、VLAN ID等信息。
    ③ARP表:用于记录IP和MAC映射关系的表。
    ④三层转发表:即基于硬件三层转发的包含目的IP地址、VLAN ID、端口和下一跳MAC地址等的关系表。
    ⑤路由表:包含默认路由、RIP等动态路由的路由路径信息的记录表。
    ⑥VLAN端口:主要是Access一般是用于连接主机,其发出的数据帧不带tag标签;还有就是Trunk用于可连接不同交换机的主干链路,其上发出的数据帧可能会带tag标签,用以识别不同VLAN,如果没带则采用默认的VLAN (PVID)

    假设最开始所有PC和交换机没有任何表项存在(ARP缓存、FDB缓存、三层转发表缓存等),且端口均为Access模式。

    1、二层转发(同一VLAN中主机通信):
    以上图中PC_A ping PC_B为例来详细分析整个过程。
    ①PC_A(192.168.10.1/24) 要 ping PC_B(192.168.10.2/24),首先要去检查目标IP地址和自己的IP地址是否在同一个网段中,经过IP和子网掩码进行与运算,得知PC_A和PC_B属于语同一网段192.168.10.0网段。因此进行下一步:ARP表项查询。
    ②根据目标IP:192.168.10.2作为索引,在ARP表中查找对应的MAC地址,由于ARP表最开始是空的,所以没有找到对应MAC,因此PC_A需要发送一个ARP广播报文在VLAN 1中请求PC_B(192.168.10.2)的MAC地址,PC封装的ARP报文主要内容为(opcode操作码字段为0X01代表这是一个ARP请求报文,目标MAC由于不知道因此填充为0,其余包含以太帧头部具体如下图所示)
    这里写图片描述
    关于ARP报文各个字段的含义,用wireshark抓一个ARP包来查看,如下所示:
    这里写图片描述
    ③当交换机从a端口收到PC_A发出的报文,解析以太头部后发现目标MAC是FF:FF:FF:FF:FF:FF,则知其是一个广播帧,解析源MAC:MA,由于FDB表当前空空如也,因此先将port a<->MA<->VLAN 1等信息缓存到FDB表中。之后根据端口为Access模式,加上一个VLAN tag(主要包含优先级和VLAN ID=1),使其成为一个802.1Q的带有VLAN tag的以太帧,在交换机内部开始进行交换。
    ④端口检测后发现b、c、d三个端口(其实还有一个VLAN接口,暂不提及)归属于VLAN 1,因此将tag剥离并从这三个端口转发出去。
    ⑤当PC_C、PC_D收到该广播帧解析内容发现目标IP不是自己则丢弃该数据帧,而PC_B发现目标IP就是自己,则先将PC_A的192.168.10.1<->MA的映射信息更新到本地ARP表中。然后封装一个ARP回应的单播报文,内容主要为:源IP:192.168.10.2,目标IP:192.168.10.1,源MAC:MB,目标MAC:MA。发送出去,经端口b到达交换机。
    ⑥交换机收到来自端口b的报文,解析头部获得源MAC,则先将port b<->MB<->VLAN 1缓存到FDB表中去,由于FDB表中已经有了PC_A的MAC地址缓存,因此根据ARP回复报文数据帧头部的目标MAC将报文从端口a转发出去(该步中当然也存在入口数据帧tag的添加与出口数据帧tag剥离的操作)。
    ⑦PC_A接收到从端口a发出的ARP报文后,解析以太头部进行目标MAC匹配判断,匹配后解析报文内容,发现源IP<->源MAC的对应关系,因此先缓存192.168.10.2<->MB,到ARP表中,之后有了PC_B的MAC地址接可以封装icmp报文进行ping的后续操作了。
    ⑧交换机收到来自PC_A和PC_B的icmp request与icmp reply报文,由于之前有缓存FDB表项,因此之后只会更新对应表项的老化标志,长时间没有这俩源MAC的报文到交换机则会删除对应表项。

    2、三层转发(跨越不同VLAN的主机通信):
    以上,以一台交换机上的同一个VLAN内的不同主机通信为例,描述了的是二层转发的基本过程,包括ARP表查询、ARP请求、交换机MAC地址查询、FDB表缓存、端口类型检查、VLAN tag添加与剥离、目标主机ARP回复等步骤。而三层交换基本步骤差不多。以VLAN 1的PC_A(192.168.10.1,MA)和VLAN 2的PC_E(192.168.20.1,ME)相互ping为例分析(假设VLAN 1的网关为VLAN 1 interface的IP:192.168.10.254,VLAN 2的网关为VLAN 2 interface 的IP为192.168.20.254),以下过程也有加VLAN tag和剥离VLAN tag的过程,但与二层基本一致,因此不再赘述:

    ①当PC_A(192.168.10.1/24)要ping PC_E(192.168.20.1/24)时,依然是检查目标IP是不是和自己在同一个网段,发现不在同一网段(一个在10.0网段一个在20.0网段),则需要经过网关(这里是交换机三层接口)来转发,因此PC_A在自己的ARP表中寻找网关对应的MAC地址,如果有则直接将报文封装为:目标MAC为网关MAC,源MAC为MA,发送端IP为192.168.10.1,接收端IP为192.168.20.1。
    ②由于第一次PC_A的ARP缓存中不存在网关的MAC地址。则先向VLAN 1内广播发送一个ARP请求,请求网关192.168.10.254的MAC地址,封装为源MAC为MA,目标MAC不可知则为全0,源IP为192.168.10.1,目标IP为192.168.10.254,到链路层封装的头部为,源MAC为MA,目标MAC为全F即广播包,“帧类型”字段则填上ARP的协议号0x0806。
    ③交换机SW1收到PC_A发送的报文,二层解析头部检查为广播包,则从VLAN 1的除源端口外的各个端口转发出去,另外也转发一份到VLAN 1的三层接口,由于PC_A之前给PC_B发送过报文,SW 1有PC_A的FDB缓存,则检查匹配后更新老化标志位。此外将PC_A的IP、MAC、对应port、VLAN ID等信息记录到交换机的三层转发表中。
    ④VLAN 1其他主机收到请求对象不是自己的ARP请求,丢弃该广播报文,而SW 1的三层接口解析到目标IP是自己,则封装一个源MAC是交换机VLAN 1 interface的MAC,源IP是192.168.10.254,目标IP是192.168.10.1,目标MAC是MA的ARP应答报文,再经过以太头部封装,添加ARP单播报文头部,目标MAC为MA。交换机二层收到自三层的报文,解析数据帧头部,根据目标MAC地址MA在FDB表中查找到其出端口是port a,为ACCESS端口,则剥掉tag(之前请求报文进入port a之后会被加上tag,以致能够区分识别出VLAN 1的其他端口与VLAN 1 interface)转发给PC_A。
    ⑤PC_A收到网关的MAC地址,则将发给PC_E的报文修改目标MAC为VLAN 1 interface即网关的MAC地址,而目标IP依旧是PC_E的IP:192.168.20.1,然后封装以太头部以单播形式发送出去。
    ⑥SW 1在收到这个数据包后,因为“目的MAC地址”为交换机自己VLAN接口的MAC地址,而且“目的IP地址”和“源IP地址”不在同一网段,所以直接提交到三层,根据包中的“目的IP地址”(PC_E的IP地址)在三层硬件转发表中查看有无对应表项,因为是第一次通信,所以结果是查找失败,于是将数据包再转送到CPU去进行软件路由处理。
    ⑦ CPU同样会根据包中的“目的IP地址”去查找其软件路由表,发现匹配了一个直连网段(PC_E对应的网段),于是继续查在ARP表中查找对应的MAC地址项。同样是由于是第一次查找,所以仍然查找失败。如果在ARP表中找到了对应的MAC地址,则数据可以直接由软件路由表转发了。
    ⑧如果没查找到则以PC_E的目标IP为请求对象,在其所在VLAN 2的目标网段内发送ARP请求广播(目标MAC为全0,目标IP为192.168.20.1,源MAC为VLAN 2 interface对应MAC,源IP为VLAN 2 interface对应IP,192.168.20.254),PC_E则先缓存网关的ARP表项,然后以ARP单播形式回复自己的MAC地址ME给网关192.168.20.254,SW 1的CPU则根据回复的报文更新记三层转发表项,记录到PC_E的IP、MAC、出端口、VLAN ID等信息,此时三层转发表中有了PC_A和PC_E的转发表项。另外缓存PC_E的ARP表项与FDB表项目。
    ⑨三层交换机的CPU根据获取到的目标主机MAC和现有的直连路由信息将PC_A发来的数据包转发给PC_E,这就是一次单方向的三层转发过程,其中也大量涉及到了二层转发(PC_A在VLAN 1内广播请求网关MAC,交换机CPU控制在VLAN2内广播请求PC_E的MAC等)。
    ⑩当PC_E回复PC_A报文时,与PC_A步骤相同,只是在PC_E上已经存在了网关ARP表项、交换机上已经存在了到PC_A的三层转发表项、FDB表项等,所以会更简单些。另外由于三层转发表项的存在,因此PC_E回复PC_A的报文会直接根据三层转发表进行硬件转发,而不是CPU路由软件转发,效率会更快。

    展开全文
  • 本文简要介绍了三层以太网交换机二三层转发机制,主要目的是帮助读者进一步了解交换机的基本原理及转发流程,以期有利于更好的从事设备维护工作和建立于进一步学习的索引。 三层以太网交换机的转发机制主要分为两...
  • 三层交换机转发原理

    2013-10-11 09:46:26
    三层交换机很有用的入门原理,详细介绍了层,三层转发原理
  • 交换机三层交换原理

    千次阅读 2019-05-23 22:44:45
    本文简要介绍了三层以太网交换机二三层转发机制,主要目的是帮助读者进一步了解交换机的基本原理及转发流程,以期有利于更好的从事设备维护工作和建立于进一步学习的索引。 三层以太网交换机的转发机制主要分为两...

    三层以太网交换机基本原理及转发流程

    本文简要介绍了三层以太网交换机的二三层转发机制,主要目的是帮助读者进一步了解交换机的基本原理及转发流程,以期有利于更好的从事设备维护工作和建立于进一步学习的索引。

    三层以太网交换机的转发机制主要分为两个部分:二层转发和三层交换。

    1.       二层转发流程

    1.1.       MAC地址介绍

    MAC地址是48 bit二进制的地址,如:00-e0-fc-00-00-06。可以分为单播地址、多播地址和广播地址。

    单播地址:第一字节最低位为0,如:00-e0-fc-00-00-06

    多播地址:第一字节最低位为1,如:01-e0-fc-00-00-06

    (问题1:以03开头的MAC地址是单播MAC地址还是多播MAC地址)

    广播地址:48位全1,如:ff-ff-ff-ff-ff-ff

    注意

    1)普通设备网卡或者路由器设备路由接口的MAC地址一定是单播的MAC地址才能保证其与其它设备的互通。

    2)MAC地址是一个以太网络设备在网络上运行的基础,也是链路层功能实现的立足点。

    1.2.       二层转发介绍

    交换机二层的转发特性,符合802.1D网桥协议标准。

    交换机的二层转发涉及到两个关键的线程:地址学习线程和报文转发线程。

    学习线程如下:

    1)交换机接收网段上的所有数据帧,利用接收数据帧中的源MAC地址来建立MAC地址表;

    2)端口移动机制:交换机如果发现一个包文的入端口和报文中源MAC地址的所在端口(在交换机的MAC地址表中对应的端口)不同,就产生端口移动,将MAC地址重新学习到新的端口;

    3)地址老化机制:如果交换机在很长一段时间之内没有收到某台主机发出的报文,在该主机对应的MAC地址就会被删除,等下次报文来的时候会重新学习。

    注意:老化也是根据源MAC地址进行老化。

    报文转发线程:

    1)交换机在MAC地址表中查找数据帧中的目的MAC地址,如果找到,就将该数据帧发送到相应的端口,如果找不到,就向所有的端口发送;

    2)如果交换机收到的报文中源MAC地址和目的MAC地址所在的端口相同,则丢弃该报文;

    3)交换机向入端口以外的其它所有端口转发广播报文。

    1.3.       VLAN二层转发介绍

    报文转发线程:

    引入了VLAN以后对二层交换机的报文转发线程产生了如下的影响:

    1)交换机在MAC地址表中查找数据帧中的目的MAC地址,如果找到(同时还要确保报文的入VLAN和出VLAN是一致的),就将该数据帧发送到相应的端口,如果找不到,就向(VLAN内)所有的端口发送;

    2)如果交换机收到的报文中源MAC地址和目的MAC地址所在的端口相同,则丢弃该报文;

    3)交换机向(VLAN内)入端口以外的其它所有端口转发广播报文。

    以太网交换机上通过引入VLAN,带来了如下的好处:

    1)限制了局部的网络流量, 在一定程度上可以提高整个网络的处理能力。

    2)虚拟的工作组,通过灵活的VLAN设置,把不同的用户划分到工作组内;

    3)安全性,一个VLAN内的用户和其它VLAN内的用户不能互访,提高了安全性。

    另外,还有常见的两个概念VLAN的终结和透传,从字面意思上就可以很好的了解这两个概念。所谓VLAN的透传就是某个VLAN不仅在一台交换机上有效,它还要通过某种方法延伸到别的以太网交换机上,在别的设备上照样有效;终结的意思及相对,某个VLAN的有效域不能再延伸到别的设备,或者不能通过某条链路延伸到别的设备。

    VLAN透传可以使用802.1Q技术,VLAN终结可以使用PVLAN技术。

    IEEE802.1Q协议是VLAN的技术标准,主要是修改了标准的帧头,添加了一个tag字段,其中包含了VLANID等VLAN信息,具体实现这里不谈,如果有兴趣可以看相关的标准和资料。

    注意:在Trunk端口转发报文的时候,如果报文的VLAN Tag等于端口上配置的默认VLAN ID,则该报文的Tag应该去掉,对端收到这个不带Tag信息的报文后,从端口的PVID获得报文的所属VLAN信息,因此配置的时候必须保证连接两台交换机之间的一条Trunk链路两端的PVID设置相同。

    为什么要去Tag呢?

    这样做是为了保证一般的用户插到Trunk上以后,仍旧可以正常通信,因为普通用户无法识别带有802.1Q Vlan信息的报文。

    使用802.1Q技术可以很好的实现VLAN的透传,可是有的时候需要把VLAN终结掉,也就是说这个VLAN的边界在哪里终止,PVLAN技术可以很好的实现这个功能, 同时达到节省VLAN的目的。cisco的PVLAN意思是privatevlan,而我们的PVLAN意思是primary vlan。

    这里的VLAN有两类:Primaryvlan和secondary vlan(子VLAN)。

    实现了接入用户二层报文的隔离,同时上层交换机下发的报文可以被每一个用户接收到,简化了配置,节省了VLAN资源。具体实现这里不谈,如果有兴趣可以相关资料。

    2.       三层交换流程

    用VLAN分段,隔离了VLAN间的通信,用支持VLAN的路由器(三层设备)可以建立VLAN间通信。但使用路由器来互联企业园区网中不同的VLAN显然不合时代的潮流。因为我们可以使用三层交换来实现。

    差别1(性能):传统的路由器基于微处理器转发报文,靠软件处理,而三层交换机通过ASIC硬件来进行报文转发,性能差别很大;

    差别2(接口类型):三层交换机的接口基本都是以太网接口,没有路由器接口类型丰富;

    差别3:三层交换机,还可以工作在二层模式,对某些不需路由的包文直接交换,而路由器不具有二层的功能。

    首先让我们看一下设备互通的过程:

     

    如图所示:交换机上划分了两个VLAN,在VLAN1,VLAN2上配置了路由接口用来实现vlan1和vlan 2之间的互通。

    A和B之间的互通(以A向B发起ping请求为例):

    1) A检查报文的目的IP地址,发现和自己在同一个网段;

    2) A---->B  ARP请求报文,该报文在VLAN1内广播;

    3) B---->A  ARP回应报文;

    4) A---->B   icmp request;

    5) B---->A   icmp reply;

     

    A和C之间的互通(以A向C发起ping请求为例):

    1) A检查报文的目的IP地址,发现和自己不在同一个网段;

    2) A---->switch(int vlan 1)ARP请求报文,该报文在VLAN1内广播;

    3) 网关---->A  ARP回应报文;

    4) A---->switch    icmp request(目的MAC是 int vlan 1的MAC,源MAC是A的MAC,目的IP是C,源IP是A);

    5) switch收到报文后判断出是三层的报文。检查报文的目的IP地址,发现是在自己的直连网段;

    6) switch(intvlan 2)---->C   ARP请求报文,该报文在VLAN2内广播;

    7) C--->switch(int vlan 2) ARP回应报文;

    8) switch(intvlan 2)---->C  icmp request (目的MAC是 C 的MAC,源MAC是int vlan 2的MAC,目的IP是C,源IP是A)同步骤4)相比报文的MAC头进行了重新的封装,而IP层以上的字段基本上不变;

    9) C---->A   icmp reply,这以后的处理同前面icmprequest的过程基本相同。

    以上的各步处理中,如果ARP表中已经有了相应的表项,则不会给对方发ARP请求报文。

    怎么样来区分二和三层的数据流?

    3526产品是三层以太网交换机,在其处理流程中既包括了二层的处理功能,又包括了三层的处理功能。

    区别二三层转发的基本模型:

     

    如图所示:

    三层交换机划分了2个VLAN, A和B之间的通信是在一个VLAN内完成,对与交换机而言是二层数据流,A和C之间的通信需要跨越VLAN,是三层的数据流。

    上面提到的是宏观的方法,具体到微观的角度,一个报文从端口进入后,Swtich设备是怎么来区分二层包文,还是三层报文的呢?

    从A到B的报文由于在同一个VLAN内部,报文的目的MAC地址将是主机B的MAC地址,而从A到C的报文,要跨越VLAN,报文的目的MAC地址是设备虚接口VLAN1上的MAC地址。

    因此交换机区分二三层报文的标准就是看报文的目的MAC地址是否等于交换机虚接口上的MAC地址。

    以S3526交换机为例,三层交换机整个处理流程中分成了三个大的部分:

    1)平台软件协议栈部分

    这部分中关键功能有:

    运行路由协议,维护路由信息表;

    IP协议栈功能,在整个系统的处理流程中,这部分担负着重要的功能,当硬件不能完成报文转发的时候,这部分可以代替硬件来完成报文的三层转发。另外对交换机进行telnet,ping, ftp,snmp的数据流都是在这部分来处理。

    举例:

    showip route:

    RoutingTables:

    Destination/Mask   Proto  Pre Metric      Nexthop         Interface

    0.0.0.0/0          Static   60   0      10.110.255.9  VLAN-Interface2

    10.110.48.0/21     Direct  0    0      10.110.48.1   VLAN-Interface1

    10.110.48.1/32     Direct  0   0      127.0.0.1      InLoopBack0

    10.110.255.8/30    Direct   0    0    10.110.255.10  VLAN-Interface2

    10.110.255.10/32   Direct   0    0       127.0.0.1      InLoopBack0

    127.0.0.0/8        Direct   0    0       127.0.0.1      InLoopBack0

    127.0.0.1/32       Direct  0    0      127.0.0.1      InLoopBack0   

     

    维护ARP表

    show arp: 

    IpAddress     Mac_Address  VLAN ID    Port Name          Type

    10.110.255.9  00e0.fc00.5518     2     GigabitEthernet2/1     Dynamic

    10.110.51.75  0010.b555.f039     1        Ethernet0/9        Dynamic

    10.110.54.30  0800.20aa.f41d    1        Ethernet0/10       Dynamic

    10.110.51.137  0010.a4aa.fce6    1        Ethernet0/12       Dynamic

    10.110.50.90  0010.b555.e04f     1         Ethernet0/8       Dynamic

    2)硬件处理流程

    主要的表项是:二层MAC地址表,和三层的ipfdb表,这两个表中用于保存转发信息,在转发信息比较全的情况下,报文的转发和处理全部由硬件来完成处理,不需要软件的干预。这两个表的功能是独立的,没有相互的关系,因为一个报文只要一进入交换机,硬件就会区分出这个包是二层还是三层。非此即彼。

    例如:show mac all:

    MAC ADDR   VLANID  STATE     PORT INDEX   AGING TIME(s)

    0000.21cf.73f4     1    Learned         Ethernet0/19          266

    0002.557c.5a79     1     Learned         Ethernet0/12          225

    0004.7673.0b38     1   Learned         Ethernet0/9         262

    0005.5d04.9648     1      Learned         Ethernet0/16        232

    0005.5df5.9f64      1      Learned        Ethernet0/16        300

    MAC地址表是精确匹配的IVL方式, 其中关键的参数是:Vlan ID,  Port index。

     

    例如:show ipfdb all:

    0: System  1: Learned 2:  UsrCfg Age  3: UsrCfg noAge  Other: Error

    Ip Address    RtIf Vtag VTValid        Port        Mac     Status

    10.11.83.77     2    2  Invalid GigabitEthernet2/1 00-e0-fc-00-55-18 1

    10.11.198.28    2    2 Invalid  GigabitEthernet2/100-e0-fc-00-55-18  1

    10.63.32.2      2    2  Invalid GigabitEthernet2/1 00-e0-fc-00-55-18 1

    10.72.255.100   2   2  Invalid  GigabitEthernet2/1 00-e0-fc-00-55-18  2

    10.75.35.103    2   2  Invalid  GigabitEthernet2/1 00-e0-fc-00-55-18  2

    10.75.35.106    2   2  Invalid  GigabitEthernet2/1 00-e0-fc-00-55-18  2

    路由接口索引(RtIf):该索引用来确定该转发表项位于哪个路由接口下面,对3526产品来讲,支持的路由接口数目是32;

    Vlantag: 该值用来表明所处的VLAN,该VLAN和路由接口是对应的;

    Vlantag有效位(VTValid):用来标识转发出去的报文中是否需要插入Vlantag标记。

    端口索引(Port):用来说明该转发表项的出端口;

    下一跳MAC:三层设备每完成一跳的转发,会重新封装报文中的MAC头,硬件ASIC芯片一般依据这个域里面的数值来封装报文头。

    两个重要的概念:

    解析,未解析,每次收到报文,ASIC都会从其中提取出源和目的地址在MAC Table或者 IP Fdb Table中进行查找,如果地址在转发表中可以找到,则认为该地址是解析的,如果找不到,则认为该地址是未解析的。根据这个地址是源,还是目的,还可以有源解析,目的未解析等等的组合。

    对于二层未解析,硬件本身可以将该报文在VLAN内广播,但是对于三层报文地址的未解析报文硬件本身则不对该报文进行任何的处理,而产生CPU中断,靠软件来处理。

    硬件部分的处理可以用这句话来描述:

    收到报文后,判断该报文是二或是三层报文,然后判断其中的源,目的地址是否已经解析,如果已经解析,则硬件完成该报文的转发,如果是未解析的情况,则产生CPU中断,靠软件来学习该未解析的地址。

    3)驱动代码部分

    其中关键的核心有:

    地址解析任务:在该任务中对已经报上来的未解析的地址进行学习,以便硬件完成后续的报文的转发而不需软件干预。

    地址管理任务:为了便于软件管理和维护,软件部分保存了一份同硬件中转发表相同的地址表copy。

    fib(forwarding information base)表: 这个表的信息来源于iproute table中的路由信息,之所以把它放在了driver部分, 是为了地址解析任务在学IP地址时查找的方便。

    举例:

    showfib:

    Destination/Mask     Nexthop        Flag      Interface

    0.0.0.0/0            10.110.255.9      I    VLAN-Interface2

    10.110.48.0/21       10.110.48.1       D    VLAN-Interface1

    10.110.48.1/32       127.0.0.1         D    InLoopBack0

    10.110.255.8/30      10.110.255.10     D    VLAN-Interface2

    10.110.255.10/32     127.0.0.1         D    InLoopBack0

    127.0.0.0/8          127.0.0.1         D    InLoopBack0   

    三层转发主要涉及到两个关键的线程:

    地址学习线程和报文转发线程,这个和二层的线程是类似的;

    1)报文转发线程主要根据地址学习线程生成的转发表(ipfdbtable)信息来对报文进行转发,如果里面的信息足够多,这个转发的过程全部由硬件来完成,如果信息不够,则会要求地址学习线程来进行学习,同时该报文硬件不能转发,会交给软件协议栈来进行转发。

     

    2)地址学习线程主要用来生成硬件转发表(ipfdb table)

    其实ipfdb table和二层的MAC地址表也是类似的,只不过里面的具体表项所代表的含义和所起的作用不同罢了。

    有一个问题:在路由器等软件转发引擎中,每收一个报文都会去查路由表查下一跳,然后再查ARP表找下一跳的MAC,可是在三层交换机(如S3526)中,报文转发的时候不需要去查路由表和ARP表,这样的话,这两个表是不是就没有什么作用了?

    回答当然是否定的,在S3526的三层转发流程中,过程一般都是这样的,第一个报文硬件无法转发,要进行IP地址的学习,同时为了保证不丢包,该报文也由软件来进行转发,在学习完成以后,第二,第三个报文以后就一直是由硬件来完成转发了,这个过程也可以套用“一次路由,多次交换”来形象的进行总结,在一次路由中,要利用路由表和ARP表来学习IP地址,和转发第一个报文,在以后的多次交换过程中,则只要有ipfdbtable就可以了。

    展开全文
  • 三层转发原理详细介绍 进一步熟悉路由器和交换机基本原理 三层转发原理详细介绍 进一步熟悉路由器和交换机基本原理
  • 本文简要介绍了三层以太网交换机二三层转发机制,主要目的是帮助读者进一步了解交换机的基本原理及转发流程,以期有利于更好的从事设备维护工作和建立于进一步学习的索引。 三层以太网交换机的转发机制主要分为两...

    三层以太网交换机基本原理及转发流程

    本文简要介绍了三层以太网交换机的二三层转发机制,主要目的是帮助读者进一步了解交换机的基本原理及转发流程,以期有利于更好的从事设备维护工作和建立于进一步学习的索引。


    三层以太网交换机的转发机制主要分为两个部分:二层转发和三层交换

    1. 二层转发流程

    1.1. MAC地址介绍

    MAC地址是48 bit二进制的地址,如:00-e0-fc-00-00-06。可以分为单播地址、多播地址和广播地址。

    单播地址:第一字节最低位为0,如:00-e0-fc-00-00-06

    多播地址:第一字节最低位为1,如:01-e0-fc-00-00-06

    (问题1:以03开头的MAC地址是单播MAC地址还是多播MAC地址)

    广播地址:48位全1,如:ff-ff-ff-ff-ff-ff

    注意:

    1)普通设备网卡或者路由器设备路由接口的MAC地址一定是单播的MAC地址才能保证其与其它设备的互通。

    2)MAC地址是一个以太网络设备在网络上运行的基础,也是链路层功能实现的立足点。

    1.2. 二层转发介绍

    交换机二层的转发特性,符合802.1D网桥协议标准。

    交换机的二层转发涉及到两个关键的线程:地址学习线程报文转发线程

    学习线程如下:

    1)交换机接收网段上的所有数据帧,利用接收数据帧中的源MAC地址来建立MAC地址表;

    2)端口移动机制:交换机如果发现一个包文的入端口和报文中源MAC地址的所在端口(在交换机的MAC地址表中对应的端口)不同,就产生端口移动,将MAC地址重新学习到新的端口;

    3)地址老化机制:如果交换机在很长一段时间之内没有收到某台主机发出的报文,在该主机对应的MAC地址就会被删除,等下次报文来的时候会重新学习。

    注意: 老化也是根据源MAC地址进行老化。

    报文转发线程:

    1)交换机在MAC地址表中查找数据帧中的目的MAC地址,如果找到,就将该数据帧发送到相应的端口,如果找不到,就向所有的端口发送;

    2)如果交换机收到的报文中源MAC地址和目的MAC地址所在的端口相同,则丢弃该报文;

    3)交换机向入端口以外的其它所有端口转发广播报文。

    1.3. VLAN二层转发介绍

    报文转发线程:

    引入了VLAN以后对二层交换机的报文转发线程产生了如下的影响:

    1)交换机在MAC地址表中查找数据帧中的目的MAC地址,如果找到(同时还要确保报文的入VLAN和出VLAN是一致的),就将该数据帧发送到相应的端口,如果找不到,就向(VLAN内)所有的端口发送;

    2)如果交换机收到的报文中源MAC地址和目的MAC地址所在的端口相同,则丢弃该报文;

    3)交换机向(VLAN内)入端口以外的其它所有端口转发广播报文。

    以太网交换机上通过引入VLAN,带来了如下的好处:

    1)限制了局部的网络流量, 在一定程度上可以提高整个网络的处理能力。

    2)虚拟的工作组,通过灵活的VLAN设置,把不同的用户划分到工作组内;

    3)安全性,一个VLAN内的用户和其它VLAN内的用户不能互访,提高了安全性。

    另外,还有常见的两个概念VLAN的终结和透传,从字面意思上就可以很好的了解这两个概念。所谓VLAN的透传就是某个VLAN不仅在一台交换机上有效,它还要通过某种方法延伸到别的以太网交换机上,在别的设备上照样有效;终结的意思及相对,某个VLAN的有效域不能再延伸到别的设备,或者不能通过某条链路延伸到别的设备。

    VLAN透传可以使用802.1Q技术,VLAN终结可以使用PVLAN技术。

    IEEE802.1Q协议是VLAN的技术标准,主要是修改了标准的帧头,添加了一个tag字段,其中包含了VLANID等VLAN信息,具体实现这里不谈,如果有兴趣可以看相关的标准和资料。

    注意:在Trunk端口转发报文的时候,如果报文的VLAN Tag等于端口上配置的默认VLAN ID,则该报文的Tag应该去掉,对端收到这个不带Tag信息的报文后,从端口的PVID获得报文的所属VLAN信息,因此配置的时候必须保证连接两台交换机之间的一条Trunk链路两端的PVID设置相同。

    为什么要去Tag呢?

    这样做是为了保证一般的用户插到Trunk上以后,仍旧可以正常通信,因为普通用户无法识别带有802.1Q Vlan信息的报文。

    使用802.1Q技术可以很好的实现VLAN的透传,可是有的时候需要把VLAN终结掉,也就是说这个VLAN的边界在哪里终止,PVLAN技术可以很好的实现这个功能, 同时达到节省VLAN的目的。cisco的PVLAN意思是privatevlan,而我们的PVLAN意思是primary vlan。

    这里的VLAN有两类:Primaryvlan和secondary vlan(子VLAN)。

    实现了接入用户二层报文的隔离,同时上层交换机下发的报文可以被每一个用户接收到,简化了配置,节省了VLAN资源。具体实现这里不谈,如果有兴趣可以相关资料。

    2. 三层交换流程

    用VLAN分段,隔离了VLAN间的通信,用支持VLAN的路由器(三层设备)可以建立VLAN间通信。但使用路由器来互联企业园区网中不同的VLAN显然不合时代的潮流。因为我们可以使用三层交换来实现。

    差别1(性能):传统的路由器基于微处理器转发报文,靠软件处理,而三层交换机通过ASIC硬件来进行报文转发,性能差别很大;

    差别2(接口类型):三层交换机的接口基本都是以太网接口,没有路由器接口类型丰富;

    差别3:三层交换机,还可以工作在二层模式,对某些不需路由的包文直接交换,而路由器不具有二层的功能。

    首先让我们看一下设备互通的过程:

    如图所示:交换机上划分了两个VLAN,在VLAN1,VLAN2上配置了路由接口用来实现vlan1和vlan 2之间的互通。

    A和B之间的互通(以A向B发起ping请求为例):

    1) A检查报文的目的IP地址,发现和自己在同一个网段;

    2) A---->B ARP请求报文,该报文在VLAN1内广播;

    3) B---->A ARP回应报文;

    4) A---->B icmp request;

    5) B---->A icmp reply;

    A和C之间的互通(以A向C发起ping请求为例):

    1) A检查报文的目的IP地址,发现和自己不在同一个网段;

    2) A---->switch(int vlan 1)ARP请求报文,该报文在VLAN1内广播;

    3) 网关---->A ARP回应报文;

    4) A---->switch icmp request(目的MAC是 int vlan 1的MAC,源MAC是A的MAC,目的IP是C,源IP是A);

    5) switch收到报文后判断出是三层的报文。检查报文的目的IP地址,发现是在自己的直连网段;

    6) switch(intvlan 2)---->C ARP请求报文,该报文在VLAN2内广播;

    7) C—>switch(int vlan 2) ARP回应报文;

    8) switch(intvlan 2)---->C icmp request (目的MAC是 C 的MAC,源MAC是int vlan 2的MAC,目的IP是C,源IP是A)同步骤4)相比报文的MAC头进行了重新的封装,而IP层以上的字段基本上不变;

    9) C---->A icmp reply,这以后的处理同前面icmprequest的过程基本相同。

    以上的各步处理中,如果ARP表中已经有了相应的表项,则不会给对方发ARP请求报文。

    怎么样来区分二和三层的数据流?

    3526产品是三层以太网交换机,在其处理流程中既包括了二层的处理功能,又包括了三层的处理功能。

    区别二三层转发的基本模型:

    如图所示:

    三层交换机划分了2个VLAN, A和B之间的通信是在一个VLAN内完成,对与交换机而言是二层数据流,A和C之间的通信需要跨越VLAN,是三层的数据流。

    上面提到的是宏观的方法,具体到微观的角度,一个报文从端口进入后,Swtich设备是怎么来区分二层包文,还是三层报文的呢?

    从A到B的报文由于在同一个VLAN内部,报文的目的MAC地址将是主机B的MAC地址,而从A到C的报文,要跨越VLAN,报文的目的MAC地址是设备虚接口VLAN1上的MAC地址。

    因此交换机区分二三层报文的标准就是看报文的目的MAC地址是否等于交换机虚接口上的MAC地址。

    以S3526交换机为例,三层交换机整个处理流程中分成了三个大的部分:

    1)平台软件协议栈部分

    这部分中关键功能有:

    运行路由协议,维护路由信息表;

    IP协议栈功能,在整个系统的处理流程中,这部分担负着重要的功能,当硬件不能完成报文转发的时候,这部分可以代替硬件来完成报文的三层转发。另外对交换机进行telnet,ping, ftp,snmp的数据流都是在这部分来处理。

    举例:

    showip route:

    RoutingTables:

    Destination/Mask Proto Pre Metric Nexthop Interface

    0.0.0.0/0 Static 60 0 10.110.255.9 VLAN-Interface2

    10.110.48.0/21 Direct 0 0 10.110.48.1 VLAN-Interface1

    10.110.48.1/32 Direct 0 0 127.0.0.1 InLoopBack0

    10.110.255.8/30 Direct 0 0 10.110.255.10 VLAN-Interface2

    10.110.255.10/32 Direct 0 0 127.0.0.1 InLoopBack0

    127.0.0.0/8 Direct 0 0 127.0.0.1 InLoopBack0

    127.0.0.1/32 Direct 0 0 127.0.0.1 InLoopBack0

    维护ARP表

    show arp:

    IpAddress Mac_Address VLAN ID Port Name Type

    10.110.255.9 00e0.fc00.5518 2 GigabitEthernet2/1 Dynamic

    10.110.51.75 0010.b555.f039 1 Ethernet0/9 Dynamic

    10.110.54.30 0800.20aa.f41d 1 Ethernet0/10 Dynamic

    10.110.51.137 0010.a4aa.fce6 1 Ethernet0/12 Dynamic

    10.110.50.90 0010.b555.e04f 1 Ethernet0/8 Dynamic

    2)硬件处理流程

    主要的表项是:二层MAC地址表,和三层的ipfdb表,这两个表中用于保存转发信息,在转发信息比较全的情况下,报文的转发和处理全部由硬件来完成处理,不需要软件的干预。这两个表的功能是独立的,没有相互的关系,因为一个报文只要一进入交换机,硬件就会区分出这个包是二层还是三层。非此即彼。

    例如:show mac all:

    MAC ADDR VLANID STATE PORT INDEX AGING TIME(s)

    0000.21cf.73f4 1 Learned Ethernet0/19 266

    0002.557c.5a79 1 Learned Ethernet0/12 225

    0004.7673.0b38 1 Learned Ethernet0/9 262

    0005.5d04.9648 1 Learned Ethernet0/16 232

    0005.5df5.9f64 1 Learned Ethernet0/16 300

    MAC地址表是精确匹配的IVL方式, 其中关键的参数是:Vlan ID, Port index。

    例如:show ipfdb all:

    0: System 1: Learned 2: UsrCfg Age 3: UsrCfg noAge Other: Error

    Ip Address RtIf Vtag VTValid Port Mac Status

    10.11.83.77 2 2 Invalid GigabitEthernet2/1 00-e0-fc-00-55-18 1

    10.11.198.28 2 2 Invalid GigabitEthernet2/100-e0-fc-00-55-18 1

    10.63.32.2 2 2 Invalid GigabitEthernet2/1 00-e0-fc-00-55-18 1

    10.72.255.100 2 2 Invalid GigabitEthernet2/1 00-e0-fc-00-55-18 2

    10.75.35.103 2 2 Invalid GigabitEthernet2/1 00-e0-fc-00-55-18 2

    10.75.35.106 2 2 Invalid GigabitEthernet2/1 00-e0-fc-00-55-18 2

    路由接口索引(RtIf):该索引用来确定该转发表项位于哪个路由接口下面,对3526产品来讲,支持的路由接口数目是32;

    Vlantag: 该值用来表明所处的VLAN,该VLAN和路由接口是对应的;

    Vlantag有效位(VTValid):用来标识转发出去的报文中是否需要插入Vlantag标记。

    端口索引(Port):用来说明该转发表项的出端口;

    下一跳MAC:三层设备每完成一跳的转发,会重新封装报文中的MAC头,硬件ASIC芯片一般依据这个域里面的数值来封装报文头。

    两个重要的概念:

    解析,未解析,每次收到报文,ASIC都会从其中提取出源和目的地址在MAC Table或者 IP Fdb Table中进行查找,如果地址在转发表中可以找到,则认为该地址是解析的,如果找不到,则认为该地址是未解析的。根据这个地址是源,还是目的,还可以有源解析,目的未解析等等的组合。

    对于二层未解析,硬件本身可以将该报文在VLAN内广播,但是对于三层报文地址的未解析报文硬件本身则不对该报文进行任何的处理,而产生CPU中断,靠软件来处理。

    硬件部分的处理可以用这句话来描述:

    收到报文后,判断该报文是二或是三层报文,然后判断其中的源,目的地址是否已经解析,如果已经解析,则硬件完成该报文的转发,如果是未解析的情况,则产生CPU中断,靠软件来学习该未解析的地址。

    3)驱动代码部分

    其中关键的核心有:

    地址解析任务:在该任务中对已经报上来的未解析的地址进行学习,以便硬件完成后续的报文的转发而不需软件干预。

    地址管理任务:为了便于软件管理和维护,软件部分保存了一份同硬件中转发表相同的地址表copy。

    fib(forwarding information base)表: 这个表的信息来源于iproute table中的路由信息,之所以把它放在了driver部分, 是为了地址解析任务在学IP地址时查找的方便。

    举例:

    showfib:

    Destination/Mask Nexthop Flag Interface

    0.0.0.0/0 10.110.255.9 I VLAN-Interface2

    10.110.48.0/21 10.110.48.1 D VLAN-Interface1

    10.110.48.1/32 127.0.0.1 D InLoopBack0

    10.110.255.8/30 10.110.255.10 D VLAN-Interface2

    10.110.255.10/32 127.0.0.1 D InLoopBack0

    127.0.0.0/8 127.0.0.1 D InLoopBack0

    三层转发主要涉及到两个关键的线程:

    地址学习线程和报文转发线程,这个和二层的线程是类似的;

    1)报文转发线程主要根据地址学习线程生成的转发表(ipfdbtable)信息来对报文进行转发,如果里面的信息足够多,这个转发的过程全部由硬件来完成,如果信息不够,则会要求地址学习线程来进行学习,同时该报文硬件不能转发,会交给软件协议栈来进行转发。

    2)地址学习线程主要用来生成硬件转发表(ipfdb table)

    其实ipfdb table和二层的MAC地址表也是类似的,只不过里面的具体表项所代表的含义和所起的作用不同罢了。

    有一个问题:在路由器等软件转发引擎中,每收一个报文都会去查路由表查下一跳,然后再查ARP表找下一跳的MAC,可是在三层交换机(如S3526)中,报文转发的时候不需要去查路由表和ARP表,这样的话,这两个表是不是就没有什么作用了?

    回答当然是否定的,在S3526的三层转发流程中,过程一般都是这样的,第一个报文硬件无法转发,要进行IP地址的学习,同时为了保证不丢包,该报文也由软件来进行转发,在学习完成以后,第二,第三个报文以后就一直是由硬件来完成转发了,这个过程也可以套用“一次路由,多次交换”来形象的进行总结,在一次路由中,要利用路由表和ARP表来学习IP地址,和转发第一个报文,在以后的多次交换过程中,则只要有ipfdbtable就可以了。

    展开全文
  • 交换机三层交换机交换原理

    千次阅读 2018-11-23 15:35:09
    二层交换机原理 发展历程: 交换机之前为集线器,其做的是透明转发,即洪范式的转发,之后为网桥,软件式的网桥,其传输速度慢,然后出现交换机,即硬件网桥。 集线器物理原理: 接口先将数据传输到总线上,但其...

    二层交换机原理

    发展历程:
    交换机之前为集线器,其做的是透明转发,即洪范式的转发,之后为网桥,软件式的网桥,其传输速度慢,然后出现交换机,即硬件网桥。

    集线器物理原理:
    接口先将数据传输到总线上,但其如果两方都进行数据传输,传输博之间会产生冲突问题,为解决这个问题,出现csma/cd技术,数据单向传输,其他接口也会收到数据
    在这里插入图片描述
    csma/cd:带冲突检测的载波侦听多路访问技术,其侦听总线是否有数据传输,如果有,要避免冲突,冲突检测:数据在传递时会发送冲突信号,接口收到信号后会避让,但会出现同时发送的情况,这时会随机避让
    csma/cd技术是是处在冲突域的解决方案
    目的:实现数据链路层的高速多路精确转发,扩充接口
    实现:
       1)从物理设计上:二层接口+控制+背板
         将一根总线多化(背板),可以理解为每两个接口都有多个通道,但出现的问题是数据不知道走哪个通道,所以要进行控制,即查看cam表
       2)cam表:即Mac地址表,查表将数据转发,其大小是固定的
         构成为:Mac、接口、VLAN映射关系
         形成:自动学习:帧数据进入交换机,交换机自动识别源Mac地址及进入接口,如果cam表中没有记录,则把映射关系记录在cam表中
            手工指定:

    mac address-table static 1234.1234.1234 vlan 2 interface f0/1
    

           老化时间:5min 修改:

    mac address-table aging-time xxx
    

             改大是为了网络稳定,变化少
             改小是为了遇到Mac地址攻击,或者是Mac超出最大条目
               Mac地址攻击:发送垃圾Mac地址,Mac表占满,使交换机处于洪范状态
       3)VLAN:划分广播域
         从设计角度看:
             分割cam表:把cam表分割为以VLAN为单位的独立cam表,规定查询cam表只能查询本VLAN的cam表
             划分接口:VLAN把物理接口划分了VLAN为单位的逻辑归属。
       4)trunk:多交换机间VLAN的通信
         没有trunk多交换机之间要通信时,两个交换机VLAN间连根线即可
         trunk是给数据打标记,所以一根线可以实现数据传输
         从设计角度:trunk接口属于所有VLAN(通过allow VLAN控制)
               帧数据通过trunk携带哪个VLAN标记就可以查看哪个VLAN的cam表

    Native vlan

      概念trunk接口出现native vlan 针对不打标记流量默认归于一个vlan这个vlan就是native vlan
      默认是1(cisco)

    总结:

    洪范情况:1)未知单播:cam表未记录:a、数据第一次发送;b、cam满记录不了
         2)组播或广播
    各接口的转发规则:
     access:
      1) 未带VLAN标记进接口:查阅cam表后转发
      2) 携带VLAN标记进接口:如果VLAN标记与接口划分VLAN一致,则去掉VLAN标记,查接口VLANcam表,然后转发;如果不一致,则丢弃该数据
     trunk:
      1) 未带VLAN标记进接口:按照native VLAN 识别该数据,查native VLAN cam表,然后转发
      2) 携带VLAN标记进接口:按照携带VLAN ID识别该数据,查携带VLAN cam表然后转发
      3) 数据从trunk出,需要携带转发VLAN标示,并且查看该trunk是否允许该VLAN通过,如果允许则转发。

    PVLAN

    私有VLAN ,不能跨交换机,其目的是加强同一个VLAN下的控制能力
      同一个VLAN下在进行控制,即划分子VLAN:
       团体子VLAN:处于一个团体中可以通信,不同团体之间不能通信
       孤立子VLAN:都不能通信,孤立集团里的也不能通信
         以上两种子VLAN接口类型为PVLAN
       混杂接口,理论上可以和任何一个接口通信
         注意在做混杂映射的时候映射了什么辅vlan这个接口就和什么辅vlan进行通信,不是非要和所有 辅vlan通信的

    在这里插入图片描述

    q-in-q技术

    解决运营商处VLAN不够用的问题
    在这里插入图片描述
    目的:左边VLAN2穿过ISP还是VLAN2
    解决:进入ISP时trunk打标记为VLAN10,出来后拆掉标签VLAN10

    switchport mode dot1q-tunnel
    

    进出运营商是接口模式 先要修改为access-10,后要修改dot1q-tunnel,
    一个dot1q-tunnel多了4个字节,要修改mtu为1504

    Cdp 是传递CDP协议信息:将中间的ISP可以看成线路,实现vtp,stp等功能

    VTP

    VTP 要注意的是client端不能vlan信息存储在nvram,只能存储在RAM里,这样会导致client交换机 重启后会重新获取vlan信息,造成数据延迟。vtp他的更新主要参照修订号,比本端修订号大本端才会同步。

    vtp容易遭到攻击所以一般建议配置vtp 的透明模式。或者先用server+client同步完网络中vlan信息 在把所有交换机模式改为透明,这样即利用了vtp的方便又能保证安全。

    vtp的裁剪
    Server 下起 vtp pruning或者在trunk下手动过滤pruning

    三层交换机原理

    既具有交换又有路由功能的交换机叫三层交换机
    一次路由,多次交换
    做跨VLAN通信时要做一次路由,产生cef表,之后通过查询cef+ARP+邻居表形成的新表来直接转发,不在需要再次查询路由表通过交换转发

    邻居表:IP+接口
    在这里插入图片描述
    ARP表 :IP+mac
    在这里插入图片描述
    cef表
    在这里插入图片描述
      形成路由表(cef表)+接口+Mac转发表
      三层转发需要指出目标IP从哪个三层接口出去以及下一跳(cef表可以消除逐条查找和递归),这些信息不足以让二层交换机执行,让二层交换机执行要让交换机知道从哪个二层口出去,所以先查邻居表,邻居表可以告知三层出口以及吓一跳对应的二层接口,这时三层数据找到了二层出口但是缺少二层封装的Mac地址;然后查询ARP表,ARP表可以告知三层数据出去所需二层Mac封装
      最后形成 目的IP—下一跳+二层出接口+下一跳Mac+VLAN

    展开全文
  • 二三层转发原理

    千次阅读 2016-02-18 15:27:07
    三层以太网交换机的转发机制主要 分为两个部分,二层转发和三层交换。  先讲二层转发流程。   1、 MAC地址介绍  MAC地址是48 bit进制的地址,如:00-e0-fc-00-00-06。  可以分为单播地址、多播地址和
  • 交换机三层交换机和路由器的原理及区别 层交换技术是发展比较成熟,交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部...
  • #三层交换机转发原理的概念 三层交换(也称多层交换技术,或IP交换技术),第三层交换是在网络交换机中...三层交换技术就是:层交换技术+三层转发技术。 ##实验环境及准备工作 1,打开GNS3 2,准备2台PC机 ...
  • 交换机:层交换技术是发展比较成熟,交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。...三层交换机: 三层交换...
  • 路由器只要进行CPU的软转发,然后性能和速度瓶颈小,很容易受到限制; 交换机是基于芯片的快速转发; 走过路过,点个连 一起学习,一起进步 技术交流:QQ---1740602259 ...
  • 二层交换技术是发展比较成熟,二层交换机属数据链路设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。 具体如下: (1)当交换机从某个...
  • 华为三层以太网交换机基本原理及转发流程   1. 二层转发流程 1.1. MAC地址介绍 MAC 地址是48 bit 进制的地址,如:00-e0-fc-00-00-06。  可以分为单播地址、多播地址和广播地址...

空空如也

空空如也

1 2 3 4 5 ... 15
收藏数 300
精华内容 120
关键字:

交换机二三层转发原理