Gateway Flow Control Coordination TCP IP Networks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flow control coordination between networks using different protocols, such as TCP/IP and Fibre Channel, is challenging due to congestion issues, where packets are dropped at the gateway if the sending network produces packets faster than the receiving network can consume them, leading to inefficient packet forwarding.
Innovation Solution
A gateway is configured to determine the flow conditions of one network and modulate the flow conditions of another network by adjusting the round trip time (RTT) or TCP window size based on buffer occupancy, ensuring packets are only forwarded when space is available in the transmission buffer, thereby preventing packet drops.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the sending network produces packets at a high rate, then the throughput of the network is improved, but packets are dropped at the gateway when the transmission buffer is full
Solution Approach 1:
The gateway implements feedback by sending TCP acknowledgments only when packets are successfully transferred to the transmission buffer. This feedback mechanism informs the sending network about the actual buffer status, causing the sender to adjust its transmission rate dynamically. When the buffer is full, ACKs are delayed, signaling the sender to slow down, thereby preventing packet drops while maintaining high throughput when buffer space is available.
Solution Approach 2:
The gateway checks buffer occupancy before forwarding packets to the transmission buffer. This preliminary action ensures that packets are only accepted when space is available, preventing buffer overflow conditions before they occur. The gateway proactively manages buffer space by evaluating occupancy status in advance of packet forwarding decisions.
2Speed
If the gateway forwards packets quickly without checking buffer occupancy, then the data transmission speed is improved, but packets are lost when the transmission buffer is full
Solution Approach 1:
The gateway performs a preliminary check of transmission buffer occupancy status before forwarding packets. This advance checking ensures that packets are only forwarded when space is available, preventing packet loss. The buffer status evaluation occurs proactively before the packet forwarding action, maintaining both speed and reliability.
Solution Approach 2:
The gateway provides feedback to the sending network about transmission buffer status through selective acknowledgment. This feedback loop enables the sender to adjust its transmission speed dynamically based on actual buffer conditions, maintaining high data transmission speed when buffer space is available while preventing packet loss when the buffer is full.
3Reliability
If the gateway implements buffer occupancy checking and selective ACK sending, then packet drops are prevented, but the complexity of the gateway increases
Solution Approach 1:
The gateway leverages the existing TCP acknowledgment mechanism already present in the TCP/IP protocol stack. By selectively sending or delaying ACKs based on buffer status, the gateway uses the protocol's built-in feedback infrastructure rather than implementing a separate complex control system. This approach prevents packet drops while minimizing additional gateway complexity by repurposing existing protocol functions.
Solution Approach 2:
The TCP acknowledgment mechanism serves multiple functions: it confirms packet receipt, triggers sender transmission, and now also conveys buffer status information for flow control. By making the ACK mechanism multi-functional, the gateway achieves reliable packet delivery without requiring separate dedicated control signals or additional complex infrastructure.
4Reliability
If the gateway delays ACKs until packets are transferred to the transmission buffer, then packet drops are prevented, but the round trip time increases
Solution Approach 1:
The gateway performs preliminary buffer occupancy checking before delaying ACKs. This ensures that ACKs are only delayed when necessary to prevent packet drops. When buffer space is available, ACKs are sent immediately without delay, maintaining low round trip time. The preliminary check enables selective delay only when reliability requires it.
Solution Approach 2:
The ACK delay mechanism is dynamic rather than static. The gateway adjusts ACK timing based on real-time buffer occupancy conditions. When the buffer has space, ACKs are sent immediately with minimal delay. When the buffer is full, ACKs are delayed appropriately. This dynamic adjustment prevents unnecessary RTT increases while maintaining packet delivery reliability.
Data Source
AI summary
Methods and devices are provided for implementing flow control coordination in a gateway between a TCP/IP network and a second network. The second network may be any type of network, including another TCP/IP network. In some implementations, the throughput of the TCP/IP network is controlled by modifying the round trip time observed by a TCP connection. In other implementations, the throughput of the TCP/IP network is controlled by modifying the size of the TCP window.


