applications where we are in the course
play

Applications! Where we are in the Course Applicatjon layer - PowerPoint PPT Presentation

Applications! Where we are in the Course Applicatjon layer protocols are ofuen part of app But dont need a GUI, e.g., DNS Applicatjon Transport Network Link Physical CSEP 561 University of Washington 2 Recall


  1. Applications!

  2. 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

  3. 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

  4. 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

  5. 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

  6. 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

  7. 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

  8. 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

  9. 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

  10. Evolution of the Web Source: htup://www.evolutjonofuheweb.com, Vizzuality, Google, and Hyperakt CSEP 561 University of Washington 10

  11. Evolution of the Web (2) Source: htup://www.evolutjonofuheweb.com, Vizzuality, Google, and Hyperakt CSEP 561 University of Washington 11

  12. Domain Name System

  13. DNS • Human-readable host names, and more www.uw.edu? 128.94.155.135 Network CSEP 561 University of Washington 13

  14. 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

  15. 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

  16. 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

  17. DNS Namespace • Hierarchical, startjng from “.” (dot, typically omitued)

  18. 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

  19. DNS Zones • A zone is a contjguous portjon of the namespace Delegatjon A zone

  20. 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

  21. 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

  22. DNS Resolution (2) • fmits.cs.vu.nl resolves robot.cs.washington.edu

  23. 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

  24. Iterative vs. Recursive Queries (2) Iteratjve Recursive

  25. 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

  26. 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

  27. 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

  28. 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

  29. Iterative vs. Recursive Queries (2)

  30. 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

  31. 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

  32. 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

  33. 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

  34. 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

  35. 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

  36. DNS Resource Records (2) Start of Authority Name server IP addresses of computers Mail gateways CSEP 561 University of Washington 36

  37. DIG DEMO

Recommend


More recommend