Top Banner
Windows Community Updates on OVS and OVN Alin Serdean Anand Kumar Ionut Balutoiu Sairam Venugopal
16

Windows Community Updates on OVS and OVN

Feb 03, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Windows Community Updates on OVS and OVN

Windows Community Updates on OVS and OVN

Alin SerdeanAnand KumarIonut Balutoiu

Sairam Venugopal

Page 2: Windows Community Updates on OVS and OVN

Agenda

• OVS– Introduction & Architecture– Features– Container support– Roadmap

• OVN– ovn-kubernetes

• Demo• Questions

Page 3: Windows Community Updates on OVS and OVN

Introduction

• OVS solution for Microsoft Hyper-V• Collaboration b/n VMware Inc. and Cloudbase

Solutions• Consists of:

– Ported OVS userspace code– Windows datapath (OVSEXT – Hyper-V forwarding extension)

Page 4: Windows Community Updates on OVS and OVN

Architecture

• Hyper-V extensible switch• OVS components

– OVS userspace– OVSExt driver

• Userspace – Kernel communication• Packet Flow• Skb ~ Nbl (Net buffer list)

Page 5: Windows Community Updates on OVS and OVN

Architecture

Child Partitions (Guest)

OVS Forwarding Extension

INGRESS

EGRESS

Hyper-V extensible switch

Interface device

Flowtable

Packet ProcessingWFP Callout

Driver

Virtual Machine #1

Virtual Machine #2

VIF VIFPhysical

NIC

ovs-vswitchd

netlink socket(emulation)User

NDIS Stack

Root Partition (Host)

ovs-*ctl

Netlink Message Impl.

Kernel

dpif-netlink

netdev-windows

Hyper-V Internal

NIC

vport table

1

2

3

4

5

67

Page 6: Windows Community Updates on OVS and OVN

Features

• Supported OS–Windows family 8 (2012/Win8)–Windows family 9 (2012 R2, Win 8.1)–Windows family 10 (2016 LTSC, 1709, 1803, 1809)

• Supports most of the matching flows and actions• Supports GRE, GENEVE, STT, VXLAN tunnels• Supports hardware offloads• Stateful firewall support with connection tracking and

recirculation• Supports multiple NICs, VTEPS and BONDING

Page 7: Windows Community Updates on OVS and OVN

Containers on Windows

• Prerequisites: Windows 10 / Server 2016 family

• Containers also use “VM Switch” for networking

• OVS hooks on to the VM switch for managing container networking similar to VMs

Page 8: Windows Community Updates on OVS and OVN

Recent datapath changes

• Stabilizing driver• Conntrack support

– NAT– IP fragments– zone limits– Performance optimization

• Continuous integration with unit tests• Introduce support for Host Network Stack (HNS) API’s

Page 9: Windows Community Updates on OVS and OVN

Roadmap

• Adding support for PCAP interfaces• Megaflows• UFID (unique flow identifier)• IPv6 conntrack and tunnels• Other tunnels (NSH, LISP)

Page 10: Windows Community Updates on OVS and OVN

OVN in Kubernetes

• OVN provides virtualization for containers• ovn-kubernetes• overlay model• On Linux/Windows:

– Implements CNI plugin

• Daemonsets for easier deployment• HA for OVN is available from OVS 2.10

Page 12: Windows Community Updates on OVS and OVN

Benefits of an ovn-kubernetes deployment

• Distributed firewalling for PODs• Can be used together with service-meshes (Istio, etc)• Full heterogenous deployment (Linux + Windows, on-

prem + off-prem with IPSEC support via OVN for encryption)

• ovn-kubernetes is heavily used in mixed environments (since alpha Windows support in Kubernetes)

• Openshift Tech. Preview (starting 3.9) supports ovn-kubernetes environments (including Windows nodes)

Page 13: Windows Community Updates on OVS and OVN

Roadmap for ovn-kubernetes

• OVN golang bindings (branch)• Integration with kops, kubespray, etc• Add Kubernetes operator for ovn-kubernetes• Enhance ansible playbooks and vagrant setup

Page 14: Windows Community Updates on OVS and OVN

Diagram of the demo environment

Technical PoC

Page 15: Windows Community Updates on OVS and OVN

Useful links

• Where to download OVS/OVN distribution: http://openvswitch.org/download/; https://cloudbase.it/openvswitch/ (includes signed drivers!)

• Open vSwitch documentation: http://docs.openvswitch.org/en/latest/

• Where to report bugs and ask questions: [email protected], [email protected], https://github.com/openvswitch/ovs-issues, https://ask.cloudbase.it

• OVS conference presentations: http://openvswitch.org/support/ovscon2016/, http://openvswitch.org/support/ovscon2015/, http://openvswitch.org/support/ovscon2014/

• ovn-kubernetes: https://github.com/openvswitch/ovn-kubernetes

Page 16: Windows Community Updates on OVS and OVN

Questions?

• Join us on the ovs IRC channel #openvswitch every Tuesday at 10:00 AM PST.