OSPF協(xié)議的一致性測試


李江力 袁琦


  摘 要 介紹了OSPF協(xié)議一致性的測試原理和抽象測試方法,重點對OSPF協(xié)議的一致性測試技術進行研究,并對OSPF協(xié)議測試集的設計進行討論。



  關鍵詞 OSPF協(xié)議 協(xié)議一致性測試 ATS ETS 橫斷式測試法



一、引言



  隨著計算機網(wǎng)絡和通信技術的發(fā)展,特別是開放型異構網(wǎng)絡的互聯(lián),協(xié)議的設計和實現(xiàn)越來越復雜,協(xié)議測試的理論和技術得到了相應的發(fā)展。協(xié)議測試包括4種測試:一致性測試、互操作性測試、性能測試和堅固性測試。其中協(xié)議一致性測試主要是驗證網(wǎng)絡產(chǎn)品的協(xié)議實現(xiàn)的準確性,判斷網(wǎng)絡產(chǎn)品的協(xié)議實現(xiàn)是否符合協(xié)議的國際標準,以保證協(xié)議的各種實現(xiàn)版本之間能夠互通并進行可靠的通信。因此,一致性測試是協(xié)議測試的最基本內(nèi)容,是其它3種測試的基礎。


  如今,基于TCP/IP協(xié)議的Internet網(wǎng)已成為全球信息發(fā)展和交流的基礎,它以路由器作為基本交換節(jié)點,以各種局域/廣域網(wǎng)作為傳媒。其中廣域網(wǎng)的域內(nèi)路由協(xié)議大多數(shù)使用OSPF協(xié)議轉發(fā)路由信息,且OSPF協(xié)議主要位于域內(nèi)的路由器上,它是現(xiàn)有TCP/IP網(wǎng)絡中繼系統(tǒng)的核心協(xié)議。本文介紹協(xié)議一致性測試原理和抽象測試方法,重點研究OSPF協(xié)議的一致性測試技術,并對OSPF協(xié)議測試集的設計進行討論。



二、協(xié)議一致性測試



  1.一致性測試原理


  ISO/IEC9646提供了協(xié)議一致性的基本方法和框架,為測試集制定了設計步驟及描述方法,并對測試系統(tǒng)的實現(xiàn)提供了指導。


  協(xié)議一致性測試實質上是利用一組測試序列,在一定的網(wǎng)絡環(huán)境下,對被測實現(xiàn)(IUT)進行黑盒測試,通過比較IUT的實際輸出與預期輸出的異同,判定IUT在多大程度上與協(xié)議描述相一致,確立通過一致性測試的IUT在互聯(lián)時成功率的高低。一致性測試的過程和原理參見圖1。圖1中,PICS(Protocol Implementation Conformance Statement)為協(xié)議實現(xiàn)一致性說明,說明實施的要求、能力及選項實現(xiàn)的情況;PIXIT(Protocol Implementation Extra Information for Testing)為協(xié)議實現(xiàn)附加信息,提供測試時必須標明的協(xié)議參數(shù)。其具體步驟如下:


 。1)IUT的PICS分析,對IUT進行IUT的靜態(tài)一致性要求SCR檢查,分析該PICS與有關標準指定的SCR是否一致。


 。2)根據(jù)規(guī)范定義測試目的,使用PIXIT提供的信息和一致性測試組合量化測試例,寫出抽象測試集ATS,然后將ATS參數(shù)化生成可執(zhí)行測試集ETS。


 。3)使用ETS自動對IUT進行一致性測試,形成詳細的測試報告。


 。4)IUT的最終一致性考查,將已知的PICS和PIXIT分析與測試結果相綜合,獲得IUT關于標準要求的一致性結論,記錄于一致性測試報告中。


  2.一致性測試的抽象測試方法


  一致性測試模型是一致性測試器利用服務原語ASP和協(xié)議數(shù)據(jù)單元PDU,在控制和觀察點PCO對來自被測實現(xiàn)的輸出和輸入進行控制和觀察。一般來說,被測實現(xiàn)所處的系統(tǒng)分為端系統(tǒng)和中繼系統(tǒng)兩大類,在ISO/IEC9646中對這兩類系統(tǒng)的一致性測試定義了不同的抽象測試方法。


  根據(jù)一致性測試器中的上測試器UT和下測試器LT所處的位置與功能,對于端系統(tǒng)的一致性抽象測試方法分為4種類型:本地測試法、分布測試法、協(xié)調(diào)測試法和遠程測試法。本地測試法可以在被測系統(tǒng)中IUT的上下界面直接進行觀察和控制,另外3種屬于外部測試法。其中分布測試法要求有一個上測試器UT提供該界面的ASP。協(xié)調(diào)測試法不需要上層外接口,使用標準的測試管理協(xié)議TMP和下測試器之間進行測試管理和協(xié)調(diào)。遠程測試法中沒有專門的上測試器,部分測試器功能由被測系統(tǒng)實現(xiàn)。而這3種測試方法的下測試器LT都是通過通信鏈路上傳送的協(xié)議數(shù)據(jù)單元PDU對IUT進行控制和觀察。


  對2個子網(wǎng)間的中繼系統(tǒng)進行一致性測試的抽象測試法有2種:環(huán)回式測試法和橫斷式測試法。環(huán)回式測試法在中繼系統(tǒng)的端口上進行環(huán)接,這種環(huán)接可以在中繼系統(tǒng)內(nèi)完成,也可以在第二個子網(wǎng)內(nèi)完成。而在中繼系統(tǒng)的業(yè)務接入點SAP處的另一個子網(wǎng)上有2個觀察與控制點,所以只需一個測試器。環(huán)回測試法的測試功能過于簡單,因而不夠實用。橫斷測試法在業(yè)務接入的2個子網(wǎng)上各有一個觀察與控制點,需要2個測試器,這樣使得2個測試器的同步成為困難。



