Routing Methods, Systems, And Computer Program Products

Patent No. US11012344 (titled "Routing Methods, Systems, And Computer Program Products") was filed by Morris Routing Technologies Llc on Feb 20, 2020.

What is this patent about?

’344 is related to the field of network routing, specifically addressing the challenges of scalability and efficiency in large networks. Traditional routing protocols often rely on destination-based forwarding, which can lead to increased latency and complex routing tables, especially as network size grows. The patent aims to improve routing performance by incorporating path segment information directly into packet headers.

The underlying idea behind ’344 is to enable source routing by encoding a sequence of segment identifiers within a packet's header. These identifiers represent nodes, network interfaces, or network regions along the path to the destination. The key insight is to allow intermediate nodes to forward packets based on these segment identifiers, effectively guiding the packet along a pre-determined path, while still allowing for some flexibility in routing.

The claims of ’344 focus on a method performed by a transmitting node. This involves receiving segment identifiers from other nodes, storing them in a data structure representing the network topology, selecting a sequence of these identifiers based on a policy to define a path segment to a receiving node, identifying the appropriate outgoing network interface based on the first segment identifier in the sequence, storing the remaining segment identifiers in the packet header, and transmitting the packet.

In practice, the transmitting node first learns about the network topology and available segment identifiers through standard routing protocols like link-state or distance-vector protocols. Based on a defined policy (e.g., shortest path, least congested path), it then selects a sequence of segment identifiers that define the desired path. The transmitting node then examines the first segment identifier in the sequence to determine the correct outgoing interface. The remaining segment identifiers are placed in the packet header, allowing downstream nodes to continue forwarding the packet along the intended path.

This approach differs from traditional destination-based routing where each router independently determines the next hop. By embedding path information in the packet header, ’344 enables a form of explicit routing , potentially reducing latency and improving network utilization. Furthermore, the inclusion of a non-predetermined node allows for some dynamic adaptation to network conditions, offering a balance between strict source routing and traditional hop-by-hop forwarding. The use of segment identifiers rather than full IP addresses also contributes to header efficiency.

How does this patent fit in bigger picture?

Technical landscape at the time

In the early 2010s when ’344 was filed, network routing was typically implemented using shortest-path algorithms and hierarchical addressing schemes. At a time when systems commonly relied on static routing tables or dynamic routing protocols based on link-state or distance-vector algorithms, hardware or software constraints made complex path selection and dynamic address assignment non-trivial.

Novelty and Inventive Step

The examiner approved the application because they found that the prior art did not explicitly teach or make obvious a method that includes storing segment identifiers for at least a portion of a network, selecting a sequence of segment identifiers to identify a first path segment, where the path segment includes at least one node not predetermined by the sequence, and identifying a first network interface of the transmitting node based on the sequence of segment identifiers.

Claims

This patent contains 30 claims, with claim 1 being the only independent claim. Independent claim 1 is directed to a method performed by a transmitting node for routing data in a network using segment identifiers. The dependent claims generally elaborate on and refine the method of independent claim 1, adding details related to node scoped network interface identifiers, link failure handling, path segment selection, and network regions.

Key Claim Terms New

Definitions of key terms used in the patent claims.

