Chapter 4: Networking and the Internet.

The need to share information and resources between different computers has grown tremendously over the past decade or so thus the growing need to link computers – networks. The networks allow computer users to exchange messages and share resources. Software packages are developed which facilitate such communications to the point that it could be regarded that we now have a network-wide OS.

Network classifications:

One Way to classify:

  1. PAN – Personal Area Network – used for short-range (a few meters) e.g. wireless headset and a smartphone, wireless mouse and PC, wireless keyboard and PC, etc.
  2. LAN – Local Area Network – usually communication between computers inside of a building or a building complex.
  3. MAN – Metropolitan Area Network– a network of intermediate size spanning a local community.
  4. WAN – Wide Area Network – links machine over greater distances, perhaps neighboring cities.

Another way to classify networks is to say whether their internal operations are opened(public domain) or closed/proprietary(controlled by an individual or corporation) designed. The later is restricted by license fees and so are often overshadowed by the former. An example of the former is of course is the Internet.

The open network of the Internet is governed by a collection of standards known as the TCP/IP protocol suite (Transmission Control Protocol and the Internet Protocol). This network is of course free for anyone to use.

Yet another way to classify:is based upon the topology i.e. the pattern is which the connection is made. Two of the most popular topologies are the bus and star with ring being close behind. One machine serves as the server to which the others are connected.

Bus Network:

Computers

Bus

Star Network:

Protocols:

Networks must have rules that will guide their operation. Such rules are called protocols. These protocols allow different vendors to build their own product yet allow such product to be compatible with the network on which they are run. There are therefore established standards on which these rules are established. Without rules, there would most definitely be chaos – all computers may insist on using the network at the same time causing failure. The bus network on which the Ethernet is based use the CSMA/CD protocol (Carrier Sense, Multiple Access with Collision Detection). This protocol state the each message is to be broadcasted to all of the machines on the bus. Each machine monitors the message but keeps only those that belong to that machine. To broadcast, the machine will check to see if the bus is silentand then begin tobroadcast. If two machines begin to broad cast simultaneously, they would both experience a clash, so they pause for a random amount of time and then resume one at a time. This protocol is not compatible with a wireless network. The wireless network uses the CSMA/CA protocol (Carrier Sense, Multiple Access with Collision Avoidance). For example, two wireless devices may start sending at the same time but a building may block the path, so it is better to avoid clashes rather than the more difficult detection in this case. This is one of the main reasons why wireless networks use an access point (AP)to communicate between devices. Many of these protocols are standardized by IEEE (Institute of Electrical and Electronics Engineers).The most common approach to the collision avoidance is to give the advantage to a machine that has been waiting to broadcast to do so the next time the network becomes silent. When this happens, that machine must wait for a random amount of time to make absolutely certain that the line is silent and then go ahead. And when a new machine comes to broadcast, it must wait its’ turn. But if there is a building, for example, blocking proper communication so that one device cannot communicate with another, then the sending device will communicate with the AP to see when and if the line is silent. The AP will reply to that machine before that machine can broadcast.

Combining Networks:

Two or more networks can be combined to form bigger networks. In the case of BUS networks, they can be combined using:

  1. A Repeater used to combine two original buses.
  2. A Bridge similar to a repeater except that it does a little bit more. It checks to see the address of the destination computer and send the message to that computer only. This allows two computers on the same side to continue communicating without ever crossing the bridge.
  3. A Switchis essentially a bridge but it allows for multiple buses to be connected into a single network.

Note that when small networks are connected via repeaters or bridges or switches, the bigger network operates on the same principle of the small network. However, some small networks when combined may not be compatible with each other (example WiFi – CSMA/CA vs CSMA/CD). To make them compatible, a network of network must be built known as an internet (not the Internet). To form this internet, routers are used which provides links between networks while allowing each individual network to maintain their unique internal characteristics. Each router maintains a forwarding table that contains the router’s knowledge as to direction of the messages.

Computers Repeater or Bridge Computers

Bus

Computers Switch Computers

Bus

Using Routers to join different networks:

WiFi Network Routers

Ethernet(Bus) Network

WIFi Network

Methods of Process Communication:

Clint/server model and peer to peer model(Note: these are models and NOT networks) used to enable processing especially when parallel/distributed processing is considered. In the former case, a dedicated computer is normally used as the server and client computers communicate with the server for information, etc. In this case, the server needs to be on at all times. In the later case, the computers communicate with each other directly example two persons playing a game over the Internet or conversing with each other.When they are finished, they shut down their computers. An advantage of peer to peer is that one computer may distribute the file to another peer, and that peer to another peer and so on. This process is called a swarm.

Distributed Systems:

Whereby due to the networking available, processing of an application program may be distributed over many computers, yet make it look as if everything is done on the single computer. An example is cluster computing. With many computers attacking a single problem, processing is done much faster and the processing are distributed on a high-availability (at least one member of the cluster will be available to answer a request) and load-balancing (if one computer has too much to do, distribute it to computers with less work) basis. Then there is Grid computing – similar to cluster computing but more loosely coupled. Grid computing enables computers at home or in businesses that are not in high use to be used in the Grid to help in the computing process. An example is the Condor system of the University of Wisconsin.Then there is Cloud computing– enormous amount of computers on the network are available for clients to use - an example is Amazon’s Elastic Compute Cloud allow clients to rent virtual computers by the hour. The drawback to Cloud Computing is mainly security – you don’t know who has access to your data, etc.

The Internet:

The most notable example of an internet is the Internet which originated in the 1960s. It was developed mainly to connect computer networks so that processing, tec. would not be disrupted by failures due to local disasters. It was mainly government sponsored by Defense Advanced Research Projects Agency (DARPA ). Over the years it shifted from government to universities to commercial today with connections including PANs, LANs, MANs and WANs involving millions of computers.

Internet Architecture:

The Internet is a collection of networks constructed and maintained by organizations called Internet Service Providers (ISP). The system of networks operated by ISP is classified in a hierarchy with tier-1 ISPs (made up of high-speed, high-capacity international WANs) at the top; followed in the next level by tier-2 ISPs – tend to be more regional. Similar to tier-1, they are also operated by large companies, etc. These two tiers are essentially networks of routers that collectively provide the Internet’s communication infrastructure. Access to these two tiers is usually provided by a tier-3 ISP provider who is in the business to provide Internet access example cable and telephone companies, etc. And finally in the hierarchy is the “end systems” or hosts – the individual computers connected to the Internet. To provide access to wireless devices (WiFi), there must be a hotspot which allows the AP (access point) to gain access to the Internet network. Overall, most communication lines were installed to transmit information via analog wave but computers are digital. It is very expensive for the companies to install digital conveyance (broadband, fiber optics, DSL (Digital Subscriber Line) modems, satellite uplinks, etc.) so lots of data are still transmitted to homes via analog even though they are transmitted over distances via digital. This phenomenon is known as the last mile problem i.e. all data are transmitted via digital over long distances except for the so called last mile. Nevertheless, the means to transmit via digital is becoming more and more available.

Internet Addressing:

The Internet needs a unique addressing scheme to assign a unique address to each computer. This address is known as the IP (Internet Protocol) addresses. Initially, each IP address was made up of 32 bits but now it is in the process of being updated to 128 bits. Blocks of IP addresses are assigned by the ICANN (Internet Corporation for Assigned Name and Numbers) to ISPs. The ISPs will now allocate addresses within their block to machines.

The addresses are written in dotted decimal notation in which the bytes of the address are separated by periods and each byte is represented by a base 10 number. So for example a 32-bit IP address that is 11000000110011111011000110000101 might appear as 192.207.177.133 Note: none of the base 10 number can exceed 255. The above address is sometimes difficult to understand (both in binary or dotted decimal) so the Internet has an alternative way to represent addresses. This scheme is based on the concept of domain -which could be thought of as a region or a university or a business. Each domain is unique and is registered by ICANN. An example of a domain name for Georgia State University is gsu.edu(the suffix edu is used to represent the domain classification – in this case educational). Other suffixes are gov for government, com for commercial, org for non-profit organizations, etc. or ca for Canada, uk for United Kingdom, etc. There may be many sub domains up the ladder and note these mnemonic names does not correspond to the 32 bit address pattern. A program on a name server must be able to take the mnemonic names and convert it to the corresponding bit pattern before a message can be sent or even received. These name servers are used as an Internet-wide directory system known as a domain name system (DNS).

Internet Applications:

