Teemu Koponen, Mohit Chawla, Byung-Gon Chun, Andrey Ermolinskiy, Kye Hyun Kim, Scott Shenker, Ion Stoica SIGCOMM 2007 Presented by Ye Tian for Course CS05112.

Slides:



Advertisements
Similar presentations
1 Data-Oriented Network Architecture (DONA) Scott Shenker (M. Chowla, T. Koponen, K. Lakshminarayanan, A. Ramachandran, A. Tavakoli, I. Stoica)
Advertisements

CPSC Network Layer4-1 IP addresses: how to get one? Q: How does a host get IP address? r hard-coded by system admin in a file m Windows: control-panel->network->configuration-
Transitioning to IPv6 April 15,2005 Presented By: Richard Moore PBS Enterprise Technology.
CCNA – Network Fundamentals
Content Centric Networking in Tactical and Emergency MANETs Soon Y. Oh, Davide Lau, and Mario Gerla Computer Science Department University of California,
Data-Oriented (and Beyond) Network Architecture Article from 2007 SIGCOMM conference Presented by Vilen Looga, M.Sc. DCS Lab Aalto University School of.
11 TROUBLESHOOTING Chapter 12. Chapter 12: TROUBLESHOOTING2 OVERVIEW  Determine whether a network communications problem is related to TCP/IP.  Understand.
Network Layer and Transport Layer.
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
10/31/2007cs6221 Internet Indirection Infrastructure ( i3 ) Paper By Ion Stoica, Daniel Adkins, Shelley Zhuang, Scott Shenker, Sonesh Sharma Sonesh Sharma.
The Internet Useful Definitions and Concepts About the Internet.
Chapter Extension 7 How the Internet Works © 2008 Prentice Hall, Experiencing MIS, David Kroenke.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
Oct 21, 2004CS573: Network Protocols and Standards1 IP: Addressing, ARP, Routing Network Protocols and Standards Autumn
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #13 Web Caching Protocols ICP, CARP.
© 2007 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets with Internet Applications, 4e By Douglas.
Internet Networking Spring 2002 Tutorial 13 Web Caching Protocols ICP, CARP.
1 A Data-Oriented Network Architecture ACM Sigcomm’07 (M. Chowla, T. Koponen, K. Lakshminarayanan, A. Ramachandran, A. Tavakoli, Scott Shenker, I. Stoica)
Chapter 23: ARP, ICMP, DHCP IS333 Spring 2015.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 7: Planning a DNS Strategy.
TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
(part 3).  Switches, also known as switching hubs, have become an increasingly important part of our networking today, because when working with hubs,
1 Review of Important Networking Concepts Introductory material. This slide uses the example from the previous module to review important networking concepts:
1 Chapter Overview Understanding Windows Name Resolution Using WINS.
Lecture slides prepared for “Business Data Communications”, 7/e, by William Stallings and Tom Case, Chapter 8 “TCP/IP”.
1 Content Distribution Networks. 2 Replication Issues Request distribution: how to transparently distribute requests for content among replication servers.
Chapter 16 – DNS. DNS Domain Name Service This service allows client machines to resolve computer names (domain names) to IP addresses DNS works at the.
23-Support Protocols and Technologies Dr. John P. Abraham Professor UTPA.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Multicast routing.
Lecture 8 Page 1 Advanced Network Security Review of Networking Basics: Internet Architecture, Routing, and Naming Advanced Network Security Peter Reiher.
DNS (Domain Name System) Protocol On the Internet, the DNS associates various sorts of information with domain names. A domain name is a meaningful and.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking BGP, Flooding, Multicast routing.
Implementing ISA Server Publishing. Introduction What Are Web Publishing Rules? ISA Server uses Web publishing rules to make Web sites on protected networks.
Protocol Architectures. Simple Protocol Architecture Not an actual architecture, but a model for how they work Similar to “pseudocode,” used for teaching.
Jaringan Komputer Dasar OSI Transport Layer Aurelio Rahmadian.
1.1 What is the Internet What is the Internet? The Internet is a shared media (coaxial cable, copper wire, fiber optics, and radio spectrum) communication.
Networks – Network Architecture Network architecture is specification of design principles (including data formats and procedures) for creating a network.
Jozef Goetz, Application Layer PART VI Jozef Goetz, Position of application layer The application layer enables the user, whether human.
Information-Centric Networks07a-1 Week 7 / Paper 1 Internet Indirection Infrastructure –Ion Stoica, Daniel Adkins, Shelley Zhuang, Scott Shenker, Sonesh.
2: Application Layer1 Chapter 2 outline r 2.1 Principles of app layer protocols r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail r 2.5 DNS r 2.6 Socket.
Data Oriented Network Architecture (DONA) Andrey Ermolinskiy Mohit Chawla CS 262 A Project Poster December 14.
Microsoft Windows Server 2003 TCP/IP Protocols and Services Technical Reference Slide: 1 Lesson 7 Internet Protocol (IP) Routing.
Information-Centric Networks06b-1 Week 6 / Paper 2 A layered naming architecture for the Internet –Hari Balakrishnan, Karthik Lakshminarayanan, Sylvia.
Multimedia & Mobile Communications Lab.
TCP/IP (Transmission Control Protocol / Internet Protocol)
HTTP evolution - TCP/IP issues Lecture 4 CM David De Roure
Internet Protocols. ICMP ICMP – Internet Control Message Protocol Each ICMP message is encapsulated in an IP packet – Treated like any other datagram,
ITGS Network Architecture. ITGS Network architecture –The way computers are logically organized on a network, and the role each takes. Client/server network.
Web Server.
Information-Centric Networks Section # 6.2: Evolved Naming & Resolution Instructor: George Xylomenos Department: Informatics.
Introduction to Active Directory
Or Sheffet Nov. 5 th, 2010 A Delay-Tolerant Network Architecture for Challenged Internets Kevin Falls A Data-Oriented (and beyond) Network Architecture.
Internet Flow By: Terry Hernandez. Getting from the customers computer onto the internet Internet Browser
Basics of the Domain Name System (DNS) By : AMMY- DRISS Mohamed Amine KADDARI Zakaria MAHMOUDI Soufiane Oujda Med I University National College of Applied.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Chapter 7: Using Network Clients The Complete Guide To Linux System Administration.
Domain Name System The Technology Context Presentation.
Understand Names Resolution
Instructor Materials Chapter 9: Transport Layer
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
Internet Networking recitation #12
NET323 D: Network Protocols
Application layer Lecture 7.
NET323 D: Network Protocols
Data-Oriented Network Architecture (DONA)
Presentation transcript:

