21
© 2011 Solarflare Communications, Inc. Solarflare and OpenOnload

Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

  • Upload
    lamhanh

  • View
    225

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc.

Solarflare and OpenOnload

Page 2: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 2

Solarflare Server Adapter Family

• High performance

• Lowest power: < 2.5W per

port SFP+

• Linux (< 7 msec), Windows,

and Solaris

• Solarflare OpenOnload for

ultra-low latency ( < 4 msec)

• Hardware-assisted, scalable

virtualization: up to 2048

vNICs

Dual Port SFP+

SFN5122F & SFN5162F

Dual Port 10GBASE-T

SFN 5121T & SFN5161T

Single Port 10GBASE-T

SFN5151T

Single Port SFP+

SFN5152F

Page 3: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 3

10Gbps Enterprise Server Adapter

Platforms

Page 4: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 4

Platform Support: Windows

• High performance, low-latency

– < 11uS ½ RTT TCP latency

– Bidirectional line rate, both ports (40G) with < 20% CPU load

– Stateless offloads (TSO, LRO, RSS)

– Performance scales with multiple CPU cores

• Enterprise feature set

– VLAN and teaming (including 802.3ad link aggregation)

– Unattended installation

– SNMP MIB

• Comprehensive management

– Command line and GUI (MMC snap-in integrated into OS)

– Local and remote management

Page 5: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 5

Platform Support: Linux

• High performance, low-latency

– < 7uS ½ RTT UDP latency

– Bidirectional line rate, both ports (40G) with < 20% CPU load

– Stateless offloads (TSO, LRO, RSS)

– Performance scales with multiple CPU cores

• Full integration into Linux kernel

– Driver “intree” (kernel.org)

– Wide distribution and kernel support

– Integration with ethtool, MTD, hwmon (sensors)

• Actively improving Linux networking

– Solarflare is the maintainer of “ethtool”

– Implemented Linux kernel RFS hardware offload

Page 6: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 6

Platform Support: Other

• Solaris 10

– High performance low-latency Solaris GLDv3 driver

• Virtualization

– VMware ESX 4.x high performance driver

– SR-IOV support for highest performance

• Citrix XenServer6, KVM, more coming

– Windows Hyper-V VMQ acceleration

• BootROM

– Full PXE and iSCSI boot support

Page 7: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 7

Deployments

• Wide range of deployments– Financial

• Many major exchanges worldwide

– Cloud

– Enterprise

• Several Fortune 100

– Scientific/HPC

• Wide range of partners

Page 8: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 8

vNIC

• Solarflare server

adapters are

“virtualisable”

– 2048 vNICs

– High performance in

many domains

NICNIC

NICNIC

NIC

NICNIC

NICNIC

Page 9: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 9

Virtual NICs for performance scaling

NIC VNIC VNICVNIC VNIC VNIC

Linux/Windows/Solaris kernel

DM

A q

ue

ue

DM

A q

ue

ue

DM

A q

ue

ue

DM

A q

ue

ue

DM

A q

ue

ue

CPU

core

1

CPU

core

2

CPU

core

...

CPU

core

...

CPU

core

N

VNIC per CPU core (RSS)– RX queue per CPU core

– TX queue per CPU core

– Complete CPU core separation

– Performance scales across

CPUs

Page 10: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 10

Virtual NICs for Virtual Machines

NIC VNIC VNICVNIC VNIC VNIC

Hypervisor

(e.g. ESX) NetQ

ue

ue

NetQ

ue

ue

NetQ

ue

ue

NetQ

ue

ue

NetQ

ue

ue

VM VM VM VM VM

VNIC per VM – RX queue per VM

– TX queue per VM

– VM separation

– Used for VMware NetQueue

and Windows HyperV VMQ

Page 11: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 11

Virtual NICs for Virtual Machines (2)

VMVM

NIC VNIC VNICVNIC VNIC VNIC

VM VM VM

driver

TCP/IP

driver

TCP/IP

driver

TCP/IP

driver

TCP/IP

driver

TCP/IP

Hypervisor

(e.g. Xen) NetQ

ue

ue

NetQ

ue

ue

VNIC per VM – Same model used for

SR-IOV

– In this case VM has

direct access to VNIC(s)

via SR-IOV VF

Page 12: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 12

Virtual NICs for application acceleration

NIC VNIC VNICVNIC VNIC VNIC

Linux

kernel

TCP/IP stack

App App App App App

Driver

onload onloadonload

VNIC per application– Used by OpenOnload

Page 13: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 13

• TCP and UDP Acceleration

– Kernel bypass

• App gets direct access to hardware

• Fewer context switches, copies

– Benchmarks

• Reduces latency by 50%

• Increases message rates 2x to 3x

– “Real” applications even more benefit

• Compatibility

– No recompile/application mods

– Regular Ethernet/IP network

– Unicast and multicast

– “Just works”

Solarflare OpenOnload® Application

Acceleration Middleware

OpenOnload

Page 14: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 14

• Trivial to deploy and to use

– $ myapp arg1 arg2

– $ onload myapp arg1 arg2

• Open source

– GPL

– Very wide range of kernels/distros supported

– EnerpriseOnload• Bundled subscription and 24/7 support

Solarflare OpenOnload® Application

Acceleration Middleware

Page 15: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 15

• Just a library and a kernel module

– No application changes

– No recompile

– No kernel patches

– No protocol changes

• Picks up existing Linux network configuration

– IP addresses and route table

– Bonding (aka teaming)

– VLANs

– Multicast (IGMP)

– Kernel settings, e.g. socket buffer sizes

Solarflare OpenOnload® Application

Acceleration Middleware

Page 16: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 16

• Mature technology– 8+ years of development

• Goal is to make any application “just work”– Occasionally we find apps that do not; this is considered a “bug”

in Onload and we fix it.

• ~ 100% coverage of API’s– epoll, poll, select

– socket options

– fork + exec

– interop with non-Solarflare interfaces

(via “hand-over” to kernel stack)

Solarflare OpenOnload® Application

Acceleration Middleware

Page 17: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 17

• Uses LD_PRELOAD to

intercept libc calls– socket()

– bind()

– accept()

– recvmsg()

– setsockopt()

– poll(), select(), epoll()

– many others…

Onload implementation

application

glibc

application

onload

Linux

kernel

glibc

Page 18: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 18

Solarflare for Ultra Low Latency

Latency UDP (ms) TCP (ms)

Onload 3.9 (3.5) 4.1 (3.9)

Kernel 6.9 () 7.9 ()

Page 19: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 19

Page 20: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 20

2x CPU E5620 @ 2.4GHz 8 Cores, 8, 6GB RAM, Intel 5500 chipset

SFP+, Back-to-back, 1500MTU - RHEL 5.5 x86_64 HPMPI MPI + IMB / Pallas

Low Latency HPC

Page 21: Solarflare and OpenOnload - storage.dpie.comstorage.dpie.com/downloads/solarflare/Solarflare_FRnOG_OpenOnload.pdfSingle Port 10GBASE-T SFN5151T Single Port SFP+ SFN5152F © 2011 Solarflare

© 2011 Solarflare Communications, Inc. 21

Summary

• Solarflare: the gold-standard for high performance Ethernet

• Excellent support for: Linux, Windows, Solaris, VMware, BSD,…– OpenOnload for even higher performance on Linux

• No “B.S.”– Customers achieve the numbers we show in

presentations like this!

– See the “Low Latency Quick Start Guide” at http://download.solarflare.com/