Reliable Distributed Systems Naming (Communication Basics Part II) Slide set based on one by Prof. Paul Francis, Cornell University. Updated by Bina Ramamurthy.

Slides:



Advertisements
Similar presentations
Internet Eugen Kvasnak, PhD. Department of Medical Biophysics and Informatics 3rd Medical Faculty of Charles University.
Advertisements

INTERNET PROTOCOLS Class 9 CSCI 6433 David C. Roberts Entire contents copyright 2011, David C. Roberts, all rights reserved.
Network Attack via DNS Fagpakke: IT Sikkerhed Modul: Introduktion til IT Sikkerhed Jesper Buus Nielsen.
CSE331: Introduction to Networks and Security Lecture 8 Fall 2002.
Mobility Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Naming (2) DISTRIBUTED.
Naming Computer Engineering Department Distributed Systems Course Asst. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2014.
The implementation of a name space
Outline  Introduction to Application Layer  Peer-to-peer paradigm  Client-server paradigm  Domain Name System (DNS)  Flat-naming vs hierarchical-naming.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Name Services Jessie Crane CPSC 550. History ARPAnet – experimental computer network (late 1960s) hosts.txt – a file that contained all the information.
Lesson 18-Internet Architecture. Overview Internet services. Develop a communications architecture. Design a demilitarized zone. Understand network address.
Reliable Distributed Systems Naming (Communication Basics Part II) Slide set based on one by Prof. Paul Francis, Cornell University.
Chapter Extension 7 How the Internet Works © 2008 Prentice Hall, Experiencing MIS, David Kroenke.
Computer Science Lecture 9, page 1 CS677: Distributed OS Today: Naming Names are used to share resources, uniquely identify entities and refer to locations.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 1: Introduction to Windows Server 2003.
Application Layer At long last we can ask the question - how does the user interface with the network?
Distributed Systems CS Naming – Part II Lecture 6, Sep 26, 2011 Majd F. Sakr, Vinay Kolar, Mohammad Hammoud.
Anycast Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
COS 461: Computer Networks
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 19 Domain Name System (DNS)
NamingCS-4513, D-Term Naming CS-4513 Distributed Computing Systems (Slides include materials from Operating System Concepts, 7 th ed., by Silbershatz,
CPSC 441: DNS1 Instructor: Anirban Mahanti Office: ICT Class Location: ICT 121 Lectures: MWF 12:00 – 12:50 Notes derived.
DOMAIN NAME SYSTEM. Introduction  There are several applications that follow client server paradigm.  The client/server programs can be divided into.
Domain Name System ( DNS )  DNS is the system that provides name to address mapping for the internet.
DNS. Outline r Domain Name System r DNS Hierarchy r Resolution.
CSE 461 Section (Week 0x02). Port numbers for applications MAC addresses for hardware IP addresses for a way to send data in a smart, routable way.
Naming And Directory Services Geetika Sharma 09/22/200 8 CSC8320.
DNS and CDNs (Content Distribution Networks) Paul Francis Cornell Computer Science.
Distributed Computing COEN 317 DC2: Naming, part 1.
ICS362 Distributed Systems Dr Ken Cosh Week 5. Review Communication – Fundamentals – Remote Procedure Calls (RPC) – Message Oriented Communication – Stream.
Ch-9: NAME SERVICES By Srinivasa R. Gudipati. To be discussed.. Fundamentals of Naming Services Naming Resolution The Domain Name System (DNS) Directory.
Computer Science Lecture 9, page 1 CS677: Distributed OS Today: Naming Names are used to share resources, uniquely identify entities and refer to locations.
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.
Arthur Harris Gennadiy Kofman James Mendoza Domain Name System.
DNS: Domain Name System
1 DNS: Domain Name System People: many identifiers: m SSN, name, Passport # Internet hosts, routers: m IP address (32 bit) - used for addressing datagrams.
1 Application Layer Lecture 6 Imran Ahmed University of Management & Technology.
1 Computer Communication & Networks Lecture 26 Application Layer: Domain Name System Waleed Ejaz.
Chapter 1: Introduction to Web Applications. This chapter gives an overview of the Internet, and where the World Wide Web fits in. It then outlines the.
Paper Presentation – CAP Page 2 Outline Review - DNS Proposed Solution Simulation Results / Evaluation Discussion.
5.1 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
Chapter 29 Domain Name System (DNS) Allows users to reference computer names via symbolic names translates symbolic host names into associated IP addresses.
Domain Name System CH 25 Aseel Alturki
October 8, 2015 University of Tulsa - Center for Information Security Microsoft Windows 2000 DNS October 8, 2015.
Distributed Computing COEN 317 DC2: Naming, part 1.
The Inter-network is a big network of networks.. The five-layer networking model for the internet.
1 Windows 2008 Configuring Server Roles and Services.
Configuring Name Resolution and Additional Services Lesson 12.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Internet Architecture and Governance
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
TCP/IP (Transmission Control Protocol / Internet Protocol)
DNS DNS overview DNS operation DNS zones. DNS Overview Name to IP address lookup service based on Domain Names Some DNS servers hold name and address.
1 Internet Protocols To support the Internet and all its services, many protocols are necessary Some of the protocols that we will look at: –Internet Protocol.
DNS Security 1. Fundamental Problems of Network Security Internet was designed without security in mind –Initial design focused more on how to make it.
Introduction to Active Directory
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
COMP 431 Internet Services & Protocols
Naming CSCI 6900/4900. Names & Naming System Names have unique importance –Resource sharing –Identifying entities –Location reference Name can be resolved.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
CSE 461 Section. Port numbers for applications MAC addresses for hardware IP addresses for a way to send data in a smart, routable way.
Domain Name System The Technology Context Presentation.
MAN-IN-THE-MIDDLE ATTACK STEGANOGRAPHY Lab# MAC Addresses and ARP  32-bit IP address:  network-layer address  used to get datagram to destination.
Domain Name System: DNS To identify an entity, TCP/IP protocols use the IP address, which uniquely identifies the Connection of a host to the Internet.
Domain Name System (DNS)
Net 323 D: Networks Protocols
Chapter 5 Network and Transport Layers
Application layer Lecture 7.
Web Design & Development
Presentation transcript:

Reliable Distributed Systems Naming (Communication Basics Part II) Slide set based on one by Prof. Paul Francis, Cornell University. Updated by Bina Ramamurthy

“Any problem in computer science can be solved with another layer of indirection” David Wheeler

Naming is a layer of indirection What problems does it solve? Makes objects human readable Hides complexity and dynamics Multiple lower-layer objects can have one name Changes in lower-layer objects hidden Allows an object to be found in different ways One object can have multiple names

Names map to objects through a resolution service Distributed Name Resolution Service

Identifiers and Locators A name is always an identifier to a greater or lesser extent Can be persistent or non-persistent Can be globally unique, locally unique, or even non-unique If a name has structure that helps the resolution service, then the name is also a locator

Naming in networks

DNS names map into addresses Domain Name ( Domain Name System (DNS) Many-to-many Hierarchical User-friendly Location independent But not org independent

Addresses map into routes IP address ( ) Routing algorithm (BGP, OSPF, RIP) One-to-many Hierarchical Location Dependent Non-unique Can change often Refers to an interface, not a host

Routes get packets to interfaces A path Source dependent Can change often

DNS names and IP addresses are identifiers and locators Both are typically non-persistent Private IP addresses identify only in the context of an IP realm Domain names are good identifiers woodstock.cs.cornell.edu identifies a host identifies a service URLs are good identifiers

Domain Name System (DNS) Distributed directory service Hierarchical name space Each level separated by ‘.’ Analogous to ‘/’ separator in file systems One global root Replicated across <20 root servers! There have been Denial of Service (DoS) attacks on these root servers, none real successful Because of caching, queries to root servers relatively rare DNS maybe only global directory service???

DNS is the core of the Internet Global name space Can be the core of a naming or identifying scheme Global directory service Can resolve a name to nearly every computer on the planet

DNS tree structure. edu. cornell.edu. cs.cornell.edu. com.jp.us. cmu.edu.mit.edu. eng.cornell.edu. foo.cs.cornell.eduA bar.cs.cornell.eduA NS RR “pointers”

LDAP is another popular distributed directory service Richer and more general than DNS Has generalized attribute/value scheme Can search on attribute, not just name Simpler and more efficient than a full relational database Not a global directory service, though namespace is global Its predecessor, X.500, was meant to be But “local” LDAP services can point to each other Commonly used for personnel RR databases, subscriber databases

URL Consists of: :

URL Consists of: : A protocol Information the protocol needs

URL examples HTTP (web) Newsgroups news:cornell/class/cs514 SIP (Session Initiation Protocol)

Note the central role of DNS HTTP (web) Newsgroups news:cornell/class/cs514 SIP (Session Initiation Protocol)

Locating mobile entities (section 4.2, AT/MvS) What is a mobile entity? From naming perspective, it is an entity whose address changes often This doesn’t require physical mobility! Every time you dial up, you may get a new address So, “mobility” existed well before laptops became common Though laptops create more mobility

Is mobility a problem for DNS? Not really Even though DNS was designed with relatively stable IP addresses in mind Because mobility only effects leaf DNS servers Recall: A RR TTL is short, but NS RR TTL is long Note: non-mobile web server’s A RRs often have very short TTLs To allow quick failover to another web server

Is mobility a problem at all? Less than you’d think Most mobile systems are clients; servers are rarely mobile Clients are initiators of connections, not recipients Therefore, there is not a client locating problem What about , instant messaging, and VoIP (Voice over IP)? Clients receive s, instant messages, and phone calls

Identifiers must be made hard to spoof That is why driver’s licenses have pictures and credit cards have signatures In networking, two ways: 1. Identifier is also a locator Reverse routability 2. Some kind of secret-protected signature

Summary of Lecture Introduction to Naming Naming basics: Names, Addresses, Routes Identifiers and Locators DNS is the global directory service LDAP is a popular local directory service URLs build on DNS Identifiers must be hard to spoof Reverse routability, cryptographic signatures