download

prunelimitNetworking and Communications

Oct 23, 2013 (4 years and 21 days ago)

70 views

2.
1

Chapter 2


Network Models

Copyright © The McGraw
-
Hill Companies, Inc. Permission required for reproduction or display.

2.
2

2
-
1 LAYERED TASKS

We

use

the

concept

of

layers

in

our

daily

life
.

As

an

example,

let

us

consider

two

friends

who

communicate

through

postal

mail
.

The

process

of

sending

a

letter

to

a

friend

would

be

complex

if

there

were

no

services

available

from

the

post

office
.


Sender, Receiver, and Carrier

Hierarchy

Topics discussed in this section:

2.
3

Figure 2.1
Tasks involved in sending a letter

2.
4

2
-
2 THE OSI MODEL

Established

in

1947
,

the

International

Standards

Organization

(
ISO
)

is

a

multinational

body

dedicated

to

worldwide

agreement

on

international

standards
.

An

ISO

standard

that

covers

all

aspects

of

network

communications

is

the

Open

Systems

Interconnection

(
OSI
)

model
.

It

was

first

introduced

in

the

late

1970
s
.



an ISO (International Standard Organization) standard that covers all
aspects of network communications


An
open system

is a model that allows any two different systems to
communicate regardless of their underlying architecture


Purpose of OSI model is to open communication between different
systems without requiring changes to the logic of the underlying
hardware and software



a reference model for understanding and designing a network architecture
that is flexible, robust, interoperable

Layered Architecture

Peer
-
to
-
Peer Processes

Encapsulation

2.
5

ISO is the organization.

OSI is the model.

Note

2.
6

Figure 2.2
Seven layers of the OSI model


A layered framework
that allows for
communication across all
types of computers


Consists of seven
separate but related
layers


defining a
segment of process of
moving information
across network

2.
7


Each layer defines a family of functions (or
services) distinct from those of the other
layers


an architecture that is modular,
comprehensive, flexible


The OSI model allows complete
transparency between otherwise
incompatible systems

2.
8

Figure 2.3
The interaction between layers in the OSI model

2.
9


Each layer communicates with the peer layer by means
of a
protocol


an agreed
-
upon series of rules and conventions


Communication between machines is peer
-
to
-
peer
process using protocols at any given layer


Each layer adds information to the data


Headers are
added to the data at layers 6, 5, 4, 3 and 2. Trailers are
usually added at layer 2


Each layer calls upon of the services of the layer below it
by means of an
interface


Interface defines what information and services a layer
must provide for the layer above it


As long as a layer provides expected services, specific
functions can be modified and replaced without
requiring changes to other layers

2.
10

Figure 2.4
An exchange using the OSI model


Encapsulation


data will be
encapsulated with
headers and trailers by
the senders


headers and trailers
will be stripped off by
the receiver leaving
the data intact

2.
11

2
-
3 LAYERS IN THE OSI MODEL

In

this

section

we

briefly

describe

the

functions

of

each

layer

in

the

OSI

model
.

Physical Layer

Data Link Layer

Network Layer

Transport Layer

Session Layer

Presentation Layer

Application Layer

Topics discussed in this section:

2.
12

Figure 2.5
Physical layer

Major duties of the physical layer:



Physical characteristics of interfaces and media.



Representation of bits 0


encode into signals (electrical or optical)
and how 0s and 1s are changed into signals.



Data rate


the transmission rate: the number of bits sent each
second.



synchronization of bits


sender and receiver must use the same bit
rate (their clock must be synchronized)

2.
13

The physical layer is responsible for movements of

individual bits from one hop (node) to the next.

Note

2.
14

Figure 2.6
Data link layer


Framing


divides the stream of bits received from the network layer into
data units called
frames
.


Physical addressing


define a sender and receiver.


Flow control


imposed a mechanism to prevent overwhelming the receiver.


Error control


Access control

2.
15

The data link layer is responsible for moving

frames from one hop (node) to the next.

Note

2.
16

Figure 2.7
Hop
-
to
-
hop delivery

2.
17

Figure 2.8
Network layer

Responsible for : source
-
to
-
destination delivery across multiple networks.

Needs for delivering a packet to different networks with connecting devices
between the networks. (Local delivery Vs global delivery)

Major duties:


Logical addressing


