OVS v OVS-DPDK

Post on 21-Jan-2018

102 views 2 download

transcript

OVSv

OVS-DPDK

ABOUT ME

Md Safiyat Reza

Open-source enthusiast

Delving into cloud.

safiyat

@reza_safiyat

reza.safiyat@acm.org

What is OVS?

VM

virtio driver

ping 8.8.8.8

OK, wait a sec

virtio driver

QEMU virtiobackend

VM wants to ping 8.8.8.8

OK, wait a sec

QEMU virtiobackend

tap device

Hey there, ping 8.8.8.8 for me

OK, gimme a moment

tap device

Kernel

Here is an ICMP packet. Do what you

do best.

Get back to you in a jiffy

Why OVS-DPDK?

• Lots of components between VM and physical networking infrastructure

causing scalability issues and performance degradation.

• Context switches

• Polling

• Hugepages

• Pinned CPUs

• Userspace IO

• Kernel flows are basically a cache

• OVS performs very well so long as the packets hit this cache

• Default flow timeout is 10 seconds.

• Most of the overhead here is in copying packets in the userspace and context switching.

Standard OVS OVS-DPDK

Gbps 1.159 9.9

MPPS 1.72 14.85

Throughput

• Xeon E5-2643@3.5 GHz

• Intel 82599EB

• Linux Kernel 3.17

Standard OVS OVS-DPDK Difference

TCP 46 33 ~ 30%

UDP 51 32 ~ 37%

Latency

• Xeon E5-2643@3.5 GHz

• Intel 82599EB

• Linux Kernel 3.17

Thank you!