1 / 78

CMPE 252A: Computer Networks Set 10:

CMPE 252A: Computer Networks Set 10:. IP Internetworking. Internetworking. Arbitrary collection of physical networks interconnected to provide an end-to-end (host-to-host) packet delivery service. Networks differ in many ways: Service offered: datagrams vs connections

Download Presentation

CMPE 252A: Computer Networks Set 10:

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CMPE 252A: Computer NetworksSet 10: IP Internetworking

  2. Internetworking • Arbitrary collection of physical networks interconnected to provide an end-to-end (host-to-host) packet delivery service. • Networks differ in many ways: • Service offered: datagrams vs connections • Protocols and mechanisms used • Address space • Topology and physical media • An internetwork should make all these differences transparent to end nodes.

  3. IP Internetworking • Based on Cerf’s catenet model V.G. Cerf, “The Catenet Model for Internetworking,” IEN 48, July 1978. • Basic premises: • Heterogeneous transmission media • Heterogeneous hardware and OS in hosts and gateways • Common protocol for network interconnection runs in all gateways and hosts! • Common protocol used for data transfer and signaling • Common address space used to identify where a host or router is in the internetwork • An address states at which network a node attaches to the internetwork

  4. NET NET G G G G NET NET Catenet Model • A network is the address of a host in the internet • A single address space, with addresses that are globally unique • A single protocol for delivering all user and control data • Common protocol runs in all gateways and hosts • A common definition of services

  5. R G R R R R G G G Catenet Model Routing within each network is transparent to internet protocol Internet protocol is transparent to intra-network routing

  6. Service Model: Theory and Practice • The Internet Protocol (IP) evolved from the catenet model. • Theory: Datagram Delivery is assumed, so that packets can get lost, out of order, and multiple copies can be delivered. • Practice: • TCP needs in-order delivery of packets to work efficiently, and (as we will see) Internet routing protocols provide a single path for each destination and do not adapt very rapidly. • Too many destinations!

  7. R R R R R R R R R IP Internet today A single path to each destination, link costs are static. Starting with NSFNET, routers run IP and the Internet is based on routers running IP interconnecting autonomous systems.

  8. Internet Control Protocols • In addition to packet forwarding and keeping routing tables correct, sending IP packets requires a number of control protocols: • Host must be given an IP address (DHCP) • Application in host has the name of an intended destination, and an IP address has to be found for that name. • The application calls a resolver in the Domain Name System (DNS) or uses a static hosts file (e.g., /etc/hosts) • Host determines if destination IP address is the same or different. • If different, packet is sent to an attached (default) IP router. • If same, the IP address must be converted to a MAC address (ARP). • Destination router must also map IP address to MAC address (ARP). • Errors may have to be reported to the source of an IP packet using a protocol (ICMP).

  9. Internet Protocol (IP) is the glue R R R R R R R R R “Simple” store-and-forward networking “Rich” end-to-end services: Processing and storage of content IP Internet Today A Success tale of “two worlds with a little glue” “Networking” is independent of processing and storage of content.

  10. R R R R R R R R R To net b go to r2 next To net d go to r3 next To net e go to r2 next …. IP Internet Approach Datagram switching (using IP) that - Optimizes link utilization by means of short-term storage of packets • - Applies the same limited instruction set on all packets • - Assumes that destinations are points of attachment to Internet (host@net) • - Assumes that the context for switching a packet is stated in its encapsulated headers • - Assumes that physical connectivity between switch and destination exists Great if link bandwidth is scarce and storage and processing are very expensive.

  11. R R R R R R R R R IP Internet Approach Mapping of application-friendly names to globally-unique identifiers linked to the topology (IP addresses) • - Early binding of end points is inefficient • - DNS is prone to attacks • - Globally-unique addressing is inefficient • - Mapping is inefficient if hosts move or many hosts can map to the same application-friendly name • - Mapping introduces long latencies and is prone to configuration errors • (35% of DNS queries fail; many of them due to configuration errors [Jung et al, sigcomm IMW01])

  12. R R R R R R R R R IP Internet Approach Reliable connections (using TCP) for reliable byte delivery between two hosts Reliable content delivery via connections between specific hosts is wasteful (>99% use of today’s networks is for entities to acquire named chunks of data (like web pages or email messages) • Popular sites are hotspots and prone to congestion • Poor reliability from dependence on a channel to the data source • Poor utilization of computing and storage resources in the network • End-to-end connectivity may not be there Connection requires connectivity and a bandwidth-delay product that permits feedback. Flow and congestion control assumes a sender-receiver session against all others.

  13. R R R R R R R R R IP Internet Approach Good: • The “glue” provided by IP. • “Interoperability attained with common packet format model” Bad: • The network behaves as if storage and processing were still very expensive! • End-to-end, we still emulate “pipes” similar to those of the telephone network! applications IP transmission media

  14. “Store-process-forward” networking; Process and storage of content inside the network n n n n The Opportunity: A New Kind of Network A richer “instruction set” for packet switching that takes advantage of context New routers store and process content Names of content, not host addresses, used as the entities for routing Consumers and providers of content collaborate based on their context

  15. ARCHITECTURES LOGIC: Self-Organizing, scalable LIMITS ANALYTICAL MODELS & SIMULATIONS Designing Communication Protocols

  16. n n applications n n Opportunistic storage, processing, comm. transmission media Research Areas • Naming: • No DNS, no IPv6, tell the network what you want, not where it should be • What’s a name, what’s an object? • Content dissemination & search: • No need for e-t-e connectivity, routing tables become distributed search engine for content • R.T. conversations as objects, rather than reserved pipes • No need for large pkt headers stating context in each pkt; context establishment is part of distributed storage & processing • Handling billions of objects • Devices: • No host/router divide; exploit devic context • Security: • Protect information objects and expressed interests for content wherever they may be • New apps, no servers! • New packet switching models • Others… New team-oriented retransmission & congestion control schemes

  17. Scale: 100’s millions of destinations: Routing table cannot store an entry for each destination! Routing table exchange would swamp links. Administrative autonomy Internet is a network of networks Each network administrator may want to control routing in its own network. Hierarchical Routing

  18. Aggregate routers into regions, “autonomous systems” (AS) Routers in same AS run same routing protocol “intra-AS” routing protocol Routers in different AS can run different intra-AS routing protocol Special routers in AS Run intra-AS routing protocol with all other routers in AS Responsible for routing to destinations outside AS run inter-AS routing protocol with other gateway routers Gateway Routers Hierarchical Routing

  19. b c a A.c A.a C.b B.a Intra-AS and Inter-AS Routing • Gateways: • Perform inter-AS routing amongst themselves • Perform intra-AS routers with other routers in their AS b c a a C b B d A network layer inter-AS, intra-AS routing in gateway A.c link layer physical layer

  20. Inter-AS routing between A and B b a c C.b A.a B.a A.c Intra-AS and Inter-AS Routing b c Host D a a C b B d Intra-AS routing within AS B A Host S Intra-AS routing within AS A

  21. Layers in Internet Routing APPLICATION APPLICATION Routing Protocol Routing Protocol Routing Table Routing Table PRESENTATION PRESENTATION SESSION SESSION TRANSPORT (TCP or UDP) TRANSPORT NETWORK NETWORK Routing Table Routing Table IP IP LINK LINK PHYSICAL PHYSICAL

  22. IPv4 Packet Information 23 31 0 3 7 15 version HLen TOS length Typically no options and header is 20 bytes flags identifier offset TTL protocol checksum source address destination address pad (variable) Options (variable) data

  23. IPv4 Datagram Format IP protocol version number 32 bits total datagram length (bytes) header length (words) type of service head. len ver length for fragmentation and reassembly fragment offset “type” of data flgs 16-bit identifier max number remaining hops (decremented at each router) upper layer time to live Internet checksum 32 bit source IP address 32 bit destination IP address upper layer protocol to deliver payload to e.g., timestamp, record route taken, specify list of routers to visit. Options (if any) how much overhead with TCP? • 20 bytes of TCP • 20 bytes of IP • = 40 bytes + app layer overhead data (variable length, typically a TCP or UDP segment)

  24. IPv4 Addresses • IP addresses are global and, unlike MAC addresses, they are hierarchical. • IP address has a network part and a host part and specifies host@network • A host has an address for each network to which it attaches. • IP addresses are denoted using the dotted-decimal notation: Each byte of the address is written in its decimal form and is separated by a dot from the other bytes, e.g., 5.7.2.1 => 00000101 00000111 00000010 00000001

  25. IP address:32-bit identifier for host, router interface Interface:connection between host or router and physical link Router’s typically have multiple interfaces Host may have multiple interfaces IP addresses associated with each interface 223.1.1.2 223.1.2.1 223.1.3.27 223.1.3.1 223.1.3.2 223.1.2.2 IPv4 Addresses 223.1.1.1 223.1.2.9 223.1.1.4 223.1.1.3 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1

  26. Routing table entries referring to destinations in the same AS refer to networks only. 223.1.2.* 223.1.3.* IPv4 Addresses 223.1.1.*

  27. IPv4 Addressing Problems • There were too few networks left due to the class structure used in IP address assignments! • There are many more IP devices and appliances coming. • Routing tables cannot have millions of entries. • Solutions: • Aggregation of addresses without classes (CIDR) • New and much bigger global address space (IPv6) • Locally unique addresses (NAT and other techniques)

  28. 126 16,382 2 million Class-based IPv4 Addresses (past) 8 16 0 24 31 network host Class A 0 16 million network host Class B 10 65,534 network host 110 Class C 254 multicast address Class D 1110 reserved address Class E 11110

  29. host part network part 11001000 000101110001000000000000 200.23.16.0/23 IP Addressing: CIDR • Classful addressing: • Inefficient use of address space, address space exhaustion. • A class B address has enough addresses for 65K hosts, even if only a few more than 256 hosts are located in that network • CIDR:Classless InterDomain Routing • Eliminate the strict assignment of address portion in class-full addressing. • Enable a network portion of address of arbitrary length. • CIDR Address Format: a.b.c.d/x, where x is # bits in network portion of address

  30. Assigning IP Addresses to Hosts • Hard-coded by system administrator in a file • Wintel: control-panel->network->configuration-> tcp/ip->properties • UNIX: /etc/rc.config • Obtain address from as server dynamically (“plug-and-play”) • This is the purpose of DHCP:Dynamic Host Configuration Protocol:

  31. Assigning Network Portion of IP Address to a Network • An ISP obtains a block of the address space. • Net is allocated portion of its provider ISP’s address space. ISP's block11001000 00010111 00010000 00000000 200.23.16.0/20 Organization 0 11001000 00010111 0001000000000000 200.23.16.0/23 Organization 1 11001000 00010111 0001001000000000 200.23.18.0/23 Organization 2 11001000 00010111 00010100 00000000 200.23.20.0/23 ... ….. …. …. Organization 7 11001000 00010111 0001111000000000 200.23.30.0/23

  32. Assigning Blocks of Addresses to ISPs IANA: Internet Assigned Numbers Authority • Domain names: Manage the DNS root, .int, .arpa domains. • Number resources: Coordination of global pool of IP and AS numbers via Regional Internet Registries • Protocol assignments: Manage Internet protocol numbering systems together with standards bodies. • Operated by Internet Corporation for Assigned Names and Numbers (ICANN) under a US Department of Commerce contract • http://www.iana.org/ • http://www.icann.org/ • Take a look and remind yourselves how it works.

  33. 200.23.16.0/23 200.23.18.0/23 200.23.30.0/23 200.23.20.0/23 . . . . . . Hierarchical Addressing for Route Aggregation Allow efficient advertisement of routing information Organization 0 Organization 1 “Send me anything with addresses beginning 200.23.16.0/20” Organization 2 My-ISP Internet Organization 7 “Send me anything with addresses beginning 199.31.0.0/16” Another-ISP

  34. 200.23.16.0/23 200.23.18.0/23 200.23.30.0/23 200.23.20.0/23 . . . . . . Hierarchical Addressing and More Specific Routes Another-ISP has a more specific route to Organization 1 Organization 0 “Send me anything with addresses beginning 200.23.16.0/20” Organization 2 My-ISP Internet Organization 7 “Send me anything with addresses beginning 199.31.0.0/16 or 200.23.18.0/23” Another-ISP Organization 1

  35. Internet Routing Protocols • Itra-domain routing: • RIP, OSPF, EIGRP • Single-path routing protocols, static link costs • Performance (shortest path) • Inter-domain routing: • Border Gateway Protocol (BGP) • Single path • Policy based

  36. RIP • Based on DBF • Used in small internets • Problems: Counting to infinity and looping, single-path routing, link cost should be 1 or infinity • Update specifies only a destination network and a distance to it; hence, no variable subnet masks are allowed in “local” internet and a static subnetting convention must be used for all routers • Router sends its routing table to its neighbors every 30 sec. or when it must update its routing table. • Runs on top of UDP.

  37. RIPv2 • Adds the next hop to a destination and subnet mask in each update. • Variable subnets are allowed. • Performance does not improve much.

  38. OSPF: Open Shortest Path First • Dijkstra’s SPF used to compute shortest paths locally based on topology map. • Flooding is used to disseminate topology maps. • Sequence numbers and age fields are used to validate link-state updates. • Runs on top of IP and implements its own reliable transmission of link-state updates. • Designated routers are used to reduce overhead within a LAN, and areas connected by a backbone are used to reduce overhead across LANs. • A handshake is used to reduce overhead of sending large portions of the topology map between neighbors. • HELLOs used to identify neighbors.

  39. A1 R R R R R R R R R not allowed R backbone OSPF A2 Areas must be connected by a connected backbone (area 0) A3 A4

  40. A1 internal router R A2 R R R R R R R To other domains area border router R boundary router, backbone router A3 A4 OSPF EA1 EA2 … EAn

  41. OSPF • Areas need unique IDS, an IP address. • Zero or more address ranges can be reached in an area. • Different types of routers have different views of topology. • End result is a hybrid of link-state and distance information.

  42. R R R R Topology Information at Backbone Router A2 A1 EA1 EA2 … EAn A3 A4

  43. A1 R A2 R R R EA1 EA2 … EAn A3 A4 Topology Information at Area Border Router R R R R R

  44. Topology Information atInternal Router A2 A1 R R R EA1 EA2 … EAn R R A4 A3

  45. OSPF R R R R • In a broadcast LAN, designated router eliminates too many link state updates. • LSUs, HELLOs and topology updates sent unicast to designated router, which keeps all routers in LAN updated.

  46. Differences between Intra- and Inter-AS Routing Policy: • Inter-AS: admin wants control over how its traffic routed, who routes through its net. • Intra-AS: single administration, so no policy decisions needed (usually; changing with traffic engineering) • Scale: • Hierarchical routing saves table size, reduced update traffic Performance: • Intra-AS: can focus on performance • Inter-AS: policy dominates over performance

  47. Inter-AS routing in the Internet: BGP

  48. BGP • BGP (Border Gateway Protocol):the de facto standard for Internet inter-AS routing. • Path Vector protocol: • Similar to Distance Vector protocol • Each Border Gateway broadcast to neighbors (peers) entire path (i.e., sequence of AS’s) to destination • BGP routes to networks (ASs), not individual hosts • e.g., Gateway X may send its path to dest. Z: Path (X,Z) = X,Y1,Y2,Y3,…,Z

  49. BGP • Gateway X send its path to peer gateway W • W may or may not select path offered by X • cost, policy (don’t route via competitors AS), loop prevention reasons. • If W selects path advertised by X, then: Path (W,Z) = w, Path (X,Z) • Note: X can control incoming traffic by controlling its route advertisements to peers: • e.g., if X does not want to forward traffic to Z then do not advertise any routes to Z

  50. Do not allow Controlling Who Routes to You legend: provider B network X W A customer network: C Y • A,B,C are provider networks • X,W,Y are customer (of provider networks to which they attach directly) • X is dual-homed: attached to two networks • X does not want to forward from B via X to C • .. so X will not advertise to B a route to C Figure 4.5 - BGPnew : a simple BGP scenario

More Related