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

EEC-484/584 Computer Networks

Dec 30, 2015

Download

Documents

calista-marquez

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 Networking book). Outline. Quiz#2 result Introduction to network layer Routing and forwarding, etc. Router architecture - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: EEC-484/584 Computer Networks

EEC-484/584EEC-484/584Computer Computer NetworksNetworksLecture 9Lecture 9

Wenbing ZhaoWenbing Zhao

[email protected] (Part of the slides are based on Drs. Kurose & Ross(Part of the slides are based on Drs. Kurose & Ross’’s slides s slides for their for their Computer Networking Computer Networking book)book)

Page 2: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

OutlineOutline Quiz#2 result Introduction to network layer

Routing and forwarding, etc. Router architecture Routing algorithm

Link state routing

Page 3: EEC-484/584 Computer Networks

EEC584 Quiz#2 ResultEEC584 Quiz#2 Result High 100 (3), low 45, average: 78 (total 40 students) Q1: 38.5/50, Q2: 13.6/15, Q3: 14.4/15, Q4: 11/20

Wenbing ZhaoWenbing Zhao04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks

0

1

2

3

4

5

6

7

8

9

0-59 60-64 65-69 70-79 80-84 85-89 90-100

Page 4: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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

Perhaps over many hops at intermediate nodes Services provided to transport 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 5: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

Two Key Network-Layer Two Key Network-Layer FunctionsFunctions

Routing: determine route taken by packets from source to destination

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

Analogy:

• Routing: process of planning trip from source to destination

• Forwarding: process of getting through single intersection

Page 6: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1

23

0111

value in arrivingpacket’s header

routing algorithm

local forwarding tableheader value output link

0100010101111001

3221

Interplay between Routing & Interplay between Routing & ForwardingForwarding

Forwarding table isalso referred to as routing table

Page 7: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 8: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 9: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 10: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

Routing within a Datagram Routing within a Datagram SubnetSubnet

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 11: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 12: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 13: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

Virtual Circuit Network Virtual Circuit Network

Routers maintain connection state information!

Page 14: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

Virtual Circuits: Signaling Virtual Circuits: Signaling ProtocolsProtocols 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 15: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 16: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 17: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 18: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

Output PortsOutput Ports

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

Scheduling discipline chooses among queued datagrams for transmission

Page 19: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 20: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

Routing Algorithm Routing Algorithm ClassificationClassificationStatic 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 21: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 22: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 23: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

DijkstraDijkstra’’s Algorithms 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 24: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 25: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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

Page 26: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 27: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

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 28: EEC-484/584 Computer Networks

04/19/2304/19/23 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

DijkstraDijkstra’’s Algorithms 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