1. 程式人生 > >Docker OpenvSwitch 介紹 or 工作原理

Docker OpenvSwitch 介紹 or 工作原理

Docker OpenvSwitch Network 介紹

什麼是OpenVSwich

  • OpenvSwich Network:屬於第三方網路專案,可以理解為是一個標準的交換機協議。
  • OpenvSwich:開放虛擬交換標準,是一種基於開源Apache2.0許可證的多層軟體交換機,專門管理多租賃雲端計算網路環境,支援KVM、Xen等虛擬化技術。

支援以下功能:

1. 支援標準802.1Q VLAN模組的Trunk和access埠模式;

2. QoS(Quality of Service)配置,及管理;

3. 支援OpenFlow協議;

4. 支援GRE、VXLAN、STT和LISP隧道;

5. 具有C和Python介面配置資料庫;

6. 支援核心態和使用者態的轉發引擎設定;

7. 支援流量控制及監控。

主要組成部分:

  • ovs-vswitchd 一個實現交換機的守護程式
  • ovsdb-server 一個輕量級資料庫,ovs-vswitchd查詢以獲取其配置
  • ovs-dpctl 用於配置交換機的核心模組工具
  • ovs-vsctl 用於檢視和更新ovs-vswitchd的配置工具
  • ovs-appctl 一個向執行OVS守護程式傳送命令的工具

還提供了openflow的工具:

  • ovs-ofctl 用於檢視和控制OpenFlow交換機和控制器
  • ovs-pki 用於建立和管理公鑰
  • ovs-tcpundump 解析openflow訊息

Docker OpenvSwitch 工作原理

兩臺節點主機容器,Container通過OpenvSitch通訊

1、Container eth0:veth它會將網路橋接到docker0網路。

2、Docker0:Docker網橋預設網路。

3、br0:OVS網橋,它會將Docker0網橋加入到br0網路,它會捕獲到Container eth0 發出的資料包。

4、gre0:OVS網路捕獲資料包後通過gre協議將資料包封裝。

5、eth0:物理網絡卡,它會把gre資料包,轉發給節點2。

6、節點2的eth0接收資料包後->交給OVS進行街封裝->獲取獲取訪問地址->裝發到docker0->再交給容器的eth0。