dns-approximately

dns-approximately - Outline 15 15-441 Lecture 7 DNS DNS...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
41 Lecture 7 15-441 Lecture 7 DNS i ht © S th G ld t i 2008 Lecture 13 15-441 © 2008 Copyright © Seth Goldstein, 2008 Based on slides from previous 441 lectures 1 Outline • NS Design DNS Design •DNS Today (Extra credit, remind me at end) 15-441 © 2008 2 Lecture 13 What is DNS? • DNS (Domain Name Service) is primarily used to anslate human readable names into machine translate human readable names nto mach ne usable addresses, e.g., IP addresses. •DNS goal: fficiently locate resources. Efficiently locate resources. E.g., Map name Æ IP address –Scale to many users over a large area – Scale to many updates 15-441 © 2008 3 Lecture 13 How resolve name Æ IP addr? Lecture 13 15-441 © 2008 4
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Obvious Solutions (1) Why not centralize DNS? ingle point of failure Single point of failure •Traffic volume istant centralized database •Distant centralized database •Single point of update •Doesn’t scale! 15-441 © 2008 5 Lecture 13 Obvious Solutions (2) Why not use /etc/hosts? riginal Name to Address Mapping Or g nal Name to ddress Mapp ng –Flat namespace – /etc/hosts – SRI kept main copy – Downloaded regularly •Mid 80’s this became untenable. Why? •Count of hosts was increasing: machine per domain Æ machine per user – Many more downloads etc/hosts still exists 15-441 © 2008 6 – Many more updates /etc/hosts still exists. Lecture 13 Domain Name System Goals y •Basically a wide-area distributed database The biggest in the world!) ( he b ggest n the world!) •Scalability ecentralized maintenance Decentralized maintenance •Robustness lobal scope Global scope – Names mean the same thing everywhere on’t need all of ACID •Don t need all of ACID – Atomicity trong consistency 15-441 © 2008 7 – Strong consistency •Do need: distributed update/query & Performance Lecture 13 Programmer’s View of DNS • Conceptually, programmers can view the DNS database as a collection of millions of host entry structures : /* DNS host entry structure */ struct hostent { char *h name; /* official domain name of host */ _; / / char **h_aliases; /* null-terminated array of domain names */ int h_addrtype; /* host address type (AF_INET) */ int h_length; /* length of an address, in bytes */ char **h addr list; /* null-termed array of in addr structs */ – in_addr is a struct consisting of 4-byte IP addr __ y_ }; • Functions for retrieving host entries from DNS: gethostbyname : query key is a DNS host name. 15-441 © 2008 8 gethostbyaddr : query key is an IP address. Lecture 13
Background image of page 2
DNS Message Format entification lags Identification No. of Questions o of Authority RRs Flags No. of Answer RRs o of Additional RRs 12 bytes No. of Authority RRs Questions (variable number of answers) No. of Additional RRs Name, type fields for a query Answers (variable number of resource records) RRs in response to query Authority (variable number of resource records) dditional Info (variable number of resource records) Records for authoritative servers dditional 15-441 © 2008 9 Additional Info (variable number of resource records) Additional “helpful info that may be used Lecture 13 DNS Header Fields •Identification
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 11

dns-approximately - Outline 15 15-441 Lecture 7 DNS DNS...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online