Simple PPP user's guide

by John Nagle

Alpha test version 1.4.5

Quick Start

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:

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.

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:

  1. Send a CR.
  2. Wait for "login:" (or "Login:", or "LOGIN:", etc.)
  3. Send the user name, followed by a CR.
  4. Wait for "password" (Or "Password:", etc.)
  5. 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

Restrictions and limitations

April 15, 1996
John Nagle

Back to the Simple PPP home page