三、OSPF協(xié)議



  1.OSPF協(xié)議特點


  OSPF協(xié)議是一種基于Djkstra算法的鏈路狀態(tài)協(xié)議,用于自治系統(tǒng)內(nèi)的路由選擇。OSPF協(xié)議具有如下特點:


  ●當網(wǎng)絡拓外改變后迅速收斂,協(xié)議帶來的網(wǎng)絡開銷很。


  ●支持負載均衡,可以保留同一目的地的多個路由;


  ●不易產(chǎn)生環(huán)路;


  ●對路由更新信息進行認證以確保其有效性;


  ●支持區(qū)域的劃分,能夠支持大規(guī)模的網(wǎng)絡,擴展性很強。


  OSPF協(xié)議支持3種網(wǎng)絡的連接:


  ●2個路由器之間的點對點連接;


  ●具有廣播功能的局域網(wǎng);


  ●無廣播功能的廣域網(wǎng)。


  2.OSPF協(xié)議原理


  OSPF路由協(xié)議的內(nèi)容可分為交換擴散協(xié)議、網(wǎng)絡拓撲結構數(shù)據(jù)庫內(nèi)容的維護以及路由表的計算3部分。交換協(xié)議使相鄰的路由器建立鄰接關系,然后網(wǎng)絡拓撲數(shù)據(jù)庫中的每一條內(nèi)容通過擴散協(xié)議與相鄰的節(jié)點達到同步,從而使整個網(wǎng)絡中每個節(jié)點維持的網(wǎng)絡拓撲數(shù)據(jù)庫同步。每個節(jié)點當?shù)弥W(wǎng)絡拓撲結構圖發(fā)生變化時,重新計算整個或部分路由表以達到路由的迅速更新,使網(wǎng)絡拓撲的變化及時地反映在相應的路由表中。


  3.OSPF共有5種報文類型


  ●Hello報文:用來發(fā)現(xiàn)和維持鄰站的可達性;


  ●Database Description報文:向鄰站給出自己的鏈路狀態(tài)的摘要信息;


  ●Link State Request報文:向對方請求發(fā)送某些鏈路狀態(tài)的詳細信息;


  ●Link State Update報文:用擴散法向全網(wǎng)更新鏈路狀態(tài);


  ●Link State Acknowledgment報文:對鏈路更新報文的確認。



  四、OSPF協(xié)議一致性測試的方法



  OSPF協(xié)議是域內(nèi)使用的路由選擇協(xié)議,所以對于OSPF協(xié)議一致性測試采用中繼測試法使用的橫斷式測試法。在橫斷式測試法中,為了使2個子網(wǎng)的2個PCO容易達到同步,一般將PCO1和PCO2集成在一個測試器中。


  編輯器可以采用ISO9646推薦的TTCN編輯器,也可以是其它語言編輯器。首先在編輯器上編制抽象測試集ATS,ATS以固定文法的文本文件MP格式輸出,類似于匯編語言或高級語言源程序。然后,MP文件由編輯器編譯成可執(zhí)行文件ETS。處理器是測試執(zhí)行的關鍵引擎,對經(jīng)過PICS和PIXIT選擇的測試集ETS進行解釋執(zhí)行,并對PCO1或PCO2傳送來的協(xié)議數(shù)據(jù)單元PDU進行處理,同時根據(jù)測試集的內(nèi)容控制測試過程。最后生成測試報告所需要的全部信息。在該測試結構中,IUT的2個端口分別對應于PCO,當處理器從PCO1向SUT發(fā)送一個OSPF報文時,經(jīng)過OSPF模塊的路由,OSPF報文就從子網(wǎng)1轉發(fā)到子網(wǎng)2中,處理器就從子網(wǎng)2中的PCO2獲得數(shù)據(jù)報文。由于PCO1和PCO2都被集成在測試器中,便可容易地控制2個LT的協(xié)調(diào)過程。



