Replacing TCP for the Datacenter - Discussing the Homa paper

The Backend Engineering Show with Hussein Nasser

Episode | Podcast

Date: Mon, 01 Aug 2022 06:17:08 GMT

<p>In this episode of the backend engineering show I go through and discuss the Homa Protocol paper which attempts to replace TCP as a protocol in the data centers. I learned a lot from this paper, I have my criticisms of certain aspects, timestamps for topics discussed below.</p> <p>It appears there is a path to replace TCP in the datacenter and professor John tries to explain this path.</p> <p><br /></p> <p>Referenced materials mentioned in the episode</p> <p>Overview paper</p> <p><a href="https://web.stanford.edu/~ouster/cgi-bin/papers/replaceTcp.pdf">https://web.stanford.edu/~ouster/cgi-bin/papers/replaceTcp.pdf</a></p> <p>Homa 2018 paper (Details)</p> <p><a href="https://people.csail.mit.edu/alizadeh/papers/homa-sigcomm18.pdf">https://people.csail.mit.edu/alizadeh/papers/homa-sigcomm18.pdf</a></p> <p>NIC Offloading in Linux</p> <p><a href="https://en.wikipedia.org/wiki/TCP_offload_engine#Support_in_Linux">https://en.wikipedia.org/wiki/TCP_offload_engine#Support_in_Linux</a></p> <p>Curl disabling Nigel Algo</p> <p><a href="https://github.com/curl/curl/commit/4732ca5724072f132876f520c8f02c7c5b654d9">https://github.com/curl/curl/commit/4732ca5724072f132876f520c8f02c7c5b654d9</a></p> <p>0:00 Intro</p> <p>3:00 The nature of networking data center</p> <p>5:30 TCP Segments</p> <p>7:30 There is no “Request” in TCP</p> <p>12:00 What so unique about Data centers?</p> <p>14:00 Message Throughput vs Data throughput</p> <p>18:25 Congestion Control</p> <p>22:38 Homa’s Congestion Control</p> <p>25:00 Server Core Load Balancing</p> <p>28:30 NIC offloading</p> <p>30:00 Everything Wrong about TCP</p> <p>37:00 Why not QUIC?</p> <p>40:00 Limitation of Streaming</p> <p>44:10 Load Balancing Stream Reading</p> <p>47:15 Can we treat Segments as Messages?</p> <p>51:00 Dispatching Messages is Easier</p> <p>53:00 Connection Orientation</p> <p>1:00:00 Sender Driven Congestion Control</p> <p>1:03:00 In Order Packet Delivery</p> <p>1:07:00 DCTCP</p> <p>1:08:30 Homa is Message Based</p> <p>1:11:00 Home is Connection Less</p> <p>1:12:00 Receiver Driven Congestion Control</p> <p>1:15:19 Out of Order Packets</p> <p>1:16:20 Homa API is not Compatible with TCP</p> <p>1:17:40 Will Homa come to HTTP?</p> <p>1:18:45 Conclusion</p>