On the Cost of Using Happy Eyeballs for Transport Protocol - - PowerPoint PPT Presentation

on the cost of using happy eyeballs for transport
SMART_READER_LITE
LIVE PREVIEW

On the Cost of Using Happy Eyeballs for Transport Protocol - - PowerPoint PPT Presentation

On the Cost of Using Happy Eyeballs for Transport Protocol Selection Giorgos Papastergiou, Karl-Johan Grinnemo*, Anna Brunstrom*, David Ros, Michael Txen, Naeem Khademi, Per Hurtig* Simula Research Laboratory, *Karlstad


slide-1
SLIDE 1

On the Cost of Using Happy Eyeballs for Transport Protocol Selection

Giorgos Papastergiou†, Karl-Johan Grinnemo*, Anna Brunstrom*, David Ros†, Michael Tüxen˟, Naeem Khademi⁺, Per Hurtig*

†Simula Research Laboratory, *Karlstad University, ˟Fachhochschule Münster, ⁺University of Oslo

slide-2
SLIDE 2

Introduction

  • Deployment of new transport protocols is a

difficult task

  • How to know if a new protocol is supported along

the whole end-to-end path?

– Try it

  • If not supported a fallback mechanism is needed

– Testing protocols serially can be time consuming

  • Happy Eyeballs for transport protocol selection

7/15/2016 2

slide-3
SLIDE 3

Happy Eyeball Example: TCP and SCTP

7/15/2016 3

  • Concurrent initiation of TCP and SCTP
  • Preferred connection attempt wins
slide-4
SLIDE 4

Related Work

[RFC6555] D. Wing and A. Yourtchenko. Happy Eyeballs: Success with Dual-Stack Hosts. RFC 6555 (Proposed Standard), Apr. 2012. [Wing10] Wing, D. and P. Natarajan, "Happy Eyeballs: Trending Towards Success with SCTP", https://tools.ietf.org/html/ draft-wing-tsvwg-happy-eyeballs-sctp-02 (work in progress), October 2010. 7/15/2016 4

  • Happy Eyeballs introduced as a way of promoting

the use of IPv6 [RFC6555]

  • Transport Happy Eyeballs was proposed as a

mecahnism to run HTTP over SCTP [Wing10]

  • Ongoing work in IETF TAPS WG

– “… explain how to select and engage an appropriate protocol and how to discover which protocols are available for the selected service between a given pair

  • f end points”
slide-5
SLIDE 5

Cost of Happy Eyballs?

  • Increased server load

– CPU load – Memory usage

  • Increased network traffic
  • Goal: Assess impact of happy Eyeballs on

server load

7/15/2016 5

slide-6
SLIDE 6

Experiment

  • Length of each test run: 600 s
  • Exponentially distributed http reqs.

– [100,1000] reqs./s

  • Metrics:

– CPU utilization – Kernel memory usage

7/15/2016 6

slide-7
SLIDE 7

Basic Test Case

  • Always results in a TCP connection
  • No caching of previous connection attempts
  • Unencrypted connections

7/15/2016 7

slide-8
SLIDE 8

CPU Utilization in Basic Test Case

7/15/2016 8

1 2 3 4 5 6 7 8 9 10 TCP SCTP HE-TCP TCP SCTP HE-TCP TCP SCTP HE-TCP TCP SCTP HE-TCP 100 400 700 1000

CPU utilisation (%) Average request rate (requests/s) Requested object size = 1 KByte Requested object size = 35 KBytes

slide-9
SLIDE 9

Memory Usage in Basic Test Case

7/15/2016 9

5 10 15 20 25 30 35 TCP SCTP HE-TCP TCP SCTP HE-TCP TCP SCTP HE-TCP TCP SCTP HE-TCP 100 400 700 1000

Kernel memory usage (MBytes) Average request rate (requests/s) Requested object size = 1 KByte Requested object size = 35 KBytes

slide-10
SLIDE 10

TLS Test Case

  • No caching of previous connection attempts
  • TLS-encrypted connections

7/15/2016 10

slide-11
SLIDE 11

CPU Utilization in TLS Test Case

7/15/2016 11

5 10 15 20 25 30 TCP SCTP HE-TCP TCP SCTP HE-TCP TCP SCTP HE-TCP TCP SCTP HE-TCP 100 400 700 1000

CPU utilisation(%) Average request rate (requests/s)

1K 35K

slide-12
SLIDE 12

Sharing of CPU load in TLS Test Case

7/15/2016 12

slide-13
SLIDE 13

Memory Usage in TLS Test Case

7/15/2016 13

5 10 15 20 25 30 35 TCP SCTP HE-TCP TCP SCTP HE-TCP TCP SCTP HE-TCP TCP SCTP HE-TCP 100 400 700 1000

Kernel memory usage (MBytes) Average request rate (requests/s)

1K 35K

slide-14
SLIDE 14

Cache Test Case

  • Caching of previous connection attempts
  • Both unencrypted and TLS-encrypted

connections

– HE-TCP: always results in a TCP connection – HE-SCTP: always results in a SCTP connection – HE-50%: 50% chance TCP/SCTP connection

7/15/2016 14

slide-15
SLIDE 15

Cache Hit Ratio vs. CPU Utilization

7/15/2016 15

Unencrypted TLS-encrypted 1 KiB 35 KiB

slide-16
SLIDE 16

Conclusion

  • Happy Eyeball is a feasible transport-selection

mechanism

  • Small increase in CPU utilization

– Around 10% for 35 KiB web objects – Encryption has larger impact on CPU load – Caching can reduce load further

  • Basically no increase in memory usage

7/15/2016 16

slide-17
SLIDE 17

Future Work

  • More extensive evaluations with more than

two feasible transport solutions

  • Transport service library with Happy Eyeballs

support

– https://github.com/NEAT-project/neat

  • Evaluation of Happy Eyeball in real-world

scenarios with middleboxes etc.

7/15/2016 17