五、OSPF協(xié)議測試集的設計



  測試集是協(xié)議一致性測試的基礎,它是以最基本的測試事件序列的形式,詳細定義了測試系統(tǒng)和協(xié)議實體的行為,從而作出測試“通過”或“失敗”的判決,測試集有如下的層次結構:測試集→測試組→測試例→測試步→測試事件。采用TTCN形式化語言可以描述出測試集。


  OSPF協(xié)議與OSI協(xié)議相比較,OSPF協(xié)議行為較簡單,在對等實體之間沒有用于建鏈或流控的數(shù)據(jù)包交換。我們按照ISO/IEC9646的建議,根據(jù)協(xié)議描述分析及條件合成,生成測試目的,設計和產(chǎn)生出OSPF協(xié)議測試集,編寫出OSPF協(xié)議測試規(guī)范。產(chǎn)生的OSPF測試集包括5個測試組,共69個測試例(見表1)。



表1 OSPF測試集


































測試組


測試目的


測試例

Ospf-2areas 域邊界路由器功能
3

Ospf-2qars 交換擴散協(xié)議功能
36

Ospf-3qars 數(shù)據(jù)包的路徑類型,AS外部LSA和AS匯總LSA功能
23

Ospf-stress 強度能力測試
6

Ospf-stub 末稍網(wǎng)絡功能
1


  這些測試組(例)涵蓋了OSPF協(xié)議描述中的主要功能,具有較好的完備性。



六、測試應用



  按照本文討論的測試方法和結構,測試工具使用Agilent公司的QA Robot測試儀來進行OSPF協(xié)議一致性測試。也可使用清華大學研制開發(fā)的基于TTCN的PITS測試系統(tǒng)。QARobot測試儀使用QBOL語言生成ETS,通過QBOL編輯器進行編譯,內(nèi)部使用UNIX操作系統(tǒng),有著可視化的界面操作。


  我們參加了國家“863”寬帶信息示范網(wǎng)核心路由器的測試工作。采用QARobot測試儀,分別對中興公司、巨龍公司和大唐公司研制的核心路由器進行了OSPF協(xié)議的一致性測試。各路由器經(jīng)過OSPF協(xié)議一致性測試后,其中的OSPF模塊的功能和性能有了明顯的改善,測試例通過率從50%提高到將近90%。


  通過實踐證明,在協(xié)議軟件的設計和開發(fā)過程中,一致性測試是用來檢測定位錯誤,同時又能提供修正建議的好方法。



摘自《電信網(wǎng)技術》

   
微信掃描分享本文到朋友圈
掃碼關注5G通信官方公眾號,免費領取以下5G精品資料
  • 1、回復“YD5GAI”免費領取《中國移動:5G網(wǎng)絡AI應用典型場景技術解決方案白皮書
  • 2、回復“5G6G”免費領取《5G_6G毫米波測試技術白皮書-2022_03-21
  • 3、回復“YD6G”免費領取《中國移動:6G至簡無線接入網(wǎng)白皮書
  • 4、回復“LTBPS”免費領取《《中國聯(lián)通5G終端白皮書》
  • 5、回復“ZGDX”免費領取《中國電信5GNTN技術白皮書
  • 6、回復“TXSB”免費領取《通信設備安裝工程施工工藝圖解
  • 7、回復“YDSL”免費領取《中國移動算力并網(wǎng)白皮書
  • 8、回復“5GX3”免費領取《R1623501-g605G的系統(tǒng)架構1
  • 本周熱點本月熱點

     

      最熱通信招聘

      最新招聘信息