中國民航東北地區(qū)空中交通管理局黑龍江分局 謝佩燭
本文介紹了民航自動轉(zhuǎn)報系統(tǒng)進(jìn)行報文傳輸過程中MATIP協(xié)議的應(yīng)用,重點(diǎn)以MATIP TYPE B協(xié)議應(yīng)用為例,結(jié)合OSI七層參考模型,簡析報文傳輸過程中數(shù)據(jù)如何變化。
MATIP(Mapping of Airline Reservation)協(xié)議,即航空流量服務(wù)IP組(Ticketing and Messaging Traffic Over IP),是一種端到端的基于TCP網(wǎng)絡(luò)傳輸封裝航空專用協(xié)議數(shù)據(jù)包,實現(xiàn)在傳輸層和航空應(yīng)用間建立一個與路由無關(guān)的映射標(biāo)準(zhǔn)。根據(jù)IATA(國際航空運(yùn)輸協(xié)會)標(biāo)準(zhǔn)中定義的TYPE A和TYPE B兩種報文,MATIP協(xié)議分為MATIP TYPE A和MATIP TYPE B兩種,根據(jù)它們對應(yīng)不同的TCP端口號區(qū)別數(shù)據(jù)是TYPE A還是TYPE B,MATIP Type A對應(yīng)的TCP端口是350,MATIP Type B對應(yīng)的TCP端口是351[1]。
見表1所示:
表1 MATIP與OSI七層體系結(jié)構(gòu)的關(guān)系Tab.1 Relationship between MATIP and OSI seven layerarchitecture
任意一端均可以建立MATIP會話,MATIP會話的建立過程分為打開會話(SO)、確認(rèn)打開(OC)、關(guān)閉會話(SC)三步,如圖1所示。因為在MATIP協(xié)議沒有Keep-alive機(jī)制,所以會話超時由TCP協(xié)議的超時參數(shù)來控制,MATIP會話建立的前提是相關(guān)TCP連接已經(jīng)建立,但當(dāng)關(guān)閉MATIP會話時并不需要關(guān)閉TCP連接[2]。
圖1 MATIP會話建立過程Fig.1 MATIP session establishment process
表2 為MATIP首部的前4個字節(jié)報文結(jié)構(gòu)格式,其中Ver表示MATIP協(xié)議的版本,它的值必須為001,否則此包被認(rèn)為無效。C值為1時,此包是控制包;為0時,此包是數(shù)據(jù)包。下列數(shù)據(jù)包結(jié)構(gòu)均以TYPE B數(shù)據(jù)流的MATIP協(xié)議包結(jié)構(gòu)為例。當(dāng)C值為1時,Cmd 為1 1 1 1 1 1 0,此包為打開會話控制包,數(shù)據(jù)包結(jié)構(gòu)見表3;Cmd為1 1 1 1 1 0 1,此包為確認(rèn)打開控制包,確認(rèn)打開控制包分為拒絕連接(數(shù)據(jù)包結(jié)構(gòu)見表4)和接受連接(數(shù)據(jù)包結(jié)構(gòu)見表5);Cmd為1 1 1 1 1 0 0,此包為關(guān)閉會話控制包,數(shù)據(jù)包結(jié)構(gòu)見表6。Length為整個數(shù)據(jù)包的長度(字節(jié)數(shù)),包括包頭[3]。
表2 MATIP首部報文結(jié)構(gòu)格式Tab.2 MATIP header message structure format
表3 打開會話報文結(jié)構(gòu)格式Tab.3 Open session message structure format
表4 拒絕連接報文結(jié)構(gòu)格式Tab.4 Connection rejection message structure format
表5 接受連接報文結(jié)構(gòu)格式Tab.5 Accept connection message structure format
表6 關(guān)閉會話報文結(jié)構(gòu)格式Tab.6 Close session message structure format
以兩臺普通IP終端進(jìn)行收發(fā)電報為例,主機(jī)A和主機(jī)B已經(jīng)完成“三次握手”,建立了一條特定的虛電路連接。A給B發(fā)送一份TYPE B類型的報文,首先主機(jī)A的會話層進(jìn)行會話建立,在數(shù)據(jù)頭部添加打開會話控制報文頭(如表7所示);傳輸層、IP層、數(shù)據(jù)鏈路層添加相應(yīng)頭部,然后數(shù)據(jù)包通過廣播方式傳到主機(jī)B。主機(jī)B在接到此數(shù)據(jù)包后進(jìn)行解析,接下來B的會話層在數(shù)據(jù)頭部添加接受連接控制報文頭,然后添加相應(yīng)頭部后通過廣播發(fā)送給主機(jī)A。至此MATIP Type B協(xié)議會話建立,可以進(jìn)行報文傳輸。
表7 打開會話報文Tab.7 Open session message
主機(jī)A將對報文進(jìn)行封裝(如圖2所示),首先應(yīng)用層對報文格式進(jìn)行定義封套,在報文前添加BATAP(Type B應(yīng)用層到應(yīng)用層協(xié)議,它是對TYPE B數(shù)據(jù)流加密的協(xié)議)頭部;會話層添加MATIP Type B協(xié)議數(shù)據(jù)包報文頭;然后傳輸層加上TCP協(xié)議報文頭,其中包含主機(jī)A、B端口號3 5 1,用于確定雙方通信所使用的應(yīng)用程序為BATAP協(xié)議;而后網(wǎng)絡(luò)層封裝IP協(xié)議報文頭,包含雙方的IP地址,確認(rèn)了主機(jī)A和主機(jī)B的網(wǎng)絡(luò)位置;最后鏈路層加上相應(yīng)協(xié)議報文頭,確認(rèn)主機(jī)A和主機(jī)B的物理位置,同時將封裝完成的數(shù)據(jù)包采取廣播的方式,通過傳輸介質(zhì)發(fā)送給主機(jī)B。主機(jī)B接收到主機(jī)A發(fā)來的報文后將逐層進(jìn)行解封裝,提取報文內(nèi)容。
圖2 報文封裝過程Fig.2 Message encapsulation process
報文傳輸完畢后,主機(jī)A的會話層進(jìn)行結(jié)束會話,在數(shù)據(jù)頭部添加關(guān)閉會話控制報文頭(如表8所示);傳輸層、IP層、數(shù)據(jù)鏈路層添加相應(yīng)頭部,然后數(shù)據(jù)包通過廣播方式傳到主機(jī)B,主機(jī)A、B會話結(jié)束。會話結(jié)束后,TCP連接根據(jù)實際情況斷開連接均可。
表8 關(guān)閉會話報文Tab.8 Close session message
安全是民航永恒的主題,網(wǎng)絡(luò)安全尤為重要,如何保證報文在傳輸過程中不被攻擊、竊取、偵聽,MATIP可以通過用戶+密碼的形式,對使用者的身份進(jìn)行認(rèn)證,或者通過防火墻、反病毒探針、入侵檢測探針等網(wǎng)絡(luò)安全設(shè)備,實時監(jiān)測轉(zhuǎn)報系統(tǒng)各信道狀態(tài),預(yù)防病毒的侵入與攻擊,加強(qiáng)傳輸過程的可靠性。
引用
[1] 孫暢.探究自動轉(zhuǎn)報在民航通信領(lǐng)域的應(yīng)用[J].通訊世界,2020(3):97-98.
[2] 楊嬌娟.淺談TCP/IP協(xié)議[J].數(shù)字技術(shù)與應(yīng)用,2012(3):220.
[3] 李昕.基于多視角分析的TCPIP協(xié)議網(wǎng)絡(luò)安全問題研究[J].通訊世界,2017(22):26-27.