Networks and the Internet
A computer network is simply any arrangement in which multiple computers are connected such that each computer can send data to any of the others. In the jargon of networks, each computer is sometimes called a “host”.
An internet is any arrangement in which multiple networks are connected together, i.e. a network of networks. The networks are connected simply by having computers in the networks connected to more than one of the networks: those computers serve as routers between the networks. For data to pass from one network to another, it passes through one or more routers. Any computer in the internet can then send data to any other computer in that internet.
The Internet is the worldwide network of computers. The computers on the Internet communicate via a standard protocol called IP (Internet Protocol). In IP, each computer has a unique 32-bit address that is by convention expressed as four numbers, each less than 256, separated by dots, e.g. 18.104.22.168. To send data to another computer, a computer connected to the Internet need only know the IP address of the intended destination.
The Internet is made up of many privately-owned networks. To access the Internet, you need to connect your computer to one of these networks. An ISP (Internet Service Providers) is a network operator who sells access to their network. Once connected to an ISP, you can communicate with any other computer connected to the Internet because your ISP’s network is connected to the other networks that make up the Internet (either directly or indirectly). Most home users in the United States connect to their ISP via DSL (Digital Subscriber Line), which usually operates over the old phone system lines, or their local cable system. DSL service is often available from multiple companies in one location, but cable is generally only available from the local monopoly.
For a DSL or cable connection, the connection from the network runs to a modem. That modem then can plug directly to a computer via an Ethernet cable, but it’s generally a good idea to use an “access router” in between. Aside from providing a measure of security, an access router allows multiple computers to share a single internet connection and allows wireless connections.
A program which listens and waits for incoming requests from the network is called a server. A program which makes requests of servers is called a client. Most programs used by ordinary users are clients. For example, a web browser (a program for viewing web pages) is a kind of client. Servers are generally run on computers in the back room and left running 24/7.
The DNS (Domain Name System) was invented so that human users can deal with friendly names instead of numeric IP addresses. The idea is that people and organizations can register a domain name for the IP addresses of their servers so that others can access the server by name instead of IP address. For example, Google has registered the name google.com, so when I enter “google.com” into my web browser, “google.com” gets automatically resolved into the actual IP address of Google’s server.
To resolve a domain name, a program contacts a DNS server, which is responsible for knowing which IP address each domain name should resolve to. (Most computers automatically use a DNS server run by the ISP to which they are connected, but you can change this configuration to use any DNS server you wish). All of the DNS servers in the world are supposed to resolve a given domain name into the same IP address as every other DNS server, but this doesn’t always work perfectly: when a domain name is changed or added, it may take a few hours or more for all the DNS servers in the world to update with that change. This lag in the system isn’t usually a big deal.
A URL (Uniform Resource Locator) is a string of text which designates the location on the Internet of a thing, such as a web page. For example, the URL for a news story on the LA Times website has the URL:
A URL is made up of three parts: the scheme, the location, and the resource name:
(Notice the scheme is followed by :// and the location by a /.)
Web page URL’s use the scheme called http.
The location is usually specified as a domain name, but may also just be an IP address.
The resource name can be basically any string of text without spaces. Often it looks like a file path, but this is misleading because it doesn’t necessarily refer to the name of a file. How the resource name here is interpreted is entirely up to the choosing of the LA Time’s web server.
A web browser, as mentioned, is a program for downloading and displaying web pages. Web pages are written in a document format called HTML (Hyper-Text Markup Language). Web browsers download web pages from web servers using a protocol called HTTP (Hyper-Text Transfer Protocol). (HTTP doesn’t replace IP; rather, HTTP is used in conjunction on top of IP.)
Among other things, web pages can contain links. A link is a piece of text or an image associated with a URL. When the user clicks on the link, the browser goes to the page at that URL (just as if you manually entered that address into the address bar).
It’s important to understand that most web pages these days are dynamically generated by the web server when you visit them. For example, when I visit Amazon.com and log in to my Amazon account, Amazon’s web server customizes the page I see with stuff particular to me, such as suggested items Amazon thinks I am statistically likely to buy. So when you visit the page at a particular URL, it may change each time you visit and may not look exactly the same for everyone who visits it.
When you visit a web site, encryption can stop any outside party from reading the data you send to the web server or data the web server sends to you. However, you cannot stop the web server from recording any information you send to it. More generally, when you send information to someone, you cannot stop them from keeping it.
To find web pages, use a search engine. A few companies run search services, most notably Google, Yahoo, and Microsoft (who calls their search service “Bing”). For example, I can use Google search by going to the page http://google.com, then entering my search terms in the text box and clicking the search button. Google sends back a page of links to pages matching my search terms with the most relevant links at the top.
A bookmark is a URL saved in the browser for easily getting back to that URL later. To bookmark the page you are currently looking at, click the star icon next to the address bar. By default, the bookmark will be stored with the title of the page, but you can edit this.
Email is actually a separate application of the Internet with no necessary relationship to the web. Whereas the web involves web browsers and web servers communicating via HTTP, email involves email clients and email servers communicating via a different set of protocols (though still, of course, using IP as the underlying means of communication). An email client is, of course, the program which users directly interact with. Email servers are used for actually routing mail and storing received mail. Sending an email is a three-step process:
1) The sending user uses an email client to send the message to the sender’s email server.
2) The sender’s email server sends the message to the receiver’s email server.
3) The next time the receiving user checks for new email, the receiver’s email client retrieves the message from the receiver’s email server.
So to send and receive email, you need an account on an email server. For example, if I have the email account named brian on the email server run at acme.com, then my email address is email@example.com. Most users use an email server run by someone else, such as their ISP.
An increasingly popular solution is to use what’s called web mail. Web mail allows you to send and receive email in a web browser by visiting a web mail service site. The most popular webmail services are Google’s gmail (gmail.com) and Yahoo Mail (mail.yahoo.com). I strongly recommend gmail as the simplest and best designed. Simply go to gmail.com in your web browser to sign up for a new account.