科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道第三层交换与路由瓶颈的解决

第三层交换与路由瓶颈的解决

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

对于不同规模的网络,路由器作用的侧重点有所不同。在主干网上,路由器的主要作用是路由选择。主干网上的路由器,必须知道到达所有下层网络的路径。这需要维护庞大的路由表,并对连接状态的变化作出尽可能迅速的反应。

作者:zdnet安全频道 来源:论坛整理 2008年11月26日

关键字: 路由 交换

  • 评论
  • 分享微博
  • 分享邮件

  一、路由器的瓶颈问题

  路由器工作在OSI模型的第三层——网络层。

  对于不同规模的网络,路由器作用的侧重点有所不同。在主干网上,路由器的主要作用是路由选择。主干网上的路由器,必须知道到达所有下层网络的路径。这需要维护庞大的路由表,并对连接状态的变化作出尽可能迅速的反应。路由器的故障将会导致严重的信息传输问题。在地区网中,路由器的主要作用是网络连接和路由选择,即连接下层各个基层网络单位——园区网,同时负责下层网络之间的数据转发。在园区网内部,路由器的主要作用是分隔子网。早期的互连网基层单位是局域网(LAN),其中所有主机处于同一个逻辑网络中。随着网络规模的不断扩大,局域网演变成以高速主干和路由器连接的多个子网所组成的园区网。在其中,各个子网在逻辑上独立,而路由器就是唯一能够分隔它们的设备,它负责子网间的报文转发和广播隔离,在边界上的路由器则负责与上层网络的连接。

  可见,传统的路由器在网络中有路由、转发、防火墙、隔离广播等作用。但随着网络技术的发展,在大型的局域网络中,用户的数据往往越过本地的网络在网际间传送,传统的路由器常常不堪重负。

  例如在一个划分了VLAN以后的网络中,逻辑上划分的不同网段之间通信仍然要通过路由器转发。由于在局域网上,不同VLAN之间的通信数据量很大,这样,如果路由器要对每一个数据包都路由一次,随着网络上数据量的不断增大,它将成为瓶颈。

  二、第三层交换的概念

  第三层交换技术也称为IP交换技术、高速路由技术等。这是一种利用第三层协议中的信息来加强第二层交换功能的机制。

  三层交换(也称多层交换技术,或IP交换技术)是相对于传统交换概念而提出的。众所周知,传统的交换技术是在OSI网络标准模型中的第二层——数据链路层进行操作的,而三层交换技术是在网络模型中的第三层实现了数据包的高速转发。简单地说,三层交换技术就是:二层交换技术 + 三层转发技术。(如图1)

第三层交换与路由瓶颈的解决(图一)

图1

  具有第三层交换功能的设备是一个带有第三层路由功能的第二层交换机,但它是二者的有机结合,并不是简单的把路由器设备的硬件及软件简单地叠加在局域网交换机上。

  第三层交换的目标是,只要在源地址和目的地址之间有一条更为直接的第二层通路,就没有必要经过路由器转发数据包。第三层交换使用第三层路由协议确定传送路径,此路径可以只用一次,也可以存储起来,供以后使用。之后数据包通过一条虚电路绕过路由器快速发送。

  (1)第三层交换机的种类:

  三层交换机可以根据其处理数据的不同而分为纯硬件和纯软件两大类。

  · 纯硬件的三层技术相对来说技术复杂,成本高,但是速度快,性能好,带负载能力强。其原理是,采用ASIC芯片,采用硬件的方式进行路由表的查找和刷新。(如图2)

第三层交换与路由瓶颈的解决(图二)

 

图2

  当数据由端口接口芯片接收进来以后,首先在二层交换芯片中查找相应的目的MAC地址,如果查到,就进行二层转发,否则将数据送至三层引擎。在三层引擎中,ASIC芯片查找相应的路由表信息,与数据的目的IP地址相比对,然后发送ARP数据包到目的主机,得到该主机的MAC地址,将MAC地址发到二层芯片,由二层芯片转发该数据包。

  · 基于软件的三层交换机技术较简单,但速度较慢,不适合作为主干。其原理是,采用CPU用软件的方式查找路由表。(如图3)

第三层交换与路由瓶颈的解决(图三)

