Chapter 7 - Computer Networks, the Internet, and the World Wide Web

(7.1) - Introduction

Over the centuries there have been a number of inventions that have fundamentally changed the way that people live, work, and communicate.

(7.2) - Basic Networking Concepts

(7.2.1) Communication Links: In the early days of computer networking, data was usually transmitted over switched dial-up telephone lines. Fig 7.1(a) illustrates that telephones transmit voice as analog signals while digital data is a series of 0's and 1's as shown in Fig. 7.1(b).

To transmit digital data over telephone lines the sending device uses a modem (short for modulator/demodulator) to modulate the amplitude or the frequency of an audio carrier tone with the digital data (Fig. 7.2) and the receiving device uses another modem to demodulate the tone to recover the digital data.

In the 1970's digital data could be sent over telephone lines at rates of 1200 to 9600 bits per second. Advances in modems have raised the rate up to 56,000 bits per second.

Digital Subscriber Lines (DSL) and cable modems are broadband links that can transmit digital data at much higher rates. DSL is usually asymmetric with 2-8 million bits per second for downloads and 0.5-1 million bits per second for uploads.

Ethernet is the most widely used technology for transmitting data throughout a building or between neighboring buildings. The first Ethernet networks (1970's) transmitted data at 10 million bits per second. Fast Ethernets (1990's) transmit data at 100 million bits per second. Gigabit and Ten-Gigabit Ethernets may become available soon.

A recent development is wireless data communication using the Wi-Fi or Bluetooth standards. As a note of local interest, when Cisco (the major player in wired networks) decided to get into wireless networks they bought an Akron-based company called Aironet for their major R&D work. Their plant is now located in Richfield.

(7.2.2) Local Area Networks (LANs): A LAN connects devices that are in close proximity; e.g., the devices in the same room, in the same building, or on a single campus. LANs use a number of different interconnection strategies.

The most widely used technology for LANs is Ethernet using the bus topology (Fig 7.5(a)). To send a message, the transceiver of a node places the message on the bus with the address of its destination. All nodes on the bus receive the message but only the intended recipient accepts it.

There is a maximum allowable length to an Ethernet cable so for a large building it may be necessary to use several cables. Fig. 7.5(b) show two Ethernet cables, LAN1 and LAN2, connected to a bridge or repeater. The simplest connection is a repeater which forwards every message in either LAN to the other LAN. A bridge is smarter, only forwarding those messages that must go to the other LAN. For example, a message from node A to node B will not be forwarded to LAN2 while a message from node A to node C will be forwarded.

Many buildings (including this building) run a separate Ethernet cable from each room to a central hub, Fig. 7.6, which routes each message to its proper place.

(7.2.3) Wide Area Networks (WANs): A WAN is used to transmit data over a long distance (across town, country, or ocean.) Nodes in the WAN are interconnected with dedicated point-to-point links as shown in Fig. 7.7 and messages are transmitted with a store-and-forward, packet-switched technology.

(7.2.4) Overall Structure of the Internet: The Internet is a complex mixture of LANs and WANs. For example, KSU uses LANs on the campus to connect to the Internet through a broadband WAN-link. Fig. 7.8(c) shows a hierarchy of Internet Service Providers (ISPs) connecting users to the Internet.

Fig. 7.9 shows the growth in the number of Internet hosts since 1991. As of early 2005 there were about 317 million hosts on the Internet. To maintain efficient communication between so many hosts the Internet uses certain protocols.

(7.3) - Communication Protocols

There is a multi-layer hierarchy of communication protocols governing the Internet so technological changes in any layer do not affect the other layers. The five-layered TCP/IP hierarchy is shown in Fig. 7.10:

LayerNameExamples
5ApplicationHTTP, SMTP, FTP
4TransportTCP, UDP
3NetworkIP
2bLogical Link ControlPPP, Ethernet Data Link Layer
2aMedium Access ControlEthernet
1PhysicalModem, DSL, Cable Modem

