Patent ID: 7657659

Claim:
In a virtualized computer system running one or more virtual machines on virtualization software, a computer-implemented method of transmitting a network frame from one of the virtual machines using a hardware network interface device, the method comprising: determining a length of a first part of the network frame consisting of the first part and a remaining part, the first part of the network frame comprising a variable-length Ethernet header section and a predetermined part of an IP header section, the length of the first part being variable and less than a length of the network frame; copying only the first part to a transmit buffer which is selected from a plurality of transmit buffers associated with pre-translated mappings from guest physical address to hypervisor virtual address to machine address; obtaining a first machine address of the transmit buffer based upon the pre-translated mappings; obtaining a second machine address of the remaining part that is not copied to the transmit buffers; and transmitting separately the first and the remaining parts of the network frame by direct memory access using the first and the second machine addresses, respectively.