adds a header to the packet coming from the upper
layer (logical addresses of the sender and receiver)


Routing


works at the connecting devices (routers)

2.
18

The network layer is responsible for the

delivery of individual packets from

the source host to the destination host.

Note

2.
19

Figure 2.9
Source
-
to
-
destination delivery

2.
20

Figure 2.10
Transport layer

Responsible for: process
-
to
-
process delivery of the entire message.


Service point addressing


include a port address in the header (forward the packet to the
correct process).


Segmentation and reassembly


Sender; message is divided into transmittable segments, each
segment containing a sequence number. Destination; reassemble the message based on seq.
number (identify and replace packet that were lost in transmission).


Connection control
-

Connection
-
oriented or connectionless.


Flow control


performed end
-
to
-
end


Error control


entire message arrives without error. Error correction achieved through
retransmission.

2.
21

The transport layer is responsible for the delivery

of a message from one process to another.

Note

2.
22

Figure 2.11
Reliable process
-
to
-
process delivery of a message

2.
23

Figure 2.12
Session layer


Session layer is the network dialog controller


Session Layer Responsibilities:


Dialog control


establishes, maintains, terminates dialog
between communicating systems. Communication between
two process can be either half
-
duplex or full
-
duplex


Synchronization


allows a process to add checkpoints
(synchronization points) into a stream of data (for efficient
retransmission if necessary).

2.
24

The session layer is responsible for dialog

control and synchronization.

Note

2.
25

Figure 2.13
Presentation layer


Presentation Layer


concerns with the syntax and
semantics of the information exchange

2.
26

The presentation layer is responsible for translation,
compression, and encryption.


Presentation Layer Responsibilities:


Translation


information in the form of character strings,
numbers, etc need to be encoded to bit streams before being
transmitted; presentation layer is responsible for
interoperability between different encoding systems; possible
different sender
-
dependent format and receiver
-
dependent
format need to be encoded and decoded.


Encryption


encryption and decryption may be necessary for
sensitive information.


Compression


compression and decompression if required will
reduce the number of bits transmitted. Important in
transmission of multimedia such as text, audio and video

2.
27

Figure 2.14
Application layer


provides interfaces and support to various applications, e
-
mails,
remote file access and transfer, shared data base management, etc.



Example:
X.500 (directory services), X.400 (message handling),
FTAM (file transfer access and management)

2.
28

The application layer is responsible for

providing services to the user.


Application Layer (cont)


Network virtual terminal


allows user to log on to a
remote host via terminal emulation software


File transfer, access and management (FTAM)


allows user to access (read, make changes), retrieve, send, manage
files on a remote computer


Mail services


e
-
mail forwarding and storage


Directory services


provides distributed database source
and access for global information about various objects and services


2.
29

Figure 2.15
Summary of layers

2.
30

2
-
4 TCP/IP PROTOCOL SUITE

The layers in the
TCP/IP protocol suite

do not exactly match
those in the OSI model. The original TCP/IP protocol suite was
defined as having four layers:
host
-
to
-
network
,
internet
,
transport
, and
application
.


However, when TCP/IP is compared to OSI, we can say that the
TCP/IP protocol suite is made of five layers:
physical
,
data link
,
network
,
transport
, and
application


At transport layer, TCP/IP defines two protocol


TCP and UDP.
At network layer, the main protocol defined by TCP/IP is IP.

Physical and Data Link Layers

Network Layer

Transport Layer

Application Layer

Topics discussed in this section:

2.
31

Figure 2.16
TCP/IP and OSI model

2.
32

2
-
5 ADDRESSING

Four

levels

of

addresses

are

used

in

an

internet

employing

the

TCP/IP

protocols
:

physical
,

logical
,

port
,

and

specific
.

Physical Addresses

Logical Addresses

Port Addresses

Specific Addresses

Topics discussed in this section:

2.
33

Figure 2.17
Addresses in TCP/IP

Address

of node
defined by LAN
or WAN

IP Address for

universal
communication
s

32 bit IP
address that is
unique

Labels assign

to
processes


16 bit

Examples:

Email

URL

2.
34

Figure 2.18
Relationship of layers and addresses in TCP/IP

2.
35

In

Figure

2
.
19

a

node

with

physical

address

10

sends

a

frame

to

a

node

with

physical

address

87
.

The

two

nodes

are

connected

by

a

link

