package utcp

  1. Overview
  2. No Docs
An implementation of TCP (Transmission Control Protocol) in OCaml

Install

dune-project
 Dependency

Authors

Maintainers

Sources

utcp-0.0.3.tbz
sha256=bd512cae636929d817d20d8287f7aad44d04d1610437ac46544543ba8bd2807c
sha512=c6b154798644702a86a15fc6d00324d8f345ee2b9ea60142f1135fbe6936fd1581984dc8387641bace030abd168e1f29677f50e954f2e272a48845acc01726f7

Description

µTCP is an implementation of the Transmission Control Protocol (RFC 793) in OCaml. TCP is widely used on the Internet today.

This implementation is based on the research project Network Semantics (https://www.cl.cam.ac.uk/~pes20/Netsem/) which developed a rigorous test oracle specification and validation for TCP/IP and the Sockets API (also see the JACM paper http://www.cl.cam.ac.uk/~pes20/Netsem/paper3.pdf) in HOL4. The implementation does not adhere to the specification, since some features of TCP that are rarely used are not implemented (such as the urgent flag and urgent pointers).

The target of this opam package is the MirageOS (https://mirageos.org) unikernel operating system.

Published: 30 Apr 2026

Dependencies (17)

  1. tcpip >= "9.0.0"
  2. mirage-mtime >= "5.0.0"
  3. mirage-sleep >= "4.0.0"
  4. lwt >= "5.4.2"
  5. base64 >= "3.5.1"
  6. mirage-crypto-rng >= "1.2.0"
  7. metrics >= "0.4.1"
  8. mtime >= "1.4.0"
  9. randomconv >= "0.2.0"
  10. logs >= "0.7.0"
  11. ipaddr-cstruct >= "5.2.0"
  12. ipaddr >= "5.2.0"
  13. fmt >= "0.8.7"
  14. duration >= "0.2.0"
  15. cstruct >= "6.0.1"
  16. dune >= "2.7.0"
  17. ocaml >= "4.13.0"

Dev Dependencies (11)

  1. pcap-format >= "0.6.0" & dev
  2. mirage-unix >= "5.0.0" & dev
  3. arp >= "4.0.0" & dev
  4. ethernet >= "2.2.1" & dev
  5. mirage-net-unix >= "2.8.0" & dev
  6. cmdliner >= "1.1.0" & dev
  7. bechamel-js with-test
  8. bechamel with-test
  9. ohex with-test
  10. crowbar >= "0.2.1" & with-test
  11. alcotest >= "1.5.0" & with-test

Conflicts

None