第六章-協(xié)議測試方法學(xué)_第1頁
第六章-協(xié)議測試方法學(xué)_第2頁
第六章-協(xié)議測試方法學(xué)_第3頁
第六章-協(xié)議測試方法學(xué)_第4頁
第六章-協(xié)議測試方法學(xué)_第5頁
已閱讀5頁,還剩106頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

網(wǎng)絡(luò)性能評估與測試

NetworkPerformanceEvaluationandTesting張新有副教授SichuanNetworkCommunicationKeyTechnologyLaboratoryxyzhang@87601745-6042023/2/7網(wǎng)絡(luò)性能評價與測試26.1協(xié)議測試概述6.2協(xié)議一致性測試

★6.3協(xié)議互操作測試6.4協(xié)議性能測試6.5協(xié)議魯棒性測試6.6協(xié)議測試技術(shù)的發(fā)展第6講:協(xié)議測試方法學(xué)2023/2/7網(wǎng)絡(luò)性能評價與測試3

網(wǎng)絡(luò)測試以軟件測試技術(shù)為基礎(chǔ),但又有不同之處:1)網(wǎng)絡(luò)測試以網(wǎng)絡(luò)協(xié)議與服務(wù)規(guī)范為基礎(chǔ),而非軟件需求說明書;2)網(wǎng)絡(luò)層次結(jié)構(gòu)形成了復(fù)雜的測試體系;3)除軟件測試的概念外,強(qiáng)調(diào)協(xié)議測試概念:性能測試PerformanceTesting、一致性測試ConformanceTesting、互操作測試InteroperabilityTesting,魯棒性測試。根據(jù)測試對象不同,網(wǎng)絡(luò)測試有單品測試,系統(tǒng)測試;系統(tǒng)測試又分端系統(tǒng)測試,中繼系統(tǒng)測試等分類。2023/2/7網(wǎng)絡(luò)性能評價與測試4關(guān)于網(wǎng)絡(luò)測試的理解:1)同軟件測試一樣,網(wǎng)絡(luò)測試不能保證通過測試的設(shè)備沒有錯誤與故障,更不能因此證明通過測試的設(shè)備內(nèi)部協(xié)議本身的正確性。協(xié)議的正確性驗證屬于協(xié)議工程的研究內(nèi)容,需要形式化(Formal)的協(xié)議驗證(ProtocolVerification)技術(shù)和工具來完成。2)網(wǎng)絡(luò)測試結(jié)果受使用的測試方法、測試系統(tǒng)的好壞、測試條件、測試控制數(shù)據(jù)的完整程度影響。2023/2/7網(wǎng)絡(luò)性能評價與測試56.1協(xié)議測試概述1、協(xié)議測試是協(xié)議工程的一個重要組成部分。隨著網(wǎng)絡(luò)應(yīng)用的增加和QoS要求的提高,網(wǎng)絡(luò)系統(tǒng)的復(fù)雜性在協(xié)議方面體現(xiàn)出分布性、并發(fā)性、異步性、不穩(wěn)定性和多樣性,采用直覺方法進(jìn)行協(xié)議設(shè)計,在完整性、正確性、安全性、可移植性和標(biāo)準(zhǔn)化等都難以得到保證。因此需要合適的方法、技術(shù)和輔助工具,協(xié)議工程(ProtocolEngineering)產(chǎn)生。

它用形式化的方法描述在協(xié)議中的各個活動,用一套嚴(yán)格的方法,使協(xié)議開發(fā)的整個過程一體化、系統(tǒng)化和形式化,以便提高協(xié)議的開發(fā)效率,促進(jìn)標(biāo)準(zhǔn)化協(xié)議實現(xiàn),提高網(wǎng)絡(luò)軟件的可靠性和可維護(hù)性。協(xié)議測試是協(xié)議工程中一個很重要的部分。2023/2/7網(wǎng)絡(luò)性能評價與測試6協(xié)議工程方法:(1)分析分布式用戶的應(yīng)用需求,建立文檔。(2)設(shè)計協(xié)議分層的體系結(jié)構(gòu),滿足需求。(3)定義協(xié)議分層結(jié)構(gòu)中各層的服務(wù):整體描述,定義服務(wù)原語序列集合和服務(wù)原語在使用者接口處的關(guān)系;整體描述的逐步求精,即定義準(zhǔn)確的且與實現(xiàn)無關(guān)的接口。(4)描述分層結(jié)構(gòu)的各層協(xié)議或協(xié)議類,包括在服務(wù)描述求精過程中為每個服務(wù)使用者定義一個協(xié)議機(jī)。在這個階段應(yīng)進(jìn)行協(xié)議驗證和性能評價;然后建立實現(xiàn)描述。(5)由實現(xiàn)描述產(chǎn)生目標(biāo)實現(xiàn)的編碼。(6)進(jìn)行協(xié)議的測試調(diào)試,嚴(yán)格測試協(xié)議的實現(xiàn),確認(rèn)是否符合協(xié)議描述要求和錯誤是否被糾正。2023/2/7網(wǎng)絡(luò)性能評價與測試7協(xié)議開發(fā)過程:圖1協(xié)議開發(fā)過程(生命期)2023/2/7網(wǎng)絡(luò)性能評價與測試8研究協(xié)議測試的目的是為了保證一個標(biāo)準(zhǔn)化協(xié)議的不同實現(xiàn)之間能夠成功地進(jìn)行通信。一般說來,協(xié)議標(biāo)準(zhǔn)是使用自然語言描述的,實現(xiàn)人員對于協(xié)議的不同理解可能會導(dǎo)致不同的協(xié)議實現(xiàn),甚至出現(xiàn)錯誤的實現(xiàn)。即便協(xié)議實現(xiàn)正確,也不能保證不同的實現(xiàn)彼此之間能夠準(zhǔn)確無誤地通信,而且同一協(xié)議的不同實現(xiàn)其性能也有差別。因此,需要一種有效的方法來對協(xié)議實現(xiàn)進(jìn)行判別,以驗證協(xié)議實現(xiàn)與協(xié)議標(biāo)準(zhǔn)之間、協(xié)議實現(xiàn)與協(xié)議實現(xiàn)之間的等價性,這就是”協(xié)議測試”。2、協(xié)議測試的目的2023/2/7網(wǎng)絡(luò)性能評價與測試9協(xié)議測試是用測試的方法執(zhí)行一組目的明確的測試用例,進(jìn)而觀察被測實現(xiàn)(IUT:ImplementationUnderTest)的輸出行為,并分析測試結(jié)果,對協(xié)議實現(xiàn)進(jìn)行評價,判斷IUT的功能或性能是否滿足協(xié)議或用戶的規(guī)定。

協(xié)議測試是一種黑盒測試,它依據(jù)協(xié)議標(biāo)準(zhǔn)來控制觀察被測試協(xié)議實現(xiàn)的外部行為,而后對被測協(xié)議實現(xiàn)進(jìn)行測試。2023/2/7網(wǎng)絡(luò)性能評價與測試10協(xié)議測試主要有四種:一致性測試、性能測試、互操作性測試、魯棒性測試。(1)一致性測試(ConformanceTesting):一致性測試是協(xié)議測試的基礎(chǔ),用于檢測所實現(xiàn)的系統(tǒng)(IUT)與協(xié)議現(xiàn)范描述的符合程度;

(2)性能測試(PerformanceTesting):檢測協(xié)議實體或系統(tǒng)的性能指標(biāo)(數(shù)據(jù)傳輸率、聯(lián)接時問、執(zhí)行速度。吞吐量、井發(fā)度等)。性能測試是用實驗的方法來觀測被測協(xié)議實現(xiàn)的各種性能參數(shù),如吞吐量和傳輸延遲等等,其結(jié)果往往與輸入負(fù)載有關(guān)。3、協(xié)議測試的內(nèi)容2023/2/7網(wǎng)絡(luò)性能評價與測試11

(2)互操作性測試(InteroperabilityTesting):檢測同一協(xié)議的不同實現(xiàn)版本之間、同一類協(xié)議(電子郵件協(xié)議X.400和SMTP)不同實現(xiàn)版本之間互通能力和互連操作能力;

(3)魯棒性測試(RobustnessTesting):檢測協(xié)議實體或系統(tǒng)在各種惡劣環(huán)境下運(yùn)行的能力(信道被切斷、掉電、注入干擾報文等)。2023/2/7網(wǎng)絡(luò)性能評價與測試124、協(xié)議測試的基礎(chǔ)知識LayerNEntitiesLayerNEntitiesLayerNProtocolN-PDU……N-PDUN-ServicePrimitiveN-ServicePrimitive(N-1)-ServicePrimitive(N-1)-ServicePrimitive(N)-SAP(ServiceAccessPoint)(N-1)-SAP(ServiceAccessPoint)1)OSI/RM體系結(jié)構(gòu)的基本概念:協(xié)議(Protocol);服務(wù)(Service);SAP(ServiceAccessPoint);抽象服務(wù)原語(AbstractServicePrimitive);PDU(ProtocolDataUnit);SDU(ServiceDataUnit);N-PDU=(N-1)SDU2023/2/7網(wǎng)絡(luò)性能評價與測試132)服務(wù)原語的概念

服務(wù)原語(Primitive)用來描述某層提供服務(wù)的方法,并規(guī)定通過服務(wù)訪問點(diǎn)SAP所必需傳遞的信息,供服務(wù)用戶訪問該服務(wù)。ISO/OSI定義的服務(wù)原語劃分四種類型:

①Request:服務(wù)用戶向服務(wù)提供者請求特定的服務(wù)。如建立連接,發(fā)送數(shù)據(jù),結(jié)束連接等請求。

②Indication:服務(wù)提供者向服務(wù)用戶提示某種狀態(tài),如連接請求,接收數(shù)據(jù),連接結(jié)束等指示。

③Response:服務(wù)用戶響應(yīng)先前的Indication,如接受連接的Indication。④Confirmation:服務(wù)提供者報告先前請求成功否。原語通知服務(wù)提供者采取某些行動(Request和Response),或報告某對等實體已采取的行動(Indication和Confirm)。2023/2/7網(wǎng)絡(luò)性能評價與測試14服務(wù)原語的概念2023/2/7網(wǎng)絡(luò)性能評價與測試15打電話邀請朋友參加聚會

(1)建立連接:有確認(rèn)

CONNECT.request:發(fā)送方發(fā)出建立連接的請求

CONNECT.indication:接收方收到有人請求建立連接的指示

CONNECT.response:接收方表示允許/拒絕建立連接的響應(yīng)

CONNECT.confirm:發(fā)送方收到請求建立連接的確認(rèn)

(2)數(shù)據(jù)傳輸:無確認(rèn)

DATA.request:請求發(fā)送數(shù)據(jù)

DATA.indication:表示數(shù)據(jù)的到達(dá)

(3)拆除連接:無確認(rèn)

DISCONNECT.request:請求拆除連接

DISCONNECT.indication:表示請求拆除連接的到達(dá)

一個采用面向連接服務(wù)的數(shù)據(jù)傳輸原語示例:2023/2/7網(wǎng)絡(luò)性能評價與測試16

CONNECT.request:

撥朋友的電話號碼

CONNECT.indication:

朋友家的電話鈴響了

CONNECT.response:

朋友拿起了電話

CONNECT.confirm:

你聽到了電話振鈴?fù)V?/p>

DATA.request:

你邀請朋友來參加生日聚會

DATA.indication:

朋友聽到了你的要求

DATA.request:

朋友表示很高興來

DATA.indication:

你聽到朋友接受了邀請

DISCONNECT.request:

你掛斷電話

DISCONNECT.indication:

朋友聽到了掛斷聲,也掛斷了電話打電話邀請朋友參加聚會要用到以下原語:

2023/2/7網(wǎng)絡(luò)性能評價與測試17

“狀態(tài)變遷圖”可以描述在服務(wù)訪問點(diǎn)SAP的服務(wù)原語交換關(guān)系和協(xié)議實體狀態(tài)變遷關(guān)系;OSI/RM對單層/多層實體的行為(Action/Behavior)的描述,是通過在特定的協(xié)議狀態(tài)(Protocolstate)下,內(nèi)部事件(Event)(例如:某時鐘超時)與外部事件(收到上下服務(wù)界面原語、協(xié)議數(shù)據(jù)單元-PDU)和內(nèi)外部行動及協(xié)議狀態(tài)來描述。3)狀態(tài)變遷圖2023/2/7網(wǎng)絡(luò)性能評價與測試18下圖為上層實體利用N層實體提供服務(wù)時,N層實體作為連接請求方,成功建立連接過程中,外部網(wǎng)絡(luò)服務(wù)原語與N層協(xié)議實體之間的交互示意圖。如果不考慮建立連接時的超時時鐘事件。

1)請分別列出在這一過程中對于N層協(xié)議實體來說,哪些是事件?哪些是實體采取的行為?這一過程涉及幾個協(xié)議狀態(tài)。

2)請用狀態(tài)變遷圖的方式描述相關(guān)的協(xié)議狀態(tài)變遷過程。(提示:在表示狀態(tài)間變遷的箭頭線旁,請用:Event/Behavior(Action)描述該條件下的事件/行為關(guān)系)狀態(tài)變遷圖示例:2023/2/7網(wǎng)絡(luò)性能評價與測試19

1)凡指向協(xié)議實體的箭頭所代表的協(xié)議數(shù)據(jù)單元或服務(wù)原語都是該協(xié)議狀態(tài)變遷過程中的事件(Event),即協(xié)議實體收到的信息(N-ConnectRequest和CallConnected);凡離開協(xié)議實體的箭頭所代表的協(xié)議數(shù)據(jù)單元或服務(wù)原語都是該協(xié)議狀態(tài)變遷過程中的行為(Action),即協(xié)議實體發(fā)出的原語或協(xié)議數(shù)據(jù)單元(CallRequest和N-ConnectConfirm);

該過程涉及3個狀態(tài):初始狀態(tài)(S0)、連接建立等待狀態(tài)(S1)和數(shù)據(jù)傳輸狀態(tài)(S2)。

2)Event/ActionN-ConnectConfirm/CallConnectedN-ConnectRequest/CallRequest初始狀態(tài)(S0)連接建立等待狀態(tài)(S1)數(shù)據(jù)傳輸狀態(tài)(S2)參考答案:2023/2/7網(wǎng)絡(luò)性能評價與測試206.2協(xié)議一致性測試6.2.1一致性測試的概念6.2.2一致性測試原理(ISO/IEC9646)6.2.3一致性測試方法(端系統(tǒng)和中繼系統(tǒng))6.2.4抽象測試集(ATS)6.2.5一致性測試流程2023/2/7網(wǎng)絡(luò)性能評價與測試21協(xié)議的一致性測試是一種功能性的黑盒測試,它根據(jù)協(xié)議的標(biāo)準(zhǔn)文本描述對協(xié)議的某個實現(xiàn)進(jìn)行測試,以判別此實現(xiàn)與所對應(yīng)的協(xié)議標(biāo)準(zhǔn)是否一致。協(xié)議一致性測試實質(zhì)上是利用一組測試序列,在一定的網(wǎng)絡(luò)環(huán)境下,對被測實現(xiàn)(IUT)進(jìn)行黑盒測試,通過比較IUT的實際輸出與預(yù)期輸出的異同,判定IUT在多大程度上與協(xié)議標(biāo)準(zhǔn)描述相一致,以確定通過一致性測試的IUT在互聯(lián)時成功率的高低。6.2.1一致性測試概念2023/2/7網(wǎng)絡(luò)性能評價與測試22

一致性測試是是協(xié)議測試的基礎(chǔ),只有符合協(xié)議規(guī)范的協(xié)議實現(xiàn)才有效。隨著計算機(jī)網(wǎng)絡(luò)技術(shù)和應(yīng)用的發(fā)展,網(wǎng)絡(luò)協(xié)議日益趨向復(fù)雜,一致性測試是保證協(xié)議實現(xiàn)質(zhì)量的一個必需而且十分重要的手段。

