交换机开发(三)—— 深入分析三层网络交换机的原理和设计

引言

传统路由器在网络中起到隔离网络、隔离广播、路由转发以及防火墙的作业,并且随着网络的不断发展,路由器的负荷也在迅速增长。其中一个重要原因是出于安全和管理方便等方面的考虑,VLAN(虚拟局域网)技术在网络中大量应用。VLAN技术可以逻辑隔离各个不同的网段、端口甚至主机,而各个不同VLAN间的通信都要经过路由器来完成转发。由于局域网中数据流量很大,VLAN间大量的信息交换都要通过路由器来完成转发,这时候随着数据流量的不断增长路由器就成为了网络的瓶颈。为了解决局域网络的这个瓶颈,很多企业内部、学校和小区建设局域网时都采用了三层交换机。三层交换技术将交换技术引入到网络层,三层交换机的应用也从最初网络中心的骨干层、汇聚层一直渗透到网络边缘的接入层。

一、第三层交换技术

1、三层交换的概念

第三层交换技术也称为IP交换技术或高速路由技术等,是相对于传统交换概念而提出的。众所周知,传统的交换技术是在OSI 网络标准模型中的第二层—数据链路层进行操作的,而第三层交换技术是在网络模型中的第三层实现了数据包的高速转发。简单地说,第三层交换技术就是:第二层交换技术+第三层转发技术,这是一种利用第三层协议中的信息来加强第二层交换功能的机制。一个具有第三层交换功能的设备是一个带有第三层路由功能的第二层交换机,但它是二者的有机结合,并不是简单地把路由器设备的硬件及软件简单地叠加在局域网交换机上。

2、三层交换的原理

从硬件的实现上看,目前,第二层交换机的接口模块都是通过高速背板/总线交换数据的。在第三层交换机中,与路由器有关的第三层路由硬件模块也插接在高速背板/总线上,这种方式使得路由模块可以与需要路由的其他模块间高速地交换数据,从而突破了传统的外接路由器接口速率的限制(10Mbit/s---100Mbit/s)。在软件方面,第三层交换机将传统的基于软件的路由器重新进行了界定

(1) 数据封包的转发:如IP/IPX封包的转发,这些有规律的过程通过硬件高速实现;

(2) 第三层路由软件:如路由信息的更新、路由表维护、路由计算、路由的确定等功能,用优化、高效的软件实现。

假设有两个使用IP协议的站点,通过第三层交换机进行通信的过程为:若发送站点A在开始发送时,已知目的站B的IP地址,但尚不知道它在局域网上发送所需要的MAC 地址,则需要采用地址解析(ARP)来确定B的MAC 地址。A把自己的IP 地址与B的IP 地址比较,采用其软件中配置的子网掩码提取出网络地址来确定B是否与自己在同一子网内。若B 与A 在同一子网内,A 广播一个ARP 请求,B 返回其MAC 地址,A 得到B 的MAC 地址后将这一地址缓存起来,并用此MAC 地址封包转发数据,第二层交换模块查找MAC
地址表确定将数据包发向目的端口。若两个站点不在同一子网内,则A 要向"缺省网关"发出ARP(地址解析)封包,而"缺省网关"的IP 地址已经在系统软件中设置,这个IP 地址实际上对应第三层交换机的第三层交换模块。当A 对"缺省网关"的IP 地址广播出一个ARP 请求时,若第三层交换模块在以往的通信过程中已得到B 的MAC 地址,则向发送站A 回复B 的MAC 地址;否则第三层交换模块根据路由信息向目的站广播一个ARP 请求,B 得到此ARP 请求后向第三层交换模块回复其MAC 地址,第三层交换模块保存此地址并回复给发送站A
。以后,当再进行A 与B 之间数据包转发时,将用最终的目的站点的MAC 地址封包,数据转发过程全部交给第二层交换处理,信息得以高速交换[1] 。

3、第三层交换的特点

突出的特点如下:

(1).有机的硬件结合使得数据交换加速

(2).优化的路由软件使得路由过程效率提高;

(3).除了必要的路由决定过程外,大部分数据转发过程由第二层交换处理;

(4).多个子网互连时只是与第三层交换模块的逻辑连接,不象传统的外接路由器那样需增加端口,保护了用户的投资。

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

第三层交换技术的出现,解决了局域网中网段划分之后,网段中子网必须依赖路由器进行管理的局面,解决了传统路由器低速、复杂所造成的网络瓶颈问题。当然,三层交换技术并不是网络交换机与路由器的简单叠加,而是二者的有机结合,形成一个集成的、完整的解决方案。

二、VLSW4150系列交换机

VLSW4150 系列交换机是为企业提供的高性能、多层次化的解决方案。VLSW 4150也适用于ISP和服务提供商,尤其是对于一些大型的运营商,将能够增强其在IP市场的竞争力。

1、总体设计

VLSW4150交换机有24个RJ45 10/100BASE-TX自适应端口,提供2个可选的光纤10/100BaseTx以太口、100BaseFx快速以太端口或者千兆以太网口(SX,LX,ZX),并另外提供一个串口和一个100M以太网口对交换机进行配置。

