Netflix Update (MeetBSD California 2014 Lightning Talk)

8
Netflix Update MeetBSD 2014

description

The slides for Scott Long's lightning talk, "Netflix Update", given at MeetBSD California 2014 in San Jose.

Transcript of Netflix Update (MeetBSD California 2014 Lightning Talk)

Page 1: Netflix Update (MeetBSD California 2014 Lightning Talk)

Netflix UpdateMeetBSD 2014

Page 2: Netflix Update (MeetBSD California 2014 Lightning Talk)

FreeBSD - Still being awesome

Other22.0%

Amazon Video

Facebook

SSL

iTunes

Hulu

MPEG

BitTorrent

HTTP11.7%

Youtube13.2%

Netflix34.2%

Sandvine 1H 2014 Global Internet Phenomenon Report

Page 3: Netflix Update (MeetBSD California 2014 Lightning Talk)

What if we do SSL?

Other22.0%

Amazon Video

Facebook

SSL

iTunes

Hulu

MPEG

BitTorrent

HTTP11.7%

Youtube13.2%

SSL (Netflix)34.2%

Sandvine 1H 2014 Global Internet Phenomenon Report

Page 4: Netflix Update (MeetBSD California 2014 Lightning Talk)

Network I/O kernel

write() read()

Classic Web Serving

• Data is copied in

• Data is copied out

• High memory bandwidth, Cpu load

• L1/2/3 cache thrashed web

serverworker thread

Page 5: Netflix Update (MeetBSD California 2014 Lightning Talk)

Network

Sendfile

I/O

V/M

kernel

Optimized Nginx Web Serving

• Data is directed in and out of RAM

• No copies through the CPU

• Async sendfile hints

• variable read-ahead

• Cache-behind nginxworker thread

Page 6: Netflix Update (MeetBSD California 2014 Lightning Talk)

Network I/O kernel

write() read()

ssl nginx

Classic SSL Web Serving

• SSL Bulk encryption is expensive

• AESNI still costs CPU cycles

• Back to having data copies

• 2.5-3x hit on serving

Page 7: Netflix Update (MeetBSD California 2014 Lightning Talk)

Network

Sendfile

I/O

V/M

kernel

nginxssl

Socket bulkencryption

In-Kernel SSL Web Serving

• Encryption-aware sockets

• Key exchange, session mgmt still in user libraries

• AESNI, crypto-offload plug-in worker thread

Page 8: Netflix Update (MeetBSD California 2014 Lightning Talk)

Stay tuned…