COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.

Slides:



Advertisements
Similar presentations
Categories of I/O Devices
Advertisements

CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11: :30 AM.
Remote Procedure Call (RPC)
Clayton Sullivan PEER-TO-PEER NETWORKS. INTRODUCTION What is a Peer-To-Peer Network A Peer Application Overlay Network Network Architecture and System.
2.1 Installing the DNS Server Role Overview of the Domain Name System Role Overview of the DNS Namespace DNS Improvements for Windows Server 2008 Considerations.
Tam Vu Remote Procedure Call CISC 879 – Spring 03 Tam Vu March 06, 03.
Domain Name System. DNS is a client/server protocol which provides Name to IP Address Resolution.
Naming Computer Engineering Department Distributed Systems Course Asst. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2014.
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Chapter 29 Structure of Computer Names Domain Names Within an Organization The DNS Client-Server Model The DNS Server Hierarchy Resolving a Name Optimization.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
Computer Science Lecture 9, page 1 CS677: Distributed OS Today: Naming Names are used to share resources, uniquely identify entities and refer to locations.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #13 Web Caching Protocols ICP, CARP.
CSCI 4550/8556 Computer Networks Comer, Chapter 19: Binding Protocol Addresses (ARP)
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?
Hands-On Microsoft Windows Server 2003 Networking Chapter 6 Domain Name System.
Domain Name System: DNS
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 7: Planning a DNS Strategy.
1 DNS,NFS & RPC Rizwan Rehman, CCS, DU. Netprog: DNS and name lookups 2 Hostnames IP Addresses are great for computers –IP address includes information.
DOMAIN NAME SYSTEM. Introduction  There are several applications that follow client server paradigm.  The client/server programs can be divided into.
DNS. Outline r Domain Name System r DNS Hierarchy r Resolution.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Application Layer Functionality and Protocols Network Fundamentals – Chapter.
11.1 © 2004 Pearson Education, Inc. Exam Managing and Maintaining a Microsoft® Windows® Server 2003 Environment Lesson 11: Introducing WINS, DNS,
ES 101. Module 3 Domain Name System (DNS). Last Lecture Routing and IP addressing.
NET0183 Networks and Communications Lecture 25 DNS Domain Name System 8/25/20091 NET0183 Networks and Communications by Dr Andy Brooks.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.
Mapping Internet Addresses to Physical Addresses (ARP)
COP 5611 Operating Systems Spring 2010 Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 2:00-3:00 PM.
Ch-9: NAME SERVICES By Srinivasa R. Gudipati. To be discussed.. Fundamentals of Naming Services Naming Resolution The Domain Name System (DNS) Directory.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.
CEN Network Fundamentals Chapter 19 Binding Protocol Addresses (ARP) To insert your company logo on this slide From the Insert Menu Select “Picture”
Computer Networks. IP Addresses Before we communicate with a computer on the network we have to be able to identify it. Every computer on a network must.
DNS: Domain Name System
Chapter 17 Domain Name System
COMT 6251 Network Layers COMT Overview IP and general Internet Operations Address Mapping ATM LANs Other network protocols.
Chapter 29 Domain Name System (DNS) Allows users to reference computer names via symbolic names translates symbolic host names into associated IP addresses.
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
October 8, 2015 University of Tulsa - Center for Information Security Microsoft Windows 2000 DNS October 8, 2015.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Chapter 2 ARCHITECTURES.
CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11: :30 AM.
Naming March 8, Networks What is naming?  Associations between some elements in a set of names and some elements in a set of values  Binding.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
COP 5611 Operating Systems Spring 2010 Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 2:00-3:00 PM.
EE 122: Lecture 20 (Domain Name Server - DNS) Ion Stoica Nov 15, 2001 (* based on the some on-line slides of J. Kurose & K. Rose and of Raj Jain)
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.
The Client-Server Model And the Socket API. Client-Server (1) The datagram service does not require cooperation between the peer applications but such.
GLOBAL EDGE SOFTWERE LTD1 R EMOTE F ILE S HARING - Ardhanareesh Aradhyamath.
BZUPAGES.COM. Presented to: Sir. Muizuddin sb Presented by: M.Sheraz Anjum Roll NO Atif Aneaq Roll NO Khurram Shehzad Roll NO Wasif.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Introduction to Active Directory
Computer Science Lecture 3, page 1 CS677: Distributed OS Last Class: Communication in Distributed Systems Structured or unstructured? Addressing? Blocking/non-blocking?
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
COP 4600 Operating Systems Fall 2010 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:30-4:30 PM.
COMP 431 Internet Services & Protocols
Domain Name System INTRODUCTION to Eng. Yasser Al-eimad
Ch 2. Application Layer Myungchul Kim
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.
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.
COP 4600 Operating Systems Fall 2010 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:30-4:30 PM.
IMPLEMENTING NAME RESOLUTION USING DNS
CHAPTER 3 Architectures for Distributed Systems
CGS 3763 Operating Systems Concepts Spring 2013
COT 5611 Operating Systems Design Principles Spring 2012
CGS 3763 Operating Systems Concepts Spring 2013
COP 5611 Operating Systems Spring 2010
Presentation transcript:

COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM

Lecture 13 Last time:  Review; discussion of midterm type problems Today:  Peer-to-peer systems  Remote Procedure Call (RPC)  Domain Name Service (DNS) Next Time:  Domain Name Service (DNS)  Network File System (NFS)

3 3 Peer-to-peer systems Decentralized architecture without a trusted intermediary. Peers are both suppliers and consumers of resources, in contrast to the traditional client-server model where servers supply, and clients consume. Peer-to-peer systems often implement an Application Layer overlay network on top of the native or physical network topology. Such overlays are used for indexing and peer discovery. Content is typically exchanged directly over the underlying IP network. Anonymous peer-to-peer systems implement extra routing layers to obscure the identity of the source or destination of queries. In structured peer-to-peer networks, connections in the overlay are fixed. They typically use distributed hash table-based (DHT) indexing, such as in the Chord system developed at MIT Unstructured peer-to-peer networks do not provide any algorithm for organization or optimization of network connections. Advantages   use of spare resources at many sites  difficult to censor content Disadvantage  Finding information in a large peer-to-peer network is hard.

4 4 Remote procedure call (RPC) Support inter-process communication of remotely located processes and allows implementation of client-server systems (RFC 1831) Preserve the semantics of a local procedure call. To use an RPC a process may use a special service: PORTMAP or RPCBIND available at port 111. A new RPC service uses the portmapper to register. The portmapper also allows a service lookup. If the process knows the port number of the RPC it may call directly. RPC/TCP and also RPC/UDP Messages  must be well-structured; contain the identification of the specific RPC  are addressed to an RPC demon listening at an RPC port. A machine independent representation of data  external data representation standard (XDR).

5 5 Stub Unburdens a user from implementation details of the RPC; it hides:  the marshalling of the arguments  the communication details The client calls the client stub which: 1. marshals the arguments of the call into messages 2. sends the message 3. waits for the responds 4. when the response arrives it un-marshals the results 5. returns to the client

6 6

7 7 RPCs differ from ordinary procedure calls RPCs  reduce the so called fate sharing between caller and callee  have a different semantics (see next slide)  take longer  global variables and RPC do not mix well

8 8 RPC semantics At least once  the client stub resends a message up to a given number of times until it receives a message from the server; is no guarantee of a response  the server may end up executing the a request more than once  suitable for side-effect free operations At most once  a message is acted upon at most once.  If the timeout set for receiving the response expires then an error code is delivered to the client.  The server must keep a history of the time-stamps of all messages. Messages may arrive out of order…..  suitable for operations which have side effects Exactly once  implement the at most once and request an acknowledgment from the server.

9 9 Intermediaries What if the sender and the receiver of a message are not active at the same time? Intermediaries support buffered communication and allow more flexibility  the intermediary may decide how to sort messages The sender and the receiver may:  Push a message  Pull a message Example: the mail service:  The sender pushes a message into his/her outbox  The outbox pushes it to the inbox of the recipient  The recipient pulls it whenever s(he) wants The publish/subscribe paradigm  the sender notifies an event service when it produced a message. Recipients subscribe to the events and when the events occur the messages are delivered

