US 11,940,933 B2
Cross address-space bridging
Idan Burstein, Akko (IL); Dotan David Levi, Kiryat Motzkin (IL); Ariel Shahar, Jerusalem (IL); Lior Narkis, Petah-Tikva (IL); Igor Voks, Zichron Yaakov (IL); Noam Bloch, Bat Shlomo (IL); and Shay Aisman, Zichron Yaakov (IL)
Assigned to MELLANOX TECHNOLOGIES, LTD., Yokneam (IL)
Filed by MELLANOX TECHNOLOGIES, LTD., Yokneam (IL)
Filed on Mar. 2, 2021, as Appl. No. 17/189,303.
Prior Publication US 2022/0283964 A1, Sep. 8, 2022
Int. Cl. G06F 13/16 (2006.01); G06F 9/455 (2018.01); G06F 9/46 (2006.01); G06F 12/1045 (2016.01); G06F 13/38 (2006.01); G06F 13/42 (2006.01); G06F 15/173 (2006.01)
CPC G06F 13/1668 (2013.01) [G06F 9/45558 (2013.01); G06F 9/466 (2013.01); G06F 12/1054 (2013.01); G06F 12/1063 (2013.01); G06F 13/387 (2013.01); G06F 13/4221 (2013.01); G06F 15/17331 (2013.01); G06F 2009/45579 (2013.01)] 24 Claims
OG exemplary drawing
 
1. A computing system, comprising:
at least one peripheral bus;
at least one memory;
at least one host, which is connected to the at least one peripheral bus and is to run (i) a first Virtual Machine (VM) having a first network association and associated with a first address space in the at least one memory and (ii) a second VM having a second network association and associated with a second address space in the at least one memory; and
a physical network adapter, to transmit packets to a network, the physical network adapter connected to the at least one peripheral bus and is to run (i) a first Virtual Network Interface Controller (VNIC) assigned to serve the first VM and (ii) a second VNIC assigned to serve the second VM,
wherein the second VNIC is to:
receive from the second VM a command that instructs the second VNIC to access both the first address space of the first VM and the second address space of the second VM; and
execute the command as part of serving the second VM, including accessing both the first address space of the first VM and the second address space of the second VM, and
wherein the second VM is arranged to (i) construct the packets including obtaining portions of the packets from the first address space of the first VM, and (ii) transmit the packets to the network via the physical network adapter using the second network association.