Overview of Computer Networks
Overview of Computer Networks
2
Objectives of the Chapter
We will review
Data communications – an overview
The Internet: history, description, and structure
Network protocols and standards
Network (reference) models
3
1.1 Overview of Data Communications
A data communication system has 5 components
4
1.1.1 Network Criteria
Performance: can be measured using throughput, transit time
(amount of time required for a message to travel), response time
(elapsed time between an inquiry and the response), error rates,
link utilization, packet loss, and packet delay
Packet Loss: How does packet loss occur?
Normally, packet arrival rate to link exceeds output link capacity
Hence, packets queue in router buffers, waiting for their turn
Packets are dropped (loss) if buffer is full
Packets can also be lost in LANs due to collisions; if the
sending host makes 16 unsuccessful transmission attempts, it
gives up
Free (available) buffer slots: arriving packets
A are dropped (loss) if there are no free slots
5
Network Criteria (2)
Packet Delay: There are four sources of packet delay (in packet-
switched networks)
i. Nodal Processing Delay (dproc)
To check bit errors and to determine output link
Nodal processing delays in high-speed routers are typically on
the order of microseconds or less
ii. Queuing Delay (dqueue)
This is the time a packet waits at output link for transmission
It depends on congestion level of the router
If queue is empty, queuing delay is zero; else queuing delay
can be on the order of microseconds to milliseconds
A
6
Network Criteria (3)
iii. Transmission Delay (dtrans) - assume FCFS
R = link bandwidth (bps) e.g., for 10 Mbps Ethernet link,
R = 10 Mbps (there is confusion in measurement units – 10 Mbps
vs. 10 MBps vs. 10 MB)
L = packet length (bits)
Time to send bits into link, dtrans = L/R
Transmission delays are typically on the order of microseconds to
milliseconds
7
Network Criteria (4)
iv. Propagation Delay (dprop)
d = length of physical link (distance between two routers)
s = propagation speed in medium (depends on the type of link
and is in the range of 2x108 to 3x108 meters/sec– almost the
same as the speed of light which is 299,792,458 meters/sec)
Propagation delay, dprop = d/s
In WANs, propagation delays are on the order of milliseconds
Note: s and R are very different quantities!
dnodal = dproc + dqueue + dtrans + dprop
8
Network Criteria (5)
End-to-End Delay
This is the total delay from source to destination
Suppose there are N - 1 routers between the source host and the
destination host
The nodal delays accumulate and give an end-to-end delay
Dend-to-end = N(dproc + dqueue + dtrans + dprop)
9
1.2 Overview of the Internet
The Internet has become the third major global infrastructure, next
to the transportation system and energy distribution
When two or more networks are connected, they become an
internetwork, or internet
The most notable internet is called the Internet, a collaboration of
more than hundreds of thousands of interconnected networks
It came into being in 1969 - by ARPA (Advanced Research Project
Agency) of DoD for researchers they funded to share findings
It developed a packet-switched network, named as the ARPANET
By the mid-seventies, a full suite of protocols, called TCP were
developed and proposed as the standard underlying technology for
the expanded use of the ARPANET system
10
Overview of the Internet (2)
TCP was later split into two protocols: IP to handle datagram
routing and TCP to be responsible for higher-level functions such as
segmentation, reassembly, and error correction; it was named as
TCP/IP and was adopted as the standard protocol suite in 1983
Addressing used by ARPANET users became easier to handle in
1984 with the development of the Domain Name System (DNS);
this service took the responsibility of putting ARPANET numerical
address into readable text form
In the 1990s, an international consortium under the name of
European Center for Nuclear Research (CERN) created the
concept of web pages and the WWW that allowed the exchange of
data on the Internet with ease – The pioneer was Tim Berners-Lee
– A Computer Scientist and the first Director of the World Wide Web
Consortium (W3C)
11
Overview of the Internet (3)
Search Engines: ARCHIE (the first) was introduced at McGill
University; followed by Gopher (1991, University of Michigan),
VERONICA (1993, McGill); today there are many search engines
such as Bing, Google, etc. Search the other search engines
HTML was developed in 1992
Web Browsers: Mosaic (the first graphical web browser) was
developed in 1993 by students at the National Center for Super
Computing at the University of Illinois; today we have browsers like
Internet Explorer, Firefox, and Chrome; What is ChatGPT? (Although
the method that it is developed is in Artificial Intelligence)
Number of Internet hosts
The number of Internet hosts advertised in the DNS rose from
1,313,000 in January 1993 to 1,012,695,272 in January 2019, an
average annual increase of 32.71%
In the twenty six-year period between 1993 and 2019, the absolute
increase in the number of Internet hosts is 77028%
Source: http://ftp.isc.org/www/survey/reports/current/
12
Overview of the Internet (4)
1,200,000,000
1,000,000,000
800,000,000
Number of Hosts
600,000,000
400,000,000
200,000,000
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27
Year (1=1993, 27=2019)
Absolute Increase
13
Overview of the Internet (5)
140.00
120.00
100.00
Increase in %
80.00
60.00
40.00
20.00
0.00
1 3 5 7 9 11 13 15 17 19 21 23 25
-20.00
Year (1=1993, 27=2019)
Rate of Increase
14
Overview of the Internet (6)
A study by IDC (International Data Corporation) suggested that the
number of devices connected to the internet, including the
machines, sensors and cameras that make up the IoT, would hit
41.6 billion devices, or "things“, generating 79.4 zettabytes (270
bytes) of data in 2025
(Source: https://www.idc.com/getdoc.jsp?containerId=US46718220)
15
General Communication Scenario Between Source
and Destination
Mobile or Home Destination
or Institutional
(Enterprise)
Network
Mobile or Home
or Institutional
(Enterprise)
Source Network
First Hop/
Default Router
of Destination
Application First Hop/ Application
Default Router
Transport of Source Router Transport
Network Network Network
Internet (Mesh
Data Link Data Link Data Link
of Routers)
Physical Physical Physical
16
1.2.1 How do we describe the Internet?
Two ways: a nuts-and-bolts description and a service description
A Nuts-and-Bolts Description
Based on the basic hardware (computing devices) and
software components that make up the Internet
Not too long ago, these computing devices were primarily
traditional desktop PCs and servers
Increasingly, however, nontraditional Internet of “things” such
as laptops, smartphones, tablets, TVs, home appliances,
watches, eye glasses, cars, traffic control systems and more
are being connected to the Internet
All are called hosts or end systems
17
How do we describe the Internet? (2)
The Internet: Nuts-and-Bolts Description
18
How do we describe the Internet? (3)
Millions of connected computing
devices (hosts, end systems):
running network applications
Routers and Link Layer Switches: forward
packets (chunks of data)
Routers are used in the network core while
switches are used in access networks
19
How do we describe the Internet? (4)
A Services Description: as a networking infrastructure that provides
services to distributed applications
As a communication infrastructure: enabling distributed applications
Web, VoIP, e-mail, games, e-commerce, file sharing
Providing communication services to applications
Reliable data delivery from source to destination
or
“Best effort” (unreliable) data delivery
Protocols control the sending and receiving of messages
e.g., TCP, IP, HTTP, Skype, Ethernet
Internet standards for protocols
IETF: Internet Engineering Task Force
Its documents are called RFCs: Request for Comments
W3C: World Wide Web Consortium
20
“Cool” Internet Appliances
Web-enabled toaster
+ weather forecaster
Internet
World’s smallest web server Refrigerator
http://www.webservusb.com/ Internet phones
22
A closer look at network structure of the Internet (2)
The Network Edge
End systems (hosts)
At “edge of network” running
application programs; e.g., Web
and e-mail servers
Client/Server Model
A client host requests and receives
services from an always-on server;
e.g., Web browser/server; e-mail
client/server
23
A closer look at network structure of the Internet (3)
Peer-to-Peer Model
Minimal (or no) use of dedicated
servers; e.g., Skype, BitTorrent
24
A closer look at network structure of the Internet (4)
Access Networks
How to connect end systems to edge
routers? There are three levels
a. Residential Access
Connects home end systems to the
network
Point to point access
Dialup via modem
DSL: digital subscriber line
Cable modems
HFC: hybrid fiber-coaxial cable
b. Company Access
Connects end systems in a business or educational institution
into the network
A LAN is usually used to connect end systems to edge routers
25
A closer look at network structure of the Internet (5)
c. Wireless Access
Connects end systems (that are often mobile) to routers
Via base station aka “access point”
Wireless LANs
802.11a/b/g (WiFi): 11 or 54 Mbps
To/from the Internet
Router
Base
Station Mobile
Hosts
26
A closer look at network structure of the Internet (6)
The Network Core
Mesh of interconnected
routers (the red lines)
Hosts are connected by a
communication subnet
27
A closer look at network structure of the Internet (7)
A host may be part of a LAN on which a router is present or it may
be directly connected to a router
Hosts are owned by customers, whereas the communication subnet
is typically owned and operated by a telephone company or an
Internet Service Provider (ISP) - third-party carrier like ethio telecom
and Safaricom
Revise: Switching, their advantages and disadvantages
Circuit switching
Packet switching (Virtual circuit and datagram approaches)
Message switching
28
1.2.3 Internet Structure: Network of Networks
It is roughly hierarchical: access networks situated at the edge of
the Internet are connected to the rest of the Internet through a
tiered hierarchy of ISPs
a. At the center: Tier-1 ISPs (e.g., Verizon, Sprint, AT&T) with
national/international coverage; but no one has a presence in every
city in the world
They treat each other as equals
Internet Exchange Point
Tier-1 providers Tier 1 ISP
interconnect
(peer) privately
IXP
IXP
Tier 1 ISP
Tier 1 ISP IXP
29
Internet Structure: Network of Networks (2)
An IXP or a peering point is a physical network access point through
which major network providers (all Tiers) and Content Delivery
Networks (CDNs) exchange Internet traffic among their networks
The objective is to cut down costs and reduce latency
An IXP allows routing of data between each network, without
charging one another for the data transmitted
An IXP needs switches, routers, servers, neutral locations,
appropriate power sources, cooling, security, and technical experts
to run and manage the IXP
Participating networks share the costs of maintaining the physical
infrastructure and associated services
There are over 400 IXPs in the Internet today
According to the African IXP Association, there are currently 53 active
IXPs located in 47 cities in 36 countries of Africa; South Africa has the
most, with 6 IXPs, followed by 4 in Tanzania and 4 in Nigeria
30
Internet Structure: Network of Networks (3)
Country Number of IXPs Country Number of IXPs
Angola 2 Malawi 1
Benin 1 Mali 1
Botswana 1 Mauritius 1
Burkina Faso 1 Mozambique 1
Burundi 1 Namibia 1
Cameroon 2 Nigeria 4
Cote d'Ivoire 1 Republic of Congo 1
DRC 3 Rwanda 1
Djibouti 1 Senegal 1
Egypt 2 Somalia 1
Gabon 1 South Africa 6
Gambia 1 Sudan 1
Ghana 1 Tanzania 4
Guinee 1 Togo 1
Kenya 2 Tunisia 1
Lesotho 1 Uganda 1
Liberia 1 Zambia 1
Madagascar 1 Zimbabwe 1
Source: https://www.af-ix.net/ixps-list
31
Internet Structure: Network of Networks (4)
b. Tier-2 ISPs: smaller (often regional) ISPs
They connect to one or more Tier-1 ISPs, possibly other Tier-2 ISPs
as well
Tier-2 ISPs
Tier-2 ISP pays Tier-2 ISP Tier-2 ISP also peer with
tier-1 ISP for
Tier 1 ISP each other
connectivity to
the rest of the
Internet, i.e., Tier-
2 ISP is customer Tier 1 ISP Tier 1 ISP
of Tier-1 ISP Tier-2 ISP
Tier-2 ISP Tier-2 ISP
32
Internet Structure: Network of Networks (5)
c. Tier-3 ISPs and local ISPs
Last hop (“access”) network (closest to end systems)
local
ISP Tier 3 local
local local
ISP ISP
ISP ISP
Local and Tier- 3 Tier-2 ISP Tier-2 ISP
ISPs are
customers of Tier 1 ISP
higher Tier ISPs
connecting them
to the rest of the Tier 1 ISP
Tier 1 ISP Tier-2 ISP
Internet
local
Tier-2 ISP Tier-2 ISP
ISP
local local local
ISP ISP ISP
33
Internet Structure: Network of Networks (6)
Note: An ISP does not necessarily have to be a telecom company;
instead it can be, for example, a university (providing Internet
access to students, staff, and faculty), or a company (providing
access for its employees)
d. Content Distribution Networks (CDNs)
There are also content-provider networks Known as CDNs (There
will be more details in Chapter 10 - Multimedia Networking)
Google is currently one of the leading examples of such a content-
provider network; by 2017, it is estimated that Google has 50–100
data centers distributed across the globe (Africa?)
Google’s data centers are all interconnected via Google’s private
TCP/IP network, which spans the entire globe but is nevertheless
separate from the public Internet
This network only carries traffic to/from Google servers
34
Internet Structure: Network of Networks (7)
The Google private network attempts to “bypass” the upper tiers by
peering with lower-tier ISPs, either by directly connecting with them
or by connecting with them at IXPs
However, because many access ISPs can still only be reached by
transiting through tier-1 networks, the Google network also
connects to tier-1 ISPs, and pays those ISPs for the traffic it
exchanges with them Tier-2 ISP
Interconnection
of ISPs
35
Internet Structure: Network of Networks (8)
A packet passes through many networks!
local
ISP Tier 3 local
local local
ISP ISP
ISP ISP
Tier-2 ISP Tier-2 ISP
Tier 1 ISP
37
Network Protocols and Standards (2)
Because the physical and data link layers are responsible for
handling communication over a specific link, they are typically
implemented in a network interface card (for example, Ethernet or
WiFi interface cards)
Application layer protocols - such as HTTP and SMTP - are
implemented in software in the end systems
The following are categories of functions that form the basis of
protocols
Encapsulation
Segmentation and reassembly
Connection control
Exercise: On which layer(s) is
Addressing each category of functions
Multiplexing found?
Transmission services
38
Network Protocols and Standards (3)
Encapsulation
The inclusion of control information to data is called
encapsulation; each frame contains not only data but also control
information
Such control information falls into three categories: address
(sender/receiver), error-detecting code and protocol control
(information about protocol functions)
39
Network Protocols and Standards (4)
General scenario (ignoring segmentation)
A user generates data to be sent and passes to the transport layer
The transport layer adds a header, for example a TCP header,
and passes to the network layer
The network layer adds its own header to form a network layer
packet, for example an IP packet, and passes to the data link
layer
The data link layer adds its own header and trailer (CRC) and
passes to the physical layer for transmission
Packet (supplied by network layer)
Message
Encapsulation
M Application
Segment Ht M Transport
Datagram Hn Ht M Network
Frame Hd Hn Ht M Data link
Source
Physical
Message: application layer Data link
Segment: transport layer Physical
Datagram/packet: network layer
Frame: data link layer Link Layer
Destination
Switch
M Application Hn Ht M Network
Ht M Transport Hd Hn Ht M Data link
Hn Ht M Network Physical
Hd Hn Ht M Data link
Physical Router
41
Network Protocols and Standards (6)
Segmentation also called fragmentation (by the sender) and
reassembly (by the receiver)
A block of data for transmission is of some bounded size
At the application level, we refer to a logical unit of data transfer
as a message
Lower level protocols may need to break the data into blocks of
some bounded size
This process is called segmentation
42
Network Protocols and Standards (7)
Reasons for segmentation
The communication network may only accept blocks of data up to
a certain size (e.g., maximum for Ethernet LAN is 1518 bytes;
note that 1500 bytes has become the de facto maximum packet
size throughout the Internet, not just on Ethernet LANs)
Error control may be more efficient with a smaller frame size;
fewer bits need to be retransmitted when a frame is corrupted
Facilitates more equitable access to shared transmission facilities
(for example, without maximum block size, one station could
monopolize a multipoint medium)
43
Network Protocols and Standards (8)
Disadvantages of segmentation
Since a frame contains certain amount of control information, the
smaller the block size, the greater the percentage overhead
Frame arrivals may generate an interrupt that must be serviced;
hence smaller blocks result in more interrupts
More time is spent processing smaller, more numerous frames
The counterpart of segmentation is reassembly
On receipt, the receiver reassembles the segmented data into a
message appropriate to the application
44
Network Protocols and Standards (9)
Note:
In IPv4, segmentation is done by the source as well as by the
intermediate routers; reassembly is only by the destination
In IPv6, only the source can do segmentation and the destination
does reassembly; intermediate routers are not allowed to do
segmentation
The objective is to speed up forwarding within the network
45
Network Protocols and Standards (10)
Connection Control: There are two types of protocols (services)
Connectionless service
Different packets of the same message can possibly (but not
necessarily) travel to the destination through different routes
The packets are sent from the source to the destination with no
need for connection establishment or connection release
The packets are not numbered, they may be delayed, lost, or
arrive out of sequence; there is no acknowledgement either
UDP (User Datagram Protocol), one of the transport layer
protocols, is connectionless
Note that with UDP there is no handshaking between sending
and receiving transport layer entities before sending a
segment; for this reason, UDP is said to be connectionless
46
Network Protocols and Standards (11)
Connection-oriented service
Different packets of the same message travel to the destination
through the same route
In connection-oriented data transfer, a logical association or
connection is established between the communicating devices
47
Network Protocols and Standards (12)
TCP (Transmission Control Protocol) is connection-oriented
Three phases are involved in TCP (similar to telephone calls)
Connection establishment (agreement to exchange data)
Data transfer (data and control information exchanged)
Connection termination (termination request) - by any of the two
parties
In connection-oriented data transfer, sequencing is used
Each side sequentially numbers the frames that it sends to the
other side
Because each side remembers that it is engaged in a logical
connection, it can keep track of both outgoing numbers, which it
generates, and incoming numbers which are generated by the
other side
48
Network Protocols and Standards (13)
Sequencing supports three main functions
Ordered delivery: frames may not arrive in the order in which they
were sent; with sequence numbers the receiver can rearrange
them in their proper order
Flow control: a receiver may need to limit the amount or rate of
data that is sent by the sender
The simplest form of flow control is stop-and-wait procedure in
which each frame must be acknowledged before the next can
be sent
More efficient protocols involve some form of credit given to the
sender, which is the amount of frames that can be sent without
the need to acknowledge each; e.g., sliding window technique
Both are possible if sequence numbers are used
49
Network Protocols and Standards (14)
Error control: error control is implemented as two separate
functions; error detection and retransmission
If an error is detected, the receiver discards the frame
Upon failing to receive an acknowledgement to the frame in a
specified reasonable time, the sender retransmits the frame
To acknowledge the frames that are received without error,
sequence numbers are used
Note that some protocols also employ error correction which
enables the receiver not only to detect errors but also to correct
them
We will study the details of error and flow control in Chapter 2
50
Network Protocols and Standards (15)
Addressing
A unique address is assigned to each end system (e.g.,
workstation, server) and each intermediate system (e.g., router)
An example is an IP address in TCP/IP connection, but addressing
spans more layers: data link, network, transport, application; we
will cover addressing in Chapter 3
Multiplexing
Occurs when multiple devices share a single connection (multiple
access)
Transmission Services
A variety of additional services can be provided
Priority: messages such as control messages may need to get
through to the destination with minimum delay
Security: security mechanisms, restricting access, etc., e.g., IPSec
51
1.4 Network (Reference) Models
Protocols in a layered architecture
Protocols that work together to provide a layer or layers of the model
are known as a protocol stack or protocol suite, e.g., TCP/IP
Hence, a protocol stack is divided into layers
Layer: A piece of code running some protocol related to a
networking task
Each layer handles a different part of the communications process
and has its own protocol
Another visualization of the protocol stack is sometimes known as the
“IP hourglass” as shown below
It has a “narrow waist” of the layered Internet architecture
The Internet has many protocols in the physical, link, transport, and
application layers, but there is only one network layer protocol - the
IP protocol
52
Network (Reference) Models (2)
Layers Abstraction
Applications and their Protocols
… built on …
Reliable (or unreliable) transport
… built on …
Best-effort global packet delivery
… built on …
Best-effort local packet delivery
… built on …
Physical transfer of bits