(bus

topology

LAN)
.

As

the

figure

shows,

the

computer

with

physical

address

10

is

the

sender,

and

the

computer

with

physical

address

87

is

the

receiver
.

Example 2.1

2.
36

Figure 2.19
Physical addresses

2.
37

As

we

will

see

in

Chapter

13
,

most

local
-
area

networks

use

a

48
-
bit

(
6
-
byte)

physical

address

written

as

12

hexadecimal

digits
;

every

byte

(
2

hexadecimal

digits)

is

separated

by

a

colon,

as

shown

below
:

Example 2.2

07:01:02:01:2C:4B


A 6
-
byte (12 hexadecimal digits) physical address.

2.
38

Figure

2
.
20

shows

a

part

of

an

internet

with

two

routers

connecting

three

LANs
.

Each

device

(computer

or

router)

has

a

pair

of

addresses

(logical

and

physical)

for

each

connection
.

In

this

case,

each

computer

is

connected

to

only

one

link

and

therefore

has

only

one

pair

of

addresses
.

Each

router,

however,

is

connected

to

three

networks

(only

two

are

shown

in

the

figure)
.

So

each

router

has

three

pairs

of

addresses,

one

for

each

connection
.


Example 2.3

2.
39

Figure 2.20
IP addresses

2.
40

Figure

2
.
21

shows

two

computers

communicating

via

the

Internet
.

The

sending

computer

is

running

three

processes

at

this

time

with

port

addresses

a,

b,

and

c
.

The

receiving

computer

is

running

two

processes

at

this

time

with

port

addresses

j

and

k
.

Process

a

in

the

sending

computer

needs

to

communicate

with

process

j

in

the

receiving

computer
.

Note

that

although

physical

addresses

change

from

hop

to

hop,

logical

and

port

addresses

remain

the

same

from

the

source

to

destination
.


Example 2.4

2.
41

Figure 2.21
Port addresses

2.
42

The physical addresses will change from hop to hop,

but the logical addresses usually remain the same.

Note

2.
43

Example 2.5

As

we

will

see

in

Chapter

23
,

a

port

address

is

a

16
-
bit

address

represented

by

one

decimal

number

as

shown
.

753


A 16
-
bit port address represented

as one single number.

2.
44

The physical addresses change from hop to hop,

but the logical and port addresses usually remain the same.

Note

Extra: The Client
-
Server Model


Client and server processes are considered to be in
the Application layer.


the device requesting the information is called a client


the device responding to the request is called a server.


Application layer protocols describe the format of the
requests and responses between clients and servers.


One example of a client/server network is a corporate
environment where employees use a company e
-
mail
server to send, receive and store e
-
mail.


The e
-
mail client on an employee computer issues a
request to the e
-
mail server for any unread mail.


The server responds by sending the requested e
-
mail to
the client.


Data is typically flowing from the server to the client,
some data always flows from the client to the server.


For example, a client may transfer a file to the server
for storage purposes (upload).


Data from a server to a client as a download.

Extra: Servers


In a general networking context, any device that
responds to requests from client applications is
functioning as a server.


A server is usually a computer that contains
information to be shared with many client systems.


For example, web pages, documents, databases,
pictures, video, and audio files can all be stored on a
server and delivered to requesting clients.


In other cases, such as a network printer, the print
server delivers the client print requests to the specified
printer.


Some servers may require authentication of user
account information to verify if the user has permission
to access the requested data or to use a particular
operation.


if you request to upload data to the FTP server, you may
have permission to write to your individual folder but not
to read other files on the site.

Extra: Servers


In a client/server network, the server runs a
service, or process, sometimes called a server
daemon.


Like most services, daemons typically run in the
background and are not under an end user's
direct control.


Daemons are described as "listening" for a
request from a client, because they are
programmed to respond whenever the server
receives a request for the service provided by the
daemon.


When a daemon "hears" a request from a client,
it exchanges appropriate messages with the
client, as required by its protocol, and proceeds
to send the requested data to the client in the
proper format.

Extra: The Peer
-
to
-
Peer Model


In addition to the client/server model for networking, there is
also a peer
-
to
-
peer model.


Peer
-
to
-
peer networking involves two distinct forms: peer
-
to
-
peer
network design and peer
-
to
-
peer applications (P2P).


Peer
-
to
-
Peer Networks


