Lecture 1

44
1: Introduction 1.1 11/02/22 ECU 308 COMPUTER NETWORKS Introduction: Building blocks- links, nodes; Layering and protocols; OSI architecture; Internet architecture; Multiplexing; Circuit switching vs packet switching. (4hrs) Direct link Networks: Framing; Error detection; Reliable transmission; Multiple access protocols; Ethernet (IEEE 802.3); Token Rings (IEEE 802.5 & FDDI); wireless LAN (IEEE 802.11). (6hrs) Packet switching: Switching & forwarding; Datagram Networks; Virtual Circuit networks; Bridges and LAN switches; ATM networks. (6hrs) Internetworking: IPv4- addressing, datagram forwarding, ARP; Routing- distance vector (RIP), Link state (OSPF), routing for mobile hosts; Global Internet- subnetting, CIDR, inter- domain routing (BGP), IPv6. (9hrs) End to End protocols: Simple demultiplexer (UDP); Reliable byte stream (TCP)- segment format, connection management, sliding window, flow control, adaptive retransmission, congestion control, TCP extension, performance. (9hrs)

Transcript of Lecture 1

Page 1: Lecture 1

1: Introduction 1.104/08/23

ECU 308 COMPUTER NETWORKS

Introduction: Building blocks- links, nodes; Layering and protocols; OSI architecture; Internet architecture; Multiplexing; Circuit switching vs packet switching. (4hrs)

Direct link Networks: Framing; Error detection; Reliable transmission; Multiple access protocols; Ethernet (IEEE 802.3); Token Rings (IEEE 802.5 & FDDI); wireless LAN (IEEE 802.11). (6hrs)

Packet switching: Switching & forwarding; Datagram Networks; Virtual Circuit networks; Bridges and LAN switches; ATM networks. (6hrs)

Internetworking: IPv4- addressing, datagram forwarding, ARP; Routing- distance vector (RIP), Link state (OSPF), routing for mobile hosts; Global Internet- subnetting, CIDR, inter-domain routing (BGP), IPv6.

(9hrs) End to End protocols: Simple demultiplexer (UDP); Reliable byte

stream (TCP)- segment format, connection management, sliding window, flow control, adaptive retransmission, congestion control, TCP extension, performance. (9hrs)

Page 2: Lecture 1

1: Introduction 1.204/08/23

Broadband services and QoS issues: Quality of Service issues in networks- Integrated service architecture- Queuing Disciplines- Weighted Fair Queuing- Random Early Detection- Differentiated Services- Protocols for QOS support- Resource reservation-RSVP- Multi protocol Label switching- Real Time transport protocol. (8hrs)

Textbook: 1. Peterson L.L. & Davie B.S., “Computer Networks: A System Approach”,

Morgan Kaufman Publishers, 3rd edition, 2003.  References: 1. James. F. Kurose and Keith.W. Ross, “Computer Networks, A top-down

approach featuring the Internet”, Addison Wesley, 3rd edition, 2005. 2. D. Bertsekas and R. Gallager, “Data Networks”, PHI, 2nd edition, 2000. 3. S. Keshav, “An Engineering Approach to Computer Networking”,

Addison Wesley, 1st edition, 1997.

Page 3: Lecture 1

1: Introduction 1.3 04/08/23

What is a computer network?

Interconnection of end-systems through two or more nodes and links - switched networks

End-systems: Devices, computers, appliances

Computer network

End-system

Local network

Page 4: Lecture 1

1: Introduction 1.404/08/23

What is an internet?

Two or more networks connected by one or more nodes Inter-connected network A network of networks E.g., the Internet

internet

Router/gateway

hosts

Page 5: Lecture 1

1: Introduction 1.504/08/23

What is Protocol?

Protocols govern all communication activities in a network control sending and receiving of messages e.g., TCP, IP, HTTP, FTP, PPP

What is protocol?define format and order of messages sent and received among network entities, and actions taken on message transmission and receipt

Page 6: Lecture 1

1: Introduction 1.6 04/08/23

Cont..

a human protocol and a computer network protocol:

Q: Other human protocol?

Hi

Hi

Got thetime?

2:00

TCP connection req.

TCP connectionreply.Get http://gaia.cs.umass.edu/index.htm

<file>time

Page 7: Lecture 1

1: Introduction 1.7 04/08/23

Example of Internet and terminologies

