Everything2
Near Matches
Ignore Exact
Full Text
Everything2

Selective retransmission

created by alisdair

(idea) by alisdair (1.1 y) (print)   ?   (I like it!) Wed Mar 12 2003 at 12:27:46

Selective retransmission (occasionally called "selective repeat") is an ARQ protocol, used to request retransmission of lost or corrupt packets in a communications network.

Protocol Operation

As the most complicated of the three ARQ protocols, selective retransmission requires more resources to implement than either stop and wait or go-back N. However, selective retransmission is more bandwidth efficient than go-back N, and as a sliding window protocol, it is more delay efficient than stop and wait. Operation is similar to go-back N: several sequence numbered packets are normally in flow at any given time, and retransmissions are requested by explicit or implicit negative acknowlegements. The difference is that this protocol only resends the requested packets, and any received successfully since need not be retransmitted.

Selecting Your Retransmissions

Clearly, there must be some way of determining which packets require retransmission. The most straightforward way to do this is to wait for a numbered negative acknowledgement -- either explicit, from the receiver, or implicit, from a timer -- and resend the packet indicated. This works, but if several packets are corrupted in a row, as can occur quite frequently on a lossy link, equally many acknowledgements need to be sent. Especially on high-latency links, this is quite inefficient.

One common way around this is to use a bitmap representing the receive window, with missing or corrupted packets indicated as binary ones. This is known as a selective ACK or SACK bitmap, and is used in protocols such as TCP (with options described in RFC 2018) and GPRS LLC. Obviously, a large receive window will require a large bitmap to be sent in the SACK packet; in the case where only one packet requires retransmission, it may be more efficient to send a single numbered NAK.

Even without a SACK bitmap, selective retransmission is very bandwidth efficient. Sending multiple small acknowledgement packets is far better than sending multiple data packets.

References:

"RFC 2018: TCP Selective Acknowledgement Options", Mathis/Mahdavi/Floyd/Romanow, Sun Microsystems, October 1996


printable version
chaos

Go-back N ARQ Golden Smog Transmission Control Protocol / Internet Protocol
sack scold Transmission Control Protocol RFC 2324
I'm trippin' my nut sack into a frenzy of dik play TCP GPRS ACK
bitmap Timer satellite lossy
NAK bandwidth Stop and wait Network
Protocol RTCP
Y'know, if you log in, you can write something here, or contact authors directly on the site. Create a New User if you don't already have an account.
  Epicenter
Login
Password

password reminder
register

Everything2 Help

Cool Staff Picks
Just another sprinkling of indeterminacy
Dover test
Tom Waits
The Wild Bunch
She sketched on paper napkins
The terrible beauty of an industrial landscape at dawn
A New Student and Her Father
How many melodies are there in the universe?
pro-anorexia
surface area to volume ratio
woodchipper
Wilhelm Scream
Beveridge Report
Coase Theorem
New Writeups
jessicaj
July 26, 2008(dream)
Berek
ABBA(person)
devolution
k-hole(place)
Nadine_2
The Sound Of Madness(review)
Twin Eclipse
Conversations with God: An Uncommon Dialogue(idea)
SwimmingMonkey
Conversations with Fo Fo- the Loneliest dog in Purgatory(fiction)
locke baron
lynx(thing)
Simulacron3
Reality, Dimensions and the Natural Ontology(essay)
SubSane
Making Love to a 9-Foot Woman(person)
Ouzo
Thoughts(idea)
antigravpussy
I fall silent, listening. The breadcrumbs are talking about us(person)
calgon
Buffalo Bill by the pool(poetry)
gate
Anarchy is Order(idea)
ushdfgakjasgh
Scribeling(thing)
XWiz
Trism(review)
Everything 2 is brought to you by the letter C and The Everything Development Company