Multi-host Ethernet Controller with Integrated L2 Switch
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional Ethernet controllers are inefficient in multi-host systems, leading to high latency, increased cost, and power consumption due to sequential peripheral access or the need for dedicated peripherals for each host, and existing virtualization solutions fail to effectively manage network sharing among multiple hosts.
Innovation Solution
A multi-host gigabit Ethernet controller with an integrated Layer 2 switch allows concurrent access to a physical network port by multiple hosts, using a common MAC layer and dedicated registers for each host, and employs a Virtualization Engine to program common parameters like Link Speed and Inter Packet Gap, enabling independent data packet switching and scheduling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by stationary object
If multiple hosts share a single Ethernet controller sequentially, then device cost and power consumption are reduced, but system performance deteriorates due to high latency
Solution Approach 1:
The Ethernet controller is segmented into multiple independent host modules, each with dedicated registers and processing logic for a specific host. This allows concurrent operation for multiple hosts while sharing a single physical network interface, resolving the contradiction by enabling parallel processing without requiring multiple dedicated controllers
Solution Approach 2:
The patent introduces a virtualization layer that adds a dimensional abstraction between physical hardware and logical host access. This virtualization dimension enables multiple hosts to simultaneously access the shared Ethernet controller through virtualized interfaces, improving performance without increasing physical hardware complexity
2Productivity
If dedicated Ethernet controllers are provided for each host, then system performance is improved through concurrent access, but device cost increases
Solution Approach 1:
A single Ethernet controller is designed with universal functionality to serve multiple hosts simultaneously. The controller incorporates multi-host support capabilities including shared register spaces, virtualization engine, and round-robin scheduling logic, allowing one device to perform the work of multiple dedicated controllers
Solution Approach 2:
Multiple host interfaces and controllers are merged into a single integrated Ethernet controller unit. The patent combines multiple MAC layers, register sets, and processing logic into one unified device that manages concurrent host access through an integrated switch and virtualization layer, reducing overall system complexity and cost
3Adaptability or versatility
If software-based virtualization is used for multi-host access, then hardware sharing is enabled, but latency increases due to software processing overhead
Solution Approach 1:
An integrated Layer 2 switch acts as an intermediary between the Ethernet controller and multiple host modules. This switch operates at the data link layer to forward packets directly between hosts and network interface, eliminating software-based virtualization overhead and reducing latency while maintaining hardware sharing capabilities
Solution Approach 2:
The patent replaces software-based virtualization mechanisms with hardware-based switching at the Layer 2 level. Instead of using software processes to manage host access, the system uses dedicated hardware switching logic and round-robin scheduling circuits to route packets, significantly reducing processing latency while enabling multi-host access
Data Source
AI summary
Described herein is a system having a multi-host Ethernet controller (102) configured to provide communication and control between two or more independent host processors (104) and a network device. In one implementation, the multi host Ethernet controller (102), having an integrated L2 switch (110) to enable a plurality of independent host systems to access same physical gigabit network port concurrently. Each host processor (104) sees the controller as PCI based independent network controller and accesses the controller using its own mini-port driver. The common programming parameters such as Link Speed or Inter Packet Gap (IPG) are programmed by a virtualization engine. Packets from network (LAN) are switched based on MAC destination address and sent to corresponding host based on MAC destination address. Packets from each host processor (104) are forwarded to network interface or other host processor (104) based on MAC destination address.


