Write Transaction Bandwidth Limiting in Computer Networks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computer systems, aggressive peripheral components can consume available bandwidth on switches, leading to increased latency and reduced performance for other components due to unequal bandwidth consumption and lack of effective load balancing for write transactions.

Innovation Solution

A system that includes a bandwidth-allocation apparatus providing a write transaction limit for components, managed by a transaction-management apparatus, which restricts or allows write transactions based on the limit, and provides completion notifications to manage outstanding transactions and ensure fair bandwidth usage across the network.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a peripheral component transmits write transactions aggressively to the root complex, then the throughput for that component is improved, but other peripheral components experience increased latency and reduced performance due to bandwidth consumption

Engineering Contradiction:
ImprovethroughputVSAvoidlatency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by establishing flow control credits before transactions occur. The root complex allocates credits to peripheral components based on their priority and bandwidth requirements, allowing the system to prevent bandwidth exhaustion before it causes latency issues for other components.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where completion notifications are sent from the root complex back to peripheral components. This feedback loop allows the system to track outstanding transactions and adjust flow control dynamically, ensuring that aggressive components don't starve others of bandwidth.

Inventive Principle:
Principle #23Feedback

2Device complexity

If write transactions are allowed to proceed without bandwidth limiting, then the simplicity of the system is maintained, but bandwidth starvation occurs and load balancing is ineffective

Engineering Contradiction:
Improvesystem simplicityVSAvoidbandwidth fairness
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The system introduces an intermediary mechanism - flow control credits - that mediates between peripheral components and the root complex. These credits act as a buffer that allows the system to maintain simplicity at the component level while implementing sophisticated bandwidth management at the network level.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system changes key parameters such as the number of flow control credits allocated and the timing of completion notifications to achieve bandwidth fairness. By dynamically adjusting these parameters based on component priority and current network conditions, the system maintains reliability without requiring complex changes to the fundamental transaction structure.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9111039B2Limiting bandwidth for write transactions across networks of components in computer systems
Publication Date: 2015.08.18 APPLE INC
  • US9111039B2 patent drawing
  • US9111039B2 patent drawing
  • US9111039B2 patent drawing

AI summary

The disclosed embodiments provide a system that facilitates use of a network of components in a computer system. The system includes a bandwidth-allocation apparatus that provides a write transaction limit for a component on the network. The system also includes a transaction-management apparatus that compares the write transaction limit to a set of outstanding write transactions for the component upon detecting a write transaction from the component to the network. If the write transaction causes the set of outstanding write transactions to exceed the write transaction limit, the transaction-management apparatus restricts transmission of the write transaction over the network.