Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS 5565 Network Architecture and Protocols

Similar presentations


Presentation on theme: "CS 5565 Network Architecture and Protocols"— Presentation transcript:

1 CS 5565 Network Architecture and Protocols
Lecture 22 Godmar Back

2 Announcements Project 2B due in 2 parts: Extra Credit Opportunities:
Apr 29 and May 6 Extra Credit Opportunities: Expand simulator (and your implementation) to introduce multiple link failures and link resurrection Additional, requiring reading posted Andersen et al [SIGCOMM’08]: Accountable Internet Protocol (AIP) Casado et al [HotNets’08]: Rethinking Packet Forwarding Hardware CS 5565 Spring 2009 4/18/2019

3 Other Routing Protocols
Ad-hoc Routing Broadcast Routing Multicast Routing CS 5565 Spring 2009 4/18/2019

4 creation/transmission
Broadcast Routing Motivation: Use in-network duplication (b) rather than source-duplication (a) (a) (b) R1 R2 R3 R4 duplicate creation/transmission CS 5565 Spring 2009 4/18/2019

5 Broadcast Routing (2) Simplest approach: simple flooding
Forward every packet from every link to all other links every time Inefficient, loops, “broadcast storms” Sequence-number controlled flooding Only forward new packets to all other links CS 5565 Spring 2009 4/18/2019

6 Reverse Path Forwarding
Only forward packets from link that lies on shortest path to the source Assume unicast routing has run & every node knows shortest path to source A B G D E C F CS 5565 Spring 2009 4/18/2019

7 Broadcast using spanning tree
F A B G D E C F Same spanning tree can be used for all sources! CS 5565 Spring 2009 4/18/2019

8 Spanning Tree Construction
B G D E C F 1 2 3 4 5 A B G D E C F Center-based: all nodes send “tree-join” message to known or elected center node CS 5565 Spring 2009 4/18/2019

9 Multicast Routing Goal: find a tree (or trees) connecting routers having local mcast group members tree: not all paths between routers used source-based: different tree from each sender to rcvrs shared-tree: same tree used by all group members Source-based trees Shared tree Notes: 3.3 Network Layer: Multicast Routing Algorithms CS 5565 Spring 2009 4/18/2019

10 Shortest Path Tree mcast forwarding tree: tree of shortest path routes from source to all receivers Dijkstra’s algorithm S: source LEGEND R1 2 R4 router with attached group member 1 R2 5 router with no attached group member Notes: 3.3 Network Layer: Multicast Routing Algorithms 3 4 R5 6 link used for forwarding, i indicates order link added by algorithm R3 i R6 R7 CS 5565 Spring 2009 4/18/2019

11 Reverse Path Forwarding
S: source LEGEND router with attached group member router with no attached group member datagram will be forwarded datagram will not be forwarded Notes: 3.3 Network Layer: Multicast Routing Algorithms result is a source-specific reverse shortest path tree (SPT) – unless costs are asymmetric CS 5565 Spring 2009 4/18/2019

12 Reverse Path Forwarding: Pruning
S: source P LEGEND router with attached group member router with no attached group member P prune message links with multicast forwarding no need to forward datagrams down subtrees with no group members “prune” msgs sent upstream by router with no downstream group members Notes: 3.3 Network Layer: Multicast Routing Algorithms CS 5565 Spring 2009 4/18/2019

13 Shared-Tree: Steiner Tree
Steiner Tree: minimum cost tree connecting all routers with attached group members problem is NP-complete (if intermediate nodes must be found) excellent heuristics exists not used in practice: computational complexity information about entire network needed monolithic: rerun whenever a router needs to join/leave Notes: 1. See L. Wei and D. Estrin, “A Comparison of multicast trees and algorithms,” TR USC-CD , Dept. Computer Science, University of California, Sept 1993 for a comparison of heuristic approaches. 3.3 Network Layer: Multicast Routing Algorithms CS 5565 Spring 2009 4/18/2019

14 Center-Based trees single delivery tree shared by all
one router identified as “center” of tree to join: edge router sends unicast join-msg addressed to center router join-msg “processed” by intermediate routers and forwarded towards center join-msg either hits existing tree branch for this center, or arrives at center path taken by join-msg becomes new branch of tree for this router Notes: 1. It’s always nice to see a PhD dissertation with impact. The earliest discussion of center-based trees for multicast appears to be D. Wall, “Mechanisms for Broadcast and Selective Broadcast,” PhD dissertation, Stanford U., June 1980. 3.3 Network Layer: Multicast Routing Algorithms CS 5565 Spring 2009 4/18/2019

15 Center-based Trees Suppose R6 chosen as center: R1 LEGEND R4 3
2 3 1 LEGEND router with attached group member router with no attached group member 1 path order in which join messages generated Notes: 3.3 Network Layer: Multicast Routing Algorithms CS 5565 Spring 2009 4/18/2019

