Presentation is loading. Please wait.

Presentation is loading. Please wait.

(1 of 50) Domain Name System (DNS). (2 of 50) Outline: Domain Name System (DNS) Providing Readable Names Flat Namespace Hierarchical Names Subset Authority.

Similar presentations


Presentation on theme: "(1 of 50) Domain Name System (DNS). (2 of 50) Outline: Domain Name System (DNS) Providing Readable Names Flat Namespace Hierarchical Names Subset Authority."— Presentation transcript:

1 (1 of 50) Domain Name System (DNS)

2 (2 of 50) Outline: Domain Name System (DNS) Providing Readable Names Flat Namespace Hierarchical Names Subset Authority TCP/IP Internet Domain Names (Un)official Internet Domain Names: –Geographical –Organizational Named Items Mapping Domain Names to Addresses Domain Name Resolution Domain Server Message Format Shortened Message Formats Pointer Query Object Types

3 (3 of 50) Providing Readable Names: Goal: Assign meaningful high-level names to a large set of machines and handle the mapping of those names to a machine’s IP address(es). To do this, we need to use a large number of geographically distributed servers to map names to addresses.

4 (4 of 50) Providing Readable Names: Mapping is needed in both directions: –IP Address to Name. –Readable Name to IP Address. Also, another level of mapping is still needed: –IP Address to low-level name (usually hardware address).

5 (5 of 50) Providing Readable Names: The form of high-level names determines: –How those names are translated to lower-level names (IP addresses) or bound to objects. –How name assignments are authorized.

6 (6 of 50) Flat Namespace: The original set of machines on the Internet used flat namespaces. These namespaces consisted of sequence of characters with no further structure. Advantage: –Names were convenient and short.

7 (7 of 50) Flat Namespace: Disadvantage: –Flat namespaces cannot generalize to large sets of machines because: Single set of identifiers => conflict potential increases. Single central name authority was overloaded. Frequent name-address binding changes were costly and cumbersome.

8 (8 of 50) Hierarchical Names: The partitioning of a namespace must be defined in such a way that it: –Supports efficient name mapping. –Guarantees autonomous control of name assignment. Hierarchical namespaces provides a simple yet flexible naming structure.

9 (9 of 50) Hierarchical Names: The namespace is partitioned at the top level. Authority for names in each partition are passed to each designated agent. LOCAL.SITE –SITE => Central naming authority. –LOCAL => Local namespace agent.

10 (10 of 50) Subset Authority: Further division of authority is available in the namespace hierarchy: LOCAL.GROUP.SITE –GROUP => provides flexible naming control for the local agent (grouping). –Hertz.njit.edu

11 (11 of 50) Subset Authority: U.S. telephone numbers are also hierarchical: –3 (area code) - 3 (local exchange) - 4 (subscriber number) In a TCP/IP internet, hierarchical machine names are assigned according to the structure of organizations that obtain authority for parts of the namespace, not according to the structure of the physical network interconnections.

12 (12 of 50) TCP/IP Internet Domain Names: DNS (domain name system) - mechanisms that implement a machine name hierarchy for TCP/IP internets (uses hierarchical naming - Domain Names). –It specifies the name syntax and rules for delegating authority over names. –Specifies the implementation of a distributed computing system that efficiently maps names to addresses.

13 (13 of 50) TCP/IP Internet Domain Names: 3 labels:(Hertz.njit.edu) * Any suffix of a label in a domain name is a domain. * –Lowest level =>hertz.njit.edu (Host at NJIT) –Second level =>njit.edu (Domain name of NJIT) –Top level =>edu (Domain name for educational sites)

14 (14 of 50) (Un)official Internet Domain Names: Most users follow the labeling conventions used by official DNS for two reasons: –The scheme is comprehensive and flexible. It can accommodate many hierarchical names for organizations (geographical or organizational naming) –Easier naming method when attached to the Internet (no name changing is needed).

15 (15 of 50) (Un)official Internet Domain Names: Top-level names provide geographical naming schemes. Geographical - country codes: –ugwww.ucs.ed.ac.uk (United Kingdom) Standard two letter identifiers are used as top-level domain names.

16 (16 of 50) Geographical Domain Names: AU Australia BR Brazil CA Canada DE Germany ES Spain FI Finland FR France GR Greece HU Hungary IN India IT Italy JP Japan MX Mexico NL Netherlands NO Norway NZ New Zealand SE Sweden TR Turkey UK United Kingdom US United States

