advance repeat request (arq)

13

Upload: muhammad-irtiza

Post on 15-Jul-2015

617 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Advance Repeat reQuest (ARQ)
Page 2: Advance Repeat reQuest (ARQ)

Automatic Repeat reQuest

Page 3: Advance Repeat reQuest (ARQ)

• Automatic Repeat reQuest (ARQ)

• A Protocol to control error on unreliable data transmission lines

• Uses timeouts & ACKs (or NAKs) for each data packet

• In case timeout expires before sender receives an ACK from the receiver, sender resends the packet

• Receiver will not send an ACK if – Data packet is lost in transmission

– An error in the packet is detected

• Three Types of ARQ

ACKs are messages sent by a receiver to acknowledge that it has correctly received a data packet. Negative ACKs or NAKs are their counterpart.

When Data is to be transmitted it is broken down into like data structures also called data packets. They are reassembled at destination.

Page 4: Advance Repeat reQuest (ARQ)

CRC stands for cyclic redundancy code and is an error-detecting code attached here with both the packet and the ACK

The header is required as a sequence number. When an ACK is transmitted, it tells the sender to which data packet is next in sequencePacket

SequenceInformation frames

Control frames

Error-free Packet Sequence

CRC

Information packet

Header CRCHeader

Transmitter Receiver

0 11

Page 5: Advance Repeat reQuest (ARQ)

Stop-And-Wait ARQ

Page 6: Advance Repeat reQuest (ARQ)

• In this method the transmitter and receiver work on delivering one frame at a time through an alteration of actions.

Here B receives error free F4, but its ACK is lost in transmission. After timeout, A resends F4, B recognizes it has received a double, deletes one and resends the ACK for F4

F0 process was successful. F1 is sent. There is an error so B sends no ACK. After Timeout, A resends F1. This time ACK is received so A sends F2.

TimeA

B

F0

ACK1

F1 F1 F2

ACK2 ACK3

TimeA

B

F3

ACK4

F4 F4 F5

ACK5 ACK6ACK5

Timeout

Timeout

error

Page 7: Advance Repeat reQuest (ARQ)

Go-Back-N ARQ

Page 8: Advance Repeat reQuest (ARQ)

• Here, the transmitter continues sending frames unlike ‘stopping and waiting’ for the ACK to arrive and then proceed. Thus the transmission line is kept busy and more data is transferred if line remains reliable

• Called a sliding window protocol as with each arriving error free frame the receive window slides forward.

When the number of outstanding frames crosses N (Here N=3) the sender is forced to ‘go back N’ frames. Thus here it will retransmit frames from F2 onwards.

A sends F0. Without waiting for an ACK, it sends F1 and then F2. F2 encounters an error. B sends no ACK and then continues to ignore later frames

TimeA

B

F0A

CK

1F1 F2 F3 F4 F2 F3 F4 F5A

CK

2

AC

K3

AC

K4

Three Frames Outstanding;Go Back 3

Out-of-sequence frames

error

Page 9: Advance Repeat reQuest (ARQ)

Compare and Contrast

Stop-and-Wait ARQ

• Error causes loss of transmission time equal to timeout period.

• Utilization and thus transfer speed is low even with no error as sender waits for ACK before sending new F.

Go-Back-N ARQ

• Error causes loss in transmission time equal to N frames.

• When no error occurs, utilization is nearly 100%. Transfer speeds are thus high on relatively reliable connections.

Page 10: Advance Repeat reQuest (ARQ)

Selective Repeat ARQ

Page 11: Advance Repeat reQuest (ARQ)

• Unlike Go-Back-N, here a NAK is sent by the receiver if sees a skipped frame due to error. Subsequent frames are not ignored and the sender selectively repeats transmission of only the frame that encountered error.

B continues to receive subsequent frames but it sends an ACK for 2 until F2 arrives. It then sends an ACK for the next frame. Here it is for F6.

A sends F0. Without waiting for an ACK, it sends F1 and then F2. F2 encounters an error. B sends a NAK for F2 when it receives F3. F3 is saved at B

TimeA

B

F0A

CK

1F1 F2 F2 F6 F7A

CK

2

AC

K6

error

F3 F4 F5

AC

K2

NA

K2

AC

K2

Page 12: Advance Repeat reQuest (ARQ)

Compare and Contrast

Go-Back-N ARQ

• Error causes loss in transmission time equal to N frames.

• When no error occurs, utilization is nearly 100%. Transfer speeds are thus high on relatively reliable connections.

Selective Repeat ARQ

• Error causes loss in transmission time equal to the time taken to begin transmitting a frame.

• When no error occurs, utilization is nearly 100%. Transfer speeds are thus high.

Page 13: Advance Repeat reQuest (ARQ)

Automatic Repeat reQuest

Advantages

• Provides a high throughput in good signal conditions.

• Asking the sender to tosend packets again instead of correcting them results in high data reliability.

Disadvantages

• Requires a reverse channel for transmission of ACKs/NAKs

• Poor signal conditions result in low transfer speeds as errors will cause delay variations due to retransmitted data.