Linux STREAMS (LiS)
Introduction
LiS is a software package that comprises an implementation of SVR4 compatible STREAMS for Linux. It consists of a loadable module for the Linux kernel. LiS installs in any directory on your system, not in the kernel source tree. When it is built it is possible to link pre-compiled STREAMS drivers with it so that when LiS loads into the kernel it brings "application" drivers with it. Alternatively, STREAMS drivers can be coded as loadable Linux drivers which depend upon LiS. In this way, individual STREAMS drivers can be loaded and unloaded dynamically.
LiS includes two adapter drivers to assist in interfacing STREAMS drivers to the Linux Kernel's TCP/IP protocols. One driver (ip_strm_mod) acts as an IP interface driver. It fits below IP using standard ifconfig procedures. It, in turn, communicates downstream with any STREAMS driver using the DLPI protocol in a fashion similar to the manner in which IP on Unix systems interfaces to lower interface drivers. This allows a DLPI STREAMS driver to act as an interface driver to Linux TCP/IP.
A second driver (ldl) sits on top of any existing Linux IP interface driver and presents a DLPI interface to STREAMS drivers above. This allows any STREAMS driver that communicates downstream using DLPI to utilize the services of existing Linux drivers for ethernet, token ring, etc.
LiS is licensed using the GNU General Public Library License (except for ldl, which is licensed under the standard GNU Public License). This means that you can link proprietary STREAMS drivers with LiS and load the entirety into the Linux kernel without violating license restrictions. This licensing arrangement is intended to encourage commercial software vendors to port STREAMS based driver packages to Linux.
Contents
Compatibility considerations for previous users of LiS concerning changes in the new version of the code. |
||
How and where to download LiS |
||
How to install LiS |
||
How to remove LiS |
||
How to load LiS |
||
How to code STREAMS drivers for LiS |
||
How to configure STREAMS drivers for LiS |
||
How to install pre-compiled drivers in LiS |
||
How to code STREAMS applications |
||
TCP/IP |
How to interface to the Linux TCP/IP stack |
|
MAC Driver Interface |
How to interface to Linux MAC drivers |
|
Links to STREAMS documentation online and ordering information for manuals. |
Authors
Linux STREAMS, termed LiS, is an SVR4 compatible STREAMS executive which runs in the Linux Kernel as a loadable module. It is the product of a joint effort among the following authors.
Francisco J. Ballesteros |
|
Denis Froschauer |
|
David Grothe |
|
Ole Husgaard |
|
Graham Wheeler |
David Grothe is the principal active supporter of LiS, so please direct questions to him rather than to the others. Ole Husgaard is responsible for the ldl driver and has contributed to the kerneld support and installation procedures. Francisco Ballesteros still maintains an LiS mailing list. You can mail to the group by addressing email to linux-streams@gsyc.inf.uc3m.es. You can view all the LiS discussion traffic at the following web site.