17 (17 of 50) (Un)official Internet Domain Names: The U.S. further divides the geographical naming scheme into two levels: (State.Country) –va.us(Virginia, US) –nj.us(New Jersey, US) –ca.us(California, US)

18 (18 of 50) (Un)official Internet Domain Names: Most universities and companies choose organizational names because: –Easier to type (shorter names) –Geographical names are more difficult to ‘guess’ Companies can be recognized as such by having.com as a part of their domain name.

19 (19 of 50) Organizational Domain Names: COM US Commercial EDU US Educational GOV US Government INT International MIL US Military NET Network ORG Non-Profit Organization ARPA Old style Arpanet NATO Nato field

20 (20 of 50) (Un)official Internet Domain Names: Department names can be extended to name machines: –cs.purdue.edu (subdomain name) => xinu.cs.purdue.edu Machine names are added (xinu) to further subdivide the domain names used.

21 (21 of 50) Named Items: To allow clients to distinguish among multiple kinds of entries, each named item (stored in the system) is assigned a type which specifies if it is an: –Address of a machine –Mailbox –User

22 (22 of 50) Named Items: Name resolving must also include the type of answer desired (specifying the protocol family is optional). The DNS partitions the entire set of names by class (for mapping to multiple protocol suites). Naming items is required since one cannot distinguish the names of subdomains from the names of individual objects or their types.

23 (23 of 50) Mapping Domain Names to Addresses: The DNS also includes an efficient, reliable, general purpose, distributed system for mapping names to addresses using an independent cooperative system called name servers. Names Servers - are server programs that translate names-to-addresses (maps DN => IP addresses) and usually executes on a dedicated processor.

24 (24 of 50) Mapping Domain Names to Addresses: Name Resolvers - client software that uses one or more name servers in getting a mapped name. Domain name servers are arranged in a conceptual tree structure that corresponds to the naming hierarchy

25 (25 of 50) Root Server server for.com server for.us server for.gov server for.edu server for dec.com server for njit.edu server for nsf.gov server for va.us...

26 (26 of 50) Mapping Domain Names to Addresses: Each node may actually contain several hierarchical levels for mapping. Example: –xinu.cs.purdue.edu (uses two name servers for mapping)

27 (27 of 50) Root Server server for dec.com server for purdue.com server for nsf.gov server for reston.va.us...

28 (28 of 50) Domain Name Resolution: Conceptually, name resolution proceeds in a top- down fashion. Name resolution can occur in one of two different ways: –Recursive Resolution: A client requests complete translation. The name server itself contacts further name servers for resolution (if need be).

29 (29 of 50) Domain Name Resolution: –Iterative Resolution: Only a single resolution is made and returned (not recursive). Clients must now explicitly contact different name servers if further resolution is needed.

30 (30 of 50) Domain Name Resolution: Name servers use name caching to optimize search costs (efficient, but may not always be accurate). Time to Live (TTL) is used to determine a guaranteed name binding during it’s time interval. When time expires, the cache name binding is no longer valid, so the client must make a direct name resolution request once again.

31 (31 of 50) Domain Server Message Format: Messages are sent between domain clients and domain servers with a specific format. All messages of this format are used for name resolution and naming queries. Question sent by the client and answers provided by the server are included within different fields of the same message. If a server cannot answer a request, it will include information of which server can.

32 (32 of 50) 0 1631 IDENTIFICATIONPARAMETER NUMBER OF QUESTIONSNUMBER OF ANSWER NUMBER OF AUTHORITYNUMBER OF ADDITIONAL QUESTION SECTION... ANSWER SECTION... AUTHORITY SECTION... ADDITIONAL INFORMATION SECTION...

33 (33 of 50) Domain Server Message Format: IDENTIFICATION (16-bits): –Unique value used by the client to match responses to queries. PARAMETER (16-bits): –Specifies the operation requested and a response code.

34 (34 of 50) Domain Server Message Format: NUMBER OF (16-bits each): –Each give a count of entries in the corresponding sections that occur later in the message. Example: –NUMBER OF QUESTIONS - gives the count of entries that appear in the QUESTION SECTION of the message.

35 (35 of 50) 0 1631 IDENTIFICATIONPARAMETER NUMBER OF QUESTIONSNUMBER OF ANSWER NUMBER OF AUTHORITYNUMBER OF ADDITIONAL QUESTION SECTION... ANSWER SECTION... AUTHORITY SECTION... ADDITIONAL INFORMATION SECTION...

36 (36 of 50) Domain Server Message Format: QUERY SECTION (variable length): –Contains queries for which answers are desired. The client only fills in the question section while the server returns those questions and the answers in its response

