Distributed Operating Systems

Similar documents
Motivation. Domain Name System (DNS) Flat Namespace. Hierarchical Namespace

The Domain Name System (DNS)

Domain Name System. CS 571 Fall , Kenneth L. Calvert University of Kentucky, USA All rights reserved

DNS : Domain Name System

Lecture 2 CS An example of a middleware service: DNS Domain Name System

Application Protocols in the TCP/IP Reference Model

Application Protocols in the TCP/IP Reference Model. Application Protocols in the TCP/IP Reference Model. DNS - Concept. DNS - Domain Name System

Naming. Name Service. Why Name Services? Mappings. and related concepts

Networking Domain Name System

Use Domain Name System and IP Version 6

Copyright

DNS Domain Name System

Chapter 9: Name Services. 9.1 Introduction 9.2 Name services and the DNS 9.3 Directory services 9.6 Summary

Application Protocols in the TCP/IP Reference Model. Application Protocols in the TCP/IP Reference Model. DNS - Domain Name System

Introduction to Network Operating Systems

Hostnames. HOSTS.TXT was a bottleneck. Once there was HOSTS.TXT. CSCE515 Computer Network Programming. Hierarchical Organization of DNS

Outline. Definition. Name spaces Name resolution Example: The Domain Name System Example: X.500, LDAP. Names, Identifiers and Addresses

Networking Domain Name System

Domain Name System. 188lecture12.ppt. Pirkko Kuusela, Markus Peuhkuri, Jouni Karvo

Lesson 13: DNS Security. Javier Osuna GMV Head of Security and Process Consulting Division

Chapter 24 The Domain Name System (DNS)

Copyright International Business Machines Corporation All rights reserved. US Government Users Restricted Rights Use, duplication or disclosure

19 Domain Name System (DNS)

CS3600 SYSTEMS AND NETWORKS

The Domain Name System

Understanding DNS (the Domain Name System)

KB Windows 2000 DNS Event Messages 1 Through 1614

THE DOMAIN NAME SYSTEM DNS

DNS. The Root Name Servers. DNS Hierarchy. Computer System Security and Management SMD139. Root name server. .se name server. .

ECE 4321 Computer Networks. Network Programming

Distributed Systems. 09. Naming. Paul Krzyzanowski. Rutgers University. Fall 2015

INTERNET DOMAIN NAME SYSTEM

DOMAIN NAME SYSTEM. Shipra Dey Computer Science & Engineering iamshipradey@gmail.com

Distributed Systems. 22. Naming Paul Krzyzanowski. Rutgers University. Fall 2013

Forouzan: Chapter 17. Domain Name System (DNS)

Introduction to DNS CHAPTER 5. In This Chapter

CS 348: Computer Networks. - DNS; 22 nd Oct Instructor: Sridhar Iyer IIT Bombay

Internet-Praktikum I Lab 3: DNS

DNS and BIND Primer. Pete Nesbitt linux1.ca. April 2012

DNS. Computer Networks. Seminar 12

The Domain Name System

Domain Name Server. Training Division National Informatics Centre New Delhi

- Domain Name System -

Domain Name System (DNS) Fundamentals

Names & Addresses. Names & Addresses. Names vs. Addresses. Identity. Names vs. Addresses. CS 194: Distributed Systems: Naming

CS3250 Distributed Systems

LOAD BALANCING DISTRIBUTED OPERATING SYSTEMS, SCALABILITY, SS Hermann Härtig

Agenda. Network Services. Domain Names. Domain Name. Domain Names Domain Name System Internationalized Domain Names. Domain Names & DNS

Glossary of Technical Terms Related to IPv6

Module 2. Configuring and Troubleshooting DNS. Contents:

Networking Domain Name System

DNS & IPv6. Agenda 4/14/2009. MENOG4, 8-9 April Raed Al-Fayez SaudiNIC CITC rfayez@citc.gov.sa, DNS & IPv6.

An Introduction to the Domain Name System

Automated domain name registration: DNS background information

Internet Security [1] VU Engin Kirda

Domain Name System. DNS is an example of a large scale client-server application. Copyright 2014 Jim Martin

Domain Name Service (DNS) Training Division, NIC New Delhi

IPv6 Support in the DNS. Workshop Name Workshop Location, Date

Installing and Setting up Microsoft DNS Server

IPv6 support in the DNS

How to Configure DNS Zones

THE MASTER LIST OF DNS TERMINOLOGY. v 2.0

Internetworking with TCP/IP Unit 10. Domain Name System

DNS Domain Name System

F5 and Infoblox DNS Integrated Architecture Offering a Complete Scalable, Secure DNS Solution

Chapter 23 The Domain Name System (DNS)

