What is the difference between PPP and SLIP.
The first thing you'll notice is that their RFCs are numbered
differently - 1055 vs 1171 :-) Also, while SLIP describes itself as a
"non-standard", PPP is the product of the Internet Engineering Task
Force PPP Working Group and is on track to being a "blessed" Internet
Standard.
Read the RFCs for a description of their respective protocols. SLIP
is a starkly minimalist approach, only suggesting what byte to prepend
and perhaps append to each frame sent across the wire. PPP addresses
a lot of other issues too.
I understand that PPP is suppose to be much better, in what ways?
Read the Deficiencies section of RFC-1055 and the Introduction of
RFC-1171 for a definitive discussion. SLIP was a "first cut", from
which the IETF PPP Working Group learned plenty. PPP is a more
general solution to the problem.
The most obvious differences that I can think of off the top of my
head:
PPP incorporates FCS error checking. SLIP expects higher
levels of the protocol stack to worry about that sort of
stuff.
PPP allows different implementations to agree on a set of
mutually-acceptable features (what protocol family to carry,
various compression techniques, frame size (MTU/MRU),
addresses of both ends, etc.) at connection time. SLIP only
carries IP, needs to know in advance whether to use TCP header
compression and what frame size to use, and needs to know in
advance what addresses are at each end of the link.
PPP can negotiate a truly huge frame size, though a MTU of
1500 seems to be a common compromise between batch throughput
and interactive responsiveness. SLIP can send any size that
both implementations can support, and while the RFC suggests
1006, many (most?) use 256.
PPP can be used in either asynchronous or synchronous
environments. It has become the standard protocol for
high-speed routers to talk over leased lines, at speeds up to
T1. This allows people to build networks using routers from
different vendors, and expect them to all work together.
If you are calling a site using SLIP, can you change to PPP without
the other end changing?
No, the two use different framing techniques. PPP is not upward
compatible from SLIP, though some hosts or routers may contain
implementations of both.