VLSW4150交换机的体系结构可以支持最高到11Gbps的速率,多层交换速率达到6.6Mpps;可以支持8,192个MAC地址;为了更好的控制网络流量和网络安全,还支持以1M为步长的速率限制;支持TaggedVLAN和MAC-based的帧过滤以及RIP、OSPF和BGP路由协议。

VLSW4150交换机提供堆栈技术可以以一个逻辑IP地址来管理多个交换机,并可在一个口上镜像其他的数据包,提供基于Web的网管系统以及CLI方式来调试交换机。VLSW4150支持SNMP协议、RMON和Telnet功能来便于管理。

2、硬件结构

VLSW4150三层交换机的硬件结构分为两个部分,处理器模块和交换模块,它们之间通过PCI接口相连,同时配合相应的外围电路形成完整的三层交换机系统,见图1。

图1  硬件结构

 (1)处理器模块

如图2所示,处理器部采用一款MOTOROLAPowerQUICCIICPU,同一些外部存储设备以及一些外围电路构成三层交换机的处理器部分。处理器模块主要是运行嵌入式操作系统,配置系统和路由表的维持,而不是数据转发通路的组成部分。CPLD 保存一些CPU初始化的一些配置以保证上电后CPU正常启动,Flash 芯片用于存储三层交换机的所需要的所有软件和相关配置,SDRAM在系统启动之后载入FLASH中的程序,保证系统正常运行。处理器模块一方面提供一个快速以太网接口和一个异步口,用于对交换机进行配置和调试;另一方面通过PCI接口和交换模块相连,通过PCI接口对交换模块进行控制,并进行数据传输[2]

图2  处理器模块的硬件组成

(2)交换模块

如图3所示,交换模块采用了BROADCOM公司的BCM5645作为ASIC芯片,通过PCI接口与处理器模块进行通信完成数据传输,通过5645提供的内存接口,可以给交换模块提供一个64M的外部SDRAM,从而提高交换机的吞吐量和交换速度。5645通过MII接口和GMII接口分别连接24个百兆以太网和2个千兆以太网[3]。

图3  交换模块的硬件组成

3、软件结构

VLSW4150三层交换机的软件系统采用了模块化、分布式的设计方法,基于实时多任务操作系统。软件系统的结构呈层次结构,一层建立在另一层的基础上,每一层都使用近邻它的下一层所提供的服务,并且为它上面一层提供更高一级的服务,其优点是:可以向上层软件屏蔽底层操作,提高上层软件的可移植性,提高软件的可维护性。

如图4所示,软件大体分为三个层面:

(1)驱动层

驱动程序将上层软件和硬件系统进行了连接,把上层软件的路由更新、管理及配置命令转化为硬件系统所能识别的格式,从而达到更新其内部数据结构如路由表,地址表等,控制及管理硬件交换系统的目的;同时设备驱动程序把底层硬件收到的路由更新报文、控制管理帧及收到的各种信息传递给上层软件处理;

(2)协议栈

实现了TCP/IP、802.1D和802.1Q等协议,为上层的应用程序提供良好的接口;

(3)应用层

主要包括路由模块和网管模块,路由模块实现了RIP和OSPF等协议,即实现第三层路由的主要功能;网管模块实现了SNMP和RMON等网管模块,使三层交换机具有部分网管功能,保证三层交换机更好地正常运转。

图4  软件结构

三、第三层交换机的应用

第三层交换机的主要用途是代替传统路由器作为网络的核心,因此,凡是没有广域连接需求,同时又需要路由器的地方,都可以用第三层交换机来代替。在企业网和校园网中,一般会将第三层交换机用在网络的核心层,用第三层交换机上的千兆端口或百兆端口连接不同的子网或VLAN。第三层交换机解决了局域网VLAN必须依赖路由器进行管理的局面,解决了传统路由器速度低、复杂所造成的网络瓶颈问题。利用三层交换机在局域网中划分VLAN,可以满足用户端多种灵活的逻辑组合,防止了广播风暴的产生,对不同 VLAN 之间可以根据需要设定不同的访问权限,以此增加网络的整体安全性,极大地提高网络管理员的工作效率,而且第三层交换机可以合理配置信息资源,降低网络配置成本,使得交换机之间连接变得灵活。

时间: 2024-10-31 23:06:34

交换机开发(三)—— 深入分析三层网络交换机的原理和设计的相关文章

第三十七课:动画的原理和设计

js里面最简单的动画原理:在setTimeout或setInterval定时器中,每隔20-30ms改变元素的样式,于是就有了动画.比如:改变宽高,就叫缩放:改变坐标,就叫做位移:改变坐标轴,就叫旋转:改变透明度,就叫做淡入淡出. css3中有一个transform样式,它的值可以是rotate()旋转,skew()扭曲,scale()缩放,translate()位移,matrix()矩阵.这里不仅支持2D的操作,也支持3D的操作. 我们先举一个小小的例子,来实现一个方块的移动,达到动画的效果.