1 Introduction: Network Applications

Understand Names Resolution

Development of the Domain Name System. Joey Brown David Margolies

CS640: Computer Networks. Naming /ETC/HOSTS

netkit lab dns Università degli Studi Roma Tre Dipartimento di Informatica e Automazione Computer Networks Research Group Version Author(s)

FAQ (Frequently Asked Questions)

The Domain Name System (DNS) Jason Hermance Nerces Kazandjian Long-Quan Nguyen

DNS and BIND. David White

Applications and Services. DNS (Domain Name System)

Domain Name System (DNS) Session-1: Fundamentals. Ayitey Bulley

HTG XROADS NETWORKS. Network Appliance How To Guide: EdgeDNS. How To Guide

DNS and Interface User Guide

HTG XROADS NETWORKS. Network Appliance How To Guide: DNS Delegation. How To Guide

DNS. Computer networks - Administration 1DV202. fredag 30 mars 12

DNS at NLnet Labs. Matthijs Mekking

The Domain Name System (DNS)

THE MASTER LIST OF DNS TERMINOLOGY. First Edition

Goal of this session

4.1 NAMING ENTITIES 184 NAMING CHAP Names, Identifiers, and Addresses

How to Configure the Windows DNS Server

Domain Name System. Heng Sovannarith

Georgia College & State University

The Use of DNS Resource Records

Introduction to the Domain Name System

The Application Layer. CS158a Chris Pollett May 9, 2007.

Overview. Principles Creating reverse zones Setting up nameservers Reverse delegation procedures IPv6 Reverse DNS

Naming vs. Locating Entities

The Domain Name System: An Integral Part of the Internet. By Keiko Ishioka

ICS 351: Today's plan. DNS WiFi

DNS ActiveX Control for Microsoft Windows. Copyright Magneto Software All rights reserved

Chapter 7 Implementing Domain Name System (DNS)

How To Guide Edge Network Appliance How To Guide:

Domain Name System :49:44 UTC Citrix Systems, Inc. All rights reserved. Terms of Use Trademarks Privacy Statement

Computer Networks Prof. S. Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 34 DNS & Directory

Transcription:

Distributed Operating Systems Name no more precise Interesting Topics in Operating Systems Scalability Systems Security Modeling In some cases no easy written material. SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 1

Distributed OS Hermann Härtig Scalability in Computer Systems DNS/BIND as a first case study 22/04/10

Outline and Goal of Lectures on Scalability Outline: Scalability: terminology, problems Basic approaches Case studies Goal: understand some of the important principles how to build scalable systems SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 3

Outline and Goal of today's Lecture Outline: Scalability... Names in Distributed Systems: purposes of naming, terminology Application of scalability approaches on name resolution Goal: understand some of the important principles how to build scalable systems...using DNS as an example SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 4

More Case Studies Memory Consistency Locks File Systems Load Balancing (Mosix) and HPC RCU SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 5

General Definition: Scalability Scalability: the ease with which a system or component can be modified to fit the problem area http://www.sei.cmu.edu/str/indexes/glossary/ Dimensions of Scalability: ( CPUs Size (more ( Memory ) Other Resources (. etc Software (Versions, better libs, Heterogeneity (different hardware / SW = portability) SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 6

More specific: Scalability in Computer Systems A system is described as scalable if it remains effective when there is a significant increase in the number of resources and the number of users. (Coulouris, Dollimore, Kindberg: Distributed Systems) Scalability [in telecommunication and software engineering] indicates the capability of a system to increase performance under an increased load when resources (typically hardware) are added (Wikipedia) SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 7

Scaling down A system is scalable if it works well for very large and very small numbers Definition(Wang, Xu 98): A computer system (HW + SW) is called scalable if it can scale up (improve its resources) to accommodate ever increasing performance and functionality demand and / or scale down (decrease resources) to reduce cost. SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 8

A SW engineering aspect of scalability Not subject of the course Prepare for change in functionality software engineering choose sufficiently large logical resources provide hooks for extension SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 9

Problems for Scalability in Distrib./Par. Systems Performance bottlenecks / Amdahl's Law Failures/Abuse Administration SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 10

Amdahl's Law f: fraction of computation that can be enhanced Speedup: original execution time / enhanced execution time S: speedup factor for f Speedup (f,s) = 1 / (1-f + f/s ) SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 11

Consequences: Amdahl's Law Attack the common case If S becomes VERY large, speedup approaches 1 / (1-f) Interpretation for parallel systems: P: section that can be parallelized 1-P: serial section N: number of CPUs Speedup (P,N) = 1 / (1-P + P/N ) SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 12

