Message communication techniques
First Claim
Patent Images
1. A method comprising:
- determining a virtual message transmit engine to process a received network protocol unit, wherein the virtual message transmit engine is associated with a first host physical message engine;
determining a virtual message receive engine associated with the virtual message transmit engine, wherein the virtual message receive engine is associated with a second host physical message engine;
the virtual message transmit engine requesting transforming contents of the network protocol unit into one or more message segments;
the virtual message transmit engine requesting the first host physical message engine to transmit a request to send message to the virtual message receive engine;
the virtual message transmit engine requesting the first host physical message engine to transmit the network protocol unit; and
the virtual message transmit engine requesting transmission of content of the received network protocol unit using the one or more message segments to a memory region associated with the virtual message receive engine, wherein the transmission of the one or more message segments comprises transmission of one or more message segments to the memory region by identifying a virtual message engine address of the virtual message receive engine and independent of identifying the destination memory address of the memory region.
0 Assignments
0 Petitions
Accused Products
Abstract
A network protocol unit interface is described that uses a message engine to transfer contents of received network protocol units in message segments to a destination message engine. The network protocol unit interface uses a message engine to receive messages whose content is to be transmitted in network protocol units. A message engine transmits message segments to a destination message engine without the message engine transmitter and receiver sharing memory space. In addition, the transmitter message engine can transmit message segments to a receiver message engine by use of a virtual address associated with the receiver message and a queue identifier, as opposed to a memory address.
59 Citations
20 Claims
-
1. A method comprising:
-
determining a virtual message transmit engine to process a received network protocol unit, wherein the virtual message transmit engine is associated with a first host physical message engine; determining a virtual message receive engine associated with the virtual message transmit engine, wherein the virtual message receive engine is associated with a second host physical message engine; the virtual message transmit engine requesting transforming contents of the network protocol unit into one or more message segments; the virtual message transmit engine requesting the first host physical message engine to transmit a request to send message to the virtual message receive engine; the virtual message transmit engine requesting the first host physical message engine to transmit the network protocol unit; and the virtual message transmit engine requesting transmission of content of the received network protocol unit using the one or more message segments to a memory region associated with the virtual message receive engine, wherein the transmission of the one or more message segments comprises transmission of one or more message segments to the memory region by identifying a virtual message engine address of the virtual message receive engine and independent of identifying the destination memory address of the memory region. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus comprising:
-
a processor comprising at least one core; logic to receive a network protocol and to perform media access control, filtering, and request buffering of the network protocol unit; and a physical message engine, wherein one of the at least one core is to associate a virtual message transmit engine with the physical message engine; one of the at least one core is to associate the virtual message transmit engine with a virtual message receive engine; the virtual message transmit engine is to request the physical message engine to transmit a request to send message to the virtual message receive engine; the virtual message transmit engine is to request the physical message engine to transmit the network protocol unit; and the physical message engine is to transmit content of the network protocol unit, using at least one segment, in response to a request from the virtual message transmit engine, to a memory region associated with the virtual message receive engine, the request identifying the virtual message receive engine and independent of specification of a physical memory address of the memory region. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A system comprising:
-
a storage device; a network interface to receive a network protocol unit; at least one core; a first message engine; and a second message engine, wherein; one of the at least one core is to associate the first message engine with a virtual message transmit engine, one of the at least one core is to associate the virtual message transmit engine with a virtual message receive engine; one of the at least one core is to associate the second message engine with the virtual message receive engine; the virtual message transmit engine is to request the first message engine to transmit a request to send message to the virtual message receive engine; the virtual message transmit engine is to request the first message engine to transmit content of the network protocol unit; and the first message engine is to transmit content of the network protocol unit using at least one message to a memory region associated with the virtual receive message engine, in response to a request from the virtual message transmit engine, the request from the virtual message transmit engine identifying the virtual message receive engine and independent of specification of a physical memory address of the memory region. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification