网络计算机网络网络

Vlan间路由和三层交换机工作原理 - kummer话你知

2016-12-22  本文已影响1412人  kummerwu

问题的来源

在交换机上划分VLAN后,VLAN间的计算机就无法直接通信了。(Vlan间广播域是隔离的,)VLAN间的通信需要借助第三层设备,我们可以使用路由器来实现这个功能,如果使用路由器通常会采用单臂路由模式。

实践上,VLAN间的路由大多是通过三层交换机实现的,三层交换机可以看成是路由器加交换机,然而因为采用了特殊的技术,其数据处理能力比路由器要大得多。本章将分别介绍两种方法的具体配置。

回顾一下二层交换流程

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

  1. MAC的学习:交换机接收网段上的所有数据帧,利用接收数据帧中的源MAC地址来建立MAC地址表;
  1. MAC的漂移:交换机如果发现一个包文的入端口和报文中源MAC地址的所在端口不同,就产生端口移动,将MAC地址重新学习到新的端口;
  2. MAC的老化: 如果交换机在很长一段时间之内没有收到某台主机发出的报文,在该主机对应的MAC地址就会被删除,等下次报文来的时候会重新学习。

**二层报文转发流程: **

  1. 已知单播-转发:交换机在MAC地址表中查找数据帧中的目的MAC地址,如果找到,就将该数据帧发送到相应的端口,
  1. 未知单播-泛洪:如果找不到,就向入端口以外的其它所有端口发送;
  2. 同端口-不转发:如果交换机收到的报文中源MAC地址和目的MAC地址所在的端口相同,则丢弃该报文;
  3. 组播和广播-泛洪:交换机向入端口以外的其它所有端口转发广播报文。

上面流程是简单的桥交换流程,增加了VLAN以后,所有流量都在VLAN内部交换。
**支持VLAN以后的交换机报文转发线程: **:

  1. 交换机在MAC地址表中查找数据帧中的目的MAC地址,如果找到(同时还要确保报文的入VLAN和出VLAN是一致的),就将该数据帧发送到相应的端口,如果找不到,就向(VLAN内)所有的端口发送;
  1. 如果交换机收到的报文中源MAC地址和目的MAC地址所在的端口相同,则丢弃该报文;
  2. 交换机向(VLAN内)入端口以外的其它所有端口转发广播报文。

简单的VLAN间路由流程

利用路由器进行VLAN间通讯

每一个VLAN有一个端口连接到路由器,所有终端以该路由器为默认网关。并由该路由器完成VLAN间报文的转发过程。比如10.1.1.1要与11.1.1.1终端通讯。

通过路由器实现跨VLAN的报文转发

单臂路由工作原理

从上面我们看到,如果要通过路由器转发三层流量,在交换机和路由器之间,每一个VLAN需要有一个链路连接,当VLAN很多的时候,这将耗费大量的路由器接口,而路由器接口成本是非常高的。为了节约路由器接口,一个解决方案是路由器支持VLAN子接口。

VLAN子接口
1. 所谓子接口,就是是通过协议和技术将一个物理接口(interface)虚拟出来的多个逻辑接口。
2. VLAN子接口,就是通过VLAN技术,将一个物理接口,虚拟出多个逻辑接口,
   VLAN子接口上发送的报文,会打上Vlan-tag,用于区分不同的VLAN链路。
单臂路由器工作原理示意图

通过配置路由器上的VLAN子接口,路由器和交换机物理上只需要一个端口连接,通过报文上的VLAN-tag区分不同的逻辑链路。这样节省了大量的端口资源。

三层交换机

三层交换机的原理模型可以认为是:三层交换机 = 二层交换机+三层路由器
三层交换机既有二层交换单元,内部还有一个三层路由模块。(原理上可以认为三层交换机就是把一个交换机和一个路由器装在一个盒子里。虽然原理上我们可以这样简单认为,但在具体实现上,特别是报文的转发流程上,还是有很大差异的。所以三层交换机在转发性能和成本上都有很大的优势)

三层交换机的原理模型:交换模块+路由模块

在三层交换机上,可以在一个VLAN配置三层接口(cisco成为交换机虚拟接口 SVI:switch virtual interface),这个SVI接口就是上面原理模型中的那个路由模块对应的接口。它具备普通路由器接口的基本特性,比如:

三层交换机的转发流程

交换机的转发行为主要借助于下面几张表:

|表项|KEY|VALUE|
|--||
|二层MAC转发表(硬件) | MAC,VLAN | PORT|
|三层主机路由表(硬件)| IP | NH_IP , NH_MAC,VLAN,PORT|
|三层网段路由表(软件)|Network,Mask|NH_IP,PORT|
|ARP表(软件)|IP|MAC,VLAN,PORT|

三层主机路由表相当于【网段路由表+ARP表】的组合,用于加快交换流程。三层主机路由表的生成有两种方式:

  • 按需生成:到达该目的地的第一个报文转发时,有软件进行三层转发后生成。并且该目的地址一定时间内没有流量将被老化。这就是所谓的“一次路由,多次交换”。
  1. 准备工作:
    三层交换机为VLAN配置三层接口IP后,会在交换芯片的MAC地址表中添加三层接口MAC+VID的表项,并且为表项的三层转发标志(Route标志)置位。
  2. 转发流程

参考资料:
http://wenku.baidu.com/link?url=zsiRG0ZSOcuaH1lgOg6LilUdKMNYuPv3n5sUq5RmKrr5tFtMVhVXPJDJc1yR8QW2YQFAWwkn_pglvkLPv23fhS15Kdojp3gEmJ--zjULOaO

上一篇 下一篇

猜你喜欢

热点阅读