GENEX Probe FTP功能信息红宝书.docx
《GENEX Probe FTP功能信息红宝书.docx》由会员分享,可在线阅读,更多相关《GENEX Probe FTP功能信息红宝书.docx(12页珍藏版)》请在冰豆网上搜索。
GENEXProbeFTP功能信息红宝书
产品名称Productname
密级Confidentialitylevel
GENEXProbe
内部公开
产品版本Productversion
Total8pages共8页
V200R003C02
GENEXProbe的FTP功能
信息红宝书
(仅供内部使用)
拟制:
陈娜、张重洋
日期:
2012/04/09
审核:
日期:
yyyy/mm/dd
审核:
日期:
yyyy/mm/dd
批准:
日期:
yyyy/mm/dd
华为技术有限公司
版权所有XX
修订记录
文档版本
修改说明
日期
作者
0.9
初稿
2012-4-10
陈娜00144340
目录
1概述4
2ProbeFTP测试项说明4
3ProbeFTP测试场景说明5
3.1正常场景:
5
3.2异常场景:
6
4FTP测试需要覆盖的场景6
5ProbeFTP代码相关内容7
6FTP界面说明8
6.1FTPServiceQualityEvaluation界面说明8
6.2FTP命令交互信息9
7FTP异常处理说明:
9
7.1接入性失败情况9
7.2数传失败情况10
7.3用户中止的处理10
8FTP相关统计说明10
8.1失败率统计10
8.2速率统计11
9附录11
1概述
GENEXProbe&Assitant的FTP功能是主要的数据业务测试功能,用来测试基于无线网络的FTP上传、下载及相关KPI统计。
Probe中有多种FTP测试项,处理复杂,统计信息众多,是Probe数据业务质量的短板,经过持续的数据业务改进,这部分功能已经较为稳定,统计正确,前后台一致,但考虑到后续可能随着制式和功能需求的增加,仍有很大变数,所以整理FTP功能相关的业务场景和注意事项,供研发修改功能自测和测试人员验收使用,保证现阶段投入大力气稳定下来的成果能够持续得到保障。
2ProbeFTP测试项说明
Probe支持多种FTP测试,含义不同。
FTPDownLoad,FTPUpload测试项是基本的FTP测试功能。
Multi-FTP:
指Probe支持一个终端同时做FTPDL和UL测试。
Multi-RAB:
指Probe支持一个终端同时做DL和VoiceCall。
以FTPDownLoad为例,说明下FTP基本的测试项属性
3ProbeFTP测试场景说明
3.1正常场景:
1.FTPDownLoad\Upload\MultiFTP\Multi-RAB测试能正常结束,且测试过程中,实时信息和统计信息均正确;
2.Probe回放上述实测记录测试过程的gen文件,FTP界面各项信息是否正确与实测一致;
3.Assistant导入FTP测试记录gen文件分析,包括事件和KPI等各项统计是否正常,FTP开始结束和统计打包是否正确;
4.将FTP测试项的MultiThreadCount设置为>1,执行多线程测试,能够正确结束;
3.2异常场景:
几种FTP的各种结果值如下,可以对照知道FTP的异常场景:
FTP_ERROR_SUCCESS//FTP测试成功
FTP_LOGIN_FAILED//登陆FTPServer失败
FTP_DOWN_OPEN_LOCALFILE_FAILED//FTP下载时打开文件失败,仍继续下载
FTP_UP_FAILED//UL测试(数传过程中)失败
FTP_DOWN_FAILED//DL测试(数传过程中)失败
FTP_FILE_NOT_EXIST//DL的目标文件不存在
FTP_PARAM_FAILED//测试项配置参数错误
FTP_USER_STOP//测试中用户中止
FTP_LOGIN_SUCCESS//DL\UL登陆FTPServer成功
FTP_SEVER_NO_RESPOND//FTPServer无响应
FTP_FILE_SIZE_ZERO//DL的目标文件大小为0
FTP_TIMEOUT//FTP测试时间达到配置的时长,结束测试,统计时算作是正常结束测试
FTP_FAIL_DURINGDAIL//拨号过程中失败
FTP_FAIL_CREATETHREAD//申请FTP线程失败
FTP_UP_OPEN_LOCALFILE_FAILED//FTP上传时打开文件失败,需和下载区分,下载时打开本地文件失败仍继续下载
FTP_NEW_SESSION_START//新定义的SessionStart状态:
与FTP交互开始
FTP_DATA_TRANSFER_START//第一个包开始传输:
也是老SessionStart的定义
FTP_INVALID_DESTINATION//FTPServerDestination地址冲突
FTP_ADDDEST_FAILED//添加路由表失败
FTP_GETIP_FAILED//解析FTPServerIP失败
FTP_DATA_TRANSFER_END//数据传输结束
FTP_MULTI_FINISHED//MultiFTP整个测试项结束
4FTP测试需要覆盖的场景
在了解了上述内容后,让我们来关注FTP真正容易出问题的地方:
1.FTP测试项前配置Dialup或者不配,测试项执行是否有差别?
2.LIST命令可以正确解析出目标文件的大小(DL情况)
--可以从Informaiton视图中查看LIST命令的结果得知
3.DL情况写本地文件和不写本地文件的配置都要测试覆盖到
4.当服务器不支持多线程时,能否按照单线程完成测试
5.路径中带空格和不带空格的测试,需要测试后查看:
是否上传到目标路径,下载需要看是否能够找到带空格路径下的文件。
6.UL和DL的测试项的Port分别选择PORT和PASV,是否都能成功?
7.Upload和Download在根目录,一级目录,二级目录,三级目录都可以正常运转
8.在各种上述异常结束情况下,Probe是否能正确显示错误状态信息;如果已经开始数传,是否统计正确
9.多次测试,其间既有成功又有失败的情况下,各次显示信息是否正确;
其中实时信息:
时延和速率是否正确
统计信息:
时延和速率及二者的累计信息还有失败率
10.在上述情况下,给Assistant打的相关包信息是否正确,如FTP的开始结束包是否配对,时间是否正确,尤其是在各种异常情况下
11.尤其需要关注长时间多场景测试时,各种KPI信息是否正确
5ProbeFTP代码相关内容
Probe中FTP功能相关的内容比较多,总的来说:
FTP功能实现代码在DataTestBusiness模块。
FTP测试项控制代码在ServiceManager模块
FTP统计代码在ProduceManager模块
还有一些解包类,关注和修改较少,一般不常用。
**待完善
6FTP界面说明
Probe的FTP功能对应的窗口是FTPServiceQualityEvaluation,主要关注的指标有时延,速率和失败率,这三类指标又分实时和累计值。
信息区分FTPDL和UL显示
6.1FTPServiceQualityEvaluation界面说明
图1-FTP信息显示界面
单以DL信息显示为例:
A部分显示FTP(download\upload)DataTransferCut-offRatio和
Non-AccessibilityRatio,即显示数传失败率和接入性失败率。
这部分信息是累计值,即会累计多次测试的信息计算得出。
B部分显示的是每次FTP测试的信息,分别是时延,速率,测试结果。
随着测试次数的增加,每次测试结束时ID自增将信息显示出来。
C部分是DL的实时信息,显示下载进度,实时速率,所用时长,已经下载的数据量。
D部分是累计的下载数据量总和,是个累计值。
E部分是针对B部分的信息求时延和速率的最大最小值和均方差。
6.2FTP命令交互信息
除了FTP的各种KPI以外,Probe的Information视图的FTPInfo页面显示ProbeFTP与FTPServer交互的详细信息。
图2-FTP交互命令界面
FTP命令的详细说明可以参照《FTP协议的命令与返回码说明》
7FTP异常处理说明:
Probe的FTP异常处理会涉及多有可能的FTP结束情况,大体上可以分为两大类:
发生在DataTransferStart之前的失败为接入性失败;发生在DataTransferStart之后的失败为数传失败;
7.1接入性失败情况
FTP建立过程与服务器有较多交互且容易受用户配置、网络情况的影响,所以有多种接入性失败:
FailDuringLogin:
登陆时失败,主要为:
DL\UL的FTP登录FTPServer失败,包括用
户名或密码错误;配置FTP地址错误等等。
FialDuringAccess:
登录后接入FTP服务失败,主要指:
DL\UL时打开文件失败;
目标文件不存在;目标文件大小为0;添加路由表错误;目标地址无效;
目标IP解析失败等。
FailDuringDialing:
拨号过程中的失败
接入性失败的计算和统计参照ETSI定义,显示为SeviceNon-Accessibility,反映不能成功建立PDP或访问网络服务的概率,统计公式为:
失败次数/所有尝试进行FTP服务的次数,以Assistant的状态来表示为:
Non-AccessibilityRatio=
(eFailDuringLogin+eFailDuringDialing+eFailDuringAccess)\
(eSuccess+eFailDuringLogin+eFailDuringTransfer+eFailDuringDialing
+eFailDuringAccess+eIncompletion+eFailInStartTask)
※接入性失败显示在上图中A部分中
7.2数传失败情况
Probe处理的数传失败有:
FailDuringTransfer:
FTPDL\UL数传开始后的失败;
还有一种情况,ProbeFTP提供一种按时间下载的方式,用户设定一定时长,到时目标文件没有传输完毕时,ProbeFTP会结束FTP测试,并将本次测试计为数传失败。
数传失败的计算和统计参照ETSI定义,显示为DataTransferCut-offRatio,未完成的数传次数与所有数传成功开始的次数的比率。
以Assistant中的状态来表示为:
DataTransferCut-offRatio=(eIncompletion+eDataTransferError)\
(eSucess+eIncompletion+eDataTransferError)
※数传失败显示在[图1-FTP信息显示界面]中A部分中
7.3用户中止的处理
FTP测试中,用户中止的情况比较特殊,不计入数传和接入性失败中,是忽略不计入这两个指标的统计的;但在已经开始数传而被用户中止的情况下,会进行相应的速率统计。
8FTP相关统计说明
8.1失败率统计
ProbeFTP统计两种失败率:
Non-AccessibilityRatio和DataTransferCut-offRatio,详情参见本文档FTP异常处理章节说明。
8.2速率统计
当前Probe统计FTP平均速率方式与Assistant有差异,因Probe有实时显示的需求和历史设计问题,导致统计角度的无法完全一致.
ProbeFTPServiceQualityEvaluation界面的B部分和E部分都是速率统计内容,都在一次FTP结束后更新。
B部分显示本次FTP的下载时长,这次下载过程的单次平均速率和测试状态。
这个单次平均速率的公式为:
单次DL/ULAvgRate=本次下载数据量/本次下载时长
E部分显示多次FTP的累计统计速率。
累计平均速率=avg(avg1+avg2…+avgn)
对已经结束的FTP测试的所有单次平均速率求平均值,最大最小值和均方差,需要说明的是这些统计是基于单次平均速率的数学意义的统计。
与Assistant的累计FTP平均速率的统计不同。
Assistant的累计平均速率=Sum(下载数据量1+已下载数据量2+…已下载数据量n)/Sum(下载时间1+下载时间2+….+下载时间n)
9附录
待完善。