View on GitHub


Harsh Kapadia's Computer Networking knowledge base.


(Back to Home)

Table of Contents


The Data Center Environment


A typical Data Center cluster

Traffic Properties

Traffic Control Challenges

Network Requirements

A Data Center environment should have:

Protocol Requirements

Some of the important features a Data Center transport protocol should have:

Message vs Packet

Problems with TCP

The following features of TCP cause it problems in the Data Center:

Sender vs Receiver

A peer can be a sender or a receiver and can have multiple RPCs.

Homa Packet Types


    • Only for performance measurements, testing and debugging.
    • Only for unit testing.

Homa Features

Overview of the Homa protocol

Homa Design Principles

Homa Linux Working

Working of Homa in the Linux kernel

Streaming vs Messages

NOTE: Message vs Packet

The Problem with TCP Streaming

How Messages Help

Homa API


  • These are the functions that implement the Homa API visible to applications. They are intended to be a part of the user-level run-time library.
  • Source: homa_api.c file

Homa Message Sequence Scenarios

NOTE: Sender vs Receiver

Homa message sequence diagram

Homa message sequence diagram

Homa message sequence diagram

Homa message sequence diagram