In the early days applications were separate with each following a network protocol example a newsreader would use the Network News Transfer Protocol (NNTP) to be able to read the news. To transfer files across network, he/she would use the FTP (File Transfer Protocol), to access another computer from a great distance, he/she would use the Telnet protocol or later still he/she may use Secure Shell (SSH). As the Internet grows in use and popularity, most of these activities are now handled by the HTTP (Hyper Text Transfer Protocol) via a web browser.

Electronic mail:

There is a wide variety of systems that exist to allow us to exchange mails – instant messaging (IM), browser-based online chatting, Twitter-based tweets and Facebook “wall” are only a few. One of the oldest uses of the Internet is electronic mail (email) using such medium now as Outlook, Apple’s Mail, Mozilla’s Thunderbird, etc., the actual transmission of the message still uses basically the same protocol – SMTP (Simple Mail Transfer Protocol).

SMTP defines the way how two computers interact with each other when they send-receive messages. Example:

A mail server mail.skaro.gov is used to send a mail from user “dalek” to user “doctor” who resides in domain tardis.edu. The process is:

The mail handling process on skaro.gov contacts the mail server on tardis.edu.

To do this it uses DNS (Domain Name System) to look up the domain name so it can map the human readable domain name to the proper mail server name and IP address (in dot format).

By the same token, the other terminal must identify itself to the sending mail server. After this identification, acknowledgement and acceptance process, the message will be sent by the sending mail server and be accepted by the receiving mail server.Example on page 172-173.

NOTE: SMTP has some key words/phrase associated with it which has special meaning – HELO, MAIL, RCPT, DATA and QUIT.

There are other protocols used to transmit messages. SMTP was designed to transmit data encoded using ASCII but to be able to transmit non-ASCII data, MIME (Multipurpose Internet Mail Extension) has been developed to convert these non-ASCII to ASCII, then be transmitted in the manner of SMTP.

The receiving computer may use two different protocols when downloading messages – POP3 (Post Office Protocol version 3) which allow you to download, view, read etc. messages on to the user’s computer. It is local. On the other hand we could use the IMAP (Internet Mail Access Protocol) which allows us to store the messages on the same machine as the mail server. By doing this, the user can access his/her email from any computer and anywhere by just logging into the machine with mail server.

There are now many other means of communicating over the Internet (besides email) some of which are VoIP (Voice over Internet Protocol) which comes in four different forms –

  1. Soft phones consisting of P2P (peer to peer) software example Skype. This has its drawback because it is a “proprietary system” meaning that you use it at your own risk – other computers can tap into yours without you knowing and the software is not built to prevent this.
  2. Analog telephone adapters – use the telephone lines to connect often in the form of a bundle – phone/Internet together.
  3. VoIP in the form of embedded systems –the traditional telephone is replaced with a handset connected directly to a TCP/IP (Transmission Control Protocol/Internet Protocol).
  4. Wireless Smartphone using VoIP. The earlier version of wireless used to communicate via the telephone company protocols. Access to the Internet was obtained by gateways between the company’s network and the Internet. Now the 4G (fourth generation) phone network is an IP-based network which means that the 4G phones are connected directly with the global Internet via broadband technology similar to the PC.

Internet Multimedia Streaming:

A verylarge portion of Internet trafficking is occupied with transporting audio and video data in real-time known as streaming. It is estimated that by 2014, more than half of the bandwidth of the Internet would be occupied with transporting these types of data. It may look very simple – the intended receiver makes contact with the potential sender and the sender sends the data - unicast. However, the sender may need to send the same data to many receivers so this may require a more involved network – the N-unicast, a single sender involved with multiple unicast. The N-unicast approach has drawbacks – it put too much burden on the station’s server so other forms have been incorporated. One is the peer to peer (P2P), whereby one receiver get the data and sends it to a peer who may requested the data but have not received it yet. In this way some of the burden is taken off the server and distributed over the peers. Another alternative is to use multicast whereby the problem is transferred to Internet routers.

On the other hand, user may need on-demand streaming where the user must have the ability to view, pause, start, etc. whenever they like. Neither the N-unicast nor multicast can be of use. For this the content delivery networks (CDN) is used. In this case groups of servers are distributed around the network to facilitate faster and continuous streaming.

The World Wide Web:

Tim Berners-Lee realized the potential of combining the Internet with the concept of linked