A system, comprising: a plurality of media access control, MAC, controllers configured to provide a MAC port layer controlling exchange of information over a data link, a plurality of virtual machine, VM, bridge blocks configured to provide a MAC frame layer interfacing with System-on-Chip, SoC, virtual machines, VMs, an Ethernet port configured to receive from a host programming or configuration information for the system, a local memory controller configured to facilitate said MAC controllers, said VM bridge blocks and said Ethernet port in co-operating with a local memory, and queue handlers (1006A, 1006B and 1006C) configured to provide queue management for said MAC controllers, said VM bridge blocks and said Ethernet port during co-operation of said MAC controllers, said VM bridge blocks and said Ethernet port with said local memory via the local memory controller, wherein the virtual machine, VM, bridge blocks configured to implement an interface to support internal virtual machine ports have the following features: virtual machine isolation by virtual machine identifier, VMID, attributes, to grant access to the memory regions allocated for the VM ports, and virtual machine receiver, VMB-RX, embedded direct memory access, DMA, to support multi-channel operation via multi frame buffers in system memory linked to multiple DMA descriptors or multi-frame operation linked to a single DMA descriptor for data flow transfer, and virtual machine transmitter, VMB-TX, direct memory access, DMA, to support multi-channel operation via multi frame buffers in system memory linked to multiple DMA descriptors or multi-frame operation linked to a single DMA descriptor and dynamic transfer. a plurality of media access control, MAC, controllers configured to provide a MAC port layer controlling exchange of information over a data link, a plurality of virtual machine, VM, bridge blocks configured to provide a MAC frame layer interfacing with System-on-Chip, SoC, virtual machines, VMs, an Ethernet port configured to receive from a host programming or configuration information for the system, a local memory controller configured to facilitate said MAC controllers, said VM bridge blocks and said Ethernet port in co-operating with a local memory, and queue handlers (1006A, 1006B and 1006C) configured to provide queue management for said MAC controllers, said VM bridge blocks and said Ethernet port during co-operation of said MAC controllers, said VM bridge blocks and said Ethernet port with said local memory via the local memory controller, wherein the virtual machine, VM, bridge blocks configured to implement an interface to support internal virtual machine ports have the following features: virtual machine isolation by virtual machine identifier, VMID, attributes, to grant access to the memory regions allocated for the VM ports, and virtual machine receiver, VMB-RX, embedded direct memory access, DMA, to support multi-channel operation via multi frame buffers in system memory linked to multiple DMA descriptors or multi-frame operation linked to a single DMA descriptor for data flow transfer, and virtual machine transmitter, VMB-TX, direct memory access, DMA, to support multi-channel operation via multi frame buffers in system memory linked to multiple DMA descriptors or multi-frame operation linked to a single DMA descriptor and dynamic transfer. virtual machine isolation by virtual machine identifier, VMID, attributes, to grant access to the memory regions allocated for the VM ports, and virtual machine receiver, VMB-RX, embedded direct memory access, DMA, to support multi-channel operation via multi frame buffers in system memory linked to multiple DMA descriptors or multi-frame operation linked to a single DMA descriptor for data flow transfer, and virtual machine transmitter, VMB-TX, direct memory access, DMA, to support multi-channel operation via multi frame buffers in system memory linked to multiple DMA descriptors or multi-frame operation linked to a single DMA descriptor and dynamic transfer.