fixed bug in attaching nics to hosts, changed documentation format and generator (buggy but usable)

This commit is contained in:
2025-09-14 00:40:53 -04:00
parent 9ab64e18a4
commit c4141cd683
40 changed files with 5223 additions and 577 deletions

View File

@@ -1,18 +1,21 @@
# network/nic/congestion_control.h
## class CongestionControl — public interface
### `explicit CongestionControl(Bytes init_cwnd, Bytes max_cwnd) noexcept;`
### `virtual ~CongestionControl() = default;`
### `Bytes cwnd() const noexcept { ... }`
### `Bytes cwnd_max() const noexcept { ... }`
## class DCQCN — public interface
### `explicit DCQCN(Bytes init_cwnd, Bytes max_cwnd) noexcept;`
### `virtual void update(const Packet& pkt, Time rtt) noexcept override;`
## class NSCC — public interface
### `explicit NSCC(Bytes init_cwnd, Bytes max_cwnd) noexcept;`
### `virtual void update(const Packet& pkt, Time rtt) noexcept override;`
## `CongestionControl::CongestionControl`
`explicit CongestionControl(Bytes init_cwnd, Bytes max_cwnd) noexcept`
## `CongestionControl::cwnd`
`Bytes cwnd() const noexcept`
## `CongestionControl::cwnd_max`
`Bytes cwnd_max() const noexcept`
## `CongestionControl::is_allowed_to_send`
`virtual bool is_allowed_to_send(Bytes bytes_outstanding, Bytes next_bytes) const noexcept`
## `CongestionControl::update`
`virtual void update(const Packet &pkt, Time rtt) noexcept = 0`
## `CongestionControl::~CongestionControl`
`virtual ~CongestionControl() = default`
## `DCQCN::DCQCN`
`explicit DCQCN(Bytes init_cwnd, Bytes max_cwnd) noexcept`
## `DCQCN::update`
`virtual void update(const Packet &pkt, Time rtt) noexcept override`
## `NSCC::NSCC`
`explicit NSCC(Bytes init_cwnd, Bytes max_cwnd) noexcept`
## `NSCC::update`
`virtual void update(const Packet &pkt, Time rtt) noexcept override`

View File

@@ -1,12 +1,15 @@
# network/nic/load_balance.h
## class LoadBalance — public interface
### `explicit LoadBalance(Rng *const rng) noexcept : _rng(rng) { ... }`
### `virtual ~LoadBalance() = default;`
## class LBRandomPacketSpraying — public interface
### `explicit LBRandomPacketSpraying(Rng *const rng) noexcept : LoadBalance(rng) { ... }`
### `virtual void update(const Packet& pkt) noexcept override;`
### `virtual uint16_t get_entropy(const Packet& context) noexcept override;`
## `LBRandomPacketSpraying::LBRandomPacketSpraying`
`explicit LBRandomPacketSpraying(Rng *const rng) noexcept : LoadBalance(rng)`
## `LBRandomPacketSpraying::get_entropy`
`virtual uint16_t get_entropy(const Packet &context) noexcept override`
## `LBRandomPacketSpraying::update`
`virtual void update(const Packet &pkt) noexcept override`
## `LoadBalance::LoadBalance`
`explicit LoadBalance(Rng *const rng) noexcept : _rng(rng)`
## `LoadBalance::get_entropy`
`virtual uint16_t get_entropy(const Packet &context) noexcept = 0`
## `LoadBalance::update`
`virtual void update(const Packet &pkt) noexcept = 0`
## `LoadBalance::~LoadBalance`
`virtual ~LoadBalance() = default`

View File

@@ -0,0 +1,2 @@
# network/nic/nic_telemetry.h
_No public API symbols found in this header._