对上游 OVS/OVN 修改¶
上游 OVN/OVS 最初设计目标为通用 SDN 控制器和数据平面。由于 Kubernetes 网络存在一些特殊的用法, 并且 Kube-OVN 只重点使用了部分功能,为了 达到更好的性能、稳定性和特定的功能,Kube-OVN 对上游 OVN/OVS 做了部分修改。用户如果使用自己的 OVN/OVS 配合 Kube-OVN 的控制器进行工作时需要注意 下述的改动可能造成的影响。
未合入上游修改:
- 22ea22c40b 调整选举 timer,避免大规模集群选举抖动。
- d26ae4de0a 目的地址非 Service 流量绕过 conntrack 以提高特定数据链路性能。
- ab923b2522 ECMP 算法由 dp_hash 调整为 hash,避免部分内核出现的哈希错误问题。
- 64383c14a9 修复 Windows 下内核 Crash 问题。
- 08a95db2ca 支持 Windows 下的 github action 构建。
- 680e77a190 Windows 下默认使用 tcp 监听。
- 94b73d939c DNAT 后替换 Mac 地址为目标地址,减少额外性能开销。
- 2dc8e7aa20 vswitchd ofport_usage 内存泄露。
已合入上游修改:
- 20626ea909 组播流量绕过 LB 和 ACL 处理阶段,以提高特定数据链路性能。
- a2d9ff3ccd Deb 构建增加编译优化选项。
最后更新: 2023年5月8日
创建日期: 2022年6月7日
创建日期: 2022年6月7日