Overlay_network

**覆蓋網路**（英語：Overlay network）是一種建立在另一網路之上的電腦網路。覆蓋網路中的節點可以被認為是通過虛擬或邏輯連結相連，其中每個連結對應一條路徑（Path）。節點之間也可能通過下層網路中的多個物理連接實現相連。 例如對等網路或客戶 - 伺服器應用這類分散式系統都可視為覆蓋網路，因為它們的節點都執行在網際網路之上。 網際網路自身最初也是作為一個電話網路之上的覆蓋網路構建，而當今（藉由 VoIP 的引入），電話網路正越來越變成一個建立在網際網路之上的覆蓋網路。

## 覆蓋網路的用途

### 在電信領域

在電信領域中能夠使用覆蓋網路要歸功於電信網路中所提供的數字電路交換裝置和 光纖傳輸媒介。 電信傳輸網和 IP 網路（二者合併構造了更廣泛的網際網路）都至少覆蓋在一個光纖層、一個傳輸層和一個 IP 層或電路交換層（就 PSTN 而言）之上。

企業私有網路最初是在電信網路（如影格中繼和非同步傳輸模式的封包交換）的基礎設施之上的覆蓋網路。不過自 2001~2002 年起，企業私有網路開始從這些（現在被視為遺產）基礎設施上遷移到基於 IP 的多協定標籤交換（MPLS）網路和虛擬私有網路（VPN）。

從物理的角度看，覆蓋網路相當複雜（參見圖 1），因為其中組合了多種多樣、由不同實體（商業公司、大學、政府等）負責操作和建立的邏輯層，同時這類網路鼓勵關注點分離，從而隨著時間的推移，可以逐漸累積範圍更廣的服務（從寬頻網際網路接入，IP 語音或 IPTV 以及有競爭力的電信維等），而這些服務不太可能由某個單一的電信業者來提供。

### 網際網路上的應用

如今的網際網路已成為更多的覆蓋網路的基礎；構造這些覆蓋網路的目的是為了支援將訊息路由到目的地不由 IP 位址指定的位置。例如，分散式雜湊表可以將訊息路由到具有特定的邏輯位址的節點，而這個節點的 IP 位址是事先未知的。

覆蓋網路也被建議作為一種改進網際網路路由的方法，例如通過服務品質擔保以實現高品質的串流媒體服務。較早期的建議，例如 IntServ，DiffServ 和 IP 多播都沒有被廣泛接受，主要是因為它們要求修改網路中的所有路由器。此外，覆蓋網路可以增量部署在執行覆蓋協定軟體的終端主機商，不需要 ISP 進行配合。覆蓋網路無法控制在下層網路中兩個覆蓋節點間如何路由封包，但它可以控制，例如，訊息在到達目的節點之前需要經過的覆蓋節點序列。

例如， Akamai Technologies 所管理的一個覆蓋網路能夠提供可靠、高效的內容傳遞（一種多播技術）。 學術研究方向包括終端系統的多播和為組播提供超播（Overcast）；為彈性路由所提出的 RON (彈性覆蓋網路) 以及為改進服務品質所提出的 OverQoS 等等。

## 彈性（Resilience）

_彈性覆蓋網路（RON）_ 是一種允許分散式網際網路應用來檢測和恢復中斷或干擾的架構。 目前的廣域路由協定至少需要幾分鐘才能中斷或干擾中恢復，這可以通過應用層的覆蓋技術得以改進。RON 節點監視彼此之間的網際網路路徑，並確定是否直接通過網際網路或其他 RON 節點來重新路由封包，進而最佳化了應用程式特定的指標。

彈性覆蓋網路的概念設計相對簡單。RON 節點部署在網際網路上的不同位置。這些節點構造成一種應用層的覆蓋網路，負責協助封包路由。每個 RON 節點監視彼此之間的網際網路路徑品質，並使用這些資訊準確、自動地從封包中選擇路徑，進而縮短了從較差的服務品質進行恢復所需要的時間。

## 多播

_覆蓋多播（Overlay Multicast）_ 也被稱為_終端系統_多播 或_對等多播_。在高度分部的節點之間實現高頻寬多源多播是一個很多應用（如音影片會議、多方遊戲以及內容分發等）的一個關鍵能力。 在過去十年間，一些研究專案探討了使用多播作為一種高效、可延伸的機制來支援這類組內通信應用 多播技術使得資料接收方集合的大小與每個節點上需要儲存的狀態資訊數量無關，並且潛在地避免了網路中的冗餘通信。

作為網路層多播協定的最佳實踐，IP 組播的部署很有限，這就導致人們對替代方案產生相當大的興趣。這類替代方案可以僅使用終端系統，在應用層實現。 在覆蓋多播或終端系統多播方案中，參與的各方將自己組織成一個覆蓋拓撲結構以便資料傳遞。拓撲結構中的每個邊對應下層網際網路中兩個終端系統或對等方之間的一條單播路徑。所有與多播有關的功能都在對等方實現，而不是在路由器實現。多播協定的目標是建造和維護一個高效的覆蓋網路完成資料傳輸。

### 缺點

* 傳播資料的速度較慢。
* 較長的延遲。
* 在某些點會出現重複分組。

## 覆蓋網路協定列表

基於 TCP/IP 的覆蓋網路協定包括：

* 分散式雜湊表 (DHTs)，如 KAD 網路和其他基於 Kademlia 演算法的其它協定。
* JXTA
* XMPP：基於一個端點的 Jabber ID（例如：nodeId\_or\_userId@domainId\resourceId）執行訊息路由，而不是通過 IP 位址執行路由
* 許多對等（P2P）協定，包括 Gnutella, Gnutella2, Freenet, I2P 和 Tor 等。
* PUCC
* Solipsis：一個法國電信系統，用於提供大型共享虛擬世界
* HyParView：一種非常穩定的、非結構化的覆蓋網路，用於廣播八卦

基於 UDP/IP 的覆蓋網路協定包括：

* 即時傳媒流協定（Real Time Media Flow Protocol) - Adobe Flash

## 參考

* 黑暗網路（Darknet）
* 網狀網路（Mesh Network）
* Peercasting
* 虛擬私人網路（VPN）

## 外部連結

* List of overlay network implementations, July2003 （頁面存檔備份，存於網際網路檔案館）
* Resilient Overlay Networks （頁面存檔備份，存於網際網路檔案館）
* Overcast: reliable multicasting with an overlay network （頁面存檔備份，存於網際網路檔案館）
* OverQoS: An overlay based architecture for enhancing Internet QoS （頁面存檔備份，存於網際網路檔案館）
* HyParView: a membership protocol for reliable gossip-based broadcast. João Leitão, José Pereira and Luís Rodrigues（頁面存檔備份，存於網際網路檔案館）. Proceedings of the 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), 2007
* RFC 3170 
 （頁面存檔備份，存於網際網路檔案館）
* Multicast over TCP/IP HOWTO （頁面存檔備份，存於網際網路檔案館）
* Nemo - Resilient Overlay Multicast
* FatNemo - Emulating FatTrees for Overlay Multisource/Multicast
* End System Multicast
* IRTF Scalable Adaptive Multicast Research Group （頁面存檔備份，存於網際網路檔案館） 關於覆蓋多播和應用層多播的參考文獻 （頁面存檔備份，存於網際網路檔案館）

## 參考文獻