GB/T28181協(xié)議NAT穿越方案研究
發(fā)布時(shí)間:2021-08-11 00:46
為解決GB/T28181協(xié)議在互聯(lián)網(wǎng)環(huán)境下NAT穿越問(wèn)題,研究提出GB/T28181國(guó)標(biāo)協(xié)議的一種NAT穿越方案,并將該方案應(yīng)用于基于GB/T28181協(xié)議的互聯(lián)網(wǎng)視頻云服務(wù)平臺(tái)。該方案基于UDP/TCP打洞方法實(shí)現(xiàn)GB/T28181協(xié)議SIP信令流和RTP媒體流的NAT穿越,進(jìn)一步提出"流會(huì)話(huà)標(biāo)識(shí)"定義用于輔助實(shí)現(xiàn)RTP媒體流的NAT穿越。實(shí)驗(yàn)證明該方案NAT穿越效果良好,兼容性強(qiáng),且實(shí)現(xiàn)復(fù)雜度較低。
【文章來(lái)源】:信息技術(shù). 2020,44(03)
【文章頁(yè)數(shù)】:5 頁(yè)
【部分圖文】:
互聯(lián)網(wǎng)視頻云服務(wù)平臺(tái)設(shè)備聯(lián)網(wǎng)示意圖
為獲取SIP終端經(jīng)過(guò)NAT轉(zhuǎn)換后對(duì)應(yīng)的公共網(wǎng)絡(luò)IP和端口信息,SIP終端需在首次SIP注冊(cè)消息Via頭域中添加沒(méi)有值的rport[19]屬性字段,SIP信令服務(wù)器在接收到注冊(cè)消息后如發(fā)現(xiàn)Via頭域中包含有沒(méi)有值的rport字段,則根據(jù)接收到的注冊(cè)消息IP數(shù)據(jù)包網(wǎng)絡(luò)層及傳輸層中攜帶的實(shí)際IP地址和端口信息填充注冊(cè)應(yīng)答消息中的received及rport字段,反饋給SIP終端。為穿越對(duì)稱(chēng)性NAT,SIP信令服務(wù)器的注冊(cè)應(yīng)答消息需發(fā)送至SIP終端注冊(cè)消息NAT映射后的公共網(wǎng)絡(luò)IP地址及端口、按照原路返回。SIP終端在隨后發(fā)送的注冊(cè)消息的Contact等屬性字段中直接使用該公共網(wǎng)絡(luò)IP地址和端口信息。作為SIP終端的移動(dòng)APP客戶(hù)端向SIP信令服務(wù)器進(jìn)行注冊(cè)的基本流程如圖2所示。在互聯(lián)網(wǎng)及4G/5G移動(dòng)通信網(wǎng)等復(fù)雜網(wǎng)絡(luò)環(huán)境下,為盡量降低網(wǎng)絡(luò)丟包及亂序等給SIP傳輸及NAT穿越帶來(lái)的不利影響,建議優(yōu)先使用TCP協(xié)議傳輸SIP信令。另外,由于網(wǎng)絡(luò)最大傳輸單元MTU限制,網(wǎng)絡(luò)傳輸節(jié)點(diǎn)會(huì)對(duì)承載SIP信令消息、大小大于MTU值的UDP數(shù)據(jù)包進(jìn)行拆包處理,這將有可能導(dǎo)致SIP信令接收端收到的SIP信令不完整而無(wú)法處理,使用TCP協(xié)議傳輸SIP信令可避免該問(wèn)題的出現(xiàn)。
由于GB/T28181協(xié)議中RTP媒體流支持MPEG-2 Program Stream、H264 ES以及MPEG4 ES等編碼封裝格式,故為盡可能地提高現(xiàn)有平臺(tái)對(duì)SSID信息的兼容性,在SSID信息前添加4字節(jié)的起始碼,然后將起始碼與SSID一起作為RTP數(shù)據(jù)包負(fù)載進(jìn)行封裝傳輸。參照GB/T28181協(xié)議,基于TCP和UDP傳輸協(xié)議的SSIDoverRTP數(shù)據(jù)包封裝格式如圖3-4所示。圖4 基于UDP傳輸協(xié)議的SSIDoverRTP數(shù)據(jù)包封裝格式
本文編號(hào):3335101
【文章來(lái)源】:信息技術(shù). 2020,44(03)
【文章頁(yè)數(shù)】:5 頁(yè)
【部分圖文】:
互聯(lián)網(wǎng)視頻云服務(wù)平臺(tái)設(shè)備聯(lián)網(wǎng)示意圖
為獲取SIP終端經(jīng)過(guò)NAT轉(zhuǎn)換后對(duì)應(yīng)的公共網(wǎng)絡(luò)IP和端口信息,SIP終端需在首次SIP注冊(cè)消息Via頭域中添加沒(méi)有值的rport[19]屬性字段,SIP信令服務(wù)器在接收到注冊(cè)消息后如發(fā)現(xiàn)Via頭域中包含有沒(méi)有值的rport字段,則根據(jù)接收到的注冊(cè)消息IP數(shù)據(jù)包網(wǎng)絡(luò)層及傳輸層中攜帶的實(shí)際IP地址和端口信息填充注冊(cè)應(yīng)答消息中的received及rport字段,反饋給SIP終端。為穿越對(duì)稱(chēng)性NAT,SIP信令服務(wù)器的注冊(cè)應(yīng)答消息需發(fā)送至SIP終端注冊(cè)消息NAT映射后的公共網(wǎng)絡(luò)IP地址及端口、按照原路返回。SIP終端在隨后發(fā)送的注冊(cè)消息的Contact等屬性字段中直接使用該公共網(wǎng)絡(luò)IP地址和端口信息。作為SIP終端的移動(dòng)APP客戶(hù)端向SIP信令服務(wù)器進(jìn)行注冊(cè)的基本流程如圖2所示。在互聯(lián)網(wǎng)及4G/5G移動(dòng)通信網(wǎng)等復(fù)雜網(wǎng)絡(luò)環(huán)境下,為盡量降低網(wǎng)絡(luò)丟包及亂序等給SIP傳輸及NAT穿越帶來(lái)的不利影響,建議優(yōu)先使用TCP協(xié)議傳輸SIP信令。另外,由于網(wǎng)絡(luò)最大傳輸單元MTU限制,網(wǎng)絡(luò)傳輸節(jié)點(diǎn)會(huì)對(duì)承載SIP信令消息、大小大于MTU值的UDP數(shù)據(jù)包進(jìn)行拆包處理,這將有可能導(dǎo)致SIP信令接收端收到的SIP信令不完整而無(wú)法處理,使用TCP協(xié)議傳輸SIP信令可避免該問(wèn)題的出現(xiàn)。
由于GB/T28181協(xié)議中RTP媒體流支持MPEG-2 Program Stream、H264 ES以及MPEG4 ES等編碼封裝格式,故為盡可能地提高現(xiàn)有平臺(tái)對(duì)SSID信息的兼容性,在SSID信息前添加4字節(jié)的起始碼,然后將起始碼與SSID一起作為RTP數(shù)據(jù)包負(fù)載進(jìn)行封裝傳輸。參照GB/T28181協(xié)議,基于TCP和UDP傳輸協(xié)議的SSIDoverRTP數(shù)據(jù)包封裝格式如圖3-4所示。圖4 基于UDP傳輸協(xié)議的SSIDoverRTP數(shù)據(jù)包封裝格式
本文編號(hào):3335101
本文鏈接:http://sikaile.net/guanlilunwen/ydhl/3335101.html
最近更新
教材專(zhuān)著