37 (37 of 50) Domain Server Message Format: Each question consists of the subfields: –QUERY DOMAIN NAME - variable length subfield containing the domain name. –QUERY TYPE - 16-bits which encode the type of question (machine name, e-mail addr., etc.) –QUERY CLASS - 16-bits allows domain names to be used for arbitrary objects because official Internet names are only one possible class.

38 (38 of 50) Domain Server Message Format: ANSWER, AUTHORITY, and ADDITIONAL INFORMATION SECTION (all variable length): –Consist of a set of resource records that describe domain names and mappings for each specific area. Each resource record describes one domain name.

39 (39 of 50) 01631 RESOURCE DOMAIN NAME... TYPECLASS RESOURCE DATA LENGTHTIME TO LIVE RESOURCE DATA... Resource Record:

40 (40 of 50) Resource Record Format: RESOURCE DOMAIN NAME (variable length): –Contains the domain name to which this resource record refers. TYPE (16-bits): –Specifies the type of the data included in the resource record. CLASS (16-bits): –Specifies the data’s class.

41 (41 of 50) Resource Record Format: TIME TO LIVE (16-bits): –Contains an integer that specifies the number of seconds information in this resource record can be cached. RESOURCE DATA LENGTH (16-bits): –Length in octets of the name binding. RESOURCE DATA (variable length): –Contains the result of the binding.

42 (42 of 50) Shortened Message Formats: Compressed Name Format: –To conserve space in the name binding reply packet, the name servers compress names by storing only one copy of each domain name in the message. –This is done by pointing to similar name domains within the same compressed message.

43 (43 of 50) Shortened Message Formats: Abbreviation: –Provides a method of shortening names when the resolving process can supply part of the name automatically. –Local network administrators configure a list of possible suffixes to be appended to these names during lookup. Ex:dzt8474@hertz => hertz.njit.edu

44 (44 of 50) Inverse Mappings: Inverse Queries - allow the client to ask a server to perform a domain name mapping ‘backwards’. The answer is provided to the server and if an appropriate question can be generated, it is returned. They are not generally used since there is no way to resolve the question without having a server search all the other servers (inefficient).

45 (45 of 50) Pointer Query: Pointer Queries are the inverse mapping technique that is used instead of the former method. Pointer Query - is a special question which requests the name server to return the correct domain name for the machine with the specified IP address. The (in-addr.arpa) extension is used within DNS to request reverse name mappings.

46 (46 of 50) Pointer Query: The initial IP address is represented in dotted- decimal notation: –aaa.bbb.ccc.ddd The client forms a query by rearranging the notation into a string of the form: –ddd.ccc.bbb.aaa.in-addr.arpa DNS servers then contact the appropriate servers which can efficiently resolve this mapping.

47 (47 of 50) Object Types: The domain naming system is quite general in that it can be used for arbitrary hierarchical names. DNS can be used for translating a domain name to a mail exchanger address. Type: MX - mail exchanger is used with DNS to denote the correct type of name resolution. (user@domain-part) Mail systems use the DNS to resolve the domain- part of an e-mail address using MX.

48 (48 of 50) Object Types: Most data queried in DNS is type A, which consists of a host name and it’s IP address. Other types include: –HINFO:Name of CPU and Operating Sys. –MINFO:Mailbox or mail list information. –NS:Name of authoritative server for domain –PTR:Domain name of symbolic link. –TXT:Uninterpreted string of ASCII text.

49 (49 of 50) Questions Domain Name System (DNS) How does the X.500 naming specification differ from the domain naming system? How is DNS used with the name resolution of electronic mailboxes? What other types of namespaces exist? (Think of database record structuring) Compare the U.S. telephone naming scheme to DNS. Explain their differences. What advantage is it to register a domain name?

50 (50 of 50) Reference Materials Domain Name System (DNS) Internetworking with TCP/IP vol. 1, Prentice Hall RFC1034 - Domain Naming System: (http://ds.internic.net/rfc/rfc1034.txt) Domain Names - Concepts and Facilities, P. Mockapetris (http://karin.ekh.lu.se/pub/standards/internet/standards/std13.txt) Mail Routing and the Domain System, Craig Partridge (http://karin.ekh.lu.se/pub/standards/internet/standards/std14.txt)


Download ppt "(1 of 50) Domain Name System (DNS). (2 of 50) Outline: Domain Name System (DNS) Providing Readable Names Flat Namespace Hierarchical Names Subset Authority."

Similar presentations


Ads by Google