local ISP

companynetwork

regional ISP

routerworkstation

server

mobile

• Network applications programs• Network services• TCP, UDP, IP, TCP/IP, HTTP•Internet service provider(ISP)• Access network• Internet standards, IETF, RFC

Page 8: Lecture 1

1: Introduction 1.804/08/23

Provide connectivity

Building Blocks links: coax cable, optical fiber, radio... nodes: general-purpose workstations...

Direct Links point-to-point(a)

multiple access(b)

(a)

(b) …

Connectivity direct connection?

Page 9: Lecture 1

1: Introduction 1.904/08/23

Indirect connectivity – a network can be defined recursively as consisting of two or more nodes connected

by a physical link - switched networks two or more networks connected by one or

more nodes - internetworks Scaleable

Switched network

internetwork

Router/gateway

hosts

Page 10: Lecture 1

1: Introduction 1.1004/08/23

Components of Internet

Network edge: millions of connected computing devices: hosts, end-systems pc’s workstations, servers PDA’s phones, toasters

running network apps Network core:

routers: forward packets (chunks) of data thru network

network of networks Access networks: Physical

media:communication links fiber, copper, radio, satellite

local ISP

companynetwork

regional ISP

router workstation

servermobile

Page 11: Lecture 1

1: Introduction 1.1104/08/23

The network edge

end systems (hosts): run application programs e.g., WWW, email at “edge of network”

client/server model client host requests,

receives service from server

e.g., WWW client (browser)/ server; email client/server

peer-peer model: host interaction symmetric e.g.: teleconferencing

Page 12: Lecture 1

1: Introduction 1.1204/08/23

Types of communication services

Goal: data transfer between end sys.

handshaking: setup (prepare for) data transfer ahead of time

Hello, hello back human protocol

set up “states” in two communicating hosts

TCP - Transmission Control Protocol [RFC 793]

Internet’s connection-oriented service

Characteristics reliable, in-order byte-

stream data transfer loss: acknowledgements

and retransmissions

flow control: sender won’t overwhelm

receiver

congestion control: senders “slow down

sending rate” when network congested

Connection-oriented service (COS)

Page 13: Lecture 1

1: Introduction 1.1304/08/23

Connectionless service (CLS)

Goal: data transfer between end systems same as before!

UDP - User Datagram Protocol [RFC 768]: Internet’s connectionless service

Characteristics Stateless unreliable data

transfer no flow/congestion

control

App’s using TCP: HTTP (WWW), FTP

(file transfer), Telnet (remote login), SMTP (email)

App’s using UDP: streaming media,

teleconferencing, Internet telephony

Page 14: Lecture 1

1: Introduction 1.1404/08/23

Networking Techniques for the network Core mesh of interconnected

routers the fundamental question: -

how is data transferred through net

-how are network resources better utilized?

Common approaches Each link:

• Multiplexing End-to-end:

• Circuit switching vs Packet switching

• Virtual circuit switching vs datagram switching

Page 15: Lecture 1

1: Introduction 1.1504/08/23

Multiplexing

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

Traditional Multiplexing Strategies Time-Division Multiplexing (TDM), a.k.a. Synchronous

TDM (STDM) Frequency-Division Multiplexing (FDM)

L1

L2

L3

R1

R2

R3Switch 1 Switch 2

Page 16: Lecture 1

1: Introduction 1.1604/08/23

Statistical Multiplexing

a.k.a. Asynchronous TDM (ATDM)

Time-division, but on demand rather than fixed

schedule link on a per-packet (data chunk) basis

Buffer packets that are contending for the link

Packet queue may be processed FIFO

Buffer overflow is called congestion

What are the key challenges of designing statistical multiplexing? Fairness? QoS?

Congestion Control?

Page 17: Lecture 1

1: Introduction 1.1704/08/23

Multiplexing: summary

Splitting a chunk of Bandwidth up into channels

Channel can carry one conversation

FDM: different channels use some of the frequency all of the time.

TDM: different channels use all of the frequency some of the time.

StatMux: different channels use all of the frequency some of the time, at random, as needed

frequency

tim

e

1 2 3 4 5

frequency

tim

e

12312

frequency

tim

e1

3

1

2

FDM

TDM

StatMux

Page 18: Lecture 1

1: Introduction 1.1804/08/23

Circuit Switching dedicated link and node

