The University of Adelaide, School of Computer Science

Slides:



Advertisements
Similar presentations
The University of Adelaide, School of Computer Science
Advertisements

Computer Networks Chapter 4: Advanced Internetworking
Transitioning to IPv6 April 15,2005 Presented By: Richard Moore PBS Enterprise Technology.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 06_b Subnetting,Supernetting, CIDR IPv6 Instructor: Dr. Li-Chuan Chen Date: 10/06/2003 Based in part upon.
The Future of TCP/IP Always evolving: –New computer and communication technologies More powerful PCs, portables, PDAs ATM, packet-radio, fiber optic, satellite,
PRIVATE NETWORK INTERCONNECTION (NAT AND VPN) & IPv6
Computer Networks20-1 Chapter 20. Network Layer: Internet Protocol 20.1 Internetworking 20.2 IPv IPv6.
CS440 Computer Networks 1 IPv6 Neil Tang 11/10/2008.
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
IP datagrams Service paradigm, IP datagrams, routing, encapsulation, fragmentation and reassembly.
Chapter 22 IPv6 (Based on material from Markus Hidell, KTH)
1 Internet Protocol Version 6 (IPv6) What the caterpillar calls the end of the world, nature calls a butterfly. - Anonymous.
IP Version 6 Next generation IP Prof. P Venkataram ECE Dept. IISc.
Computer Networks Chapter 4: Advanced Internetworking.
CS 164: Global Internet Slide Set In this set... More about subnets Classless Inter Domain Routing (CIDR) Border Gateway Protocol (BGP) Areas with.
CS335 Networking & Network Administration Tuesday, May 18, 2010.
MULTICASTING Network Security.
CS 6401 IPv6 Outline Background Structure Deployment.
1 Copyright © 2012, Elsevier Inc. All rights Reserved Chapter 4 Advanced Internetworking Computer Networks, 5th Edition.
1Group 07 IPv6 2 1.ET/06/ ET/06/ ET/06/ EE/06/ EE/06/ EE/06/6473 Group 07 IPv6.
1 Chapter 27 Internetwork Routing (Static and automatic routing; route propagation; BGP, RIP, OSPF; multicast routing)
G64INC Introduction to Network Communications Ho Sooi Hock Internet Protocol.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing
22.1 Chapter 22 Network Layer: Delivery, Forwarding, and Routing Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public BSCI Module 8 Lessons 1 and 2 1 BSCI Module 8 Lessons 1 and 2 Introducing IPv6 and Defining.
1 Chapter 27 Internetwork Routing (Static and automatic routing; route propagation; BGP, RIP, OSPF; multicast routing)
CSC 600 Internetworking with TCP/IP Unit 8: IP Multicasting (Ch. 17) Dr. Cheer-Sun Yang Spring 2001.
Fall 2005Computer Networks20-1 Chapter 20. Network Layer Protocols: ARP, IPv4, ICMPv4, IPv6, and ICMPv ARP 20.2 IP 20.3 ICMP 20.4 IPv6.
UNIT IP Datagram Fragmentation Figure 20.7 IP datagram.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 11 Unicast Routing Protocols.
CS 6401 IPv6 Outline Background Structure Deployment.
CSC 600 Internetworking with TCP/IP Unit 7: IPv6 (ch. 33) Dr. Cheer-Sun Yang Spring 2001.
Network Layer4-1 The Internet Network layer forwarding table Host, router network layer functions: Routing protocols path selection RIP, OSPF, BGP IP protocol.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Network Layer NAT, IPv6.
The Internet Network layer
Chapter 25 Internet Routing. Static Routing manually configured routes that do not change Used by hosts whose routing table contains one static route.
Spring 2008CPE Computer Networks1 Routing: Part II Outline Algorithms Scalability Reading: Section 4.3.
CSE5803 Advanced Internet Protocols and Applications (13) Introduction Existing IP (v4) was developed in late 1970’s, when computer memory was about.
Inter-domain Routing Outline Border Gateway Protocol.
Multicasting EECS June Multicast One-to-many, many-to-many communications Applications: – Teleconferencing – Database – Distributed computing.
1 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
1 Computer Networks Chapter 5. Network layer The network layer is concerned with getting packets from the source all the way to the destination. Getting.
CSS432 Subnetting and CIDR Textbook Ch3. 2
TRANSPORT LAYER BY, Parthasarathy.g.
Kapitel 19: Routing. Kapitel 21: Routing Protocols
Chapter 4: Advanced Internetworking
IP Version 6 (IPv6).
IPv6 Outline Background Structure Deployment Fall 2001 CS 640.
Routing BY, P.B.SHANMATHI.
(How the routers’ tables are filled in)
Next Generation: Internet Protocol, Version 6 (IPv6) RFC 2460
ICMP ICMP – Internet Control Message Protocol
Chapter 4: Advanced Internetworking
Net 323: NETWORK Protocols
Routing.
CS 457 – Lecture 10 Internetworking and IP
What’s “Inside” a Router?
UNIT III ROUTING.
Chapter 26 IPv6 Addressing
Inter-domain Routing Outline Homework #3 solutions
Overview The Internet (IP) Protocol Datagram format IP fragmentation
Chapter 15. Internet Protocol
Internet Protocol, Version 6 (IPv6)
Scaling the Network: Subnetting and Other Protocols
Computer Networks Protocols
Routing.
Computer Networks Protocols
IPv6 Outline Background Structure Deployment CS 640.
Presentation transcript:

The University of Adelaide, School of Computer Science 13 September 2018 Chapter 4 Advanced Internetworking Copyright © 2010, Elsevier Inc. All rights Reserved Chapter 2 — Instructions: Language of the Computer

The University of Adelaide, School of Computer Science 13 September 2018 Problems How do we build a routing system that can handle hundreds of thousands of networks and billions of end nodes? How to handle address space exhaustion of IPV4? How to enhance the functionalities of Internet? Chapter 2 — Instructions: Language of the Computer

The University of Adelaide, School of Computer Science 13 September 2018 Chapter Outline Global Internet Multicast Mobile IP Chapter 2 — Instructions: Language of the Computer

The University of Adelaide, School of Computer Science 13 September 2018 Chapter Goal Understanding the scalability of routing in the Internet Discussing IPv6 Understanding the concept of multicasting Discussing Mobile IP Chapter 2 — Instructions: Language of the Computer

The University of Adelaide, School of Computer Science 13 September 2018 The Global Internet The tree structure of the Internet in 1990 Chapter 2 — Instructions: Language of the Computer

The University of Adelaide, School of Computer Science 13 September 2018 The Global Internet A simple multi-provider Internet Chapter 2 — Instructions: Language of the Computer

The University of Adelaide, School of Computer Science 13 September 2018 The Global Internet Chapter 2 — Instructions: Language of the Computer

Interdomain Routing (BGP) Internet is organized as autonomous systems (AS) each of which is under the control of a single administrative entity Autonomous System (AS) corresponds to an administrative domain examples: University, company, backbone network A corporation’s internal network might be a single AS, or the network of a single Internet service provider

A network with two autonomous system Interdomain Routing A network with two autonomous system

Route Propagation Idea: Provide an additional way to hierarchically aggregate routing information in a large internet. Improves scalability Divide the routing problem in two parts: Routing within a single autonomous system Routing between autonomous systems Another name for autonomous systems in the Internet is routing domains Two-level route propagation hierarchy Inter-domain routing protocol (Internet-wide standard) Intra-domain routing protocol (each AS selects its own)

EGP and BGP Inter-domain Routing Protocols Exterior Gateway Protocol (EGP) Forced a tree-like topology onto the Internet Did not allow for the topology to become general Tree like structure: there is a single backbone and autonomous systems are connected only as parents and children and not as peers Border Gateway Protocol (BGP) Assumes that the Internet is an arbitrarily interconnected set of ASs. Today’s Internet consists of an interconnection of multiple backbone networks (they are usually called service provider networks, and they are operated by private companies rather than the government) Sites are connected to each other in arbitrary ways

