Network adapter for inserting pad bytes into packet link headers based on destination service access point fields for efficient memory transfer
First Claim
1. In a computing system connected to a network, the computing system including a network adapter connected to the network, a main processor and a main memory, wherein network packets sent across the network have headers which have internal boundaries, the boundaries being separated by a predetermined number of bytes, a method comprising the steps of:
- (a) searching, by the network adapter, a network link header of a first network packet to determine a value of a destination service access point of the first network packet, the first network packet being received by the network adapter from the network;
(b) based on the value of the destination service access point, placing at least one pad byte in the network link header to cause subsequent headers in the first network packet to be aligned along the boundaries, the placing of the at least one pad byte being done by the network adapter; and
,(c) transferring the first network packet from the network adapter to the main memory.
6 Assignments
0 Petitions
Accused Products
Abstract
A computing system is connected to a network. The computing system includes a network adapter and a main memory. The network adapter receives from the network a network packet having a plurality of headers. The network adapter inserts at least one pad byte within one of the plurality of headers to cause the plurality of headers in the network packet to be aligned along predetermined multi-byte boundaries. For example, the multi-byte boundaries are four-byte boundaries. After inserting the at least one pad byte, the network adapter forwards the network packet to the main memory.
66 Citations
20 Claims
-
1. In a computing system connected to a network, the computing system including a network adapter connected to the network, a main processor and a main memory, wherein network packets sent across the network have headers which have internal boundaries, the boundaries being separated by a predetermined number of bytes, a method comprising the steps of:
-
(a) searching, by the network adapter, a network link header of a first network packet to determine a value of a destination service access point of the first network packet, the first network packet being received by the network adapter from the network; (b) based on the value of the destination service access point, placing at least one pad byte in the network link header to cause subsequent headers in the first network packet to be aligned along the boundaries, the placing of the at least one pad byte being done by the network adapter; and
,(c) transferring the first network packet from the network adapter to the main memory. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. In a computing system connected to a network, the computing system including a network adapter and a main memory, wherein network packets sent across the network have headers which have boundaries, the boundaries being separated by a predetermined number of bytes, a method comprising the steps of:
-
(a) receiving, by the network adapter, from the network, a first network packet having a plurality of headers, including the substep of; (a.1) inserting, by the network adapter, at least one pad byte within one of the plurality of headers to cause the plurality of headers in the first network packet to be aligned along the boundaries; and
,(b) forwarding the first network packet, by the network adapter, to the main memory. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. In a computing system connected to a network, the computing system including a main memory, a network adapter comprising:
-
receiving means for receiving from the network a network packet having a plurality of headers; inserting means, coupled to the receiving means, for inserting at least one pad byte within one of the plurality of headers to cause the plurality of headers in the network packet received from the network by the receiving means to be aligned along predetermined multi-byte boundaries; and
,forwarding means for forwarding the network packet, including the at least one pad byte, to the main memory. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification