# network/nic/load_balance.h
## `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`