
- Data Comm & Networks Home
- DCN - Overview
- DCN - What is Computer Network
- DCN - Uses of Computer Network
- DCN - Computer Network Types
- DCN - Network LAN Technologies
- DCN - Computer Network Models
- DCN - Computer Network Security
- DCN - Components
- DCN - Connectors
- DCN - Switches
- DCN - Repeaters
- DCN - Gateways
- DCN - Bridges
- DCN - Socket
- DCN - Network Interface Card
- DCN - NIC: Pros and Cons
- DCN - Network Hardware
- DCN - Network Port
- Computer Network Topologies
- DCN - Computer Network Topologies
- DCN - Point-to-point Topology
- DCN - Bus Topology
- DCN - Star Topology
- DCN - Ring Topology
- DCN - Mesh Topology
- DCN - Tree Topology
- DCN - Hybrid Topology
- Physical Layer
- DCN - Physical Layer Introduction
- DCN - Digital Transmission
- DCN - Analog Transmission
- DCN - Transmission media
- DCN - Wireless Transmission
- DCN - Transmission Impairments
- DCN - Multiplexing
- DCN - Network Switching
- Data Link Layer
- DCN - Data Link Layer Introduction
- DCN - Data Link Control & Protocols
- DCN - RMON
- DCN - Token Ring Network
- DCN - Hamming Code
- DCN - Byte Stuffing
- DCN - Channel Allocation
- DCN - MAC Address
- DCN - Cyclic Redundancy Checks
- DCN - Error Control
- DCN - Flow Control
- DCN - Framing
- DCN - Error Detection & Correction
- DCN - Error Correcting Codes
- DCN - Parity Bits
- Network Layer
- DCN - Network Layer Introduction
- DCN - Network Addressing
- DCN - Routing
- DCN - Internetworking
- DCN - Network Layer Protocols
- DCN - Routing Information Protocol
- DCN - Border Gateway Protocol
- DCN - OSPF Protocol
- DCN - Network Address Translation
- DCN - Network Address Translation Types
- Transport Layer
- DCN - Transport Layer Introduction
- DCN - Transmission Control Protocol
- DCN - User Datagram Protocol
- DCN - Congestion Control
- DCN - TCP Service Model
- DCN - TLS Handshake
- DCN - TCP Vs. UDP
- Application Layer
- DCN - Application Layer Introduction
- DCN - Client-Server Model
- DCN - Application Protocols
- DCN - Network Services
- DCN - Virtual Private Network
- DCN - Load Shedding
- DCN - Optimality Principle
- DCN - Service Primitives
- DCN - Services of Network Security
- DCN - Hypertext Transfer Protocol
- DCN - File Transfer Protocol
- DCN - Secure Socket Layer
- Network Protocols
- DCN - ALOHA Protocol
- DCN - Pure ALOHA Protocol
- DCN - Sliding Window Protocol
- DCN - Stop and Wait Protocol
- DCN - Link State Routing
- DCN - Link State Routing Protocol
- Network Algorithms
- DCN - Shortest Path Algorithm
- DCN - Routing Algorithm
- DCN - Leaky Bucket Algorithm
- Wireless Networks
- DCN - Wireless Networks
- DCN - Wireless LANs
- DCN - Wireless LAN & IEEE 802.11
- DCN - IEEE 802.11 Wireless LAN Standards
- DCN - IEEE 802.11 Networks
- Multiplexing
- DCN - Multiplexing & Its Types
- DCN - Time Division Multiplexing
- DCN - Synchronous TDM
- DCN - Asynchronous TDM
- DCN - Synchronous Vs. Asynchronous TDM
- DCN - Frequency Division Multiplexing
- DCN - TDM Vs. FDM
- DCN - Code Division Multiplexing
- DCN - Wavelength Division Multiplexing
- Miscellaneous
- DCN - Shortest Path Routing
- DCN - B-ISDN Reference Model
- DCN - Design Issues For Layers
- DCN - Selective-repeat ARQ
- DCN - Flooding
- DCN - E-Mail Format
- DCN - Cryptography
- DCN - Unicast, Broadcast, & Multicast
- DCN - Network Virtualization
- DCN - Flow Vs. Congestion Control
- DCN - Asynchronous Transfer Mode
- DCN - ATM Networks
- DCN - Synchronous Vs. Asynchronous Transmission
- DCN - Network Attacks
- DCN - WiMax
- DCN - Buffering
- DCN - Authentication
- DCN Useful Resources
- DCN - Quick Guide
- DCN - Useful Resources
Difference between Flow control and Congestion control
Both Flow control and Congestion control are traffic controlling methods in computer networks. Flow control is a technique that allows two stations working at different speeds to communicate with each other. It is a set of measures taken to regulate the amount of data that a sender sends so that a fast sender does not overwhelm a slow receiver.
Congestion occurs in a network when it receives too many packets than its designed capacity. Network congestion occurs in case of traffic overloading. There are mechanisms to control such congestion scenarios in a network.
Go through this article to find out more about Flow Control and Congestion Control and how these mechanisms are different from each other.
What is Flow Control?
Flow control is a system that guarantees a sender's transmission rate is proportional to the receiver's reception capability.
-
In data communications, flow control is used to manage the flow of data/packets between two nodes, primarily when the transmitting device can deliver data quicker than the receiver can digest it.
-
Many different devices are connected to networks of any size, and each device has its data transmission settings. A router, for example, is designed to manage data routing, whereas a PC on the receiving end of that data has significantly fewer sending/receiving capabilities.
-
If the sender begins transferring data quicker than the receiving node's ability, a conflict may arise. Flow control is employed to address this issue. This method controls the data flow between nodes by focusing on both nodes' sending and receiving capabilities.
Xon-Xoff is a flow control protocol that synchronizes the transmitter and receiver. When the receiver's buffer is complete, it sends a transmit-off signal, and when the receiver is ready to retake data, it sends a transmit on the signal. Xon-Xoff uses asynchronous serial connections.
In data link layer, flow control restricts the number of frames the sender can send before it waits for an acknowledgment from the receiver.
Types of Flow Control
Flow control can be broadly classified into two categories
-
Feedback-based Flow Control In these protocols, the sender sends frames after it has received acknowledgments from the user. This is used in the data link layer.
-
Rate-based Flow Control These protocols have built in mechanisms to restrict the rate of transmission of data without requiring acknowledgment from the receiver. This is used in the network layer and the transport layer.
What is Congestion Control?
When a node or a link carries too much data, it causes queuing delays, frame or data packet loss, and blocking new connections, lowering network service quality. Response time slows as network throughput drops in a congested network. When bandwidth is limited, and data traffic exceeds capacity, congestion develops.
Congestion causes choking of the communication medium. When too many packets are displayed in a method of the subnet, the subnet's performance degrades. Hence, a network's communication channel is called congested if packets are traversing the path and experience delays mainly over the path's propagation delay.
Data packet loss due to congestion is mitigated by aggressive network protocol retransmission, which maintains a network congestion condition after reducing the initial data load. This can result in two stable states under the same data traffic load - one to deal with the initial load and the other to keep the network throughput low.
Avoiding congestion collapse in modern networks requires the use of network congestion avoidance techniques as well as congestion control, such as
-
Protocols that use algorithm feedback to reduce data packet throughput to acceptable levels are exponential backoff protocols.
-
Prioritization strategies are used to allow only critical data streams to be transmitted.
-
Appropriate network resource allocation in anticipation of increased data packet throughput requirements.
Congestion Control Algorithms
There are two congestion control algorithms which are as follows
-
Leaky Bucket The leaky bucket algorithm discovers its use in the context of network traffic shaping or rate-limiting. The algorithm allows controlling the rate at which a record is injected into a network and managing burstiness in the data rate.
-
Token Bucket Algorithm It is a control algorithm that indicates when traffic should be sent. This order comes based on the display of tokens in the bucket. The bucket contains tokens. Each of the tokens defines a packet of predetermined size. Tokens in the bucket are deleted for the ability to share a packet.
Difference between Flow Control and Congestion Control
The following table highlights the major differences between Flow Control and Congestion Control.
Key | Flow Control | Congestion Control |
---|---|---|
Definition | Flow Control is a mechanism that controls the traffic in a computer network. Traffic represents the flow of data from the sender to the receiver. | Congestion Control too is a traffic controlling mechanism. |
Layers | Data link and Transport layers handle flow control. | Network and Transport layers handle congestion control. |
Prime Focus | Receiver is prevented from being overwhelmed. | Network is prevented from being congested. |
Responsibility | Only sender is responsible for the traffic. | Transport layer is responsible for the traffic. |
How does it work? | Traffic is prevented by slowing down the sender. | Traffic is prevented by slowing down the transport layer. |
Conclusion
To conclude, both Flow control and Congestion control are traffic controlling methods in computer networks, however flow control mechanisms prevent the receiver nodes from being overloaded with data, whereas congestion control mechanisms work at the network and transport layers to prevent the overall network from being congested.