一致性測試是協(xié)議測試技術(shù)的研究重點(diǎn)。目前一致性測試已不僅是產(chǎn)品開發(fā)研制過程中一個簡單的支撐過程,而且發(fā)展成為網(wǎng)絡(luò)技術(shù)的一個重要分支。對一致性測試的研究將直接影響到網(wǎng)絡(luò)技術(shù)的進(jìn)步和網(wǎng)絡(luò)市場的競爭與發(fā)展。因此吸引了眾多研究機(jī)構(gòu)投入了大量的人力物力從事這一方面的研究和實踐工作,已經(jīng)取得了一定的成果。2023/2/7網(wǎng)絡(luò)性能評價與測試236.2.2一致性測試原理1、一致性測試標(biāo)準(zhǔn):ISO/IEC9646協(xié)議一致性測試技術(shù)經(jīng)過十幾年的發(fā)展,在許多方面取得了很大的進(jìn)展。90年代ISO制定了一套國際標(biāo)準(zhǔn)—ISO/IEC9646(CMTF:

一致性測試方法和框架),該標(biāo)準(zhǔn)描述了一個通用的方法學(xué),用以測試一個聲稱實現(xiàn)了某一協(xié)議的產(chǎn)品與相應(yīng)的協(xié)議標(biāo)準(zhǔn)的一致性。我國工信部也制訂了部分一致性測試標(biāo)準(zhǔn)(YD/T1251)。ISO/IEC9646為協(xié)議一致性測試提供了基本方法和框架,為測試集制定了設(shè)計步驟和描述方法。ISO/IEC9646包括七個部分:2023/2/7網(wǎng)絡(luò)性能評價與測試24ISO/IEC9646-1基本概念(Generalconcepts)ISO/IEC9646-2抽象測試集規(guī)范(ATS:AbstractTestSuiteSpecification)ISO/IEC9646-3樹表結(jié)合表示符號語言(TTCN:TreeandTabularCombinedNotation)ISO/IEC9646-4測試實現(xiàn)(TestRealization)ISO/IEC9646-5一致性判定過程對測試實驗室和客戶的要求(RequirementsonTestLaboratoriesandClientsfortheConformanceAssessmentProcess)ISO/IEC9646-6協(xié)議子集測試規(guī)范(ProtocolProfileTestSpecification)ISO/IEC9646-7協(xié)議實現(xiàn)一致性聲明

(ImplementationConformanceStatements)ISO/IEC9646內(nèi)容CTMF

(ConformanceTestingMethodologyandFramework)2023/2/7網(wǎng)絡(luò)性能評價與測試25在ISO/IEC9646中,一致性的協(xié)議實現(xiàn)(IUT)應(yīng)該滿足所有在協(xié)議規(guī)范中顯式表達(dá)的一致性要求,而一致性要求規(guī)定了一個一致性的協(xié)議實現(xiàn)應(yīng)該做什么,不應(yīng)該做什么。通常協(xié)議規(guī)范的要求可以分為三類:

(1)必備要求:要求在所有的實現(xiàn)中都是可觀察到的;

(2)條件要求:只有當(dāng)標(biāo)準(zhǔn)中的特殊條件滿足時才可觀察到;

(3)選擇要求:為協(xié)調(diào)實現(xiàn)而可以選擇的要求,由實現(xiàn)者來選擇。2、協(xié)議的一致性要求2023/2/7網(wǎng)絡(luò)性能評價與測試26由于大量可選功能實現(xiàn)的存在,不同的協(xié)議實現(xiàn)者對同一協(xié)議標(biāo)準(zhǔn)的各個實現(xiàn)的功能可能不完全一致,有些可選功能既可實現(xiàn),也可不實現(xiàn)。因此協(xié)議實現(xiàn)者應(yīng)向測試方提供協(xié)議實現(xiàn)一致性聲明(PICS),說明所有己實現(xiàn)的功能,從而使得測試人員知道需要進(jìn)行何種測試。測試實驗室除了由PICS提供的信息外,還需IUT和其測試環(huán)境相關(guān)的信息,即協(xié)議實現(xiàn)附加說明(PIXIT,ProtocolImplementationExtraInformationStatement)。在PIXIT中提供了測試時必須標(biāo)明的協(xié)議參數(shù),它作為測試集的一部分提出。協(xié)議實現(xiàn)一致性聲明(PICS,ProtocolImplementConformanceStatements)2023/2/7網(wǎng)絡(luò)性能評價與測試27因而在協(xié)議標(biāo)準(zhǔn)中定義的一致性測試要求分為兩組:

(1)靜態(tài)一致性要求:規(guī)定了網(wǎng)絡(luò)互連所規(guī)定的最小能力和對可選功能進(jìn)行選擇時應(yīng)遵從的約束。它規(guī)定了一個協(xié)議實現(xiàn)所應(yīng)提供的最低功能及不同可選功能之間的組合性與一致性。

(2)動態(tài)一致性要求:構(gòu)成協(xié)議標(biāo)準(zhǔn)的主體,它定義了協(xié)議實現(xiàn)和外部環(huán)境進(jìn)行通信時的全部可觀察行為。因此,對應(yīng)一致性測試包括靜態(tài)測試和動態(tài)測試兩類。

(1)靜態(tài)一致性測試是將協(xié)議實現(xiàn)者向測試方提供的“協(xié)議實現(xiàn)一致性聲明PICS”與協(xié)議規(guī)范中的靜態(tài)一致性要求相比較;(2)動態(tài)一致性測試就是運(yùn)行測試集對IUT進(jìn)行測試。2023/2/7網(wǎng)絡(luò)性能評價與測試283、協(xié)議測試級別協(xié)議測試和其他測試一樣,一般要分級進(jìn)行或者說由單元測試到集成測試再到系統(tǒng)測試。針對協(xié)議實現(xiàn)的層次結(jié)構(gòu),ISO9646標(biāo)準(zhǔn)建議了四個協(xié)議測試級別:基本連接測試(BasicInterconnectionTest),能力測試(CapabilityTest),行為測試(BehaviorTest),一致性分解測試(ConformanceResolutionTest)。

(1)基本連接測試是檢查IUT是否有最小連接能力,能否接收和發(fā)送數(shù)據(jù),從而具備進(jìn)一步測試的條件。2023/2/7網(wǎng)絡(luò)性能評價與測試29

(2)能力測試是檢查IUT是否符合靜態(tài)一致性要求。

(3)行為測試是檢查IUT是否符合動態(tài)一致性要求,它有分兩級:覆蓋性測試(ComprehensiveTesting)和窮盡性測試(ExhaustiveTesting)。覆蓋性測試要求測試序列至少執(zhí)行IUT的所有轉(zhuǎn)化一次,窮盡性測試要求檢查每個轉(zhuǎn)換的前后狀態(tài)的一致性。

(4)一致性分解測試要求測試執(zhí)行系統(tǒng)對一致性要求逐項給出判決。由于行為測試比較復(fù)雜,涉及面廣,因此CTMF建議又將它進(jìn)一步分解為多個層面。2023/2/7網(wǎng)絡(luò)性能評價與測試30IUT的行為測試分成B,C,D三大組,每個大組又分為許多小組(連接建立,數(shù)據(jù)傳輸,連接釋放)。每個小組的測試目的可能要由多個測試序列(例)來實現(xiàn)。下面列出這些組的測試要求。

B組(IUT對合法行為的響應(yīng)):測試序列及測試數(shù)據(jù)根據(jù)協(xié)議規(guī)范是合法的;

C組(IUT對語法上不合法行為的響應(yīng)):測試序列根據(jù)協(xié)議規(guī)范是合法的,測試數(shù)據(jù)不合法;

D組(IUT對不合法事件的響應(yīng)):異常事件,對協(xié)議規(guī)范不合法。2023/2/7網(wǎng)絡(luò)性能評價與測試314、一致性測試系統(tǒng)結(jié)構(gòu)模型在一致性測試中,一個被測對象IUT是一個OSI協(xié)議實體的實現(xiàn),IUT所在的系統(tǒng)稱為被測系統(tǒng)(SUT,SystemUnderTest)。

控制觀察點(diǎn)(PCO,PointsofControlandObservation)是測試系統(tǒng)和IUT之間的通信點(diǎn)。測試系統(tǒng)通過PCO訪問IUT,既可對IUT進(jìn)行通信初始化,也可觀察通信結(jié)果。

