39
1 CMPE 150- Introduction to Computer Networks CMPE 150 Fall 2005 Lecture 23 Introduction to Computer Networks

CMPE 150 Fall 2005 Lecture 23

  • Upload
    newton

  • View
    20

  • Download
    0

Embed Size (px)

DESCRIPTION

CMPE 150 Fall 2005 Lecture 23. Introduction to Computer Networks. Announcements. Homework 4 due on Wed.,11.23.05. No class on Friday, 11.25.05. We will have a “real” lab next week. Last Class…. Routing (cont’d). Finished DV. Link State. Hierarchical routing. Today. Finish routing. - PowerPoint PPT Presentation

Citation preview

Page 1: CMPE 150 Fall 2005 Lecture 23

1CMPE 150- Introduction to Computer Networks

CMPE 150

Fall 2005Lecture 23

Introduction to Computer Networks

Page 2: CMPE 150 Fall 2005 Lecture 23

2CMPE 150- Introduction to Computer Networks

Announcements

• Homework 4 due on Wed.,11.23.05.• No class on Friday, 11.25.05.• We will have a “real” lab next week.

Page 3: CMPE 150 Fall 2005 Lecture 23

3CMPE 150- Introduction to Computer Networks

Last Class…

• Routing (cont’d).• Finished DV.• Link State.• Hierarchical routing.

Page 4: CMPE 150 Fall 2005 Lecture 23

4CMPE 150- Introduction to Computer Networks

Today

• Finish routing.– Many-to-many routing.• Broadcast.• Multicast.

• Internetworking.

Page 5: CMPE 150 Fall 2005 Lecture 23

5CMPE 150- Introduction to Computer Networks

Many-to-Many Routing

• Support many-to-many communication.

• Example applications: multi-point data distribution, multi-party teleconferencing.

Page 6: CMPE 150 Fall 2005 Lecture 23

6CMPE 150- Introduction to Computer Networks

Broadcasting

• Send to ALL destinations.• Several possible routing mechanisms to broadcasting.

• Simplistic approach: send separate packet to each destination.– Simple but expensive.

– Source needs to know about all destinations.

• Flooding:– May generate too many duplicates (depending on

node connectivity).

Page 7: CMPE 150 Fall 2005 Lecture 23

7CMPE 150- Introduction to Computer Networks

Multidestination Routing

• Packet contains list of destinations.• Router checks destinations and determines

on which interfaces it will forward packet.– Router generates new copy of packet for each output

line and includes in packet only the appropriate set of destinations.

– Eventually, packets will only carry 1 destination.

Page 8: CMPE 150 Fall 2005 Lecture 23

8CMPE 150- Introduction to Computer Networks

Spanning Tree Routing

• Use spanning tree (sink tree) rooted at broadcast initiator.

• No need for destination list.• Each on spanning tree forwards packets on

all lines on the spanning tree (except the one the packet arrived on).

• Efficient but needs to generate the spanning tree and routers must have that information.

Page 9: CMPE 150 Fall 2005 Lecture 23

9CMPE 150- Introduction to Computer Networks

Reverse Path Forwarding• Routers don’t have to know spanning tree.• Router checks whether broadcast packet

arrived on interface used to send packets to source of broadcast.– If so, it’s likely that it followed best route and thus not

a duplicate; router forwards packet on all lines.– If not, packet discarded as likely duplicate.

Page 10: CMPE 150 Fall 2005 Lecture 23

10CMPE 150- Introduction to Computer Networks

Broadcast Routing

Reverse path forwarding. (a) A subnet. (b) a Sink tree. (c) The tree built by reverse path forwarding.

Page 11: CMPE 150 Fall 2005 Lecture 23

11CMPE 150- Introduction to Computer Networks

Multicasting

• Special form of broadcasting:– Instead of sending messages to all nodes, send

messages to a group of nodes.

• Multicast group management:– Creating, deleting, joining, leaving group.

– Group management protocols communicate group membership to appropriate routers.

Page 12: CMPE 150 Fall 2005 Lecture 23

12CMPE 150- Introduction to Computer Networks

Multicast Routing

