APP下载

移动互联网TCP性能精细化评估方法研究

2014-03-14向程超雒江涛

电视技术 2014年9期
关键词:数据业务哈希数据包

向程超,雒江涛,罗 鹏

(重庆邮电大学通信网与测试技术重点实验室,重庆400065)

当前,移动网的部署已经愈发广泛,并提供了适应网络发展趋势的Internet接入服务。虽然Internet在固网中表现得还算稳定,但是在无线移动通信网络中,由于受制于无线环境的差异性和无线链路质量的不稳定性,Internet协议簇中使用的传输控制协议(TCP)的传输性能受到一定程度的影响,工作效率不高,从而导致了移动数据的丢包、传输速率缓慢等一系列问题。

与此同时,移动互联网中数据业务的比重越来越高,导致人们对于数据业务服务质量的要求也逐步上升。用户在使用数据业务上网时,网页的响应速度,文字、图片等重要信息的显示质量以及视频流的播放效果都是评估互联网业务质量的重要因素,同样作为传输层的TCP传输性能的优劣与互联网业务的质量优劣也紧密相关。因此对移动互联网中的TCP性能监测和分析,能为优化改善TCP的传输效率提供有力的依据和改进方向,并且能帮助运营商在解决用户数据业务相关问题时,快速定位问题原因,有助于改善移动端的数据传输质量,提升数据业务的用户体验。但对于具体的TCP性能评估方法[1-6],以往的TCP性能评估导向主要集中于整体评估,不足以体现用户使用数据业务的特点,而且容易造成统计指标的不准确,比如速率过于平均导致TCP实际传输速率高于计算指标值。

本文结合TCP协议的传输特性,提出了一系列重要的TCP性能指标的监测统计细化评估方法,致力于缩小统计的时间粒度,尽可能准确地展现移动用户业务数据的使用特征。除此之外,本文还基于CDMA2000-EVDO中的数据传输流程,提出了应用于1x-EVDO数据网络中的TCP性能监测方案。

1 整体化TCP性能评估方法

1.1 传统评估方法

对待激增的移动互联网中的数据业务,如何对其业务质量进行评估引发了一系列的研究,对于TCP性能的评估指标,主要集中在延迟、流量大小、瞬时速率等方面。

在《TCP业务质量评估方法》[4]一文中,扼要地提出了一种相对综合的整体化研究方法,相应的TCP业务质量参数主要包括TCP平均带宽、TCP平均时延、TCP时延抖动等,而且针对不同的TCP承载业务,该文方法还提出了不同的评估标准。针对TCP的具体传输性能,该类传统方法主要统计了某个时间段内的总体流量,并评估了TCP性能的平均性能和趋势。文献[5]中提出了一种IPv6下的TCP性能评估方法,该方法评估的重点放在业务的服务质量之上,通过TCP消息中的序列号和确认号字段来分析单位时间内的TCP传输质量。文献[6]中,作者通过对不同环境中结合TCP的实际吞吐量、丢包率和上下行流量比例对不同来评估网络的传输质量。

1.2 传统的整体评估方法的优缺点

整体评估带来的最大好处就是节约评估服务器的运算资源,集中对所有的TCP连接进行集中处理和统计,也在一定程度上提高了对超大流量数据的处理效率。但是对于这类评估方法,并不能完全体现用户的业务使用特点,因此本文旨在研究如何设计一种精确评估TCP性能,并能够体现用户数据业务使用特征的评估方法。其精细化的特点主要集中在针对每个用户甚至每个TCP连接的使用特征进行实时的流量和速率统计,以获得更为精准的用户使用特征,方便运营商智能控制,节约无线资源。

2 精细化TCP性能评估方法

2.1 TCP性能评估指标设计

为了统计分类,将TCP性能统计分为以下3个阶段[7]:TCP连接建立阶段,TCP数据传输阶段和TCP连接释放阶段。在指标的计算过程中,涉及了相关的哈希表索引算法[8],以匹配不同TCP连接的建立释放消息以及分片数据,其中哈希表的索引Key值由TCP连接中的源目的IP和源目的端口唯一确定。

指标计算过程,建立在对网络数据采集并解码之后进行统计,TCP的实时性能统计可以依据哈希表中记录的TCP数据。其相应的匹配结构如图1所示。为了保证评估指标精细化分析的准确性,用来存储TCP连接消息的HASH表数据采用快照功能,按特定最小时间粒度(5 s)输出统计结果。

图1 TCP连接在哈希表中的存储模式

2.2 精细化评估方法

2.2.1 TCP 建立阶段

TCP是面向连接的协议,在开始传输数据前,应当首先在通信双方之间建立连接,此过程要先传送3个只有TCP报文头部组成的数据包来建立连接,该过程被称为“三次握手”[7]。在TCP建立连接过程有以下几个比较重要的指标:CR代表TCP连接请求数目;CA代表TCP成功连接数目;T1代表TCP建立连接时延;Rcon代表TCP连接成功率。这些指标的具体统计步骤的伪代码如下:

