For working professionals
For fresh graduates
More
Learn Cyber Security Tutorial …
1. Cyber Security
2. Difference between Circuit Switching and Packet Switching
3. Difference Between Hub and Switch
4. Difference between IPv4 and IPv6
5. Distance Vector Routing (DVR) Protocol
6. Go-Back-N ARQ
7. What is Google Dorking
8. How Does The Internet Work
9. Identity And Access Management (IAM)
10. OSI Model
11. Selective Repeat ARQ
Now Reading
12. Sliding Window Protocol
13. Two Factor Authentication
14. Digital Signatures and Certificates
15. What is VPN and How It Works?
16. What is Firewall
17. What Is Network Topology
18. Subnetting in Computer Networks
19. Intrusion Prevention Systems
20. Network Segmentation
21. Endpoint Detection and Response
22. Security Information and Event Management (SIEM)
23. Data Loss Prevention (DLP)
24. Cross Site Scripting (XSS)
25. Software Bill of Materials(SBOM)
26. ESG Frameworks
There are many challenges in data transmission and unreliable channels, error correction and reliable delivery are crucial concerns for professionals in my domain. According to me and many other individuals in my field, the Selective Repeat ARQ (Automatic Repeat Request) protocol stands out as an efficient solution.
How? It gracefully addresses these challenges while offering significant advantages over simpler protocols like Stop-and-Wait ARQ.
I will dive deep into the Selective Repeat ARQ protocol in this tutorial and we will explore its implementation details. I will also highlight the benefits it brings to the world of computer networks and discuss some real-world applications.
I've been working with network protocols for years, and I can confidently say that Selective Repeat ARQ is a game-changer when reliability is non-negotiable. Its ability to handle lost or corrupted packets efficiently while optimizing data flow is what makes it stand out from the crowd.
Imagine you're sending an important document over a spotty internet connection. Packets of data get lost like stray puzzle pieces, preventing you from reconstructing the whole picture. That's where error correction protocols and reliable data delivery come into play. The Selective Repeat ARQ protocol is one of the most efficient solutions to this problem, ensuring your document arrives intact, no matter what disruptions occur during transmission.
I've always found that breaking down complex protocols into their core concepts makes them much easier to grasp. Here's a breakdown of how Selective Repeat ARQ works:
Consider a scenario where the sender has a window size of 4:
Expert Tip: The optimal Selective Repeat ARQ window size is a careful balance between throughput and buffer requirements. Larger windows can increase potential throughput (think: sending more packets at once), but this also requires more space to store packets at the receiver.
You can enroll in the Master of Science in Computer Science program (with cybersecurity specialization) by upGrad and Liverpool John Moores University to learn all about network security and network engineering.
Here are the differences between Selective Repeat ARQ against other ARQ protocols and some other modern approaches:
In Stop-and-Wait, the sender must pause after transmitting each packet and wait for an ACK before sending the next one. While simple, this leads to significant idle time on channels with long delays, making Selective Repeat ARQ's pipelining approach much more efficient.
While Go-Back-N improves on Stop-and-Wait by allowing multiple packets in flight, it suffers when individual packets are lost. In this case, all packets from the lost one onward need to be retransmitted, even if some were received correctly. This is where Selective Repeat ARQ's individual ACKs make a substantial difference.
In extremely unreliable channels with high packet loss rates, traditional ARQ protocols like Selective Repeat can struggle due to a barrage of retransmission requests. Each lost segment triggers more transmissions, potentially congesting the network further.
Fountain codes take a radically different approach. The sender continuously generates a stream of encoded packets from the original data. The goal is for the receiver to collect enough distinct droplets to reconstruct the original data.
Hybrid ARQ schemes strategically merge traditional ARQ with Forward Error Correction (FEC). FEC adds redundant information to the data, calculated in a way that allows the receiver to proactively correct a limited number of errors within a block of data, even without retransmissions.
ARQ is still used when the number of errors exceeds the FEC's capability. However, the FEC reduces the reliance on retransmissions. Hybrid ARQ systems can be tuned based on channel conditions. If the channel is relatively good, favor FEC for quick recovery. If the channel degrades, rely more heavily on ARQ's retransmission mechanism.
In traditional networks, intermediate nodes (like routers) simply forward packets along. With network coding, these nodes can intelligently mix and re-encode packets they receive before forwarding them. If one path between sender and receiver is disrupted, innovative combinations along other paths can still potentially deliver the information.
Network coding can sometimes maximize the use of network capacity in complex multi-path scenarios. However, network coding brings added complexity to routing and decoding processes. Its benefits are most pronounced in specific network scenarios.
Here are the benefits of using the Selective Repeat protocol:
Here are some real-world Selective Repeat ARQ examples and use cases of the Selective Repeat ARQ protocol:
Let's introduce some mathematical models to quantify Selective Repeat ARQ performance:
Under some simplifying assumptions, we can derive a closed-form expression for the throughput of Selective Repeat ARQ. Let's define the following variables:
W: Window size
RTT: Round-trip time
BER: Bit Error Rate
T: The time it takes to transmit the payload of a single packet and receive the ACK (depends on packet size and data rate)
A simplified formula for throughput (bits per second) might look like this:
Throughput = (W / (RTT + W * T * BER)) * Payload Size
This model assumes:
Using this formula, we can plot throughput vs. window size for different BER values. Typical graphs would demonstrate:
Implementation notes: These plots help visualize how protocol parameters should be tuned based on channel conditions. For example:
Selective Repeat ARQ's core concepts are robust, but successful implementations require fine-tuning the parameters to match the specific characteristics of the communications channel. In complex network stacks, Selective Repeat ARQ often interacts with other error correction and retransmission mechanisms at different layers. Proper coordination is crucial in creating a reliable end-to-end solution.
You can check out upGrad’s Advanced Certificate Program in Cyber Security to learn everything about network security, network engineering, etc. as well as acquire all the skills needed to become a cyber security expert.
What is the selective rejection of ARQ in error control?
Selective Reject ARQ is a variation where the receiver only requests retransmission of the specific packet(s) that were received with errors, instead of retransmitting a whole group of packets.
What is the efficiency of Selective Repeat ARQ?
Selective Repeat ARQ is generally more efficient than Stop-and-Wait or Go-Back-N ARQ, especially on channels with long delays or where error rates are relatively low but not negligible.
How do you calculate window size in Selective Repeat ARQ?
The ideal window size in Selective Repeat ARQ depends on channel characteristics like round-trip time (RTT), bit error rate (BER), and bandwidth. There's no single formula, but simulations or simplified throughput models can help determine a suitable range.
What is Selective Repeat ARQ data flow control?
Selective Repeat ARQ's sliding windows inherently provide flow control, preventing the sender from overwhelming the receiver and adapting the sending rate indirectly based on acknowledgments or timeouts.
What is the formula for selective repeat utilization?
Utilization refers to the percentage of time the channel is used for transmitting useful data. A basic formula for Selective Repeat ARQ's utilization would be:
What protocols are FEC and ARQ?
FEC (Forward Error Correction) and ARQ (Automatic Repeat Request) are not single protocols but error control strategies. Protocols like TCP or those used in cellular networks often combine them as Hybrid ARQ.
What are the three types of ARQ techniques?
The three main types of ARQ techniques are:
What are the advantages of Selective Repeat ARQ?
What is the disadvantage of Selective Repeat ARQ?
Selective Repeat ARQ is slightly more complex to implement than Stop-and-Wait ARQ, as both sender and receiver need to manage buffers for out-of-order packets.
What is the maximum window size in selective repeat?
Theoretically, there's no hard limit, but the sequence number field size dictates the maximum. Practically, the window size is tuned based on channel conditions to avoid excessive buffering requirements.
Author
Talk to our experts. We are available 7 days a week, 9 AM to 12 AM (midnight)
Indian Nationals
1800 210 2020
Foreign Nationals
+918045604032
1.The above statistics depend on various factors and individual results may vary. Past performance is no guarantee of future results.
2.The student assumes full responsibility for all expenses associated with visas, travel, & related costs. upGrad does not provide any a.