Term (Source)Support for SpecificationInterpretation
First Network Interface
(Claim 1)
“In one embodiment, a non-transitory computer-readable media is provided storing computer instructions that, when executed by one or more processors of a transmitting node in a network, cause the transmitting node to: receive, from at least one other node in a network, a plurality of segment identifiers, utilizing at least one of a link state protocol, a distance vector protocol, or a path vector protocol, store, in a data structure, the plurality of segment identifiers associated with nodes represented in a topology of at least a portion of a network, select, from the plurality of segment identifiers in the data structure and based on a specified policy, a first sequence of segment identifiers that identify a first sequence of at least one of: one or more nodes, one or more network interfaces, or one or more network regions, at least partially in a first path segment that communicatively couples the transmitting node with a receiving node in the network and that includes at least one particular node which is not predetermined by the first sequence of segment identifiers such that the at least one particular node is determined during routing of data between the transmitting node and the receiving node, identify, based on a segment identifier in a first subsequence, of the first sequence of segment identifiers, that precedes a second subsequence of the first sequence of segment identifiers, a first network interface of the transmitting node in the first path segment”A network interface of the transmitting node in the first path segment, identified based on a segment identifier in a first subsequence of the first sequence of segment identifiers.
First Path Segment
(Claim 1)
“In one embodiment, a non-transitory computer-readable media is provided storing computer instructions that, when executed by one or more processors of a transmitting node in a network, cause the transmitting node to: receive, from at least one other node in a network, a plurality of segment identifiers, utilizing at least one of a link state protocol, a distance vector protocol, or a path vector protocol, store, in a data structure, the plurality of segment identifiers associated with nodes represented in a topology of at least a portion of a network, select, from the plurality of segment identifiers in the data structure and based on a specified policy, a first sequence of segment identifiers that identify a first sequence of at least one of: one or more nodes, one or more network interfaces, or one or more network regions, at least partially in a first path segment that communicatively couples the transmitting node with a receiving node in the network”A path segment that communicatively couples the transmitting node with a receiving node in the network.
First Sequence Of Segment Identifiers
(Claim 1)
“In one embodiment, a non-transitory computer-readable media is provided storing computer instructions that, when executed by one or more processors of a transmitting node in a network, cause the transmitting node to: receive, from at least one other node in a network, a plurality of segment identifiers, utilizing at least one of a link state protocol, a distance vector protocol, or a path vector protocol, store, in a data structure, the plurality of segment identifiers associated with nodes represented in a topology of at least a portion of a network, select, from the plurality of segment identifiers in the data structure and based on a specified policy, a first sequence of segment identifiers that identify a first sequence of at least one of: one or more nodes, one or more network interfaces, or one or more network regions, at least partially in a first path segment that communicatively couples the transmitting node with a receiving node in the network”A sequence of segment identifiers selected from a data structure based on a specified policy, identifying a sequence of nodes, network interfaces, or network regions in a path segment.
Second Subsequence
(Claim 1)
“In one embodiment, a non-transitory computer-readable media is provided storing computer instructions that, when executed by one or more processors of a transmitting node in a network, cause the transmitting node to: receive, from at least one other node in a network, a plurality of segment identifiers, utilizing at least one of a link state protocol, a distance vector protocol, or a path vector protocol, store, in a data structure, the plurality of segment identifiers associated with nodes represented in a topology of at least a portion of a network, select, from the plurality of segment identifiers in the data structure and based on a specified policy, a first sequence of segment identifiers that identify a first sequence of at least one of: one or more nodes, one or more network interfaces, or one or more network regions, at least partially in a first path segment that communicatively couples the transmitting node with a receiving node in the network and that includes at least one particular node which is not predetermined by the first sequence of segment identifiers such that the at least one particular node is determined during routing of data between the transmitting node and the receiving node, identify, based on a segment identifier in a first subsequence, of the first sequence of segment identifiers, that precedes a second subsequence of the first sequence of segment identifiers, a first network interface of the transmitting node in the first path segment, store at least the second subsequence of the first sequence of segment identifiers in a header associated with a first packet”A subsequence of the first sequence of segment identifiers, stored in a header associated with a first packet.
Segment Identifiers
(Claim 1)
“Methods and systems are described for routing based on a path-based protocol address. In one embodiment, a non-transitory computer-readable media is provided storing computer instructions that, when executed by one or more processors of a transmitting node in a network, cause the transmitting node to: receive, from at least one other node in a network, a plurality of segment identifiers, utilizing at least one of a link state protocol, a distance vector protocol, or a path vector protocol, store, in a data structure, the plurality of segment identifiers associated with nodes represented in a topology of at least a portion of a network”Identifiers associated with nodes represented in a topology of at least a portion of a network, received from other nodes using a link state protocol, a distance vector protocol, or a path vector protocol.

Litigation Cases New

US Latest litigation cases involving this patent.

Case NumberFiling DateTitle
4:25-cv-00853Aug 7, 2025Morris Routing Technologies, LLC v. Comcast Business Communications, LLC et al
4:24-cv-00625Jul 8, 2024Morris Routing Technologies, Llc V. T-Mobile Usa, Inc.

Patent Family

Patent Family

File Wrapper

The dossier documents provide a comprehensive record of the patent's prosecution history - including filings, correspondence, and decisions made by patent offices - and are crucial for understanding the patent's legal journey and any challenges it may have faced during examination.

  • Date

    Description

  • Get instant alerts for new documents

US11012344

MORRIS ROUTING TECHNOLOGIES LLC
Application Number
US16796931
Filing Date
Feb 20, 2020
Status
Granted
Expiry Date
Dec 27, 2032
External Links
Slate, USPTO, Google Patents