余錦超
摘 要:詳細(xì)討論VDES應(yīng)用終端訪問(wèn)E航海服務(wù)的通信交互過(guò)程,并提出IALA G1139導(dǎo)則的VDES報(bào)文增加獨(dú)立Service ID以支持E航海服務(wù)尋址訪問(wèn)模式。
關(guān)鍵詞:E航海 VDES 尋址
在E航海時(shí)代中,豐富海事服務(wù)和互聯(lián)網(wǎng)應(yīng)用構(gòu)建在IP網(wǎng)絡(luò)中。當(dāng)船端具備互聯(lián)網(wǎng)接入能力,那將可順利獲得所需應(yīng)用服務(wù)??紤]到移動(dòng)基站運(yùn)行在4G/5G的高通信頻率,覆蓋范圍比較有限,實(shí)際上在海上可靠的互聯(lián)網(wǎng)通信只有衛(wèi)星通信手段。
VDES的出現(xiàn)為海上互聯(lián)互通提供一種新的可能性,VDES在實(shí)驗(yàn)室中的傳輸速率達(dá)到了384bps/s,理論上可滿(mǎn)足船端的E航海和互聯(lián)網(wǎng)應(yīng)用。由于應(yīng)用服務(wù)主要部署在IP網(wǎng)絡(luò)中,而VDES運(yùn)行在VHF網(wǎng)絡(luò)之中,因此船端是不能直接使用VDES訪問(wèn)到在IP網(wǎng)絡(luò)中的服務(wù)。在VDES中船端使用MMSI進(jìn)行標(biāo)識(shí),在互聯(lián)網(wǎng)中目的服務(wù)地址使用域名或者IP地址進(jìn)行標(biāo)識(shí),要實(shí)現(xiàn)船端和服務(wù)端的雙向通信,需要VDES服務(wù)網(wǎng)關(guān)橋接IP網(wǎng)絡(luò)和VDES網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)轉(zhuǎn)換。VDES服務(wù)網(wǎng)關(guān)需要根據(jù)船端請(qǐng)求的服務(wù)目的地址進(jìn)行路由指向,所以需要在VDES報(bào)文中指明服務(wù)目的地的信息。
1.VDES尋址通信報(bào)文需要服務(wù)標(biāo)識(shí)
船端VDES請(qǐng)求服務(wù)的報(bào)文,首先需要進(jìn)入岸基系統(tǒng)進(jìn)行處理。根據(jù)VDES“點(diǎn)到點(diǎn)”的通信機(jī)制,VDES報(bào)文應(yīng)該首先發(fā)往附近的VDES基站,實(shí)現(xiàn)VDES數(shù)據(jù)的“上岸”。VDES通過(guò)VDE公告板信息或者ASM區(qū)域廣播信息,告知附近船舶該基站的MMSI。在IALA G1139的導(dǎo)則中,VDE和ASM的報(bào)文設(shè)置了目的MMSI字段,該字段需要用于指向附近基站MMSI,所以該字段是不能用于承載服務(wù)目的地址。
當(dāng)VDES數(shù)據(jù)進(jìn)入岸基系統(tǒng)后,服務(wù)請(qǐng)求需要進(jìn)一步送往目的服務(wù)端。服務(wù)端可能是在E航海數(shù)據(jù)中心,也可能在互聯(lián)網(wǎng)中。因此在船端和服務(wù)端交互的VDES數(shù)據(jù),需要設(shè)計(jì)一個(gè)參數(shù)用于標(biāo)識(shí)服務(wù),稱(chēng)之為Service ID。通過(guò)追蹤Service ID服務(wù)標(biāo)識(shí) ,VDES服務(wù)網(wǎng)關(guān)可以實(shí)現(xiàn)IP網(wǎng)絡(luò)和VDES網(wǎng)絡(luò)之間的數(shù)據(jù)路由轉(zhuǎn)換。
2.VDES尋址通信報(bào)文中增加服務(wù)標(biāo)識(shí)
由于目前IALA G1139導(dǎo)則中并無(wú)Service ID字段,下文將圍繞Service ID具體設(shè)計(jì)進(jìn)行討論。
2.1非獨(dú)立字段可變長(zhǎng)Service ID
不設(shè)置獨(dú)立Service ID字段,且不固定Service ID長(zhǎng)度,Service ID只能放在VDES報(bào)文的Payload中,Payload的數(shù)據(jù)空間可以最大程度地利用。由于VDES服務(wù)網(wǎng)關(guān)事前不知道Service ID實(shí)際長(zhǎng)度,為了獲取Service ID,Payload需要采用結(jié)構(gòu)化語(yǔ)言,并將Service ID和有效數(shù)據(jù)獨(dú)立標(biāo)記,雖不可對(duì)Payload數(shù)據(jù)進(jìn)行整體加密,但可支持對(duì)標(biāo)記里包含的數(shù)據(jù)進(jìn)行加密,如表1所示。
2.2非獨(dú)立字段固定長(zhǎng)度Service ID
Service ID放在VDES報(bào)文的Payload中,但是事先定義Service ID在Payload的有效長(zhǎng)度,當(dāng)Service ID長(zhǎng)度不足固定長(zhǎng)度時(shí),使用特殊字符進(jìn)行填充,VDES服務(wù)網(wǎng)關(guān)不需要解釋整個(gè)Payload,只需截取固定長(zhǎng)度的Service ID部分就可以獲取路由信息,因此可以對(duì)除去固定長(zhǎng)度Service ID以外的Payload數(shù)據(jù)部分進(jìn)行加密,如表2所示。
2.3獨(dú)立字段可變長(zhǎng)(或固定長(zhǎng)度)Service ID
該方案是在IALA G1139導(dǎo)則中關(guān)于VDE和ASM的尋址報(bào)文中,增設(shè)獨(dú)立的Service ID字段。VDES服務(wù)網(wǎng)關(guān)可以獨(dú)立解釋Service ID獲得服務(wù)目的地址,而無(wú)需解釋Payload的具體內(nèi)容,因此payload可以對(duì)數(shù)據(jù)進(jìn)行加密,如表3所示。
2.4三種服務(wù)標(biāo)識(shí)方案的討論
非獨(dú)立字段服務(wù)標(biāo)識(shí)方案:該模式不改動(dòng)現(xiàn)有的VDES報(bào)文結(jié)構(gòu),將服務(wù)標(biāo)識(shí)和有效數(shù)據(jù)共同放在Payload中,通過(guò)結(jié)構(gòu)化數(shù)據(jù)或預(yù)定義數(shù)據(jù)結(jié)構(gòu)來(lái)界定Service ID。VDES服務(wù)網(wǎng)關(guān)需要對(duì)Payload中服務(wù)標(biāo)識(shí)進(jìn)行提取,并將剩余的Payload數(shù)據(jù)進(jìn)行重新封裝和路由。
獨(dú)立字段的服務(wù)標(biāo)識(shí)方案:該模式是最接近當(dāng)前主流路由交換模式的VDES通信應(yīng)用解決方案,通過(guò)VDES服務(wù)網(wǎng)關(guān)可以?xún)?yōu)雅地解決VDES網(wǎng)絡(luò)和IP網(wǎng)絡(luò)的雙向交互問(wèn)題。該方案需要較小程度地修改IALA G1139的VDES報(bào)文結(jié)構(gòu),對(duì)于VDES的終端設(shè)備只涉及到點(diǎn)到點(diǎn)通信報(bào)文解碼程序的小修改,并不影響設(shè)備硬件的修造,而且目前國(guó)際上VDES終端仍未量產(chǎn),因此修改VDES報(bào)文方案是可以接受的。
3.服務(wù)標(biāo)識(shí)在VDES服務(wù)網(wǎng)關(guān)起到的作用
可選用MRN、虛擬MMSI、域名、IP:Port等作為候選服務(wù)標(biāo)識(shí)Service ID,但實(shí)際最終請(qǐng)求和服務(wù)響應(yīng)均為T(mén)CP/IP數(shù)據(jù)。若Service ID以MRN、虛擬MMSI、域名等方式取值,本質(zhì)上均需轉(zhuǎn)換為IP:Port進(jìn)行處理,且VDES服務(wù)網(wǎng)關(guān)需要增加對(duì)應(yīng)參數(shù)與IP:Port的映射關(guān)系,因此下文以IP:Port作為Service ID,說(shuō)明Service ID在VDES服務(wù)網(wǎng)關(guān)中所起作用,在圖2中顯示以Service ID為服務(wù)標(biāo)識(shí)串聯(lián)起各個(gè)通信主體。
3.1船端主動(dòng)發(fā)起的通信請(qǐng)求
在有人駕駛的傳統(tǒng)船舶中,船岸通信主要源于船端發(fā)起的服務(wù)請(qǐng)求,服務(wù)端響應(yīng)船端的請(qǐng)求,并反饋?lái)憫?yīng)數(shù)據(jù)。由于請(qǐng)求總會(huì)自我標(biāo)識(shí)源地址,服務(wù)端由此可知請(qǐng)求端地址,服務(wù)端向船端反饋?lái)憫?yīng)數(shù)據(jù)的過(guò)程如下文所述和圖1所示。
第一步、船端發(fā)出Service ID字段值為IP_Service:Prot的VDES報(bào)文,該報(bào)文進(jìn)入VDES岸基系統(tǒng),Service ID數(shù)值不為空則將報(bào)文交給VDES服務(wù)網(wǎng)關(guān)處理。
第二步、V DES服務(wù)網(wǎng)關(guān)提取Service ID和Payload的有效數(shù)據(jù)負(fù)荷,根據(jù)有關(guān)參數(shù)將原數(shù)據(jù)封裝為服務(wù)請(qǐng)求TCP/IP數(shù)據(jù)包,其中服務(wù)請(qǐng)求TCP/IP報(bào)文的IP和TCP報(bào)頭參數(shù)來(lái)源如表4。
第三步、為了實(shí)現(xiàn)數(shù)據(jù)雙向互聯(lián)通信,VDES服務(wù)網(wǎng)關(guān)需要?jiǎng)?chuàng)建如下映射表, MMSI_Ship——IP_VSG:Port_ VSG——IP_Service:Port_Service,用于追溯服務(wù)請(qǐng)求和服務(wù)響應(yīng)的數(shù)據(jù)反饋結(jié)果。
第四步、經(jīng)過(guò)上述數(shù)據(jù)轉(zhuǎn)換和重新封裝,VDES服務(wù)網(wǎng)關(guān)代理VDES船端將向目的服務(wù)端發(fā)起服務(wù)請(qǐng)求。
第五步、服務(wù)端響應(yīng)請(qǐng)求產(chǎn)生TCP/IP的數(shù)據(jù)包,服務(wù)端將向直接服務(wù)請(qǐng)求端,也就是VDES服務(wù)網(wǎng)關(guān)返回響應(yīng)數(shù)據(jù)。其中服務(wù)響應(yīng)TCP/IP報(bào)文的IP和TCP報(bào)頭參數(shù)來(lái)源如表5。
第六步、VDES服務(wù)網(wǎng)關(guān)獲得服務(wù)端響應(yīng)的TCP/IP報(bào)文,并從中提取目的地址即是本VDES服務(wù)網(wǎng)關(guān)地址和端口IP_VSG:Port_VSG,源地址即是服務(wù)端的IP_Service:Port_ Service。根據(jù)之前建立的MMSI_ Ship——IP_VSG:Port_VSG——IP_ Service:Port_Service映射表,可以唯一確定服務(wù)原請(qǐng)求端的地址MMSI_ Ship,也就是船端MMSI。由于每次VDES請(qǐng)求通過(guò)臨時(shí)分配的Port_VSG進(jìn)行了區(qū)分,因此可以VDES服務(wù)網(wǎng)關(guān)可以支持同一個(gè)VDES船端向不同的服務(wù)端同時(shí)發(fā)起多個(gè)請(qǐng)求。
第七步、VDES服務(wù)網(wǎng)關(guān)可以根據(jù)服務(wù)響應(yīng)返回的目的船舶MMSI_ Ship,向VDES岸基系統(tǒng)發(fā)出控制指令,并將IP_Service:Port_Service作為VDES報(bào)文的的Service ID字段值,發(fā)送給服務(wù)請(qǐng)求的船舶VDES終端。VDES船端可以根據(jù)Service ID,按照誰(shuí)請(qǐng)求返回給誰(shuí)的策略,將服務(wù)反饋數(shù)據(jù)交給船端對(duì)應(yīng)的應(yīng)用終端。因此,VDES船端可以支持多個(gè)船載應(yīng)用終端同時(shí)向不同服務(wù)發(fā)出請(qǐng)求,并且每個(gè)船載應(yīng)用終端均能準(zhǔn)確地接收到所請(qǐng)求服務(wù)的響應(yīng)回復(fù)。
3.2服務(wù)端主動(dòng)發(fā)起的通信請(qǐng)求
在無(wú)人船時(shí)代,服務(wù)端將會(huì)頻繁向船端發(fā)起主動(dòng)通信,例如:動(dòng)力控制、調(diào)度指揮,業(yè)務(wù)信息,船載設(shè)備狀態(tài)監(jiān)控、導(dǎo)航信息服務(wù)等。服務(wù)端向船端發(fā)起通信時(shí),需要在任何時(shí)刻均可便捷高效地與船端建立通信。由于VDES網(wǎng)絡(luò)中船端使用MMSI來(lái)標(biāo)識(shí),因此服務(wù)端需要向船端MMIS地址發(fā)送信息來(lái)建立通信。IP網(wǎng)絡(luò)中的服務(wù)端不能直接向船端發(fā)送VDES報(bào)文,這時(shí)需要VDES服務(wù)網(wǎng)關(guān)進(jìn)行代理。服務(wù)端發(fā)出的TCP/IP報(bào)文使用服務(wù)端IP地址和服務(wù)端口作為源地址IP_ Service和源端口Port_Service,并使用船端MMSI作為目的地址(需要規(guī)則進(jìn)行轉(zhuǎn)換TCP/IP模式)。VDES服務(wù)網(wǎng)關(guān)從TCP/IP報(bào)文中提取IP_Service和Port_Service信息作為 Service ID,提取目的地址轉(zhuǎn)換為標(biāo)準(zhǔn)的船端MMSI地址,并以參數(shù)此生成VDES報(bào)文發(fā)送至船端。由于VDES報(bào)文中包含了Service ID,船端可以較方便地的識(shí)別Service ID屬于什么業(yè)務(wù),可由此判斷從服務(wù)端發(fā)來(lái)的數(shù)據(jù)應(yīng)該由哪一種船端應(yīng)用進(jìn)行處理。該過(guò)程基本與服務(wù)端響應(yīng)船端請(qǐng)求部分的返回過(guò)程類(lèi)似,同見(jiàn)圖1中服務(wù)端向船端返回?cái)?shù)據(jù)的部分內(nèi)容。
通過(guò)以上的分析,在VDES尋址報(bào)文中增加服務(wù)標(biāo)識(shí)可以有效地解決船端VDES與服務(wù)端雙向通信的問(wèn)題。
4.小結(jié)
本文作為IALA ENAV23 次會(huì)議提案(ENAV23-3.1.17 Addition of IPPort to VDES Messages To support VDES service gateway addressing mode application (G1139)),ENAV委員會(huì)的數(shù)字通信工作組WG3和數(shù)字信息系統(tǒng)工作組WG1聯(lián)合對(duì)本提案進(jìn)行了審議,普遍認(rèn)為E航海應(yīng)用服務(wù)訪問(wèn)確實(shí)需要解決信息路由的存在的問(wèn)題,而本提案是一個(gè)良好的開(kāi)端。
IALA倡議的E航海的MCP海上互聯(lián)互通架構(gòu),由MSR、MIR、MMS三個(gè)核心部分組成,其中MSR負(fù)責(zé)注冊(cè)、管理和發(fā)現(xiàn)E航海服務(wù),MMS負(fù)責(zé)響應(yīng)用戶(hù)服務(wù)請(qǐng)求和路由用戶(hù)數(shù)據(jù)。VDES服務(wù)網(wǎng)關(guān)是MMS底層橋接異構(gòu)網(wǎng)絡(luò)具體實(shí)現(xiàn)形式,實(shí)現(xiàn)MSR中服務(wù)注冊(cè)標(biāo)識(shí)MRN與服務(wù)路由交換標(biāo)識(shí)Service ID的轉(zhuǎn)換。通過(guò)服務(wù)標(biāo)識(shí)Service ID的設(shè)計(jì),IALA G1139導(dǎo)則設(shè)計(jì)的VDES通信體系可以較好地融入到E航海MCP整體架構(gòu)中。