1 of 7

SlimTCP

Mihai-Drosi Câju ��SupervisorCostin Raiciu

2 of 7

Proposed solution

  • SlimTCP is a TCP/IP stack written from scratch that works on top of DPDK or Unikraft and can be easily ported to other network drivers

3 of 7

Goals of SlimTCP

  • Increased performance
  • Ease of formal verification
  • Throughput comparable to 100Gb/s

4 of 7

  • SlimTCP assumes a communication channel with few lost or out-of-order packets

5 of 7

  • Can be removed:
  • TCP reorder buffers
  • SACKs
  • Fast-retransmission
  • PAWS
  • RTTM
  • Timestamps
  • Still need to be supported:
  • RTO
  • Out-of-order segments
  • Can be removed:
  • TCP reorder buffers
  • SACKs
  • Fast-retransmission
  • PAWS
  • RTTM
  • Timestamps

6 of 7

API

  • POSIX API equivalents for connection and socket management
  • Zero-copy packet-based API for TX/RX
  • Packet-buffer allocation functions

7 of 7

Results

  • Reaches up to 21Gb/s on a local set-up
  • Compared to Linux 16Gb/s on the same set-up