开发人员必读openstack网络基础2:交换机、路由器、DHCP

我们在使用openstack的过程中,会遇到创建虚拟机路由器.交换机等,那么1.他们的作用到底是什么?2.DHCP为什么会产生,它的作用是什么? 个人总结:交换机:一般用在同一网段,工作在数据链路层,例如我们在同一间办公室,则使用的是交换机.路由器则是用在不同网段也就是说,一个办公室上网,可以使用交换机,只要插上网口就可以上网了.路由器:则是为不同的办公室提供上网服务,不同的办公室,使用的是不同的网段. DHCP:是为了解决网络配置的麻烦 什么是交换机:工作在数据链路层,交换机拥有一条很高带宽的

交换机开发(一)—— 交换机的工作原理

一.交换机的工作原理 当交换机收到数据时,它会检查它的目的MAC地址,然后把数据从目的主机所在的接口转发出去.交换机之所以能实现这一功能,是因为交换机内部有一个MAC地址表,MAC地址表记录了网络中所有MAC地址与该交换机各端口的对应信息.某一数据帧需要转发时,交换机根据该数据帧的目的MAC地址来查找MAC地址表,从而得到该地址对应的端口,即知道具有该MAC地址的设备是连接在交换机的哪个端口上,然后交换机把数据帧从该端口转发出去. 1.交换机根据收到数据帧中的源MAC地址建立该地址同交换机端口的

vsphere入门之用虚拟交换机创建并管理ESXI网络

之前介绍了vSphere虚拟化平台的ESXi和vCenter的部署方法.本篇博客主要介绍VMware vSphere的网络管理,网络是vSphere的基础,所有ESXi的虚拟机都通过网络来进行通信.通常在物理网络中需要使用不同的物理设备进行连接才可以正常通行,而在虚拟网络中,也需要不同的虚拟设备为其提供服务 ESXi网络概述 物理网络:为了使物理服务器之间能够正常通信而建立的网络.vSphere基础架构各个部分都需要通过物理网络进行连接,同时虚拟网络建立在物理网络之上,没有物理网络,虚拟网络也就

部署标准交换机和分布式交换机(三)

实验目标: 部署标准交换机和分布式交换机 实验要求: 标准交换机的配置: 分别在两台esxi主机中添加6块物理网卡,桥接到vmnet1. 分别在两台esxi主机配置标准交换机,将vSwitch0交换机添加一个物理网卡,实现负载均衡和容错. 分别在两台esxi主机中,将vSwitch0交换机添加一个端口组,把esxi-b主机中的虚拟机vm1桥接到新添加的端口组上. 分别在两台esxi主机中,新创建一个交换机vSwitch1,主要用于vmotion的流量通信使用,两个vmotion的IP地址为10.

交换机的三种转发模式

下面是交换机6大工作原理: 1.基于源MAC地址学习 2.基于目标MAC地址转发 3.同一接口可以学习到多个MAC地址 4.同一个MAC地址被多个接口学习到,选择后学习到的接口 5.收到广/组播帧, 向本VLAN的其他所有接口转发 6.对于没有目标MAC地址表项的帧,向本VLAN的其他所有接口转发 交换机的三种转发模式: 1.直通式转发: 是指交换机在收到数据帧后,不进行缓存和校验,而是直接转发到目的端口. 2.存储式转发: 交换机首先在缓冲区中存储接收到的整个数据帧,然后进行CRC校验,检查数

Netmap to VALE—— 从高性能网络框架到高性能虚拟网络交换机

我在上一篇文章也提到过,对于全虚拟化和半虚拟化,需要分配给虚拟机一个虚拟网络接口,这些就需要一个虚拟交换机vswitch(可以和hypervisor一同使用),从而将虚拟网络接口的数据包从物理接口转发出去.但是在复杂的系统中,这个虚拟交换机的性能往往并不好.开源项目netmap[1]做了一个高性能网络框架,并且同样使用这个原理完成了高性能虚拟网络交换机vale的设计[2],在多种场景下Vale测量的性能[3]也非常好.  note:由于项目需要,我常常思考一个高性能的虚拟交换机应该怎么做.从ne

网络交换机设备简单配置

先用console,连接console口,在电脑设备管理找到console口对应接口,选择Serial协议在选择我们的端口和波特率,选择连接我们就可以进去交换机了.连接以后重启交换机,按Ctrl+B,到这我们选择7,选择7,选择Y选择1这步就是我们到了交换机里面输入reset saved-configuration 回车,选择Y这步选择Nreboot,重启选择Y![] 原文地址:http://blog.51cto.com/13730321/2286707

二层交换机、三层交换机和路由器的基本工作原理和三者之间的主要区别

二层交换机:二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中. 具体如下: (1)当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上: (2)再去读取包头中的目的MAC地址,并在地址表中查找相应的端口: (3)如表中有与这目的MAC地址对应的端口,把数据包直接复制到这端口上. 三层交换机: 三层交换技术就是将路由技