Docker Overlay 介紹

Overlay Network服務器

  • Overlay Network:屬於Docker網絡驅動,基於VXLAN封裝實現Docker原生Overlay網絡。
  • Overlay Network:覆蓋網絡,在基礎網絡上疊加的一種虛擬網絡技術模式,該網絡中的主機經過虛擬鏈路鏈接起來。
  • Overlay Network:Overlay網絡有三種協議實現方式分別爲,VXLAN、NVGRE、STT。

VXLAN:VXLANVirtual Extensible Local Area Network,虛擬可擴展局域網),經過將物理服務器或虛擬機發出的數據包封裝到UDP中,並使用物理網絡的IP/MAC做爲外層報文頭進行封裝,而後在IP網絡上傳輸,到達目的地後由隧道端點解封裝並將數據發送給目標物理服務器或虛擬機,擴展了大規模虛擬機網絡通訊。因爲VLAN Header頭部限制長度是12bit,致使只能分配4095個VLAN,也就是4095個網段,在大規模虛擬網絡。VXLAN標準定義Header限制長度24bit,能夠支持1600萬個VLAN,知足大規模虛擬機網絡需求。網絡

VXLAN有如下核心技術組成:less

  • NVE(Network Vritual Endpoint,網絡虛擬端點):實現網絡虛擬化功能。報文通過NVE封裝轉換後,NVE間就可基於三層基礎網絡創建二層虛擬化網絡。
  • VTEP(VXLAN Tunnel Endpoints,VXLAN隧道端點):封裝在NVE中,用於VXLAN報文的封裝和解封裝。
  • VNI(VXLAN Network Identifier,VXLAN網絡標識ID):相似於VLAN ID,用於區分VXLAN段,不一樣的VXLAN段不能直接二層網絡通訊。

 

  • 講解:
  • 一、左右兩邊分別爲容器節點1與容器節點2。
  • 二、當容器節點1發出一個報文時會經過VTEP將這個數據包進行封裝,封裝完成以後再由ech0轉發到對應的主機中。
  • 三、經過UDP協議在VXLAN Tunnel隧道中傳輸。
  • 四、對應的主機也經過eth0收到數據包,經過VTEP將收到的數據包進行解封裝,從裏面取出對應的mac地址等信息發送到對應的容器中。 

NVGRENetwork Virtual using Generic Routing Encapsulation,使用GRE虛擬網絡):與VXLAN不一樣的是,NVGRE沒有采用標準傳輸協議(TCP/UDP),而是藉助通用路由封裝協議(GRE)。採用24bit標識二層網絡分段,與VXLAN同樣能夠支持1600萬個虛擬網絡。spa


STTStateless Transport Tunneling,無狀態傳輸隧道):模擬TCP數據格式進行封裝,改造了TCP傳輸機制,不維護TCP狀態信息。blog

相關文章
相關標籤/搜索