NAT Traversal, part 0
Posted on September 20th, 2006 at 1:43 by fr3@K

根據 wikipedia 的定義, 一個 peer-to-peer (p2p) computer network 是一個主要依賴該網路上參與者 (相對於依賴服務器) 的運算能力與帶寬的網路.


P2p 網路的達成主要有兩個困難點:

  1. Signal, 一個 peer 如何找到另一個 peer 並與其溝通
  2. P2p 資料傳輸

達成第一點的方法, 也就是使用的 signalling protocol 有很多, 現階段的規範也比較成熟完善. 例如 SIPIMS. 相對來說, p2p 的資料傳輸是更走在技術的前沿.

無論原因為何, 大多數的裝置 (通常是電腦) 不是直接連上 Internet, 而是透過 NAT 或 NAPT (以下均稱為 NAT) 連上 Internet. 在這種情況下, NAT 的穿透 (NAT traversal) 成為了 p2p 資料傳輸的前提.

這些在 NAT 後面的裝置沒有公網 IP, 如不利用服務器轉送, 傳統上幾乎沒有廣泛通用的方法1 從一台這樣的裝置把資料傳輸資料到另一個這樣的裝置.

技術是一直在往前走的, 現在, IETFbehave , midcommmusic 等 working group 已提出在多數狀況下達到 p2p 資料傳輸的方法 (protocol). 在開始進入這些方法之前, 對 NAT 的相關行為必須要有透徹的了解.

這一系列的 NAT Traversal 將從了解 NAT 的行為開始, 到 STUNTURN, 計畫會在 ICE 以及 ICE 在 SIP 的應用劃下句點.

繼續閱讀 NAT Traversal, part 1 - NAT Behavior.

  1. 部份 NAT 支持由 Micro$oft 提出的 UPnP, 在應用程式也支持時也可達成 NAT traversal. UPnP 的功能包山包海, 因此其最大缺點為肥大以及容易產生安全漏洞. []
del.icio.us:NAT Traversal, part 0 digg:NAT Traversal, part 0 spurl:NAT Traversal, part 0 newsvine:NAT Traversal, part 0 furl:NAT Traversal, part 0 Y!:NAT Traversal, part 0 黑米共享書籤:NAT Traversal, part 0 推推王:NAT Traversal, part 0
Previous Post
« Chen’s Office and Resident Circumvallated «
Next Post
» 給小乖乖 »

2 Comments »

Comment #67

期待這系列文章 :D

Comment by 餅乾 — September 20, 2006 @ 16:30


Comment #77

續集出來了,請享用…

Comment by fr3@K — September 22, 2006 @ 2:01


Comments RSS TrackBack URI

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>