Acknowledgements
Citations
591 | U-net: A user-level network interface for parallel and distributed computing
- Eicken, Basu, et al.
- 1995
(Show Context)
Citation Context ...ation-intensive applications depend on a 15slow round-trip time. The driver’s interface and the kernel’s protocol stack are tightly integrated which makes an implementation of new protocols difficult =-=[Eicken95]-=-. By placing the entire protocol stack at user-level, they remove the kernel along with its overhead and specific semantics completely from the critical path. Thereby, unnecessary software layers, cop... |
331 | Fbufs: a high-bandwidth cross-domain transfer facility
- Druschel, Peterson
- 1993
(Show Context)
Citation Context ...rol to the complete protection of all data and control. 21sAs we will detail later, our design chooses to weaken the protection so that only the buffer data itself is unprotected. Fbufs/IO-Lite Fbufs =-=[Druschel93]-=- is an architecture to allow high-bandwidth communication across protection domains. The architecture allows the application to make an explicit choice about the level of protection of the communicate... |
197 |
practical nonblocking and blocking concurrent queue algorithms
- Simple
- 1996
(Show Context)
Citation Context ... structure. Transfer of data dequeue() enqueue() notify flag Figure 4.1 The communication interface Transfer of control Notification IPC For this task, two algorithms are described in the literature. =-=[Michael96]-=- presents a queue implementation based on a list structure which is lock-free and nonblocking. It uses a compare-and-exchange operation which is available on many processor architectures. Tsigas and Z... |
153 | Protocol service decomposition for high-performance networking
- Maeda, Bershad
- 1993
(Show Context)
Citation Context ...network subsystem into user-level servers can be done while maintaining a competitive performance in terms of throughput and latency. Processor utilization was not examined. User-level TCP/IP on Mach =-=[Maeda93]-=- argue that the application’s interface to the network can be separated from the interface to the operating system and thus unnecessary kernel entries, copies and software layers can be avoided in the... |
150 | Implementing network protocols at user level
- Thekkath, Nguyen, et al.
- 1993
(Show Context)
Citation Context ...tities which can be accessed with clean interfaces. Apart from the work done with Sawmill Linux, there are few other multi-server projects that tackle the issues of I/O. User-level networking on Mach =-=[Thekkath93]-=- writes that “considerations of code maintenance, ease of debugging, customization, and the existence of multiple protocols argue for separating the implementations [of network software] into more man... |
56 |
Experiences implementing a high performance tcp in userspace
- Edwards, Muir
- 1995
(Show Context)
Citation Context ... packet in free buffer there. The user process is notified via an interrupt. They achieve both a minimal latency and maximum network bandwidth with small message sizes. User-level networking on HP-UX =-=[Edwards95]-=- designed a user-level network subsystem for custom ATM gigabit cards on top of HP-UX to be able to access the NIC from user level with high TCP throughput. As TCP is not easy to implement, they moved... |
42 | A simple, fast and scalable non-blocking concurrent FIFO queue for shared memory multiprocessor systems,” in
- Tsigas, Zhang
- 2001
(Show Context)
Citation Context ...ents a queue implementation based on a list structure which is lock-free and nonblocking. It uses a compare-and-exchange operation which is available on many processor architectures. Tsigas and Zhang =-=[Tsigas00]-=- have a non-blocking FIFO queue which works on a ring buffer data structure. It uses the compare-andexchange and outperforms every other FIFO algorithm including spinlock basedones under any level of ... |
9 | User-Level Protocol Servers with Kernel-Level Performance
- Brustoloni, Steenkiste, et al.
- 1998
(Show Context)
Citation Context ...hroughput and latency when compared to a Mach and Ultrix in-kernel implementation and a mach-based Unix single-server system. Processor utilization was not examined. I/O-oriented IPC I/O-oriented IPC =-=[Brustoloni98]-=- is a communication facility between Mach’s kernel-level drivers and user-level protocol servers. In this work, they want to preserve BSD socket copy semantics and argue that it is not always possible... |
9 |
Beng hong Lim. Virtualizing I/O devices on VMware Workstation’s hosted Virtual Machine Monitor
- Sugerman, Venkitachalam
- 2002
(Show Context)
Citation Context ...te protection domains. They also have to find efficient and clean interfaces for buffer transfer and reception notification between them and deal with the problem of domain translation. VMWare VMware =-=[Sugerman01]-=- is a virtual machine monitor which emulates a complete IA-32 machine including a virtual network interface controller (NIC). The virtual NIC is connected to an virtual internal network inside the vir... |
7 |
Thorsten von Eicken. Low-latency communication over fast ethernet
- Welsh, Basu
- 1996
(Show Context)
Citation Context ...-resident pages are signaled to the NIC immediately so that it can serve other clients while the kernel loads the page’s contents from disk. A U-Net implementation for standard fast-ethernet hardware =-=[Welsh96]-=- uses a pinned shared memory region for the whole connection endpoint. The user process uses a fast trap to the kernel to notify the kernel to process the send queue. This trap is said to need about 1... |
5 | Efficient sleep/wake-up protocols for user-level ipc - Unrau - 1998 |
2 |
IO-Lite: A Unified I/O Buffering and Caching System
- Zwaenepoel
- 2000
(Show Context)
Citation Context ...hen length of this buffer data and a type field. The buffer data itself can be located just after the mbuf structure when it is small enough or be located in a separate block of memory. IOLite IOLite =-=[Pai99]-=- separates buffer data from buffer structure. Buffer data is contained in immutable pages. Buffers are logical objects, which consist of an ordered set of <pointer, length> pairs. These pairs point in... |
2 |
Anindya Basu and Thorsten von Eicken. Incorporating memory management into user-level network interfaces
- Welsh
- 1997
(Show Context)
Citation Context ...The direct-access U-Net architecture uses a custom software TLB, which is implemented in the NIC’s firmware to provide virtual to physical address translation, to pin memory and to handle page faults =-=[Welsh97]-=-. TLB misses are handled by the kernel through a translation-request queue, whose requests include the page to unpin instead. For resident pages, the kernel pins the page and answers with the correspo... |
1 |
Performance Analysis of a Multiserver Network System. Internal Report
- Hinds, Gefflaut, et al.
(Show Context)
Citation Context ...and show that these countermeasures are sufficient. 11s2 Related Work 2.1 The network subsystem of Sawmill Linux This thesis is based on work done at IBM Research under the project name Sawmill Linux =-=[Hinds]-=-. Sawmill Linux is a multi-server operating system that consists of a set of servers that provide basic services like memory management and naming, and a set of emulation libraries that allow subsyste... |
1 |
The Design and Implementation of th 4.4BSD Operating System
- Quarterman
- 1996
(Show Context)
Citation Context ...ng with a second pointer that point to actual packet data of a layer. These second pointer is used to allow each layer to put packet data before or after data of an upper layer. BSD model – mbufs BSD =-=[McKusick96]-=- Unices use a buffer format which is called mbufs. Mbufs is a scatter-gather buffer format, a logical buffer there consists of a linked list of single mbuf structures. struct mbuf { m_next m_next_pkt ... |