• Each router computes spanning tree covering all other participating routers.– Tree is pruned by removing branches that do not

contain any group members.

1,2

1

1,22

21

1

21,2

1

1,22

2

1

1

2

1

1

1

1

12 2

2

2 2

Page 13: CMPE 150 Fall 2005 Lecture 23

13CMPE 150- Introduction to Computer Networks

Shared Tree Multicasting• Source-rooted tree approaches don’t scale

well!– 1 tree per source, per group!– Routers must keep state for m*n trees, where m is

number of sources in a group and n is number of groups.

• Core-based trees: single tree per group.– Host unicast message to core, where message is

multicast along shared tree.– Routes may not be optimal for all sources.– State/storage savings in routers.

Page 14: CMPE 150 Fall 2005 Lecture 23

14CMPE 150- Introduction to Computer Networks

Internetworking

Page 15: CMPE 150 Fall 2005 Lecture 23

15CMPE 150- Introduction to Computer Networks

Internetworking

• What is it?– Connecting networks together forming a single

“internet”.

Page 16: CMPE 150 Fall 2005 Lecture 23

16CMPE 150- Introduction to Computer Networks

Connecting Networks

• A collection of interconnected networks.

Page 17: CMPE 150 Fall 2005 Lecture 23

17CMPE 150- Introduction to Computer Networks

How Networks Differ

5-43

Page 18: CMPE 150 Fall 2005 Lecture 23

18CMPE 150- Introduction to Computer Networks

How Networks Can Be Connected

• (a) Two Ethernets connected by a switch. • (b) Two Ethernets connected by routers.

Page 19: CMPE 150 Fall 2005 Lecture 23

19CMPE 150- Introduction to Computer Networks

How to Internet?

• Connection-oriented versus connectionless internetworking.

• Connection oriented internetworking:– Based on VC concatenation.

• Connectionless internetworking follows the datagram model.

Page 20: CMPE 150 Fall 2005 Lecture 23

20CMPE 150- Introduction to Computer Networks

Concatenated Virtual Circuits

. Builds VC crossing the different networks.

. Use of gateways to perform necessary conversions.

Gateway

Page 21: CMPE 150 Fall 2005 Lecture 23

21CMPE 150- Introduction to Computer Networks

Connectionless Internetworking

. Follows datagram model.

. Packets from Host X to Host Y may follow different routes.

. Gateways make routing decisions and perform translations.

Page 22: CMPE 150 Fall 2005 Lecture 23

22CMPE 150- Introduction to Computer Networks

Translating versus “Gluing”

• Translation: converting between different protocols.

• Hard!• Alternative: “gluing”.– I.e., using the same network layer protocol

everywhere.

– That’s what IP does!

Page 23: CMPE 150 Fall 2005 Lecture 23

23CMPE 150- Introduction to Computer Networks

Tunneling

• Interconnecting source and destination on separate networks but of the same type.

S

D

Page 24: CMPE 150 Fall 2005 Lecture 23

24CMPE 150- Introduction to Computer Networks

Tunneling Analogy

Page 25: CMPE 150 Fall 2005 Lecture 23

25CMPE 150- Introduction to Computer Networks

More Tunneling …

Page 26: CMPE 150 Fall 2005 Lecture 23

26CMPE 150- Introduction to Computer Networks

Internetwork Routing: Example

• (a) An internetwork. (b) A graph of the internetwork.

Page 27: CMPE 150 Fall 2005 Lecture 23

27CMPE 150- Introduction to Computer Networks

Internetwork Routing

• Inherently hierarchical.– Routing within each network: interior gateway protocol

(IGP).– Routing between networks: exterior gateway protocol

(EGP).

• Within each network, different routing algorithms can be used.

• Each network is autonomously managed and independent of others: autonomous system (AS).

Page 28: CMPE 150 Fall 2005 Lecture 23

28CMPE 150- Introduction to Computer Networks

Internetwork Routing (Cont’d)

• Typically, packet starts in its LAN. Gateway receives it (broadcast on LAN to “unknown” destination).

• Gateway sends packet to gateway on the destination network using its routing table. If it can use the packet’s native protocol, sends packet directly. Otherwise, tunnels it.

