地址加埠Address plus Port,簡稱 A+P)共享方案是一個具有實驗性質,用以疏解IPv4地址枯竭問題的方案。通過這個方案,網際網路服務供應商可以在不使用有狀態電信級NAT的情況下,讓多個用戶共享同一個IPv4地址[1]此方案在多個將IPv4過渡至IPv6的技術中得到了應用,例如輕量級4over64rdMAP-E以及MAP-T

工作原理

編輯
 
A+P example

A+P方案中,用戶將會從運營商端獲取一個(可能與其它用戶共享的)IPv4地址,以及可用的範圍(Port range)。

A+P中的架構有三大組成部分:網絡地址轉換(NAT)、信號發送(Signalling)、以及封裝/解封(Encapsulation/Decapsulation)。其中信號發送會將A+P相關的配置信息發送給支持A+P的終端。由於運營商網絡中的原有中間設備無法將IP位址相同,但埠範圍不相同的A+P數據包路由至不同的用戶端,因此需要利用封裝/解封機制來建立一個網絡隧道,以允許這些中間設備能夠正確地路由相關的數據包。[1]以MAP為例,IPv4數據包會通過IPv4-in-IPv6(IPv4經IPv6)隧道發送給運營商。

NAT在A+P中扮演了主要角色,功能上A+P NAT與傳統NAT相近,兩者之間的差別在於A+P NAT無法將內部網絡中的IP位址:埠組合映射至公網IP位址上的任意埠,只能映射至其中一個可用埠。NAT負責為不支持A+P的主機提供向後兼容性,這樣以來,內部網絡中的主機便無需特意修改亦可保持正常運行。

最終呈現的結果是,多個用戶將共享同一個IPv4地址,同時每個用戶發送的數據包都只存在於一定的埠範圍內,每個用戶都擁有不同的埠範圍。

對比電信級NAT

編輯

傳統的運營商網絡往往會將一個IP位址分配給用戶。當存在一個目標地址為用戶IPv4地址的IP報文時,運營商的網絡設施會將之路由至用戶所在地的路由器上。反之,當用戶需要將IPv4報文發送至其它終端時,運營商的網絡同樣會將其路由至IPv4網際網路上。然而,由於近年來IPv4地址枯竭問題日益嚴重,而IPv6部署進度緩慢,許多運營商部署了電信級NAT以滿足用戶群體對網際網路服務的需求。

電信級NAT的最大弊端在於其對端對端原則的損壞,使得存在於IPv4網絡上的兩台主機無法直接對話,電信級NAT背後的主機僅僅可以與擁有公網IPv4地址的伺服器通信,導致網際網路向中心化發展。[2]此外,倘若運營商將電信級NAT部署於大型網絡之中,用戶的網際網路使用體驗亦會受到一定程度的負面影響,如網速、延遲等。電信級NAT天生具備的有狀態性也導致了其不易擴展,且容易成為網絡中的單點故障。[3]

相比電信級NAT,A+P方案因為自身的無狀態本質,擁有一定程度的可擴展性,也允許了運營商部署冗餘設備以提升網絡可靠度。此外,由於A+P方案中的用戶端實際上是擁有公網IPv4地址的,只是可使用的埠存在一定限制,其對端對端原則的影響小於電信級NAT。

儘管如此,A+P方案需要軟體層的支持,而電信級NAT不需要,因此相對於A+P更為容易部署。[4]

地址兼埠映射Mapping of Address and Port,簡稱MAP)是一系列基於A+P思路的IPv6過渡機制。該機制使用了IPv6地址中的部分位元,用以儲存IPv4地址以及埠範圍等信息,又將來自用戶的IPv4數據包封裝或翻譯成IPv6數據包,以便將其發送至運營商的邊界中繼(Border Relay),從而進入IPv4網際網路內。[5][6]

參考文獻

編輯
  1. ^ 1.0 1.1 Bush, Randy. The Address plus Port (A+P) Approach to the IPv4 Address Shortage. Internet Engineering Task Force. 2011-08 [2023-08-10]. (原始內容存檔於2023-03-15). 
  2. ^ About Carrier Grade NAT (CGN) | APNIC. [2023-08-10]. (原始內容存檔於2023-08-11) (澳大利亞英語). 
  3. ^ Donley, Chris; Howard, Lee; Kuarsingh, Victor; Berg, John; Doshi, Jinesh. Assessing the Impact of Carrier-Grade NAT on Network Applications. Internet Engineering Task Force. 2013-09 [2023-08-10]. (原始內容存檔於2023-08-11). 
  4. ^ Philip Smith. How can Network Operators face IPv4-Address Exhaustion? (PDF). APNIC. [2023-08-10]. (原始內容存檔 (PDF)於2023-01-18). 
  5. ^ Trøan, Ole; Dec, Wojciech; Li, Xing; Bao, Congxiao; Matsushima, Satoru; Murakami, Tetsuya; Taylor, Tom. Mapping of Address and Port with Encapsulation (MAP-E). Internet Engineering Task Force. 2015-07 [2023-08-11]. (原始內容存檔於2023-03-22). 
  6. ^ Li, Xing; Bao, Congxiao; Dec, Wojciech; Trøan, Ole; Matsushima, Satoru; Murakami, Tetsuya. Mapping of Address and Port using Translation (MAP-T). Internet Engineering Task Force. 2015-07 [2023-08-11]. (原始內容存檔於2023-05-28).