TWI559719B - Point-to-point connection through the symmetric network address translation of the network communication system - Google Patents

Point-to-point connection through the symmetric network address translation of the network communication system Download PDF

Info

Publication number
TWI559719B
TWI559719B TW103137818A TW103137818A TWI559719B TW I559719 B TWI559719 B TW I559719B TW 103137818 A TW103137818 A TW 103137818A TW 103137818 A TW103137818 A TW 103137818A TW I559719 B TWI559719 B TW I559719B
Authority
TW
Taiwan
Prior art keywords
network device
connection
network
address
internal network
Prior art date
Application number
TW103137818A
Other languages
English (en)
Other versions
TW201616845A (zh
Inventor
Ming Ko Wang
Original Assignee
Papago Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Papago Inc filed Critical Papago Inc
Priority to TW103137818A priority Critical patent/TWI559719B/zh
Publication of TW201616845A publication Critical patent/TW201616845A/zh
Application granted granted Critical
Publication of TWI559719B publication Critical patent/TWI559719B/zh

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

點對點連線穿越對稱式網路地址轉換之網路通信系統
本發明是有關於一種點對點連線穿越對稱式網路地址轉換之網路通信系統,且特別是有關於一種內部網路裝置開啟多個備用連線端口提供外部網路裝置連線的技術。
隨著網路快速發展,以致使得IPv4協定之網路地址不敷使用,網路地址轉換(Network Address Translator,NAT)之協定方法被大量採用於路由器上,透過NAT將IP地址進行轉換,亦即在私有網路中定義私有IP地址,在內部網路中裝置之間可以透過私有IP地址進行通訊,而當內部網路裝置需要與外部網路裝置進行通訊時,具有NAT功能的設備(如路由器等),將自動地把網路封包的來源地址動態映射一個公有IP網路地址,使得內部網路之發送端裝置與外部網路之接收端裝置能夠建立通訊連線的管道。
然而,若有內部網路裝置與外部網路裝置需要用點對點連線通信之情形時,例如P2P軟體、網路會議、視頻傳輸等,將會有NAT穿越技術的問題需要解決,一般常用的NAT穿越技術包括UDP路由驗證、使用具有Session Traversal Utilities for NAT(STUN)、Traversal Using Relays around NAT(TURN)功能之伺服器等作為中介伺服器。由於網路地址轉換伺服器之型態不同,其網路連線方式亦有所不同,因此造成穿越技術的困難常導致連線失敗的問題。
本發明提供一種點對點連線穿越對稱式網路地址轉換之網路通信系統。點對點網路連線技術提供多個網路裝置間直接網路連線,點對點技術需要針對NAT型態的不同來設計不同網 路地址轉換之打洞技術,在網路地址轉換技術的型態中以對稱式網路地址轉換的限制最為嚴格,因此使得內部網路裝置與外部網路裝置在建立雙方通信連線管道之後,常因對稱式網路地址轉換本身功能差異以及限制,導致無法正確成功連線到發送端之內部網路裝置。
因此,本發明提出一種內部網路裝置利用開啟多個備用連線端口等待外部網路裝置的連線請求,而外部網路裝置嘗試複數次的連線請求以提高連線的成功率。
根據上述目的,本發明提出一種點對點連線穿越對稱式網路地址轉換之網路通信系統,該系統包括內部網路裝置,該內部網路裝置連結網路並派發原始網路封包的連線請求,其具有私有IP地址端口;外部網路裝置,該外部網路裝置連結網路並接收該內部網路裝置之連線請求;對稱式網路地址轉換伺服器係與該內部網路裝置以及會話傳輸應用程序伺服器電性連結,並將該內部網路裝置所派發之該原始網路封包映射第一公有IP地址端口並傳送至該會話傳輸應用程序伺服器。
會話傳輸應用程序伺服器,係根據該內部網路裝置派發的連線請求取得該第一公有IP地址端口,發出連線訊息通知該內部網路裝置以及該外部網路裝置;其中,該內部網路裝置接收該連線訊息後開啟複數個通訊埠,並等待該外部網路裝置回覆連線請求,該外部網路裝置接收該連線訊息後計算接收之該第一公有IP地址端口數目並回覆該內部網路裝置之連線請求。
根據以上,本發明提出一種點對點連線穿越對稱式網路地址轉換之網路通信方法,透過一內部網路裝置連結網路並派發一原始網路封包,其具有一私有IP地址端口的連線請求;透過一外部網路裝置連結網路並接收該內部網路裝置之連線請求;藉由一對稱式網路地址轉換伺服器與該內部網路裝置以及一會話傳輸應用程序伺服器電性連結,並將該內部網路裝置所派發之該原始網路封包映射一第一公有IP地址端口並傳送至該會話傳輸應用程序伺服器;以及儲存該會話傳輸應用程序伺服器所接收自該內部 網路裝置派發的連線請求之該第一公有IP地址端口,並發出一連線訊息通知該內部網路裝置以及該外部網路裝置;其中,該內部網路裝置接收該連線訊息後開啟複數個通訊埠,並等待該外部網路裝置回覆連線請求,該外部網路裝置接收該連線訊息後計算接收之該第一公有IP地址端口數目並回覆該內部網路裝置之連線請求。
網路地址轉換伺服器有不同型態,其中以對稱式網路地址轉換的限制最為嚴格,本發明因針對採用點對點網路通信中穿越對稱式網路地址轉換,提出一種利用開啟多個備用連線端口的網路連線方法能夠提高網路傳輸速度以及有效降低頻寬與硬體建構之投入成本。
100‧‧‧內部網路裝置
101‧‧‧通訊埠
200‧‧‧外部網路裝置
201‧‧‧內部網路裝置A
202‧‧‧對稱式網路地址轉換伺服器A
203‧‧‧會話傳輸應用程序伺服器A
300‧‧‧對稱式網路地址轉換伺服器
400‧‧‧會話傳輸應用程序伺服器
S301~S306‧‧‧流程
圖1繪示本發明點對點連線穿越對稱式網路地址轉換之網路通信系統架構示意圖。
圖2繪示先前技術一種會話傳輸應用程序伺服器與內部網路裝置溝通獲知其公有IP地址端口之示意圖。
圖3繪示本發明點對點連線穿越對稱式網路地址轉換之網路通信系統的流程圖。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式,作詳細說明如下。
首先,圖1繪示本發明點對點連線穿越對稱式網路地址轉換之網路通信系統架構示意圖,請同時參閱圖3繪示本發明點對點連線穿越對稱式網路地址轉換之網路通信系統的流程圖。
本發明之點對點連線穿越對稱式網路地址轉換之網路通信系統,包括一內部網路裝置100、一外部網路裝置200、一對稱式網路地址轉換伺服器300以及一會話傳輸應用程序伺服器400。
本發明實施例之該內部網路裝置係為該對稱式網路地 址轉換伺服器300內部私有網域的網路裝置,其內部網路裝置可以為各種具有網路介面的電子設備,例如一筆記型電腦、一網路攝影機、一網路電話、一網路磁碟機、一網路印表機等網路裝置。
該內部網路裝置100連結網路並主動派發出一原始網路封包的連線請求,其具有一私有原始IP地址、一私有原始端口、一目標IP地址、以及一目標端口。該對稱式網路地址轉換伺服器只允許先由私有網域內的內部網路裝置發送網路封包至網際網路中的外部網路裝置,該接收端之外部網路裝置回傳對應之網路封包。
該外部網路裝置200透過網路連結接收到該內部網路裝置100之連線請求。該外部網路裝置200可以為其他型態之網路地址轉換伺服器內的網路裝置,外部網路裝置係指相對於主動發出網路封包且屬於某一網路地址轉換伺服器之內部網路裝置的一種網路裝置,該外部網路裝置200可以為各種具有網路介面的電子設備,例如一筆記型電腦、一網路攝影機、一網路電話、一網路磁碟機、一網路印表機等網路裝置。
請一併參考圖2,透過該對稱式網路地址轉換伺服器A202與該內部網路裝置A201以及該會話傳輸應用程序伺服器A203之間的電性連結,該對稱式網路地址轉換伺服器A202將該內部網路裝置A201所派發之該原始網路封包映射一第一公有IP地址端口並傳送至該會話傳輸應用程序伺服器A203。該會話傳輸應用程序伺服器A203可以作為中介伺服器協助內部網路裝置A201獲知該私有IP地址端口映射之公有IP地址端口。
如圖式2之實施例,內部網路裝置A201從IP地址(IP:10.0.0.1)端口(port:5060)傳送該原始網路封包給該會話傳輸應用程序伺服器A203,透過該對稱式網路地址轉換伺服器A202的映射轉換成公有IP地址(IP:202.123.211.25)端口(port:12345),該會話傳輸應用程序伺服器A203從其公有IP地址(IP:222.111.99.1)端口(port:20202)接收到來自該對稱式網路地址轉換伺服器A202傳送的網路封包訊息並回覆給該內部網路裝置A201通知其公有IP地址(IP:202.123.211.25)端口(port:12345)。
其中當該會話傳輸應用程序伺服器400接收自該內部網路裝置100之連線請求時,回覆內部網路裝置100之該公有IP地址端口的同時,啟動一第一連接偵測,使得該內部網路裝置100以及該外部網路裝置200藉由該第一連接偵測取得該會話傳輸應用程序伺服器400的一第二公有IP地址端口,並保持該會話傳輸應用程序伺服器400與該內部網路裝置100以及該外部網路裝置200雙向網路連線。該會話傳輸應用程序伺服器400也可透過一系列的測試封包獲知網路地址轉換伺服器的型態藉以判斷其適用之穿越方法。
該會話傳輸應用程序伺服器400,係根據該內部網路裝置100派發的連線請求取得該第一公有IP地址端口,發出一連線訊息通知該內部網路裝置100以及該外部網路裝置200該內部網路裝置之連線請求、該第一公有IP地址端口以及該會話傳輸應用程序伺服器400的第二公有IP地址端口。
請一併參考圖式1,該內部網路裝置100接收到該連線訊息後開啟複數個通訊埠101,由通訊埠1、通訊埠2延續至通訊埠N,並且等待該外部網路裝置200回覆其連線請求,該外部網路裝置20接收該連線訊息後計算接收之該第一公有IP地址端口數目並回覆該內部網路裝置100之連線請求。
根據上述該內部網路裝置100接收到該連線訊息後開啟複數個通訊埠的數目之方法,係藉由該內部網路裝置100事先向該會話傳輸應用程序伺服器400主動連線數次,由該會話傳輸應用程序伺服器400取得連線來源NAT記錄,分析來源該會話傳輸應用程序伺服器400Port端口變化狀況,例如累進編號每次port端口ID加1或是級數跳躍數目如每次加3等統計方式,或是不規則編號之方式,藉以提供未來欲與該內部網路裝置100連線之外部網路裝置200做預測之基礎。
其中內部網路裝置100與外部網路裝置200之點對點網路通信直接連線管道之方法,係藉由當該內部網路裝置100與該外部網路裝置200接收到該會話傳輸應用程序伺服器400的該第二公有IP地址端口時,該外部網路裝置200傳送一網路測試封包至該會話傳輸應用程 序伺服器400之該第二公有IP地址端口以及該內部網路裝置100之該第一公有IP地址端口,當該會話傳輸應用程序伺服器400判斷該第一公有IP地址端口與該內部網路裝置100之連線請求符合時,則建立內部網路裝置100與外部網路裝置200之點對點網路通信直接連線管道。
另一實施例中,外部網路裝置200向內部網路裝置100請求連線之機制,內部網路裝置100遞交該內部網路裝置100的帳號以及密碼給該會話傳輸應用程序伺服器400,並通知該會話傳輸應用程序伺服器400記錄登記內部網路裝置100的運作狀態為可接受外部連線。外部網路裝置200欲與內部網路裝置100進行網路連線,外部網路裝置200向該會話傳輸應用程序伺服器400提供內部網路裝置100的帳號以及密碼,該會話傳輸應用程序伺服器400尋找已於儲存之所有裝置,找出符合帳號以及密碼之網路裝置即為內部網路裝置100。若有找到運作中已驗證的內部網路裝置100,則該會話傳輸應用程序伺服器400通知內部網路裝置100與外部網路裝置200進行點對點直接網路連線即打洞穿越之網路連線技術。若未找到運作中的內部網路裝置100,則該會話傳輸應用程序伺服器400通知外部網路裝置200該連線請求不允許。
最後,當該外部網路裝置200接收到該連線訊息後,以取得之該第一公有IP地址端口數目為基數並進行複數次連線請求直到成功為止,若該複數次連線請求連續失敗,則傳送一連線失敗訊息至該會話傳輸應用程序伺服器400,請求該內部網路裝置100發送網路封包以重新進行網路連線。
綜上所述,本發明因針對採用點對點網路通信中穿越對稱式網路地址轉換,提出一種利用開啟多個備用連線端口的網路連線方法能夠提高網路傳輸速度以及有效降低頻寬與硬體建構之投入成本。
雖然本發明以前述實施例揭露如上,然其並非用以限定本發明,任何熟習相像技藝者,在不脫離本發明之精神和範圍內,所作更動與潤飾之等效替換,仍為本發明之專利保護範圍 內。
100‧‧‧內部網路裝置
101‧‧‧通訊埠
200‧‧‧外部網路裝置
300‧‧‧對稱式網路地址轉換伺服器
400‧‧‧會話傳輸應用程序伺服器

Claims (8)

  1. 一種點對點連線穿越對稱式網路地址轉換之網路通信系統,該系統包括:一內部網路裝置,該內部網路裝置連結網路並派發一原始網路封包的連線請求,其具有一私有IP地址端口;一外部網路裝置,該外部網路裝置連結網路並接收該內部網路裝置之連線請求;一對稱式網路地址轉換伺服器,係與該內部網路裝置以及一會話傳輸應用程序伺服器電性連結,並將該內部網路裝置所派發之該原始網路封包映射一第一公有IP地址端口並傳送至該會話傳輸應用程序伺服器;以及該會話傳輸應用程序伺服器,係根據該內部網路裝置派發的連線請求取得該第一公有IP地址端口,發出一連線訊息通知該內部網路裝置以及該外部網路裝置;其中該對稱式網路地址轉換伺服器與該會話傳輸應用程序伺服器以及該內部網路裝置電性連結,當該會話傳輸應用程序伺服器接收自該內部網路裝置之連線請求時,啟動一第一連接偵測,使該內部網路裝置以及該外部網路裝置藉由該第一連接偵測取得該會話傳輸應用程序伺服器的一第二公有IP地址端口,並保持該會話傳輸應用程序伺服器與該內部網路裝置以及該外部網路裝置雙向網路連線;以及其中,該內部網路裝置接收該連線訊息後開啟複數個通訊埠,並等待該外部網路裝置回覆連線請求,該外部網路裝置接收該連線訊息後計算接收之該第一公有IP地址端口的端口數目並回覆該內部網路裝置之連線請求。
  2. 如申請專利範圍第1項所述之點對點連線穿越對稱式網路地址轉換之網路通信系統,其中該內部網路裝置所發出之該原始網路封包具有一私有原始IP地址、一私有原始端口、一目標IP地址、以及一目標端口。
  3. 如申請專利範圍第1項所述之點對點連線穿越對稱式網路地址轉換之網路通信系統,其中當該外部網路裝置接收到該連線訊息 後,以取得之該第一公有IP地址端口的端口數目為基數並進行複數次連線請求,若該複數次連線請求連續失敗,則傳送一連線失敗訊息至該會話傳輸應用程序伺服器,請求該內部網路裝置重新發送一網路封包進行網路連線。
  4. 如申請專利範圍第1項所述之點對點連線穿越對稱式網路地址轉換之網路通信系統,更包括當該內部網路裝置與該外部網路裝置接收該第二公有IP地址端口,該外部網路裝置傳送一網路測試封包至該會話傳輸應用程序伺服器之該第二公有IP地址端口以及該內部網路裝置之該第一公有IP地址端口,當該會話傳輸應用程序伺服器判斷該第一公有IP地址端口與該內部網路裝置之連線請求符合時,則建立內部網路裝置與外部網路裝置之點對點網路通信直接連線管道。
  5. 一種點對點連線穿越對稱式網路地址轉換之網路通信方法,其步驟包括以下:透過一內部網路裝置連結網路並派發一原始網路封包,其具有一私有IP地址端口的連線請求;透過一外部網路裝置連結網路並接收該內部網路裝置之連線請求;藉由一對稱式網路地址轉換伺服器與該內部網路裝置以及一會話傳輸應用程序伺服器電性連結,並將該內部網路裝置所派發之該原始網路封包映射一第一公有IP地址端口並傳送至該會話傳輸應用程序伺服器;以及儲存該會話傳輸應用程序伺服器所接收自該內部網路裝置派發的連線請求之該第一公有IP地址端口,並發出一連線訊息通知該內部網路裝置以及該外部網路裝置;其中該對稱式網路地址轉換伺服器與該會話傳輸應用程序伺服器以及該內部網路裝置電性連結,當該會話傳輸應用程序伺服器接收自該內部網路裝置之連線請求時,啟動一第一連接偵測,使該內部網路裝置以及該外部網路裝置藉由該第一連接偵測取得該會話傳輸應用程序伺服器的一第二公有IP地址端口,並保持該會話傳輸應用程序伺服器與該內部網路裝置以及該外部網路裝置雙向網路連線;其中 其中,該內部網路裝置接收該連線訊息後開啟複數個通訊埠,並等待該外部網路裝置回覆連線請求,該外部網路裝置接收該連線訊息後計算接收之該第一公有IP地址端口的端口數目並回覆該內部網路裝置之連線請求。
  6. 如申請專利範圍第5項所述之點對點連線穿越對稱式網路地址轉換之網路通信方法,其中更包括該內部網路裝置所發出的該原始網路封包具有一私有原始IP地址、一私有原始端口、一目標IP地址、以及一目標端口。
  7. 如申請專利範圍第5項所述之點對點連線穿越對稱式網路地址轉換之網路通信方法,其中該外部網路裝置接到該連線訊息後,以取得之該第一公有IP地址端口的端口數目為基數進行複數次連線請求,若該複數次連線請求連續失敗,則傳送一連線失敗訊息至該會話傳輸應用程序伺服器,請求該內部網路裝置重新發送一網路封包進行網路連線。
  8. 如申請專利範圍第5項所述之點對點連線穿越對稱式網路地址轉換之網路通信方法,更包括當該內部網路裝置與該外部網路裝置接收該第二公有IP地址端口,該外部網路裝置傳送一網路測試封包至該會話傳輸應用程序伺服器之該第二公有IP地址端口以及該內部網路裝置之該第一公有IP地址端口,當該會話傳輸應用程序伺服器判斷該第一公有IP地址端口與該內部網路裝置之連線請求符合時,則建立內部網路裝置與外部網路裝置之點對點網路通信直接連線管道。
TW103137818A 2014-10-31 2014-10-31 Point-to-point connection through the symmetric network address translation of the network communication system TWI559719B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW103137818A TWI559719B (zh) 2014-10-31 2014-10-31 Point-to-point connection through the symmetric network address translation of the network communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW103137818A TWI559719B (zh) 2014-10-31 2014-10-31 Point-to-point connection through the symmetric network address translation of the network communication system

Publications (2)

Publication Number Publication Date
TW201616845A TW201616845A (zh) 2016-05-01
TWI559719B true TWI559719B (zh) 2016-11-21

Family

ID=56508709

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103137818A TWI559719B (zh) 2014-10-31 2014-10-31 Point-to-point connection through the symmetric network address translation of the network communication system

Country Status (1)

Country Link
TW (1) TWI559719B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201002018A (en) * 2008-06-26 2010-01-01 D Link Corp Method for predicting port number of NAT apparatus based on two STUN server inquiry results

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201002018A (en) * 2008-06-26 2010-01-01 D Link Corp Method for predicting port number of NAT apparatus based on two STUN server inquiry results

Also Published As

Publication number Publication date
TW201616845A (zh) 2016-05-01

Similar Documents

Publication Publication Date Title
TWI408936B (zh) 網路穿透方法及網路通訊系統
US8082324B2 (en) Method of establishing a tunnel between network terminal devices passing through firewall
US9143421B2 (en) Network system capable of implementing stun with the assistance of two network devices and method thereof
TWI434595B (zh) 網路系統之連線建立管理方法及其相關系統
US20130308628A1 (en) Nat traversal for voip
US20170034174A1 (en) Method for providing access to a web server
WO2006082576A2 (en) A method and apparatus for server-side nat detection
WO2015131598A1 (zh) 一种ndn与cdn互联互通的系统及方法
JP2009206657A (ja) 端末装置、nat越え方法、及びプログラム
TWI558149B (zh) 用於多層網路位址轉譯器結構之網路傳輸方法及網路傳輸系統
US10178015B2 (en) Methods, systems, and computer readable media for testing network equipment devices using connectionless protocols
TW201537917A (zh) 會談感知的網路位址轉換穿透方法
CN105391813A (zh) 一种socks透明代理的方法及装置
US20150281174A1 (en) Method of transmitting by relay server for advanced domain name system
TW201517601A (zh) 媒體串流提供裝置、連線至媒體串流提供裝置的方法、媒體串流系統與電腦可讀取媒體
US9042376B2 (en) Traversal method for ICMP-sensitive NAT
TWI559719B (zh) Point-to-point connection through the symmetric network address translation of the network communication system
TWI467992B (zh) 插隊狀況下的nat多路穿越法
US9369523B2 (en) Method for exchanging network messages in distributed manner
JP2008205676A (ja) 情報処理システム、情報処理装置、情報処理方法、及び情報処理プログラム
US20150229607A1 (en) Bilateral firewall traversal method for advanced domain name system
JP2007043751A (ja) アドレス変換装置、メッセージ処理方法および装置
TWI506998B (zh) Icmp敏感性nat之穿越法
TW201616844A (zh) 解決網路位址轉譯器之連線限制的網路連線系統及其方法
JP2010157857A (ja) Vpn接続装置、パケット制御方法、及びプログラム