Teemu Koponen, Mohit Chawla, Byung-Gon Chun, Andrey Ermolinskiy, Kye Hyun Kim, Scott Shenker, Ion Stoica SIGCOMM 2007 Presented by Ye Tian for Course CS05112

Overview Introduction Basic Design Using DONA’s functionality Extending Resolution handler (RH) functionality Feasibility Broader Architectural Implications

Introduction From host-centric to data-centric applications In the beginning … first applications strictly focused on host-to-host communication: remote login, file transfer, … Internet was built around this host-to-host model Architecture is well-suited for communication between pairs of stationary hosts.

Introduction … while today Vast majority of Internet usage is data retrieval and service access Users care about the content and are oblivious to location. Consider: Fetching headlines from CNN, videos from YouTube Accessing a bank account at “ ” It doesn ’ t fit comfortably within the host-to-host model.

User-relevant issues Persistence: a data or service name remains valid as long as the data or service is available. Availability: access to data and service should be reliable and have low-latency. Authenticity: data came from the appropriate source, rather than from a adversary.

User-relevant issues What do we have today? MechanismIssue(s) PersistenceDNS, HTTP redirect Neither work if data moving across domains AvailabilityCDNs, P2P Rely on application- specific and ad hoc mechanisms AuthenticityIPsec, PKI,TLS Focus on the channel, not on content

Way to solve these issues We propose replacing DNS names with flat, self- certifying names, and replacing DNS name resolution with a name-based anycast primitive that lives about the IP layer. We call the resulting design the Data-Oriented Network Architecture (DONA )

Overview Introduction Basic Design Using DONA’s functionality Extending Resolution handler (RH) functionality Feasibility Broader Architectural Implications

Basic Design Data approach: Handled byProvided by PersistenceNames Flat names, remain invariant AuthenticityNames Self-certifying names, enable easy authentication AvailabilityName resolution Route-by-name paradigm

Naming Naming organized around principals Each principal is associated with a public-private key pair, and each datum or service or any other named entity is associated with a principal Names are of the form P:L P is the cryptographic hash of the principal ’ s public key L is a label chosen by the principal, who ensures that these names are unique

Naming Granularity of naming is left up to principals a principal might choose to just name her web site, or name her web site and each page within it, or name at a finer granularity Names are “ flat ”

Self-certifying names Principals are considered to own their data. A piece of data comes with the principal ’ s public key and the principal ’ s signature of the data. Client receives the triplet If the client receive a piece of data with the name P:L, it can verify the data did come from the principal by Checking the public key hashes into P Validating that the signature corresponds to the public key Challenge is to resolve the flat names into the appropriate location.

Name Resolution DONA uses the route-by-name paradigm for name resolution. Resolution infrastructure consists of Resolution handlers (RH). Each domain will have one logical RH. Name resolution is accomplished through the use of two basic primitives: FIND(P:L) and REGISTER(P:L) FIND(P:L) locate the object named P:L REGISTER messages set up the state necessary for the RHs to route FINDs effectively

ISP hierarchy

Establishing REGISTER state RH X is the provider/customer/peer (or, alternatively, parent/child/peer) of RH Y if X is the provider/customer/peer of Y in terms of AS-level relationships. Each client knows the location of its local RH through some local configuration Like they know about their local DNS server. Any machine authorized to serve a datum or service with name P:L sends a REGISTER(P:L) command to its local RH. REGISTER(P:*), register anything served by P

Establishing REGISTER state RH maintains a registration table that maps a name to both a next-hop RH and the distance to the copy (in some metric) Separate entry for P:*

Establishing REGISTER state Handling REGISTER If RH X receives a REGISTER from a child (i.e., customer), it does not forward it onward unless no such record exists or the new REGISTER comes from a copy closer than the previous copy. If so, RH X forwards the REGISTER to its parents and peers (after updating its registration table). If the REGISTER comes from a peer, the entry can be forwarded or not based on local policy (depending, for example, on whether the AS is willing to serve as a transit AS for content).

Establishing REGISTER state When FIND arrives, forwarding rule If there is an entry in the registration table, the FIND is sent to the next-hop RH (and if there is more than one, the choice is based on the local policy and which entry is closest); Otherwise, the RH forwards the FIND towards its parent (i.e., its provider) using its local policy to choose among them if the RH is multi-homed. Use FIND(*:L) which indicates that the client is willing to receive the (self-certified) data from any purveyor.

Establishing REGISTER state If the FIND request reaches a Tier-1 AS and doesn’t find a record associated with that principal, then the Tier-1 RH returns an error message to the source of the FIND. If the FIND does locate a record, the responding server returns a standard transport-level response. Transport protocols should bind to names, not addresses.

Forwarding FIND(P:L) The FIND packet does not just resolve the name, it also initiates the transport exchange Registration state (solid arrows) in RHs after copies have registered themselves. RHs route client-issued FIND (dashed arrow) to a nearby copy.

Challenges ConcernApproach SecurityPrivate key will get compromised Key revocation mechanism needed UsabilityFlat names are hard to remember External mechanisms needed ScalabilityHuge flat namespace More shortly … (local address)

Overview Introduction Basic Design Using DONA’s functionality Extending Resolution handler (RH) functionality Feasibility Broader Architectural Implications

Using DONA ’ s functionality Using name-based anycast Server Selection Each server (or datacenter) authorized by a principal P to host a service or datum named P:L simply registers P:L at their local RH. DONA routes any FIND(P:L) to the closest such server P2P applications could also employ this primitive, and would probably use immutable names where the principal would identify the particular P2P infrastructure (peers have different degrees of reliability and coverage).

Using DONA ’ s functionality Mobility and Multihoming A roaming host can first unregister from one location and then re- register at its new location. Subsequent FINDs will be routed to the new location as soon as the new registrations have installed the necessary state. A multihomed host registers with each local RH and a multihomed domain forwards its REGISTERs to each provider. This allows FINDs, and thus the resulting data connections, to make use of multiple paths.

