Computer Networks
CN Part-1
- What is a Computer Network?
- Goals and Applications of Computer Networking
- Computer Network Components
- Types of Computer Networks
- Network Topology
- Difference between Client Server and Peer to Peer Network
- Layered Architecture in Computer Networks
- Protocol Hierarchy in Computer Networks
- Interfaces and Services in Computer Networks
- Connection Oriented and Connectionless Services
- Service Primitives
- OSI Model
- TCP/IP Model
- Difference between OSI Model and TCP/IP Model
- Encapsulation and Decapsulation in Computer Networks
- Queueing Models in Computer Network
CN Part-2
Flow Control in Data Link Layer
Flow Control kya hota hai?
Flow Control ek technique hai jiska use computer networks mein hota hai taaki sender zyada data na bhej de jo receiver handle na kar paaye.
Socho aap ek glass mein paani daal rahe ho.
Dheere-dheere daalogey to glass easily fill ho jaayega.
Bahut fast daaloge to paani gir jaayega — overflow ho jaayega.
Waise hi, agar computer bahut fast data bheje aur receiver usse process na kar paaye, to data loss ho sakta hai.
Flow Control isi problem ko solve karta hai.
Flow Control kahan hota hai?
Flow control mainly 2 layers mein hota hai:
-
Data Link Layer (Layer 2) – adjacent devices ke beech
-
Transport Layer (Layer 4) – end-to-end systems ke beech
Abhi hum Data Link Layer ke Flow Control ke baare mein baat kar rahe hain.
Flow Control kyu zaroori hai?
Sender aur Receiver ke Speed alag ho sakte hain:
-
Powerful sender (jaise ek fast computer) data jaldi bhej sakta hai
-
Receiver (jaise ek slow device) us data ko process nahi kar paata
Receiver ke paas Limited Buffer hota hai:
-
Receiver ke paas buffer (temporary memory) hota hai
-
Agar buffer bhar gaya aur sender ne aur data bheja to data lost ho jaayega
Flow Control Techniques in Data Link Layer
Data Link Layer mein 2 main flow control methods use kiye jaate hain:
1. Stop-and-Wait Protocol
Kaise kaam karta hai:
-
Sender ek baar mein sirf 1 frame bhejta hai
-
Uske baad ACK (Acknowledgment) ka wait karta hai
-
Jab ACK milta hai, tab next frame bhejta hai
Example:
Sender → [Frame 1] → Receiver
Sender ← [ACK 1] ← Receiver
Sender → [Frame 2] → Receiver
Sender ← [ACK 2] ← Receiver
Fayde:
-
Bahut simple hai
-
Buffer overflow hone ka chance nahi
Nuksaan:
-
Bahut slow hai
-
Network bandwidth waste hoti hai agar network fast ho
2. Sliding Window Protocol
Kaise kaam karta hai:
-
Sender ek baar mein multiple frames bhej sakta hai (jitna window size ho)
-
Har frame ke saath ek sequence number hota hai
-
Receiver jab frame receive karta hai, to uska ACK bhejta hai
-
ACK milne par window aage slide hota hai
Window kya hota hai?
-
Window ek fixed number of frames ka group hota hai jo sender ek baar mein bhej sakta hai
Example (Window size = 4):
Sender → [Frame 1] → Receiver
Sender → [Frame 2] → Receiver
Sender → [Frame 3] → Receiver
Sender → [Frame 4] → Receiver
Sender ← [ACK 1,2,3,4] ← Receiver
Fayde:
-
Stop-and-Wait se zyada fast
-
Bandwidth ka achha use karta hai
Nuksaan:
-
Implement karna thoda complex hota hai
-
Sequence numbers aur buffer ka dhyan rakhna padta hai
Diagram – Stop-and-Wait vs Sliding Window
Stop-and-Wait:
Sender Receiver
| ---------> Frame 1
| <--------- ACK 1
| ---------> Frame 2
| <--------- ACK 2
Sliding Window (Window Size = 3):
Sender Receiver
| ---------> Frame 1
| ---------> Frame 2
| ---------> Frame 3
| <--------- ACK 1
| <--------- ACK 2
| <--------- ACK 3
Important Terms
| Term | Meaning |
|---|---|
| ACK | Acknowledgment (receiver ne frame receive kar liya) |
| Buffer | Temporary memory to hold frames |
| Window | Number of frames jo ek baar mein bheje ja sakte hain |
| Overflow | Jab receiver ka buffer full ho jaaye |
| Sequence No. | Har frame ka number (order maintain karne ke liye) |
Comparison Table
| Feature | Stop-and-Wait | Sliding Window |
|---|---|---|
| Frames at a time | Sirf 1 | Multiple (window size ke hisaab se) |
| Speed | Slow | Fast |
| Complexity | Simple | Complex |
| Bandwidth Use | Kam | Zyada efficient |
| Buffer Overflow | Nahi hota | Manage karna padta hai |
Real-Life Analogy
Courier Example:
Stop-and-Wait:
Aap ek parcel bhejte ho, jab tak uska confirmation nahi milta, doosra nahi bhejte.
Sliding Window:
Aap ek saath 4-5 parcels bhejte ho, jab confirm ho jaata hai tab agla batch bhejte ho.
Flow Control zaroori kyu hai?
-
Receiver ko overload hone se bachaata hai
-
Sender aur receiver ko synchronization mein rakhta hai
-
Data loss prevent karta hai
-
Network ko efficient banata hai
Conclusion
Flow control ek important concept hai jo ensure karta hai ki data proper speed se transfer ho, aur receiver usse easily handle kar paaye.
Dono methods — Stop-and-Wait aur Sliding Window — apne-apne jagah useful hain:
| Agar aapko simplicity chahiye → Stop-and-Wait
| Agar aapko speed aur efficiency chahiye → Sliding Window |