以太网交换机基础培训教材
MACDMACAVLAN 2......端口2MACDMACAVLAN 2......VLAN IDMAC地址2332MACAMACBMACCMACD所在端口1122端口1
图 15 IVL地址学习方式转发流程
? SVL地址学习方式(参见图16)
1)根据帧的目的MAC查MAC转发表(即L2FDB),查找相应的出端口。根据现有L2FDB表,报文应该从端口2发送出去;
2)判断出端口的VLAN ID和报文Tag Header内的VLAN ID是否匹配,匹配则转发,不匹配则丢弃;
3)如果在L2FDB表中查找不到该目的MAC,则判断出端口的VLAN ID和报文Tag Header内的VLAN ID是否匹配,不匹配直接丢弃;匹配则在该VLAN内广播;
4)L2FDB表中MAC地址通过老化机制来更新; 5)在转发的过程中,不会对帧的内容进行修改
MACDMACAVLAN 2......端口2MACDMACAVLAN 2......MAC地址所在端口MACA1122端口1MACBMACCMACD
图 16 SVL地址学习方式转发流程
前文已经提到VLAN的优点之一就是限制了广播,下图就能很好地说明这个问题。从图中,可以很清楚地看到,广播报文被限制了每个VLAN内,大大地降低了广播对以太网带宽的消耗。
Page 21 , Total 48 第21页,共48页
以太网交换机基础培训教材
图 17 支持VLAN交换机冲突域和广播域
4 三层交换机基本原理
4.1 三层交换机的提出
传统的网络界有一个规则,即局域网内的业务流类型遵循“80/20规则”:80/20 流量模式指用户数据流量的80% 在本地网段,只有20%的数据流量通过路由器进入其它网段。
采用80/20规则的网络,用户的网络资源都在同一个网段内。这些资源包括网络服务器、打印机、共享目录和文件等。因此在这种网络内,路由器完全可以胜任且其构建网络的成本完全可以被用户接受。
但是,随着INTERNET/INTARNET应用的兴起和服务器集群的出现,使得传统的80/20流量模式发生了转变。网络中大部分数据流经主干,逻辑子网内部数据流量不大,用户经常需要访问本子网以外的资源,“80/20规则”对于多数企业网络已经不适用了。因此,现在局域网中的业务流有两个突出的特点,一是总的业务流在增加;二是子网络间的业务流在增加。
为了解释这一概念,假设网络业务流的总量不变,且网络业务流比例由80/20变为20/80。这意味着需要在子网间进行路由的业务流增加到过去的4倍。这是否意味着网络中需要4倍的路由器呢?答案是否定的,实际上需要比4倍更多的路由器。因为当路由器数量增加时,路由器之间的联系与合作占路由器全部工作的比重就会增加。所以:随着子网络间业务流的增加,路由能力也相应地需要增加。
举例来说,假设路由能力增加4倍需要6倍的路由器。现在如果业务流类型改变的同时业务流的总量翻了一番,那么网络中所需的路由器总数为原来的12倍。如果按照传统的路由产品的成本进行计算,这对于大多数用户来说无疑都是一个难以接受的预算。所以:局域网内子网络间业务流的适度增加伴随着总业务流的适度增加,都将使得采用传统的路由器来满足路由功能的需求在经济上不大可行。
总结一下,三层交换技术和交换机的提出主要基于以下原因:
Page 22 , Total 48 第22页,共48页
以太网交换机基础培训教材
? ?
二层交换技术极大的提升了以太网的性能,但仍然不能完全满足局域网的需要; 为了将广播和本地流量限制在一定的范围内,交换式以太网采取划分逻辑子网(VLAN)的方式; ?
VLAN间的互通传统上需要由路由器来完成,但路由器配置复杂,造价昂贵,而且转发速度容易成为网络的瓶颈; ?
新20/80规则的兴起,80%的流量需要跨越VLAN,路由器不堪重负;
4.2 三层交换机基本特征
应该说,三层交换机与传统路由器具有相同的功能: ? ? ? ?
根据IP地址进行选路 进行三层的校验和 使用生存时间(TTL) 对路由表进行更新和维护
二者最大的区别在于三层交换采用ASIC硬件进行包转发,而传统路由器采用CPU进行包转发。所以,相比于传统路由器三层交换具有以下优点: ? ? ?
基于硬件的包转发,转发效率高 低时延 低花费
4.3 三层交换机的功能模型
为了便于大家对三层交换机有一个感性的了解,我们以下图来说明。
Page 23 , Total 48 第23页,共48页
以太网交换机基础培训教材
图 18 三层交换机功能模型
图中,右边是一个三层交换机,其实现的功能等同于左边一个VLAN二层交换机和路由器组成的网络。也就是说,三层交换机把支持VLAN的二层交换机和路由器的功能集成在一起了,既有二层交换功能,也有三层路由功能。因此,三层交换机也称为路由交换机。一般来说,三层交换机的功能分别通过二层VLAN转发引擎和三层转发引擎两个部分来实现:二层VLAN引擎与支持VLAN的二层交换机的二层转发引擎是相同的,是用硬件支持多个VLAN的二层转发;三层转发引擎使用硬件ASIC技术实现高速的IP转发。三层交换机对应到IP网络模型中,每个VLAN对应一个IP网段,三层交换机中的三层转发引擎在各个网段(VLAN)间转发报文,实现VLAN之间的互通,因此三层交换机的路由功能通常叫做VLAN间路由(Inter-VLAN Routing)
对应于二层交换引擎,三层交换机的如下图所示:
MACMACMACMACMACMAC 二层交换引擎L2FDBL2FDBL2FDB 三层交换引擎L3FDB
图 19 三层交换引擎
在二层上,VLAN之间是隔离的,VLAN内主机可以互通,这一点跟二层交换机中的交换引擎的功能一模一样。一般来说,三层交换机的每个VLAN对应一个网段,不同的IP网段之间的访问要跨越VLAN,要使用三层交换引擎提供的VLAN间路由功能(相当于路由器)。 在使用二层交换机和路由器的组网中,每个需要与其它IP网段(VLAN)通信的IP网段(VLAN)都需要使用一个路由器接口做网关。三层交换机的应用也同样符合IP的组网模型,三层转发引擎就相当于传统组网中的路由器的功能,当需要与其他VLAN通信的时候也要为之在三层交换引擎上分配一个路由接口,用来做VLAN内主机的网关。三层交换机上的这个路由接口是通过配置转发芯片来实现的,与路由器的接口不同,这个接口不是直观可见的。给VLAN指定路由接口的操作,实际上就是为VLAN指定一个IP地址、子网掩码和MAC地址,MAC地址是由设备制造过程中分配的,在配置过程中由交换机自动配置。
Page 24 , Total 48 第24页,共48页
以太网交换机基础培训教材
4.4 三层交换机转发流程
4.4.1 IP网络规则
我们多次提到二层交换、三层路由,那么究竟什么时候选择二层交换、什么时候选择三层路由呢?这就涉及到IP网络通信的基本规则。
每个网络主机、工作站或者服务器都有自己的IP地址和子网掩码。当主机与服务器进行通信的时候,根据自身的IP地址和子网掩码、以及服务器的IP地址,来确定服务器是否和自己处于相同的网段:
?
如果判定在相同网段内,则直接通过地址解析协议(ARP)查找对方的MAC地址,然后把对方的MAC地址填入以太网帧头的目的MAC地址域,将报文发送出去,通过二层交换实现通信; ?
如果判定在不同的网段内,则主机就会自动借助网关来进行通信。主机首先通过ARP来查找设定的网关的MAC地址,然后把网关的MAC地址(而不是对方主机的MAC地址,因为主机认为通信对端不是本地主机)填入以太网帧头的目的MAC地址域,将报文发送给网关,通过三层路由实现通信。
4.4.2 三层转发流程
对于网络设备而言(如三层交换机),接收到一个报文后选择二层转发还是三层转发,判断的依据主要是:报文的目的MAC地址。如果该目的MAC地址和设备内某个VLAN指定的路由接口MAC地址相同,则进行三层转发,否则在VLAN内部进行二层转发。当然,严格地说,设备对报文的目的IP也需要进行判断,因为报文有可能是直接发送给该VLAN接口的。
下面我们来具体看一下三层交换机的转发流程,以下图为例。
Page 25 , Total 48 第25页,共48页