Skip to Main Content
Gigabit Ethernet is now finding wider deployment in computer networks. The conventional operating system suffers from the receive livelock problem in Gigabit Ethernet networks. The device hybrid (interrupt + polling) scheme has been widely used to overcome this problem in current operating systems such as GNU/Linux and FreeBSD. However, controlling the polling time without regard to the system state can degrade the ability of a hybrid scheme in some situations. This paper focuses on the system performance of the operating systems that employ the device hybrid scheme in kernel space. A queue-based adaptive polling (QAPolling) scheme is introduced that: (1) significantly improves system goodput and reduces packet loss over a wide range of computer hardware configurations and traffic conditions, (2) is scalable and easily deployed. The key idea behind QAPolling is to adjust the polling time adaptively according to the information of the application receiving queues, which are in kernel space and change with the system state, instead of the packet arrival rate. We validate our design through experimental results in Gigabit Ethernet networks.