In a peer
-
to
-
peer network, two or more computers are connected
via a network and can share resources (such as printers and files)
without having a dedicated server.


Every connected end device (known as a peer) can function as
either a server or a client.


One computer might assume the role of server for one transaction
while simultaneously serving as a client for another.


A simple home network with two computers sharing a printer
is an example of a peer
-
to
-
peer network.


Each person can set his or her computer to share files, enable
networked games, or share an Internet connection.


Because peer
-
to
-
peer networks usually do not use centralized
user accounts, permissions, or monitors


it is difficult to enforce security

Extra: Peer
-
to
-
Peer Applications


Peer
-
to
-
Peer (P2P) Applications


A P2P application, allows a device to act as both a client
and a server within the same communication.


However, peer
-
to
-
peer applications require that each
end device provide a user interface and run a
background service.


When you launch a specific P2P application it invokes the
required user interface and background services.


Some P2P applications use a hybrid system where
resource sharing is decentralized but the indexes that
point to resource locations are stored in a centralized
directory.


In a hybrid system, each peer accesses an index server
to get the location of a resource stored on another peer.


The index server can also help connect two peers, but
once connected, the communication takes place
between the two peers without additional
communication to the index server.


Peer
-
to
-
peer applications can be used on
peer
-
to
-
peer networks
,
client/server networks
, and
across the Internet
.

Extra: Application Layer Protocols


The widely
-
known Application layer protocols
are those that provide the exchange of
information.


Among these TCP/IP protocols are:


Domain Name Service Protocol (DNS)

is used to
resolve Internet names to IP addresses.


Hypertext Transfer Protocol (HTTP)

is used to
transfer files that make up the Web pages of the
World Wide Web.


Simple Mail Transfer Protocol (SMTP)

is used for
the transfer of mail messages and attachments.


Telnet
, a terminal emulation protocol, is used to
provide remote access to servers and networking
devices.


File Transfer Protocol (FTP)

is used for interactive
file transfer between systems.


The protocols in the TCP/IP suite are generally
defined by Requests for Comments (RFCs).



The Internet Engineering Task Force maintains
the RFCs as the standards for the TCP/IP suite.

Extra: Services and Protocol: Port Number


As we will see later in this course, the Transport
layer uses an addressing scheme called a
port
number
.


Port numbers identify applications and Application
layer services that are the source and destination of
data.


Server programs generally use predefined port
numbers that are commonly known by clients.


As we examine the different TCP/IP Application layer
protocols and services, we will be referring to the TCP
and UDP port numbers associated with these services.


Some of these services are:


Domain Name System (DNS)
-

TCP/UDP Port 53


Hypertext Transfer Protocol (HTTP)
-

TCP Port 80


Simple Mail Transfer Protocol (SMTP)
-

TCP Port 25


Post Office Protocol (POP)
-

UDP Port 110


Telnet
-

TCP Port 23


Dynamic Host Configuration Protocol
-

UDP Port 67


File Transfer Protocol (FTP)
-

TCP Ports 20 and 21

Extra: DNS


In data networks, devices are labeled with numeric
IP addresses, so that they can participate in sending
and receiving messages over the network.


However, most people have a hard time remembering
this numeric address.


Hence, domain names were created to convert the
numeric address into a simple, recognizable name.


On the Internet these domain names, such as
www.cisco.com, are much easier for people to
remember than 198.133.219.25, which is the actual
numeric address for this server.


Also, if Cisco decides to change the numeric address, it
is transparent to the user, since the domain name will
remain www.cisco.com.


The new address will simply be linked to the existing
domain name and connectivity is maintained.


The DNS was created for domain name to address
resolution for these networks.


DNS uses a distributed set of servers to resolve the
names associated with these numbered addresses.

Extra: DNS Services and Protocol


DNS is a client/server service;


It differs from the other client/server services that we are
examining.


While other services use a client that is an application
(such as web browser), the DNS client runs as a service
itself.


The DNS client, sometimes called the DNS resolver, supports
name resolution for our other network applications and other
services that need it.


Computer operating systems also have a utility called
nslookup that allows the user to manually query the
name servers to resolve a given host name.


This utility can also be used to troubleshoot name
resolution issues and to verify the current status of the
name servers.


In the first query in the figure, a query is made for
www.cisco.com. The responding name server provides the
address of 198.133.219.25.

