lecture1-stu
Download
Report
Transcript lecture1-stu
EE4272: Computer Networks
Instructor: Dr. Tricia Chigan
Dept.: Elec. & Comp. Eng.
EE4272
Spring 2004
Introduction of Computer
Networks
Communication & Computer/Data Networks
Applications of Computer Networks
Requirements
Network Architectures
Implementing Network Software
Network Performance
EE4272
Spring 2004
Communication & Computer/Data
Networks
What are the differences between…
Applications
Underline
EE4272
technologies
Spring 2004
Applications of Computer
Networks (e.g. …)
Surfing the Web
of Client/Server
Streaming Audio & Video
Video-on-demand:
(
Video Conference: (
)
)
Different requirements for various
applications
EE4272
.
Spring 2004
Requirements from Perspectives…
Application programmer: services that their
applications need, e.g.,
Network designers: cost-effective design
e.g.,
Network providers: system that is easy to
administer and manage e.g.,
EE4272
Spring 2004
High-level Major Requirements
- Network Designers’ Perspectives
Connectivity
Cost-Effective Resource Sharing
Reliability
EE4272
Spring 2004
Building Blocks & Connectivity
Nodes: PC, special-purpose hardware…
Host:
edge node for
.
Switch: node to
.
Router/Gateway: node connects two/more
different
.
Links: coaxial cable,
Direct connectivity
(a)
point-to-point
multiple
EE4272
access
(b)
Spring 2004
…
Indirect Connectivity
Switched networks
Internetworks
EE4272
switch
router
gateway
Spring 2004
Issues Related to Connectivity
Switching Strategies
circuit
switching (
send/receive
.
packet switching (
shared channel; send/receive
): dedicated circuit;
): store-and-forward;
.
Addressing and Routing
address:
byte-string that
routing: process of
destination node based on its
types of addresses
EE4272
a node; usually unique
messages towards the
cast: node-specific
cast: all nodes on the network
cast: some subset of nodes on the network
Spring 2004
Cost-Effective Resource Sharing
Must share (multiplex) network resources
(nodes and links) among multiple users
L1
R1
L2
R2
Sw itch 1
Sw itch 2
R3
L3
EE4272
Spring 2004
Conventional Multiplexing
Strategies
Synchronous Time-Division Multiplexing
(STDM)
Frequency-Division Multiplexing (FDM)
EE4272
Spring 2004
Statistical Multiplexing
On-demand (not predetermined) time-division
Schedule link on a
basis (fairness): FIFO,
Round-robin…
.
Packets from different sources
on link
What about if only one source has data?
Why
is needed?
Buffer packets that are contending for the link:
Buffer (queue) overflow is called
.
.
■■■
EE4272
Spring 2004
What Goes Wrong in the Network?
-Reliability Issue
(light, power,
microwave interference -> error
detection/correction): single or burst error
depend
on transmission med.: coaxial cable, optical
fiber?
(congestion control)
(network survivability)
EE4272
Spring 2004
Network Architecture
Use abstractions (unified model)
Abstraction naturally lead to
Can have
.
.
at each layer
Application programs
Client
Server
Request/reply Message stream
channel
channel
Host-to-host connectivity
Hardware
EE4272
Spring 2004
process-to-process
Layering & Protocols
Advantages of Layering
Manageable
Modular
design
Protocols
building
blocks of a network architecture layer
Each protocol object has two different interfaces
service interface: operations
.
peer-to-peer interface: messages exchanged with
Term
EE4272
.
“protocol” is overloaded
Module (various) that implements this interface:
specification of peer-to-peer interface (
Spring 2004
.
)
Interfaces
Host 1
Host 2
High-level
object
High-level
object
Protocol
Protocol
EE4272
Spring 2004
Protocol Machinery
Protocol Graph
most peer-to-peer
peer-to-peer is
communication is
.
only at hardware level
Host 1
File
application
EE4272
Digital
library
application
Video
application
Host 2
File
application
Spring 2004
Digital
library
application
Video
application
Protocol Machinery (cont)
Encapsulation (
: control infor., e.g. seq. num)
Multiplexing & Demultiplexing (
): share logical
channel at each protocol layer
Host 1
Host 2
Application
Application
program
program
Application
Application
program
program
Data
Data
RRP
RRP
RRP
Data
RRP
HHP
HHP
HHP
EE4272
RRP
Data
Spring 2004
Data
OSI (open systems interconnection)
Architecture
End host
End host
Application
Application
Presentation
Presentation
Session
Session
Transport
Transport
Netw ork
/aggregation
Data link
Physical
Netw ork
Netw ork
Data link
Data link
Physical
Physical
One or more nodes
w ithin the netw ork
EE4272
Spring 2004
Netw ork
Data link
Physical
Internet Architecture
Defined by
Design
Application vs Application Protocol (e.g.,HTTP)
FTP
HTTP
(
NV
TFTP
TCP
UDP
TCP
Application
IP
NET 1
NET 2
IP
■■■
NET n
Ethernet, ATM, FDDI…
EE4272
UDP
Spring 2004
Network
)
Some Protocols in TCP/IP Suite
Source: book by William Stallings
EE4272
Spring 2004
Software Protocol Implementation
Service Interface (e.g. Socket API)
socket: the point where a local applications process attaches to the
network
built in most of the Unix OS, common library routines (socket, listen,
accept, client, server, connect, send, recv…)
reference: W. Richard Stevens, Unix Network Programming, 2nd edition,
Prentice Hall 1998
Protocol Implementation Issues (difference
between Socket & protocol- protocol interface)
Process Model
Message Buffers
EE4272
Spring 2004
Performance Metrics
Bandwidth (throughput) :
data
transmitted per time unit
link vs. end-to-end
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 =
Transmit =
.
.
Throughput (end-to-end) = TransferSize / TransferTime
TransferTime = RTT + 1/Bandwidth x TransferSize (w/o
queue)
EE4272
Spring 2004
Delay x Bandwidth Product
Amount of data “in flight” or “in the pipe”
Example: 100ms x 45Mbps = 560KB
Delay
Bandw idth
Application Needs
requirements (
): burst with
peak rate
EE4272
: variance in latency (
Spring 2004
)