测试运营商以太网TCP性能的重要性

1、引言

一直以来,网络和应用的SLA(Service Level Agreement,服务水平协议)都是通过下面的这些参数界定的:

(1)可用性。包括正常运行时间/停机时间、平均修复时间、保护倒换。

(2)性能。包括可用性(吞吐量)、链路突发性、服务完整性(丢帧率)、传输延迟(时延)、帧延迟变化(数据包抖动)。

尽管这些参数对于表征和界定SLA非常有用,但是它们只涵盖了最多到网络IP层的网络性能。借助这些参数,服务提供商和最终用户可知晓网络有传输帧的能力,但是不知道能让它们的关键应用达到什么级别的性能。

2、通信网络协议

为了成功交换信息,两台联网设备需要一系列协议,以允许应用进行通信。这一协议组就是TCP/IP,它由7层组成,每一层都有特定的功能并向更高的层提供服务。顶层即应用层利用它下面的层来与另一台终端设备通信,在这个过程中最重要的层就是传输层,因为它确保数据从网络层传输到应用层。

用户终端通常采用UDP(用户数据报协议)和TCP(传输控制协议)进行通信,这些协议也是TCP/IP协议栈的组成部分。根据运行的应用不同,采用的传输协议可能不同。如果应用是实时性的并且允许丢失少量的信息,将采用UDP,因为它简单、有效并且比TCP速度快。对于IPTV、VoIP或在线游戏等应用,它是非常合适的协议。但是,这种协议不具备TCP提供的可靠性和顺序保证,信息可能杂乱无章地到达或在没有通知的情况下丢失。如果应用需要在两台联网设备之间可靠和有效的传输,例如电子邮件、客户关系管理、企业资源规划和文件传输等应用,应采用TCP。

TCP比UDP更复杂,它有多个参数可进行配置以优化其利用率。可是,在不同的应用中使用的默认值会降低网络传输的性能,使服务提供商和最终用户在网络传输能力上出现争议。

3、网络的TCP吞吐量

在TCP中一些特定参数将影响设备在网络上有效传输信息的能力,如传输窗口的大小、传输段的大小以及重传超时。TCP外部参数也将影响其性能,其中环回延迟和丢帧率在TCP链路的运行中扮演最重要的角色。此外,如所使用的应用、TCP/IP栈的类型以及运行这些应用的计算机/服务器的性能等因素也会影响其传输性能。

从纯理论的角度看,TCP最大的吞吐量可通过公式(容量=带宽×环回时间,也称作带宽延迟乘积)定义。表1列出了基于40 ms环回时间的不同线路容量。

表1中“容量(字节)”这一列的理论值指示在任何给定的时间系统中的最大字节数,在此数值下能够最大化占满线路以及TCP可重新发送任何丢弃或错误的数据段。在标准的TCP应用中,传输窗口允许的最大容量是65535字节。也就是说在45 Mbit/s和更高的速率、环回时间为40 ms的情况下,运行普通TCP的服务器不能l00%占满线路。因此,除非将传输窗口扩展到超过65535字节,否则最终用户在40 ms环回时间下将无法以超过13.1 Mbit/s的速率传输数据。以上都是理论值,在现实网络中达不到这样的吞吐量。

表1 基于40 ms环回时间的不同线路容量

4、测试TCP性能的好处

如上所述,网络上的TCP性能取决于多个参数,那么服务提供商应该如何选择?服务提供商曾采用RFC 2544(网络互连设备的基准测试技术)中的方法进行测试。如果在网络上运行的应用基于UDP,此方法是评估网络性能的有效方式。吞吐量、丢帧、突发性和延迟测试是网络质量的全面快照,并以所有当前SLA为基础。但是,如果在网络上运行的应用基于TCP,此方法只能一般性地描述网络的好坏,无法评估最终用户将体验到的服务质量。

最终用户总是根据端对端模式测试TCP性能。他们的测试要么以运行他们应用的计算机/服务器提供的带宽统计数据为基础,要么使用软件仿真TCP通信。这样做会让他们得出服务提供商的网络有故障的结论,因为他们的测试结果显示他们获得的最大吞吐量与预期应该得到的带宽相差甚远。用来测试的软件工具运行在计算机和操作系统上,可是每个操作系统的设置并不一样,有些锁定了它们的TCP/IP堆栈并使用为TCP定义的基本分窗口方案,即65535字节;同时,这些软件工具受限于运行它们的计算机,计算机性能不佳导致测量结果也不理想。因此,这种测量并不能反映真正的网络性能。

一些测试方法考虑到传输窗口的限制而使用多个TCP会话填充带宽。尽管此方法表明可用TCP会话占满服务提供商的接入线路,但它不能证明单个应用可实现这一点。多个TCP会话同时运行也存在问题,它们每一个都尝试向测试线路发送最大通信量。因为它们共享同一带宽,有时会以允许的最大速率发送数据,但有时会处于拥塞模式而将带宽留给另一个会话。通过此方法获得的测试结果是多次测试的平均值,测量结果可能无法重现。

正因为最终用户会使用多种工具测试它们的网络,所以服务提供商需要一种方法证明它们的网络按照设计运转正常。如果服务提供商拥有从网络中的每个分界点发送TCP数据这样一种测试工具,就可用来证明它们的网络没有故障,之后可以向最终用户提供测试参数,以便用户尝试通过自己的测试方法重现测试结果。

5、EXFO公司TCP测试方法的特点

Packet Blazer FTB-8510以太网模块的“TCP吞吐量功能”将帮助服务提供商实现从最终用户TCP应用角度所期望的服务质量的以太网服务,结合FTB-200或FTB-400平台友好的图形界面,技术人员和网络专家可随时测试网络的TCP性能。

FTB-8510的TCP吞吐量测试功能基于RFC 1323中描述的传输窗口标度选项,即单个数据流可用来提供TCP吞吐量测量。在环回时间或传输带宽对于标准TCP应用过大时,它用TCP应用填充线路的全部带宽。而且吞吐量功能由硬件设备实现,可以始终提供精确的测量,因为它不依赖PC操作系统或服务器中的任何通信堆栈的执行。这样格外便于使用,因为专业人员执行测试不需要考虑配置多少会话以及每个会话使用哪个TCP端口,用户不需要平均多个测试结果来验证线路是否有能力传输TCP应用。此外,只有一个TCP测试会话,可重复性比较好。如果网络条件(如丢帧、环回时间等)相同,TCP吞吐量测试应得到相同的结果。

作者:Bruno Giguere 来源:电信技术


微信扫描分享本文到朋友圈
扫码关注5G通信官方公众号,免费领取以下5G精品资料
  • 1、回复“YD5GAI”免费领取《中国移动:5G网络AI应用典型场景技术解决方案白皮书
  • 2、回复“5G6G”免费领取《5G_6G毫米波测试技术白皮书-2022_03-21
  • 3、回复“YD6G”免费领取《中国移动:6G至简无线接入网白皮书
  • 4、回复“LTBPS”免费领取《《中国联通5G终端白皮书》
  • 5、回复“ZGDX”免费领取《中国电信5GNTN技术白皮书
  • 6、回复“TXSB”免费领取《通信设备安装工程施工工艺图解
  • 7、回复“YDSL”免费领取《中国移动算力并网白皮书
  • 8、回复“5GX3”免费领取《R1623501-g605G的系统架构1
  • 本周热点本月热点

     

      最热通信招聘

      最新招聘信息

    最新技术文章

    最新论坛贴子