NoC Traffic Controller for Untrusted External Device Throttling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In modern computer systems with multiple processing units, uncooperative behavior of external devices can lead to performance degradation and denial-of-service attacks due to excessive memory requests, which existing flow-control mechanisms like credit-based flow control fail to manage effectively in the long term.
Innovation Solution
A traffic controller mechanism is implemented that monitors and throttles traffic from untrusted external devices by counting messages or bytes over time intervals, detecting policy violations, and restricting traffic to prevent network-on-chip congestion, using a traffic controller module with monitoring, evaluation, and throttle logic to enforce traffic policies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If credit-based flow control is used to manage traffic from external devices, then short-term buffer overflow is prevented, but long-term traffic management and performance degradation prevention are insufficient
Solution Approach 1:
The patent segments traffic management into two distinct mechanisms: credit-based flow control for short-term buffer management and a traffic controller with message counting for long-term traffic policy enforcement. This segmentation allows each mechanism to specialize in its time scale, resolving the contradiction between immediate buffer protection and sustained performance management.
Solution Approach 2:
The traffic controller acts as an intermediary between external devices and the NoC, introducing a new layer of traffic management. This intermediary monitors message counts, detects policy violations, and throttles excessive traffic, thereby extending flow control capabilities from short-term buffer protection to long-term performance management.
2Adaptability or versatility
If untrusted external devices are allowed to issue excessive memory requests, then device functionality is maintained, but denial-of-service attacks and performance degradation occur
Solution Approach 1:
The traffic controller implements feedback by continuously monitoring the number of messages from external devices and comparing them against configured thresholds. When thresholds are exceeded, the controller provides feedback by throttling traffic, creating a closed-loop system that maintains device functionality while preventing harmful excessive requests.
Solution Approach 2:
The system changes the parameter of traffic allowance dynamically based on monitored message counts. By adjusting the effective traffic threshold parameter in response to detected violations, the system adapts to prevent DoS attacks while preserving legitimate device operation.
3Reliability
If traffic monitoring and throttling is implemented to prevent DoS attacks, then system stability is improved, but additional hardware complexity is introduced
Solution Approach 1:
The traffic controller is designed as a multi-functional unit that combines message counting, threshold comparison, violation detection, and traffic throttling capabilities in a single hardware block. This universal design reduces overall system complexity compared to implementing separate mechanisms for each function.
Solution Approach 2:
The traffic controller operates autonomously, automatically monitoring traffic, detecting violations, and applying throttling without external intervention. This self-service capability reduces the need for complex external control logic and simplifies the overall system architecture.
Data Source
AI summary
An apparatus includes an external device for causing messages to be transmitted with local traffic between internal blocks of a host system-on-chip (SoC) via a network on chip (NoC) in the host SoC, the transmitted messages including one or more memory requests directed to a memory of the host SoC, violating a traffic policy for a first time interval by transmitting a number of messages that exceeds a maximum threshold of for the first time interval, where the SoC monitors an amount of external traffic from an untrusted device transmitted over the NoC over a set of one or more time intervals including the first time interval, and in response to detection of the violation by the host SoC, reducing an amount of traffic transmitted via the NoC. The apparatus also includes an external processor link for transmitting the messages from the external device to the host SoC.


