Académique Documents
Professionnel Documents
Culture Documents
1.0.1 INTERNET
This is a world-wide system of interconnected computers cooperating with
each other to exchange data using a common software standard through
communications links.
Internet can also be defined as a computer network of networks that
connects computer networks and organizational facilities around the world
USES OF INTERNET
E-commerce: The Internet offers a wide range of business opportunities and facilities.
One is able to trade online thus putting away all the tariffs and barriers experienced. I.e.
The Internet is used to advertise and sell product and services.
To Communicate: The Internet has enabled users to get faster and more reliable
communication. Communication ranges from electronic mail to Internet access. Through
chatting and emails the Internet can be used to meet people. www.yahoo.com
To have Fun: The Internet provides access to many games that one can download to
play online. (Entertainment in form of music, movies etc)
Research: Anyone can be able to find articles or information readily available on the
Internet. It is an open library with access to some university online
libraries.www.google.com
News: Ranging from headlines around the world to sports it is readily available. E.g.
www.nation.co.ke, www.cnn.com
Education: the Internet is a great learning tool. Many tutorials are available in various
subjects thus allowing users to learn more.
To find software: The Internet contains a wealth of useful downloadable shareware
(software you can use for free on a trial basis) e.g. shareware.com
To shop: The Internet offers a wide range of goods that can be bought online e.g. cars,
books e.g. However, security online is still questionable. E.g. www.amazon.com
Teleconferencing and videoconferencing: Involves use of telecommunications of
audio and video to bring people at different sites together for a meeting
1
An Intranet is an internal organizational network that can provide access to data across the
enterprise.
Intranet characteristics
- It uses the existing company network infrastructure along with Internet
connectivity standards and software developed for the World Wide Web.
- The principal difference between the Internet and an Intranet is that
whereas the Internet is open to anyone, the Intranet is private and is
protected from public visits by firewalls.
Firewall
Is a hardware or software placed between an organization’s internal
network and an external network to prevent outsiders from invading
private networks.
EXTRANET
Private intranet that is accessible to select outsiders.
2
A layering model is a solution to the problem of complexity in network protocols. The model
suggests dividing the network protocol into layers, each of which solves part of the network
communication problem. These layers have several constraints, which ease the design.
From the figure below, related modules (at the same level) above are called a protocol stack or
simply a stack. There are two constraints to be observed:
• The software for each layer depends only on the services provided by lower layers
• The software at layer n at the destination receives exactly the same message sent by layer
n at the sender
These constraints mean that protocols can be tested independently and can be replaced within a
protocol stack
3
Figure 1.1: The ISO OSI reference model
Application Layer
The application layer provides end-user services such as file transfer and e-mail. This is the layer
closest to what the user of the computer sees and manipulates.
Presentation Layer
The presentation layer controls how data is represented. This is the layer in which data
compression might take place, for example. Using data compression as an example, when data
passes from the application layer to the presentation layer, the presentation layer compresses the
data before passing it on to the session layer. When data arrives, it’s passed from the session layer
to the presentation layer where it’s uncompressed and passed on to the application layer. Hence,
the presentation layer really performs a data manipulation function, not a communication
function.
Session Layer
The session layer manages the process-to-process communication sessions between hosts. It’s
responsible for establishing and terminating connections between cooperating applications.
Transport Layer
The transport layer performs end-to-end error detection and correction. This layer guarantees that
the receiving application receives the data exactly as it was sent.
Network Layer
The network layer manages network connections. It takes care of data packet routing between
source and destination computers as well as network congestion.
4
Data link Layer
The data link layer provides reliable data delivery across the physical network. It doesn’t assume
that the underlying physical network is necessarily reliable.
Physical Layer
The physical layer is concerned with transmitting and receiving raw bits over a physical
communication channel. Ethernet is one example of such a channel. This layer has knowledge of
voltage levels and of the pin connections to the physical hardware media.
Layering principle
5
3 TCP/IP Protocol Suite
TCP/IP includes a set of standards that specify how networked computers communicate and how
data is routed through the interconnected computers. TCP/IP provides the application
programmer with two primary services: connectionless packet delivery and reliable stream
transport. TCP/IP has several distinguishing features that have led to its popularity, including:
• Network Topology Independence - TCP/IP is used on bus, ring, and star networks. It’s
used in local-area networks as well as wide-area networks.
• Physical Network Hardware Independence - TCP/IP can utilize Ethernet, token ring,
or any number of physical hardware variations.
• Open Protocol Standard - The TCP/IP protocol suite standard is freely available for
independent implementation on any computer hardware platform or operating system.
• Powerful Client-Server Framework - TCP/IP is the framework for powerful and robust
client-server applications that operate in local-area networks and wide-area networks.
Application (Layer 5) Corresponds to Layer 6 and 7 of the OSI Model. Specifies how an
application uses the Internet.
Specify how to organise data into frames and how to frames over
Network Interface the network
(Layer 2)
Physical (Layer 1) Basic network hardware
6
The movement of a packet of data through the layers in a TCP/IP network is shown below. When
a packet of data is sent, it travels to the transport layer where the transport header is added. Next
the internet layer adds its header. Finally, the physical layer attaches its header. When a packet of
data is received, the process is reversed, resulting in the application’s reception of the intended
data.
7
receipt requested. But the application program doesn't have to know if a failure occurs,
because
TCP is a transport-layer protocol that moves data between applications (which are usually on
different computers.) It provides for provides reliable data delivery.
• Transmission Control Protocol (TCP) is most widely used transport protocol
• Provides reliable data delivery by using IP unreliable datagram delivery
• Compensates for loss, delay, duplication and similar problems in Internet components
• Connection oriented: Application requests connection to destination and then uses connection
to deliver data to transfer data
• Point-to-point: A TCP connection has two endpoints
• Reliability: TCP guarantees data will be delivered without loss, duplication or transmission
errors
• Full duplex: The endpoints of a TCP connection can exchange data in both directions
simultaneously
• Stream interface: Application delivers data to TCP as a continuous stream, with no record
boundaries; TCP makes no guarantees that data will be received in same blocks as transmitted
• Reliable connection startup: Three-way handshake guarantees reliable, synchronized startup
between endpoints
• Graceful connection shutdown: TCP guarantees delivery of all data after endpoint shutdown
by application
• TCP travels in IP datagrams
• Internet routers only look at IP header to forward datagrams
• TCP at destination interprets TCP messages
8
• IP
Provides connectionless packet delivery for all other protocols in the suite. Does not guarantee
packet arrival or correct packet sequence?
• ARP
Provides IP address mapping to the MAC sub layer address to acquire the physical MAC control
address of the destination. IP broadcasts a special ARP inquiry packet containing the IP address
of the destination system. The system that owns the IP address replies by sending its physical
address to the requester. The MAC sublayer communicates directly with the network adapter card
and is responsible for delivering error-free data between two computers on a network.
• ICMP
Provides special communication between hosts, allowing them to share status and error
information. Higher-level protocols use this information to recover from transmission problems.
Network administrators use this information to detect network trouble. The ping utility uses
ICMP packets to determine whether a particular IP device on a network is functional.
The figure below shows an example internet with two hosts and a router that illustrates the
relationship between TCP and IP software.
An example internet that illustrates why TCP is an end-to-end transport protocol. TCP views IP
as a mechanism that allows TCP software on a host to exchange messages with TCP software on
a remote host.
9
The protocol software defines an addressing scheme that is uniform and independent of the
underlying physical address. To send a packet across an internet, the sender places the
destination’s protocol address in the packet and passes the packet to the protocol software for
delivery. The software uses the destination protocol address to forward the packet to the
destination computer.
The IP Addressing Scheme
In the TCP/IP, addressing is specified by the Internet Protocol (IP). The IP standard specifies that
each computer be assigned a unique 32-bit number known as the host’s IP address. Each packet
sent across the internet has the IP address of both the sender and the destination computer. Thus,
to transmit information across a TCP/IP internet, a computer must know the IP address of the
remote computer to which information is being sent.
Class A
When written in a binary format, the first or furthest left bit of a Class A address is
always 0. An example of a Class A IP address is 124.95.44.15. The first octet, 124,
identifies the network number assigned by ARIN. The internal administrators of the
network assign the remaining 24 bits. An easy way to recognize whether or not a device
is part of a Class A network is to look at the first octet of its IP address, which will range
from 0-126. (127 does start with a 0 bit, but has been reserved for special purposes.)
All Class A IP addresses use only the first 8 bits to identify the network part of the
address. The remaining three octets (24 bits) can be used for the host portion of the
address. Because there are 24 bits available for host addresses, every network that uses a
Class A IP address can have assigned up to 224 minus 2. That is, 16,777,214, possible IP
addresses to devices that are attached to its network.
10
Class B
The first 2 bits of a Class B address are always 10 (one and zero). An example of a Class
B IP address is 151.10.13.28. The first two octets identify the network number assigned
by ARIN. The internal administrators of the network assign the remaining 16 bits. An
easy way to recognize whether or not a device is part of a Class B network is to look at
the first octet of its IP address. Class B IP addresses always have values ranging from 128
to 191 in their first octet.
All Class B IP addresses use the first 16 bits to identify the network part of the address.
The two remaining octets of the IP address can be used for the host portion of the
address. Every network that uses a Class B IP address can have assigned up to 216 minus
2, or 65,534, possible IP addresses to devices that are attached to its network.
Class C
The first 3 bits of a Class C address are always 110 (one, one, and zero). An example of a
Class C IP address is 201.110.213.28. The first three octets identify the network number
assigned by ARIN. The internal administrators of the network assign the remaining 8
bits. An easy way to recognize whether or not a device is part of a Class C network is to
look at the first octet of its IP address. Class C IP addresses always have values ranging
from 192 to 223 in their first octet.
All Class C IP addresses use the first 24 bits to identify the network part of the address.
Only the last octet of a Class C IP address can be used for the host portion of the address.
Every network that uses a Class C IP address can have assigned up to 28 minus 2, or 254,
possible IP addresses to devices that are attached to its network.
Figure 2.3 the number of networks and hosts per network in each of the three primary IP address
classes.
11
addresses in the frame must be hardware addresses. Consequently, the protocol address for a next
hop must be translated to an equivalent hardware address before a frame can be sent.
In summary, protocol addresses are abstractions provided by software; physical network
hardware does not know how to locate a computer from its protocol address. The protocol
address of the next hop must be translated to an equivalent hardware address before a packet can
be sent.
Address Resolution
Translation from a computer’s protocol address to an equivalent hardware address is known as
address resolution, and a protocol address is said to be resolved to the correct hardware address.
Address resolution is local to a network. One computer can resolve the address of another
computer only if both computers are on the same physical network. This can be illustrated by the
example below:
Figure 19.1 - A simple internet with routers R1 and R2 connecting three physical networks; each
network has two host computers attached. A computer can only resolve the address of a computer
attached to the same physical network.
In the figure, hosts A and B attach to the same physical network. If an application on host A
sends data to an application on host B, the application uses B’s IP address as the destination.
Protocol software on A resolves B’s IP address to B’s hardware address, and uses the hardware
address to send the frame directly.
If an application on host A sends a message to an application on host F, which lies on a remote
network, software on host A first determines that the packet must travel through router R1. The
software on A then resolves the address of R1, and sends the packet to the router. Software on R1
determines that the packet must reach R2, resolves the address of R2, and sends the packet. Finally
R2 receives the packet, determines that destination F is attached to the rightmost physical network
resolves address of F and delivers the packet. As this example demonstrates, each computer that
handles a packet resolves a next-hop address before sending.
In summary, mapping between a protocol address and a hardware address is called address
resolution. A host or router uses address resolution when it needs to send a packet to another
computer on the same physical network. A computer never resolves the address of a computer
that attaches to a remote network.
12
Domain names
A domain provides a naming scheme for TCP/IP hosts. The domain is an
alphanumeric representation of IP address. Humans prefer to use computer
names.
IP addresses are not user friendly and could cause typing errors; the domain
name system (DNS) was created so people would not have to remember several
confusing numbers. Domain names enable short, alphabetical names to be
assigned to IP addresses
DNS provides a set of procedures that converts or translates domain names into
IP address and vice versa.
DNS provides distributed look up.
How to obtain domain name
Organization
• Chooses a desired name
• Must be unique
• Registers with central authority
• Placed under one top-level domain
Names subject to international law for
• Trademarks
• Copyright
A domain name is divided into this parts:
(i) First level
It is an extension and is assigned according to what kind of domain it represents
E.g.
Domain name Type of domain
Edu Educational institution
Gov Government organization
Mil Military organization
Net Network service provider
Com Commercial organization
Org Organizations
Au Australian domain
Uk United Kingdom domain
Ke Kenyan domain
13
Za South African domain
(ii) Second level
It is a name one chooses or the main host of the Internet.
E.g. www.mail.yahoo.com
Third level is division within company
www.itrc.kemu.ac.ke
Fourth level either
2. Company subdivision
3. Individual computer
e.g.
Assume Company is Unilever
Has two divisions
Soap division
Candy division
Candy division has subdivisions
Soap Division has no subdivisions
Names in soap division have form
www.soap.uniliver.com
Names in candy division have form
www.subdivion.candy.uniliver.com
URLs
This is the address or location of the link.
The World Wide Web uses Uniform Resource Locators (URLs) to specify the location of files on
other servers. A URL includes the type of service being accessed (e.g. web, gopher, ftp), the
address of the server and the location of the file. The syntax is:
scheme://domain name/path/filename
Where scheme/service is one of the following:
File a file on your local system
ftp a file on an anonymous FTP server
http a file on a world wide web server
gopher a file on a gopher server
WAIS a file on a WAIS server
News a Usenet newsgroup
14
telnet a connection to a Telnet-based service
15
In contrast, server software:
• Is a special-purpose, privileged program dedicated to providing network services.
• Is invoked automatically when a system boots and continues to execute through many
sessions.
• Runs on a remote computer (usually centralized, shared computer)
• Waits for service requests from clients; loops to wait for next request
• Will accept requests from arbitrary clients; provides one service to each client
• Requires powerful hardware and sophisticated operating system
Confusion sometimes arises over the term server. Formally, the term refers to a program that
waits passively for communication and not the computer on which it executes. Hardware vendors
contribute to this confusion because they classify computers that have fast CPU, large memories
and powerful operating systems as server machines. The term server-class computer refers to a
powerful computer used to run server software.
1.2.3 Requests, Responses and Direction of Data Flow
Information can flow in either or both directions between a client and sever. Typically, a client
sends a request to a server and the server returns a response to the client. In some cases a client
sends a series of requests and the server issues a series of responses.
Servers can accept incoming information as well as deliver outgoing information. For example,
most file servers are configured to export a set of files to clients. That is, a client sends a request
that contains a file name and the server responds by sending a copy of the file. However, a file
server can also be configured to import files, that is, allow a client to send a copy of a file that a
server accepts and stores on disk.
Information can flow in either or both directions between a client and server. Although many
services arrange for the client to send one or more requests and the server to return responses,
other interactions are possible.
Like most application programs, a client and server use transport protocol to communicate.
FIG 1.4: A client and server using TCP/IP protocols to communicate across an internet. The
client and server each interact with a protocol in the transport layer.
As the figure shows, a client or server application interacts directly with transport layer protocol
to establish communication and send or receive messages. The transport protocol then uses lower
layer protocols to send and receive individual messages. Thus a computer needs a complete stack
of protocols to run either a client or server.
16
A single, server-class computer can offer multiple services at the same time; a separate server
program is needed for each service. Running many servers on a single computer is practical
because a server does not consume computational resources while waiting for a request.
Identifying a Particular Service
Transport protocols provide a mechanism that allows a client to specify unambiguously which
service is desired. The mechanism assigns each service a unique identifier, and requires both the
client and server to use the identifier.
When a server begins execution it registers with the local protocol software by specifying the
identifier for the service it offers. When a client contacts a remote server, the client specifies the
identifier for the desired service.
Transport protocol software on the client’s machine sends the identifier to the server’s machine
when making a request. Transport protocol software on the server’s machine uses the identifier to
determine which server program should handle the request.
TCP uses a 16-bit integer value known as protocol port number to identify services and assigns a
unique protocol port number for the service it offers and then waits passively for communication.
A client specifies the protocol port number of the desired service when sending a request.
A server –class computer can allow multiple copies of a server for a single service. Technically, a
computer that permits multiple application programs to execute at the same time is said to
support concurrency, and a program that has more than one thread of control is called a
concurrent program. Concurrency is fundamental to the client-server model of interaction
because a concurrent server offers service to multiple clients at the same time, without
requiring each client to wait for previous clients to finish
1.2.4 Internet Services
Internet offers a number of services through client server paradigm.
They are provided by application level protocols and are accessed by
clients.
World Wide Web- The official definition of the WWW is "wide-area hypermedia
information retrieval initiative aiming to give universal access to a large universe of
documents."
www consists of millions and millions of websites stored in host computers throughout
the world.
Web sites are made up of webpages connected by links.
wide-area: The World Wide Web spans the whole globe.
hypermedia: It contains various types of media (text, pictures, sound,
movies ...) and hyperlinks that connect pages to one another.
Information retrieval: web pages are viewed using web browser. They allow
you to retrieve pages just by clicking links, or entering addresses. Examples of
web browser –mozilla fire fox, Internet Explorer
Universal access: www can be by any computer connected to internet through
web browser..
17
Large universe of documents: Anyone can publish a Web page - and nearly
anyone has! No matter what obscure information you want to find, there is
bound to be someone out there who has written a Web page about it.
Protocols-Http protocol is used in accessing of www resources.
Features of WWW
• It has its own protocol i.e. HTTP
• It creates a convenient and user friendly environment
• It is the fastest components of Internet since it gathers together all the protocols into a
single system.
• It relies on the hypertext as means of Information retrieval.
• It has the ability to work with multimedia and advanced programming languages i.e.
text, graphics, video and audio.
• It is a delivery medium, content provider and subject matter.
• It connects users to almost any part of the Internet.
• It is used to explore intellectual, verbal knowledge and effective learning.
• It contains complex virtual web of connections and consist of files.
• It provides real-time collaboration, interactive pages and automatic push of
information to client computers.
WWW Client-Server Interaction
Like other network applications, web browsing uses the client-server paradigm. When given the
URL of a document, a browser becomes a client that contacts a server on the computer specified
in the URL to request the document. The browser then displays the document for the user.
The connection established between the server and client has a short duration. The browser
establishes a connection, sends a request, and receives the requested item or a message that no
such item exists As soon as the document is transferred the connection is closed. Terminating
connections quickly works well in most instances because browsing does not exhibit high
locality. A user might access a web page on one computer, then immediately follow a link in
another computer. However, this can introduce overheads in cases where a browser must return to
the same server for many documents.
Primary protocol used between browser and server known as Hypertext Transfer Protocol
(HTTP) and uses port 80.
File Transfer protocol (ftp)
The standard internet way of transferring files over the internet. Ftp is a set of
procedures and commands that manages safe transmission of files.
FTP is another example of client-server program paradigm. An FTP server waits on a host for an
FTP client to connect and make request. The server program finds and sends the file back to the
client.
Most popular file transfer service in the Internet uses FTP, which is a general-purpose protocol that
can be used to copy an arbitrary file from one computer to another.
Using Command-line interface user forms TCP connection to server (called control connection)
18
Ftp control program uses port 21, ftp data transfer uses port 20. We really can't use the same port
for data transfer. Why? Consider what if you want to terminate in the middle of transfer. Would
the program consider this is a part of the data or a command
Gopher space
Gopher is a complementary program that organizes data and provides access to it.
It organizes files using menu-system, for navigation reasons. The user needs a
client gopher program to access gopher server.
Telnet
It’s a service that enables remote log in. Users are permitted to log in onto a host and perform tasks
as if they are working on the remote computer itself.
USENET/newsgroups
A huge network of discussion groups. This are sites which hosts articles submitted by
participants .A participant writes article and puts it on the site, other can read it and write their own
articles. Each newsgroup is dedicated to one subject of interest.
E-mail
This is online communication between computer users. It is quick, convenient, efficient and
cheap way to communicate with both individuals and groups.
signment
1. Discuss the use of following protocols
HTTP,SMTP,TCP/IP , FTP , telnet
2. List benefits of an organization connecting to the Internet
signment 3. Discuss problems of The Internet
4. What is a URL
5. Analyse the anatomy of a URL
19