resources (i.e. no sharing); send/receive a bit stream

End-end resources reserved for “call”

link bandwidth and switch capacity divided into “pieces” and allocated to calls

TDM or FDM is used over each link to divide the link BW

Circuit-like (guaranteed) performance

call setup required

Telephone network uses circuit switching

STDM over each link

Page 19: Lecture 1

1: Introduction 1.19 04/08/23

Packet Switching

store-and-forward; send/receive messages (packets)

each end-end data stream divided into packets

user A, B packets share network resources

resources used as needed,

resource contention: aggregate resource

demand can exceed amount available

congestion: packets queue, wait for link use

store and forward: packets move one hop at a time transmit over link wait turn at next

link

Bandwidth division into “pieces”

Dedicated allocationResource reservation

Stat-Mux over each link

Page 20: Lecture 1

1: Introduction 1.2004/08/23

Cont..

A

B

C10 MbsEthernet

1.5 Mbs

45 Mbs

D E

statistical multiplexing

queue of packetswaiting for output

link

Page 21: Lecture 1

1: Introduction 1.2104/08/23

Circuit, Message, and Packet switching

time

call request

call accept

data

message

pkt1pkt2pkt3

S sw1 sw2 D S sw1 sw2 DS sw1 sw2 D

Page 22: Lecture 1

1: Introduction 1.22 04/08/23

Packet switching versus circuit switching

1 Mbit link each user:

100Kbps when “active”

active 10% of time

circuit-switching: 10 users

packet switching: with 35 users,

probability > 10 active less than .004

Packet switching allows more users to use network!

N users

1 Mbps link

Page 23: Lecture 1

1: Introduction 1.2304/08/23

Cont..

Great for bursty data resource sharing

Excessive congestion: packet delay and loss protocols needed for reliable data transfer,

congestion control Q: How to provide circuit-like behavior?

bandwidth guarantees needed for audio/video apps

still an unsolved problem

Page 24: Lecture 1

1: Introduction 1.2404/08/23

Packet-switched networks: addressing

Each node is assigned an address A byte string that identifies a node

Sender specifies the address of destination Switches/routers use this address to decide how

to forward the message Destination can be

A single node – unicast address All nodes of the network – broadcast address A selected group of nodes – multicast address

Page 25: Lecture 1

1: Introduction 1.2504/08/23

Types of Packet-switched networks

datagram network (a.k.a. CLN): destination address determines next hop routes may change during session E.g., the Internet

virtual circuit network (a.k.a. CON): each packet carries tag (virtual circuit ID), tag

determines next hop fixed path determined at call setup time, remains fixed

thru call routers maintain per-call state E.g., ATM, Frame Relay, X-25

Page 26: Lecture 1

1: Introduction 1.2604/08/23

Virtual circuit network

Incoming

interface

Incoming VC #

Outgoing

interface

Outgoing VC #

1 12 3 22

2 63 1 18

3 7 2 17

1 97 3 87

- - - -

PS1 PS213

2

PS3 PS4

A

B

PS1

Page 27: Lecture 1

1: Introduction 1.2704/08/23

Performance: Packet delay

packets experience delay on end-to-end path

four sources of delay at each hop

nodal processing delay: check bit errors determine output link

Queuing delay time waiting at output

link for transmission depends on congestion

level of router no queuing delays in

direct link network

A

B

propagation

transmission

nodalprocessing queuing

Page 28: Lecture 1

1: Introduction 1.28 04/08/23

Packet delay (Cont..)

Transmission delay: R=link bit rate (bps) L=packet length

(bits) time to send bits into

link = L/R

Propagation delay: d = length of physical

link s = propagation speed in

medium (~2x108 m/sec) propagation delay = d/s

A

B

propagation

transmission

nodalprocessing queuing

Page 29: Lecture 1

1: Introduction 1.2904/08/23

Queuing delay (revisited)

R=link bandwidth (bits/sec) L=average packet length

(bits) a=average packet arrival

rate (packets/sec)

traffic intensity = La/R

La/R ~ 0: average queuing delay small La/R -> 1: delays become large La/R > 1: more “work” arriving than can

be serviced, average delay infinite!

Page 30: Lecture 1

1: Introduction 1.3004/08/23

End-to-end delay End-to-end delay is also called latency or

response time Time it takes for a message to travel from source to

destination Components of latency

