Simple PPP user's guide
by John Nagle
Alpha test version 1.4.5
Quick Start
- Download Alpha Test Version 1.4.5 of Simple PPP by clicking here
.
- Make sure you have MacTCP 2.0.6 installed, and do not have MacPPP, FreePPP, or Open
Transport installed.
- Put Simple PPP Extension
in the Extensions folder.
- Put Simple PPP Control
in the Control Panels folder, or the Apple Menu Items folder, as desired.
- Restart your machine.
- Open the MacTCP control panel, and choose "Simple PPP". Set up MacTCP as you would
for MacPPP or FreePPP.
- Launch the Simple PPP control panel and follow the instructions there.
If you need more detailed instructions than this, please wait for the general release.
Thanks.
Using Simple PPP
Once installed and set up, Simple PPP lives quietly in the background, waiting for
an application to start using the Internet. When an Internet application, such as
Netscape or Eudora, tries to use the Internet, it opens MacTCP and tries to send
something. Simple PPP then dials up a connection.
While this is happening, the application waits for the connection to come up. Unlike
MacTCP, though, Simple PPP doesn't lock up the whole system while this is going on.
You can switch to other applications while Simple PPP is dialing. You can also let
background applications, like Eudora, dial up the Internet periodically without interfering
with your regular work. Setting Eudora to fetch mail every half hour works quite
well. Eudora and Simple PPP do their work without interfering with yours. Only if
there's new mail does Eudora ask for your attention.
When Simple PPP encounters a problem dialing up a connection, it tries to deal with
the problem automatically, by hanging up the phone and dialing up again. It will
redial for several minutes before giving up. When a connection is broken for some
reason, and you were actively using it, Simple PPP will automatically dial it up again. Often,
(but not always), you can recover downloads and uploads that were in progress when
the connection was broken.
A good way to use Simple PPP is set its preferences so that it hangs up after five
or ten minutes of no network activity. The next time you need to use the network,
it will come up automatically. Netscape is especially effective in this mode; you
can stay in Netscape, let the connection time out and drop while you're not actively browsing,
and have the connection come back up when you click on something that needs to be
fetched from the net.
All this connecting and disconnecting works best if you have a service provider that
answers and connects quickly when you call them. If you get lots of busy signals
from your service provider, Simple PPP will help you get through them by redialing,
but you still can't use the network until you get through.
One alternative to dialing up via phone is the Ricochet wireless modem service from
Metricom.Only a few areas of the US have this service, which provides flat-rate connections
to the Internet via radio modem. Silicon Valley is one of these areas. You typically get a data rate equivalent to 10 to 15Kb/sec, which isn't all that fast, but
you never get a busy signal. Simple PPP works very well with Ricochet; the buffering
has been tuned for good performance over their radio connections.
The new Simple PPP control application
This is Simple PPP's face to the world:
- One-button interface. The button shows "Connect", "Disconnect", or "Stop", as appropriate.
- Simple PPP comes with a completely new Control Application. The user interface has
been simplified considerably. Those mysterious check boxes that nobody understood
have been replaced with a new "workarounds" set of preferences.
- If you want to see what Simple PPP is doing, just open its Control Application and
leave it open. You'll see a small window which shows Simple PPP's current status,
how long you've been connected, and the most recent error message, if any.
- This is an Application, not a Control Panel. It has regular menu-bar menus. Use the
menus to set up Simple PPP and select which server to use. The Dial
menu selects which server to use, and offers New
, Edit
, Duplicate
, and Delete
items for creating and changing server configurations. These work as you'd expect
they would.
Setting up Simple PPP
You use the New
, Edit
, or Duplicate
in the Dial
menu to edit a server configuration.
Simple PPP has a simple five-tab folder for this purpose. Here's how it works.
Here's the first folder tab, Account
. It's the most important one, and the fields are reasonably obvious. Your service
provider usually tells you what to put in the IP address
field.
The second folder tab, Modem, has the usual modem information. In future, a list of
popular modems with suggested "init strings" will be provided. For now, a good source
for modem "init string" information is in the Internet Starter Kit for Macintosh web page.
Simple PPP will run most modems happily at 57.6K. A notable exception is the Ricochet
wireless modem, which requires 38.4K. ISDN devices require higher speeds, so 115
and 230KB speeds are supported. These high speeds require the new Apple DMA serial
driver, available from Apple.
You can usually ignore the Preferences
folder tab.The only preference to tweak is how long to keep an idle connection dialed
up. Because Simple PPP is good at dialing, it's practical to use small values here.
You can still set "Forever" if you really want to. But try something like 15 minutes
for a while first and see how you like it.
- The Workarounds
folder tab is for working around server problems. If you need this, something is
broken, probably at the server end. Don't turn on anything here unless you absolutely
have to.
- Turn off all PPP authentication
disables Password Authentication Protocol and Challenge Handshake Authentication
Protocol. This is required for a few servers which require login via a script, then
try to use PPP authentication as well, and then get confused because they saw both.
- Turn off hangup detection ("Magic numbers")
turns off the mechanism by which Simple PPP detects that the connection has "looped
back", that is, everything being sent out to the modem is coming back on the input
side. If you turn this off, Simple PPP will have trouble telling if the modem has
hung up, and automatic redialing will not work correctly. If you ever really need this,
please send in a defect report. If we don't hear from anybody in the next few months,
this feature will be deleted.
- Turn off PPP's use of control characters for data
tells Simple PPP to avoid sending control characters (those in the range 0x00 to
0x1F) over the serial link. This is needed for some unusual situations involving
port selectors and other devices in the data path. Turning this on adds lots of escape
characters and slows down transmission by about 20%. No known commercial Internet service
provider requires this.
- Turn off automatic redial for Busy/No Carrier/Etc
disables automatic redial on unsuccessful dials. This can be useful if you are paying
for each call, as in hotels.
- Turn off automatic redial for dropped connections
turns off one of Simple PPP's new features, automatic recovery from dropped connections.
Note that automatic redial only happens if there's been IP traffic within the last
two minutes; this is to make recovery of file transfers and downloads possible. It
won't keep you logged in if you're not doing anything.
- Very slow server - allow 1x/2x/4x normal time
is useful if you're using a server so overloaded that Simple PPP tends to decide
the server went down when it's just being slow. If you turn this on, Simple PPP will
wait longer before giving up. For simplicity, several timers and retry limits are
affected by this one control. Turning this on will slow down recovery from real broken connections,
of course.
Simple PPP's timeout mechanism is complex, but automatic. Simple PPP always sends
PPP echo messages to the server to see if it's up. It normally sends one every three
seconds when the connection is being used, but if not much is happening, this drops
to one every fifteen seconds to keep server overhead down and reduce airtime on wireless
systems. If the server doesn't reply to one of Simple PPP's echo messages, Simple
PPP starts sending one every two seconds, in hope of getting through line noise and
such. After five missed echo replies, Simple PPP declares the link dead. You can double
this to 10 tries, or quadruple it to 20 with the Very slow server
control.
If you need any of this "workaround" stuff, you might want to switch to another Internet
service provider.
Here's the "login script" folder tab. By now, almost all Internet service providers
support direct PPP login (mainly because Windows 95 likes it that way) so this is
mostly for compatibility with older systems.
The "scripting language" is very simple. Lines with the arrow pointing to
the phone get sent
;
lines with the arrow pointing from
the phone are waited for
. If you put "\u" in a line to be sent, the user name (from the Accounts folder tab)
is sent at that point. "\p" sends the password. "\r" sends a CR, and "\d" makes output
waits one second. (This last is only valid at the end of send
lines.) This is the same as MacPPP, although MacPPP has some additional commands.
You can insert these escape sequences at the current cursor position by clicking
on the User name, Password, Return, or Delay
buttons, as required.
Case doesn't matter in lines "waited for". This gets rid of the annoying "Login" vs
"login" problem with MacPPP. Simple PPP doesn't lose the first character of some
lines, like MacPPP.
The "standard script" shown handles most UNIX-like systems. Clicking on the "standard
script" button will install this script.That script works as follows:
- Send a CR.
- Wait for "login:" (or "Login:", or "LOGIN:", etc.)
- Send the user name, followed by a CR.
- Wait for "password" (Or "Password:", etc.)
- Send the password, followed by a CR.
This handles most systems that need scripts.
Two special restrictions apply to scripts in this 1.4.2 Alpha Test version. First,
a blank line ends the script, so don't put a blank line in the middle of a script.
Second, the comparison engine in Simple PPP doesn't recognize strings with repeated
substrings at the beginning. Avoid trying to wait for something like "aa" or "abab" or "abcabc";
it won't work. Both of these restrictions will either be removed in later versions
or checked for in Simple PPP Control.
That's Simple PPP Configuration.In practice, just fill in the first two folder tabs
and leave the rest, and it will probably work.
As with MacPPP, you still have to set up MacTCP separately. Nothing new here.
When you create a new configuration, or change an existing one, "(untried)
" will appear after its name. This is a warning that it hasn't been successfully used
yet. Click on the "Connect" button to dial up the connection for the first time.
If dialup and connecting succeeds, the "(untried)
" will disappear, and thereafter automatic dialing by applications will work. This
prevents repeated autodialing of wrong numbers.
The Simple PPP Alpha Test Version
- This is an alpha test version. It has not yet been tested on a wide variety of machine
configurations. There may be problems. Please don't download this if you're clueless
about using the Internet.
- Simple PPP version 1.4.5 requires System 7.1 or better and MacTCP. Open Transport
is not supported.
- This is free software. There is no formal support and no warranty.
- Send defect reports to simpleppp-defects@animats.com.
- Alpha testers should watch the USENET newsgroup "comp.sys.mac.comm" for information
about Simple PPP. Feel free to post comments about Simple PPP there.
Restrictions and limitations
- Open Transport is not supported at this time. Apple has not yet issued a stable version
of Open Transport, and the available documentation does not cover how to write an
OT-compatible MDEV-type driver.
- Simple PPP insists on doing its own dialing and logging in. It does not offer a terminal
window, so you can't dial manually or log in manually. You also cannot have the Apple
Internet Dialer do the dialing for it. The Apple Internet Dialer is really a workaround for MacPPP's inability to dial properly, so this isn't a serious limitation.
- If a connection breaks, and there's been recent traffic on it (within the last two
minutes), Simple PPP will detect this, redial, and bring up the connection again.
If the service provider answers on the first try, you usually recover TCP connections
that were open at the time. Some service providers may assign you a new IP address after
the reconnection, in which case recovery won't work.We suggest to ISPs that they
allow five minutes after a disconnect before reassigning the IP address to a new
user, and Metricom, the operators of the wireless Ricochet network, are putting this in for
their systems. In the meantime, this feature tends to work well only if you have
a permanently assigned IP address.
- The user name and password for authentication must be saved via the Simple PPP Control
Panel. Simple PPP will never prompt you for a password. This creates a security issue;
anyone who has physical access to your Macintosh can access your Internet account. No attempt is made to encrypt the stored copy of the password, because then you'd
have to enter a password to decrypt your password. (It's possible to create the illusion
of security by doing some scrambling of the stored password, but since the descrambling algorithm has to be in the program, it's easy enough to write a "cracking"
program for such scramblers.)
- When a service provider is slow to answer or a redial is required, the MacTCP Domain
Name Resolver will often hit its hard-coded 20 second timeout and give up. This usually
results in messages such as "Unable to find any domain name server" from applications. Eudora often produces this message. With Eudora, when you see this, just tell
Eudora to fetch your mail again (Command-M). This only happens the first time you
get mail; after that, the name server knows where your name server is. After Eudora
has run once, you can leave it on auto and let it fetch your mail in the background every
half hour or so.
- When Simple PPP is dialing, the only way to stop it is to open the Simple PPP control
panel and click on "Stop".
- Simple PPP will import MacPPP and FreePPP preference files, but is not compatible
with old control panels and various programs that turn PPP on and off. Such programs
will say that MacPPP is not installed, or will dim out their "Open" button. The Simple
PPP control panel must be used.
April 15, 1996
John Nagle
simpleppp@animats.com
Back to the Simple PPP home page