Principles to achieve Scalability ( RPC ) Identify and address bottlenecks Partitioning split systems into parts that can operate independently to a large extent Replication provide several copies of components that are kept consistent eventually that can be used in case of failure of copies Locality (Caching) maintain a copy of information that is nearer, cheaper/faster to access than the original SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 13

Principles to achieve Scalability ( RPC ) Specialize functionality/interfaces Right level of Consistency caches, replicates, need not always be fully consistent Lazy Information dissemination Balance load SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 14

Some Challenges Balance load keep load under reasonable threshold at each component in the communication subsystems load balancing can be static or dynamic. Will study a detailed example for dynamic load balancing later(mosix). Minimize the delay induced by RPC. Prepare for change. Information Dissemination. Choose right degree of consistency. SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 15

Case study: DNS Some numbers of growth... SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 16

Names, Identifiers, Addresses Names symbolic have a meaning for people Identifiers identifies a component (uniquely) are used by programs Addresses locates a component can change SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 17

Name resolution Name Resolution: map symbolic names to objects better: to a set of attributes such as: identifiers, addresses, other names, security properties Interfaces: Register (Name, attributes,...) Lookup (Name) -> attributes SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 18

Related Compilers statically map names to addresses Dynamic libraries dynamically remap addresses Port Mapper map service to port Name resolution is a form of dynamic mapping of pathnames to attributes. SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 19

Observation Many services, tools,... provide their own name resolution file systems (UNIX: path names to I-Nodes) login RPC systems (portmapper) SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 20

Purpose of Directory Services integration of name services generic name service world-wide use of names Today mostly used: email/web computer attributes (IP addresses) people attributes (certificates,...) SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 21

A Bit of History UUCP/MMDF (cum grano salis): ira!gmdzi!oldenburg!heinrich!user (path to destination) user@ira!heinrich%gmdzi (mixing identifiers and path information) ARPA-Net: a single file: hosts.txt maintained at Network Information Center of SRI (Stanford) accessed via ftp TCP/IP in BSD Unix => chaos name collisions, consistency, load DNS: Paul Mockapetries (84)... SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 22

More Terminology Name Space set of names recognized by a name service Context unit for which a name can be mapped directly Aliases several names for one object SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 23

More Terminology Naming Domain Subtree in the hierarchy of DNS contexts Zone (aka Zone of authority) Subset of a domain over which an authority has complete control. Subzones (starting at apices of a zone) can be delegated to other authorities. Navigation querying in a set of cooperating name spaces SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 24

Basic Implementation Variants recursive iterative NS2 NS2 NS1 NS3 NS1 NS3 SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 25

Requirements / Properties arbitrarily large numbers arbitrary units of administration long living names, the higher in the hierarchy the longer high robustness restructuring of name spaces consistency efficiency SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 26

DNS Name Space "" com edu... mil us de... au ibm sax tu-dresden gmd ibch61 inf os irz301 borneo zeus hera SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 27

Examples inf.tu-dresden.de Domain os.inf.tu-dresden.de Computer heidelberg.ibm.com Domain ftp ftp.inf.tu-dresden.de DNS: IP address: 141.76.2.3 ftp daemon: IP address, port 21 Properties: location independent not very deep SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 28

Implementation Structure (BIND) Resolver (runtime library) name server NS2 root name server NS3 SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 29

Partitions: Zones Zones: administrative unit Name Server: wrong: resolves all names within a zone recursively maps to names and addresses of name servers responsible for sub zones maintains management data process doing the name resolution for one zone Resource records (RR): key interface SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 30

Partitions: Zones ca zone ca bc ab sk on qb ca domain SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 31

Replication Currently 13 root name servers each zone has at least one primary one secondary name server SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 32

Caching each name server caches resource records time to live attribute authoritative versus non-authoritative answers SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 33

Resource Records Record type Interpretation Content A address IPv4 address AAAA address IPv6 address NS Name server DNS name CNAME Symbolic link DNS name of canonicial name SOA Start of authority Zone-specific properties PTR IP reverse pointer DNS name HINFO Host info Text description of host OS......... SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 34

Reverse Resolution Example IP-Address: 141.76.48.97 DNS-Name: 97.48.76.141.in-addr.arpa 0 255 Xaver.os.inf.tu-dresden.de SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 35

Summary: Scalability and DNS Good points: replication and caching work well over time, DNS scaled from small numbers to millions Bad Points: IP addresses too small no integrated systems security SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 36

Literature Paul Albitz & Cricket Liu DNS and BIND O Reilly & Associates, Inc. Mark Hill, Michael Marty Amdahl's Law in the Multicore Era IEEE SS 2010 Distributed OS / Scalability in Computer Systems - Hermann Härtig 37