(7.3.1) Physical Layer: The physical layer is a bit pipe between two computers; e.g., a copper wire, a fiber-optic cable, or a wireless radio channel. The protocol at this layer ensures that binary bits sent into the pipe by a computer at one end of the pipe will be read and understood by the computer at the other end.

(7.3.2) Data Link Layer: The data link layer is divided into two sub-layers:

The data link layer protocols create an error-free message pipe from a sending node to a receiving node.

(7.3.3) Network Layer: Fig. 7.7 shows that any message from a node A to a node B in a WAN may go through a number of other nodes in the WAN.

Communication protocols in the network layer are needed to send every message from its source site to its ultimate destination site:

Every node in a WAN must use the same network layer protocol - it is often called the glue that holds the WAN together. This layer in the Internet is called IP for Internet Protocol.

Addressing Scheme: We all should be familiar with the Internet host naming scheme; e.g.,

kent.edu 
for hosts at Kent State;
www.kent.edu 
for Kent State's main Web site; and
cs.kent.edu 
for hosts in the CS department at Kent State.

But these host names aren't used to address the nodes in the IP. Each node is given a unique 32-bit IP address usually written as four decimal numbers in the range of 0 to 255 separated by dots. For example the 32-bit IP address of Kent State's main Web site is: 10000011 01111011 11110110 00110100, which is usually written as 131.123.246.52 as shown in the following table:

13112324652
100000110111101111110110 00110100

As a note of local interest all 216 (65,536) IP addresses that start with 131.123 (10000011 01111011 -------- --------) are assigned to Kent State and the 212 (4,096) IP addresses in the range of 131.123.32.0 through 131.123.47.255 (10000011 01111011 0010---- --------) are assigned to the computers in this building (CS and Math.)

A special Internet application called the Domain Name Server (DNS) associates a given host name like www.kent.edu with its IP address, 131.123.246.52. It uses a massive database containing the mappings for the 300 million or so host names on the Internet. The database is spread across thousands of machines - if a local name server doesn't contain the desired IP address it sends the request to a remote name server which may send it to another name server, etc., until the desired IP address is found.

Message Routing: There are many different paths that a message may take through a WAN like the Internet - the shortest path is the path that takes the least amount of time. Dijkstra's shortest path algorithm finds this path in θ(N2) time where N is the number of nodes it goes through.

(7.3.4) Transport Layer: Each computer on the Internet has a unique IP address but usually each computer is running a number of different application programs. How does the destination computer of a message know which of its programs it should send the message to? The message has a field containing a port number which identifies that program.

Fig. 7.15 illustrates the Transport Control Protocol (TCP) of the Internet. Program P1 running in Host A sends a message to Program P2 running in Host D by putting the port number of P2 in the message. Program P2 running in Host D returns a message to Program P1 running in Host A by putting the port number of P1 in that message.

How does the computer at the source of the message know what number to put in the port number field? Figure 7.16 is a table of standard port numbers of some common Internet applications:

AcronymNameApplicationPort
HTTPHypertext Transfer Protocol Accessing Web pages80
SMTPSimple Mail Transfer Protocol Sending e-mail25
POP3Post Office Protocol Receiving e-mail110
IMAPInternet Mail Access Protocol Receiving e-mail143
FTPFile Transfer Protocol Accessing Remote Files21
TELNETTerminal Emulation Protocol Remote Terminal Access23
DNSDomain Name System Mapping host names to IP Addresses42

(7.3.5) Application Layer: The protocols at the application layer are the rules for implementing the end-user services of the Internet. As an example we consider the HTTP protocol used by Web browsers to access Web pages. Each Web page is given a unique Uniform Resource Locator (URL) which has three parts:

  1. the protocol (usually http) followed by ://
  2. the host address followed by /
  3. the page at the host.
For example the URL of this particular Web page is:

http://www.cs.kent.edu/~batcher/CS10051/c7.html

because this page is stored:

To access this page your browser:
  1. used the TCP protocol to establish a connection with the Web server (port 80 of computer www.cs.kent.edu);
  2. sent the Web server a request to return page ~batcher/CS10051/c7.html;
  3. and then received a copy of the file to display on your screen.

Kenneth E. Batcher - 10/3/2006