
Replacing TCP for the Datacenter - Discussing the Homa paper
About this episode
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.
It appears there is a path to replace TCP in the datacenter and professor John tries to explain this path.
Referenced materials mentioned in the episode
Overview paper
https://web.stanford.edu/~ouster/cgi-bin/papers/replaceTcp.pdf
Homa 2018 paper (Details)
https://people.csail.mit.edu/alizadeh/papers/homa-sigcomm18.pdf
NIC Offloading in Linux
https://en.wikipedia.org/wiki/TCP_offload_engine#Support_in_Linux
Curl disabling Nigel Algo
https://github.com/curl/curl/commit/4732ca5724072f132876f520c8f02c7c5b654d9
0:00 Intro
3:00 The nature of networking data center
5:30 TCP Segments
7:30 There is no “Request” in TCP
12:00 What so unique about Data centers?
14:00 Message Throughput vs Data throughput
18:25 Congestion Control
22:38 Homa’s Congestion Control
25:00 Server Core Load Balancing
28:30 NIC offloading
30:00 Everything Wrong about TCP
37:00 Why not QUIC?
40:00 Limitation of Streaming
44:10 Load Balancing Stream Reading
47:15 Can we treat Segments as Messages?
51:00 Dispatching Messages is Easier
53:00 Connection Orientation
1:00:00 Sender Driven Congestion Control
1:03:00 In Order Packet Delivery
1:07:00 DCTCP
1:08:30 Homa is Message Based
1:11:00 Home is Connection Less
1:12:00 Receiver Driven Congestion Control
1:15:19 Out of Order Packets
1:16:20 Homa API is not Compatible with TCP
1:17:40 Will Homa come to HTTP?
1:18:45 Conclusion
Get every episode summarized
Each time The Backend Engineering Show with Hussein Nasser publishes, we email you a written briefing from the transcript — the topics, who appeared, and any specific claims, with the ad reads skipped.
Email me new episodesFree for 3 shows. No card needed.
Hosts & guests
No transcript yet
This episode has not been transcribed. Request it and it moves to the front of the queue.
More episodes
More from The Backend Engineering Show with Hussein Nasser

Caching is a cop-out
The Backend Engineering Show with Hussein Nasser

How open ai agents "hacked" hugging face
The Backend Engineering Show with Hussein Nasser

How a query optimization gave birth to infinite scroll
The Backend Engineering Show with Hussein Nasser

Postgres is half as fast in Linux 7.0
The Backend Engineering Show with Hussein Nasser