Tester和IUT的控制觀察點(diǎn)(PCO)一般定義在相鄰層次的服務(wù)訪問點(diǎn)SAP上。2023/2/7網(wǎng)絡(luò)性能評價與測試32單層/多層協(xié)議實現(xiàn)下服務(wù)訪問點(diǎn)SAP上服務(wù)訪問點(diǎn)SAP單層/多層協(xié)議實現(xiàn)服務(wù)訪問點(diǎn)SAP測試系統(tǒng)被測系統(tǒng)圖2對(單層或多層)協(xié)議實現(xiàn)的觀察點(diǎn)PCO2023/2/7網(wǎng)絡(luò)性能評價與測試33圖3一致性測試系統(tǒng)結(jié)構(gòu)模型(抽象測試系統(tǒng)模型)IUT被測實現(xiàn)SUT被測系統(tǒng)LT下測試器UT上測試器PCO控制觀測點(diǎn)SAP服務(wù)訪問點(diǎn)TCP測試協(xié)調(diào)過程ASP抽象服務(wù)原語PDU協(xié)議數(shù)據(jù)單元圖3展示了ISO/IEC9646定義的、基于OSI層次模型的協(xié)議一致性測試系統(tǒng)結(jié)構(gòu)模型和一致性測試中的一些概念。2023/2/7網(wǎng)絡(luò)性能評價與測試34上層測試器(UT,UpperTester)和下層測試器(LT,LowerTester),分別位于IUT的上側(cè)和下側(cè)PCO,通過PCO對IUT進(jìn)行控制和觀察。通常,LT是遠(yuǎn)程可訪問接口,因此IUT定義一個遠(yuǎn)端的PCO,即下層接口被設(shè)置在遠(yuǎn)端。通信被認(rèn)為是異步通信,所以在每一個PCO都對應(yīng)兩個FIFO隊列(輸入/輸出)。在CTMF中,嚴(yán)格區(qū)分上層測試功能和下層測試功能,IUT的上層測試由UT控制,下層測試由LT控制。在測試過程中,UT扮演一個用戶來使用IUT提供的功能,而LT則模仿一個IUT下層的通信實體,也就是說,UT與LT的交互是通過IUT來實現(xiàn)的。2023/2/7網(wǎng)絡(luò)性能評價與測試35IUT和UT、LT之間通過抽象服務(wù)原語(ASP,AbstractServicePrimitives)進(jìn)行通信。概念上看,LT和IUT通過協(xié)議數(shù)據(jù)單元(PDU)交換數(shù)據(jù);實際上,PDU采用ASP對基本服務(wù)動作進(jìn)行編碼,即PDU不是直接進(jìn)行交互,而是根據(jù)PDU的編碼進(jìn)行交互,即在一個抽象測試中使用PDU進(jìn)行交換,所以ASP與PDU不再加以區(qū)分。測試協(xié)調(diào)過程TCP(TCP,TestCoordinationProcedures)負(fù)責(zé)協(xié)調(diào)LT和UT的動作,這在LT和UT是兩個獨(dú)立的過程時十分必要。圖3中僅表現(xiàn)了一致性測試方法框架的概念結(jié)構(gòu),實際中的測試系統(tǒng)可根據(jù)采用的測試方法的不同有相應(yīng)的變化。2023/2/7網(wǎng)絡(luò)性能評價與測試36一致性測試---抽象測試系統(tǒng)模型抽象測試系統(tǒng)模型簡化2023/2/7網(wǎng)絡(luò)性能評價與測試37圖4是一個基于CTMF的IUT測試狀態(tài)變遷圖。一個IUT首先由測試用例的觸發(fā)條件激活,并從穩(wěn)定狀態(tài)進(jìn)入到被測狀態(tài);經(jīng)過測試用例在測試體中運(yùn)行,進(jìn)行測試結(jié)束狀態(tài);如果執(zhí)行的結(jié)果不相同,則需要經(jīng)檢查過程分析結(jié)果中存在的問題,從而進(jìn)入驗證狀態(tài);根據(jù)檢查結(jié)果提出反饋,進(jìn)入下一輪的測試階段。如果測試用例的結(jié)束狀態(tài)相同,則直接進(jìn)入穩(wěn)定狀態(tài),等待下一次測試過程。5、IUT測試狀態(tài)變遷圖2023/2/7網(wǎng)絡(luò)性能評價與測試38圖4IUT測試狀態(tài)變遷圖2023/2/7網(wǎng)絡(luò)性能評價與測試396.2.3一致性測試方法

抽象測試模型描述由LT、UT和TCP組成的抽象測試結(jié)構(gòu)以及它們與測試系統(tǒng)和SUT的關(guān)系組成。一致性測試使用在PCO對被測實現(xiàn)的層間ASP和PDU進(jìn)行控制和觀察。根據(jù)被測對象不同,一致性測試的抽象測試方法分為兩大類:端系統(tǒng)的抽象測試法和中繼系統(tǒng)的抽象測試法。抽象測試模型2023/2/7網(wǎng)絡(luò)性能評價與測試40ISO/IEC9646根據(jù)Tester和IUT的控制觀察點(diǎn)的不同組合,將端系統(tǒng)抽象測試方法分為本地測試法(Location)和外部測試法(External)。

本地測試法適合于在產(chǎn)品內(nèi)部測試;外部測試法(所謂外部是針對IUT來講)適合于遠(yuǎn)程的第三方測試,又可分為分布測試法(Distributedtest)、協(xié)同測試法(Coordinatedtest)和遠(yuǎn)程測試法(Remotetest)三種。這三種外部測試法假定在IUT的下邊界不存在PCO。1、端系統(tǒng)IUT的抽象測試方法2023/2/7網(wǎng)絡(luò)性能評價與測試41該測試法與傳統(tǒng)軟件測試相對應(yīng)。該測試系統(tǒng)中,測試執(zhí)行系統(tǒng)UT、LT和IUT在同一系統(tǒng)內(nèi)。其中LT和UT分別對應(yīng)于IUT的上下接口,作用在IUT上下接口處,并通過交換事件來觀察IUT的行為,測試協(xié)調(diào)過程(TCP)用于協(xié)調(diào)LT和UT的動作(圖5)。1)本地測試法(LTM:LocaltestMethod)圖5本地測試法(LTM)2023/2/7網(wǎng)絡(luò)性能評價與測試42

優(yōu)點(diǎn):測試功能最強(qiáng),能夠全面測試IUT對正常事件的反應(yīng)和異常時間的反應(yīng);上、下測試器之間同步與協(xié)調(diào)容易。

缺點(diǎn):①當(dāng)無法對IUT的上下邊界進(jìn)行訪問時,要滿足測試系統(tǒng)與被測協(xié)議實體之間的無縫接合會有一定的難度。②被測協(xié)議在和上層協(xié)議及下層協(xié)議之間都需要一個PCO,這就要求測試者對協(xié)議系統(tǒng)的實現(xiàn)要很了解,并熟悉上下層協(xié)議之間的交互過程,才能正確地設(shè)立控制和觀察點(diǎn)。③只能作為系統(tǒng)開發(fā)時的內(nèi)部測試系統(tǒng)使用,工作量大。難以作為第三方測試的使用技術(shù)。

??能否簡化?能否將測試器移出被測系統(tǒng)?2023/2/7網(wǎng)絡(luò)性能評價與測試43分布式測試方法對應(yīng)的結(jié)構(gòu)中IUT和UT處理同一臺機(jī)器中,而LT分布在其他的若干臺機(jī)器中,如圖6所示。LT和IUT借助于(n-1)層服務(wù)交換報文,它們之間的PCO從IUT轉(zhuǎn)移到LT中。2)分布測試法(DTM:DistributedtestMethod)圖6分布測試法2023/2/7網(wǎng)絡(luò)性能評價與測試44由于UT必須在被測系統(tǒng)中實現(xiàn),因此UT的實現(xiàn)由兩部分組成:與測試過程控制有關(guān)部分+I(xiàn)UT接口適配器(或稱IUT接口部分)。下圖為UT內(nèi)部結(jié)構(gòu)示意圖:UT測試控制部件(即測試狀態(tài)控制及UT主動測試控制數(shù)據(jù)與生成測試應(yīng)答數(shù)據(jù)生成及收發(fā))IUT上界面內(nèi)部服務(wù)接口適配區(qū)IUT(ImplementationUnderTest)UT上測試器(UT)的內(nèi)部結(jié)構(gòu)與功能上測試器UT的實現(xiàn)問題2023/2/7網(wǎng)絡(luò)性能評價與測試45

優(yōu)點(diǎn):實現(xiàn)了系統(tǒng)分布,使測試效率有了很大的提高。

缺點(diǎn):①由于UT和LT分布在不同的機(jī)器中通過IUT間接通信,所以UT和LT之間的同步有一定困難,直接導(dǎo)致測試執(zhí)行存在難度。有人嘗試提出同步測試集,就是通過測試集進(jìn)行同步。但是由于有些協(xié)議并不是嚴(yán)格的同步,因此如果分布測試結(jié)構(gòu)沒有協(xié)同,任何一個測試集都不能保證完整錯誤覆蓋。

