vSwitch is a multi layer software switch along with almost all layer-3 functionalities, primarily used in data center as a core element specially where SDN deployments are in place .
Elaborating the functionalities of vSwitch,it resides at network access layer with-in the Virtual machine (VM) .Usually vSwitch performs as an advanced edge switch which can handle only layer-2 network traffic. Recalling the layer-2 and Layer-3 traffic; Layer-2 can only forward frames (uses host’s hardware address) where as in layer-3, routing decisions is to be taken at this layer.
It is an open source virtual switch for all major hyper-visor platforms(a multi-layer vSwitch developed under the Apache 2 license) works like a VMware’s VNetwork distributed vSwitch or Cisco’s Nexus 1000 Vopen vSwitch. we can create VLAN, inter-vlan routing,ip-forwarding, VM-VM routing with GRE tunneling through Open vSwitch along with implementation of basic firewall configuration steps with the help of enforcing SYN policy, allowing ACK|RST and via learning action algorithm techniques.
One important thing about Open vSwitch is that we have to control and manage Open Vswitch by third party controllers and managers for the handling of forwarding path( the in-kernel data path ) and control path , it’s not itself a SDN controller. The main components of open VSwitch is ovsdb-server( communicates with vswitchd using OVSDB) , ovs-vswitchd ( communicates with public network) and OVS Kernel Module( handles switching and tunneling ) .
Actually Open vSwitch depends on the routing functionality that built on Linux kernel, as mention above, it does not perform the routing functionality itself.
The Routing process in between two virtual machines can be elaborated as:
- Creating isolated bridge for VM-VM connectivity.
- Creating GRE tunnel endpoint on each hypervisor.
- Adding GRE interface
- Establishing GRE tunnel.
Following steps are essential while creating VLAN:
- Create an Open VSwitch bridge
- Add eth0 to the bridge
- Add VM1 as an “access port” on VLAN 1
- Add VM2 on VLAN 2
Repeat these steps on 2nd host:
- Setup a bridge with eth0 as a VLAN trunk
- Add VM3 to VLAN 1
- Add VM4 to VLAN 2
Similarly, the Inter-VLAN Routing process involved:
- Configure VLAN for every open vSwitch.
- Configure VLAN interfaces.
- Enable IP routing.
With open vSwitch ,cloud users can take advantage of secure and elastic network configuration with their assigned VMs . The main objective of Open vSwitchis to keep the in-kernel code as small asPossible byre-desigining the network module to fulfill the requirement of automation and dynamic controlling of network infrastructure which was not possible previously with vSwitch,available with previous hypervisors .