BGP Some large corporations connect directly to one or more of the backbone, while others connect to smaller, non-backbone service providers. Many service providers exist mainly to provide service to “consumers” (individuals with PCs in their homes), and these providers must connect to the backbone providers Often many providers arrange to interconnect with each other at a single “peering point”

BGP-4: Border Gateway Protocol Assumes the Internet is an arbitrarily interconnected set of AS's. Define local traffic as traffic that originates at or terminates on nodes within an AS, and transit traffic as traffic that passes through an AS. We can classify AS's into three types: Stub AS: an AS that has only a single connection to one other AS; such an AS will only carry local traffic. Multihomed AS: an AS that has connections to more than one other AS, but refuses to carry transit traffic. Transit AS: an AS that has connections to more than one other AS, and is designed to carry both transit and local traffic.

BGP-4: Border Gateway Protocol

BGP The goal of Inter-domain routing is to find any path to the intended destination that is loop free We are concerned with reachability than optimality Finding path anywhere close to optimal is considered to be a great achievement

BGP Scalability: An Internet backbone router must be able to forward any packet destined anywhere in the Internet Having a routing table that will provide a match for any valid IP address Autonomous nature of the domains It is impossible to calculate meaningful path costs for a path that crosses multiple ASs A cost of 1000 across one provider might imply a great path but it might mean an unacceptable bad one from another provider Issues of trust Provider A might be unwilling to believe certain advertisements from provider B

BGP Each AS has: One BGP speaker that advertises: local networks other reachable networks (transit AS only) gives path information In addition to the BGP speakers, the AS has one or more border “gateways” which need not be the same as the speakers The border gateways are the routers through which packets enter and leave the AS

BGP BGP does not belong to either of the two main classes of routing protocols (distance vectors and link-state protocols) BGP advertises complete paths as an enumerated lists of ASs to reach a particular network

Example of a network running BGP BGP Example Example of a network running BGP

BGP Example Speaker for AS 2 advertises reachability to P and Q Network 128.96, 192.4.153, 192.4.32, and 192.4.3, can be reached directly from AS 2.

BGP Example Speaker for backbone network (AS1) then advertises Networks 128.96, 192.4.153, 192.4.32, and 192.4.3 can be reached along the path <AS 1, AS 2>. Speaker can also cancel previously advertised paths

BGP Issues It should be apparent that the AS numbers carried in BGP need to be unique For example, AS 2 can only recognize itself in the AS path in the example if no other AS identifies itself in the same way AS numbers are 16-bit numbers assigned by a central authority

Integrating Interdomain and Intradomain Routing All routers run an intradomain routing protocol (RIP/ OSPF). Border routers (A, D, E) also run BGP to other ASs

Integrating Interdomain and Intradomain Routing 128/69/16 18.0/16 12.5.5/24 128.34/16 BGP routing table, IGP routing table, and combined table at router B

Routing Areas A domain divided into area Backbone area Area border router (ABR) A domain divided into area

Next Generation IP (IPv6)

IPv6 Background IP has been patched (subnets, supernets) but there is still the fundamental 32 bit address limitation IETF started effort to specify new version of IP in 1991 New version would require change of header Include all modifications in one new protocol Solicitation of suggestions from community Result was IPng which became IPv6 First version completed in ’94 Same architectural principles as v4 – only bigger 

IPv6 Issues Address length: usable addresses vs. overhead Hop limit: is 64K necessary? Max. Pkt. Size: Larger bandwidth calls for larger pkts. Is the checksum necessary? How do servers handle both types of packets? Is security necessary in IP? How is it best implemented? DNS can be very important in the transition – how?

IPv6 planned support list 128-bit address space This is what it’s all about… Real-time/QoS services Security and authentication Autoconfiguration Hosts autoconfig with IP address and domain name Idea is to try to make systems more plug-n-play Enhanced routing functionality e.g,. Mobile hosts Multicast Protocol extensions Smooth transition path from IPv4 Can’t do it all at once!

