Tải bản đầy đủ (.pdf) (264 trang)

Advanced Computer Networks: Lecture 25 - Dr. Amir Qayyum

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.68 MB, 264 trang )

CS716
Advanced Computer Networks
By Dr. Amir Qayyum
1


Lecture No. 25

2


Review Lecture


Switched Networks
• A network can be defined recursively as...
– Two or more nodes 
connected by a link
– Circular nodes 
(switches) implement 
the network
– Squared nodes (hosts) 
use the network

4


Switched Networks
• A network can be defined recursively as...
– Two or more networks 
connected by one or more 


nodes: internetworks
– Circular nodes (router or 
gateway) interconnects the 
networks
– A cloud denotes “any type of 
independent network”

5


Switching Strategies


• Packet switching: 
     Store­and­forward 
a. establishes a dedicated 
messages
Circuit switching:   
Carry bit streams

circuit
b. links reserved for use 
by communication 
channel
c. send/receive bit stream 
at constant rate
d. example: original 
telephone network

a. operates on discrete 

blocks of data
b. utilizes resources 
dynamically according 
to traffic demand
c. send/receive messages 
at variable rate
d. example: Internet
6


Multiplexing
• Physical links/switches must be shared among users
– (Synchronous) Time­Division Multiplexing (TDM)
– Frequency­Division Multiplexing (FDM)
L1

R1

Multiple flows 
on a single link

L2
L3

R2
Switch 1

Switch 2

R3


Do you see any problem with TDM / FDM ?
7


Statistical Multiplexing





On­demand time­division, possibly synchronous (ATM)
Schedule link on a per­packet basis
Buffer packets in switches that are contending for the link
Packets from different sources interleaved on link



Do you see any problem ?
8


Inter­Process Communication
• Turn host­to­host connectivity into process­to­process 
communication, making the communication meaningful.
• Fill gap between what applications expect and what the 
underlying technology provides.
Host
Host


Host

Application

Abstraction for 
application­level 
communication

Channel

Application

Host

Host

9


Abstract Channel Functionality
• What functionality does a channel provide ?
– Smallest set of abstract channel types adequate 
for largest number of applications

• Where the functionality is implemented ?
– Network as a simple bit­pipe with all high­level 
communication semantics at the hosts
– More intelligent switches allowing hosts to be 
“dumb” devices (telephone network)


10


Performance Metrics
• … and to do so while delivering 
“good” performance
• Bandwidth (throughput)

– Data transmitted per unit time, e.g. 10 Mbps
– Link bandwidth versus end­to­end bandwidth
– Notation 
• KB = 210 bytes
• Kbps = 103 bits per second
11


Performance Metrics
• Latency / Delay
– Time to send message from point A to point B
– One­way versus Round­Trip Time (RTT)
– Components
Latency = Propagation + Transmit + Queue
Propagation = Distance / c
Transmit = Size / Bandwidth

• Note:
• No queuing delay in direct (point­to­point) link
• Bandwidth irrelevant if size = 1 bit
• Process­to­process latency includes software processing overhead 
(dominates over shorter distances)

12


Delay x Bandwidth Product
• Amount of data “in flight” or “in the pipe”
• Example: 100ms RTT x 45Mbps BW = 560KB
• This much data must be buffered before the sender 
responds to slowdown the request
Delay
Bandwidth

13


Network Architecture
• The challenge is to fill the gap between hardware 
capabilities and application expectations, and to 
do so while delivering “good” performance
• Designers cope with this complex task by 
developing a network architecture as a guideline
– Layering, protocols, standards

14


Layering
• Alternative abstractions at each layer
• Manageable network components
• Modify layers independently
Application programs

Request/reply
channel

Message stream
channel

Host-to-host connectivity
Hardware
15


Protocols
• Building blocks of a network architecture
• Each protocol object has two different interfaces
– service interface: operations on this protocol
– peer­to­peer interface: messages exchanged with peer 

• Term “protocol” is overloaded
– Specification of peer­to­peer interface
– Module that implements this interface
– Peer modules are interoperable if both accurately 
follow the specifications
16


Protocol Interfaces
Host 1

High-level
object


Protocol

Host 2

Service
interface

Peer-to-peer
interface

High-level
object

Protocol

17


Protocol Graph – Network Architecture
• Collection of protocols and their dependencies
– Most peer­to­peer communication is indirect
– Peer­to­Peer is direct only at hardware level

Host 2

Host 1

RRP: Request 
Reply Protocol

MSP: Message 
Stream Protocol
HHP: Host­to­
Host Protocol

Digital
Video
File
library
application application application

RRP

MSP

HHP

Digital
Video
File
library
application application application

RRP

MSP

HHP

18



Protocol Machinery
• Multiplexing and Demultiplexing (demux key)
• Encapsulation (header/body) in peer­to­peer 
interfaces
– Indirect communication (except at hardware level)
– Each protocol adds a header
– Part of header includes demultiplexing field (e.g., pass 
up to request/reply or to message stream?)

19


Encapsulation
Host 1

Host 2

Application
program

Application
program

Data

Data
RRP


RRP

RRP Data

RRP Data

HHP

HHP

HHP

RRP Data

20


Standard Architectures
• Open System Interconnect (OSI) Architecture
– International Standards Organization (ISO)
– International Telecommunications Union (ITU), 
formerly CCITT
– “X dot” series: X.25, X.400, X.500
– Primarily a reference model

21


      OSI Architecture
End host


End host

User 
level
OS 
kernel

Application

Application

Application

Presentation

Presentation

Data formatting

Session

Session

Connection management

Transport

Transport


Process­to­process 
communication channel

Network

Network

Network

Network

Data link

Data link

Data link

Data link

Physical

Physical

Physical

Physical

Host­to­host packet 
delivery
Framing of data bits

Transmission of raw bits

One or more nodes
within the network

22


Internet Architecture
• TCP/IP Architecture
– Developed with ARPANET and NSFNET
– Internet Engineering Task Force (IETF)
• Culture: implement, then standardize
• OSI culture: standardize, then implement
– Became popular with release of Berkeley Software 
Distribution (BSD) Unix; i.e. free software
– Standard suggestions traditionally debated publically 
through “Request For Comments” (RFC’s)
23


Internet Architecture
• Implementation and design done together
• Hourglass Design (bottleneck is IP)
• Application vs Application Protocol (FTP, HTTP)
FTP

HTTP

NV


TFTP

UDP

TCP

IP

NET1

NET2



NETn
24


Internet Architecture
• Layering is not very strict
Application
TCP

UDP
IP
Network
25



×