-
Notifications
You must be signed in to change notification settings - Fork 81
ACKRetrySender2
ACKRetrySender2 — Click element; Resend packets until a positive acknowledgement is received.
ACKRetrySender2(KEYWORDS)
Ports: any number of inputs, any number of outputs
This element (and ACKResponder2) is essentially the same as ACKRetrySender, except it encapsulates the data packets with a mini-header so that link-layer broadcast packets can be used to avoid link-layer retransmissions (as in 802.11).
Input 0 should be packets with a destination IP address annotation set. Input 1 should be acknowledgements from an ACKResponder2. When a packet is pulled in on input 0, it is encapsulated with a Retry Header, pushed on output 0, and cached until a positive acknowledgement (ACK) is received. If no ACK is received before the resend timer expires, the packet is resent. If the packet has been resent too many times, it is pushed to output 1. If output 1 is not connected, it is dropped.
Output 0 should pass through an EtherEncap which puts encapsulated the packet with this node's source ether address, the broadcast ether dest, and the ACKRetry data ethertype (typically 0x7ffb).
Keyword arguments are:
- IP — This node's IP address. Required argument.
- MAX_TRIES — Unsigned integer, > 0. Send the packet up to this many times before giving up. Default is 16. This includes the initial transmission.
- TIMEOUT — Unsigned integer, > 0. Milliseconds. Wait this long before resending the packet. Default is 10.
- HISTORY_SZ — Unsigned integer. Number of most recent packets for which to remember retry data. Defaults to 500.
- VERBOSE — Boolean. Be noisy. True by default.
- summary (read-only) — Print summary of packet retry statistics
- history (read-only) — Print packet retry history.
- clear (write-only) — Clear out packet retry history.
- reset (write-only) — Reset packet retry statistics.
ACKResponder2, ACKRetrySender, ACKResponder, EtherEncap
Generated by click-elem2man from ../elements/grid/ackretrysender2.hh:12
on 2018/10/03.