[發明專利]一種支持NAT穿越的實時多媒體數據P2P傳輸方案有效
| 申請號: | 201010152585.0 | 申請日: | 2010-04-16 |
| 公開(公告)號: | CN101848235A | 公開(公告)日: | 2010-09-29 |
| 發明(設計)人: | 泮華杰;樓奕華;李未 | 申請(專利權)人: | 北京航空航天大學 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;H04L29/06;H04L29/12 |
| 代理公司: | 北京科迪生專利代理有限責任公司 11251 | 代理人: | 李新華 |
| 地址: | 100191*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 支持 nat 穿越 實時 多媒體 數據 p2p 傳輸 方案 | ||
1.一種支持NAT穿越的實時多媒體數據傳輸方法.包括:
(1)NSPC創建一個UDP套接字,并為該套接字隨機綁定一個端口,記該端口的端口號為G_Port;NSPC利用該套接字判斷NSPC所在客戶端的NAT類型,并建立與其他NSPC之間的NAT穿越通道。所述NSPC是一個獨立的網絡層與傳輸層服務,位于系統的網絡協議棧中,可以被應用程序選擇使用;
(2)發送數據時,NSPC獲取上層應用程序的數據報文,查詢NSPC套接字控制列表,檢索出該報文所屬的套接字以及接收端的NAT地址,完成對報文的封裝并將報文發送到網絡;
(3)接收數據時,NSPC獲取端口G_Port上到達的UDP數據報文,判斷報文是否經過NSPC封裝,若是則去除報文的封裝并將數據推送給相應的應用程序,等待進一步處理;
2.根據權利要求1所述的方法,其中步驟(1)進一步包括:NSPC在第一次被調用時,創建一個UDP套接字,并為該套接字隨機綁定一個端口,記該端口的端口號為G_Port,所有的NSPC報文均通過該套接字接收和發送;NSPC向位于公網的服務程序發送NAT類型測試報文,根據返回報文判斷自身所處NAT類型;NSPC在發送數據前向服務程序查詢接收端的NAT類型,并由服務器告知接收端先向發送端做NAT反向穿越。
3.根據權利要求1所述的方法,其中步驟(2)對數據報文的封裝包括:在數據段頭部添加發送端應用程序所用套接字的本地端口號,即源端口號;在數據段頭部添加接收端應用程序套接字的本地端口號,即目的端口號。
4.根據權利要求1所述的方法,其中步驟(2)發送數據時,在傳輸層,NSPC獲取應用程序發送的UDP數據報文,修改報文頭部的源端口字段值為G_Port端口號值,并通過G_Port端口將該UDP數據報文推送到網絡層。
5.根據權利要求1所述的方法,其中步驟(3)接收數據時,NSPC偵聽所有發往G_Port的UDP數據報文,丟棄未經過NSPC封裝的數據報文;在傳輸層,NSPC讀取UDP報文中數據段頭部封裝的目的端口號,將該端口號寫入UDP報文頭的目的端口字段,重新計算UDP報文的校驗碼,將數據包向上推送給該目的端口對應的套接字;在傳輸層之上,應用層之下,NSPC再次獲取數據,去除封裝在報文數據段頭部的附加數據,所述的附加數據包括:發送端應用程序所用套接字的端口號和接收端應用程序所用套接字的端口號;最后,NSPC將數據推送給相應的應用程序。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京航空航天大學,未經北京航空航天大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010152585.0/1.html,轉載請聲明來源鉆瓜專利網。





