[发明专利]交换机数据包缓冲区容量的测试方法及装置有效
申请号: | 201210448384.4 | 申请日: | 2012-11-12 |
公开(公告)号: | CN102970182A | 公开(公告)日: | 2013-03-13 |
发明(设计)人: | 任钰彬;方沛昱 | 申请(专利权)人: | 盛科网络(苏州)有限公司 |
主分类号: | H04L12/26 | 分类号: | H04L12/26;H04L12/937 |
代理公司: | 苏州慧通知识产权代理事务所(普通合伙) 32239 | 代理人: | 安纪平 |
地址: | 215021 江苏省苏州市工业园区*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 交换机 数据包 缓冲区 容量 测试 方法 装置 | ||
技术领域
本发明涉及网络通信技术领域,尤其涉及网络中转发数据包的三层交换机数据包缓冲区容量的测试方法及装置。
背景技术
现今社会的网络已高度发达,每时每刻都有大量的数据报文在网络上传输,而承载这些网络流量的载体,就是三层交换机和路由器。尤其是在汇聚层和骨干层,一台三层交换机每秒的吞吐量要达到上百Gbps,这是一个非常庞大的数据量,要完成这么大数据量的转发并保证较低的延迟以及尽可能的较少错包,需要交换机的ASIC有相应的转发能力。目前交换机转发一般有如下3种方式:
1)直通式(Cut Through)
直通方式的以太网交换机可以理解为在各端口间是纵横交叉的线路矩阵电话交换机。它在输入端口检测到一个数据包时,检查该包的包头,获取包的目的地址,启动内部的动态查找表转换成相应的输出端口,在输入与输出交叉处接通,把数据包直通到相应的端口,实现交换功能。由于不需要存储,延迟非常小、交换非常快,这是它的优点。它的缺点是,因为数据包内容并没有被以太网交换机保存下来,所以无法检查所传送的数据包是否有误,不能提供错误检测能力。由于没有缓存,不能将具有不同速率的输入/输出端口直接接通,而且容易丢包。
2)存储转发(Store&Forward)
存储转发方式是计算机网络领域应用最为广泛的方式。它把输入端口的数据包检查,在对错误包处理后才取出数据包的目的地址,通过查找表转换成输出端口送出包。正因如此,存储转发方式在数据处理时延时大,这是它的不足,但是它可以对进入交换机的数据包进行错误检测,有效地改善网络性能。尤其重要的是它可以支持不同速度的端口间的转换,保持高速端口与低速端口间的协同工作。
3)碎片隔离(Fragment Free)
这是介于前两者之间的一种解决方案。它检查数据包的长度是否够64个字节,如果小于64字节,说明是假包,则丢弃该包;如果大于64字节,则发送该包。这种方式也不提供数据校验。它的数据处理速度比存储转发方式快,但比直通式慢。
以上三种转发方式中存储转发方式成为交换机领域应用最广泛的方式,然而使用该方式带来的一个显著问题就是报文转发的性能问题,其中影响交换机转发性能的一个重要因素,就是交换机数据包缓冲区(PacketBuffer)的大小。更大的数据包缓冲区意味着同一时间能存储更多的报文,允许网络有更大的流量突发。但是对于以太网交换机系统测试来说,交换机数据包缓冲区的大小却非常难以测试,这是由于数据包缓冲区并非在交换机每个接口平均分配的,而是可以根据不同接口流量大小进行自动调整,而且报文在进入数据包缓冲区的同时在往外做转发,所以很难得到一个准确的大小。
发明内容
本发明克服背景技术的缺陷,本发明提出了一种交换机数据包缓冲区容量的测试方法及装置,合理的测出交换机数据包缓冲区的大小,得到相对准确的值。
为实现上述目的,本发明提出如下技术方案:一种交换机数据包缓冲区容量的测试方法,包括如下步骤:
选取交换机中三个端口并配置其转发关系,使第一端口和第二端口均向第三端口转发数据包,且三个端口的带宽一致;
在交换机的三个端口上连接测试仪,其中第一端口和第二端口连接测试仪的发送端口,用于发送模拟网络流量的数据包,第三端口连接测试仪接收端口,用于接收转发的数据包;
所述测试仪以占用所述带宽的速率向所述第一端口发送数据包并由第三端口转发;
所述测试仪向所述第二端口发送一个突发流量,此突发流量中的数据包被缓存到交换机数据包缓冲区中;
测试仪停止向第一端口发送数据包,第三端口开始转发数据包缓冲区中的数据包;
根据所述测试仪接收到的第三端口转发的数据包个数,以及所述测试仪向第一端口发送的数据包个数,计算出数据包缓冲区的容量大小
所述突发流量的数据包大小要能占满交换机的数据包缓冲区,且多出的数据包会自动丢弃。
所述突发流量中单个数据包的大小不超过以太网的MTU值。
所述测试仪要在交换机数据包缓冲区被占满后才停止向第一端口发送数据包。
所述数据包缓冲区的容量大小为:
C=(pkt_receive-pkt_transmit)*X*8bit
其中:C表示数据包缓冲区的容量,pkt_receive表示第三端口接收到的数据包个数,pkt_transmit表示第一端口发送的数据包个数,X表示第二端口发送的单个数据包的大小。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于盛科网络(苏州)有限公司,未经盛科网络(苏州)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210448384.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电动车用中轴速度传感装置
- 下一篇:循环式多定时数显混匀检查装置