Differences Between SLIP and PPP

While we've said that SLIP and PPP are largely similar, there are some key differences. PPP is a newer protocol, better designed, and more acceptable to the sort of people who like to standardize protocol specifications. More information about PPP can be found in the PPP FAQ.

Multi-Protocols

PPP has some additional benefits. Unlike SLIP (which can only transport TCP/IP traffic), PPP is a multi-protocol transport mechanism. This means that PPP not only transports TCP/IP traffic, but can also transport IPX and Appletalk traffic, to name just a few. Better yet, PPP lets you transport all of these protocols at the same time - on the same connection.

This is often not a concern for most users since their purpose of either using SLIP or PPP is to connect to the internet and the internet uses TCP/IP only. Therefore, there is no need to transport other protocols.

Configuration Negotiation

With SLIP, you have to know the IP address assigned to you by your service provider. You also need to know the IP address of the remote system you will be dialing into. If IP addresses are dynamically assigned (depends on your service provider), your SLIP software needs to be able to pick up the IP assignments automatically failing which you have to setup them up manually. You may also need to configure such details as MTU (maximum transmission unit), MRU (maximum receive unit), use of VJ compression header (ie., CSLIP), etc. All these can get confusing pretty fast.

PPP addresses this problem by negotiating configuration parameters at the start of the connection. This can greatly simplify the configuration of your PPP connection.

Automatic Login

Most SLIP/PPP software can dial-up and automatically login for you. However, they often depend on your service provider's system sending out standard prompts (eg, "login:" to get the login name and "password:" to get the password). If they are any way non-standard, you either need to write a script to automate the login process yourself or login manually in the terminal emulation mode of your SLIP/PPP software.

PPP provides two methods with which logins can be automated - PAP (Password Authentication Protocol) and CHAP (Challenge-Handshake Authentication Protocol). Both provide the means for your system to automatically send your login userid/password information to the remote system.

Putting it all together...

The most significant advantage PPP can offer is the automatic login and configuration negotiation. With these features, your PPP software only needs to know your login userid/password and the telephone number of your service provider. The software can then dial-up into your service provider and figure out everything else on its own.

At this present point in time, PPP is generally not as widely available as SLIP. It should gain more acceptance in the time to come, but in the meanwhile, don't worry if you can only use SLIP. Once connected, PPP doesn't give you more of the internet than SLIP already can.

One last note: Some users believe SLIP is faster because the protocol format calls for a packet size that is 3 bytes smaller than a PPP packet. In practice, this difference is too small to be of any significance. See Morning Star's write-up on SLIP vs PPP Performance Comparison.

[Previous] [Next]