Network Aware Virtual Machines for Packet Routing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional network devices face limitations in efficiently managing and routing packets based on varying service requirements, leading to potential traffic blocking and suboptimal performance, especially in packet-switched networks where different applications running on virtual machines have distinct latency, reliability, and priority needs.
Innovation Solution
The implementation of network aware virtual machines that encode routing parameters within packets, allowing network devices to determine the best path and service handling based on marks indicating service class, latency, and other requirements, using protocols like IEEE 802.1aq, TRILL, and AVB for optimized routing and resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If packet switched networks are used to improve network flexibility and performance, then network adaptability is improved, but packet routing control precision deteriorates leading to traffic blocking
Solution Approach 1:
The virtual machine encodes routing parameters and service requirements into packet marks before transmission. This preliminary marking action enables network devices to pre-determine optimal routing paths based on encoded information about latency requirements, reliability needs, and service class, preventing traffic blocking before it occurs rather than reacting after blocking happens.
Solution Approach 2:
The system changes packet parameters by encoding routing parameters, service class, latency requirements, and reliability information into the packet marks. This parameter encoding transforms standard packets into enriched data structures that carry detailed service requirements, enabling precise routing control while maintaining packet switched network flexibility.
2Device complexity
If conventional packet routing is used, then network simplicity is maintained, but service requirement differentiation deteriorates
Solution Approach 1:
The routing parameters and service requirements are nested within the existing packet structure as marks or tags. This nesting approach allows the network to maintain simple packet switched architecture while embedding complex service differentiation capabilities within the packet data, enabling both simplicity and advanced service requirements to coexist.
Solution Approach 2:
The packet mark serves as an intermediary element that bridges the gap between simple packet switching and complex service requirements. This intermediary carries encoded routing information and service class data, allowing network devices to differentiate services without fundamentally changing the packet switched network architecture.
3Device complexity
If all packets are treated equally in packet switched networks, then network implementation simplicity is maintained, but quality of service differentiation deteriorates
Solution Approach 1:
Instead of treating all packets uniformly, the system applies local quality differentiation by encoding service-specific parameters into packet marks. Each packet type receives customized marks reflecting its specific latency, reliability, and service class requirements, enabling quality of service differentiation while maintaining overall network implementation simplicity through a standardized marking approach.
Data Source
AI summary
Network Interface Controller (NIC) logic may receive a packet comprising a routing parameter indicating a service or cost to be utilized in processing the packet. The NIC logic may determine a selected virtual machine (VM) running on a network device to process the packet according to the routing parameter. The NIC logic may communicate the packet across a network after the packet has been processed by the selected virtual VM. Or, the NIC logic may initialize a VM in the network device to process the packet according to the routing parameter. The NIC logic may receive multiple packets and determine a second selected VM or initialize a second VM to process the multiple packets according to the respective routing parameters of the multiple packets. The routing parameters may indicate device capabilities, service class, quality measurements, latency, power usage or any combination thereof.


