31
EEC-484/584 EEC-484/584 Computer Networks Computer Networks Lecture 9 Lecture 9 Wenbing Zhao Wenbing Zhao [email protected] [email protected] (Part of the slides are based on Drs. (Part of the slides are based on Drs. Kurose & Ross’s slides for their Kurose & Ross’s slides for their Computer Networking Computer Networking book) book)

EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao [email protected] (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Page 1: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

EEC-484/584EEC-484/584Computer NetworksComputer Networks

Lecture 9Lecture 9

Wenbing ZhaoWenbing Zhao

[email protected]@ieee.org(Part of the slides are based on Drs. Kurose & (Part of the slides are based on Drs. Kurose &

Ross’s slides for their Ross’s slides for their Computer Networking Computer Networking book)book)

Page 2: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

22

OutlineOutline

• Reminder (for graduate students only)– Wiki-Page Project #1 due on Oct 24, Wednesday (midnight)!

• Schedule Change: – Oct.31 Wed Lab#4– Nov.5 Mon Quiz#3– Nov.7 Wed Lecture#12

• Quiz#2 results• Network layer design issues• Router architecture• Routing algorithm

– Link state routing

Page 3: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

33

EEC484 Quiz2 ResultEEC484 Quiz2 Result• High 100, low 78, average 86.5, medium 84/86• Average: Q1–39.8, Q2–9.7, Q3–9.8, Q4–20, Q6–7.2

EEC484 Quiz#2 Score Distribution

0

1

2

3

65-74 75-84 85-89 90-100

Score Range

Nu

mb

er o

f S

tud

ents

Page 4: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

44

EEC584 Quiz2 ResultEEC584 Quiz2 Result• High 100, low 58, average 88, medium 90• Average: Q1–41.8, Q2–9.1, Q3–9.7, Q4–18.6, Q5–9.2

EEC584 Quiz#2 Score Distribution

0

2

4

6

8

10

12

14

16

50-59 60-64 65-74 75-84 85-89 90-100

Score Range

Nu

mb

er o

f S

tud

ents

Page 5: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

55

Network LayerNetwork Layer• Main concern: end-to-end transmission

– Perhaps over many hops at intermediate nodes

• Services provided to the transport layer– Routing & congestion control– Internetworking – connection of multiple networks

• Goals – services should– Be independent of subnet technologies– Shield transport layer from number, type, topology of

subnets– Uniform network addresses across LAN/WAN

Page 6: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

66

Network LayerNetwork Layer• Transport segment from sending

to receiving host • On sending side

encapsulates segments into datagrams

• On receiving side, delivers segments to transport layer

• Network layer protocols in every host, router

• Router examines header fields in all IP datagrams passing through it

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

application

transportnetworkdata linkphysical

application

transportnetworkdata linkphysical

Page 7: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

77

Two Key Network-Layer FunctionsTwo Key Network-Layer Functions

• Forwarding: move packets from router’s input to appropriate router output

• Routing: determine route taken by packets from source to dest.

– Routing algorithms

Analogy:

• Routing: process of planning trip from source to destination

• Forwarding: process of getting through single intersection

Page 8: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

88

1

23

0111

value in arrivingpacket’s header

routing algorithm

local forwarding tableheader value output link

0100010101111001

3221

Interplay between Routing & ForwardingInterplay between Routing & Forwarding

Forwarding table isalso referred to as routing table

Page 9: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

99

Network Service ModelNetwork Service ModelQ: What service model for “channel” transporting datagrams from sender to receiver?

Example services for individual datagrams:

• Guaranteed delivery• Guaranteed delivery

with less than 40 msec delay

• Best effort

Example services for a flow of datagrams:

• In-order datagram delivery

• Guaranteed minimum bandwidth to flow

• Restrictions on changes in inter-packet spacing

• No guarantee whatsoever

Page 10: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1010

Network Layer Connection and Network Layer Connection and Connection-less ServiceConnection-less Service

• Datagram network provides network-layer connectionless service

• Virtual Circuit network provides network-layer connection-oriented service

Page 11: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1111

Datagram NetworksDatagram Networks• No call setup at network layer• Routers: no state about end-to-end connections

– no network-level concept of “connection”

• Packets forwarded using destination host address– packets between same source-dest pair may take different paths

application

transportnetworkdata linkphysical

1. Send data 2. Receive data

application

transportnetworkdata linkphysical

Page 12: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1212

Routing within a Datagram SubnetRouting within a Datagram Subnet

• Router has forwarding table telling which outgoing line to use for each possible destination router

• Each datagram has full destination address• When packet arrives, router looks up outgoing line to use

and transmits packet

Page 13: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1313

Virtual CircuitsVirtual Circuits

• Call setup for each call before data can flow (teardown afterwards)• Each packet carries VC identifier (not destination host address)• Every router on source-dest path maintains “state” for each

passing connection• Link, router resources (bandwidth, buffers) may be allocated to VC

(dedicated resources = predictable service)

“source-to-dest path behaves much like telephone circuit”– performance-wise– network actions along source-to-destination path

Page 14: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1414

VC ImplementationVC Implementation

A VC consists of:1. Path from source to destination

2. VC numbers, one number for each link along path

3. Entries in forwarding tables in routers along path

• Packet belonging to VC carries VC number (rather than destination address)

• VC number can be changed on each link– New VC number comes from forwarding table

Page 15: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1515

Virtual Circuit Network Virtual Circuit Network

Routers maintain connection state information!

Page 16: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1616

Virtual Circuits: Signaling ProtocolsVirtual Circuits: Signaling Protocols

• Used to setup, maintain teardown VC• Used in ATM, frame-relay, X.25• Not used in today’s Internet

application

transportnetworkdata linkphysical

1. Initiate call 2. incoming call

3. Accept call4. Call connected5. Data flow begins 6. Receive data applicatio

ntransportnetworkdata linkphysical

Page 17: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1717

Datagram or VC Network: Why?Datagram or VC Network: Why?

Internet (datagram)• data exchange among

computers– “elastic” service, no strict

timing requirement • “smart” end systems

(computers)– can adapt, perform

control, error recovery– simple inside network,

complexity at “edge”

ATM (VC)• evolved from telephony• human conversation:

– strict timing, reliability requirements

– need for guaranteed service

• “dumb” end systems– telephones– complexity inside

network

Page 18: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1818

What’s in a Router?What’s in a Router?• Run routing algorithms/protocol (RIP, OSPF, BGP)• Forwarding datagrams from incoming to outgoing link

Page 19: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1919

Input Port FunctionsInput Port Functions

Decentralized switching: • given datagram dest., lookup output

port using forwarding table in input port memory

• queuing: newly arrived datagrams might be queued before processing

Physical layer:bit-level reception

Data link layer:e.g., Ethernet

Page 20: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2020

Types of Switching FabricsTypes of Switching Fabrics

Page 21: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2121

Output PortsOutput Ports

• Buffering required when datagrams arrive from fabric faster than the transmission rate

• Scheduling discipline chooses among queued datagrams for transmission

Page 22: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2222

Routing AlgorithmsRouting Algorithms

• Least-cost in what sense?– Number of hops, geographical distance, least

queueing and transmission delay

• Desirable properties– Correctness, simplicity– Robustness to faults– Stability – converge to equilibrium

Routing algorithm: algorithm that finds least-cost path

Page 23: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2323

Routing Algorithm ClassificationRouting Algorithm Classification

Static or dynamic?• Non-adaptive (static) - Route computed in

advance, off-line, downloaded to routers• Adaptive (dynamic) - Route based on

measurements or estimates of current traffic and topology

Page 24: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2424

Routing Algorithm ClassificationRouting Algorithm Classification

Global or decentralized information?• Global:

– all routers have complete topology & link cost info– “link state” algorithms

• Decentralized: – router knows physically-connected neighbors, link

costs to neighbors– iterative process of computation, exchange of info

with neighbors– “distance vector” algorithms

Page 25: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2525

Link State RoutingLink State RoutingBasic idea• Assumes net topology, link costs known to all

nodes– Accomplished via “link state broadcast” – All nodes have same info

• Computes least cost paths from one node (‘source”) to all other nodes, using Dijkstra’s Algorithm– Gives forwarding table for that node

Page 26: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2626

Dijkstra’s AlgorithmDijkstra’s Algorithm• Each node labeled with distance from source

node along best known path• Initially, no paths known so all nodes labeled with

infinity• As algorithm proceeds, labels may change

reflecting shortest path• Label may be tentative or permanent, initially, all

tentative• When label represents shortest path from source

to node, label becomes permanent

Page 27: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2727

Compute Shortest Path from A to DCompute Shortest Path from A to D

• Start with node A as the initial working node• Examine each of the nodes adjacent to A, i.e., B and G,

relabeling them with the distance to A• Examine all the tentatively labeled nodes in the whole

graph and make the one with the smallest label permanent, i.e., B. B is the new working node

Page 28: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2828

Compute Shortest Path from A to DCompute Shortest Path from A to D

Page 29: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2929

Step Permanently labeled

B G E C F H D

1 A 2,A 6,A ∞ ∞ ∞ ∞ ∞

2 AB 6,A 4,B 9,B ∞ ∞ ∞

3 ABE 5,E 9,B 6,E ∞ ∞

4 ABEG 9,B 6,E 9,G ∞

5 ABEGF 9,B 8,F ∞

6 ABEGFH 9,B 10,H

7 ABEGFHC 10,H

8 ABEGFHCD

Page 30: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

3030

Computation ResultsComputation Results

BCDEFGH

(A,B)(A,B)(A,B)(A,B)(A,B)(A,B)(A,B)

Destination link

A

BC

DE F

G H

Routing Table in ARouting Table in A

Page 31: EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Fall Semester 2007Fall Semester 2007 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

3131

Dijkstra’s AlgorithmDijkstra’s Algorithm: : ExerciseExercise

• Given the subnet shown below, using the Dijkstra’s Algorithm, determine the shortest path tree from node u and its routing table

u

yx

wv

z2

2

13

1

1

2

53

5