Name-based routing system and method

US9985883B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9985883-B2
Application numberUS-201615054781-A
CountryUS
Kind codeB2
Filing dateFeb 26, 2016
Priority dateFeb 26, 2016
Publication dateMay 29, 2018
Grant dateMay 29, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An advanced routing system and protocol (referred to herein as “Route Exchange” or “REX”) hides familiar IPv4 and IPv6 addresses and replaces traditional routing logic with words and relationships between named elements. Among other things, this makes IP routing tables significantly easier to understand. In addition, a single routing scheme can be used for any combination of private networks, public networks, IPv4 addressing models, and IPv6 addressing models. Underneath the words lie real IP addresses that move the packets from place to place. These routing addresses abstract away the underlying network.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of routing packets by a local route exchange processor in a local router, the method comprising: maintaining, by the local route exchange processor, in a computer storage of the local router, at least one forwarding information base that associates a plurality of named fabrics with at least one uniquely named authority, each fabric having at least one named tenant, each tenant having at least one named service, wherein the local route exchange processor is associated with a distinct local fabric from among the plurality of named fabrics; exchanging fabric adjacency information by the local route exchange processor with at least one remote route exchange processor, each remote route exchange processor operating in a separate remote router and associated with a distinct remote fabric from among the plurality of named fabrics; performing, by the local route exchange processor, a mesh-up process to establish at least one communication path between the local fabric and each of the remote fabrics, the mesh-up process including storage of a fabric-to-fabric map that identifies at least one communication path for each remote fabric and an adjacent fabric map that identifies, by name, at least one next hop fabric for each remote fabric; receiving a first packet to establish a communication session between a source service in a source tenant and a destination service in a destination tenant in a destination fabric; determining the source tenant for the communication session; identifying, using the at least one forwarding information base, a service agent for the communication session based on the name of the source tenant and the name of the destination service; selecting a communication path for the communication session including selecting a next hop fabric for the destination fabric based on the adjacent fabric map and selecting a communication path to the next hop fabric based on the fabric-to-fabric map; and forwarding the first packet via the selected communication path. 2. A method according to claim 1 , wherein all fabrics within a single authority are automatically considered to be adjacent. 3. A method according to claim 1 , wherein the at least one forwarding information base includes a separate forwarding information base for each source tenant. 4. A method according to claim 1 , wherein the first packet includes first packet metadata including the name of the source tenant, and wherein determining the source tenant for the communication session comprises determining the source tenant based on the name of the source tenant in the first packet metadata. 5. A method according to claim 1 , wherein determining the source tenant for the communication session comprises determining the source tenant based on a source address in the packet. 6. A method according to claim 1 , wherein identifying the service agent comprises selecting one service agent instance from among a plurality of candidate service agent instances. 7. A method according to claim 1 , wherein forwarding the first packet comprises: determining whether a next hop device is a remote router having a remote route exchange processor; and inserting first packet metadata into the packet when the next hop device is a remote router having a remote route exchange processor. 8. A router comprising: a computer storage; and a local route exchange processor configured to implement a method of routing packets comprising: maintaining, by the local route exchange processor, in the computer storage, at least one forwarding information base that associates a plurality of named fabrics with at least one uniquely named authority, each fabric having at least one named tenant, each tenant having at least one named service, wherein the local route exchange processor is associated with a distinct local fabric from among the plurality of named fabrics; exchanging fabric adjacency information by the local route exchange processor with at least one remote route exchange processor, each remote route exchange processor operating in a separate remote router and associated with a distinct remote fabric from among the plurality of named fabrics; performing, by the local route exchange processor, a mesh-up process to establish at least one communication path between the local fabric and each of the remote fabrics, the mesh-up process including storage of a fabric-to-fabric map that identifies at least one communication path for each remote fabric and an adjacent fabric map that identifies, by name, at least one next hop fabric for each remote fabric; receiving a first packet to establish a communication session between a source service in a source tenant and a destination service in a destination tenant in a destination fabric; determining the source tenant for the communication session; identifying, using the at least one forwarding information base, a service agent for the communication session based on the name of the source tenant and the name of the destination service; selecting a communication path for the communication session including selecting a next hop fabric for the destination fabric based on the adjacent fabric map and selecting a communication path to the next hop fabric based on the fabric-to-fabric map; and forwarding the first packet via the selected communication path. 9. A router according to claim 8 , wherein all fabrics within a single authority are automatically considered to be adjacent. 10. A router according to claim 8 , wherein the at least one forwarding information base includes a separate forwarding information base for each source tenant. 11. A router according to claim 8 , wherein the first packet includes first packet metadata including the name of the source tenant, and wherein determining the source tenant for the communication session comprises determining the source tenant based on the name of the source tenant in the first packet metadata. 12. A router according to claim 8 , wherein determining the source tenant for the communication session comprises determining the source tenant based on a source address in the packet. 13. A router according to claim 8 , wherein identifying the service agent comprises selecting one service agent instance from among a plurality of candidate service agent instances. 14. A router according to claim 8 , wherein forwarding the first packet comprises: determining whether a next hop device is a remote router having a remote route exchange processor; and inserting first packet metadata into the packet when the next hop device is a remote router having a remote route exchange processor. 15. A computer program product comprising a tangible, non-transitory computer readable medium having embodied therein a computer program that, when run on at least one computer processor, implements a local route exchange processor for a local router, the local route exchange processor implementing a method of routing packets comprising: maintaining, by the local route exchange processor, in a computer storage of the local router, at least one forwarding information base that associates a plurality of named fabrics with at least one uniquely named authority, each fabric having at least one named tenant, each tenant having at least one named service, wherein the local route exchange processor is associated with a distinct local fabric from among the plurality of named fabrics; exchanging fabric adjacency information by the local route exchange processor with at least one remote route exchange processor, each remote route exchange processor operating in a separate remote router and associated

Assignees

Inventors

Classifications

  • Responding to QoS · CPC title

  • H04L45/72Primary

    Routing based on the source address · CPC title

  • Routing instructions carried by the data packet, e.g. active networks · CPC title

  • NAT traversal · CPC title

  • Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6 · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9985883B2 cover?
An advanced routing system and protocol (referred to herein as “Route Exchange” or “REX”) hides familiar IPv4 and IPv6 addresses and replaces traditional routing logic with words and relationships between named elements. Among other things, this makes IP routing tables significantly easier to understand. In addition, a single routing scheme can be used for any combination of private networks, p…
Who is the assignee on this patent?
128 Tech Inc
What technology area does this patent fall under?
Primary CPC classification H04L45/72. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue May 29 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).