Building data packets for an advanced switching fabric
OwnerJames Bury, Andrew Tan +1inventors
InventorsJames Bury, Andrew Tan, Joseph Bennett
Life of this patent
Estimating the term…
Abstract
An apparatus generates a data packet for an advanced switching (AS) fabric. The apparatus includes a direct memory access (DMA) engine that retrieves a descriptor from a queue, and that stores the descriptor in a storage area. The descriptor contains information used to build the data packet. A work manager retrieves the descriptor from the storage area, and works to generate the data packet using the descriptor.
Claims42
An apparatus that generates a data packet for an advanced switching (AS) fabric, the apparatus comprising:
- a direct memory access (DMA) engine that retrieves a descriptor from a queue, and that stores the descriptor in a storage area, the descriptor containing information used to generate the data packet;
- and
- a work manager that retrieves the descriptor from the storage area, and that works to generate the data packet using the descriptor.
A method of producing a data packet for an advanced switching (AS) fabric, the method comprising:
- retrieving a descriptor from a queue, the descriptor comprising information used to build the data packet;
- and
- determining if the descriptor indicates that the data packet has a format that is native to the AS fabric;
- wherein, if the descriptor indicates that the data packet has a format that is native to the AS fabric, the method further comprises performing a first process to build the data packet, and if the descriptor indicates that the data packet has a format that is not native to the AS fabric, the method further comprises performing a second process to build the data packet.
An article comprising a machine-readable medium that stores instructions to build a data packet for an advanced switching (AS) fabric, the instructions causing a machine to:
- retrieve a descriptor from a queue, the descriptor comprising information used to build the data packet;
- and
- determine if the descriptor indicates that the data packet has a format that is native to the AS fabric;
- wherein, if the descriptor indicates that the data packet has a format that is native to the AS fabric, the instructions cause the machine to perform a first process to build the data packet, and if the descriptor indicates that the data packet has a format that is not native to the AS fabric, the instructions cause the machine to perform a second process to build the data packet.
A storage system that passes data across an advanced switching (AS) fabric, the storage system comprising:
- a first server to manage the storage system;
- and
- plural data servers, each of the plural data servers being in communication with the first server via the AS fabric, the plural data servers each containing one or more disk drives to store data received from the first server via the AS fabric;
- wherein the first server comprises:
- a processor that stores a descriptor in a queue, the descriptor containing information used to packetize data for transmission across the AS fabric;
- and
- a protocol interface (PI) engine that retrieves the descriptor from the queue, and that uses the descriptor to generate data packets for transmission to one or more of the plural data servers via the AS fabric.
A network containing an advanced switching (AS) fabric and an end node device, the end node device comprising:
- a network processor that identifies a condition on the network;
- a processor that generates a descriptor in response to the condition, and that stores the descriptor in a queue, the descriptor containing information used to build a data packet;
- and
- a protocol interface (PI) engine that retrieves the descriptor from the queue, and that uses the descriptor to build the data packet for transmission to another network device via the AS fabric.
An apparatus to generate data packets for transmission to an advanced switching (AS) fabric, the apparatus comprising:
- a work manager that retrieves a descriptor containing information used to build a data packet, and that determines, based on the descriptor, whether the data packet has a format that is native to the AS fabric;
- and
- an acceleration engine that receives the descriptor from the work manager if the data packet has a format that is native to the AS fabric, and that uses the information in the descriptor to build the data packet;
- wherein the work manager and the acceleration engine operate to build multiple data packets from the descriptor.
An apparatus for use with an advanced switching (AS) fabric, the apparatus comprising:
- a first engine to provide a descriptor containing information for at least one data packet, the information identifying a payload of the at least one data packet;
- a second engine to determine, based on the descriptor, whether the least one data packet has a native AS format;
- and
- a third engine to build the at least one data packet using the descriptor if the second engine determines that the at least one data packet has a native AS format;
- wherein the second engine and the third engine work together to build plural data packets from the descriptor if the information in the descriptor indicates that the payload is too large to be accommodated by a single data packet.
A method for use with an advanced switching (AS) fabric, the method comprising:
- providing a descriptor containing information for at least one data packet, the information identifying a payload of the at least one data packet;
- determining, based on the descriptor, whether the least one data packet has a native AS format;
- and
- building the at least one data packet using the descriptor if it is determined that the at least one data packet has a native AS format;
- wherein plural data packets are built from the descriptor if the information in the descriptor indicates that the payload is too large to be accommodated by a single data packet.
An article comprising a machine-readable medium that stores instructions for use with an advanced switching (AS) fabric, the instructions causing a machine to:
- provide a descriptor containing information for at least one data packet, the information identifying a payload of the at least one data packet;
- determine, based on the descriptor, whether the least one data packet has a native AS format;
- and
- build the at least one data packet using the descriptor if it is determined that the at least one data packet has a native AS format;
- wherein plural data packets are built from the descriptor if the information in the descriptor indicates that payload is too large to be accommodated by a single data packet.
A storage system that passes data across an advanced switching (AS) fabric, the storage system comprising:
- a first server to manage the storage system;
- and
- plural data servers, each of the plural data servers being in communication with the first server via the AS fabric, the plural data servers each containing one or more disk drives to store data received from the first server via the AS fabric;
- wherein the first server comprises:
- a work manager that reads a descriptor containing information used to build a data packet, and that determines, based on the descriptor, whether the data packet has a format that is native to the AS fabric;
- and
- an acceleration engine that receives the descriptor from the work manager if the data packet has a format that is native to the AS fabric, and that uses the information in the descriptor to build the data packet;
- wherein the work manager and the acceleration engine operate to build multiple data packets from the descriptor.
A network containing an advanced switching (AS) fabric and an end node device, the end node device comprising:
- a network processor that identifies a condition on the network;
- a processor that generates a descriptor in response to the condition, and that stores the descriptor in a queue, the descriptor containing information used to build a data packet;
- and
- a protocol interface engine comprising:
- a work manager that obtains the descriptor, and that determines, based on the descriptor, whether the data packet has a format that is native to the AS fabric;
- and
- an acceleration engine that receives the descriptor from the work manager if the data packet has a format that is native to the AS fabric, and that uses the information in the descriptor to build the data packet;
- wherein the work manager and the acceleration engine operate to build multiple data packets from the descriptor.
Dependencies are inferred from the claim text.