②由于對IUT的下服務(wù)訪問點(diǎn)只能進(jìn)行間接訪問,對下界面異常情況的控制能力下降(較難制造異常情況)。2023/2/7網(wǎng)絡(luò)性能評價與測試46為了減少在被測系統(tǒng)中實現(xiàn)的上測試器(UT)的難度,盡量減少其復(fù)雜度,部分犧牲測試效率,將LT與UT的工作模式改為主從模式,LT為主,UT主要以應(yīng)答為主,改稱測試應(yīng)答器(TR-TestResponder)。實例:美國NBS的分布式測試系統(tǒng)的使用說明中特別強(qiáng)調(diào),使用該測試系統(tǒng)必須配備異地專用通信工具——電話,出現(xiàn)問題時,通知被測系統(tǒng)方重新啟動被測系統(tǒng)。??如何解決LT與UT間的協(xié)調(diào)同步問題?2023/2/7網(wǎng)絡(luò)性能評價與測試47有時,測試者會將IUT嵌入一個復(fù)雜的系統(tǒng)中,但UT不能放到該系統(tǒng)中,這樣就引入了遠(yuǎn)程測試方法。該測試方法中沒有UT,因此不需要UT和LT之間的協(xié)同。遠(yuǎn)程方法適用于被動式協(xié)議實體或者服務(wù)型協(xié)議實體的測試。在使用這種測試方法時,測試過程都是通過觸發(fā)協(xié)議使之有一定的反饋或者沒有特定的反饋來判定協(xié)議。如圖7,LT和IUT借助于(n-1)層ASP交換報文,反饋信息由n層的(PDU)實現(xiàn)。3)遠(yuǎn)程測試法(RTM)圖7遠(yuǎn)程測試法2023/2/7網(wǎng)絡(luò)性能評價與測試48

優(yōu)點(diǎn):實現(xiàn)一個只有LT的測試系統(tǒng)就能夠?qū)Σ煌到y(tǒng)中的同類IUT進(jìn)行測試,系統(tǒng)設(shè)計與實現(xiàn)都相對簡單。該測試方法對于高層的路由協(xié)議測試十分有效,并且由于它和DTM一樣都分布在不同的機(jī)器中,可以通過遠(yuǎn)程來訪問。通過這些測試方法可以建立測試中心來實現(xiàn)通過公共數(shù)據(jù)網(wǎng)絡(luò)進(jìn)行協(xié)議一致性測試。2023/2/7網(wǎng)絡(luò)性能評價與測試49

缺點(diǎn):①測試能力有限:由于僅能夠通過在被測系統(tǒng)外部與IUT下服務(wù)界面上的SAP間接地訪問IUT,因此只能在IUT下界面測試IUT的正常協(xié)議交互情況,不能測試違背協(xié)議的異常情況IUT的應(yīng)答與活動情況。②由于無上測試器,只能以IUT上層協(xié)議“代替”。即使該實現(xiàn)經(jīng)過測試符合相關(guān)協(xié)議,該“上測試器”只能發(fā)送和對IUT的正常行為作應(yīng)答,不能測試IUT上面的協(xié)議異常應(yīng)答情況。

??能否綜合LTM和RTM的優(yōu)缺點(diǎn),對RTM進(jìn)行改進(jìn)?2023/2/7網(wǎng)絡(luò)性能評價與測試50該方法與分布式測試方法相似(圖8)。兩者的根本區(qū)別是協(xié)同方法引入了一個協(xié)同協(xié)議TMP(TestManagementProtocol,測試管理協(xié)議),這個協(xié)議用來協(xié)同或者同步UT和LT。

4)協(xié)同測試法(CTM:CoordinatedtestMethod)圖8協(xié)同測試法2023/2/7網(wǎng)絡(luò)性能評價與測試51

優(yōu)點(diǎn):引入了協(xié)同協(xié)議TMP,彌補(bǔ)了分布式測試方法中不能協(xié)同的問題。

缺點(diǎn):增加了測試系統(tǒng)的復(fù)雜性。協(xié)同方法測試案例通過測試管理協(xié)議TMP的數(shù)據(jù)單元來進(jìn)行協(xié)調(diào),并且它不能直接使用分布式方法的測試案例。2023/2/7網(wǎng)絡(luò)性能評價與測試52LTM測試功能最全面但實現(xiàn)困難,難以作為第三方測試的技術(shù);RTM實現(xiàn)簡單,但測試能力太弱,只能作被動測試(監(jiān)測)或簡單測試的手段;改進(jìn)后的DTM,即CTM,功能居中,但UT器的復(fù)雜性使系統(tǒng)間移植有一定的難度。新的出路在何方?ISO定義的4種抽象測試法小結(jié)

2023/2/7網(wǎng)絡(luò)性能評價與測試531)對ISO四種抽象測試法的分析要能夠?qū)Ρ粶y協(xié)議實現(xiàn)進(jìn)行全面的測試,就必須能夠直接對IUT的上下服務(wù)接口進(jìn)行直接的訪問,直接在服務(wù)訪問點(diǎn)注入測試控制數(shù)據(jù)和觀察被測對象的應(yīng)答,以此全面評估IUT的協(xié)議活動是否符合相關(guān)協(xié)議標(biāo)準(zhǔn)。而長期以來人們的認(rèn)識是:要這樣做就只有將全部測試系統(tǒng)放置在被測系統(tǒng)之中。

2、鉗形渡口測試法(Ferry-ClipTestMethod)2023/2/7網(wǎng)絡(luò)性能評價與測試54

在英國國家物理實驗室(NationalPhysicalLaboratory)工作期間,在分析各類測試方法和實現(xiàn)各方法的典型系統(tǒng)的基礎(chǔ)上,Zeng意識到應(yīng)當(dāng)將復(fù)雜的測試功能與服務(wù)接口適配功能分離,將數(shù)據(jù)傳回外部的測試系統(tǒng)進(jìn)行復(fù)雜的處理。這就是“渡船”(Ferry)概念提出的背景。受人或汽車借用“渡船”過河的簡單實事的啟發(fā),提出在測試系統(tǒng)與被測系統(tǒng)間利用“渡船通道”,將外測試系統(tǒng)向IUT注入測試控制數(shù)據(jù)和將IUT應(yīng)答信息返回外測試器進(jìn)行復(fù)雜處理的問題。2023/2/7網(wǎng)絡(luò)性能評價與測試55①早期的“渡船測試法”是針對協(xié)同測試法提出來的。圖9用渡船測試法取代協(xié)同測試法與IUT支撐層的對等實體與IUT支撐層的對等實體IUT的下服務(wù)訪問點(diǎn)SAPIUT(ImplementationUnderTest)被測系統(tǒng)下測試器

(LT)外部測試系統(tǒng)上測試器

(UT)主渡口從渡口接口適配區(qū)上測試器收發(fā)的數(shù)據(jù)渡船通道IUT的上服務(wù)訪問點(diǎn)SAP2)“渡船”測試法(FerryTestMethod)2023/2/7網(wǎng)絡(luò)性能評價與測試56②“鉗形渡口”(FerryClip)與用“鉗形渡口測試法”(Ferry-ClipTestMethod)替代四種抽象測試法。圖10用鉗形渡口測試法取代ISO四種測試法下接口適配區(qū)與IUT支撐層的對等實體IUT的下服務(wù)訪問點(diǎn)SAPIUT被測系統(tǒng)下測試器

(LT)外部測試系統(tǒng)上測試器

(UT)主“鉗形”渡口從“鉗形”渡口上接口適配區(qū)上、下測試器收發(fā)的數(shù)據(jù)渡船通道IUT的上服務(wù)訪問點(diǎn)SAP2023/2/7網(wǎng)絡(luò)性能評價與測試57③

渡船測試法和鉗形渡口測試法后被ISO相關(guān)工作組列入端系統(tǒng)的測試方法。后作為實現(xiàn)ISO四種抽象測試方法的通用實現(xiàn)方法。④中國科學(xué)院成都計算機(jī)應(yīng)用研究所在兩項國家自然科學(xué)基金項目、一項“七五”攻關(guān)項目、一項中科院院長基金項目和兩項四川省應(yīng)用基礎(chǔ)項目的支持下,經(jīng)過7年的努力,以鉗形渡口測試法為基礎(chǔ)研究發(fā)的OSI傳送層協(xié)議測試系統(tǒng)獲中國科學(xué)院科技進(jìn)步一等獎。2023/2/7網(wǎng)絡(luò)性能評價與測試583、中繼系統(tǒng)IUT的抽象測試方法1)中間/中繼系統(tǒng)測試的特點(diǎn)①中間/中繼系統(tǒng)的ConformanceTesting原則上可參照端系統(tǒng)的測試。I/O單元的單層測試通常在開發(fā)階段進(jìn)行,第三方測試通常不采用,原因:一是I/O單元分別涉及兩組協(xié)議棧,二是其大量協(xié)議行為定義為外部可觀察特征。②用戶數(shù)據(jù)平臺更關(guān)注其轉(zhuǎn)發(fā)/中繼性能指標(biāo)。性能指標(biāo)是路由器/交換機(jī)測試的重要組成部分(基準(zhǔn)測試)。2023/2/7網(wǎng)絡(luò)性能評價與測試59③多端口間的并發(fā)數(shù)據(jù)流到達(dá)規(guī)律、轉(zhuǎn)發(fā)規(guī)律(與路徑表、交換表和路徑算法有關(guān))對性能影響,要求測試系統(tǒng):能對多個輸入、輸出端口同時進(jìn)行測試(多點(diǎn)并發(fā)測試控制)。能夠模擬網(wǎng)絡(luò)數(shù)據(jù)流的到達(dá)規(guī)律(數(shù)據(jù)流生成器)。能夠?qū)Χ鄠€端口間數(shù)據(jù)到達(dá)規(guī)律進(jìn)行協(xié)調(diào)和控制(測試控制協(xié)調(diào))。能夠模擬路徑選擇協(xié)議對性能的影響(能夠?qū)β窂奖硎┘佑绊?。2023/2/7網(wǎng)絡(luò)性能評價與測試60

