Fabric Control Protocol for Data Center Packet Spraying

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data center networks face issues such as fabric under-utilization due to load imbalance, lack of reactivity to traffic changes and component/link failures, inefficient congestion management, and inadequate admission control, leading to suboptimal throughput and latency.

Innovation Solution

The Fabric Control Protocol (FCP) enables end-to-end admission control, packet spraying across multiple paths, adaptive rate control, and explicit congestion notification, allowing for efficient bandwidth utilization, fault tolerance, and low latency by using a request-grant mechanism and packet sequence numbering.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If packets are forwarded along a single path through the switch fabric, then packet ordering is maintained, but bandwidth utilization is reduced and load imbalance occurs

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidpacket routing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments packet flows into multiple sub-flows that can be distributed across different paths in the switch fabric. Each sub-flow is routed independently, allowing parallel transmission through multiple paths while maintaining overall flow coherence through sequence numbering and reassembly at the destination.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of path selection by implementing multi-path forwarding capabilities. Instead of single-dimensional path selection, the system utilizes multiple dimensions of routing paths through the switch fabric, enabling packets to traverse different physical or logical paths simultaneously while maintaining delivery guarantees.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If multiple paths are used for packet forwarding, then bandwidth utilization improves, but packet reordering occurs

Engineering Contradiction:
ImprovethroughputVSAvoidpacket sequence integrity
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The patent implements feedback mechanisms through sequence numbering and acknowledgment systems. Each packet is tagged with sequence information that allows the destination to detect and correct reordering. The system uses feedback loops to track packet delivery status and ensure in-order reconstruction of the original data stream despite multi-path transmission.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent changes the parameter of packet identification by incorporating sequence numbers and path identifiers into packet headers. This parameter modification enables the destination to distinguish packets from different paths and reassemble them in the correct order, transforming the packet handling process from simple forwarding to intelligent reordering.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If admission control is implemented, then congestion management improves, but protocol complexity increases

Engineering Contradiction:
Improvecongestion controlVSAvoidprotocol overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements preliminary admission control actions before packet transmission begins. The system pre-establishes flow permissions, bandwidth allocations, and path selections through reservation protocols. This preliminary action prevents congestion before it occurs rather than reacting to it, reducing the need for complex real-time congestion management mechanisms.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces intermediary control mechanisms that mediate between packet sources and the switch fabric. These intermediaries manage admission control, flow scheduling, and resource allocation, shielding the core switching fabric from complex congestion management tasks and simplifying the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If flow-based switching is used, then packet ordering is maintained, but fabric under-utilization occurs due to load imbalance

Engineering Contradiction:
Improvefabric utilizationVSAvoidflow management simplicity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent implements dynamic flow management that adapts to changing network conditions. Flow paths, bandwidth allocations, and routing decisions are adjusted in real-time based on fabric utilization, traffic patterns, and congestion indicators. This dynamic approach allows the system to optimize fabric utilization while maintaining flow integrity, transitioning from static flow-based switching to adaptive multi-path forwarding.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12261926B2Fabric control protocol for data center networks with packet spraying over multiple alternate data paths
Publication Date: 2025.03.25 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12261926B2 patent drawing
  • US12261926B2 patent drawing
  • US12261926B2 patent drawing

AI summary

A fabric control protocol is described for use within a data center in which a switch fabric provides full mesh interconnectivity such that any of the servers may communicate packet data for a given packet flow to any other of the servers using any of a number of parallel data paths within the data center switch fabric. The fabric control protocol enables spraying of individual packets for a given packet flow across some or all of the multiple parallel data paths in the data center switch fabric and, optionally, reordering of the packets for delivery to the destination. The fabric control protocol may provide end-to-end bandwidth scaling and flow fairness within a single tunnel based on endpoint-controlled requests and grants for flows. In some examples, the fabric control protocol packet structure is carried over an underlying protocol, such as the User Datagram Protocol (UDP).