taxonomy of networks; layered network architecture y. richard yang 01/18/2008

Post on 13-Jan-2016

219 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Taxonomy of Networks;Layered Network Architecture

Y. Richard Yang

01/18/2008

2

Outline

Admin. and recap A taxonomy of communication networks Layered network architecture

3

Admin.

Readings from the textbook and additional suggested readings (highly recommended) are linked on the schedule page

Assignment one is linked on the schedule page due Monday, Jan. 28, 2008, in class if you type it in, you can email to Antonios

4

circuit switching: dedicated circuit per call/session: e.g., telephone, GSM High-Speed Circuit-Switched Data

(HSCSD) packet switching: data sent thru network in discrete

“chunks” e.g., Internet, General Packet Radio Service (GPRS)

Recap: A Taxonomy of Switched Networks

communication networks

switchednetworks

broadcastnetworks

circuit-switchednetworks

(e.g. telephone, GSM)

packet-switched networks

(e.g. Internet)

Recap: Circuit Switching vs. Packet Switching

5

circuit switching

packet switching

resource partitioned not partitioned

when using resource

use a single partition bandwidth

use whole link bandwidth

reservation/setup

need reservation (setup delay)

no reservation(more later)

resource contention

busy signal (session loss)

congestion (long delay and packet losses)

service guarantee

yes no(more later)

charging time packet

header no header per packet header

fast path processing

fast per packet processing

Analysis of Circuit-Switching Blocking (Busy) Time

Assume N circuits Call arrival: per second Call service rate: per second What is the percentage of time that a

new session is blocked?

6

For a demo of M/M/1, see: http://www.dcs.ed.ac.uk/home/jeh/Simjava/queueing/mm1_q/mm1_q.html

Analysis of Circuit-Switching Blocking (Busy) Time: Sketch

7

0 1 k N