④路由器是多個多層結(jié)構(gòu)互聯(lián)而成的設(shè)備,是多個輸入輸出間的數(shù)據(jù)轉(zhuǎn)發(fā)設(shè)備,出于以下的考慮,對路由器的測試通常不采用分層測試:

標(biāo)準(zhǔn)化機(jī)構(gòu)未對中繼系統(tǒng)中繼功能(RelayFunction)提供任何規(guī)范,而由產(chǎn)品生產(chǎn)廠家自己決定,因而對該功能的測試缺乏依據(jù)。例如,路由器是N×N的轉(zhuǎn)發(fā)設(shè)備,與傳統(tǒng)交換層相關(guān)的協(xié)議的描述為1×1關(guān)系。

盡管路由器涉及多個多層結(jié)構(gòu)的實現(xiàn),出于轉(zhuǎn)發(fā)效率考慮各層間界面不清晰,很難找到可直接訪問的界面。2023/2/7網(wǎng)絡(luò)性能評價與測試61

從使用者的角度,更關(guān)心中繼層PDU實際轉(zhuǎn)發(fā)效率(也即設(shè)備性能),因此可從設(shè)備外部進(jìn)行觀測。

ISO9646為Conformancetest定義的開放中繼系統(tǒng)的抽象測試方法包括兩類:

回環(huán)測試方法和穿越測試方法。2023/2/7網(wǎng)絡(luò)性能評價與測試622)回環(huán)測試方法(Loop-backTestMethod)

回環(huán)測試方法只需要一個測試器,但要求在被測實現(xiàn)的系統(tǒng)內(nèi)部或外部鏈路上實現(xiàn)回環(huán),而且其測試能力過于簡單,因而不夠?qū)嵱?。另外,被測中繼系統(tǒng)只有一端的行為被直接觀察到,而另一端的行為不能被正確地評價。2023/2/7網(wǎng)絡(luò)性能評價與測試63(b)回環(huán)測試法控制觀察點(diǎn)(N)-PDU測試器控制部件

測試支撐層(N-1層服務(wù)提供者)N層協(xié)議實現(xiàn)+N-中繼功能(N-1)-SAP被測路由器(RUT)PCO測試器2023/2/7網(wǎng)絡(luò)性能評價與測試64優(yōu)點(diǎn):簡單缺點(diǎn):由于路徑表在輸入單元,由于測試器與路由器被測端口在同一子網(wǎng)段,查表后自動返回測試器,不能測試路由器的實際轉(zhuǎn)發(fā)功能。也難以測試到路徑表的其他表項的正確與否?;丨h(huán)測試法的利弊:2023/2/7網(wǎng)絡(luò)性能評價與測試65

穿越測試方法能夠測試中繼系統(tǒng)的全部中繼功能,但需要至少兩個測試系統(tǒng)。各測試系統(tǒng)之間的協(xié)調(diào)是實現(xiàn)穿越測試方法的難點(diǎn),穿越測試方法則使被測中繼系統(tǒng)在平常的操作模式下得到測試,在兩端的行為都能夠觀察到。3)穿越測試方法(TTM-TransverseTestMethod)2023/2/7網(wǎng)絡(luò)性能評價與測試66

測試器1測試器2(d)穿越測試法示意圖被測路由器測試器2測試器1測試支撐層(N-1層服務(wù)提供者)測試控制PCO1測試控制PCO2(N)-PDU(N)-PDU中繼功能(路徑選擇)IP協(xié)議IP協(xié)議(N-1)-SAP(N-1)-SAP測試同步手段2023/2/7網(wǎng)絡(luò)性能評價與測試67優(yōu)點(diǎn):能夠模擬路由器一對端口間的正常工作狀況,包括中繼功能;一對測試器在同一雙端口測試系統(tǒng)中容易實現(xiàn)。缺點(diǎn):不能同時測試多個端口間的相互影響;盡管可以用多個雙端口測試系統(tǒng)性能測試同時測試,但多個雙端口測試器間的同步控制困難;現(xiàn)代路由器/交換機(jī)可能有數(shù)十,上百個端口,很難在同一系統(tǒng)中實現(xiàn)。穿越測試法(TransverseTestMethod)的利弊分析2023/2/7網(wǎng)絡(luò)性能評價與測試68①端系統(tǒng)(End-System)

7/5層結(jié)構(gòu);對其測試更關(guān)注Conformance。通過對測試對象(單/多層協(xié)議實現(xiàn))的上下服務(wù)接口的“SAP”直接/間接觀測進(jìn)行測試。LocalTestMethod(內(nèi)部直接觀察控制):N-SAP(可直接訪)+(N-i)-SAP(直接可訪)RemoteTestMethod(外部間接觀察控制):N-SAP(不可訪)+(N-i)-SAP(可間接訪)Distributed/CoordinatedTestMethod(內(nèi)外結(jié)合的觀測控制):

N-SAP(可直接訪)+(N-i)-SAP(間接可訪)

下測試(LowerTester)在所有方法中都需要,即在被測系統(tǒng)外部間接觀察控制被測對象IUT的下界面(N-i)-SAP。IUT(ImplementationUnderTest)N-SAP(N-i)-SAP4、一致性測試總結(jié)2023/2/7網(wǎng)絡(luò)性能評價與測試69②中繼/中間系統(tǒng)(Relay/IntermediateSystem)用戶平臺(U-Platform):最多下三層,測試更關(guān)注Performance??刂乒芾砥脚_(S&M-Platform):7/5層,測試更關(guān)注Conformance。兩個平臺的測試都采用類似于測試端系統(tǒng)的RTM,即通過外部(N-i)-SAP間接觀察控制,N-SAP不觀察控制)。大量使用穿越測試法:對一對/多對端口進(jìn)行測試;回環(huán)測試法因功能受限,很少用作正式測試方法。只需要下測試器(LowerTester)。③結(jié)論:所有測試至少需要下測試器!2023/2/7網(wǎng)絡(luò)性能評價與測試701)下測試器功能①下測試器與被測對象在協(xié)議層次上的關(guān)系被測協(xié)議實現(xiàn)(IUT)的對等實體,即(N-i)到N層協(xié)議的實現(xiàn)。通過自身的(N-i)-SAP間接觀察控制IUT的行為,即它需要有(N-i)-Service的支持。②下測試器功能需求下測試器必須有從物理層到(N-i)層協(xié)議的正確實現(xiàn)(測試支撐平臺),以便利用(N-i)層服務(wù)傳送測試控制數(shù)據(jù)。(測試支撐平臺)下測試必須具有IUT對等實體的協(xié)議功能,能生成IUT相關(guān)協(xié)議的協(xié)議數(shù)據(jù)單元(PDU)。(正常測試數(shù)據(jù)生成)5、下測試器(LT)功能與組成2023/2/7網(wǎng)絡(luò)性能評價與測試71其行為必須能夠支持IUT相關(guān)協(xié)議規(guī)定的正常協(xié)議行為,同時還需要根據(jù)需要生成異常情況的數(shù)據(jù)單元。(測試異常情況所需測試數(shù)據(jù)的生成)如果IUT是多層協(xié)議實現(xiàn)(N層至應(yīng)用層),下測試器必須具備相應(yīng)的協(xié)議功能和(N-i)-Service平臺,在這種情況下,被測對象變?yōu)槎鄬訌?fù)雜的協(xié)議組合測試控制數(shù)據(jù)的定義和測試控制過程都較復(fù)雜,對IUT各層的異常情況測試較難控制,對結(jié)果的分析也更困難。—單層測試更好下測試器必須具備描述測試數(shù)據(jù)和測試過程控制的功能(測試控制描述語言)和將測試控制語言描述的測試控制數(shù)據(jù)轉(zhuǎn)變?yōu)闇y試器可執(zhí)行程序的能力(測試語言支撐工具)。2023/2/7網(wǎng)絡(luò)性能評價與測試72下測試器還需要其他測試輔助功能,包括:測試過程顯示功能(文字或圖形化):測試監(jiān)測測試過程記錄功能:Logging根據(jù)前面測試結(jié)果靜態(tài)/動態(tài)地確定下面測試的功能:靜態(tài)/動態(tài)測試?yán)x擇(TestCaseSelection)2023/2/7網(wǎng)絡(luò)性能評價與測試73測試支撐平臺(軟/硬):TestSupport