16 Internet Multicasting Routing: DVMRP
DVMRP: distance vector multicast routing protocol, RFC1075 flood and prune: reverse path forwarding, source-based tree RPF tree based on DVMRP’s own routing tables constructed by communicating DVMRP routers no assumptions about underlying unicast initial datagram to mcast group flooded everywhere via RPF routers not wanting group: send upstream prune msgs Notes: D. Waitzman, S. Deering, C. Partridge, “Distance Vector Multicast Routing Protocol,” RFC 1075, Nov The version of DVMRP in use today is considerably enhanced over the RFC1075 spec. A more up-to-date “work-in-progress” defines a version 3 of DVMRP: T. Pusateri, “Distance Vector Multicast Routing Protocol,” work-in-progress, draft-ietf-idmr-v3-05.ps 3.4 Network Layer: Internet Multicast Routing Algorithms CS 5565 Spring 2009 4/18/2019

17 DVMRP: continued… soft state: DVMRP router periodically (1 min.) “forgets” branches are pruned: mcast data again flows down unpruned branch downstream router: reprune or else continue to receive data routers can quickly regraft to tree following IGMP join at leaf odds and ends commonly implemented in commercial routers Mbone routing done using DVMRP Notes: 1. See for a (slightly outdatet) list of multicast capable routers (supporting DVMPR as well as other protocols) from various vendors. 2. ftp://parcftp.xerox.com/pub/net-research/ipmulti for circa 1996 public copy “mrouted” v3.8 of DVMRP routing software for various workstation routing platforms. 3.4 Network Layer: Internet Multicast Routing Algorithms CS 5565 Spring 2009 4/18/2019

18 IGMP Internet Group Management Protocol
Local protocol used by hosts to inform their routers that they’d like to join a mcast group MCast addresses are 224.x.x.x 28bits for groups, address indirection Simple protocol Join Leave (optional) Membership Query (still interested?) CS 5565 Spring 2009 4/18/2019

19 Tunneling Q: How to connect “islands” of multicast routers in a “sea” of unicast routers? physical topology logical topology mcast datagram encapsulated inside “normal” (non-multicast-addressed) datagram normal IP datagram sent thru “tunnel” via regular IP unicast to receiving mcast router which undoes encapsulation Notes: For a general discussion of IP encapsulation, see C. Perkins, “IP Encapsulation within IP,” RFC 2003, Oct The book S. Bradner, A Mankin, “Ipng: Internet protocol next generation,” Addison Wesley, 1995 has a very nice discussion of tunneling Tunneling can also be used to connect islands of IPv6 capable routers in a sea IPv4 capable routers. The long term hope is that the sea evaporates leaving only lands of IPv6! 3.4 Network Layer: Internet Multicast Routing Algorithms CS 5565 Spring 2009 4/18/2019

20 Status of IP Multicast MBone exists
PIM: ‘Protocol Independent Multicast’ protocol alternative to DVMRP Sporadically deployed Has not taken off Despite need (?) CS 5565 Spring 2009 4/18/2019

21 Data Link Layer

22 The Data Link Layer Our goals:
understand principles behind data link layer services: error detection, correction sharing a broadcast channel: multiple access link layer addressing reliable data transfer, flow control: done! instantiation and implementation of various link layer technologies CS 5565 Spring 2009 4/18/2019

23 Link Layer: Introduction
hosts and routers are nodes communication channels that connect adjacent nodes along communication path are links wired vs. wireless links, LANs provide different services layer-2 packet is a frame, encapsulates datagram data-link layer has responsibility of transferring datagram from one node to adjacent node over a link CS 5565 Spring 2009 4/18/2019

24 Adaptors Communicating
datagram link layer protocol rcving node sending node frame frame adapter adapter link layer implemented in “adaptor” (aka NIC) Ethernet card, PCMCIA card, card sending side: encapsulates datagram in a frame (header + data + trailer) adds error checking bits, rdt, flow control, etc. receiving side looks for errors, rdt, flow control, etc extracts datagram, passes to rcving node adapter is semi-autonomous link & physical layers CS 5565 Spring 2009 4/18/2019

25 Example: Gigabit Ethernet
We’ve covered this so far Could teach an entire (EE) course on what’s below LLC Logical Link Control MAC Media Access Control PCS Physical Coding Sublayer PMA Physical Media Access GMII Gigabit Media Independent Interface MDI Media Dependent Interface (Twisted Pair, Fiber) Source: [Noseworthy 1998] CS 5565 Spring 2009 4/18/2019

26 Link Layer Services Framing, link access:
encapsulate datagram into frame, adding header, trailer channel access if shared medium “MAC” addresses used in frame headers to identify source, dest different from IP address! Reliable delivery between adjacent nodes same ideas as at Layer 4 apply seldom used on low bit error link (fiber, some twisted pair) wireless links: high error rates Q: why both link-level and end-end reliability? CS 5565 Spring 2009 4/18/2019

27 Link Layer Services (more)
Flow Control: pacing between adjacent sending and receiving nodes Half-duplex and full-duplex with half duplex, nodes at both ends of link can transmit, but not at same time Error Detection: errors caused by signal attenuation, noise. receiver detects presence of errors: signals sender for retransmission or drops frame Error Correction: receiver identifies and corrects bit error(s) without resorting to retransmission CS 5565 Spring 2009 4/18/2019


Download ppt "CS 5565 Network Architecture and Protocols"

Similar presentations


Ads by Google