Network Device Driver Architecture

Network Device Driver Architecture - DMD: Network Device...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
DMD: Network Device Driver Architecture for high-performance systems Mario Andjelic Mario.Andielic@uab.ericsson.se System Interconnect & Control Ericsson AB. Stockholm, Sweden Abstract-Communication pattern in cluster internetworking consists of high frequency of small messages. Overhead for this type of communication exhibited by network subsystems of standard operating systems is bottleneck, thus preventing application from full utilization of high-performance communication technologies. This paper describes behavior of standard network subsystems and describes novelty network device driver architecture, fully transparent to the rest of system that addresses extreme performance requirement by using of-the-shelf components (Gigabit Ethernet). The result of this prototype shows significant performance gain compared with standard network subsystems. Keywords: Network Device Driver, Operating System, Network Interface Card, Dual Mode Driver, High- performance computing, Gigabit Ethernet 1. INTRODUCTION A current trend in development of new telecommunication systems is the usage of of-the-shelf hardware and software components. Modern telecomm platform is built on top of commercial microprocessors and standard operating systems (OS). Often in-house middleware provides needed telecomm-grade functionality. Middleware includes functionality for error recovery, intemetworking, logging, operation & maintenance, scheduling, etc. The focus of this paper is the architecture and performance of network subsystems found in standard operating system. We show that performance overhead caused by its architecture and execution model is too significant when communication pattern is high frequency of small messages. We describe main causes ofoverhead and propose new network subsystem architecture that eliminates overhead for cluster intemetworking. If. STANDARDNETWORK SUBSYSTEM Execution in standard operating systems takes places in two different modes: kernel mode, and user mode. Operating system executes in kernel mode where all functionality share the same memory address space. Memory corruption caused by one of the task in kernel mode can bring (and usually do) the whole system down. Application software runs in user mode in which every process executes in its own memory address space, and one corrupted user space process will not affect the others. Network subsystems consist of protocols and network device drivers (NDD) and run in kernel space. Protocols typically include IP suite of protocols (TCP, UDP, FTP, ARP, etc.), but often cluster application need protocol suited for cluster intemetworking with functionality for transparent handling of multiple redundant paths with transparent link fail-over functionality. These protocols are usually products of in-house development, and executing in kernel space together with OS vendor supplied protocols. Figure I shows standard network subsystem consisting of
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 6

Network Device Driver Architecture - DMD: Network Device...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online