图3

  当数据由端口接口芯片接收进来以后,首先在二层交换芯片中查找相应的目的MAC地址,如果查到,就进行二层转发否则将数据送至CPU.CPU查找相应的路由表信息,与数据的目的IP地址相比对,然后发送ARP数据包到目的主机得到该主机的MAC地址,将MAC地址发到二层芯片,由二层芯片转发该数据包。因为低价CPU处理速度较慢,因此这种三层交换机处理速度较慢。

  (2)第三层交换机工作原理:

  简单的网络:A——E——B,A要给B发送数据,已知目的IP,那么A就用子网掩码取得网络地址,判断目的IP是否与自己在同一网段。如果在同一网段,但不知道转发数据所需的MAC地址,A就发送一个ARP请求,B返回其 MAC地址,A用此MAC封装数据包并发送给交换机,交换机起用二层交换模块,查找MAC地址表,将数据包转发到相应的端口。如果目的IP地址显示不是同一网段的,那么A要实现和B的通讯,在流缓存条目中没有对应MAC地址条,就将第一个正常数据包发送向一个缺省网关,这个缺省网关一般在操作系统中已经设好,对应第三层路由模块,所以可见对于不是同一子网的数据,最先在MAC表中放的是缺省网关的MAC地址;然后就由三层模块接收到此数据包,查询路由表以确定到达B的路由,将构造一个新的帧头,其中以缺省网关的MAC地址为源MAC地址,以主机B的MAC地址为目的MAC地址。通过一定的识别触发机制,确立主机A与B的MAC地址及转发端口的对应关系,并记录进流缓存条目表,以后的A到B的数据,就直接交由二层交换模块完成。这就通常所说的一次路由多次转发。

  Layer 3 switching is very similar to routing. Switches use the same routing algorithms as traditional routers do. The primary difference between a Layer 3 switch and a router depends more on usage than features. Layer 3 switching is more effectively used to segment a LAN than to provide a WAN connection. If you wanted to segment a campus, for instance, you would use a router rather than a switch, because of the faster connections available using a serial connection and the absence of the speed/distance limitations that are inherent when using CAT5e cabling at 100MB. You can, in addition, use an ATM switch to achieve faster connections than a Frame Relay, or a dedicated T1 connection. To further segment a LAN, switches offer VLAN capability. VLANs are virtual LANs within the actual switch. The switch actually does the routing within itself if a node wants to communicate with another node on a different VLAN.

  A Layer 3 switch goes beyond the Layer 2 MAC addressing and routing. The Layer 3 switch looks at the incoming packet‘s networking protocol. In this case, I’ll use IP as the network protocol. The switch examines a packet‘s IP address and acts just like a router. The switch compares the destination address to the list of addresses in its routing table and creates the virtual circuit. It then forwards the packet to the recipient’s address.

  The line between Layer 3 switching and routing is continually becoming thinner. Layer 3 switching is no more than a different implementation of a component that calculates the efficiency of available routes, and gives you the ability to segment your LAN within itself. When it comes time to implement Layer 3 switching and routing on your LAN, just remember: “Route once, switch many.”

  (3)应用实例:Cisco C8540的交换过程:(图4、5、6)

  · How the initial packet travels through the switch Layer 3 route processor to set up the network route.

  Note   When making Layer 3 switching decisions, the route processor does not reference the switch fabric, (that is, the PVC configuration)。 The interface map (where the switch maps an egress interface to a Broute VC) is programmed when the switch is booted up. At that time, the PVCs are automatically configured.

第三层交换与路由瓶颈的解决(图四)

图4

  · How the route processor sends the ARP and propagates the updated routing tables to the interfaces.

  Note   The ARP requests are described only for illustration purposes. In most cases, if you are running a dynamic protocol, the switches will have already sent and received ARP packets, and built the route tables.

第三层交换与路由瓶颈的解决(图五)

 

图5

  · How subsequent packets sent by Host A, to Host B, are switched without the help of the route processor.

第三层交换与路由瓶颈的解决(图六)

