首先確認 Geneve 是一種封裝協議,可能提供比 VLAN 或 VXLAN 更靈活的擴展能力,這對 OVN 的多租戶場景很重要。可能需要支持更多元數據字段,比如攜帶網絡策略信息,這符合 SDN 集中控制的需求。
性能方面需要考慮封裝效率和硬件支持情況,雖然 Geneve 頭部稍大,但現代網卡的卸載功能可能彌補這點。另外要確認 OVN 是否需要與其他網絡技術集成,Geneve 的標準化程度可能有助于跨平臺兼容性。
Geneve 的 UDP 封裝可能在防火墻穿越上有優勢,且其協議擴展性可能更適合 OVN 未來功能迭代。不過這些推測需要驗證,比如查找 OVN 官方文檔中的設計決策說明,或者社區討論中提到的具體考量點。
OVN 的核心需求是傳輸額外元數據,比如邏輯端口 ID。VXLAN 的固定 8 字節頭部無法容納 15bit 源端口和 16bit 目的端口,而 Geneve 的 TLV 結構正好提供可擴展性 —— 這可能是關鍵因素。
性能方面,Geneve 的 UDP 校驗和優化值得注意:內核會跳過內層校驗計算,這可能在軟件層面比 VXLAN 更高效。
另外,ECMP 支持方式不同。Geneve 用 UDP 源端口標識數據流,這可能更適合 Underlay 網絡的負載均衡,而 VXLAN 依賴內層報文解析。但不確定 OVN 實際部署中 ECMP 的使用頻率,需要結合其網絡拓撲判斷。
還有一個點是標準化程度。Geneve 作為 IETF 標準,可能比 STT 更具生態優勢,雖然當前硬件支持不如 VXLAN,但 DPU 已經開始適配。這可能影響 OVN 的長期技術路線選擇。
總之
OVN(Open Virtual Network)選擇Gene