Extra: WWW Service and HTTP


When a web address (or URL) is typed into a web
browser, the web browser establishes a connection
to the web service running on the server using the
HTTP protocol.


The http://www.cisco.com/index.html example


http (the protocol or scheme)


www.cisco.com (the server name)


A web page named index.html on a server.


The browser then checks with a name server to
convert www.cisco.com into a numeric address,
which it uses to connect to the server.


Using the HTTP protocol, the browser sends a GET
request to the server asks for file index.html.


The server in turn sends the HTML code for this web
page to the browser.


Finally, the browser deciphers the HTML code and
formats the page for the browser window.


Other types of data, may require another service or
program, typically referred to as plug
-
ins

Extra: WWW Service and HTTP


HTTP is not a secure protocol.


The POST messages upload information to the
server in plain text that can be intercepted and
read.


Similarly, the server responses, typically HTML
pages, are also unencrypted.


For secure communication across the Internet,
the
HTTP Secure (HTTPS)
protocol is used
for accessing or posting web server
information.


HTTPS can use authentication and encryption
to secure data as it travels between the client
and server.


HTTPS specifies additional rules for passing
data between the Application layer and the
Transport Layer.

Extra: E
-
mail Services and SMTP/POP3


User composes an e
-
mail using an application called a mail user
agent (MUA) or e
-
mail client


Client sends e
-
mails to a server using Simple Mail Transfer Protocol
(SMTP) and receives e
-
mails using Post Office Protocol version 3
(POP3)


SMTP uses TCP port 25


POP uses UDP port 110

Extra: File Transfer Protocol (FTP)


The FTP is a Application layer protocol.


FTP was developed to allow for file transfers
between a client and a server.


An FTP client is an application that runs on a
computer that is used to
push

and
pull

files from
a FTP server.


The client can download (pull) file from server


or, the client can upload (push) file to server.


To transfer files, FTP requires two connections
between client and server:


The client establishes the first connection to the
server on TCP port 21.


It consists of client commands and server
replies.


The client establishes the second connection to
the server over TCP port 20.


This connection is for the actual file transfer
and is created every time there is a file
transferred.

Extra: Dynamic Host Configuration Protocol (DHCP)


The DHCP service enables devices on a
network to obtain IP addresses and other
information from a DHCP server.


This service automates the assignment of IP
addresses, subnet masks, gateway and other IP
networking parameters.


When the DHCP server is contacted and an
address requested.


The DHCP server chooses an address from a
configured range of addresses called a pool and
assigns ("leases") it to the host for a set period.


If the host is powered down or taken off the
network, the address is returned to the pool for
reuse.


This is especially helpful with mobile users that
come and go on a network.

Extra: P2P Service and Gnutella Protocol


Sharing files over the Internet has become
extremely popular. With P2P applications based
on the Gnutella protocol, people can make files
on their hard disks available to others for
downloading.


pronounced
/nʊˈtɛlə/

with a
silent
g
,


Gnutella
-
compatible client software allows users to
connect to Gnutella services over the Internet and
to locate and access resources shared by other
Gnutella peers.


Many client applications are available for
accessing the Gnutella network, including:
BearShare, Gnucleus, LimeWire, Morpheus, WinMX
and XoloX (see a screen capture of LimeWire in the
figure).

Extra: P2P Service and Gnutella Protocol


Many P2P applications do not use a central database to
record all the files available on the peers.


Instead, the devices on the network each tell the other what
files are available when queried and use the Gnutella protocol
and services to support locating resources.


When a user is connected to a Gnutella service, the client
applications will search for other Gnutella nodes to
connect to.


These nodes handle queries for resource locations and
replies to those requests.


They also govern control messages, which help the service
discover other nodes.


The actual file transfers usually rely on HTTP services.


The Gnutella protocol defines five different packet types:


ping
-

for device discovery


pong
-

as a reply to a ping


query
-

for file location


query hit
-

as a reply to a query


push
-

as a download request



Ch 3
-

61

Extra: Telnet


Telnet uses TCP port 23


Provides a method of emulating text
-
based terminals over the
network


allows a local device to access a remote device as if the keyboard and
monitor are connected to the remote device directly


A connection using Telnet is called a virtual terminal (VTY) session



The Telnet server runs a
service called the Telnet
daemon