Distributed packet switching in a source routed cluster server

US9331958B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9331958-B2
Application numberUS-201213731331-A
CountryUS
Kind codeB2
Filing dateDec 31, 2012
Priority dateDec 31, 2012
Publication dateMay 3, 2016
Grant dateMay 3, 2016

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.

A cluster compute server includes nodes coupled in a network topology via a fabric that source routes packets based on location identifiers assigned to the nodes, the location identifiers representing the locations in the network topology. Host interfaces at the nodes may be associated with link layer addresses that do not reflect the location identifier associated with the nodes. The nodes therefore implement locally cached link layer address translations that map link layer addresses to corresponding location identifiers in the network topology. In response to originating a packet directed to one of these host interfaces, the node accesses the local translation cache to obtain a link layer address translation for a destination link layer address of the packet. When a node experiences a cache miss, the node queries a management node to obtain the specified link layer address translation from a master translation table maintained by the management node.

First claim

Opening claim text (preview).

What is claimed is: 1. A cluster compute server comprising: a network of nodes coupled in a network topology via a fabric, each node having a location identifier of a location of the node in the network topology and wherein packets are source routed within the fabric based on the location identifier; each node of a set of nodes of the network comprising a corresponding local translation cache, the local translation cache storing one or more link layer address translations in use by the corresponding node, each link layer address translation representing a mapping of a corresponding link layer address to a location identifier in the network topology, a management node storing at least a portion of a master translation table of the link layer address translations implemented in the network of nodes; wherein in response to a node generating a packet, the node is to access the local translation cache to obtain a link layer address translation associated with a destination link layer address for the packet; and wherein the node is to query the management node for the link layer address translation associated with the destination link layer address in response to the local translation cache not including the link layer address translation. 2. The cluster compute server of claim 1 , wherein, in response to associating a link layer address with a host interface at a node, the management node is to store a link layer address translation representing a translation of the link layer address assigned to the host interface and a location identifier for a location of the node in the network topology. 3. The cluster compute server of claim 2 , wherein: each node in the network is associated with a corresponding media access control (MAC) address comprising a first field with a value representing the location identifier of the node and a second field with a first value common to the locations of nodes of the network of nodes in the network topology, wherein a set of bits of the value of the first field represents source routing control for packets to the location within the fabric; and the link layer address assigned to the host interface comprises a MAC address comprising the first field with a value specific to the host interface and the second field with a second value different than the first value. 4. The cluster compute server of claim 3 , wherein: the network topology comprises a three-dimensional torus; and each of a first subset, second subset, and third subset of the set of bits of the first field of the MAC address identifies a position of the location in each of a first dimension, second dimension, and third dimension, respectively, of the three-dimensional torus. 5. The cluster compute server of claim 1 , wherein: the network topology comprises a three-dimensional torus; and each of a first subset, second subset, and third subset of bits of a location identifier identifies a position of the corresponding location in each of a first dimension, second dimension, and third dimension, respectively, of the three-dimensional torus. 6. The cluster compute server of claim 5 , wherein the fabric is to route a packet by completely traversing a route path of the packet in one dimension of the three-dimensional torus before routing the packet to another dimension of the three-dimensional torus. 7. A field replaceable unit (FRU) comprising: a printed circuit board (PCB) comprising a socket interface to couple with a socket of a fabric connecting a plurality of nodes in a network topology, each node having a location identifier of a corresponding location of the node in the network topology and wherein packets are source routed within the fabric based on the location identifier; a fabric interface disposed at the PCB, the fabric interface comprising: a local translation cache to store link layer address translations that represent mappings of link layer addresses to corresponding location identifiers in the network topology; and a packet formatter to provide destination location identifiers for packets generated at the FRU based on the link layer address translations of the local translation cache; wherein each node is associated with a corresponding media access control (MAC) address having a first field comprising a first value common to each location in the network topology and a second field comprising a value representative of the location identifier of the node; and wherein the fabric interface is to: responsive to the FRU generating a packet having a destination MAC address having a value other than the first value in the first field, access a link layer address translation from the local translation cache based on the destination MAC address and determine a location identifier associated with the location of an intended destination node for the packet using the link layer address translation; access the link layer address translation from a master translation table of link layer address translations at a management node connected to the fabric responsive to the local translation cache not containing the link layer address translation; and forward the packet to a selected port of a set of ports connected to the fabric, the port selected based on a source routing path indicated by the location identifier. 8. The FRU of claim 7 , wherein the fabric interface further is to: responsive to the FRU generating a packet having a destination MAC address having the first value in the first field, forward the packet to a port of the set of ports selected based on a source routing path indicated by a value stored at the second field of the destination MAC address. 9. The FRU of claim 7 , wherein: the network topology comprises a three-dimensional torus; and each of a first subset, second subset, and third subset of bits of a location identifier identifies a position of the corresponding location in each of a first dimension, second dimension, and third dimension, respectively, of the three-dimensional torus. 10. The FRU of claim 9 , wherein each node is associated with a corresponding media access control (MAC) address having a first field with a value common to each location in the network topology and a second field with a value representing the location identifier of the node, the value at the second field comprising a first subset, a second subset, and a third subset of bits that identify a position of the corresponding location in each of a first dimension, second dimension, and third dimension, respectively, of the three-dimensional torus. 11. A method of operating a cluster compute server comprising a fabric connecting a plurality of nodes in a network topology, each node having a location identifier in the network topology and wherein packets are source routed within the fabric based on the location identifier, the method comprising: maintaining, at each node of a set of nodes, a local translation cache of link layer address translations, each link layer address translation mapping a corresponding link layer address to a location identifier for a corresponding location in the network topology; maintaining, at a management node, at least a portion of a master translation table of the link layer address translations implemented in the nodes; in response to a node generating a packet with a destination link layer address that does not represent the corresponding location of a destination node in the network topology, accessing the local translation cache at the node to obtain a link layer address translation associated with a destination link layer address for the packet, wherein accessing a link layer address translation from the local translation cache comprises requesting the link laye

Assignees

Inventors

Classifications

  • H04L49/25Primary

    Routing or path finding in a switch fabric · CPC title

  • Source routing · CPC title

  • Organization of routing tables · CPC title

  • Route cache; Operation thereof · CPC title

  • Layer 2 routing, e.g. in Ethernet based MAN's · 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 US9331958B2 cover?
A cluster compute server includes nodes coupled in a network topology via a fabric that source routes packets based on location identifiers assigned to the nodes, the location identifiers representing the locations in the network topology. Host interfaces at the nodes may be associated with link layer addresses that do not reflect the location identifier associated with the nodes. The nodes the…
Who is the assignee on this patent?
Lie Sean, Ditya Vikrama, Lauterbach Gary R, and 1 more
What technology area does this patent fall under?
Primary CPC classification H04L49/25. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue May 03 2016 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).