system state: # of busy lines

)1(1 kpp kk

at equilibrium (time resersibility) in one unit time: #(transitions k k+1) = #(transitions k+1 k)

p0 p1 pk

k+1

pk+1

(k+1)

01

)!1(1

11

1 ppp kkkkk

NN

p

!12

!21

!110

...1

1

pN

Time Reversibility

By Frank Kelly

8

time

state

k

k+1

Analysis of Queueing + Transmission Time

Consider a single queue Packet arrival rate: per second Packet service rate: per second What is the queueing + transmission

time of each packet?

9

Analysis of Queueing Delay: Sketch

10

0 1 k N

system state: # of packets in queue

1 kk pp

at equilibrium (time resersibility) in one unit time: #(transitions k k+1) = #(transitions k+1 k)

p0 p1 pk

k+1

pk+1

01

01

1 pppp kkkk

10p

Analysis of Delay (cont’)

Average queueing delay:

Transmission delay:

Queueing + transmission:

11

0 1 k k+1

1 )1( k )1(

12

Delay

1

:delay queueing averageR

Lw

Assume:

R = link bandwidth (bps)

L = average packet length (bits)

a = average packet arrival rate (pkt/sec)

1

1

1 R

L

R

L

R

Ltransqueueing

R

La

LR

anutilizatio

/ :

Link utilization (also called traffic intensity)

1

11transqueueing

13

Queueing Delay as A Function of Utilization

~ 0: average queueing delay small -> 1: delay becomes large > 1: more “work” arriving than can

be serviced, average delay infinite !

Assume:

R = link bandwidth (bps)

L = packet length (bits)

a = average packet arrival rate (pkt/sec)

R

La

LR

anutilizatio

/ :

1R

Lw

14

Statistical Multiplexing

no reservation: all arrivals into the single link with rate R, the queueing delay + transmission delay:

reservation: each flow uses its own reserved (sub)link with rate R/n, the queueing delay + transmission delay:

A simple model to compare bandwidth efficiency of - reservation/dedication (aka circuit-switching) and - no reservation (aka packet switching)setup - a single bottleneck link with rate R - n flows; each flow has an arrival rate of a/n

Real life analogy?

15

Summary: Packet Switching vs. Circuit Switching

Advantages of packet switching over circuit switching most important advantage of packet-switching over

circuit switching is statistical multiplexing, and therefore efficient bandwidth usage

Disadvantages of packet switching potential congestion: packet delay and high loss

• protocols needed for reliable data transfer, congestion control

• it is possible to guarantee quality of service (QoS) in packet-switched networks and still gain statistical multiplexig, but it adds much complexity

packet header overhead per packet processing overhead

16

Outline

Admin. and recap A taxonomy of communication networks

circuit switched networks packet switched networks circuit switching vs. packet switching datagram and virtual circuit packet

switched networks

17

A Taxonomy of Packet-Switched Networks According to Routing

Goal: move packets among routers from source to destination we’ll study routing algorithms later in the course

Two types of packet switching datagram network

• each packet of a flow is switched independently virtual circuit network:

• all packets from one flow are sent along a pre-established path (= virtual circuit)

18

Datagram Packet Switching

Commonly when we say packet switching we mean datagram switching

Example: IP networks Each packet is independently switched

each packet header contains complete destination address

receiving a packet, a router looks at the packet’s destination address and searches its current routing table to determine the possible next hops, and pick one

Analogy: postal mail system

19

Host A

Host BHost E

Host D

Host C

Node 1 Node 2

Node 3

Node 4

Node 5

Node 6 Node 7

Datagram Packet Switching

20

Packet 1

Packet 2

Packet 3

Packet 1

Packet 2

Packet 3

Packet 1

Packet 2

Packet 3

processing and queueing delay of Packet 1 at Node 2

Host A Host BNode 1 Node 2

propagationdelay fromHost A to Node 1

transmission time of Packet 1at Host A

Timing Diagram of Datagram Switching

21

Virtual-Circuit Packet Switching

Example: Multiple Label Packet Switching (MPLS) in IP networks

Hybrid of circuit switching and datagram switching fixed path determined at

virtual circuit setup time, remains fixed thru flow

each packet carries a short tag (virtual-circuit (VC) #); tag determines next hop

Question: how big is the lookup table at each router? how about datagram?

Incoming VC#

Outgoing Interface

QoS

12 2

16 3

20 3

22

Host A

Host BHost E

Host D

Host C

Node 1 Node 2

Node 3

Node 4

Node 5

Node 6 Node 7

Virtual-Circuit Switching

23

Virtual-Circuit Packet Switching

Three phases 1. VC establishment2. Data transfer3. VC disconnect

24

Packet 1

Packet 2

Packet 3

Packet 1

Packet 2

Packet 3

Packet 1

Packet 2

Packet 3

Host 1 Host 2Node

1Node

2

propagation delay between Host 1 and Node 1VC

establishment

VCtermination

datatransfer

Timing Diagram of Virtual-Circuit Switching

25

Discussion: Datagram Switching vs. Virtual Circuit Switching

What are the benefits of datagram switching over virtual circuit switching?

What are the benefits of virtual circuit switching over datagram switching?

26

Summary of the Taxonomy of Communication Networks

circuit-switchednetwork

communication network

switchednetwork

broadcastcommunication

packet-switched network

datagram network

virtual circuit network

27

Outline

Admin. and recap A taxonomy of communication networks Layered network architecture

what is layering? why layering? how to determine the layers? ISO/OSI layering and Internet layering

28

What is Layering?

A technique to organize a networked system into a succession of logically distinct entities, such that the service provided by one entity is solely based on the service provided by the previous (lower level) entity.

Application

Transport

Network

Datalink

Physical

Application

Transport

Network

Datalink

Physical

Network

Datalink

Physical

Physical medium

29

Outline

Admin. and recap A taxonomy of communication networks Layered network architecture

what is layering? why layering?

30

Why Layering?

Dealing with complex systems:explicit structure allows identification of the relationship among a complex system’s pieces layered reference model for

discussion

Networks are complex !

many “pieces”: hardware

• hosts• routers• links of various

media

software• applications• protocols

Modularization eases maintenance, updating of system: change of implementation of

a layer’s service transparent to rest of system, e.g., changes in routing protocol doesn’t affect rest of system

31

An Example: No Layering

No layering: each new application has to be re-implemented for every network technology !

Telnet FTP

WirelessEther-net

Fiberoptic

Application

TransmissionMedia

HTTP

32

An Example: Benefit of Layering

Introducing an intermediate layer provides a common abstraction for various network technologies

HTTPTelnet FTP

WirelessEthernet Fiberoptic

Application

TransmissionMedia

Transport& Network

Discussion: potential disadvantages of layering

33

ISO/OSI Concepts

ISO – International Standard Organization OSI – Open System Interconnection

Service – says what a layer does Interface – says how to access the service Protocol – says how the service is

implemented a set of rules and formats that govern the

communications between two peers

34

An Example of Layering

35

Layering -> Logical Communication

E.g.: application provide services

to users

application protocol: send messages

to peer for example,

HELO, MAIL FROM, RCPT TO are messages between two SMTP peers

36

Layering: Logical Communication

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

networklink

physical

data

data

E.g.: transport take msg from

app

Transport protocol add control info

to form “datagram”

send datagram to peer

wait for peer to ack receipt; if no ack, retransmit

data

transport

transport

ack

37

Layering: Physical Communication

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

networklink

physical

data

data

38

Protocol Layering and Data

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

unit passes new data unit to layer below

39

Outline

Review A taxonomy of communication networks Layered network architecture

what is layering? why layering? how to determine the layers?

40

Key design issue:

How do you divide functionalities among the

layers?

41

The End-to-End Arguments

The function in question can completely and correctly be implemented only with the knowledge and help of the application standing at the endpoints of the communication systems. Therefore, providing that questioned function as a feature of the communications systems itself is not possible.

J. Saltzer, D. Reed, and D. Clark, 1984

42

What does the End-to-End Arguments Mean?

The application knows the requirements best, place functionalities as high in the layer as possible

Think twice before implementing a functionality at a lower layer, even when you believe it will be useful to an application

43

Example: Where to Provide Reliability ?

Solution 1: the network (lower layer L1) provides reliability, i.e., each hop provides reliability

Solution 2: the end host (higher layer L2) provides reliability, i.e., end-to-end check and retry

L1

L2

L1

S R

L1

L2

A

44

What are the Reasons for Implementing Reliability at Higher Layer ? The lower layer cannot completely provide the

functionality the receiver has to do the check anyway !

Implementing it at lower layer increases complexity (and thus less robust, harder to

understand) adds (performance/cost) overhead of the lower layer---

all upper layer applications have to pay the price

The upper layer knows the requirements better and thus may choose a

better approach to implement it

L1

L2

L1

S R

L1

L2 A

45

Are There Reasons Implementing Reliability at Lower Layer ? Improve performance, e.g., if a high error

rate from A to R, then local reliability improves efficiency reduces delay

• if the link from S to A has long delay

Share common code, e.g., reliability is required by multiple applications

L1

L2

L1

S R

L1

L2

A

46

Trade-offs An application has more information

about the data and the semantic of the service it requires (e.g., can check only at the end of each data unit) we used reliability as an example can you give me another example that is

best implemented end-to-end?

A lower layer has more information about constraints in data transmission (e.g., packet size, error rate)

47

Summary: Layering

Key technique to implement communication protocols; provides modularity

Key design decision: what functionalities to put in each layer?

48

Summary: End-to-End Arguments If the application can do it, don’t do it at a

lower layer -- the application knows the best what it needs add functionality in lower layers iff it

(1) is used and improves performance of a large number of (current and potential future) applications,

(2) does not hurt (too much) other applications, and (3) does not increase (too much) complexity/overhead

Example: Internet

49

Challenges

Challenges to build a good (networking) system: find the right balance between:

reuse, interoperability,implementation effort

(apply layering concepts)

end-to-end arguments

performance

No universal answer: the answer depends on the goals and assumptions!

Backup Slides

ISO/OSI Layering and Internet Layering

51

52

ISO/OSI Reference Model

Seven layers lower three layers are hop-by-hop next four layers are end-to-end (host-to-

host)Application

Presentation

Session

Transport

Network

Datalink

Physical

Application

Presentation

Session

Transport

Network

Datalink

Physical

Network

Datalink

Physical

Physical medium

53

Internet Layering

Lower three layers are hop-by-hop Next two layers are end-to-end

Application

Transport

Network

Datalink

Physical

Application

Transport

Network

Datalink

Physical

Network

Datalink

Physical

Physical medium

54

Internet Protocol Layers

Five layers Application: supporting network

applications• ftp, smtp, http, p2p, IP telephony

Transport: host-host data transfer• tcp, udp

Network: routing of datagram from source to destination

• ip Link: data transfer between

neighboring network elements• ppp, ethernet, 802.11, DSL

Physical: bits “on the wire”• cable, optical fiber, wireless

application

transport

network

link

physical

55

The Hourglass Architecture of the Internet

IP

Ethernet FDDIWireless

TCP UDP

Telnet Email FTP WWW

56

Link Layer: Services Provided by Ethernet

Multiplexing/demultiplexing send frames to the network layer

Multiple access control send frame to peer sharing the

common channel

Error detectionIP

Ethernet FDDIWireless

TCP UDP

Telnet Email FTP WWW

57

Network Layer: Services Provided by IP

Multiplexing/demultiplexing send packets to the transport

Routing best-effort to send packets from

source to destination

Fragmentation and reassembling partition a fragment into smaller

packets removed in IPv6

Error detection Does not provide

reliability, or reservation

IP

Ethernet FDDIWireless

TCP UDP

Telnet Email FTP WWW

58

Network Layer: IPv4 Header

59

Transport Layer: Services Provided by TCP

Multiplexing/demultiplexing Reliable transport

between sending and receiving processes

setup required between sender and receiver: a connection-oriented service

Flow control sender won’t overwhelm receiver

Congestion control throttle sender when network

overloaded

Error detection Does not provide

timing, minimum bandwidth guarantees

IP

Ethernet FDDIWireless

TCP UDP

Telnet Email FTP WWW

60

TCP Header

61

Services Provided by UDP

A connectionless service Does not provide: connection setup, reliability, flow

control, congestion control, timing, or bandwidth guarantee why is there a UDP?

The Design Philosophy of the DARPA Internet

63

Goals

1. Survivability in the face of failure2. Support multiple types of services3. Accommodate a variety of networks

4. Permit distributed management of resources5. Be cost effective6. Permit host attachment with a low level of effort7. Be accountable

0. Connect different networks

64

Survivability in the Face of Failure: Questions

What does the goal mean? Why is the goal important? How does the Internet achieve this goal? Does the Internet achieve this goal (or

in what degree does the Internet achieve this goal)?

65

Survivability in the Face of Failure

Continue to operate even in the presence of network failures (e.g., link and router failures) as long as the network is not partitioned, two

endpoints should be able to communicate…moreover, any other failure (excepting network partition) should be transparent to endpoints

Decision: maintain state only at end-points (fate-sharing) eliminate the problem of handling state

inconsistency and performing state restoration when router fails

Internet: stateless network architecture

66

Support Multiple Types of Service: Questions

What does this goal mean? Why is the goal important? How does the Internet achieve this goal? Does the Internet achieve this goal (or

in what degree does the Internet achieve this goal)?

67

Support Multiple Types of Service

Add UDP to TCP to better support other types of applications e.g., “real-time” applications

This was arguably the main reason for separating TCP and IP

Provide datagram abstraction: lower common denominator on which other services can be built: everything over IP service differentiation was considered

(remember ToS?), but this has never happened on the large scale (Why?)

68

Support a Variety of Networks: Questions

What does the goal mean? Why is this goal important? How does the Internet achieve this goal? Does the Internet achieve this goal (or

in what degree does the Internet achieve this goal)?

69

Support a Variety of Networks Very successful

because the minimalist service; it requires from underlying network only to deliver a packet with a “reasonable” probability of success

…does not require: reliability in-order delivery

The mantra: IP over everything Then: ARPANET, X.25, DARPA satellite

network.. Now: ATM, SONET, WDM…

70

Other Goals

Permit distributed management of resources

Be cost effective Permit host attachment with a low level

of effort Be accountable

Details of the Seven ISO/OSI Layers

72

Physical Layer (1)

Service: moves information between two systems connected by a physical link

Interface: specifies how to send a bit Protocol: coding scheme used to

represent a bit, voltage levels, duration of a bit

Examples: coaxial cable, optical fiber links; transmitters, receivers

73

Datalink Layer (2)

Service: framing, i.e., attach frames separator send data frames between peers others:

• arbitrates the access to common physical media• ensures reliable transmission• provides flow control

Interface: sends a data unit (packet) to a machine connected to the same physical media

Protocol: layer addresses, implement Medium Access Control (MAC) (e.g., CSMA/CD)…

74

Network Layer (3)

Service: delivers a packet to a specified destination performs fragmentation/reassembly of packets others:

• packet scheduling• buffer management

Interface: sends a packet to a specified destination

Protocol: defines global unique addresses; constructs routing tables; implement packet forwarding; fragments/reassembles packets

75

Data and Control Planes

Data plane: concerned with packet forwarding buffer management packet scheduling

Control Plane: concerned with installing and maintaining the states for the data plane

76

Transport Layer (4)

Service: provides an in-order, error-free, and flow and

congestion controlled end-to-end connection multiplex/demuliplex packets

Interface: sends a packet to a destination Protocol: implements reliability, as well

as flow and congestion control Examples: TCP and UDP

TCP: in-order, error free, flow and congestion control

77

Session Layer (5) Service:

full-duplex access management, e.g., token control synchronization, e.g., provide check points for

long transfers Interface: depends on service Protocols: token management; insert

checkpoints, implement roll-back functions

78

Presentation Layer (6)

Service: converts data between various representations

Interface: depends on service Protocol: defines data formats and rules

to convert from one format to another

79

Application Layer (7)

Service: any service provided to end users

Interface: depends on the application Protocol: depends on the application Examples: FTP, Telnet, WWW

80

Statistical Multiplexing

no reservation: all arrivals into the single link with rate R, the queueing delay + transmission delay:

reservation: each flow uses its own reserved (sub)link with rate R/n, the queueing delay + transmission delay:

A simple model to compare bandwidth efficiency of - reservation/dedication (aka circuit-switching) and - no reservation (aka packet switching)setup - a single bottleneck link with rate R - n flows; each flow has an arrival rate of a/n

1

1

R

L

1

1

R

Ln

queueing delay

top related