This article contains information describing technical aspects and theusage of the SLIP and PPP line-control protocols with Dial-Up Networking.
Microsoft's Windows 95 implementation of the SLIP and PPP protocols isbased on the standards set forth by the Internet Engineering Task Force(IETF). These standards are contained in technical documents calledRequests For Comments (RFC) and are widely available on the Internet. Byadhering closely to these standards, connectivity to other SLIP or PPPservers similarly designed is virtually guaranteed.
Brief outlines of the protocols themselves are provided below, withinformation pertinent to their operation with Windows 95 following.
If more information on either protocol is required, the following RFCsare good sources of information:
RFC-1055: SLIP Implementation RFC-1661: PPP Implementation RFC-1700: Internet Assigned Numbers
Serial Line Internet Protocol - SLIP
SLIP can be defined as an encapsulation method for transmitting IP packetsover a serial connection. From its creation until the present time, therecommended method for implementing SLIP has remained a de facto standard.
Special Characters END (C0h,192d) Signals the end of a packet's transmission. ESC (DBh,219d) Special character used when characters duplicate the END character. NOTE: If a data byte has the same value as the END character, a two-byte sequence of ESC and DCh is sent instead. If a data byte is the same as an ESC character, a two-byte sequence of ESC and DDh is sent instead.
IP (headers and data) + transport protocol headers - framing characters <= 1006 bytes
SLIP does not have the ability to transmit more than one network protocolat a time. Its architecture does not provide a method of differentiatingbetween network protocols. TCP/IP is the protocol that is typically usedwith SLIP, which made it ideal for connecting a remote computer to theInternet using a dial-up SLIP server. However, because TCP/IP is the onlynetwork protocol SLIP can carry makes it of limited use in otherapplications.
SLIP also provides no mechanisms for error correction. It relies onthe hardware used to make the connection, and the error-correctioncapabilities of TCP/IP to determine if a packet's information is badand needs to be resent.
There are no compression algorithms built into SLIP. There are variants ofSLIP (for example, CSLIP, or Compressed SLIP) that provide some degree ofstreamlining, but the majority of SLIP connections do not use compression.
Point to Point Protocol - PPP
PPP can be defined as an encapsulation method for transmitting multiple-protocol datagrams over point-to-point links. It is more robust andversatile than its predecessor, SLIP. PPP provides a data-link layer,the Link Control Protocol (LCP), for setting up, configuring, andmonitoring the connection to ensure that the connection remains reliable.In addition, by using Network Control Protocols (NCPs), different network-layer protocols can be used dynamically.
Protocol Field (xxxxxxxx,yyyyyyyy) The Protocol field is one or two octets, and its value identifies the datagram encapsulated in the Information field of the packet. The field is transmitted and received most- significant-octet first. Information Field (0 - n[xxxxxxxx]) The Information field is zero or more octets. The Information field contains the datagram for the protocol specified in the Protocol field. The maximum length for the Information field, including padding, but not including the Protocol field, is termed the Maximum Receive Unit (MRU), which defaults to 1500 octets. By negotiation, consenting PPP implementations may use other values for the MRU. Padding (0 - n[xxxxxxxx]) On transmission, the Information field may be padded with an arbitrary number of octets up to the MRU. It is the responsibility of each protocol to distinguish padding octets from real information.
Phase I Each side exchanges LCP packets that test the integrity of the link and configure the operational parameters the connection will use at the data-link layer. Phase II Each side negotiates for and participates in user authentication. This phase is only a suggestion to the standard implementation of a point-to-point protocol, and as such, may not be included in all implementations. Phase III Each side negotiates for the set of NCPs that will be used. For each different type of datagram to be exchanged (IPX, IP, and so on), an NCP must be configured and operational. This provides the method for transmission of network-layer information.
The most important thing to remember about PPP is that it can supportmultiple network protocols simultaneously, or any individual protocol byitself. In addition, it provides error correction and compression of avery sophisticated nature. While it has more overhead and additionalinformation, the compression and error control make PPP much faster thanSLIP and far more reliable.
Using SLIP and PPP with Windows 95
Windows 95 automatically supports dialing into servers that allow PPP,RAS, or NRN (NetWare Connect) connections. SLIP support must be installedseparately. If you are using the CD-ROM version of Windows 95, you caninstall SLIP support (along with scripting support) by following thesesteps:
- In Control Panel, double-click Add/Remove Programs.
- On the Windows Setup tab, click Have Disk.
- In the Copy Manufacturer's Files From box, enter the following line and then click OK
<drive>:\admin\apptools\dscript where <drive> is the CD-ROM drive containing the Windows 95 CD-ROM.
- Click OK.
- Click "SLIP and Scripting for Dial-Up Networking."
- Click Install.
After you install SLIP support, SLIP and CSLIP are available as additionalserver types when you specify the type of server being dialed into.
NOTE: If you do not have the CD-ROM version of Windows 95, see thefollowing articles in the Microsoft Knowledge Base for information aboutobtaining SLIP support:
CD-ROM Extras for Microsoft Windows 95 Upgrade146238
Microsoft Windows 95 Service Pack 1 Admin.doc File (3 of 3)
When you are using SLIP, you are limited to the use of the TCP/IPprotocol. In addition, in the Dial-Up Networking connectoid, the EnableSoftware Compression and Require Encrypted Password options will not beavailable. These restrictions are limitations of the SLIP protocol, asnoted previously.
When you are using PPP, you can use the full flexibility of Dial-UpNetworking. You can select NetBEUI, IPX/SPX, TCP/IP, or any combinationthereof. The compression and password-encryption options are alsoavailable. However, if the dial-up server does not support either of theseoptions, they will not be used. The use of these options is negotiatedduring the second phase of the PPP connection.
With the addition of Microsoft Plus! for Windows 95, a computer runningWindows 95 can be used as a dial-up server. However, incoming SLIPconnections are not supported, as Windows 95 is not designed to routeTCP/IP packets. Incoming PPP connections using NetBEUI or IPX/SPX aresupported, and offer the remote computer access to the host's resources.If the host computer is connected to a LAN, the remote computer can gainaccess to network resources, and even be validated by a Microsoft WindowsNT or Novell NetWare server.
For information about how to obtain RFC documents, please see thefollowing article in the Microsoft Knowledge Base:
How to Obtain Request for Comments Documents from the Internet