Você está na página 1de 12

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

1
Communication & Computer/Data
Networks

„ What are the differences between…


… Applications

… Underline technologies

EE4272 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

2
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

3
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 access (b)

EE4272 Spring 2004

„ Indirect Connectivity
… Switched networks
„ switch

… Internetworks
„ router
„ gateway

EE4272 Spring 2004

4
Issues Related to Connectivity
„ Switching Strategies
… circuitswitching ( ): dedicated circuit;
send/receive .
… packet switching ( ): store-and-forward;
shared channel; send/receive .

„ Addressing and Routing


… address: byte-string that a node; usually unique
… routing: process of messages towards the
destination node based on its
… types of addresses
„ cast: node-specific
„ cast: all nodes on the network
„ cast: some subset of nodes on the network

EE4272 Spring 2004

Cost-Effective Resource Sharing


„ Must share (multiplex) network resources
(nodes and links) among multiple users

L1 R1

L2 R2
Switch 1 Switch 2

L3 R3

EE4272 Spring 2004

5
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

6
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
Request/reply Message stream process-to-process
channel channel
Server
Host-to-host connectivity
Hardware

EE4272 Spring 2004

7
Layering & Protocols
„ Advantages of Layering
… Manageable
… Modular design

„ Protocols
… buildingblocks of a network architecture layer
… Each protocol object has two different interfaces
„ service interface: operations .
„ peer-to-peer interface: messages exchanged with .
… Term “protocol” is overloaded
„ Module (various) that implements this interface: .
„ specification of peer-to-peer interface ( )

EE4272 Spring 2004

Interfaces
Host 1 Host 2

High-level High-level
object object

Protocol Protocol

EE4272 Spring 2004

8
Protocol Machinery
„ Protocol Graph
… most peer-to-peer communication is .
… peer-to-peer is only at hardware level
Host 1 Host 2

File Digital Video File Digital Video


application library application application library application
application application

EE4272 Spring 2004

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 Application
Application
program
program program
program

Data Data

RRP RRP

RRP Data RRP Data

HHP HHP

HHP RRP Data

EE4272 Spring 2004

9
OSI (open systems interconnection)
Architecture
End host End host

Application Application

Presentation Presentation

Session Session

Transport Transport

Network Network
Network Network

/aggregation Data link Data link Data link Data link

Physical Physical Physical Physical

One or more nodes


within the network

EE4272 Spring 2004

Internet Architecture
„ Defined by ( )
„ Design
„ Application vs Application Protocol (e.g.,HTTP)

FTP HTTP NV TFTP Application


Application

TCP UDP TCP


TCP UDP
UDP

IP IP
IP

Network
Network
NET 1 NET 2 NET n
■■■

Ethernet, ATM, FDDI…


EE4272 Spring 2004

10
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

11
Performance Metrics
„ Bandwidth (throughput) :
… data transmitted per time unit
… link vs. end-to-end
„ Latency (delay)
… timeto 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

Bandwidth

„ Application Needs
… requirements ( ): burst with
peak rate
… : variance in latency ( )

EE4272 Spring 2004

12

Você também pode gostar