-
Notifications
You must be signed in to change notification settings - Fork 81
LinkUnqueue
LinkUnqueue — Click element; link emulator
LinkUnqueue(LATENCY, BANDWIDTH)
Ports: 1 input, 1 output
Processing: pull inputs, push outputs
Pulls packets from the single input port, then delays them so as to emulate a serial link with latency LATENCY (microsecond precision) and bandwidth BANDWIDTH (such as "384kbps"). Thus, every packet is delayed at least by LATENCY, and additionally delayed by its packet size and BANDWIDTH, and by any packets ahead of it in the virtual link. Packets are pushed out the single output port when their time comes. If BANDWITH is 0, only the LATENCY will introduce some delay.
LinkUnqueue listens for upstream notification, such as that available from Queue.
LinkUnqueue stores packets that are in transit over the virtual link. It doesn't store any other packets, however; it doesn't pull from its input unless there is room on the link. To emulate a link fed by a packet queue, use a "Queue -> LinkUnqueue" combination.
LinkUnqueue uses its input packets' "extra length" annotations, destroys their "next packet" annotations, and updates their timestamp annotations.
- latency (read-only) — The LATENCY argument.
- bandwidth (read-only) — The BANDWIDTH argument.
- size (read-only) — The number of packets currently in, or partially in, the emulated link.
- reset (write-only) — When written, drops all packets in, or partially in, the emulated link.
DelayUnqueue, Queue, Unqueue, RatedUnqueue, BandwidthRatedUnqueue, DelayShaper, SetTimestamp
Generated by click-elem2man from ../elements/standard/linkunqueue.hh:11
on 2018/10/03.