Chinaunix首页 | 论坛 | 博客
  • 博客访问: 502186
  • 博文数量: 704
  • 博客积分: 39800
  • 博客等级: 大将
  • 技术积分: 4950
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-15 13:32
文章分类

全部博文(704)

文章存档

2011年(1)

2008年(703)

我的朋友

分类:

2008-10-15 13:41:26

    不论是在传统的PSTN时代、ATM时代,还是今天的宽带IP时代,在网络边缘提供多种的业务和智能的服务,而在网络核心提供简洁的、高性能的、高可靠性的大容量是电信业谙熟的道理。从大型网络设计的角度看 ,这种做法无疑具备其合理性。

    在企业网领域,不论是系统集成商还是用户们也有类似考虑,比如说在网络的骨干仅提供高速、高可靠性、大容量的第三层,而仅仅在网络的接入层、分布层划分VLAN.但是在多业务和智能的考虑却略有不同。一方面是因为最早的以太网仅仅是满足最基本的计算机联网工作,多业务、QoS等名词非常罕见。当人们认识到QoS、的重要性时,仅仅有一些高端的核心机箱式骨干交换机具备了识别应用、提供QoS和丰富的访问控制的功能。可谓巧妇难为无米之炊!

    2001年到2002年,我们看到业内主流的网络厂商分别推出了接入层或者分布层的智能以太网交换机,为广大网络建设者、设计者在网络边缘提供分布式智能服务的产品。《网络世界》编辑部在2002年5月份,在业内率先推出题为《四层交换到桌面》的网络产品购买指南,对这一趋势进行了报道。

    时隔半年多,在3Com公司、北京港湾网络技术有限公司、华为技术有限公司的帮助下,《网络世界》评测实验室组织了四层千兆接入交换机的,希望您能随我们感受四层千兆接入交换机带来的智能网络边缘—那种善解人意的全新体验!

    四层千兆接入交换机是市场上的新锐,类似产品不多,不少面市不久,对于三家公司对我们给予的支持深表感谢!

    另外,国内外对四层接入交换机的横向评测并不多,以何标准衡量其优劣,没有统一的认识。此次测试没有评出《网络世界》评测实验室编辑选择奖。

    关于此次测试的更多信息和结果请见测试网站.

    什么是智能的边缘?

    此次参加测试的三款交换机分别是3Com公司的SuperStack 3 Switch4400交换机,华为公司的Quidway S3026E交换机,港湾公司的FlexHammer 5010E.这三款交换机都是24个百兆口加2个千兆上联端口的交换机。其中3Com公司的SuperStack 3 Switch4400交换机、华为公司的Quidway S3026E交换机为2/4层交换机,主要工作在网络的接入层。港湾公司的FlexHammer 5010E交换机为2/3/4层交换机,可以工作在网络的汇聚层,或者是网络的接入层。总体上讲,这三款交换机都服务于网络的边缘。

    智能化的网络应该能够根据现今网络上承载的不同应用提供相应的QoS保障,实现一定的网络功能,提供完善的网络管理。

    以太网和IP技术本身已经提供了QoS的一些功能,比如我们熟知的IEEE802.1P、ToS、DSCP几个。很多的网络交换机和器也支持对数据包上相关的信息识别提供QoS的功能。但是,仅仅这些还不够。首先,网络终端(比如网卡)和应用程序中支持IEEE802.1P和DSCP的产品并不普遍。如果要真正能够对传输的数据提供QoS服务,就需要对数据包上更多的信息进行识别,比如IP的类型、对以太网协议类型、IP地址进行识别。另外今天主流的应用系统软件都使用TCP/IP协议族完成通信,不同的应用与不同的TCP、UDP端口号相对应,比如我们都非常熟悉的几种应用,WWW浏览对应的是TCP/UDP端口号的80,SNMP网络管理对应的是TCP/UDP的16,而FTP是对应的TCP/UDP端口号的21.通过对数据包上这些丰富信息的识别,就能够按照不同的应用提供不同的QoS服务和安全控制。

    完成对不同应用的数据包加以区分和识别之后,需要交换机能够对这些数据包提供不同的QoS服务。比如在交换机的一些端口发生拥塞的情况下,确保高优先级的数据包能够尽可能不被丢弃、尽快地转发出去。

    当然,交换机也可以按照需要禁止一些通信。对四层信息识别可以作更丰富的安全,基于应用的安全,比如防止一些的应用。

    同时,对于一个大型的网络来说,需要全网实现端到端的QoS策略。工作在边缘的智能交换机在对不同应用的数据包进行识别之后,可以根据QoS策略,为这些数据包打上相应的标记,而其他的网络设备比如核心的网络交换机、连接广域网的路由器则只需通过对这些标记进行识别就能够知道那些高优先级的数据包,并提供相应的QoS服务。

    还有一些交换机能够根据不同的应用限制他们的通信速率,确保或限制一些应用对网络带宽的占用。有些交换机还能够在管理的过程中对流经交换机的不同数据流进行监控和统计。

    体验什么?

    这次测试的第一个部分是验证这些四层接入交换机是否真正能实现网络边缘的智能。

    第二部分的测试是希望了解这些四层接入交换机的智能是否会影响性能。比较交换机而言,路由器很早就实现了上述的“智能”,很多路由器都能支持访问列表,可以对数据包的IP地址、IP协议类型、TCP/UDP的端口信息进行识别,并进行相应的处理。但是,很多情况下实际使用这些功能的人并不多,通常的路由器是利用通用CPU和软件实现数据包寻径和转发的,QoS和ACL功能会影响到路由器的性能。(详细的测试方法见23版)

    丰富的智能

    经过我们的测试,三款交换机都能够提供丰富的智能,特别是可以依据数据包中四层的端口号(UDP和TCP端口号)根据不同的应用提供不同的服务。(这三款交换机的功能可见功能列表)

    为了验证交换机在QoS的能力,我们用四个百兆端口向一个百兆端口发送数据包,不断的增加负载造成接收端口的拥塞,来验证交换机的QoS功能。我们分别在交换机开启QoS功能前和开启QoS功能之后进行了测试,测试在拥塞情况下数据包的丢失情况和延迟情况(结果见21版)。如果交换机开启了QoS功能,UDP端口号为21的数据是最低优先级的,UDP端口号为24的为次低优先级的数据包,UDP端口号为26的数据包为次高优先级,UDP端口号为28的数据包是最高优先级。图片中横坐标的百分数代表着每一个端口的负载。在帧丢失率的测试中纵轴代表着丢失数据包的比例,在延迟测试中纵坐标代表着数据包的平均延迟,单位是微秒(msec)。

    在横坐标为25%的时候,交换机每一个发送端口的负载都达到了25%,而接收端口达到了100%线速,而当横坐标超过30%以后,在接收端口则出现拥塞,随之开始出现丢包现象,帧丢失率测试图中的红色的曲线开始抬升。当每个输入端口的负载达到100%时测试停止,将有4倍于100Mbps的数据包发送到接收端口,造成极大的拥塞,一般这时候帧丢失测试红色的曲线将停留在75%的刻度值,表示丢弃了75%的数据包。

    所有参测交换机在没有开启QoS功能时候的帧流失率测试结果与3Com图片类似(更多的结果、图片请见网站),我们可以发现所有种类的数据包都在丢失,大多数情况下,每种数据包的丢失比例都非常接近。交换机随机地丢失所有种类的数据包,我们的拥塞测试也分别进行了64字节、512字节和1518字节的测试,结果并没有因为测试帧长度的变化而发生改变(刊登的结果为64字节结果)。

    而在开启了QoS功能之后帧丢失测试的结果有了很大的不同。当负载为30%的时候最低优先级的数据包(UDP端口号为21)率先开始出现丢失现像,随着负载的增加,不同优先级的数据包先后开始出现帧丢失的情况,而且随着负载的不断加强,数据包的帧丢失率也在发生变化,不同优先级的数据包的帧丢失比例也有很大的区别。

    从帧丢失的情况看,我们发现有些时候同一款交换机在同样的字节长度下的测试结果并不一样,不同优先级的数据包有着不同的帧丢失增长曲线和丢失比例。这是因为有些交换机支持多种的队列调度算法。送测的交换机支持的队列调度算法有PQ(严格优先级)和WRR(加权轮循)。

    三款交换机都可以支持WRR的队列调度算法,3Com的SuperStack Switch 4400不能够对WRR算法中每个队列的权值进行调整。港湾和华为的交换机可以进行相应的设置,在此次测试中我们将从高到低的四个队列的权值设置为40、30、20、10,即最高优先级可以丢失60%左右的数据包,次高的可以丢失70%、次低的可以丢失80%,最低的丢失90%数据包。另外,华为的交换机还支持一个带最大延迟的WRR算法。从测试的曲线我们可以看出在使用WRR算法时,在拥塞的时候高优先级的数据包也会相应的丢弃,而最低优先级的数据包,哪怕是在最拥塞的情况下(400%),仍有10%的数据包可以被转发。我们最后计算了一下帧丢失的情况,这三款交换机可以按照规定的比例丢失数据包。

    港湾和华为的交换机还支持PQ优先级。在PQ算法起作用的时候,我们可以发现最高优先级的数据包一直保持着发送,最终没有出现帧丢失的现象,而低优先级随着负载的不断增加最终都被完全丢弃了。

    这些测试结果证明从帧丢失的角度,三款交换机都很好的实现了Qos功能。

    延迟的测试情况也反映出三款交换机在QoS启动前后,不同数据包在转发过程中享受的不同待遇。在开启QoS之前(由于版面原因我们只选用3Com的结果),不同的数据包的延迟并没有区别,有些时候,甚至出现了UDP 28的延迟大于UDP 26,UDP 26大于UDP 24、UDP 24大于UDP 21延迟的情况,非常的不规律。

    当启用了QoS功能之后,情况有很大改观,在拥塞产生之后,不同数据包的延迟情况不同,低优先级的数据延迟迅速爬升,而高优先级数据包的延迟则缓慢的提升,而且依照不同的队列调度算法,不同优先级的数据包的延迟也不同,一般的情况是高优先级的数据包有着最低的延迟,次高优先级的数据包延迟更低一点,并以此类推,随着拥塞程度的变化,数据包的延迟会发生变化,但是增长到一定程度之后,延迟的变化不会有太大的改变。应该说从延迟大幅度发生变化的横坐标即拥塞度和变化的曲线来看,延迟变化趋近于帧丢失率测试的曲线。

    队列调度算法在这一测试中是起作用的,这一点我们可以从3Com和华为交换机的延迟测试结果中看出。

    港湾公司的延迟测试结果总体看来延迟比较低,但是在拥塞测试中无论是PQ方式还是WRR的方式都与我们预想的结果有着比较大的出入,总是出现两个不同优先级的数据包的延迟没有明显的区别,该公司给予了我们一些解释(见该公司产品的介绍文章)。

    在启动QoS的功能中,交换机将在识别UDP端口号信息提供QoS服务的同时,对数据包的QoS信息位进行重写(相关介绍文章见网站上《QoS术语》)。改写IEEE802.1P字段要求交换机工作在支持IEEE802.1Q VLAN的模式下。我们考虑到对于一个大型的企业网或者电信网来说,可能会存在跨局域网、广域网,跨交换机和路由器通信的可能。

    在这种情况下,会存在着数据包的重新封装的过程,在以太网帧头的IEEE802.1P信息很有可能因此而丧失,所以我们让被测交换机改写DSCP的信息。测试中,我们发送给交换机的数据包没有携带DSCP字段的信息,而开启QoS功能之后,通过抓包我们发现交换机会正确的修改DSCP字段的信息。

    港湾的FlexHammer 5010E和华为的Quidway S3026E都支持了速率限制的功能,可以按照交换机的物理端口号、TCP/UDP端口号、IP地址等实现速率限制的功能。港湾的FlexHammer 5010E支持最小带宽192Kbps,最小增长步长为64Kbps的速率限制,华为的Quidway S3026E支持的是最小1Mbps,步长1Mbps的速率限制功能。通过测试,都能实现相应的功能,并有比较好的精确度。

    在QoS方面,港湾和华为的交换机还可以支持基于流分类的端口镜像功能,将指定的数据包复制到相应的端口。

    在提高性能方面,港湾和华为的交换机支持端口的重定向。而3Com的SuperStack 3 Switch4400可以配合WebCache提高Web的访问速度。

    3Com的交换机出厂配置中就有一些QoS的设置,比如对3Com NBX以太网电话的数据包提供高优先级,对SNMP的数据包提供高优先级等,对于用户来说非常的方便。

    安全是智能交换机能够实现的一个很重要的功能。除了我们知道的在二层基于MAC地址过滤、MAC地址与交换机端口绑定的功能外,四层接入交换机还能提供多种流过滤功能。港湾和华为的交换机都支持ACL的功能,3Com的交换机虽然不支持ACL,但是通过设置一些数据包的优先级为丢弃,可以实现相应的功能。

    智能不丧失性能

    三台交换机的测试结果表明,在开启QoS功能后,利用ASIC实现数据包转发、ACL、QoS功能的四层接入交换机没有丧失太多的性能!

    按照我们第二项的测试方法,我们对交换机的纯二层性能先进行了测试,而后在开启QoS功能,重复与纯二层测试相同的内容,测试交换机的2/4层性能。测试的指标包括吞吐量、帧丢失率和千兆、百兆端口之间的延迟。测试中我们向交换机发送10种不同的数据包,

    我们向交换机发送的数据包为含UDP信息的数据包,端口号从21到30,每个数据包的UDP源和目的端口号相同。而在交换机的QoS功能中,需要交换机对这10种数据包的UDP信息都进行识别,不仅仅是停留在MAC层面。交换机还对相应数据包的DSCP字段进行了重写。同时,交换机上相应的队列调度机制也启动了。

    三台交换机在纯二层测试时都达到了线速,在开启QoS功能之后,吞吐量和帧丢失率两个测试结果没有受到影响,三台交换机依旧是线速。延迟(平均延迟)的影响也不大,我们可以从延迟测试结果的表中可以看出来,同一款交换机在开启QoS前后的延迟差距并不是非常大,特别是在三款交换机千兆端口延迟测试的结果方面,我们发现延迟差距更小。另外,测试结果并不是象我们想象的在开启QoS功能之后,因为交换机对数据包的识别,对DSCP字段重写而造成延迟的增加。从延迟测试的情况看,以及我们测试交换机的经验看,每次延迟测试结果会有一定的偏差。结合这些因素并分析结果,我们认为开启QoS前后对交换机的延迟影响并不大。另外,从另一个角度看,延迟最大的差别在几十微秒,小的在零点几个微秒,这样的结果可能对于交换机厂商和芯片厂商更有意义和价值,而对于大多数的用户来说,感受到的区别不会太大。

    我们还发现了一个比较有意思的地方,3Com和华为的交换机在开启QoS功能之后,测试百兆端口的64字节延迟时高优先级数据包的延迟要低于低优先级的数据包,UDP端口号为21、22、29、30的数据包延迟长(华为512字节和1518字节也有类似情况)。而在没有开启QoS的时候,并没有这一情况出现,在其他测试中每种数据包的延迟Qos前后差距都不大。

    从我们的经验看,一般全网状测试对交换机的压力会更大一些,而且我们网状测试的时间是非常长的,达到了两分钟,64字节情况下会发送785691072个包,很多交换机会有丢包的现象发生。我们后来又做了网状的测试,希望看看是否会有影响。港湾的交换机网状测试开启QoS前后丢包都为零。华为的交换机在开启QoS功能前64字节丢包数量为903、512字节为87,1518字节为0个,而开启QoS功能之后,64字节为938个,512字节为44个,1518字节为0个。3Com交换机在开启QoS前后丢弃的数据包相差不多,开启QoS之后丢的比开启前少。我们还发现,在全网状测试中,3Com SuperStack Switch4400和华为的Quidway S3026E交换机仅仅丢弃低优先级的数据包(UDP端口号为21、22、29、30的数据包),而高优先级的数据包都没有被丢弃。这些数据表明,如果说我们在网络的边缘采用四层千兆接入交换机,对网络的性能基本上没有影响。

【责编:Peng】


--------------------next---------------------

阅读(324) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~