• Latency = Processing + Propagation + Transmit + Queue

Round-trip time (RTT)• 2 x propagation delay

Speed of light• 3.0 x 108 meters/second in a vacuum• 2.3 x 108 meters/second in a cable• 2.0 x 108 meters/second in a fiber

Page 31: Lecture 1

1: Introduction 1.3104/08/23

End-to-end throughput

Sample calculation for a request-response kind of data transfer; assume direct link network or switched network with negligible processing and queuing delays

Throughput = TransferSize / TransferTime TransferTime = RTT + (1/bit rate) x TransferSize

• RTT = 2 x propagation delay; RTT accounts for a request message being sent and the data being sent back

• Eg, to fetch 1 MB file across 1 Gbps network with RTT=100ms,

• Throughput= 1MB/(100+1/1Gbps x 1MB)=74.1 Mbps < 1 Gbps

Page 32: Lecture 1

1: Introduction 1.32 04/08/23

Amount of data “in flight” or “in the pipe” Example: 100ms x 45Mbps = 560KB

Delay may be one-way or round trip in one-way case, it corresponds to how many bits

the sender might have transmitted before the first bit arrives at the receiver

In round trip case, it corresponds to how many bits the sender might have transmitted before the sender receives a feedback from the receiver

Significance of the delay-BW product?

Bandwidth

Delay

Delay x bandwidth productDelay x bandwidth product

Page 33: Lecture 1

1: Introduction 1.3304/08/23

Packet loss

In reality the node (switch/router) buffer has finite capacity

A packet arriving at a queue that is full will be dropped

Performance at a node is measured in terms of both average queuing delay and probability of packet loss

Fraction of lost packets increases as the traffic intensity increases

Page 34: Lecture 1

1: Introduction 1.3404/08/23

Layered Network architecture

Outline Layering Internet architecture Standard architecture

Page 35: Lecture 1

1: Introduction 1.3504/08/23

Protocol Hierarchies

Layers, protocols, and interfaces.

Page 36: Lecture 1

1: Introduction 1.3604/08/23

Services to Protocols Relationship

The relationship between a service and a protocol.

Page 37: Lecture 1

1: Introduction 1.3704/08/23

Why layering?

Dealing with complex systems: explicit structure allows identification,

relationship of complex system’s pieces layered reference model for discussion

modularization eases maintenance, updating of system change of implementation of layer’s service

transparent to rest of system e.g., change in layer-3 procedure doesn’t

affect rest of system layering considered harmful?

Page 38: Lecture 1

1: Introduction 1.38 04/08/23

Example: the Internet

Each layer takes data from above adds header information to create new data

unit (protocol data unit PDU) passes new data unit to layer below

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

source destination

M

M

M

M

Ht

HtHn

HtHnHl

M

M

M

M

Ht

HtHn

HtHnHl

message

segment

datagram

frame

Page 39: Lecture 1

1: Introduction 1.3904/08/23

Layering: logical communication

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

networklink

physical

Each layer: distributed “entities”

implement layer functions at each node

entities perform actions, exchange messages with peers

Page 40: Lecture 1

1: Introduction 1.4004/08/23

Layering: logical communication

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

networklink

physical

data

data

E.g.: transport take data from

app add addressing,

reliability check info to form “segments”

send segments to peer

wait for peer to ack receipt

data

transport

transport

ack

Page 41: Lecture 1

1: Introduction 1.4104/08/23

Layering: physical communication

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

networklink

physical

data

data

Page 42: Lecture 1

1: Introduction 1.4204/08/23

OSI network architecture (Reference Model)

Page 43: Lecture 1

1: Introduction 1.4304/08/23

Cont.. Physical layer: provides the transmission of bits over network

links; defines electrical and mechanical properties. Link layer: controls the transmission of blocks of data

between network nodes over a physical link; monitors and resolves errors that may occur on the physical layer.

Network layer: switching, addressing and routing packets Transport layer: ensures that data from the source arrives at

the destination correctly and in proper sequence. Session layer: provides the capability for cooperating

applications to synchronize and manage their dialog and data exchange.

Presentation layer: provides services that interpret the meaning of the information exchanged; encapsulates data, encodes, encripts and generally prepares data for representation.

Application layer: directly serves the end user; supports end applications such as file transfer and database access.

Page 44: Lecture 1

1: Introduction 1.4404/08/23

Cont..