msocket: multiple stack support for the berkeley socket API
暂无分享,去创建一个
The de-facto standard for network programming, the Berkeley socket API, supports several protocol families. Unfortunately, it has a significant limitation in only allowing a single implementation for each supported protocol family. Hence, using Berkeley sockets, it is impossible to access multiple distinct networking stacks for the same protocol, e.g. multiple TCP/IP stacks. This paper defines, msocket, an extension to the Berkeley socket API which overcomes this limitation. msocket has been implemented as a feature of the View-OS project. Finally, we illustrate the utility and effectiveness of our extended API by providing some examples of its use.
[1] Dan Hildebrand,et al. An Architectural Overview of QNX , 1992, USENIX Workshop on Microkernels and Other Kernel Architectures.
[2] Dror Goldenberg,et al. Zero copy sockets direct protocol over infiniband-preliminary implementation and performance analysis , 2005, 13th Symposium on High Performance Interconnects (HOTI'05).
[3] Renzo Davoli,et al. Internet of Threads: Processes as Internet Nodes , 2013, ICIW 2013.
[4] Michael Goldweber,et al. View-OS: A New Unifying Approach Against the Global View Assumption , 2008, ICCS.