该建立连接过程中,第一次握手之后会依次收到服务端的同步请求数据包即SYN+ACK握手包,客户端收到同步包之后才是ACK包及第三次握手包。伪代码中的TcpInfo中主要包括了TCP连接过程中的各项重要字段值以及到达时间、请求统计等。在STEP 4过程,若当前的ACK消息的序列号与确认号能与哈希表中的记录匹配上,即满足A1=S1+1和 S2=A1,则可视为完成了一次TCP 连接[7]。

2.2.2 数据传输阶段

由于TCP之上的应用层协议众多,数据量巨大,通过可靠的TCP来传输时,通信双方需要协商(或者说通告)最大的报文段长度,如此造成TCP传输过程中出现大量的分片数据,为确保数据传输的正确性与完整性,TCP层通过序列号和确认序号来确认数据包是否连续到达。除此之外,TCP/IP中使用窗口流控制[7]来提高数据的传输速度。该机制允许一次传送多个数据包,数据包的多少按照双方约定的缓冲区来确定。

在传输过程中,由于无线链路复杂的网络环境,导致TCP传输过程时常有丢包和乱序包来造成数据错误,同时大多数应用通过TCP来传输的流量和速率也是运营商所需要关注的关键指标。同时,为了更精准地表现用户的数据使用特征,在评估方法上采用更细化的统计方法,比如在统计速率的时候剔除用户使用过程数据静默时间,从而减少由于统计平均时间过长带来的数据传输速率的误差。此过程中,Rretr(TCP数据传输阶段,下行数据包的重传率),PKT0(数据传输上行TCP总包数),PKT1(数据传输下行TCP总包数),PKTretr(数据传输重传数据包总包数),R1(TCP数据包上下行发送的速率)是数据传输过程的重要指标。其具体实现步骤伪代码如下:

2.2.3 连接释放阶段

与TCP建立连接的过程相似,在释放阶段一般需要经过4个步骤,称之为释放连接的“四次握手”[7]。由于TCP连接是全双工模式的,在连接的两个方向上都需要分别关闭,主要依靠两个FIN+ACK和ACK包。在这个阶段主要指标是TCP的连接时长,其具体算法可以参照建立连接阶段,先判断标志位再记录TCP数据包的时间,进行统计计算,具体过程在此不再赘述。

3 移动互联网TCP性能精细评估方法的测试

3.1 TCP性能分析处理流程

实验针对EV-DO网络中用户面数据进行,在EVDO系统中,PCF(分组控制功能)和PDSN(分组数据业务节点)是主要负责处理用户分组数据的网元,在该系统中的TCP性能监测主要围绕这两个网元之间的R-P接口中A10,A11数据的采集和分析来展开。为实现TCP的性能分析,首先需要将相关的业务数据采集出来之后再加以分析处理。如图2所示,利用信令数据采集设备可以采集到PCF与PDSN之间R-P接口中的数据,其中包括了A11的信令数据以及A10的业务数据[9],A11的信令数据可用作用户数据业务接入流程的分析,在此不进行赘述,而采集得到的A10的业务数据正是分析TCP性能的依据。

图2 EV-DO测试平台

利用采集获得数据消息建立一套完整的EV-DO监测系统对于电信运营商规范和评估网络性能有重大意义。该系统需要对分组的业务数据和信令数据加以区分以进行不同的分析,比如信令的数据可以用来追踪用户使用数据的流程,以定位网络故障;而相应的业务数据则可以用作分析用户的上网特征,以及本文中提及的TCP性能分析,其隶属于业务过程连接质量的分析。该质量分析包括通过对TCP连接建立过程的成功率、重发率等相关指标进行查询统计,快速定位问题,进行深入优化分析,从各维度统计分析的TCP连接建立的失败事件,更重要的是对当前网络中每个用户的TCP连接流量进行相应的统计,以突出用户的使用特征。

3.2 TCP性能分析处理流程

用户业务的数据主要由A10业务通道进行传输,但是在传递业务数据之前需要经过PPP协商过程建立PPP连接。包括建立数据在内,A10接口的所有数据由GRE层进行承载,在解码过程中,提取GRE层的关键字段GREKEY作为识别每个不同的PPP连接的关键字段,而且在现网架设中,一般都是多个PCF接入到同一个PDSN中,因此还需要 PDSN和 PCF的 IP结合GREKEY一起,唯一标识某个PPP连接,以此2个字段作为Key值建立存储全网运行状态的全局哈希表,其中包括每个PCF运行时间内的上下行总字节数,相关流程如图3所示。

图3 TCP性能分析流程图

除此之外,还需要为TCP性能分析单独建立一张哈希表,其索引Key包括PPP上层的IP源、目的地址,TCP源、目的端口。这张哈希表主要记录了用户使用业务数据过程中每条TCP连接的具体信息,哈希表的存储结构在前面的章节已经介绍过。