Page 29: CMPE 150 Fall 2005 Lecture 23

29CMPE 150- Introduction to Computer Networks

Fragmentation

• Happens when internetworking.

• Network-specific maximum packet size.– Width of TDM slot.

– OS buffer limitations.

– Protocol (number of bits in packet length field).

• Maximum payloads range from 48 bytes (ATM cells) to 64Kbytes (IP packets).

Page 30: CMPE 150 Fall 2005 Lecture 23

30CMPE 150- Introduction to Computer Networks

Problem

• What happens when large packet wants to travel through network with smaller maximum packet size? Fragmentation.

• Gateways break packets into fragments; each sent as separate packet.

• Gateway on the other side have to reassemble fragments into original packet.

• 2 kinds of fragmentation: transparent and non-transparent.

Page 31: CMPE 150 Fall 2005 Lecture 23

31CMPE 150- Introduction to Computer Networks

Types of Fragmentation

• (a) Transparent fragmentation. (b) Nontransparent fragmentation.

Page 32: CMPE 150 Fall 2005 Lecture 23

32CMPE 150- Introduction to Computer Networks

Transparent Fragmentation • Small-packet network transparent to other

subsequent networks.

• Fragments of a packet addressed to the same exit gateway, where packet is reassembled.– OK for concatenated VC internetworking.

• Subsequent networks are not aware fragmentation occurred.

• ATM networks (through special hardware) provide transparent fragmentation.

Page 33: CMPE 150 Fall 2005 Lecture 23

33CMPE 150- Introduction to Computer Networks

Problems with Transparent Fragmentation

• Exit gateway must know when it received all the pieces.– Fragment counter or “end of packet” bit.

• Some performance penalty but requiring all fragments to go through same gateway.

• May have to repeatedly fragment and reassemble through series of small-packet networks.

Page 34: CMPE 150 Fall 2005 Lecture 23

34CMPE 150- Introduction to Computer Networks

Non-Transparent Fragmentation

• Only reassemble at destination host.– Each fragment becomes a separate packet.

– Thus routed independently.

• Problems:– Hosts must reassemble.

– Every fragment must carry header until it reaches destination host.

Page 35: CMPE 150 Fall 2005 Lecture 23

35CMPE 150- Introduction to Computer Networks

Keeping Track of Fragments

• Fragments must be numbered so that original data stream can be reconstructed.

• Tree-structured numbering scheme:– Packet 0 generates fragments 0.0, 0.1, 0.2, …– If these fragments need to be fragmented later

on, then 0.0.0, 0.0.1, …, 0.1.0, 0.1.1, …– But, too much overhead in terms of number of

fields needed.– Also, if fragments are lost, retransmissions can

take alternate routes and get fragmented differently.

Page 36: CMPE 150 Fall 2005 Lecture 23

36CMPE 150- Introduction to Computer Networks

Keeping Track of Fragments (Cont’d)

• Another way is to define elementary fragment size that can pass through every network.

• When packet fragmented, all pieces equal to elementary fragment size, except last one (may be smaller).

• Packet may contain several fragments.

Page 37: CMPE 150 Fall 2005 Lecture 23

37CMPE 150- Introduction to Computer Networks

Fragmentation: Example

• Fragmentation when the elementary data size is 1 byte.• (a) Original packet, containing 10 data bytes.• (b) Fragments after passing through a network with maximum

packet size of 8 payload bytes plus header.• (c) Fragments after passing through a size 5 gateway.

Page 38: CMPE 150 Fall 2005 Lecture 23

38CMPE 150- Introduction to Computer Networks

Keeping Track of Fragments

• Header contains packet number, number of first fragment in the packet, and last-fragment bit.

27 0 1 A B C D E F G H I J

27 0 0 A B C D E F G H 27 8 1 I J

Packet numberNumber offirst fragment

Last-fragment bit

(a) Original packetwith 10 data bytes.

(b) Fragments after passing through network with maximum packet size = 8 bytes.

1 byte

Page 39: CMPE 150 Fall 2005 Lecture 23

39CMPE 150- Introduction to Computer Networks

The Internet