Using DONA ’ s functionality Session Initiation SIP INVITE messages translate to FINDs and the SIP and DONA REGISTER messages play the same role. Thus, SIP’s rendezvous functionality can be provided by DONA and SIP’s negotiation functionality could be implemented directly on top of DONA’s REGISTER and FIND.

Using DONA ’ s functionality Multicast State Establishment DONA ’ s anycast primitive provides the tree discovery function, allowing a domain ’ s border router that has local members in a multicast group G to discover and establish connectivity with other domains that have members in the group. To transmit a multicast packet destined for a particular group P:G, the sender ’ s border router R similarly issues a FIND packet to locate a nearby domain that belongs to the group and forwards the packet to that domain ’ s border router, which in turn initiates the packet ’ s dissemination.

Overview Introduction Basic Design Using DONA’s functionality Extending Resolution handler (RH) functionality Feasibility Broader Architectural Implications

Extending RH functionality DONA ’ s name-based anycast primitive provides support for a range of discovery-like tasks. Even restricted to this capability, we believe DONA would be a better naming foundation for the Internet than the current DNS system.

Improving content delivery DONA can provide better support for content delivery in three ways Caching An RH should first populate its cache, by changing the source IP address of an incoming FIND packet to be its own before forwarding the FIND to the next-hop RH. This ensures that the response to the FIND will traverse this RH, so the RH will receive the returning data and can install it in its cache. When a FIND arrives and there is a cache hit, the RH responds to the FIND ’ s source IP address, returning appropriate transport response which then will proceed into a standard application-level exchange. If the RH does not understand the transport or application-level protocol for a particular FIND, it does not provide caching for that request.

Improving content delivery Three cases of processing a FIND packet when caching is supported: serve from the cache, skip (merely forward the FIND), and cache. RH 2 is a middlebox for all traffic.

Improving content delivery Subscriptions Often clients would like to subscribe for updates, as in RSS. This can be easily accomplished by adding TTLs to FINDS. When the server responds to such a TTL ’ ed FIND, it notes whether and how long it will provide updates to the FIND. When a server updates a piece of content that has a pending TTL ’ ed FIND, it sends the update to the source of the FIND.

Improving content delivery Avoiding Misbehaving and Overloaded Servers In general, RHs will route FINDs to nearby copies of the data. However, some of these servers may be misbehaving in a way that is not visible to the RHs but which deprives a client of a valid copy of data. To make sure that clients can still access the data, we allow the client to ask that its FIND be routed to a different server.

Improving content delivery Several ways: Amend the REGISTER commands to keep track of the number of servers below a particular RH Amend the FIND command to allow the client to request access to the k ’ th closest server, rather than the closest one. We can also augment DONA to allow overloaded servers to indicate they are overloaded, so the RHs can then direct excess load to other less-loaded, servers.

Delay-Tolerant Networking The key concept in designing a delay-tolerant network (DTN) architecture is message-level custody transfer Rather than the communication being end-to-end, there are intermediate elements that take custody of the message and then are responsible for making sure it is forwarded onward. The RHs can act as these custody agents.

Feasibility Where is the Challenge? RH need only keep routing state for data that lie below or equal to it in the AS hierarchy Toughest requirement will be on the Tier-1 providers, whose RHs must keep everything in their registration tables — below is easy

Computational requirement Registration processing requirement for a single Tier- 1 ISP: names (2005), 42 bytes per entry (40 for the name and 2 for a next-hop RH) = Routing table 4TB Average registration lifetime 2 weeks = registration/s a Tier-1RH must handle (initial estimate) Each of these registrations involves expensive cryptographic operations: using 40 CPUs running at 3 GHz could handle

Required hardware Forwarding requirements A fully-loaded Gbps link will generate about FINDs/s (by statistic of the experiment in 2005) Store routing table: (FINDs can be processed either from RAM or from disk) In RAM: 500 PCs with 8GBs of RAM, or On Disk: 50 disks per every 1 Gbit/s worth of traffic What ’ s the mix and (physical) distribution of RAM and disk depends on aggregate load and other factors (cache hit rate)

Required hardware Reasonable requirements: Consider Sun Blackbox (250 multi- core processors, 7TB RAM)

Review How the host-centric networking causes the persistence, availability, and authentication issues. How DONA names the network entity? How a data is authenticated in DONA? How name is resolved in DONA?