相应的TCP流数据经过多层解码器的解封装之后,其提取出的有效TCP数据流会被送入到专门的性能分析处理模块HandleTcp中,根据多条TCP流数据完善哈希表中各个字段的数据,该条TCP释放之后即可在相应的出表文件中生成一条TCP记录。

3.2 系统测试模拟运行结果分析

在系统模拟运行过程中,为测试算法的性能,借助计算机开设WiFi热点,并用智能手机连接,模拟用户手机上网的过程,并加以抓包分析TCP性能方面的各项指标,具体分析结果如表1所示。

表1 TCP连接信息

如表1所示,该过程是利用手机登录某下载网站,选择了一款软件进行下载的过程,其时间连接信息如表2所示。为了模拟不稳定的手机网络环境,测试通过远离WiFi热点造成网络的不稳定,出现了一部分重传包,其统计结果如表3所示。

表2 TCP连接时间相关统计

表3 重传包相关统计

上下行数据包传送速率以及位速率的精细化统计尤为重要,本文中的算法以每个数据包的传送时间为统计时间粒度,在提高系统消耗效率的基础上,大大提高了定位用户上网行为的能力。其统计结果如图4所示,在16:51:07到16:52:47这段时间内,源目的IP建立的这条TCP连接,实际的吞吐量大小与时间的变化可显示出用户的该条TCP连接中吞吐量是时高时低的,而且在一定时间内该条连接将不存在流量的交互,这段时间即为前文中指出的用户静默时间,在根据流量计算速率的时候就不能记入统计内。

图4 精细化TCP流量统计

当采用细化评估方法时,速率和流量的统计更为准确,通过图5可以直观地观察到。特别是当用户手机打开网页后几分钟之内不再浏览其他内容,这段时间属于用户静默时间,不存在流量的交互,而进行整体化指标计算之后,整个过程中的流量被平均计算,导致了TCP交互速率的不准确。可见精细化的TCP速率统计,加强TCP性能的监控效率,能更准确地定位用户的上网行为。

图5 TCP性能评估方法下行速率对比

4 小结

本文结合TCP的协议特征对TCP性能需求和细化统计指标的计算进行了深入的分析。伴随着64位计算机系统的应用,基于其丰富的内存资源,以上在EV-DO系统监测的基础上,提出了一种通过在内存中建立多张哈希表进行相应TCP性能分析的方案。该方案合理地利用了内存资源,提高了性能分析的效率,并借助TCP性能的精细化评估方法,以达到监测用户具体业务数据,实时精准地统计,为快速定位网络故障,评估用户上网行为的优劣质量提供了精准的数据保障。当前的工作仅限于对少量数据的统计和分析,只有提高分析处理的效率以及优化内存的消耗才能保证该系统在现网系统中稳定地使用。针对目前的流量分析,还可以对流量分析统计进一步细化,统计不同用户针对不同网站的流量分布,该分析能够更准确地分析用户的数据业务使用特征。

[1]刘玉军,刘晓兵,房爱忠,等.网络性能评估系统研究[J].计算机测量与控制,2007,15(5):692-694.

[2]徐昌彪,张坤,鲜永菊,等.认知无线电环境下TCP性能研究[J].电视技术,2011,35(19):67-71.

[3]王焕,姚远程,张莹.不同背景流量下TCP吞吐量的主动测量及分析[J].计算机工程,2007,33(7):92-93.

[4]张轶博,许豫飞,雷振明.TCP业务质量评估方法研究[J].计算机工程与应用,2004(18):8-9.

[5]IGOR K,YOUNG-TAK K,Performance evaluation and improvement of TCP Throughput over PFMIPv6 with MIH[C]//Proc.6th IFIP/IEEE International Workshop on Broadband Convergence Networks.[S.l.]:IEEE Press,2011:997-1004.

[6]KONSTANTINOS T,GEROGE S.Comparative performance evaluation of TCP variants in WiMAX(and WLANs)network configurations[J].Computer Networks and Communications,2012(1):1-8.

[7]RICHARD S W.TCP/IP详解卷1:协议[M].范建华,胥光辉,张涛,译.北京:机械工业出版社,2004.

[8]汪世龙,雒江涛.基于哈希的IP会话分时段统计方法[J].数字通信,2009(1):72-75.

[9]3GPP2.A.S0017-B,Interoperability specification(IOS)for CDMA2000 access network interfaces-part 7(A10 and A11 Interfaces)[S].2012.

猜你喜欢

数据业务哈希数据包
上海市交通发展研究中心交通项目评审及交通大数据业务简介
二维隐蔽时间信道构建的研究*
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
文件哈希值处理一条龙
SmartSniff
基于OpenCV与均值哈希算法的人脸相似识别系统
巧用哈希数值传递文件
分组域数据业务的停复机优化
一种基于Bigram二级哈希的中文索引结构
综合话音和数据业务的GSM频率优化研究