Advanced Computer Networks Lecture HandOut 2024
Advanced Computer Networks Lecture HandOut 2024
INTRODUCTION
Network allows computers to connect and communicate with different computers via any medium.
LAN, MAN, and WAN are the three major types of networks designed to operate over the area they
cover. Other recent types include: PAN (Personal area networks), SAN (Storage area networks) EPN
(Enterprise area networks), VPN (Virtual Private networks), CN (Core backbone networks), Internet,
Intranet and Extranet.
The fault tolerance of a MAN is less and also there is more congestion in the network. It is costly and
may or may not be owned by a single organization. The data transfer rate and the propagation delay
of MAN are moderate. Devices used for transmission of data through MAN are Modem and
3
Wire/Cable. Examples of a MAN are part of the telephone company network that can provide a high-
speed DSL line to the customer or the cable TV network in a city.
Advantages:
Provides high-speed connectivity over a larger geographical area than LAN.
Can be used as an ISP for multiple customers.
Offers higher data transfer rates than WAN in some cases.
Disadvantages:
Can be expensive to set up and maintain.
May experience congestion and network performance issues with increased usage.
May have limited fault tolerance and security compared to LANs.
VPN
VPN stands for the Virtual Private Network. A virtual private network (VPN) is a technology
that creates a safe and encrypted connection over a less secure network, such as the internet. A
Virtual Private Network is a way to extend a private network using a public network such as the
internet. The name only suggests that it is a Virtual ―private network‖ i.e. user can be part of a
local network sitting at a remote location. It makes use of tunneling protocols to establish a secure
connection
Internet: The Internet is often known as the World wide web. The Internet is a network built by the
cooperative connectivity of millions of computers that are linked together. The Internet is made up
of:
Intranet: An intranet is a private network that only employees of a company may access. It's the
most restrictive of the three networks. Intranets, like the Internet, employ the HTTP protocol over
TCP/IP protocol, web servers, and web clients. Intranets differ from the Internet in that private
servers are not accessible to the general public. The users' limitations are implemented through the
usage of an internet firewall.est
Companies use intranet so that they can store and share important documents and lets teams use
private messages and threads to communicate better and collaborate on projects over a secure
network. It is only accessible to a small group of people. Intranets are mostly used to offer access to
data and programs on networked computers and servers within enterprises and organizations.
Extranet: An extranet is a type of network that allows external users to access an organization's
intranet. An extranet is similar to an intranet, except that it is accessed through a Web portal. An
intranet is a private network that is only available to members of the same group, corporation, or
organization. Extranets are quickly becoming a popular way for business partners to securely
communicate information.
The difference between the Internet, Intranet and Extranet is often misunderstood. Part of the
solution may be found in the prefixes of each of the words: inter means between, intra means
inside, and extra implies outside or beyond. The difference between the internet, intranet and
extranet is based on various parameters.
The major difference between the internet, intranet and extranet is that the internet, also known as the
world wide web, is a global network of computer networks, and intranet, on the other hand, is an
internet network that only corporate workers have access to. However, the extranet is an extension of
the intranet.
The differences between internet, intranet and extranet are listed in the table below based on various
parameters.
6
Internet Intranet Extranet
An intranet may be accessed Extranets are mostly used by
Internet is open to the
via the Internet, although its businesses and organizations
public, but the other two
authentication requires to limit access to secret
are heavily censored.
logging in. information.
It is owned by a particular It is owned by single/ multiple
It is owned by no one.
company/ organization. organizations.
Only members of the
Only members of the
Everyone who is linked organization and external
organization have access to
has access to it. members with logins have
it.
access.
Its goal is to provide Its goal is to communicate Its goal is to allow members
information all across the information within the and external members to share
world. company. information.
It is used by employees of It is used by the members
It is used by the public.
the organization. having login information.
It is more cost-effective to It is less cost-effective. It is also less cost-effective.
utilize.
Peer-to-peer network operating systems allow users to share resources and files located on their
computers and to access shared resources found on other computers. However, they do not have a
file server or a centralized management source (See fig. below). In a peer-to-peer network, all
computers are considered equal; they all have the same abilities to use the resources available on the
network. In a p2p each computer must be configured with individual user identification (userids) and
passwords. Peer-to-peer networks are designed primarily for small to medium local area networks.
AppleShare and Windows for Workgroups are examples of programs that can function as peer-to-
peer network operating systems.
L
P
Workstation WS2 W WS3
1
User1: User2:S User3:
Okafor Ngozi 2 Israel
Word folder: Excel folder: Access folder
WORDDOCS WORKBOOKS DATABOOK
Password: Password: Password:
boy ngh Isout
There are three people in this company, Okafor, Ngozi and Israel, respectively for workstations
WS1, WS2 and WS3. Israel and Okafor can access the documents located in Excel folder from their
own WS as long as they know the password of Ngozi is <ngh>. If any of them changes password on
his computer, to make his system accessible to others the person must make his password known to
others/or any one who needs access.
A peer-to-peer network password is only effective across the network. The password is not effective
if someone sits down at the workstation. An immediate disadvantage of P2P is anyone who has the
password can access the folder across the networks.
Advantages of a peer-to-peer network:
Client/server network operating systems allow the network to centralize functions and applications in
one or more dedicated file servers (See fig. below). The file servers become the heart of the system,
providing access to resources and providing security. Individual workstations (clients) have access to
the resources available on the file servers. The network operating system provides the mechanism to
integrate all the components of the network and allow multiple users to simultaneously share the
same resources irrespective of physical location. Novell Netware and Windows 2000 Server are
examples of client/server network operating systems.
8
In a server-based LAN, a user can sit down at any workstation, login to the server with his or her
userid and password, and have access to all of the network resources. A server-based network is
much secured and expensive system. Server-based are more secured because (i) passwords are
managed centrally at the server ii) the server is normally locked in a wiring closet.
Userid: pasword: Application Permission: Printer:
Ngozi ngh Excel R/W LP1
Word R/W LP2
Okafor boy Excel R
Project R/W LP2
Word R
Fig. Server based LAN
Centralized - Resources and data security are controlled through the server.
Scalability - Any or all elements can be replaced individually as needs increase.
Flexibility - New technology can be easily integrated into system.
Interoperability - All components (client/network/server) work together.
Accessibility - Server can be accessed remotely and across multiple platforms.
Implementation of LANs
There exist two major implementations of LANs namely:
1) Token-passing LAN and
2) Ethernet LAN
1) Token-passing LAN
A token-passing LAN uses an access protocol that involves the continuous circulation of a 24-bit long unique
data frame or pattern called ―token‖ around a logical loop. The token is an access-granting message that
circulates around the ring. Only one station can gain control of the token at a time. There is no central
controller and all the stations are of equal status.
In a token passing LAN, a station with data to transmit must first gain control of the token. A token may be
free or busy. If the token is free, a station with data to send will capture the token, transmit its data into the
LAN complete with the address of both the sender and the destination station, and marks the token as busy.
9
The token is then allowed to continue its passage around the LAN. As the data circulates around the network
its destination address is read by each station in turn until the destination station recognizes its own address;
this station copies the data and then returns the (still full) packet to the LAN. When the packet has traveled
right around the logical loop and has returned to the originating station, the data is removed from the packet
and the token is marked as free before it is passed on to the next station. Figure below depicts the logical
connections between the stations in a Token-passing LAN.
MA1
NA2
7 2
MA7 MA2
NA1 NA3
3
MA3
MA6 NA4
NA7
MA5 MA4
NA6 NA5
5 4
Fig. Token - passing LAN.
Each station has its own address, labeled as MA1, MA2 etc and it is programmed with the address of
the next station to which the token is to be passed called ―Next-station Address‖ NA2, NA3, etc.
In a ring LAN it is often the case that the token is passed from each station to the next station
physically in the ring, in which case, the labeling of the stations will go clockwise around the ring as
shown. If some stations are to be given preferential service this is easily arranged by suitable NA
addressing. If a station is non-operative passing the token to it is a waste of time and so the station
passing the token will automatically pass the token to the next active station. This action by-passes
the non-operative station and re-establishes the logical loop. The token is periodically offered to a
non-operative station so that if it should become active again it will automatically become on line.
This idea is shown in figure below.
MA 1 MA 2 MA 3
NA 2 NA 3 NA 5
MA 5 MA 4
NA 1 NAXX Inoperative
Station
10
Fig. Token- Passing Bus LAN.
The logical loop is completed in figure 4.4 by station 3 having a next address of NA5 that will ensure
that the token is passed from station 3 to station 5.
In order to prevent any one station to monopolize the system, each repeater that is serving a station
that is able to both transmit and receive has two modes of operation known as the LISTEN and the
TRANSMIT modes. When a repeater is in the listen mode it checks the destination address of each
packet to see if it matches the address of its associated station. When a match is found the data in the
packet is copied and sent to the station.
When a station has data to send the repeater must seize the token; it then enters the transmit mode
and the token is marked ―busy‖.
In this way, a station that has just transmitted data cannot re-use the packet immediately but must
wait for a short time before it can again seize the token.
2) Ethernet LAN
What is contention? Contention means that the computers are contending for use of the transmission
media. In pure contention-based access control, any computer can transmit at a time. This system
breaks down when two computers attempt to transmit at the same time, in which case a collision
occurs.
Mechanisms are therefore, usually put into place to minimize the effects of collisions. One such
mechanism is carrier sensing. Another is carrier detection. The Ethernet LAN uses these access
techniques, and is formally called carrier sense multiple-access with collision detection
(CSMA/CD). Each computer listens to the network before attempting to transmit and if the network
is busy the computer refrains from transmitting until the network quiets down. This is known as
carrier sensing.
With ‗Carrier Detection‘ computers continue to listen to the network as they transmit. If a computer
detects another signal that interferes with the signal it‘s sending, it stops transmitting. Both
computers then wait a random amount of time and attempt to retransmit.
Multiple Accesses means that any station or computer on the LAN is able to try to transmit data over
the LAN at any time. CSMA/CD is used to deal with the simultaneous attempt by two or more
stations to transmit data into the LAN. Ethernet usually employs a baseband bus system. In
baseband the entire cable bandwidth is used to transmit a digital signal. The cable is called the ether
and each station is connected to it via an interface cable, to a transceiver, which is, in turn, connected
to the LAN. The basic arrangement of an Ethernet LAN is shown in figure below.
A broadband LAN – uses frequency division multiplex (FDM) techniques to divide the bandwidth
of a coaxial cable into a number of 6MHz channels so channels can transmit simultaneously.
STATION STATION
TRANSCEIVER TRANSCEIVER
TRANSCEIVER TRANSCEIVER
STATION STATION
11
Fig. 4.5: Ethernet LAN.
A segment may have up to 100 stations connected to it and it may be up to 500m long.
The different varieties of Ethernet networks are commonly called Ethernet topologies. Typically;
Ethernet networks use a bus topology, although some use a star topology and a bus logical topology.
Microsoft uses the term ―star bus‖ topology to describe 10 BASE-T. Ethernet networks, depending
on the specification, operate at 10 or 100 Mbps using baseband transmission. Other Ethernet
topologies include:
10 BASE 2
10 BASE 5
10 BASE-T
10 BASE-FL
100 VG-ANYLAN
100 BASE-X
Note that the name of each Ethernet topology begins with a number (10 or 100). That number
specifies the transmission speed for the network. For instance, 10 BASE 5 is designed to operate at
10Mbps and so on.
Ethernet networks transmit data in small units called frames, usually between 64-1,518 bytes.
A typical Ethernet II frame has the following section:
1) Preamble – a field that signifies the beginning of the frame.
2) Address – source and destination addresses for the frame.
3) Type – a field that designates the network layer protocol.
4) Data – the data being transmitted.
5) CRC – Cyclical Redundancy Check for error checking.
H
IMP IMP
COMMUNICATION H
Interface Message SUBNET
Processor
IMP IMP
H
i) Point-to-point links are dedicated physical lines used to connect a specific pair of IMP
ii) Broadcast: To send a message to all stations or an entire class of stations connected to the
networks.
Using a WAN, schools in Nigeria can communicate with places like Tokyo in a matter of seconds,
without paying enormous phone bills. Two users a half-world apart with workstations equipped with
microphones and a webcams might teleconference in real time. A WAN is complicated. It uses
multiplexes, bridges, and routers to connect local and metropolitan networks to global
communications networks like the Internet. To users, however, a WAN will not appear to be much
different than a LAN.
Advantages of Installing a Network
User Access Control
Modern networks almost always have one or more servers to which they have access. User
credentials on a privately-owned and operated network may be as simple as a user name and
password, but with ever-increasing attention to computing security issues, these servers are critical to
ensuring that sensitive information is only available to authorized users.
Flexible Access
Institution networks allow students to access their information from connected devices throughout
the school. Students can begin an assignment in their classroom, save part of it on a public access
area of the network, then go to the media center after school to finish their work. Students can also
work cooperatively through the network.
Workgroup Computing
Wide Area Networks (WANs) connect networks in larger geographic areas, such as Maharashtra,
India, or the world Dedicated transoceanic cabling or satellite uplinks may be used to connect this
type of global network.
13
Collaborative software allows many users to work on a document or project concurrently. For
example, educators located at various institution within a country could simultaneously contribute
their ideas about new curriculum standards to the same document, spreadsheets, or website.
Servers Fail
Although a network server is no more susceptible to failure than any other computer, when the files
server ―goes down‖ the entire network may come to a halt. Good network design practices say that
critical network services (provided by servers) should be redundant on the network whenever
possible.
Linear Bus: If all network nodes are connected to a combine transmission medium that has two
endpoints, the Bus is Linear. The data transmitted between these nodes is transmitted over the
combine medium and received by all nodes simultaneously.
Distributed Bus: if all network nodes are connected to a combine transmission medium that has
more than two endpoints created by branching the main section of the transmitting medium.
15
A linear bus topology consists of a main run of cable with a terminator at each end (See fig. 1). All
nodes (file server, workstations, and peripherals) are connected to the linear cable. A bus topology
uses one long cable (backbone) to which network devices are either directly attached or are attached
by using short drop cables. Because all workstations share this bus, a workstation checks for any
information that might be coming down the backbone before sending their messages. All messages
pass the other workstations on the way to their destinations. Each workstation then checks the
address of each message to see if it matches its own. Note that bus network topologies, the backbone
must be terminated at both ends to remove the signal from the wire after it has passed all devices on
the network.
terminator
or
file server
terminator terminator
terminator
file server
Ring
Mesh or fully connected systems are fast and reliable but expensive since the number of links grows
as the square of the number of hosts. If there is N nodes in the network, mesh requires NP = N(N –
1)/2 physical channels to link them. Similarly, the number of ports per device equals N – 1.
Advantages
i) No traffic problem
ii) Better security as each message travels on a dedicated line, only the intended recipient can
receive it.
iii) Roboust to link failures: If one link fails, the data can be transmitted in alternate path.
iv) Fault identification/isolation is easy due to point to point link.
Disadvantages
i) Cost of network is very high
ii) Required complex installation and reconfiguration
iii) Bulk of wire requires large space to accommodate it
iv) Bulk of wire and large number of ports leads to complex troubleshooting.
Partially Connected: This set up involves the connection of some nodes to more than one
nodes in the network via point-to-point link. In such connection it is possible to take
advantage of the redundancy without any complexity or expense of establishing a connection
between each node.
Lowering the number of physical connections reduces costs. On the negative side, it requires routing
of messages exchanged between hosts that are not directly connected.
Hybrid Topology
Hybrid topologies are combination of two or more different topologies. WANs sometimes have
hybrid topologies because they connect a variety of LAN topologies. The big advantage of hybrid
topologies is that they connect disparate topologies. However, the disadvantage of hybrid topologies
is that they are potentially complex to establish and manage.
Nodes
Nodes
Concentrato
r (Hub)
Backbone Cable
INTER-NETWORKING DEVICES
The interconnection of LANs is known as inter-networking. Internetworking gives a user access to
additional facilities, data and stations.
The following list details some common internet work connectivity devices:
a) Routers
b) Bridges
c) Brouters
d) Switches
e) Repeaters
f) Gateways
The router can then select the best route to be used; best depend upon such factors as speed, cost and
availability. A router usually resides in network layer 3.
If a link should become faulty the router should be able to choose an alternative routing. Most router
support the internet protocol (IP), which is a subset of the Transmission Control Protocol/Internet
Protocol (TCP/IP) and Internet Packet Exchange (IPX).
These protocols make it possible for servers using different software to be inter-connected.
c) Broutes
A brouter is a router that also can act as a bridge. A brouter attempts to deliver packets based
on network protocol information, but if a particular network layer protocol isn‘t supported,
the brouter bridges the packet using device addresses.
d) Switches: A switch is like a bridge with multiple connections, allowing connection of several
buses rather than just two like in bridge. A switch usually resides in network layer 2.
e) Repeaters: Is a device that connects two buses to form a single long or extended bus. The
repeater simply passes signal back and forth between the two buses (with amplification)
without considering the meaning of the signals. A repeater usually resides in network layer 1.
f) Gateways: Is used for connecting two or more LANs through an intermediate Public data
network (PDN).
It is the most complex form of connection between two LANs. A gateway is used to inter-connect
two LANs that employ different protocol, systems, such as a PC network and a mainframe computer.
Often a gateway is a PC supplied with controller emulation software.
The gateway generally runs software that emulates a cluster controller to enable a number of PCs to
be given access to the mainframe. The PCs must each be fitted with terminal emulation software.
Most mainframe computers require terminals to act in a specified manner with regard to such things
as their response to commands to:
i) Update the screen
ii) Position the cursor and
iii) Read the keyboard.
Terminal emulation software allows a PC to act as though it were a mainframe terminal.
Gateways commonly function at the OSI Application layer.
Introduction to Routing
What is Routing?
Routing is the act of moving information across an internet from a source to a destination. Along the
way, at least one intermediate node typically is encountered. Routing is often contrasted with
bridging, which might seem to accomplish precisely the same thing to the casual observer. The
primary difference between the two is that bridging occurs at Layer 2 (the data link layer) of the OSI
reference model, whereas routing occurs at Layer 3 (the network layer). This distinction provides
21
routing and bridging with different information to use in the process of moving information from
source to destination, so the two functions accomplish their tasks in different ways.
Routing Components
Routing involves two basic activities: determining optimal routing paths and transporting
information groups (typically called packets) through an internet work. In the context of the routing
process, the latter of these is referred to as packet switching. Although packet switching is relatively
straightforward, path determination can be very complex.
Path Determination
Routing protocols use metrics to evaluate what path will be the best for a packet to travel. A metric
is a standard of measurement, such as path bandwidth, that is used by routing algorithms to
determine the optimal path to a destination. To aid the process of path determination, routing
algorithms initialize and maintain routing tables, which contain route information. Route
information varies depending on the routing algorithm used.
Routing algorithms fill routing tables with a variety of information. Destination/next hop
associations tell a router that a particular destination can be reached optimally by sending the packet
to a particular router representing the ―next hop‖ on the way to the final destination. When a router
receives an incoming packet, it checks the destination address and attempts to associate this address
with a next hop.
Router 1 Router 2
Packet to
router x
11 11
Routing table Routing table
Dest Send to Dest Send to
X R2 X R1
Routing algorithms can be differentiated based on several key characteristics. First, the particular
goals of the algorithm designer affect the operation of the resulting routing protocol. Second,
various types of routing algorithms exist, and each algorithm has a different impact on network and
router resources.
Finally, routing algorithms use a variety of metrics that affect calculation of optimal routes.
Dijkstra’s algorithm (DA)
22
DA can be stated as: Find the shortest paths from a given source node to all other nodes, by
developing the paths in order of increasing path length. The algorithm proceeds in stages. By the
kth stage, the shortest paths to the k nodes closest to (least cost away from) the source node have
been determined; these nodes are in a set T. At stage (k+1), the node not in T that has the shortest
path from the source node is added to T.
As each node is added to T, its path from the source is defined. The algorithm can be
formally described as follows:
Define
N = set of node in the graph
S = source node
T = set of nodes so far incorporated by the algorithm
w(i,j) = link cost from node i to node j, w(i,j) = 0; w(i,j) = if the two nodes are not directly connected; w(i,j) 0 if the
two nodes are directly connected.
L((n) = cost of the least-cost path from node S to node n that is currently known to the algorithm; at termination, this is
the cost of the least-cost path in the graph from S to n.
The algorithm has three steps; step 2 and 3 are repeated until T=N. That is, step 2 and 3 are repeated until final paths
have been assigned to all nodes in the graph.
Step 1. [Initialization]
T= {S}, i.e., the set of nodes so far incorporated consists of only the source node
L(n) = w(s,n) for ns, i.e., the initial path costs to neighboring nodes are
simply the link costs.
Step2: [Get Next node] Find the neighboring node not in T that has the least-cost path from node S and incorporate
that node into T; Also incorporate the edge that is incident on that node and a node in T that contributes to the
path. This can be expressed as:
Find xT such that L(x) = Min L(j)
jT
Step3: [update Least-Cost Paths]
L(n) = min[L(n), L(x) + w(x,n)] for all nT
If the latter term is the minimum, the path from S to n is now the path from S to x concatenated with the edge
from x to n.
The algorithm terminates when all nodes have been added to T. At termination, the value L(x) associated with each node
x is the cost (Length) of the Least-cost path from S to x. In addition, T defines the Least-cost path from S to each other
node.
8
5 3
2
2
6 3
3 5
1 2 2 8
3
3 1 1 6
1
7 2
1 4
4 5
1
(S=I) L(2) Path L(3) Path L(4) Path L(5) Path L(6) Path
Iteration[T]
1 [1] 2 1-2 5 1-3 1 1–4 - -
2 [1, 4] 2 1-2 4 1-4-3 1 1–4 2 1-4-5 -
3 [1, 2, 4] 2 1-2 4 1-4-3 1 1–4 2 1-4-5 -
23
4 [1,2,4,5] 2 1-2 3 1-4-5-3 1 1–4 2 1-4-5 4 1-4-5-6
5 [1,2,3,4,5] 2 1-2 3 1-4-5-3 1 1–4 2 1-4-5 4 1-4-5-6
6 [1,2,3,4,5,6] 2 1-2 3 1-4-5-3 1 1–4 2 1-4-5 4 1-4-5-6
The shortest path (fewest hops) from node 1 to node 6 is 1-3-6 (cost = 5 + 5 = 10), but the Least-cost
path is 1-4-5-6 (cost = 1 + 1 + 2 = 4).
S = Source code
w(i,j)= Link cost from node i to node j; w(i,i) = 0; w(i,j) =
if the two nodes are not directly connected;
w(i,j) 0 if the two nodes are directly connected.
Lh(n)= cost of the Least-cost path from node S to node n under the constraint of no more than h links
Algorithm:
1. [Initialization]
L0(n) = , for all no S
Lh(S) = 0, for all h
2. [Update]
For each successive h 0;
For each n S, compute
Lh+1(n) = min[Lh(j) + w(j,n)
j
Connect n with the predecessor node j that achieves the minimum and eliminate any connection of n with a
different predecessor node formed during an earlier iteration. The path from S to n terminates with the link from j to n.
For the iteration of step 2 with h = k, and for each destination node n, the algorithm compares potential paths
from S to n of length K+1 with the path that existed at the end of the previous iteration. If the previous, shorter path has
less cost, then that path is retained. Otherwise, a new path with length K+1 is defined from S to n; this path consists of a
path of length K from S to some node j, plus a direct hop from node j to node n. In this case, the path from S to j that is
used is the k-hop path for j defined in the previous iteration.
The Bellman-Ford Algorithm is displayed in the table below:
H Lh(2) Path Lh(3) Path Lh(4) Path Lh(5) Path Lh(6) Path
0 - - - - -
1 2 1-2 5 1–3 1 1–4 - -
2 2 1-2 4 1-4-3 1 1–4 2 1-4-5 10 1-3-6
3 2 1-2 3 1-4-5-3 1 1–4 2 1-4-5 4 1-4-5-6
4 2 1-2 3 1-4-5-3 1 1–4 2 1-4-5 4 1-4-5-6
i. The main objective of a computer network is to be able to transfer the data from sender to
receiver. This task can be done by breaking it into small sub tasks, each of which are well
defined.
ii. Each subtask will have its own process or processes to do and will take specific inputs and
give specific outputs to the subtask before or after it. In more technical terms we can call
these sub tasks as layers.
iii. In general, every task or job can be done by dividing it into sub task or layers. Consider the
example of sending a letter where the sender is in City A and receiver is in city B.
Post man collects the letter Post man carries the letter
from mail box and delivers Middle from post office to
to post office Layer receivers’ mail box
vii. During transition the letter may be by truck, plane or ship or a combination of transport
modes before it reaches the destination post office.
viii. At the Receiver site, the activities take place in the following ascending order:
a. Lower Layer: The carrier delivers the letter to the destination post office.
b. Middle Layer: After sorting, the letter is delivered to the receivers mail box.
c. Higher Layer: The receiver picks up the letter, opens the envelop and reads it.
ix. Hierarchy of Layers: The activities in the entire task are organized into three layers. Each
activity at the sender or receiver side occurs in a particular order at the hierarchy.
x. The important and complex activities are organized into the Higher Layer and the simpler
ones into middle and lower layer.
OPEN SYSTEMS INTERCONNECTION REFERENCE MODEL
(OSI)
Introduction to OSI Model & Its Layers
The Open Systems Interconnection (OSI) Model was developed by International Organization for
Standardization (ISO).
ISO is the organization, OSI is the model.
It was developed to allow systems with different platforms to communicate with each other.
Platform could mean hardware, software or operating system.
It is a network model that defines the protocols for network communications.
It is a hierarchical model that groups its processes into layers. It has 7 layers as follows: (Top to
Bottom)
1. Application Layer
2. Presentation Layer
3. Session Layer
4. Transport Layer
5. Network Layer
6. Data Link Layer
7. Physical Layer
Each layer has specific duties to perform and has to cooperate with the layers above and below it.
Description of Layers in the OSI Model
Physical Layer
i. The Physical Layer provides a standardized interface to physical transmission media,
including:
a. Mechanical specification of electrical connectors and cables,
for example maximum cable length
b. Electrical specification of transmission line
c. Bit-by-bit or symbol-by-symbol delivery.
ii. On the sender side, the physical layer receives the data from Data Link Layer and
encodes it into signals to be transmitted onto the medium. On the receiver side, the
26
physical layer receives the signals from the transmission medium decodes it back into
data and sends it to the Data Link Layer as shown in the figure below.
Physical Physical
layer 10101000000010111 10101000000010111 layer
Transmission medium
iii. Interface
The Physical Layer defines the characteristics of interfaces between the devices &
transmission medium.
iv. Representation of bits
The physical layer is concerned with transmission of signals from one device to
another which involves converting data (1‘s & 0‘s) into signals and vice versa. It is
not concerned with the meaning or interpretation of bits.
v. Data rate or Bit rate
The physical layer defines the data transmission rate i.e. number of bits sent per
second. It is the responsibility of the physical layer to maintain the defined data rate.
vi. Synchronization of bits
To interpret correct and accurate data the sender and receiver have to maintain the
same bit rate and also have synchronized clocks.
vii. Line configuration
The physical layer defines the nature of the connection i.e. a point to point link, or a
multi point link.
viii. Physical Topology
The physical layer defines the type of topology in which the device is connected to
the network. In a mesh topology it uses a multipoint connection and other topologies
it uses a point to point connection to send data.
ix. Transmission mode
The physical layer defines the direction of data transfer between the sender and
receiver. Two devices can transfer the data in simplex, half duplex or full duplex
mode.
x. Main responsibility of the physical layer
Transmission of bits from one hop to the next.
Data Link Layer
i. The Data Link layer adds reliability to the physical layer by providing error detection
and correction mechanisms.
27
ii. On the sender side, the Data Link layer receives the data from Network Layer and
divides the stream of bits into fixed size manageable units called as Frames and sends
it to the physical layer. On the receiver side, the data link layer receives the stream of
bits from the physical layer and regroups them into frames and sends them to the
Network layer. This process is called Framing. It is shown in the figure below:
Network Network
layer layer
iii. The network layer is responsible for source to destination of delivery of data. Hence it may
have to route the data through multiple networks via multiple intermediate devices. In order
to achieve this the network relies on two things:
a. Logical Addressing
b. Routing
iv. Logical Addressing
The network layer uses logical address commonly known as IP address to recognize devices
on the network.
An IP address is a universally unique address which enables the network layer to identify
devices outside the sender‘s network.
The header appended by the network layer contains the actual sender and receiver IP address.
At every hop the network layer of the intermediate node check the IP address in the header, if
its own IP address does not match with the IP address of the receiver found in the header, the
intermediate node concludes that it is not the final node but an intermediate node and passes
the packet to the data link layer where the data is forwarded to the next node.
v. Routing
The network layer divides data into units called packets of equal size and bears a sequence
number for rearranging on the receiving end.
Each packet is independent of the other and may travel using different routes to reach the
receiver hence may arrive out of turn at the receiver.
Hence every intermediate node which encounters a packet tries to compute the best possible
path for the packet. The best possible path may depend on several factors such as congestion,
number of hops, etc.
This process of finding the best path is called as Routing. It is done using routing algorithms.
29
vi. The Network layer does not perform any flow control or error control.
Transport Layer
i. A logical address at network layer facilitates the transmission of data from source to
destination device. But the source and the destination both may be having multiple processes
communicating with each other. Hence it is important to deliver the data not only from the
sender to the receiver but from the correct process on the sender to the correct process on the
receiver. The transport layer takes care of process to process delivery of data and makes sure
that it is intact and in order.
ii. At the sending side, the transport layer receivers data from the session layer, divides it
into units called segments and sends it to the network layer. At the receiving side, the
transport layer receives packets from the network layer, converts and arranges into
proper sequence of segments and sends it to the session layer.
From session layer To session layer
Segments
Transport
layer To network layer From network layer
iii. To ensure process to process delivery the transport layer makes us of port address to
identify the data from the sending and receiving process. A Port Address is the name
or label given to a process. It is a 16 bit address. Ex. TELNET uses port address 23,
HTTP uses port address 80. Port address is also known as Service Point Address
(SPA).
iv. The data can be transported in a connection oriented or connectionless manner. If the
connection is connection oriented, then all segments are received in order else they
are independent of each other and are received out of order and have to be rearranged.
v. The Transport layer is responsible for segmentation and reassembly of the message
into segments which bear sequence numbers. This numbering enables the receiving
transport layer to rearrange the segments in proper order.
Session Layer
i. The session layer establishes a session between the communicating devices called
dialog and synchronizes their interaction. It is the responsibility of the session layer
to establish and synchronize the dialogs. It is also called the network dialog
controller.
ii. The session layer at the sending side accepts data from the presentation layer adds
checkpoints to it called syn bits and passes the data to the transport layer. At the
receiving end, the session layer receives data from the transport layer removes the
checkpoints inserted previously and passes the data to the presentation layer.
iii. The checkpoints or synchronization points is a way of informing the status of the data
transfer. Ex. A checkpoint after first 500 bits of data will ensure that those 500 bits
are not sent again in case of retransmission at 650th bit.
Session Session
layer layer
Presentation Layer
i. The communicating devices may be having different platforms. The presentation
layer performs translation, encryption and compression of data.
ii. The presentation layer at sending side receives the data from the application layer
adds header which contains information related to encryption and compression and
sends it to the session layer. At the receiving side, the presentation layer receives data
from the session layer decompresses and decrypts the data as required and translates it
back as per the encoding scheme used at the receiver.
31
Data Data
Presentation Presentation
layer layer
To session layer From session layer
iii. Translation
The sending and receiving devices may run on different platforms (hardware,
software and operating system). Hence it is important that they understand the
messages that are used for communicating. Hence a translation service may be
required which is provided by the Presentation layers.
iv. Compression
Compression ensures faster data transfer. The data compressed at sender has to be
decompressed at the receiving end, both performed by the Presentation layer.
v. Encryption
It is the process of transforming the original message to change its meaning before
sending it. The reverse process called decryption has to be performed at the receiving
end to recover the original message from the encrypted message.
Application Application
layer layer
To presentation layer From presentation layer
ii. X500 is a directory service used to provide information and access to distributed
objects.
iii. X400 is services that provides basis for mail storage and forwarding
v. Main Responsibility
Main Responsibility of Application layer is to provide access to network resources.
LAYER PROTOCOL
APPLICATION All NFS, FTP, Telnets, SMTP, SNMP, POP
PRESENTATION People XDRI, ASN.1 etc
SESSION Seem RPC, NetBIOS, TCP
TRANSPORT To TCP, UDP, SPX
NETWORK Need IP, IPX, PIR, OOPR, X.25
IP, IPX, RIP, X.25, etc
DATA LINK Data SDLC, HDLC, 802.3 (Ethernet), 802.5 (Token)
PHYSICAL Processin 10
10 BASET, 10 BASE2,
Base T, 10Base2, RS10 BASE
232, 5
V. STANDARDS
g
NETWORK MEDIUM
Fig The OSI Reference Model and a mapping of some industry protocols.
33
TCP/IP MODEL, ADDRESSING IN TCP/IP – IPV4
INTRODUCTION
After an understanding of the concept of layered task and then understanding the OSI model, we
introduce the TCP/IP model. This model is currently being used on our systems. TCP/IP model is a
collection of protocols often called a protocol suite. It offers a rich variety of protocols from which
we can choose from.
TCP/IP MODEL
It is also called as the TCP/IP protocol suite. It is a collection of protocols.
It is a hierarchical model, i.e., there are multiple layers and higher layer protocols are
supported by lower layer protocols.
It existed even before the OSI model was developed. Originally had four layers (bottom to
top):
1. Host of Network Layer
2. Internet Layer
3. Transport Layer
4. Application Layer
The figure for TCP/IP model is as follows:
Application
Transport
Network or IP
Host to Network
The structure TCP/IP model is very similar to the structure of the OSI reference model. The
OSI model has seven layers where the TCP/IP model has four layers.
The Application layer of TCP/IP model corresponds to the Application Layer, Session and
Presentation Layer of OSI model.
The Transport layer of TCP/IP model corresponds to the Transport Layer of OSI model.
The Network layer of TCP/IP model corresponds to the Network Layer of OSI model.
The Host to network layer of TCP/IP model corresponds to the Physical and Datalink Layer
of OSI model.
The diagram showing the comparison of OSI model and TCP/IP model along with the
protocols is as shown below:
34
Application
Session
ICMP ICMP
Network IP Network or IP
RARP ARP
Data link
PROTOCOLS OF UNDERLYING NETWORK Host to Network
Physical
It is a best effort delivery service, i.e. there is no error checking in IP, it simply sends the data and
relies on its underlying layers to get the data transmitted to the destination.
IP transports data by dividing it into packets or datagrams of same size. Each packet is
independent of the other and can be transported across different routes and can arrive out of order at
the receiver.
In other words, since there is no connection set up between the sender and the receiver the packets
find the best possible path and reach the destination. Hence, the word connection-less.
35
The packets may get dropped during transmission along various routes. Since IP does not make any
guarantee about the delivery of the data, its call an unreliable protocol.
Even if it is unreliable, IP cannot be considered weak and useless; since it provides only the
functionality that is required for transmitting data thereby giving maximum efficiency. Since there is
no mechanism of error detection or correction in IP, there will be no delay introduced on a medium
where there is no error at all.
C. Transport Layer
Transport layer protocols are responsible for transmission of data running on a process of one
machine to the correct process running on another machine.
The transport layer contains three protocols
1. TCP
2. UDP
3. SCTP
1. TCP – Transmission Control Protocol
i. TCP is a reliable connection-oriented, reliable protocol i.e. a connection is
established between the sender and receiver before the data can be transmitted.
36
ii. It divides the data it receives from the upper layer into segments and tags a
sequence number to each segment which is used at the receiving end for
reordering of data.
D. Application Layer
i. The Application Layer is a combination of Session. Presentation and
Application Layers of OSI models and define high level protocols like File
Transfer (FTP). Electronic Mail (SMTP). Virtual Terminal (TELNET).
Domain Name Service (DNS), etc.
ADDRESSING IN TCP/IP
APPLICATION APPLICATION
Processes
LAYER LAYER
TRANSPORT PORT
TCP UDP SCTP
LAYER ADDRESS
IP and other
NETWORK LOGICAL
associated
LAYER ADDRESS
protocols
4. Specific Address
i. Port addresses address facilitates the transmission of data from process to
process but still there may be a problem with data delivery.
For Ex: Consider users A, B & C chatting with each other using Google Talk.
Every user has two windows open, user A has two chat windows for B & C,
user B has two chat windows for A & C and so on for user C.
Now a port address will enable delivery of data from user A to the correct
process (in this case Google Talk) on user B but now there are two windows
of Google Talk for user A & C available on B where the data can be delivered.
ii. Again the responsibility of the port address is over here and there is a need of
addressing that helps identify the different instances of the same process.
iii. Such address are user friendly addresses and are called specific addresses.
iv. Other Examples: Multiple Tabs or windows of a web browser work under the
same process that is HTTP but are identified using Uniform Resource
Locators (URL). Emails addresses.
39
IP PROTOCOL – IPV4
Packets in the IPv4 format are called datagram. An IP datagram consists of a header part and a text
part (payload). The header has a 20-byte fixed part and a variable length optional part. It is
transmitted in big-endian order: from left to right, with the high-order bit of the Version field going
first.
IPv4 can be explained with the help of the following points:
1. IP addresses
2. Address Space
3. Notations used to express IP address
4. Classfull Addressing
5. Subnetting
6. CIDR
7. NAT
8. IPv4 Header Format
IP addresses
Every host and router on the Internet has an IP address, which encodes its network number and host
number. The combination is unique: in principle, no two machines on the Internet have the same IP
address. An IPv4 address is 32 bits long
They are used in the Source address and Destination address fields of IP packets.
An IP address does not refer to a host but it refers to a network interface.
Address Space
An address space is the total number of addresses used by the protocol. If a protocol uses N bits to
define an address, the address space is 2N because each bit can have type different values (0 or 1) and
N bits can have 2N values.
IPv4 uses 32-bit addresses, which means that the address space is 232 or 4,294,967,296 (more than 4
billion).
Notations
There are two notations to show an IPv4 address:
1. Binary notation
The IPv4 address is displayed as 32 bits.
Ex. 11000001 10000011 00011011 11111111
2. Dotted decimal notation
To make the IPv4 address easier to read, Internet addresses are usually written in decimal form with
a decimal point (dot) separating the bytes.
Each byte (octet) is 8 bits hence each number in dotted-decimal notation is a value ranging from 0 to
255.
Ex. 129.11.11.239
Classful addressing
In classful addressing, the address space is divided into five classes: A, B, C, D, and E.
40
32 Bits
Range of host
Class address
1.0.0.0 to
A 0 Network Host 127.255.255.255
128.0.0.0 to
B 10 Network Host 191.255.255.255
192.0.0.0 to
C 110 Network Host
224.0.0.0 to
D 1110 Multicast address 239.255.255.255
240.0.020 to
E 1111 Reserved for future use 255.255.255.255
The IP address 0.0.0.0 is used by hosts when they are being booted.
All addresses of the form 127.xx.yy.zz are reserved for loopback testing, they are processed locally
and treated as incoming packets.
Subnetting
It allows a network to be split into several parts for internal use but still act like a single network to
the outside world.
To implement subnetting, the router needs a subnet mask that indicates the split between network +
subnet number and host. Ex. 255.255.252.0/22. A‖/22‖ to indicate that the subnet mask is 22 bits
long.
Consider a class B address with 14 bits for the network number and 16 bits for the host number
where some bits are taken away from the host number to create a subnect number.
41
32 Bits
CIDR
A class B address is far too large for most organizations and a class C network, with 256 addresses is
too small. This leads to granting Class B address to organizations who do not require all the address
in the address space wasting most of it.
NAT (Network Address Translation) was used to speed up the transition process.
The only rule is that no packets containing these addresses may appear on the Internet itself. The
three reserved ranges are:
Operation:
Within the Organization, every computer has a unique address of the form 10.x.y.x. However, when
a packet leaves the organization, it passes through a NAT box that converts the internal IP source
address, 10.x.y.z to the organization through IP address, 198.60.42.12 for example.
42
32
bits
Version IHL Type of Service Total Length
Identification
DM Fragment Offset
F F
Time to live Protocol Header checksum
Source Address
Destination Address
Options (0 or more)
A data switched network consists of a series of interlinked nodes, called switches. Switches are
devices capable of creating temporary connections between two or more devices linked to the switch.
In a switched network, some of these nodes are connected to the end systems (computers or
telephones, for example). Others are used only for routing. The following Figure shows a switched
network.
The end systems (communicating devices) are labeled A, B, C, D, and so on, and the switches are
labeled I, II, III, IV, and V. Each switch is connected to multiple links.
These are three different types of data switching principles that are employed, namely
a) circuit switching
b) message switching
c) packet switching
Much as telephone system using circuit switching equipment establishes a route between two
telephones, circuit-switching networks establish a path through the Internet work when the device
initiates a conversation.
The advantages of circuit switching are transparency and very low transmission delays, and it is
attractive for networks that carry a constant traffic.
S2 S4
A S1 S6 B
S3 S5
Figure. 10: Message switching forwards the complete message one switch at a time.
Message switching transfers the complete message from one switch to the next, where the message
stored before being forwarded again. Because each message is stored before being sent on to the next
switch, this type of network frequently is called a store-and-forward network. The message switches
often are general-purpose computers and must be equipped with sufficient storage (usually hard
drives) to enable them to store message until forwarding is possible. Message switching commonly is
used in e-mail because some delay is permissible when two computers exchange data in real time.
Message switching uses relatively low-cost devices to forward messages and can function well with
relatively slow communication channels.
Message switching offers the following advantages:
1) Data channels are shared among communicating devices, improving the efficiency of using
available bandwidth i.e. No dedicated path is required.
2) Message switches can store messages until a channel becomes available, reducing sensitivity
to network congestion.
3) Message priorities can be used to manage network traffic.
4) Broadcast addressing uses network bandwidth more efficiently by delivering message to
multiple destinations.
5) If the traffic flow is heavy calls are not blocked but merely delayed.
The chief disadvantage of message switching is that message switching is not suited for real-time
applications, including data communication, video, and audio.
b) Packet Switching
Packet switching attempts to further increase line utilization, system throughput, and some aspects of
IMP buffer management by dividing longer messages into fixed-size chunks called packets.
Different packets may then be sent via different routes and reassembled at the destination for
delivery to the recipient. Figure 4.11a, show the packet switching principle.
46
1
S2 S4 2 2
4 1
1 2 3 4 4 4 3 2 1
A S1 2
S6 B
3 2 4 3
4 3
S3 S5
Fig. 4.11a Packet switching breaks up the message into smaller pieces that are routed independently.
Example of packet switching protocol is the X.25. The packet header follows the X.25
recommendations and the frame header and trailer follow the HDLC protocol. The two start flags
define the beginning and the end of the frame within which the error detection process is applied.
The flag sequence is 0111 1110 and must not be allowed to appear anywhere else inside the packet.
As each terminal transmits a message it monitors the transmitted packets and if five consecutive 1‘s
should be detected, other in a flag, in will immediately bit stuff a 0. At the receiving end the
incoming packets are again monitored and whenever five 1‘s followed by a 0 arrived, the 0 will be
discarded or bit stripped.
The eight – bit address field does not give the address of either the source or the destination
terminal (this is given in the packet header). Instead, the address is a code that is used to indicate
whether a frame is one that just been originated; known as a command frame or whether it is an
acknowledgement, known as a response frame. This makes is possible for the network to
distinguish between a frame that contains data that must be passed on to another PSE, or to a
terminal, and a frame that can be discarded. There are just two possible addresses:
00000011 is address A, while 00000001 is address B.
Each bit in the eight -bit control field has a separate function among them are:
The first bit transmitted is set to 0 to indicate an information frame, and is set to 1 to indicate either
a supervisory frame (i.e., one used in the setting up of virtual circuit) or an unnumbered frame (i.e.,
one concerned with the acknowledgement involved with setting-up and with error control). There are
47
three types of supervisory frame: the receive ready frame (RR), the receive not ready frame (RNR),
and the reject frame (REJ).
If a frame is transmitted but is not acknowledged it will after a certain time retransmitted.
Bits 2, 3 and 4 indicate the number of a frame (0 to 7) using binary arithmetic, and bits 6, 7 and 8
indicate the number of the next frame that is expected in the opposite direction.
The fifth bit is the poll/final bit and it is normally set at 0. When it is at 1, either the retransmission of
the packet is requested, or the packet is one that has been retransmitted.
The 24 bit packet header field holds the address of the source and destination terminals. The 16-bit
CRC field is used for detection of transmission error.
Advantages of Packet Switching
1) Packet switching optimizes the use of bandwidth by enabling many devices to route packets
through the same network channels. At any given time, a switch can route packets to several
different destination devices, adjusting the routes as required to achieve the best efficiency.
2) Because entire messages are not stored at the switches prior to forwarding, transmission
delays are significantly shorter than delays encountered with message switching.
Several methods of packet switching exist. Two common methods, which are supported by the
transport layer are: virtual circuit and datagram. These are called connection- oriented and
connectionless services, respectively.
(a) Virtual circuit: A virtual circuit is modeled after the phone system. In a virtual circuit a
logical communication channel is established and remained fixed between two hosts for the
purposes of a conversation. A virtual circuit reliably delivers messages in the order they were
sent. The mode of communication that uses virtual circuits is called connection oriented
service, because it requires the interested parties to explicitly establish a communication link
in order to exchange message.
(b) Datagram: Datagram service is modeled after the postal service, where individual messages
are sent independently and without prior handshaking. A datagram is regarded as an
unreliable message delivery mechanism because receipt of messages is not acknowledged. In
most cases messages sent as datagrams may be lost or received out of order.
Quality of service (QoS) is a set of technologies that work on a network to guarantee its ability to
dependably run high-priority applications and traffic under limited network capacity. QoS
technologies accomplish this by providing differentiated handling and capacity allocation to specific
flows in network traffic. This enables the network administrator to assign the order in which packets
are handled and the amount of bandwidth afforded to that application or traffic flow.
For example, video call packets are priority over email download packets because video
conferences occur in real time. Should a packet drop or be delayed, meeting participants
could suffer a degraded end-user experience. When it comes to emails, packet loss will not
cause service lapses for end users.
The QoS networking mechanisms for ordering packets and allotting bandwidth are queuing
and bandwidth management, respectively. Before they can be implemented, however, traffic
must be differentiated using classification tools.
The classification of traffic according to policy ensures consistency and adequate availability
of network resources for the most important applications.
The QoS tool views packet headers in order to successfully prioritize. The packet header
contains information about the packet like where it came from, and where it‘s going. If the
QoS tool determines it is a packet for a video call, it will give the packet priority over less
time-sensitive packets.
Traffic can be classified crudely by port or IP, or using a more sophisticated approach such as
by application or user. The latter parameters allow for more meaningful identification and
consequently classification of the data.
Next, queuing and bandwidth management tools are assigned rules to handle traffic and data
flows. Rules are specific to the classification they received upon entering the network.
The queuing mechanism allows for packets within traffic flows to be stored until the network
is ready to process it. Priority queuing (PQ) ensures necessary availability and minimal
latency of network performance. The most important applications and traffic are assigned
priority and bandwidth based on their classification.
This ensures the most important activities on a network are not starved of bandwidth by
activities of lower priority. Applications, users and traffic can be batched in up to eight
differentiated queues.
Bandwidth management mechanisms measure and control traffic flows on the network. Preventing
exceeding its capacity allows for network congestion avoidance that occurs.
Mechanisms for bandwidth management include:
1. Traffic shaping — a rate limiting technique used to optimize or guarantee performance and
increase usable bandwidth where necessary.
2. Scheduling algorithms — algorithms that offer varied methods for providing bandwidth to
specific traffic flows.
49
Benefits of QoS
Historically, business networks functioned separately. Computers and servers were usually
connected to one network, and phone calls another. The only exception was if a computer relied on a
telephone line to access the internet. Consequently, networks were only transmitting data, making
speed less critical.
Today businesses rely on applications designed to carry audio and video content for meetings,
presentations and even virtual conferences. These types of applications must be delivered at high
speed.
QoS ensures critical applications requiring high bandwidth for real-time traffic can perform at high
levels:
It ensures the availability of the network as well as the applications that run on it.
Critical applications have access to the resources they require to run successfully.
User experience is improved as data is transported through the network efficiently and
securely without disruption.
Bandwidth is used more efficiently, which reduces costs by eliminating the need to upgrade
bandwidth.
Administrators can more effectively manage traffic.
The Bluetooth Special Interest Group (SIG) was founded in 1998 to oversee the development
and introduction of Bluetooth technology. Intel, IBM, Nokia, and Toshiba joined Ericsson as
the founding members of the SIG, and more than 8,000 companies have signed on since.
The Bluetooth wireless specification got its name from Harald Blaatand (translates to
"Bluetooth"), a 10th-century Danish king who used diplomacy to negotiate a truce between
two feuding factions. In fact, the Bluetooth logo is an overlay of the Danish characters for the
king's initials: H.B.
52
Typically, devices with Bluetooth technology have a range of 10 meters (about 30 feet), and
data transfer rates up to 3 megabits (375 kilobytes) per second. That makes Bluetooth
technology suitable for transferring smaller files such as text documents and cell phone
contacts, as well as lower-quality images and audio. At these transfer speeds, Bluetooth can't
really handle streaming video or high-quality images and audio at this point, but this may
change in the future when new Bluetooth standards are introduced.
Solution:
a. The features to be considered while setting up the network will involve deploying specific servers on the
network to perform those tasks and other facilities. The server/facilities to be integrated include:
1. File server: the file server will handle the file sharing need of the network
2. Email server: the email server will manage the protocols that will enable mails to be shared locally by
the departmental staff/student
3. Broadband internet link: a broadband link with considerable speed is required to provide internet
access for close to 500 users.
The proposal
Topology description:
Conventional topology for this kind of network will be the hybrid (star-star). The department has
three floors (ground, first and second floor).
Each floor will have between 2-4 access point depending on the coverage ability of the particular
equipment deployed
Each floor will be connected to a central switch which is located at the network operating centre
(NOC)
The switch is then connected to the edge router that connects the entire network to the broadband
internet link
All servers are located at the NOC and connected to the switch.
The diagram below shows the topology ( Note: basic equipment like routers, switches and access
points are to be used and no particular order of arrangement as students view of the network will
defer)
53
Network architecture:
Client server architecture will be ideal for the network.
The network requires some servers (email, file, DHCP servers etc)
Users should not have control of the network
Networking Devices
Unit Device Specification Remark
1 Router High end industrial routers Used for connecting the NOC to the internet
link. Can perform NAT
2 Switch High end industrial switches Connects the Access points and servers
together
6 Access Access points able carry 100 Each floor will have two access points each.
points users at a time
Network diagram
Note: network diagram will vary but should portray the basic concept of star-star topology
Bill of engineering quantity
Item Unit Cost per unit (N) Total cost
Router 1 450,000 450,000
Switch 2 250,000 250,000
Access points 6 150,000 900,000
Email server 1 1,200,000 1,200,000
File server 1 1,200,000 1,200,000
Internet link 1 2,000,000 2,000,000
Cabling cat 6 I caton cat 6 45,000 45,000
Cabling fiber 1500m fiber cable 2,500,000 2,500,000
Total
Note: cost and table structure are not necessarily going to follow same structure above.
HLR
VLR
EIR
AUC
Figure 12. GSM Architecture
These are the mobile station (MS), the base station subsystem (BSS) and the network subsystem.
(1) The Mobile Station: A mobile station (MS) may be referred to as a ―handset‖, a ―mobile‖, a
portable terminal or mobile equipment (ME). It also includes a subscriber identity module (SIM)
that is normally removable. Each SIM card has a unique identification number called IMSI
(International Mobile Subscriber Identity). In addition, each MS is assigned a unique hardware
identification called IMEI (for International Mobile Equipment Identity). In some of the newer
applications (e.g. Data communications) an MS can also be a terminal that acts as a GSM interface;
e.g. for a laptop computer. In this new application, the MS does not look like a normal GSM
telephone. The seemingly low price of a mobile phone can give the (false) impression that the
product is not of high quality. Besides providing a transceiver (TRX) for transmission and reception
55
of voice and data, the MS also performs a number of very demanding tasks such as authentication,
handover, encoding and channel encoding.
(2) The Base Station Subsystem (BSS): The BSS is made up of the based station controller
(BSC) and the base transceiver station (BTS).
BSC: The primary function of the BSC is call maintenance. The mobile stations normally send a
report of their received signal strength to the BSC every 480ms. With this information the BSC
decides to initiate handovers to other cells, change the BTS transmitter power, etc.
BTS: GSM uses a series of radio transmitters called BTSs to connect the mobiles to a cellular
network. Their tasks include:
Channel coding/decoding and
Encryption/decryption.
A BTS is comprised of radio transmitters and receivers, antennas, the interface to the pulse code
modulation (PCM) facility, etc. The BTS may contain one or more transceivers to provide the
required call handling capacity. A cell site may be omni-directional or split into typical three
directional cells.
The Mobile Switching Center (MSC): The MSC acts like a standard exchange in a fixed network
and additionally provides all the functionally needed to handle a mobile subscriber.
The main functions are:
Registration;
Authentication;
Location updating;
Handovers and
Call routing to a roaming subscriber.
If the MSC also has a gateway function for communicating with other networks, it is called Gateway
MSC (GMSC).
The home location register (HRL): The HLR is a database used for management of mobile
subscribers. It stores the international mobile subscriber identity (IMSI), mobile station ISDN
number (MSISDN) and current visitor location register (VLR) address. The main information stored
here concerns the location of each mobile station in order to be able to route calls to the mobile
subscribers managed by each HLR. The HLR also maintains the services associated with each MS.
One HLR can serve several MSCs.
The visitor location register (VLR): Contains the current location of the MS and selected
administrative information from the HLR, necessary for call control and provision of the subscribed
services, for each mobile currently located in the geographical area controlled by the VLR. A VLR
is connected to one MSC and is normally integrated into the MSC‘s hardware.
The Authentication Center (AuC): This is a protected database that holds a copy of the secret key
stored in each subscriber‘s SIM card which is used for authentication and encryption over the radio
channel. The AuC provides additional security against fraud. It is normally located close to each
HLR within a GSM network.
The Equipment Identity Register (EIR): The EIR is a database that contains a list of all valid
mobile station equipment within the network, where each mobile station is identified by its
international mobile equipment identity (IMEI). The EIR has three databases:
(i) White list: for all known good IMEIs,
(ii) Black list: for bad or stolen handset,
(iii) Grey list: for handsets/IMEIs that are uncertain.
Operation and Maintenance Center (OMC): The OMC is a management system that oversees the
GSM functional blocks. The OMC assists the network operator in maintaining satisfactory operation
56
of the GSM network. The OMC is responsible for controlling and maintaining the MSC, BSC and
BTS. It can be in charge of an entire public land mobile network (PLMN) or just some parts of the
PLMN.
Figure 13 illustrates a hierarchy for an overlaying cellular network. Each unit object is associated
with a parent cell object, which represents a geographical area serviced by one base station (BS).
Each cell object is associated with a parent base station controller (BSC) object, which is also
associated with a parent mobile systems controller (MSC) object. Finally, each MSC object is
Cell object
associated with a parent central office (CO) object.
MSc object CO
BSc1
Unit object
Cells
BSc2
Authentication
One Time passwords
Program Threats
System Threats
Computer Security Classifications
Authentication
Authentication refers to identifying each user of the system and associating the executing programs
with those users. It is the responsibility of the Operating System to create a protection system which
ensures that a user who is running a particular program is authentic. Operating Systems generally
identifies/authenticates users using following three ways:
Username/Password − User need to enter a registered username and password with
Operating system to login into the system.
User card/key − User need to punch card in card slot, or enter key generated by key
generator in option provided by operating system to login into the system.
User attribute - fingerprint/ eye retina pattern/ signature − User need to pass his/her
attribute via designated input device used by operating system to login into the system.
One-time passwords (OTPs) provide additional security along with normal authentication. In One-
Time Password system, a unique password is required every time a user tries to login into the
system. Once a one-time password is used, then it cannot be used again. One-time password are
implemented in various ways.
Random numbers − Users are provided cards having numbers printed along with
corresponding alphabets. System asks for numbers corresponding to few alphabets randomly
chosen.
Secret key − User are provided a hardware device which can create a secret id mapped with
user id. System asks for such secret id which is to be generated every time prior to login.
Network password − Some commercial applications send one-time passwords to user on
registered mobile/ email which is required to be entered prior to login.
Program Threats
Operating system's processes and kernel do the designated task as instructed. If a user program made
these process do malicious tasks, then it is known as Program Threats. One of the common
example of program threat is a program installed in a computer which can store and send user
credentials via network to some hacker. Following is the list of some well-known program threats.
Trojan Horse − Such program traps user login credentials and stores them to send to
malicious user who can later on login to computer and can access system resources.
Trap Door − If a program which is designed to work as required, have a security hole in its
code and perform illegal action without knowledge of user then it is called to have a trap door.
Logic Bomb − Logic bomb is a situation when a program misbehaves only when certain
conditions met otherwise it works as a genuine program. It is harder to detect.
Virus − Virus as name suggest can replicate themselves on computer system. They are highly
dangerous and can modify/delete user files, crash systems. A virus is generatlly a small code
embedded in a program. As user accesses the program, the virus starts getting embedded in
other files/ programs and can make system unusable for user
58
System Threats
System threats refers to misuse of system services and network connections to put user in trouble.
System threats can be used to launch program threats on a complete network called as program
attack. System threats creates such an environment that operating system resources/ user files are
misused. Following is the list of some well-known system threats.
Worm − Worm is a process which can choked down a system performance by using system
resources to extreme levels. A Worm process generates its multiple copies where each copy
uses system resources, prevents all other processes to get required resources. Worms
processes can even shut down an entire network.
Port Scanning − Port scanning is a mechanism or means by which a hacker can detects
system vulnerabilities to make an attack on the system.
Denial of Service − Denial of service attacks normally prevents user to make legitimate use
of the system. For example, a user may not be able to use internet if denial of service attacks
browser's content settings.
As per the U.S. Department of Defense Trusted Computer System's Evaluation Criteria there are four
security classifications in computer systems: A, B, C, and D. This is widely used specifications to
determine and model the security of systems and of security solutions. Following is the brief
description of each classification.
1
Type A
Highest Level. Uses formal design specifications and verification techniques. Grants a
high degree of assurance of process security.
2
Type B
Provides mandatory protection system. Have all the properties of a class C2 system.
Attaches a sensitivity label to each object. It is of three types.
B1 − Maintains the security label of each object in the system. Label is used for
making decisions to access control.
B2 − Extends the sensitivity labels to each system resource, such as storage
objects, supports covert channels and auditing of events.
B3 − Allows creating lists or user groups for access-control to grant access or
revoke access to a given named object.
3
Type C
Provides protection and user accountability using audit capabilities. It is of two types.
C1 − Incorporates controls so that users can protect their private information and
keep other users from accidentally reading / deleting their data. UNIX versions are
mostly Cl class.
C2 − Adds an individual-level access control to the capabilities of a Cl level
system.
59
4
Type D
Lowest level. Minimum protection. MS-DOS, Window 3.1 fall in this category.
Trusted third-party
(e.g., arbiter, distributer
Of secret Information)
Sourc Message
Sourc Message
Information Security
Security-related channel related
transformation transformation
Message
Message
Secret Opponent Secret
Information Information
Fig. Model for Network security
A message is to be transferred from one party to another across some sort of Internet. The two
parties, who are the principals in this transaction, must cooperate for the exchange to take place. A
logical information channel is established by defining a route through the Internet from source to
destination and by the cooperative use of communication protocols (e.g., TCP/ IP) by the two
principals.
Security aspects come into play when it is necessary or desirable to protect the information
transmission from an opponent who may present a threat to confidentiality, authenticity and so on.
All the techniques for providing security have two components:
(i) A security-related transformation on the information to be sent. Examples include the
encryption of the message, which scrambles the message so that it is unreadable by the
opponent, and the addition of a code based on the contents of the message, which can be
used to verify the identity of the sender;
(ii) Some secret information shared by the two principals and it is hoped, unknown to the
opponent. An example is an encryption key used in conjunction with the transformation
to scramble the message before transmission and unscramble it on reception.
A trusted third party may be needed to achieve secure transmission. For example, a third party may
be responsible for distributing the secret information to the two principals while keeping it from any
opponent. Or a third party may be needed to arbitrate disputes between the two principals concerning
the authenticity of a message transmission.
60
This general model shows that there are four basic tasks in designing a particular security service:
1. Design an algorithm for performing the security related transformation. The algorithm
should be such that an opponent cannot defeat its purpose.
2. Generate the secret information to be used with the algorithm.
3. Develop methods for the distribution and sharing of the secret information.
4. Specify a protocol to be used by the two principals that makes use of the security
algorithm and the secret information to achieve a particular security service.
Fundamental of Cryptography
One way to strengthen security in computer system is to encrypt sensitive records and messages
in transit and in storage. The basic model of cryptographic system is shown in figure below
Encryption Encryption
Method, E Method, D
P C P
C = Ek(P) P = D(C)
Plaintext Ciphertext Plaintext
Insure
Communication Decryption key
Encryption
Channel
key, k
The original unenciphered text is called the plaintext or the clear text. It can be encrypted using
some encryption method parameterized by a key. The result is called ciphertext. The ciphertext may
be stored or transmitted via the communication medium such as wires and radio links, or by a
messenger.
Plaintext can be obtained by decrypting the enciphered message using the decryption key. The
process of converting from plaintext to ciphertext is known as enciphering or encryption. Restoring
the plaintext from the ciphertext is known as deciphering or decryption. The many schemes used
for encryption constitute the area of study known as cryptography. Such a scheme is known as a
cryptography system or a cipher.
A cryptographic system that uses the same key for both encryption and decryption is said to
be symmetric. In asymmetric schemes, different keys are used at the two ends. The increased
confidence in the integrity of systems that use encryption is based on the motion that ciphertext
should be very difficult to decipher without knowledge of the key. The art of breaking ciphers is
called cryptanalysis.
Encryption
Key technology: encryption. Store and transmit information in an encoded form that does not make
any sense.
Start with text to be protected. Initial readable text is called clear text.
Encrypt the clear text so that it does not make any sense at all. The nonsense text is called
cipher text. The encryption is controlled by a secret password or number; this is called the
encryption key.
61
The encrypted text can be stored in a readable file, or transmitted over unprotected channels.
To make sense of the cipher text, it must be decrypted back into clear text. This is done with
some other algorithm that uses another secret password or number, called the decryption key.
The encryption function cannot easily be inverted (cannot get back to clear text unless you
know the decryption key).
The encryption and decryption must be done in some safe place so the clear text cannot be
stolen.
The keys must be protected. In most systems, can compute one key from the other
(sometimes the encryption and decryption keys are identical), so cannot afford to let either
key leak out.
Public key encryption: new mechanism for encryption where knowing the encryption key does not
help you to find decryption key, or vice versa.
User provides a single password, system uses it to generate two keys (use a one-way
function, so cannot derive password from either key).
In these systems, keys are inverses of each other: could just as easily encrypt with decryption
key and then use encryption key to recover clear text.
Each user keeps one key secret, publicizes the other. Cannot derive private key from public.
Public keys are made available to everyone, in a phone book for example.
There are three basic types of code-breaking attacks: ciphertext attack, known plaintext and
chosen plaintext.
i) Ciphertext attact:- occurs when an adversary comes into possession of only the
ciphertext.
62
ii) The ―known plaintext‖ problem occurs when the intruder has some matched portions
of the ciphertext and the plaintext.
iii) Chosen plaintext:- problem occurs when the attacker has the ability to encrypt
pieces of plain text.
Thus, in line with the principle of open design, the strength of an encryption scheme should rely on
the secrecy of the key and on the mathematical soundness of the algorithm.
One of the first known Ciphers is attributed to Julius Caesar. It is based on substitution of each letter
with a letter that comes three places later in the alphabetic system.
10 21 12 09 21 19 03 01 05 19 01 18 plaintext (numeric)
05 06 07 05 06 07 05 06 07 05 06 07 key EFG
Giving,
OSKLSTFGBVGU Ciphertext, letter equivalent
The algorithm begins by performing an initial transposition, t, which is a permutation of the 64 –bit
input. The result is divided into two 32-bit halves denoted as Left, Lo and Right, Ro.
The result is subjected to 16 rounds of encipherment under the control of the key. After each round,
the left and right halves of the 64-bit intermediate result are swapped i.e, the left half for the next
round is the right half of the previous one. The new right half is obtained as the exclusive OR of the
63
previous round‘s left half and the result of a fairly complex function of the previous round‘s right
half and the current round‘s key.
Each of the 16 different permutations uses a different key Ki . It is obtained by performing a
series of permutations and shifts on the user-supplied 56-bit key.
The inverse of the initial permutation is applied to the result of the last iteration to complete
the algorithm in step 3.
Decryption is performed by executing the described steps in reverse.
Public-Key Cryptography
An interesting and attractive alternative to key distribution in symmetric system is provided by
public-key cryptographic systems. Public-key cryptographic system is asymmetric i.e. it uses one
key for encryption and a different key for decryption.
Public-key algorithms are based on the use of a public enciphering transformation, E, and a private
deciphering transformation, D. For each user, A, the private transformation, DA, is described by a
private key. The public key, EA, is derived from the private key using a one-way transformation
whose inverse is exceedingly difficult to compute. The two transformations are related as follows:
DA (EA(P))= P
That is, decryption of an encrypted message yields the original plaintext, P.
Decryption is performed using the private key. Encryption, on the other hand, uses the public key.
Public keys are usually stored in commonly accessible areas, such as publicly readable files.
When two parties, A and B, wish to communicate securely over insecure channels, they proceed as
follows. The sender, A, looks up the receiver‘s public key and uses it to encipher the message, C =
EB (P). The recipient, B, decrypts the message using its private key. The result is:
DB (C) = DB (EB (P)) = P.
Secrecy is maintained because only B knows its private key and can decipher the message. In theory,
knowledge of EB cannot be used by an intruder to derive DB.
These parameters may be used to encipher plaintext p where 0≤ p < n. If the plaintext is longer, it
must be broken into strings smaller than n. The ciphertext is obtained as C = Pe mod n. C may then
be decrypted as P = Cd mod n. Steps of the algorithm ensure that encryption and decryption are
inverses of each other.
The working of the RSA algorithm is illustrated in fig ( ) below.
64
P P3 P3 mod 33 = C C7 C7 mod 33 = P
S 19 6859 28 28 13492928512 19 S
A 1 1 1 1 1 A
M 13 2197 19 19 893871739 13 M
P 16 4096 4 4 16384 16 P
L 12 1728 12 12 35831808 12 L
E 5 125 26 26 8031810176 5 E
Sender, A Receiver,
Encryptio B
Decryption
P Pe mod n P
Cd mod
n n
e=3 d=7
B’s public key B‘s private key
Public key PU ={e, n} = {3, 33} Private key PR {d, n} = {7, 33}
Fig. Example of RSA algorithm
In order to simplify computations, small values are chosen for p and q. In this example, P = 3 and q
= 11, yielding n = pq = 33 and Φ(n) = (3-1) (11-1) = 20.
The private key d is chosen as 7, which is relatively prime to 20 since the two have no common
factors.
The e is derived from 7e mod 20 = 1 as e = 3.
These parameters are used to encipher the plaintext SAMPLE. The value of n limits p to 33, which
allows only one character (letter) per plaintext block. The plaintext letter numbers are obtained using
the English alphabet in sequence i.e. A = 1.
Example Question:
With the aid of a well annotated diagram, describe a simple cryptographic system (3marks)
Solution:
Diagram of a cryptographic model
Example Question:
State the RSA/MIT (Rivest et al., 1978) algorithm.
We have chosen p = 3 and q= 11, giving n = 33 and z = 20. A suitable value for d is d = 7, since 7
and 20 have no common factors. With these choices, e can be found by solving the equation 7e = 1 (
mod20 ), which yields e = 3. The ciphertext, C, for a plaintext message, P , is given by C = P3( mod
33 ). The ciphertext is decrypted by the receiver according to the rule P = C7(mod 33). The
encryption of the plaintext ― SUZANNE‖ is as shown below
Network Performance
Network performance is defined by the overall quality of service provided by a network. This
encompasses numerous parameters and metrics that must be analyzed collectively to assess a given
network.
Network performance measurement is therefore defined as the overall set of processes and tools that
can be used to quantitatively and qualitatively assess network performance and provide actionable
data to remediate any network performance issues.
The demands on networks are increasing every day, and the need for proper network performance
measurement is more important than ever before. Effective network performance translates into
improved user satisfaction, whether that be internal employee efficiencies, or customer-facing
network components such as an e-commerce website, making the business rationale for performance
testing and monitoring self-evident.
When delivering services and applications to users, bandwidth issues, network down time, and
bottlenecks can quickly escalate into IT crisis mode. Proactive network performance management
solutions that detect and diagnose performance issues are the best way to guarantee ongoing user
satisfaction. The performance of a network can never be fully modeled, so measuring network
performance before, during, and after updates are made and monitoring performance on an ongoing
basis are the only valid methods to fully ensure network quality. While measuring and monitoring
66
network performance parameters are essential, the interpretation and actions stemming from these
metrics are equally important.
Network performance measurement tools can be broadly categorized into two types - passive and
active. Passive network measurement tools monitor (or measure) existing applications on the
network to gather data on performance metrics. This category of tool minimizes network disruption,
since no additional traffic is introduced by the tool itself. In addition, by measuring network
performance using actual applications, a realistic assessment of the user experience may be obtained.
Active networking performance measurement tools generate data that can be tailored to baseline
performance using pre-set routines. This testing requires an additive level of data traffic by nature, so
it must be scheduled appropriately to minimize impact on existing network traffic
To ensure optimized network performance, the most important metrics should be selected for
measurement. Many of the parameters included in a comprehensive network performance
management system focus on data speed and data quality. Both of these broad categories can
significantly impact end user experience and are influenced by several factors.
Latency
With regards to network performance measurement, latency is simply the amount of time it takes for
data to travel from one defined location to another. This parameter is sometimes referred to as delay.
Ideally, the latency of a network is as close to zero as possible. The absolute limit or governing factor
for latency is the speed of light, but packet queuing in switched networks and the refractive index of
fiber optic cabling are examples of variables that can increase latency.
Packet Loss
With regards to network performance measurement, packet loss refers to the number of packets
transmitted from one destination to another that fail to transmit. This metric can be quantified by
capturing traffic data on both ends, then identifying missing packets and/or retransmission of
packets. Packet loss can be caused by network congestion, router performance and software issues,
among other factors.
The end effects will be detected by users in the form of voice and streaming interruptions, or
incomplete transmission of files. Since retransmission is a method utilized by network protocols to
compensate for packet loss, the network congestion that initially led to the issue can sometimes be
exacerbated by the increased volume caused by retransmission.
To minimize the impact of packet loss and other network performance problems, it is important to
develop and utilize tools and processes that identify and alleviate the true source of problems
quickly. By analyzing response time to end user requests, the system or component that is at the
67
root of the issue can be identified. Data packet capture analytics tools can be used to review response
time for TCP connections, which in turn can pinpoint which applications are contributing to the
bottleneck.
Transmission Control Protocol (TCP) is a standard for network conversation through which
applications exchange data, which works in conjunction with the Internet Protocol (IP) to define how
packets of data are sent from one computer to another. The successive steps in a TCP session
correspond to time intervals that can be analyzed to detect excessive latency in connection or round
trip times.
Throughput is a metric often associated with the manufacturing industry and is most commonly
defined as the amount of material or items passing through a particular system or process. A
common question in the manufacturing industry is how many of product X were produced today, and
did this number meet expectations. For network performance measurement, throughput is defined in
terms of the amount of data or number of data packets that can be delivered in a pre-defined time
frame.
Bandwidth, usually measured in bits per second, is a characterization of the amount of data that can
be transferred over a given time period. Bandwidth is therefore a measure of capacity rather than
speed. For example, a bus may be capable of carrying 100 passengers (bandwidth), but the bus may
actually only transport 85 passengers (throughput).
Jitter
Jitter is defined as the variation in time delay for the data packets sent over a network. This variable
represents an identified disruption in the normal sequencing of data packets. Jitter is related to
latency, since the jitter manifests itself in increased or uneven latency between data packets, which
can disrupt network performance and lead to packet loss and network congestion. Although some
level of jitter is to be expected and can usually be tolerated, quantifying network jitter is an important
aspect of comprehensive network performance measurement.
Latency vs Throughput
While the concepts of throughput and bandwidth are sometimes misunderstood, the same confusion
is common between the terms latency and throughput. Although these parameters are closely related,
it is important to understand the difference between the two.
Latency is a measurement of the delay in transfer time, meaning it will directly impact the
throughput, but is not synonymous with it. The latency might be thought of as an unavoidable
bottleneck on an assembly line, such as a test process, measured in units of time. Throughput, on the
other hand, is measured in units completed, which is inherently influenced by this latency.
Network performance management includes monitoring and optimization practices for key network
performance metrics such as application down time and packet loss. Increased network availability
68
and minimized response time when problems occur are two of the logical outputs for a successful
network management program. A holistic approach to network performance management must
consider all of the essential categories through which problems may be manifested.
Infrastructure
The overall network infrastructure includes network hardware, such as routers, switches and cables,
networking software, including security and operating systems as well as network services such as IP
addressing and wireless protocols. From the infrastructure perspective, it is important to characterize
the overall traffic and bandwidth patterns on the network. This network performance measurement
will provide insight into which flows are most congested over time and could become potential
problem areas.
Identifying the over-capacity elements of the infrastructure can lead to proactive corrections or
upgrades that can minimize future downtime rather than simply responding to any performance crisis
that may arise.
Network Issues
Performance limitations inherent to the network itself are often a source of significant emphasis.
Multiple facets of the network can contribute to performance, and deficiencies in any of these areas
can lead to systemic problems. Since hardware requirements are essential to capacity planning, these
elements should be designed to meet all anticipated system demands. For example, an inadequate bus
size on the network backplane or insufficient available memory might in turn lead to an increase in
packet loss or otherwise decreased network performance. Network congestion, on either the active
devices or physical links (cabling) of the network can lead to decreased speeds, if packets are
queued, or packet loss if no queuing system is in place.
Applications
While network hardware and infrastructure issues can directly impact user experience for a given
application, it is important to consider the impact of the applications themselves as important cogs in
the overall network architecture. Poor performing applications can over-consume bandwidth and
diminish user experience. As applications become more complex over time, diagnosing and
monitoring application performance gains importance. Window sizes and keep-alives are examples
of application characteristics that impact network performance and capacity.
Whenever possible, applications should be designed with their intended network environment in
mind, using real-world networks for testing rather than simulation labs. Ultimately, the variety of
network conditions an application is exposed to cannot be fully anticipated, but improvements in
development practices can lead to a decrease in network performance degradation due to application
issues. Applications contributing to poor network performance can be identified using analytics to
identify slow response time, while correcting these design limitations post-release can become a
formidable task.
Security Issues
Network security is intended to protect privacy, intellectual property, and data integrity. Thus, the
need for robust cyber security is never in question. Managing and mitigating network security issues
requires device scanning, data encryption, virus protection, authentication and intrusion detection, all
of which consume valuable network bandwidth and can impact performance.
69
Security breaches and downtime due to viruses are among the most costly performance problems
encountered, so any degradation induced by security products should be carefully weighed against
the potential downtime or data integrity disasters they prevent. With these constraints in mind, an
invaluable element of network performance monitoring with respect to security is the strategic use of
network security forensics. By recording, capturing and analyzing network data, the source of
intrusions and anomalous traffic such as malware may be identified. Captured network traffic can
utilized retrospectively for investigative purposes by reassembling transferred files.
Full Packet Capture (FPC) is one such technique used for after-the-fact security investigations.
Rather than monitoring incoming traffic for known malicious signatures, FPC provides constant
storage of unmodified network traffic and the ability to replay previous traffic through new detection
signatures. Given the high volume of data packet transfer inherent to a modern network, the storage
requirements associated with FPC can be formidable. By defining the mean time to detect (MTTD)
based on previous incident metrics, a logical minimum time for packet data storage can be
established. In some cases, packet filtering may be a viable method to selectively monitor high risk
traffic and lessen the storage demands. To facilitate forensic analysis capabilities, FPC software must
enable accurate time and date stamping of stored packets for search and investigation purposes.
A transaction is defined as a client request followed by a server reply, including both TCP and UDP
flows. With each read and write transaction between a client and a server, the following values are
measured and used to calculate how long the transaction takes to complete:
Round Trip Time: The time taken for a very small packet to travel across the network and
return
Network Delay: The overall time taken for data to cross from a client to a server, or from the
server to a client.
Server Delay: The time taken for a server to respond to a request.
Total Transaction Delay: The time taken for data to cross the network from a client to the
server and back. Unlike round trip time, this could include large packets and could result in
multiple packets being sent to the server, or received from the server.
Network Jitter: Measures the variability of the network delay time. This is expressed as a
multiple of one standard deviation.
Packet Loss: Measures when one or more packets within a transmission are successfully sent,
but fail to arrive at the destination.