標題: | NAT行為感知的TCP穿越機制 NBA – NAT Behavior Aware TCP Traversal Scheme |
作者: | 劉坤穎 Liu, Kun-Ying 曾建超 Tseng, Chien-Chao 資訊科學與工程研究所 |
關鍵字: | Network Address Translation;NAT;NAT穿越;TCP;TCP NAT穿越;Network Address Translation;NAT;NAT Traversal;TCP;TCP NAT Traversal |
公開日期: | 2010 |
摘要: | 本論文提出一套 Network Address Translation (NAT)行為感知(NAT Beha-vior-Aware, NBA)的TCP穿越機制,當兩端點分別位於不同NAT底下時,若兩者想嘗試建立一條TCP的直接連線,NBA機制會利用兩端的NAT資訊,從候選的TCP NAT穿越方法中,找尋一個最恰當的穿越技術,進行直連測試。因為NBA洞悉連線兩端TCP NAT穿越的支援能力,可以避免使用不可能成功的穿越技術來執行直連測試,減少直連測試所花掉的時間與資源。
許多研究已經提出解決TCP NAT穿越問題的方法,然而這些方法並沒有將NAT的TCP狀態追蹤特性列入考量,對於不同NAT組合下的適用性亦一無所知,如果盲目嘗試這些TCP NAT穿越方法進行直連測試,試圖找到一條直連路徑,會導致連線測試時間冗長與不必要的訊息交換等問題,進而影響到NAT穿越的效率與成功率。
為了縮短連線測試延遲與降低訊息的交換量,以及提高直接連線的比率,我們提出一套 NAT行為感知 (NBA)的TCP穿越機制。NBA的主要構想是本機端(host)的使用者代理人 (user agent, UA)先收集當地的NAT資訊,包含NAT的mapping行為、filtering行為與TCP狀態追蹤特性,當位於不同NAT底下的兩UA想要嘗試穿越NAT時,NBA可以利用此兩UA所收集到的NAT資訊,選擇出一個最恰當的NAT穿越技術,並通知這兩UA使用。如此一來,這兩UA就可以省去執行不可能成功的NAT穿越技術的測試時間與系統資源。
我們已經完成NBA機制的實作,並針對直連率、測試時間與資源使用量等效能指標,進行NBA與循序直連測試(Sequential Connectivity Check, SCC)以及平行直連測試(Parallel Connectivity Check, PCC)兩種機制的效能比較。實驗結果顯示,在相同組合的NAT環境下,這三種機制的直連率完全相同,亦即,NBA選擇NAT穿越技術的方法非常精確,不會發生誤選的情況。其次,當進行直接連線測試時,NBA與SCC相較之下具有更短的測試時間延遲,且NBA比PCC使用更少的資源,故NBA的整體效能表現較SCC和PCC更傑出。 In this thesis, we propose a Network Address Translation (NAT) Behavior Aware, henceforth referred to as NBA, scheme for TCP NAT Traversals. Many researchers have proposed techniques to tackle the TCP NAT traversal problem. However, previous TCP NAT traversal research focuses on whether a specific TCP signaling sequence can establish a direct connection successfully between two peers behind NATs. Because each signaling sequence has its own applicable NAT types, brute force connectivity check may induce a long delay or excessive message exchanges for setting up a connec-tion. Therefore, NBA utilize TCP state tracking behaviors of NATs as a priori know-ledge to select the most appropriate Traversal method for the connectivity check be-tween two communicating peers behind. As a consequence, it can eliminate unnecessary checks, shorten the connectivity check delay, reduce the number of message exchanges, and sometimes help to avoid failure in connectivity check that ought to succeed. With NBA, user agents (UAs) collect the NAT information such as mapping rules, filtering rules and TCP state tracking behaviors, and report the collected information to an NBA server. When two UAs intend to establish a communication session, the server consults the information reported by the two UAs, determines the best traversal method, if exists, and informs the two UAs to check connectivity with the selected method. We have implemented NBA and compared the performance of NBA with both sequential connectivity check (SCC) scheme and parallel connectivity check (PCC) schemes. The experimental results show that NBA achieves the same direct connection ratio as SCC and PCC do. Furthermore, NBA outperforms SCC in terms of latencies and PCC in system resources utilizations for connectivity checks. |
URI: | http://140.113.39.130/cdrfb3/record/nctu/#GT079755547 http://hdl.handle.net/11536/45894 |
顯示於類別: | 畢業論文 |