图6

  三、第二层交换、第三层交换与路由

  (1)各种技术的适用范围

  二层交换机主要用在小型局域网中,机器数量在二、三十台以下,这样的网络环境下,广播包影响不大,二层交换机的快速交换功能、多个接入端口和低廉价格为小型网络用户提供了很完善的解决方案。在这种小型网络中根本没必要引入路由功能从而增加管理的难度和费用,所以没有必要使用路由器,当然也没有必要使用三层交换机。

  三层交换机是为IP设计的,接口类型简单,拥有很强二层包处理能力,所以适用于大型局域网,为了减小广播风暴的危害,必须把大型局域网按功能或地域等因素划他成一个一个的小局域网,也就是一个一个的小网段,这样必然导致不同网段这间存在大量的互访,单纯使用二层交换机没办法实现网间的互访而单纯使用路由器,则由于端口数量有限,路由速度较慢,而限制了网络的规模和访问速度,所以这种环境下,由二层交换技术和路由技术有机结合而成的三层交换机就最为适合。

  路由器端口类型多,支持的三层协议多,路由能力强,所以适合于在大型网络之间的互连,虽然不少三层交换机甚至二层交换机都有异质网络的互连端口,但一般大型网络的互连端口不多,互连设备的主要功能不在于在端口之间进行快速交换,而是要选择最佳路径,进行负载分担,链路备份和最重要的与其它网络进行路由信息交换,所有这些都是路由完成的功能。

  在这种情况下,自然不可能使用二层交换机,但是否使用三层交换机,则视具体情况而下。影响的因素主要有网络流量、响应速度要求和投资预算等。三层交换机的最重要目的是加快大型局域网内部的数据交换,揉合进去的路由功能也是为这目的服务的,所以它的路由功能没有同一档次的专业路由器强。在网络流量很大的情况下,如果三层交换机既做网内的交换,又做网间的路由,必然会大大加重了它的负担,影响响应速度。在网络流量很大,但又要求响应速度很高的情况下由三层交换机做网内的交换,由路由器专门负责网间的路由工作,这样可以充分发挥不同设备的优势,是一个很好的配合。当然,如果受到投资预算的限制,由三层交换机兼做网间互连,也是个不错的选择。

  (2)路由和交换的区别

  路由和交换是两个普通用户容易混淆的概念。一般来说,在路由过程中,信息至少会经过一个或多个中间节点,所以人们通常会将路由和交换进行对比,这主要是因为在普通用户看来两者所实现的功能是完全一样的。其实,路由和交换之间的主要区别就是交换发生在OSI参考模型的第二层(数据链路层),而路由发生在第三层,即网络层。这一区别决定了路由和交换在移动信息的过程中需要使用不同的控制信息,所以两者实现各自功能的方式是不同的。

  四、第三层交换技术应用的价值

  第三层交换机与传统路由器相比的优势:

  · 子网间传输带宽可任意分配:传统路由器每个接口连接一个子网,子网通过路由器进行传输的速率被接口的带宽所限制。而三层交换机则不同,它可以把多个端口定义成一个虚拟网,把多个端口组成的虚拟网作为虚拟网接口,该虚拟网内信息可通过组成虚拟网的端口送给三层交换机,由于端口数可任意指定,子网间传输带宽没有限制。

  · 合理配置信息资源:由于访问子网内资源速率和访问全局网中资源速率没有区别,子网设置单独服务器的意义不大,通过在全局网中设置服务器群不仅节省费用,更可以合理配置信息资源。

  · 降低成本:通常的网络设计用交换机构成子网,用路由器进行子网间互连。目前采用三层交换机进行网络设计,既可以进行任意虚拟子网划分,又可以通过交换机三层路由功能完成子网间通信,为此节省了价格昂贵的路由器。

  · 交换机之间连接灵活:作为交换机,它们之间不允许存在回路,作为路由器,又可有多条通路来提高可靠性、平衡负载。三层交换机用生成树算法阻塞造成回路的端口,但进行路由选择时,依然把阻塞掉的通路作为可选路径参与路由选择。

  三层交换机集路由与交换于一身,在交换机内部实现了路由,消除了路由器进行路由选择而造成网络的延迟,提高了数据包转发的效率,消除了路由器可能产生的网络瓶颈问题,提高了网络的整体性能。

  五、附录

  1.名词表:

  VLAN(Virtual Local Area Network)又称虚拟局域网,是指在交换局域网的基础上,采用网络管理软件构建的可跨越不同网段、不同网络的端到端的逻辑网络。一个VLAN组成一个逻辑子网,即一个逻辑广播域,它可以覆盖多个网络设备,允许处于不同地理位置的网络用户加入到一个逻辑子网中。

 

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章