Files
dofs/docs/network/link.md

1.4 KiB

network/link.h

Link(Simulator *const sim, LinkId id, NetworkNode *a, PortId a_port, NetworkNode *b, PortId b_port, Time latency, double bandwidth_gbps) noexcept

Link::bandwidth_gbps

double bandwidth_gbps() const noexcept

Link::dst_id

NodeId dst_id() const noexcept

Link::dst_port

PortId dst_port() const noexcept

Link::id

LinkId id() const noexcept

Link::next_available

Time next_available(NodeId sender) const noexcept

Link::propagation_latency

Time propagation_latency() const noexcept

Link::reserve

std::optional<Reservation> reserve(Bytes bytes, NodeId sender) noexcept

Link::schedule_delivery_after

void schedule_delivery_after(Packet &pkt, NodeId caller, Time after)

Link::send_pkt

void send_pkt(Packet &pkt, NodeId caller)

Link::serialization_time

Time serialization_time(Bytes bytes) const noexcept

Link::serialization_time

static Time serialization_time(Bytes bytes, double gbps) noexcept

Link::set_status

void set_status(LinkStatus s, Time new_latency = Time(0), double new_bandwidth_gbps = 0.0)

Link::src_id

NodeId src_id() const noexcept

Link::src_port

PortId src_port() const noexcept

Link::status

LinkStatus status() const noexcept

serialization_time

static Time serialization_time(Bytes bytes, double gbps) noexcept;

set_status

void set_status(LinkStatus s, Time new_latency = Time(0), double new_bandwidth_gbps = 0.0);