fastpass a centralized zero queue datacenter network
play

Fastpass A Centralized Zero-Queue Datacenter Network Jonathan - PowerPoint PPT Presentation

Fastpass A Centralized Zero-Queue Datacenter Network Jonathan Perry Amy Ousterhout Hari Balakrishnan Devavrat Shah Hans Fugal Ideal datacenter network properties No current design satisfies all these properties simultaneously Scaling


  1. Fastpass A Centralized “Zero-Queue” Datacenter Network Jonathan Perry Amy Ousterhout Hari Balakrishnan Devavrat Shah Hans Fugal

  2. Ideal datacenter network properties No current design satisfies all these properties simultaneously Scaling Memcache at Datacenter TDMA, Facebook, Tail at scale, EyeQ, Seawall, Oktopus, Fine-grained TCP pFabric, PDQ, DCTCP, Hedera, VL2, Mordia, retransmissions D3, Orchestra SWAN, MATE, DARD Alizadeh et al, "DCTCP", SIGCOMM'10 Burst Control Low Tail Latency Multiple Objectives

  3. Fastpass goals Is it possible to design a network that provides 1. Zero network queues 2. High Utilization 3. Multiple app and user objectives Alizadeh et al, "DCTCP", SIGCOMM'10 Burst Control Low Tail Latency Multiple Objectives

  4. Centralized arbiter schedules and assigns paths to all packets Concerns with centralization: Latency Scaling Fault tolerance Chuck Norris doesn't wait in queues. He schedules every packet in the datacenter!

  5. Example: Packet from A to B 5µs A → Arbiter "A has 1 packet for B" 1-20µs Arbiter timeslot allocation & path selection 15µs Arbiter → A "@t=107: A → B through R1" no queuing A → B sends data R1 R2 Arbiter B A

  6. Scheduling and selecting paths Timeslot = 1.2 µs Step 1: Timeslot Allocation Step 2: Path selection Choose a matching Map matching onto paths Arbiter treats network as a big switch

  7. System structure Endpoint Arbiter Host Timeslot networking allocation stack destination and size FCP FCP Path client server Selection timeslots and paths NIC Challenges: Latency Scaling Fault tolerance

  8. Timeslot allocation = maximal matching ( ) src dst pkts 1 2 , 3 → ( ) src dst pkts 3 1 , 3 → ( ) src dst pkts 7 4 , 1 → ( ) src dst pkts 5 8 , 2 → ( ) src dst pkts 4 3 , 4 → ( ) src dst pkts 1 3 , 1 → t=100 ( ) src dst pkts 8 6 , 3 → ~10ns per demand

  9. How to support different objectives? Order matters! ( ) src dst pkts 1 4 , 1 → ( ) src dst pkts 6 2 , 2 → ( ) src dst pkts 4 3 , 2 → ( ) src dst pkts 1 7 , 3 → ( ) src dst pkts 8 5 , 4 → ( ) src dst pkts 6 7 , 5 → t=100 ( ) src dst pkts 6 1 , 5 → ( ) src dst pkts 2 5 , 6 →

  10. How to scale timeslot allocation? ( , ) ( , ) src dst pkts src dst pkts 9 12 6 2 4 7 → → ( , ) src dst pkts 1 6 6 → ( , ) src dst pkts 5 9 8 → ( , ) src dst pkts 11 7 8 → ( src dst pkts , ) 1 11 8 → t=100 t=101 t=102 t=103 Core 1 Core 2 Core 3 Core 4 Can pipeline timeslot allocation 2211.8 Gbits/s on 8 cores

  11. Are maximal matchings good matchings? Maximal Matching Optimal scheduler 2C network capacity C network capacity Dai-Prabhakar '00: ⇐ Finite average latency Finite average latency Our theorem: ≤ 2 × Average latency Average latency

  12. System structure Endpoint Arbiter Host Timeslot networking allocation stack destination and size FCP FCP Path client server Selection timeslots and paths NIC Challenges: Latency Scaling Fault tolerance

  13. Fault-tolerance Arbiter failures Hot backups , TCP as last resort Switch failures Packet loss to arbiter

  14. Experimental results Timeslot allocation 2.21 Terabits/s with 8 cores Path selection >5 Terabits/s with 10 cores Facebook experiments: Switch queue length, RTT Convergence to network share Reducing retransmission in production

  15. Queues & RTT 15 ping TCP .23 ms .23 ms 3.56 ms 3.56 ms 10 fastpass Density baseline 5 0 0 1 2 3 4 Ping time (milliseconds)

  16. Convergence to network share 6 Per−connection throughput (Gbits/s) baseline 4 Sender 2 1 2 0 3 5200x 4 6 stddev 5 fastpass 4 2 0 0 50 100 150 200 250 Time (seconds)

  17. Reducing retransmissions in production b a s e l i n e f a s t p a s s b a s e l i n e per node per second 6 retransmissions Median packet 4 2 0 0 2000 4000 6000 Time (seconds) Each server: ~50k QPS

  18. Benefits A: "Now I can see pictures of other's people's food and children so much more quickly...can't wait..>.>" B: "You forgot about [...] cats. I will say, faster pics of cats is probably worth some merit."

  19. Benefits Low user latency Stronger network semantics No packet drops, predictable latency, deadlines, SLAs Developer productivity Less dealing with bursts, tail latency, hotspots Simplify building complex systems Lower infrastructure cost Less over-provisioning

  20. Fastpass enables new network designs Update Scheduling & Flow Congestion Packet Traditional routing Queue control control forwarding tables management Update Scheduling & Flow Congestion Packet SDN routing Queue control control forwarding tables management Per-packet Scheduling & Flow Congestion Packet Fastpass path Queue control control forwarding selection management Endpoint Centralized Switch Fastpass: centralizes control at packet granularity Switches can become even simpler and faster

  21. Conclusion Zero network queues High Utilization Multiple app and user objectives Pushes centralization to a logical extreme Opens up new possibilities for even faster networks Code (MIT licensed): http://fastpass.mit.edu

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend