Pseudo-Network Drivers and Virtual Networks

Bellovin, Steven Michael

Many operating systems have long had pseudo-teletypes, inter-process communication channels that provide terminal semantics on one end, and a smart server program on the other. We describe an analogous concept, pseudo-network drivers. One end of the driver appears to be a real network device, with the appropriate interface and semantics; data written to it goes to a program, however, rather than to a physical medium. Using this and some auxiliary mechanisms, we present a variety of applications, including system test, network monitoring, dial-up TCP/IP, and ways to both improve and subvert network security. Most notably, we show how pseudo-network devices can be used to create virtual networks and to provide encrypted communications capability. We describe two implementations, one using a conventional driver for socket-based systems, and one using stream pipes for System V.



More About This Work

Academic Units
Computer Science
Published Here
June 29, 2010


Proceedings of the Winter 1990 USENIX Conference: January 22-January 26, 1990, Washington, D.C., USA (Berkeley, Calif.: USENIX Association, 1990), pp. 229-244.