Platform測試控制數(shù)據(jù)描述及支撐工具:TestDefinitionLanguage+Compiler/InterpreterIUT對等實體模塊(正常、異常):IUTPeer測試控制模塊(測試集執(zhí)行模塊):TestExecutor用戶(測試操作人員)接口模塊:TestInterfaceModule2)基本功能模塊2023/2/7網(wǎng)絡(luò)性能評價與測試74一個遠(yuǎn)程測試法RTM的Tester系統(tǒng)結(jié)構(gòu)2023/2/7網(wǎng)絡(luò)性能評價與測試756.2.4測試集(TS)設(shè)計及執(zhí)行協(xié)議一致性測試研究工作主要集中于兩方面:①測試方法的研究和測試系統(tǒng)的建立;②如何從理論和方法上研究并生成高質(zhì)量的測試集;其中,測試集(TestSuite)是測試的核心和主線,測試系統(tǒng)是實現(xiàn)協(xié)議一致性測試的基礎(chǔ),兩者是互相配合,互相制約的。一個好的測試方法和測試系統(tǒng),可以極大地簡化測試序列的設(shè)計,使測試能方便、自動、高效地進(jìn)行;而一個好的測試集也可以極大地減輕測試系統(tǒng)的負(fù)擔(dān)。2023/2/7網(wǎng)絡(luò)性能評價與測試76

從測試集角度看,協(xié)議一致性測試分為3個階段:第一階段是測試生成。測試生成的目的是從協(xié)議描述中生成獨(dú)立于協(xié)議實現(xiàn)的、用嚴(yán)格的測試表示語言描述的抽象測試集(ATS);第二階段是測試實現(xiàn),把抽象測試集中的測試?yán)D(zhuǎn)換成在實際系統(tǒng)上可執(zhí)行測試集(ETS);第三階段為測試執(zhí)行(TE),在特定的IUT上執(zhí)行測試用例(Case),并且觀察IUT的外部行為結(jié)果,最后對IUT與協(xié)議說明是否一致給出判定結(jié)果。2023/2/7網(wǎng)絡(luò)性能評價與測試771、抽象測試集(ATS)1)ATS結(jié)構(gòu)測試集具有層次結(jié)構(gòu),圖1是測試集的結(jié)構(gòu)。每個測試集(TestSuite)都是針對某一被測協(xié)議的,它由多個測試組(TestGroup)組成;每一測試組往往是針對某一類測試意圖(TestPurpose)的覆蓋,比較常見的測試組劃分是根據(jù)協(xié)議有限狀態(tài)機(jī)(FiniteStateMachine,F(xiàn)SM)的不同狀態(tài),對每一狀態(tài)的測試意圖的集合構(gòu)造一個測試組,測試組由多個測試?yán)M成;每一測試?yán)轻槍δ骋粶y試意圖的。2023/2/7網(wǎng)絡(luò)性能評價與測試78在一個測試集中,被嵌套測試組用來提供測試?yán)倪壿嫶涡?,測試組可以嵌套的深度是任意的。圖1測試集的結(jié)構(gòu)圖2測試?yán)慕M成2023/2/7網(wǎng)絡(luò)性能評價與測試79測試集中的關(guān)鍵是測試?yán)?。每個測試?yán)衅浯_定目標(biāo)來驗證IUT的某個確定性能,測試?yán)膶嵸|(zhì)是通過一些測試序列(TestSequence)來實現(xiàn)對每一測試意圖的判定,這些測試序列稱為測試?yán)腷ody部分。在開始body前,往往要一些前綴序列:preamble,目的是通過這些測試序列使IUT進(jìn)入某一狀態(tài),以便執(zhí)行body。執(zhí)行body后,需要驗證IUT實現(xiàn)是否按協(xié)議文本FSM的要求達(dá)到某一狀態(tài),即是否與協(xié)議一致。判定后,可能需要執(zhí)行后綴序列postamble,將IUT引入某狀態(tài)(如空閑態(tài)),如圖2。圖2測試?yán)慕M成2023/2/7網(wǎng)絡(luò)性能評價與測試80利用被稱為測試步(TestStep)的子劃分,可將測試?yán)K化。在每個測試?yán)?,可提取較為公共的部分作為測試步,編組成測試步庫被調(diào)用??砂慈我獾呐涮咨疃?,將測試步庫構(gòu)造成測試步的配套集,可把測試步庫與整個測試集或一個特定的測試組聯(lián)系起來。如preamble、verification、postamble等都可作為通用的測試步,因為它們獨(dú)立于每一個測試?yán)?。body中也可引用測試步,這種引用構(gòu)成了一種專用于描述抽象測試集的語言TTCN的動態(tài)行為樹。樹表組合表述法(TTCN:TreeandTabularCombinedNotation,)2023/2/7網(wǎng)絡(luò)性能評價與測試81測試?yán)蜏y試步的最小單位是測試事件(TestEvent),它實際上是測試序列的每一步,直接描述ASPs、PDUs和Timer的一次具體行為(發(fā)、收、啟動計時、超時等)。測試事件是測試步內(nèi)規(guī)范的不可見單元(例如到IUT或來自IUT的單個PDU或ASP的傳送)。所有測試步都是按照測試事件的順序或其它較小的測試步來規(guī)定的,因此,全部測試步即等效于測試事件的序列。2023/2/7網(wǎng)絡(luò)性能評價與測試822)ATS的生成①手工生成ATS為了對ATS設(shè)計提供參考,ISO/IEC9646-2給出了ATS產(chǎn)生的主要過程,設(shè)計者不需要完全遵守這種規(guī)則。

在設(shè)計ATS之前,需要先研究相關(guān)協(xié)議的PICS,決定哪些一致性要求要被測試;

根據(jù)一致性要求的不同覆蓋,決定測試組的劃分;

對每個測試組決定其每個元素的測試目標(biāo);

對每一測試目標(biāo)描述通用測試?yán)?GTC),它獨(dú)立于抽象測試方法,可以用Body和Event序列來描述;2023/2/7網(wǎng)絡(luò)性能評價與測試83

根據(jù)選定某種抽象測試方法,以GTC為依據(jù),派生出ATC,它是與抽象測試法相關(guān)的,加入了測試器(如LT)能力和測試協(xié)調(diào)過程(TCP)的限制;

選定某種標(biāo)準(zhǔn)化的測試集描述法(如TTCN),描述ATC的集合,包括所需的測試步的集合;

表示測試?yán)g、測試?yán)蚉ICS時間的關(guān)系,為測試集選擇和可執(zhí)行化提供基礎(chǔ);

考慮維護(hù)ATS的過程。2023/2/7網(wǎng)絡(luò)性能評價與測試84目前,絕大多數(shù)一致性測試序列的自動生成算法都是基于有限狀態(tài)機(jī)FSM模型的,協(xié)議測試方法都是在轉(zhuǎn)移級別來做的,針對FSM中的單個轉(zhuǎn)移生成相應(yīng)的測試子序列。整個測試序列經(jīng)過規(guī)范化即生成通用測試集(GTS).然后分析子序列的關(guān)系,得到針對特定測試目標(biāo)(比如測試一個狀態(tài)、一個變遷等)的完整的測試序列。采用適當(dāng)?shù)臏y試集描述法對上述得到的測試序列進(jìn)行描述,就得到一個完整的測試?yán)?。如此?gòu)造出針對每一個特定測試點(diǎn)的測試?yán)?,就能夠組合成抽象測試集(ATS)。②自動生成ATS2023/2/7網(wǎng)絡(luò)性能評價與測試852、可執(zhí)行測試集(ETS)在測試實現(xiàn)階段,根據(jù)(IUT)的PICS和PIXIT(通常采用XML形式表達(dá)),從抽象測試集ATS中選擇適當(dāng)?shù)臏y試?yán)コ龥]有意義的測試?yán)?,并使用PIXIT提供的信息來量化這些測試?yán)某橄鬁y試集(ATS)生成可在一實際的測試系統(tǒng)上執(zhí)行的參數(shù)化的可執(zhí)行測試集(ETS),即可在特定測試設(shè)備上對某個IUT進(jìn)行測試運(yùn)行的測試集。