Address Space and Notation Allocation is classless Prefixes specify different uses (unicast, multicast, anycast) Anycast: send packets to nearest member of a group Prefixes can be used to map v4 to v6 space and vice-versa Lots of flexibility with 128 bits! ~1500 address/sqft of the earths surface

Address Space and Notation Standard representation is set of eight 16-bit values separated by colons E.g., 27CD:1234:3200:0000:0000:4325:B792:0428 If there are large number of zeros, they can be omitted with series of colons: 27CD:1234:3200::4325:B792:0428 Address prefixes (slash notation) are the same as v4 FEDC:BA98:7600::/40 describes a 40 bit prefix

0000 0000 Reserved 0000 0001 Unassigned 0000 001 Reserved for NSAP (non-IP addresses used by ISO) 0000 010 Reserved for IPX (non-IP addresses used by IPX) 0000 011 0000 1 0001 001 Unicast Address Space 010 011 100 101 110 1110 1111 0 1111 10 1111 110 1111 1110 0 1111 1110 10 Link Local Use addresses 1111 1110 11 Site Local Use addresses 1111 1111 Multicast addresses

Unicast Assignment in v6 Unicast address assignment is similar to CIDR Unicast addresses start with 001 Host interfaces belong to subnets Addresses are composed of a subnet prefix and a host identifier Subnet prefix structure provides for aggregation into larger networks

Unicast Assignment in v6 Provider-based plan Idea is that the Internet is global hierarchy of network Three levels of hierarchy – region, provider, subscriber Goal is to provide route aggregation to reduce BGP overhead A provider can advertise a single prefix for all of its subscribers Region = 13 bits, Provider = 24 bits, Subscriber = 16 bits, Host = 80 bits E.g., 001,regionID,providerID,subscriberID,subnetID,intefaceID Anycast addresses are treated just like unicast addresses It’s up to the routing system to determine which server is “closest”

IPv6 Header 40-byte “base” header Extension headers fragmentation source routing authentication and security other options

Packet Format Details Simpler format than v4 Version = 6 Traffic class same as v4 ToS Treat all packets with the same Flow Label equally Support QoS and fair bandwidth allocation Payload length does not include header –limits packets to 64KB There is a “jumbogram option”

Packet Format Details Hop limit = TTL field Next header combines options and protocol If there are no options then NextHeader is the protocol field Options are “extension header” that follow IP header Ordered list of tuples – 6 common types Quickly enable a router to tell if the options are meant for it E.g., routing, fragmentation, authentication encryption…

Key differences in header No checksum Bit level errors are checked for all over the place No length variability in header Fixed format speeds processing No more fragmentation and reassembly in header Incorrectly sized packets are dropped and message is sent to sender to reduce packet size Hosts should do path MTU discovery But of course we have to be able to segment packets!

Transition from v4 to v6 Dual stack operation – v6 nodes run in both v4 and v6 modes and use version field to decide which stack to use Nodes can be assigned a v4 compatible v6 address Allows a host which supports v6 to talk v6 even if local routers only speak v4 Signals the need for tunneling Add 96 0’s (zero-extending) to a 32-bit v4 address – e.g., ::10.0.0.1

Transition from v4 to v6 Nodes can be assigned a v4 mapped v6 address Allows a host which supports both v6 and v4 to communicate with a v4 hosts Add 2 bytes of 1’s to v4 address then zero-extend the rest – e.g., ::ffff:10.0.0.1 Tunneling is used to deal with networks where v4 router(s) sit between two v6 routers Simply encapsulate v6 packets and all of their information in v4 packets until you hit the next v6 router

IPv4-Mapped IPv6 Address 80 bits of 0s followed by 16 bits of ones, followed by a 32 bit IPv4 Address: (::ffff:10.0.0.1) 0000 . . . 0000 FFFF IPv4 Address 80 bits 16 bits 32 bits

IPv4-Mapped IPv6 Address IPv4-Mapped addresses allow a host that support both IPv4 and IPv6 to communicate with a host that supports only IPv4. The IPv6 address is based completely on the IPv4 address.

