UEFI Network Packet Filtering for Server Time-Outs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
UEFI firmware's single-threaded network stack leads to prolonged processing times for network packets, causing network time-outs and performance issues when a computing system acts as a network server.
Innovation Solution
Implementing a network layer filter in the firmware's protocol stack that discards packets not meeting pre-defined criteria, allowing for more efficient processing and reducing time-outs by prioritizing relevant packets.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If polling mechanism is used to read network packets in single-threaded UEFI firmware, then network client operations work reasonably well, but network server operations experience extended acceptance times causing client time-outs
Solution Approach 1:
The patent applies preliminary action by implementing a packet filter at the network layer that pre-evaluates incoming packets against predefined criteria before they enter the main processing queue. This filtering occurs in advance, separating relevant packets from irrelevant ones before the single-threaded network stack processes them, thereby reducing the time packets wait in queue and preventing client time-outs while maintaining reliable network server operations
2Productivity
If all network packets are processed during each polling operation, then complete packet handling is achieved, but processing time becomes excessively long impacting network performance
Solution Approach 1:
The patent applies the extraction principle by removing irrelevant packets from the processing stream through a network layer filter. The filter extracts only packets matching predefined criteria (such as destination MAC address, IP address, or protocol type) and passes them to the network stack for processing. This extraction eliminates unnecessary processing of irrelevant packets, significantly reducing polling operation duration while maintaining high packet processing throughput for relevant traffic
Data Source
AI summary
A firmware, such as a unified extensible firmware interface (UEFI)-compliant firmware, provides a network protocol stack in a pre-boot execution environment. A network layer in the network protocol stack receives network packets. A firmware driver executing in the network layer determines whether individual network packets received at the network layer meet one or more pre-defined criteria. If individual network packets meet the pre-defined criteria, the firmware driver provides the network packets to a transport layer in the network protocol stack. If, however, the network packets received at the network layer do not meet the pre-defined criteria, the firmware driver discards the individual network packets.