10 Strategies for name resolution 1. Distribute to all parties a copy of the directory mapping names to physical /logical addresses. The strategy does not scale well: 1. when the population is very large, e.g., the directory size is very large and the network traffic to distribute it would be horrendous 2. the number of updates is proportional to the population and would add to the traffic 2. Central directory  easy to update but it does not scale well, “hot spot” contention. 3. Distributed directory  more sophisticated to implement but used successfully for DNS Lecture 13 10

11 IP addresses IP address serves two functions: host identification and location addressing. All communication in the Internet must use the IP protocol. The IP addresses are used by the IP protocol to route messages from source to the destination through the Internet  IPv4  uses 32-bit addresses; the address space is limited to 4,294,967,296 (2 32 ) possible unique addresses. addresses for special purposes: private networks (~18 million addresses); multicast addresses (~270 million addresses). addresses represented in dot-decimal notation e.g., ).  IPv6  uses 64-bit addresses; the address space is limited to 2 64 possible unique addresses. No ‘’flag day”

12 Domain Name System Domain Name System (DNS  general-purpose name management system  Hierarchically structured  Maps user-friendly host names to IP addresses Domain Name Service (DNS)  A database editor generates tables of bindings and these bindings and then these tables are distributed to DNS servers  Propagation takes time, hours.  Supports both relative and absolute paths DNS architecture  a hierarchical distributed database and an associated set of protocols that define:  A mechanism for querying and updating the database.  A mechanism for replicating the information in the database among servers.  A schema of the database. DNS has a referral architecture somewhat complicated due to need to optimize..

13 DNS Dictionary Domain name  an identification label that defines a realm of administrative autonomy, authority, or control in the Internet, based on the Domain Name System. The top-level domains (TLDs) are the highest level of domain names of the Internet; they form the DNS root zone. There are 20 generic top-level domains and 248 country code top-level domains Authoritative name server  gives original, first-hand, definitive answers; holds either the name record or a referral record for the name Authoritative record  first hand information about a host name Naming authority  an Internet administrative authority allowed to add authoritative records to a name server Referral record  binds a hierarchical region of the DNS name space to another server that could help resolve the name Recursive name service  a DNS server takes upon itself to resolve a name rather than provide a referral record. Idempotent action  action that can be interrupted and restarted from the beginning any number of times and still produce the same result as if the action had run to completion without interruption

14 How DNS works A client sends a request to resolve a name to a Domain Name server The server examines the collection of the domains it is responsible for  If it finds the name record it returns the record  Else it searches a set of referral records  Starts with the most significant component of the requested domain name for the one that matches the most components and If found it returns the name record Else returns “not found” Example on the next slide (left diagram): the system ginger.cs.pedantic.edu tries to resolve the name ginger.Scholarly.edu Important  each host must have the address of a domain name server when it is connected to the Internet. This address could be :  provided by the ISP (Internet Service Provider)  hardwired into the browser  generated when the system was installed  selected by the user Lecture 13 14

15

16 The virtues of DNS Distributed responsibility  any DNS name server may act as a naming authority and  add authoritative records (see example on the previous slide, the right diagram)  create lower-level naming domains; e.g., UCF can create EECS, EECS can create ComputingFrontiers, etc. Robustness   High level of replication of the name servers There are some 80 replicas of the root name server Each organization with a name server has 2-4 replicas  Stateless name servers  does not maintain any state, its public interface is idempotent  A DNS server is a dedicated computer running a relatively simple code, thus less likely to fail

17 More virtues and some failings of DNS Flexibility   The same name may be bound to several IP addresses. Needed to ensure replication of services improve performance  see for example the content delivery services provided by akamai  Allows synonyms a computer may appear to be in two different domains Indirect names Lack of authentication  DNS does not use protocols to authenticate the response to a DNS request. One can impersonate a DNS server and provide a fake response. Does not guarantee accuracy  a DNS cache may hold obsolite information