2023/2/7網(wǎng)絡(luò)性能評價與測試86選擇通常采用的方式是:提供一個PICS/PIXIT文件模板,以問卷的形式提供給被測協(xié)議實現(xiàn)方,根據(jù)答卷修改PICS/PIXIT文件的內(nèi)容。PICS/PIXIT包含的主要內(nèi)容如下:①一般信息:包括開發(fā)商名稱,產(chǎn)品型號,協(xié)議的版本號等;②支持的應(yīng)用服務(wù):包括服務(wù)的ServiceID,服務(wù)類型,優(yōu)先級等;③支持的對象類型;④對測試環(huán)境的要求等。2023/2/7網(wǎng)絡(luò)性能評價與測試873、測試執(zhí)行(TE)現(xiàn)有的測試執(zhí)行方法可劃分為兩類:基于編譯的測試執(zhí)行(CTE)和基于解釋的測試執(zhí)行(ITE)

?;诰幾g的測試執(zhí)行,是指在測試執(zhí)行之前,由抽象測試集ATS到可執(zhí)行測試集ETS的轉(zhuǎn)換已經(jīng)由轉(zhuǎn)換器或編譯器完成,這一過程非常耗時,但是提高了測試執(zhí)行的效率。在基于解釋的測試執(zhí)行中,從ATS到ETS的轉(zhuǎn)換是在測試執(zhí)行過程中完成的,這種方法使得用戶可以對測試過程進(jìn)行動態(tài)觀察和控制,但測試執(zhí)行的效率較低。2023/2/7網(wǎng)絡(luò)性能評價與測試886.2.5一致性測試的過程協(xié)議一致性測試的測試過程簡述如下:

(1)測試方法的選擇和測試平臺構(gòu)建。(2)抽象測試集(TestSuite)的設(shè)計:在充分理解協(xié)議文本描述的基礎(chǔ)上,設(shè)計出獨(dú)立于所有協(xié)議實現(xiàn)且適合人理解的抽象測試集(ATS)。

(3)測試?yán)?TestCase)選擇:根據(jù)協(xié)議實現(xiàn)的PICS和PIXIT,從ATS中選取適當(dāng)?shù)臏y試?yán)?,并使用PIXIT提供的信息來量化這些測試?yán)?,從ATS生成可在實際的測試系統(tǒng)上執(zhí)行的可執(zhí)行測試集(ETS)。2023/2/7網(wǎng)絡(luò)性能評價與測試89

協(xié)議一致性測試的測試過程:2023/2/7網(wǎng)絡(luò)性能評價與測試90(4)測試執(zhí)行:

用ETS對IUT進(jìn)行激勵—響應(yīng)測試。一般采用基于解釋的測試執(zhí)行策略,即測試執(zhí)行器直接調(diào)用ETS中的測試?yán)M(jìn)行解釋執(zhí)行,而不需要對整個測試集進(jìn)行編譯預(yù)處理,使得用戶可對測試過程進(jìn)行動態(tài)的觀察和控制。對每個測試?yán)?,?zhí)行器順序地讀入測試步(step),編碼并執(zhí)行該測試步,激勵被測實現(xiàn)IUT做出響應(yīng),在后續(xù)的測試步中,執(zhí)行器接收被測實現(xiàn)響應(yīng)的PDU,解碼并于測試?yán)蓄A(yù)期的PDU進(jìn)行比較,給出測試結(jié)果。2023/2/7網(wǎng)絡(luò)性能評價與測試91

(5)測試結(jié)果分析和評價:

最后,靜態(tài)一致性檢查的結(jié)果和所有的測試?yán)膱?zhí)行判定結(jié)果組合在一起,形成一個有關(guān)IUT的一致性判決。當(dāng)且僅當(dāng)所有的測試都未失敗時,最終的判決才會是通過。對測試執(zhí)行產(chǎn)生的測試記錄文件進(jìn)行分析,生成測試判斷和協(xié)議一致性測試報告。2023/2/7網(wǎng)絡(luò)性能評價與測試92從測試執(zhí)行的角度看,一致性測試可分兩個階段:控制階段和觀察階段。測試系統(tǒng)向被測協(xié)議實現(xiàn)發(fā)送一系列的測試數(shù)據(jù)包,激發(fā)被測功能,這稱為一致性測試的控制階段;在測試的觀察階段,測試系統(tǒng)監(jiān)控被測協(xié)議實現(xiàn)返回的數(shù)據(jù)包,與預(yù)期的返回數(shù)據(jù)進(jìn)行比較,并做出測試判定。在測試執(zhí)行過程中,測試系統(tǒng)通過PCO對IUT的輸入和輸出進(jìn)行控制和觀察,在分析輸出是否與預(yù)期輸出相一致的基礎(chǔ)上,才得到針對本次測試的肯定結(jié)論。2023/2/7網(wǎng)絡(luò)性能評價與測試936.3協(xié)議互操作性測試6.3.1互操作測試標(biāo)準(zhǔn)6.3.2互操作測試系統(tǒng)結(jié)構(gòu)6.3.3一致性測試與互操作性測試的比較2023/2/7網(wǎng)絡(luò)性能評價與測試94隨著通信技術(shù)的發(fā)展,新的協(xié)議越來越復(fù)雜,協(xié)議一致性測試工作遇到了很多困難。在實際測試中,一致性測試通過并不能保證互操作測試一定可以通過。所以互操作性測試相關(guān)研究越來越受到重視。2023/2/7網(wǎng)絡(luò)性能評價與測試95雖然互操作性測試目前還未制定國際標(biāo)準(zhǔn),但是中國以及ETSI、ITU-T、ISO等國際組織都開展了相應(yīng)的研究工作,具體成果有:①ETSITS102237“互操作測試方法和途徑”;ETSITS202237“互操作測試方法”;②ITU-T正在完善ITU-TZ.itfm“互操作測試框架和方法”;③ISO正在許多協(xié)議簇中增加互操作測試;④中國通信行業(yè)標(biāo)準(zhǔn)YD/T1521-2006“路由協(xié)議互操作性測試方法”。該標(biāo)準(zhǔn)主要是信產(chǎn)部電信研究院、華為公司、中興通訊公司參與起草,由中華人民共和國信息產(chǎn)業(yè)部發(fā)布。6.3.1互操作測試的標(biāo)準(zhǔn)2023/2/7網(wǎng)絡(luò)性能評價與測試96目前互操作測試沒有標(biāo)準(zhǔn)定義,通常用于研發(fā)階段多廠商準(zhǔn)正式測試或者運(yùn)營商的選型測試中?;ゲ僮鳒y試評估被測實現(xiàn)與相連接相似實現(xiàn)之間在網(wǎng)絡(luò)操作環(huán)境中交互能力,并且完成協(xié)議標(biāo)準(zhǔn)中規(guī)定的功能,從而確定被測設(shè)備是否支持所需要的功能。2023/2/7網(wǎng)絡(luò)性能評價與測試97在互操作測試中,被采用最多的形式是測試單位選擇經(jīng)一致性操作和互操作測試認(rèn)可設(shè)備來與被測設(shè)備進(jìn)行互操作測試?;ゲ僮餍詼y試系統(tǒng)結(jié)構(gòu)模型如圖。6.3.2互操作測試的系統(tǒng)結(jié)構(gòu)互操作測試系統(tǒng)模型2023/2/7網(wǎng)絡(luò)性能評價與測試98

表現(xiàn)互操作性測試的重要特征是:①認(rèn)可設(shè)備(QualifiedEquipment,QE)和被測設(shè)備(EUT)來自不同廠商(至少不同生產(chǎn)線)共同定義測試邊界。二者可能是終端設(shè)備、網(wǎng)絡(luò)設(shè)備或者應(yīng)用軟件,也可能是一個單獨(dú)設(shè)備或者若干設(shè)備組合;②互操作性測試基于用戶期望的功能,并由用戶控制并觀察測試結(jié)果。用戶(TestDriver)可以是人工操作也可以是軟件程序;③互操作性測試在功能性接口上執(zhí)行和觀察,也就是說接口沒有指定在協(xié)議級而是功能級上,接口包括人機(jī)接口(MMIs)、協(xié)議設(shè)備接口(PDIs)、應(yīng)用程序接口(APIs)。2023/2/7網(wǎng)絡(luò)性能評價與測試99互操作測試過程除了測試

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論