@Deprecated
public abstract class Retransmitter
extends java.lang.Object
add()
method adds the sequence numbers of messages to be retransmitted. The
remove()
method removes a sequence number again, cancelling retransmission requests for it.
Whenever a message needs to be retransmitted, the RetransmitCommand.retransmit()
method is called.
It can be used e.g. by an ack-based scheme (e.g. AckSenderWindow) to retransmit a message to the receiver, or
by a nak-based scheme to send a retransmission request to the sender of the missing message.Modifier and Type | Class and Description |
---|---|
static interface |
Retransmitter.RetransmitCommand
Deprecated.
Retransmit command (see Gamma et al.) used to retrieve missing messages
|
protected class |
Retransmitter.Task
Deprecated.
|
Modifier and Type | Field and Description |
---|---|
protected Retransmitter.RetransmitCommand |
cmd
Deprecated.
|
protected static Log |
log
Deprecated.
|
protected Interval |
retransmit_timeouts
Deprecated.
Default retransmit intervals (ms) - exponential approx.
|
protected Address |
sender
Deprecated.
|
protected TimeScheduler |
timer
Deprecated.
|
protected long |
xmit_stagger_timeout
Deprecated.
|
Constructor and Description |
---|
Retransmitter(Address sender,
Retransmitter.RetransmitCommand cmd,
TimeScheduler sched)
Deprecated.
Create a new Retransmitter associated with the given sender address
|
Modifier and Type | Method and Description |
---|---|
abstract void |
add(long first_seqno,
long last_seqno)
Deprecated.
Add messages from
first_seqno to last_seqno for retransmission |
long |
getXmitStaggerTimeout()
Deprecated.
|
abstract void |
remove(long seqno)
Deprecated.
Remove the given sequence number from retransmission
|
abstract void |
reset()
Deprecated.
Reset the retransmitter: clear all msgs and cancel all the respective tasks
|
void |
setRetransmitTimeouts(Interval interval)
Deprecated.
|
void |
setXmitStaggerTimeout(long xmit_stagger_timeout)
Deprecated.
|
abstract int |
size()
Deprecated.
|
protected Interval retransmit_timeouts
protected final Address sender
protected final Retransmitter.RetransmitCommand cmd
protected final TimeScheduler timer
protected long xmit_stagger_timeout
protected static final Log log
public Retransmitter(Address sender, Retransmitter.RetransmitCommand cmd, TimeScheduler sched)
sender
- the address from which retransmissions are expected or to which retransmissions are sentcmd
- the retransmission callback referencesched
- retransmissions schedulerpublic void setRetransmitTimeouts(Interval interval)
public long getXmitStaggerTimeout()
public void setXmitStaggerTimeout(long xmit_stagger_timeout)
public abstract void add(long first_seqno, long last_seqno)
first_seqno
to last_seqno
for retransmissionpublic abstract void remove(long seqno)
public abstract void reset()
public abstract int size()
Copyright © 1998-2020 Red Hat. All Rights Reserved.