Making a Connection

11-13-98

When a WebTV Internet terminal is first connected, it dials a toll-free number. A bank of modems at one of the WebTV data centers answers, and a TCP connection is established to a TellyScript production process running on a Unix server. The TellyScript process verifies that the call is coming from a WebTV Internet terminal and then connects to an ANI-server. The ANI-server uses Automatic Number Identification, delivered by the telephone network on all 800 toll-free calls, to determine the area code and telephone exchange of the calling location. That data is used to access a database of Internet access numbers and dialing areas to compute and download dialing instructions and other connection parameters to the client Internet terminal. Downloaded parameters include an encryption key, as well as the IP addresses and TCP port numbers of WebTV server processes. After downloading this information, the WebTV server stores a one-time, scratchpad authentication and encryption key and the ANI information in a master database. The database controls all future access between that particular Internet terminal and the WebTV servers.

Design Maximizes Chance of Connecting

Once the TellyScript creation process has been completed, the Internet terminal disconnects from WebTV's toll-free number. It then uses the TellyScript information to make a local call for an Internet connection to WebTV. The terminal is programmed to try multiple local numbers where they are available and to roll over to a toll-free number if the local numbers are busy, so the customer is almost always connected.

When an Internet terminal loses and later regains electrical power, it asks the user if it is connected to a different phone number. If the customer answers, "Yes," the Internet terminal repeats the TellyScript creation process, obtaining a new TellyScript and dialing the best access number at the new location. This feature allows the user to easily move the terminal from one location to another. WebTV servers also automatically download new TellyScripts that reflect additions and changes in access numbers. Unlike a computer user who must update dial-in configuration information for each such change, the WebTV customer doesn't even need to know when changes occur.

Once the WebTV Internet terminal has its TellyScript and dials-in locally to WebTV's service, it connects to a process called "headwaiter." This process knows the locations of all the other services the terminal needs to deliver to the customer. It picks a set of servers to send and deliver mail, process news, access Internet resources, and provide other available services to the customer. These servers are assigned for use by the terminal during a session. If this is the customer's first connection, a registration service is invoked to create a user name and password and to acquire billing information. The registration server stores this information in the master database and creates a directory on a file server to store the user's e-mail, favorite Web sites, and other user-specific information. All of this happens behind the scenes with minimal delay and frustration to the user.