1. The structure of the internet
The internet is an international network of computers and other devices for the purpose of sharing resources. It is a global interconnection of millions of computers all across the world using a standardized protocol (Transmission Control Protocol / Internet Protocol, TCP/IP) to facilitate interconnection of the computers. The internet does not have a structure in particular but the networks and devices used found on the internet conform to a standard as set by the International Standards Organization (ISO).
2. Internet domains
Internet domains are managed by a Domain Name Service (DNS). DNS is a hierarchical naming system for devices and other resources on the internet. The DNS translates the human-friendly addresses that are typed at the address bar of browsers to machine-friendly IP addresses. The transmission of information between machines on the internet is achieved using IP addresses. It will however be difficult for humans to readily memorize the IP address of the remote machine. Domain names are symbolic names that are used in place of the IP addresses for easy recall. But for the communication to take place, the DNS service translates this symbolic name to the IP address that is actually used.
The hierarchy of internet domains starts with a top-level domain (TLD) that is usually dedicated for each country and unique to it. For instance, the TLD of the United Kingdom is '.uk' and '.fr' for France. A breakdown of domains might entail appending specific suffixes to indicate a specialized function. For instance, universities in the United Kingdom will use the domain '.edu.uk' to indicate that it is an educational domain in the '.uk' TLD. The next level in the hierarchy will be the domains for organizations in each of the TLD.
3. Dynamic Host Configuration
Before any device can communicate on a network, it must have a valid IP address. This IP address is either assigned and manually configured on each device by the network administrator or assigned automatically by a device. The manual configuration is tedious and very demanding especially when the network size is large. DHCP is used to automatically assign IP addresses to hosts on a network. A DHCP server dynamically configures clients when clients request for IP address. Every computer has a Network Interface Card (NIC) in-built ethernet address without an IP address. The computer sends a broadcast request in order to obtain an IP address. The steps for the assignment of an IP address by a DHCP server are as shown below
- A client on a network broadcasts a DHCP Discover message in order to locate a DHCP server.
- A DHCP server responds with a DHCP Offer message informing the client of its availability on the network.
- A client then sends a DHCP Request message asking for an IP address from the DHCP server.
- Finally the DHCP server acknowledges the IP request by sending an available IP address from its IP pool.
The IP address is leased to the device for a specific period of time and is renewed if the device is still on the network. If the device leaves the network however, and does not return, the IP address is returned to the pool of IP address.
4. Internet Addressing
The IP address is a logical address that is assigned to hosts either statically by the network administrator or dynamically by a service known as Dynamic Host Configuration Protocol (DHCP) server. A device cannot communicate on the network without having an IP address.
Every PC on a network will have an IP address, as will other devices such as printers. The term for a network device with an IP address is host. The numbers 0 and 255 are reserved addresses in IPv4. When all the host bits are set to 0, it identifies a network and when all the host bits are set to 1s, it is a broadcast address for all the hosts on that particular network
The IPv4 addresses are 32 bits in length which are grouped into 4 groups of 8 bits each and separated by a dot notation. Each of the 8 bits is referred to as an octet. Therefore an IPv4 address is made up of four octets separated by a dot.
The original 32-bit IPv4 address architecture meant that the Internet could support 4,294,967,296 possible IPv4 addresses. These addresses were soon exhausted due to inadequate network planning. The IPv6 address is the new 128 bits addressing scheme to replace the exhausted IPv4. Internet standards define the following types of IP addresses:
Unicast: The IPv4 unicast address identifies a single host on the network.
Multicast: Multicast address is used for one-to-many communication. Any packet addresses to a multicast delivers the packet to all the hosts addressed by that multicast address.
Broadcast: Assigned to all hosts located on a subnet; used for one-to-everyone on a subnet communication.
The dotted-decimal IPv4 address is then broken down into classes. IP address classes were defined in RFC 791 to accommodate large, medium, and small sized networks. The differences between the classes are the number of bits allocated to network versus host addresses with the classes identified by the first few bit sequences. There are five classes of IP addresses - Class A, B, C, D, and E. Each address consists of a network address and a host address.
The three ranges of addresses that can be assigned to hosts are:
Any address with a first octet of 127 is reserved for loopback interfaces.
The Class A IPv4 address was designed to support extremely large networks that have many machines. A Class A IP address uses only the first octet to indicate the network address. The remaining three octets identifies host addresses, that is, the first octet is for default number of network bits:8, while the last three octets are default number of host bits:24.
IPv6 Addressing
The difference between IPv6 and IPv4 is the address size in bits. An IPv6 address is 128 bits long, which is four times the size of an IPv4 address. A 128-bit address space allows for 2128 or 3.4 X 1038 possible addresses. The 128-bit address is divided into 16-bit block of 4-digit hexadecimal number (the Base16 numbering system), separated by colons.
5. Internet Routing Protocols
IP routing is the process of moving packets from one network to another network using routers. Routers become aware of remote networks (i.e. networks that are not directly connected to the router) in either of two ways – Static Routing and Dynamic Routing.
In static routing, an administrator is responsible for manual typing of all network locations into the routing tables of the participating routers. All remote network routes are manually added in each router’s routing table.
Dynamic routing on the other hand uses routing protocols to discover networks and update routing tables on routers. Routing protocols define a set of rules used by a router to communicate routing information between neighbour routers.
A protocol on one router communicates with the same protocol on a neighbour router. The routers then update each other about all the networks they know of and they place this information accordingly in their routing tables.
Types of Routing Protocols
There are two types of routing protocols – Interior Gateway Protocols (IGP) and Exterior Gateway Protocols (EGP).
Interior Gateway Protocols (IGP) are used to exchange routing information with routers within the same Autonomous System (AS). An Autonomous System is a collection of networks under a common administrative domain. This implies all routers sharing the same routing table information are in the same AS. Examples of IGP are RIP, RIPv2, OSPF, IGRP, and EIGRP.
Exterior Gateway Protocols (EGP) are protocols used to communicate between Autonomous Systems. Example of EGP is the Border Gateway Protocol (BGP).
ROUTING INFORMATION PROTOCOL (RIP)
RIP is a true distance-vector interior gateway routing protocol. By ‘distance-vector’, we mean RIP is a protocol that finds the best path to a remote network by judging distances. RIP calculates the best path in terms of the number of hops (hop count) or routers to the remote network. The best path to a network is the one with the least number of hops.
RIP has a maximum allowable hop count of 15 by default. Therefore at a hop count of 16, a remote network is considered unreachable. This makes RIP effective on small networks but inefficient on large networks with large number of routers. Also convergence is slow in RIP. Convergence is a process required for all routers in an internetwork to update their routing tables in order for the routers to have a correct view of the topology of the network using the best possible paths. RIP has two versions, 1 and 2. RIPv1 only uses classful routing while RIPv2 supports classless routing.
OPEN SHORTEST PATH FIRST (OSPF)
OSPF is an open standard link-state interior gateway routing protocol. In a link-state protocol, a router creates 3 tables. One table keeps track of directly attached neighbours. The second table is used to store the view or topology of the entire network while the third table is used as the routing table. OSPF implements the Dijkstra Algorithm constructing a shortest path tree first, and then populating the routing table with only the resulting best paths. It is important to note that OSPF among other features, has unlimited hop count and converges quickly.
BORDER GATEWAY PROTOCOL (BGP)
BGP is an exterior gateway routing protocol which means that it performs routing between multiple autonomous systems (AS) domains and exchanges routing and reachability information with other BGP systems. BGP performs inter-domain routing in TCP/IP networks.
BGP is the most widely used protocol between gateway hosts on the Internet consisting of a list of routers, the addresses that can be reached and the cost of reaching other nodes. BGP communicates with autonomous (local) networks using Internal BGP (IBGP) since it doesn't work well with IGP.
6. Electronic Mail
Electronic mail or e-mail is a means of sending and receiving messages in digital electronic form over the internet or within computer networks. An e-mail message contains the three important components - message envelope, message header and the message body. Most e-mail systems in use are built on a store-and-forward model which requires a mail server to accept and store e-mail messages, then forward and deliver the messages to the recipient. Using this model, the sender and receiver need not to be both online at the same time for the exchange of messages to take place.
The sending and delivery of e-mail is made possible by three major protocols Simple Mail Transfer Protocol (SMTP), Post Office Protocol 3 (POP3) and Internet Message Access Protocol (IMAP). POP3 and IMAP are used only for e-mail retrieval.
SMTP is an Internet standard for electronic mail (e-mail) transmission across the internet. It is a text-based connection-oriented protocol in which a mail sender communicates with a mail receiver using command strings and data over a reliable data channel. The channel used is a TCP connection.
The Post Office Protocol (POP) is the standard internet protocol used by local e-mail clients to retrieve e-mail from an e-mail server over a TCP/IP connection. It enables simple download-and-delete operations on remote mailboxes. It is also possible for mail POP3 mail clients to leave e-mail messages on the server after download.
The Internet Message Access Protocol (commonly known as IMAP) is also used to retrieve e-mail messages from a remote mail server. E-mail clients using IMAP generally leave messages on the server until the user deletes them. An e-mail server receives and stores incoming e-mail messages in the recipient's email box. The retrieval of the messages is done with an e-mail client that uses an e-mail retrieval protocol.
7. Web Access and HTTP
The use and access of the web is achieved with the Hyper-text Transfer Protocol (HTTP). HTTP is a simple text-based protocol that runs over Transmission Control Protocol (TCP). It is used for requesting of web pages by a client from a server. The response from the server is also displayed using this protocol. The client in this case is the web browser that a user is making use of. The display of a page by a web browser is achieved by a simple page request from a server via the HTTP client on the web browser. The page has a unique identifier, a location and a method of access. A Uniform Resource Locator (URL) does the job of retrieving the web page by providing the protocol to use in retrieving the web page (http in this case), the DNS name of the machine on which the page is located and the specific path to the file on that machine.
8. Web Security
The web being an interconnection of devices for the purpose of resource sharing is prone to a variety of attacks and compromises that seek to exploit vulnerabilities in the design of the networks or the protocols in use. Some of the various attacks that the web is susceptible to are as follows:
Eavesdropping
A lot of network communications occur in an unencrypted plaintext form which makes it susceptible to intercept and read the data traffic. Without strong encryption services that are based on cryptography, data can be read by unauthorised third party as it traverses the network.
Password attacks / password cracking
A common feature among most operating systems and network security is password-based access control. Access to both a computer and network resources are determined by a user name and password. Many versions of operating system components however have not always protected identity information as it was passed through the network for validation. An eavesdropper that gains access to network resources by stealing a password can do just as much as the legitimate owner of the password can do on the network including creating new and modifying existing accounts.
Denial-of-service attack
Unlike a password-based attack, the denial-of-service attack prevents normal use of a computer or network by valid users.
These are just some of the many threats and security issues associated with the use of the web and network resources.
Securing the web against all these threats involve the use of two major techniques – Encryption and Authentication. Encryption techniques ensure that transmitted data over the network is made confidential and not accessible to an unintended third party while authentication ensures that only legal users have access to a network infrastructure.
9. Multimedia Applications
Multimedia comprises various forms in which data can be represented. These forms include video, audio, pictures and animations. Multimedia is mainly used to enhance the understanding of the users of the technologies associated with it. The use of multimedia may be by playing from a multimedia player, projected from a projector, a live performance or an internet streaming.
10. Acceptable Use Policies
Acceptable use policy is a set of rules governing the use of a network, website or other resources, as laid down by the owner of such resources. The document containing this forms a part of the information technology policies of such company or organisation for which it is written.
These policies are mainly targeted at securing the data and other important information pertaining to the owning organisation by explicitly defining the boundaries of use of the Information Technology infrastructure of such organisation. The documents define what the users are allowed and not allowed to do with the infrastructure. For completeness, the punitive measures for defaulting users who contravene the provisions of the documents are also specified.
Bibliography
Forouzan, B. A. “Data Communications and Networking”, 4th ed. McGraw-Hill, 2007.
Lammle, T. "Cisco Certified Network Associate Study Guide", 6th Ed. Indiana: Wesley Publishing Inc, 2007.
Murhammer, M.W., Lee, K.K., Motallebi, P., Borghi, P.. and Wozabal, K. “IP Network Design Guide”, 2nd Ed, International Business Machines (IBM) Corporation, June 1999.
Stallings, W. "Business Data Communications", 6th Ed., Pearson Prentice Hall: New Jersey, 2009.
Tanenbaum, A.S., & Wetherall, D.J. “Computer Networks”, 5th ed. Boston, MA: Pearson Education, Inc, 2011.