Applications!
Where we are in the Course • Applicatjon layer protocols are ofuen part of “app” • But don’t need a GUI, e.g., DNS Applicatjon Transport Network Link Physical CSEP 561 University of Washington 2
Recall • Applicatjon layer messages are ofuen split over multjple packets • Or may be aggregated in a packet … HTTP 802.11 IP TCP HTTP 802.11 IP TCP HTTP 802.11 IP TCP HTTP CSEP 561 University of Washington 3
Application Communication Needs • Vary widely; must build on Transport services Web Message reliability! Skype Series of variable length, reliable DNS request/reply Real-tjme exchanges Short, reliable (unreliable) request/reply stream delivery exchanges TCP UDP UDP CSEP 561 University of Washington 4
OSI Session/Presentation Layers • Remember this? Two relevant concepts … Considered – Provides functjons needed by users part of the – Converts difgerent representatjons applicatjon, – Manages task dialogs not strictly – Provides end-to-end delivery layered! – Sends packets over multjple links – Sends frames of informatjon – Sends bits as signals CSEP 561 University of Washington 5
Session Concept • A session is a series of related network interactjons in support of an applicatjon task • Ofuen informal, not explicit • Examples: • Web page fetches multjple resources • Skype call involves audio, video, chat CSEP 561 University of Washington 6
Presentation Concept • Apps need to identjfy the type of content, and encode it for transfer • These are Presentatjon functjons • Examples: • Media (MIME) types, e.g., image/jpeg, identjfy content type • Transfer encodings, e.g., gzip, identjfy the encoding of content • Applicatjon headers are ofuen simple and readable versus packed for effjciency CSEP 561 University of Washington 7
Evolution of Internet Applications • Always changing, and growing … ??? Web (Video) Traffjc P2P (BitTorrent) Web (CDNs) Web (HTTP) News (NTTP) Email Email (SMTP) File Transfer (FTP) Telnet Secure Shell (ssh) 1970 1980 1990 2000 2010 CSEP 561 University of Washington 8
Evolution of Internet Applications (2) • For a peek at the state of the Internet: • Akamai’s State of the Internet Report (quarterly) • Cisco’s Visual Networking Index • Mary Meeker’s Internet Report • Robust Internet growth, esp. video, wireless, mobile, cats • Most (70%) traffjc is video (expected 80% in 2019) • Mobile traffjc overtakes desktop (2016) • 15% of traffjc is cats (2013) • Growing atuack traffjc from China, also U.S. and Russia CSEP 561 University of Washington 9
Evolution of the Web Source: htup://www.evolutjonofuheweb.com, Vizzuality, Google, and Hyperakt CSEP 561 University of Washington 10
Evolution of the Web (2) Source: htup://www.evolutjonofuheweb.com, Vizzuality, Google, and Hyperakt CSEP 561 University of Washington 11
Domain Name System
DNS • Human-readable host names, and more www.uw.edu? 128.94.155.135 Network CSEP 561 University of Washington 13
Names and Addresses • Names are higher-level identjfjers for resources • Addresses are lower-level locators for resources • Multjple levels, e.g. full name → email → IP address → Ethernet addr • Resolutjon (or lookup) is mapping a name to an address Name, e.g. Address, e.g. “Andy Tanenbaum,” “Vrijie Universiteit, Amsterdam” or “fmits.cs.vu.nl” or IPv4 “130.30.27.38” Lookup Directory CSEP 561 University of Washington 14
Before the DNS – HOSTS.TXT • Directory was a fjle HOSTS.TXT regularly retrieved for all hosts from a central machine at the NIC (Network Informatjon Center) • Names were initjally fmat, became hierarchical (e.g., lcs.mit.edu) ~85 • Not manageable or effjcient as the ARPANET grew … CSEP 561 University of Washington 15
DNS • A naming service to map between host names and their IP addresses (and more) • www.uwa.edu.au → 130.95.128.140 • Goals: • Easy to manage (esp. with multjple partjes) • Effjcient (good performance, few resources) • Approach: • Distributed directory based on a hierarchical namespace • Automated protocol to tje pieces together CSEP 561 University of Washington 16
DNS Namespace • Hierarchical, startjng from “.” (dot, typically omitued)
TLDs (T op-Level Domains) • Run by ICANN (Internet Corp. for Assigned Names and Numbers) • Startjng in ‘98; naming is fjnancial, politjcal, and internatjonal • 700+ generic TLDs • Initjally .com, .edu , .gov., .mil, .org, .net • Unrestricted (.com) vs Restricted (.edu) • Added regions (.asia, .kiwi), Brands (.apple), Sponsored (.aero) in 2012 • ~250 country code TLDs • Two letuers, e.g., “.au”, plus internatjonal characters since 2010 • Widely commercialized, e.g., .tv (Tuvalu) • Many domain hacks, e.g., instagr.am (Armenia), kurtj.sh (St. Helena) CSEP 561 University of Washington 18
DNS Zones • A zone is a contjguous portjon of the namespace Delegatjon A zone
DNS Zones (2) • Zones are the basis for distributjon • EDU Registrar administers .edu • UW administers washington.edu • CSE administers cs.washington.edu • Each zone has a nameserver to contact for informatjon about it • Zone must include contacts for delegatjons, e.g., .edu knows nameserver for washington.edu CSEP 561 University of Washington 20
DNS Resolution • DNS protocol lets a host resolve any host name (domain) to IP address • If unknown, can start with the root nameserver and work down zones • Let’s see an example fjrst … CSEP 561 University of Washington 21
DNS Resolution (2) • fmits.cs.vu.nl resolves robot.cs.washington.edu
Iterative vs. Recursive Queries • Recursive query • Nameserver resolves and returns fjnal answer • E.g., fmits → local nameserver • Iteratjve (Authoritatjve) query • Nameserver returns answer or who to contact for answer • E.g., local nameserver → all others CSEP 561 University of Washington 23
Iterative vs. Recursive Queries (2) Iteratjve Recursive
Iterative vs. Recursive Queries (3) • Recursive query • Lets server offmoad client burden (simple resolver) for manageability • Lets server cache results for a pool of clients • Iteratjve query • Lets server “fjle and forget” • Easy to build high load servers CSEP 561 University of Washington 25
Local Nameservers • Local nameservers ofuen run by IT (enterprise, ISP) • But may be your host or AP • Or alternatjves e.g., Google public DNS (8.8.8.8) Cloudfmare’s public DNS (1.1.1.1) • Clients need to be able to contact local nameservers • Typically confjgured via DHCP CSEP 561 University of Washington 26
Root Nameservers • Root (dot) is served by 13 server names • a.root-servers.net to m.root-servers.net • All nameservers need root IP addresses • Handled via confjguratjon fjle (named.ca) • There are >1000 distributed server instances • Highly reachable, reliable service • Most servers are reached by IP anycast (Multjple locatjons advertjse same IP! Routes take client to the closest one.) • Servers are IPv4 and IPv6 reachable CSEP 561 University of Washington 27
Root Server Deployment Source: htup://www.root-servers.org. Snapshot on 27.02.12. Does not represent current deployment. CSEP 561 University of Washington 28
Iterative vs. Recursive Queries (2)
Caching • Resolutjon latency needs to be low • URLs don’t have much churn • Cache query/responses to answer future queries immediately • Including partjal (iteratjve) answers • Responses carry a TTL for caching query out Cache response Nameserver CSEP 561 University of Washington 30
Caching (2) • fmits.cs.vu.nl looks up and stores eng.washington.edu 1: query 2: query Cache 4: eng.washington.edu 3: eng.washington.edu Local nameserver UW nameserver (for cs.vu.nl) (for washington.edu) CSEP 561 University of Washington 31
Caching (3) • fmits.cs.vu.nl now directly resolves eng.washington.edu I know the server for washington.edu! 1: query Cache 4: eng.washington.edu Local nameserver UW nameserver (for cs.vu.nl) (for washington.edu) CSEP 561 University of Washington 32
DNS Protocol • Query and response messages • Built on UDP messages, port 53 • ARQ for reliability; server is stateless! • Messages linked by a 16-bit ID fjeld Client Server Query ID=0x1234 Time ID=0x1234 Response
DNS Protocol (2) • Service reliability via replicas • Run multjple nameservers for domain • Return the list; clients use one answer • Helps distribute load too NS for uw.edu? Use A, B or C A B C CSEP 561 University of Washington 34
DNS Resource Records • A zone is comprised of DNS resource records that give informatjon for its domain names Type Meaning SOA Start of authority, has key zone parameters A IPv4 address of a host AAAA (“quad A”) IPv6 address of a host CNAME Canonical name for an alias MX Mail exchanger for the domain NS Nameserver of domain or delegated subdomain CSEP 561 University of Washington 35
DNS Resource Records (2) Start of Authority Name server IP addresses of computers Mail gateways CSEP 561 University of Washington 36
DIG DEMO
Recommend
More recommend