Works with DNS An IPv6 application asks DNS for the address of a host, but the host only has an IPv4 address. DNS creates the IPv4-Mapped IPv6 address automatically. Kernel understands this is a special address and really uses IPv4 communication.

IPv4-Compatible IPv6 Address An IPv4 compatible address allows a host supporting IPv6 to talk IPv6 even if the local router(s) don’t talk IPv6. IPv4 compatible addresses tell endpoint software to create a tunnel by encapsulating the IPv6 packet in an IPv4 packet.

Tunneling (done automatically by kernel when IPv4-Compatible IPv6 addresses used) Host IPv6 Host IPv4 Routers IPv4 Datagram IPv6 Datagram

Internet Multicast

Overview IPv4 Integral part of IPv6 class D addresses demonstrated with Multicast Backbone (Mbone) virtual network [1992]. uses tunneling Integral part of IPv6 problem is making it scale

Overview One-to-many Many-to-many Radio station broadcast Transmitting news, stock-price Software updates to multiple hosts Many-to-many Multimedia teleconferencing Online multi-player games Distributed simulations

Overview Without multicast support: A source needs to send a separate packet with the identical data to each member of the group This redundancy consumes more bandwidth Redundant traffic is not evenly distributed, concentrated near the sending host Source needs to keep track of the IP address of each member in the group Group may be dynamic To support many-to-many and one-to-many IP provides an IP-level multicast

Overview Basic IP multicast model is many-to-many based on multicast groups Each group has its own IP multicast address Hosts that are members of a group receive copies of any packets sent to that group’s multicast address A host can be in multiple groups A host can join and leave groups

Overview Using IP multicast to send the identical packet to each member of the group A host sends a single copy of the packet addressed to the group’s multicast address The sending host does not need to know the individual unicast IP address of each member Sending host does not send multiple copies of the packet

Overview IP’s original many-to-many multicast has been supplemented with support for a form of one-to-many multicast One-to-many multicast Source specific multicast (SSM) A receiving host specifies both a multicast group and a specific sending host Many-to-many model Any source multicast (ASM)

Overview A host signals its desire to join or leave a multicast group by communicating with its local router using a special protocol In IPv4, the protocol is Internet Group Management Protocol (IGMP) In IPv6, the protocol is Multicast Listener Discovery (MLD) The router has the responsibility for making multicast behave correctly with regard to the host

Multicast Routing To support multicast, a router must additionally have multicast forwarding tables that indicate, based on multicast address, which links to use to forward the multicast packet Unicast forwarding tables collectively specify a set of paths Multicast forwarding tables collectively specify a set of trees Multicast distribution trees

Multicast Routing To support source specific multicast, the multicast forwarding tables must indicate which links to use based on the combination of multicast address and the unicast IP address of the source Multicast routing is the process by which multicast distribution trees are determined

Distance-Vector Multicast Each router already knows that shortest path for every destination in its table. When a router receives a multicast packet from S, it forwards the packet on all outgoing links (except the one on which the packet arrived), iff packet arrived from N. Eliminate duplicate broadcast packets by only letting “parent” for LAN (relative to S) forward shortest path to S (learn via distance vector) smallest address to break ties

Distance-Vector Multicast Reverse Path Broadcast (RPB) Goal: Prune networks that have no hosts in group G Step 1: Determine LAN that is a leaf with no members in G leaf if parent is only router on the LAN determine if any hosts are members of G using IGMP Step 2: Propagate “no members of G here” information augment <Destination, Cost> update sent to neighbors with set of groups for which this network is interested in receiving multicast packets. only happens when multicast address becomes active.

Protocol Independent Multicast (PIM) Shared Tree Source specific tree

Protocol Independent Multicast (PIM) Delivery of a packet along a shared tree. R1 tunnels the packet to the RP, which forwards it along the shared tree to R4 and R5.

The University of Adelaide, School of Computer Science 13 September 2018 Summary # Chapter Subtitle We have looked at the issues of scalability in routing in the Internet We have discussed IPV6 We have discussed Multicasting Chapter 2 — Instructions: Language of the Computer