Today: Internet Services. Internet Services. Typical Workload (Web Pages) Web caches (proxy server)

Size: px
Start display at page:

Download "Today: Internet Services. Internet Services. Typical Workload (Web Pages) Web caches (proxy server)"

Transcription

1 Today: Internet Services Internet Services COMP5213: Computer and Network Organiza;on Web Caching Domain Name System Content Distribu;on Network Web Services Instructors: Javid Taheri 1! 2! Typical Workload (Web Pages) Web caches (proxy ) Mul;ple (typically small) objects per page File sizes Heavy- tailed Pareto distribu;on for tail Lognormal for body of distribu;on Goal: satisfy client request without involving origin! user sets browser: Web accesses via cache browser sends all HTTP requests to cache object in cache: cache returns object else cache requests object from origin, then returns object to client client HTTP request HTTP response HTTP request HTTP response Proxy HTTP request HTTP response origin client origin 3! 4!

2 More about Web caching Caching example (1) Cache acts as both client and Cache can do up- to- date check using If-modified-since HTTP header Issue: should cache take risk and deliver cached object without checking? Heuris;cs are used. Typically cache is installed by ISP (university, company, residen;al ISP) Why Web caching? Reduce response ;me for client request. Reduce traffic on an ins;tu;on s access link. Internet dense with caches enables poor content providers to effec;vely deliver content Assump;ons average object size = 100,000 bits avg. request rate from ins;tu;on s browser to origin serves = 15/sec delay from ins;tu;onal router to any origin and back to router = 2 sec Consequences u;liza;on on LAN = 15% u;liza;on on access link = 100% total delay = Internet delay + access delay + LAN delay = 2 sec + minutes + milliseconds institutional network public Internet 1.5 Mbps access link 10 Mbps LAN origin s institutional cache 5! 6! Caching example (2) Caching example (3) Possible solu;on increase bandwidth of access link to, say, 10 Mbps Consequences u;liza;on on LAN = 15% u;liza;on on access link = 15% Total delay = Internet delay + access delay + LAN delay = 2 sec + msecs + msecs o_en a costly upgrade institutional network public Internet 10 Mbps access link 10 Mbps LAN origin s Install cache suppose hit rate is.4 Consequence 40% requests will be sa;sfied almost immediately 60% requests sa;sfied by origin u;liza;on of access link reduced to 60%, resul;ng in negligible delays (say 10 msec) total delay = Internet delay + access delay + LAN delay =.6*2 sec +.6*.01 secs + milliseconds < 1.3 secs institutional network public Internet 1.5 Mbps access link 10 Mbps LAN origin s institutional cache institutional cache 7! 8!

3 Problems Caching Proxies Sources for Misses Over 50% of all HTTP objects are uncacheable why? Not easily solvable Dynamic data à stock prices, scores, web cams CGI scripts à results based on passed parameters Obvious fixes SSL à encrypted data is not cacheable Most web clients don t handle mixed pages well à many generic objects transferred with SSL Cookies à results may be based on passed data Hit metering à owner wants to measure # of hits for revenue, etc. Capacity How large a cache is necessary or equivalent to infinite On disk vs. in memory à typically on disk Compulsory First ;me access to document Non- cacheable documents CGI- scripts Personalized documents (cookies, etc) Encrypted data (SSL) Consistency Document has been updated/expired before reuse Conflict No such misses 9! 10! Today: Internet Services Web Caching Domain Name System Content Distribu;on Network Web Services DNS: Domain Name System People: many iden;fiers: name, passport # Internet hosts, routers: IP address (32 bit) - used for addressing datagrams name, e.g., - used by humans Q: map between IP addresses and name? Domain Name System: distributed database implemented in hierarchy of many name s applica1on- layer protocol host, routers, name s to communicate to resolve names (address/name transla;on) note: core Internet func;on, implemented as applica;on- layer protocol complexity at network s edge 11! 12!

4 Hierarchical Name Space Hierarchical Name Space (cont) shade.ug.cs.usyd.edu.au! root org cn net edu com au gov edu com net unsw usyd uts anu cs ee ug Each node in hierarchy stores a list of names that end with same suffix Suffix = path up tree E.g., given this tree, where would following be stored: cnn.com mit.edu cpu0.cs.usyd.edu.au shade.ug.cs.usyd.edu.au! root cn edu com au org net gov edu com net unsw usyd uts anu cs ee ug Zone = con;guous sec;on of name space E.g., Complete tree, single node or subtree A zone has an associated set of name s Must store list of names and tree links Subtree shade 13! shade Single node Complete Tree 14! DNS Design Zones are created by convincing owner node to create/ delegate a subzone Records within zone stored mul;ple redundant name s Primary/master name updated manually Secondary/redundant s updated by zone transfer of name space Zone transfer is a bulk transfer of the configura;on of a DNS uses TCP to ensure reliability Example: CS.USYD.EDU.AU created by USYD.EDU.AU administrators Who creates USYD.EDU.AU? DNS name s Why not centralize DNS? single point of failure traffic volume distant centralized database maintenance doesn t scale! no has all name- to- IP address mappings local name s: each ISP, company has local (default) name host DNS query first goes to local name authorita;ve name : for a host: stores that host s IP address, name can perform name/address transla;on for that host s name 15! 16!

5 DNS: Root name s contacted by local name that can not resolve name root name : contacts authorita;ve name if name mapping not known gets mapping returns mapping to local name e NASA Mt View, CA f Internet Software C. Palo Alto, CA b USC-ISI Marina del Rey, CA l ICANN Marina del Rey, CA a NSI Herndon, VA c PSInet Herndon, VA d U Maryland College Park, MD g DISA Vienna, VA h ARL Aberdeen, MD j NSI (TBD) Herndon, VA k RIPE London i NORDUnet Stockholm m WIDE Tokyo 13 root name s worldwide! Typical Resolu;on Client Local DNS NS metro.ucc.usyd.edu.au" NS crux.cs.usyd.edu.au" A www=ipaddr root & au DNS metro.ucc.usyd.edu.au DNS crux.cs.usyd.edu.au DNS 17! 18! Typical Resolu;on Steps for resolving Applica;on calls gethostbyname() (RESOLVER) Resolver contacts local name (S 1 ) S 1 queries root (S 2 ) for ( S 2 returns NS record for usyd.edu.au (S 3 ) What about A record for S 3? This is what the addi;onal informa;on sec;on is for (PREFETCHING) S 1 queries S 3 for S 3 returns A record for Can return mul;ple A records! what does this mean? Lookup Methods Recursive query: Server goes out and searches for more info (recursive) Only returns final answer or not found Itera;ve query: Server responds with as much as it knows (itera;ve) I don t know this name, but ask this Workload impact on choice? Local typically does recursive Root/distant does itera;ve local name dns.eurecom.fr requesting host surf.eurecom.fr root name iterative query intermediate name metro.ucc.usyd.edu.au 5 6 authoritative name crux.cs.usyd.edu.au shade.ug.cs.usyd.edu.au 19! 20!

6 DNS: caching and upda;ng records DNS records once (any) name learns mapping, it caches mapping cache entries ;meout (disappear) aher some ;me update/no;fy mechanisms under design by IETF RFC 2136 hjp:// 21! DNS: distributed db storing resource records (RR) Type=A! RR format: (name, value, type, class, ttl) n name is hostname! n value is IP address! Type=CNAME! n name is alias name for some canonical (the real) name!! is really Type=NS east.backup2.ibm.com name is domain (e.g. foo.com) value is IP address of authorita;ve name n value is canonical name! for this domain! Type=MX! n value is name of mail associated with name!! 22! DNS protocol, messages DNS protocol, messages DNS protocol : query and reply messages, both with same message format msg header! identification: 16 bit # for query, reply to query uses same #! flags:! n query or reply! n reply is authoritative! n recursion desired! n recursion available! Name, type fields for a query RRs in response to query records for authoritative s additional helpful info that may be used 23! 24!

7 Workload and Caching Subsequent Lookup Example What workload do you expect for different s? Why might this be a problem? How can we solve this problem? DNS responses are cached Quick response for repeated transla;ons Other queries may reuse some parts of lookup NS records for domains DNS nega;ve queries are cached Don t have to repeat past mistakes E.g. misspellings, search strings in resolv.conf Cached data periodically ;mes out Life;me (TTL) of data controlled by owner of data TTL passed with every record Client ftp.it.usyd.edu.au Local DNS ftp.it.usyd.edu.au ftp=ipaddr root & au DNS usyd.edu.au DNS it.usyd.edu.au DNS 25! 26! Reliability Prefetching DNS s are replicated Name service available if one replica is up Queries can be load balanced between replicas Try alternate s on ;meout What s a good value for a ;meout? Hard to tell à what are the tradeoffs? Bejer be conserva;ve! Exponen;al backoff when retrying same Why do we need this? Same iden;fier for all queries Don t care which responds Name s can add addi;onal data to any response Typically used for prefetching CNAME/MX/NS typically point to another host name Responses include address of host referred to in addi;onal sec;on 27! 28!

8 DNS: Summary Today: Internet Services Mo;va;ons! large distributed database Scalability Independent update Robustness Hierarchical database structure Zones How is a lookup done Web Caching Domain Name System Content Distribu;on Network Web Services Caching/prefetching and TTLs 29! 30! Components in a CDN Content distribu;on networks (CDNs) aaa.com! bbb.com! ccc.com! Cache! Backend Servers!!! Geographically distributed surrogate s!! The content providers are the CDN customers. Content replica;on CDN company installs hundreds of CDN s throughout Internet in lower- ;er ISPs, close to users CDN replicates its customers content in CDN s. When provider updates content, CDN updates s origin in North America CDN distribution node! Redirectors!! Clients! CDN in S. America CDN in Europe CDN in Asia 31! 32!

9 CDN example origin distributes HTML Replaces: Origin CDNs authoritative DNS Nearby CDN with ruth.gif HTTP request for DNS query for HTTP request for CDN company! cdn.com! distributes gif files! uses its authoritative DNS to route redirect requests! More about CDNs rou;ng requests not just Web pages CDN creates a map, indica;ng streaming stored audio/video distances from leaf ISPs and CDN nodes streaming real- ;me audio/video when query arrives at authorita;ve DNS : CDN nodes create applica;on- layer overlay network determines ISP from which query originates uses map to determine best CDN 33! 34! How Akamai Works How Akamai Works Clients fetch html document from primary E.g. fetch index.html from cnn.com URLs for replicated content are replaced in html E.g. <img src= hjp://cnn.com/af/x.gif > replaced with <img src= hjp:// a73.g.akamaitech.net/7/23/cnn.com/af/x.gif > Client is forced to resolve axyz.g.akamaitech.net hostname How is content replicated? Akamai only replicates sta;c content Modified name contains original file name Akamai is asked for content First checks local cache If not in cache, requests file from primary and caches file 35! 36!

10 How Akamai Works Akamai Subsequent Requests cnn.com (content provider) DNS root Akamai cnn.com (content provider) DNS root Akamai 11 Get index.ht ml End- user Get foo.jpg Get /cnn.com/foo.jpg Akamai high-level DNS Akamai low-level DNS Nearby matching Akamai Get index.h tml 1 2 Akamai high-level DNS End- user Get /cnn.com/foo.jpg 10 Akamai low-level DNS Nearby matching Akamai 37! 38! Today: Internet Services Web Caching Domain Name System Content Distribu;on Network Web Services Web History Consider a future device for individual use, which is a sort of mechanized private file and library. It needs a name, and to coin one at random, "memex" will do. A memex is a device in which an individual stores all his books, records, and communications, and which is mechanized so that it may be consulted with exceeding speed and flexibility. It is an enlarged intimate supplement to his 1945: memory.! Vannevar Bush, As we may think, Atlan;c Monthly, July, Describes the idea of a distributed hypertext system. A memex that mimics the web of trails in our minds. 39! 40!

11 Web History Web History (cont) 1989: Tim Berners- Lee (CERN) writes internal proposal to develop a distributed hypertext system. Connects a web of notes with links. Intended to help CERN physicists in large projects share and manage informa;on 1990: Tim BL writes a graphical browser for Next machines NCSA released 26 WWW s worldwide 1993 Marc Andreessen releases first version of NCSA Mosaic browser Mosaic version released for (Windows, Mac, Unix). Web (port 80) traffic at 1% of NSFNET backbone traffic. Over 200 WWW s worldwide Andreessen and colleagues leave NCSA to form Mosaic Communica;ons Corp (predecessor to Netscape). 41! 42! Internet Hosts Web Servers Clients and s communicate using the HyperText Transfer Protocol (HTTP) Client and establish TCP connec;on Client requests content Server responds with requested content Client and close connec;on (eventually) Current version is HTTP/1.1 RFC 2616, June, HTTP request Web! client! (browser)! HTTP! TCP! IP! HTTP response (content) Web content Streams Datagrams Web!! How many of the 2 32 IP addresses have registered domain names? 43! 44!

12 Web Content Sta;c and Dynamic Content Web s return content to clients content: a sequence of bytes with an associated MIME (Mul;purpose Internet Mail Extensions) type Example MIME types text/html HTML document text/plain Unformajed text application/postscript Postcript document image/gif Binary image encoded in GIF format image/jpeg Binary image encoded in JPEG format The content returned in HTTP responses can be either sta1c or dynamic. Sta4c content: content stored in files and retrieved in response to an HTTP request Examples: HTML files, images, audio clips. Request iden;fies content file Dynamic content: content produced on- the- fly in response to an HTTP request Example: content produced by a program executed by the on behalf of the client. Request iden;fies file containing executable code Borom line: All Web content is associated with a file that is managed by the. 45! 46! URLs Each file managed by a has a unique name called a URL (Universal Resource Locator) URLs for sta;c content: Iden;fies a file called index.html, managed by a Web at that is listening on port 80. URLs for dynamic content: Iden;fies an executable file called proc, managed by a Web at that is listening on port 8000, that should be called with two argument strings: and 213. How Clients and Servers Use URLs Example URL: Clients use prefix ( to infer: What kind of to contact (Web ) Where the is ( What port it is listening on (80) Servers use suffix (/index.html) to: Determine if request is for sta;c or dynamic content. No hard and fast rules for this. Conven;on: executables reside in cgi-bin directory Find file on file system. Ini;al / in suffix denotes home directory for requested content. Minimal suffix is /, which all s expand to some default home page (e.g., index.html). 47! 48!

13 HTTP Requests HTTP Requests (cont) HTTP request is a request line, followed by zero or more request headers Request line: <method> <uri> <version> <version> is HTTP version of request (HTTP/1.0 or HTTP/1.1) <uri> is typically URL for proxies, URL suffix for s. A URL is a type of URI (Uniform Resource Iden;fier) See hjp:// <method> is either GET, POST, OPTIONS, HEAD, PUT, DELETE, or TRACE. 49! HTTP methods: GET: Retrieve sta;c or dynamic content Arguments for dynamic content are in URI Workhorse method (99% of requests) POST: Retrieve dynamic content Arguments for dynamic content are in the request body OPTIONS: Get or file ajributes HEAD: Like GET but no data in response body PUT: Write a file to the! DELETE: Delete a file on the! TRACE: Echo request in response body Useful for debugging. Request headers: <header name>: <header data> Provide addi;onal informa;on to the. 50! HTTP Versions Major differences between HTTP/1.1 and HTTP/1.0 HTTP/1.0 uses a new connec;on for each transac;on. HTTP/1.1 also supports persistent connec4ons mul;ple transac;ons over the same connec;on Connection: Keep-Alive HTTP/1.1 requires HOST header Host: Makes it possible to host mul;ple websites at single Internet host HTTP/1.1 supports chunked encoding (described later) Transfer- Encoding: chunked HTTP/1.1 adds addi;onal support for caching 51! HTTP Responses HTTP response is a response line followed by zero or more response headers. Response line: <version> <status code> <status msg> <version> is HTTP version of the response. <status code> is numeric status. <status msg> is corresponding English text. 200 OK Request was handled without error 301 Moved Provide alternate URL 403 Forbidden Server lacks permission to access file 404 Not found Server couldn t find the file. Response headers: <header name>: <header data> Provide addi;onal informa;on about response Content-Type: MIME type of content in response body. Content-Length: Length of content in response body. 52!

14 GET Request to Apache Server From Firefox Browser URI is just the suffix, not the entire URL! GET /~bryant/test.html HTTP/1.1 Host: User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-us; rv: ) Gecko/ Firefox/ Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/ *;q=0.8 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO ,utf-8;q=0.7,*;q=0.7 Keep-Alive: 115 Connection: keep-alive CRLF (\r\n) GET Response From Apache Server HTTP/ OK Date: Fri, 29 Oct :48:32 GMT Server: Apache/ (Unix) mod_ssl/ OpenSSL/0.9.7m mod_pubcookie/3.3.2b PHP/5.3.1 Accept-Ranges: bytes Content-Length: 479 Keep-Alive: timeout=15, max=100 Connection: Keep-Alive Content-Type: text/html <html> <head><title>some Tests</title></head> <body> <h1>some Tests</h1>... </body> </html> 53! 54! Serving Dynamic Content Serving Dynamic Content (cont) Client sends request to. If request URI contains the string /cgi-bin, then the assumes that the request is for dynamic content. GET /cgi-bin/env.pl HTTP/1.1 Client Server The creates a child process and runs the program iden;fied by the URI in that process Client Server env.pl fork/exec! 55! 56!

15 Serving Dynamic Content (cont) Issues in Serving Dynamic Content The child runs and generates the dynamic content. The captures the content of the child and forwards it without modifica;on to the client Client Content! Server env.pl Content! How does the client pass program arguments to the? How does the pass these arguments to the child? How does the pass other info relevant to the request to the child? How does the capture the content produced by the child? These issues are addressed by the Common Gateway Interface (CGI) specifica;on. Client Request! Content! Server Content! Create! env.pl 57! 58! CGI Because the children are wriren according to the CGI spec, they are o_en called CGI programs. The add.com Experience input URL! host! port! CGI program!args! Because many CGI programs are wriren in Perl, they are o_en called CGI scripts. However, CGI really defines a simple standard for transferring informa;on between the client (browser), the, and the child process. Output page! 59! 60!

16 Serving Dynamic Content With GET Serving Dynamic Content With GET Ques;on: How does the client pass arguments to the? Answer: The arguments are appended to the URI Can be encoded directly in a URL typed to a browser or a URL in an HTML link adder is the CGI program on the that will do the addi;on. argument list starts with? arguments separated by & spaces represented by + or %20 URI o_en generated by an HTML form <FORM METHOD=GET ACTION="cgi-bin/adder"> <p>x <INPUT NAME="n1"> <p>y <INPUT NAME="n2"> <p><input TYPE=submit> </FORM> URL: cgi-bin/adder?n1=15213&n2=18243 Result displayed on browser: Welcome to add.com: THE Internet addition portal. The answer is: > 33456! Thanks for visiting!! 61! 62! Serving Dynamic Content With GET Addi;onal CGI Environment Variables Ques;on: How does the pass these arguments to the child? Answer: In environment variable QUERY_STRING A single string containing everything aher the? For add: QUERY_STRING = n1=15213&n2=18243 General SERVER_SOFTWARE SERVER_NAME GATEWAY_INTERFACE (CGI version) Request- specific SERVER_PORT REQUEST_METHOD (GET, POST, etc) QUERY_STRING (contains GET args) REMOTE_HOST (domain name of client) REMOTE_ADDR (IP address of client) CONTENT_TYPE (for POST, type of data in message body, e.g., text/ html) CONTENT_LENGTH (length in bytes) 63! 64!

17 Even More CGI Environment Variables In addi;on, the value of each header of type type received from the client is placed in environment variable HTTP_type Examples (any - is changed to _ ) : HTTP_ACCEPT HTTP_HOST HTTP_USER_AGENT THANK YOU Ques;ons? 65! 66!

1945: 1989: ! Tim Berners-Lee (CERN) writes internal proposal to develop a. 1990:! Tim BL writes a graphical browser for Next machines.

1945: 1989: ! Tim Berners-Lee (CERN) writes internal proposal to develop a. 1990:! Tim BL writes a graphical browser for Next machines. Systemprogrammering 2009 Föreläsning 9 Web Services Topics! HTTP! Serving static content! Serving dynamic content 1945: 1989: Web History! Vannevar Bush, As we may think, Atlantic Monthly, July, 1945.

More information

DNS: Distributed Name System

DNS: Distributed Name System Distributed Name System Slides adapted from: Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley, July 2002. All material copyright 1996-2002

More information

Digital Communication in the Modern World Application Layer cont. DNS, SMTP

Digital Communication in the Modern World Application Layer cont. DNS, SMTP Digital Communication in the Modern World Application Layer cont. DNS, http://www.cs.huji.ac.il/~com com@cs.huji.ac.il Some of the slides have been borrowed from: Computer Networking: A Top Down Approach

More information

Carnegie Mellon. Web Services. 15-213: Introduc0on to Computer Systems 21 st Lecture, Nov. 4, 2010. Instructors: Randy Bryant and Dave O Hallaron

Carnegie Mellon. Web Services. 15-213: Introduc0on to Computer Systems 21 st Lecture, Nov. 4, 2010. Instructors: Randy Bryant and Dave O Hallaron Web Services 15-213: Introduc0on to Computer Systems 21 st Lecture, Nov. 4, 2010 Instructors: Randy Bryant and Dave O Hallaron 1 Web History Consider a future device for individual use, which is a sort

More information

Web Services April 21st, 2009 with Hunter Pitelka

Web Services April 21st, 2009 with Hunter Pitelka 15 213 The course that gives CMU its Zip! Web Services April 21st, 2009 with Hunter Pitelka Topics HTTP Serving static content Serving dynamic content Web History 1989: 1990: Tim Berners Lee (CERN) writes

More information

DNS: Domain Name System

DNS: Domain Name System DNS: Domain Name System People: many identifiers: SSN, name, passport # Internet hosts, routers: IP address (32 bit) - used for addressing datagrams name, e.g., ww.yahoo.com - used by humans Q: map between

More information

Domain Name System Richard T. B. Ma

Domain Name System Richard T. B. Ma Domain Name System Richard T. B. Ma School of Computing National University of Singapore CS 3103: Compute Networks and Protocols Names Vs. Addresses Names are easier for human to remember www.comp.nus.edu.sg

More information

Domain Name System (or Service) (DNS) Computer Networks Term B10

Domain Name System (or Service) (DNS) Computer Networks Term B10 Domain Name System (or Service) (DNS) Computer Networks Term B10 DNS Outline DNS Hierarchial Structure Root Name Servers Top-Level Domain Servers Authoritative Name Servers Local Name Server Caching and

More information

CMPE 80N: Introduction to Networking and the Internet

CMPE 80N: Introduction to Networking and the Internet CMPE 80N: Introduction to Networking and the Internet Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 10 CMPE 80N Fall'10 1 Announcements Forum assignment #2 posted. Due Nov. 5 th.

More information

Domain Name System (DNS)

Domain Name System (DNS) Chapter 18 CSC465 Computer Networks Spring 2004 Dr. J. Harrison These slides are based on the text TCP/IP Protocol Suite (2 nd Edition) Domain Name System (DNS) CONTENTS NAME SPACE DOMAIN NAME SPACE DISTRIBUTION

More information

CMPE 80N: Introduction to Networking and the Internet

CMPE 80N: Introduction to Networking and the Internet CMPE 80N: Introduction to Networking and the Internet Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 11 CMPE 80N Spring'10 1 Announcements Guest lecture on intellectual property and

More information

How To Map Between Ip Address And Name On A Domain Name System (Dns)

How To Map Between Ip Address And Name On A Domain Name System (Dns) Computer Networks: Domain Name Service (DNS) CS 3516 D- term 2013 Instructor: Krishna Venkatasubramanian Quiz 2 DNS: domain name system people: many identifiers: SSN, name, passport # Internet hosts, routers:

More information

Domain Name System (DNS) RFC 1034 RFC 1035 http://www.ietf.org

Domain Name System (DNS) RFC 1034 RFC 1035 http://www.ietf.org Domain Name System (DNS) RFC 1034 RFC 1035 http://www.ietf.org TCP/IP Protocol Suite Application Layer DHCP DNS SNMP HTTP SMTP POP Transport Layer UDP TCP ICMP IGMP Network Layer IP Link Layer ARP ARP

More information

Names vs. Addresses. Flat vs. Hierarchical Space. Domain Name System (DNS) Computer Networks. Lecture 5: Domain Name System

Names vs. Addresses. Flat vs. Hierarchical Space. Domain Name System (DNS) Computer Networks. Lecture 5: Domain Name System Names vs. Addresses Computer Networks Lecture 5: Domain Name System Names are easier for human to remember www.umich.edu vs. 141.213.4.4 Addresses can be changed without changing names move www.umich.edu

More information

Domain Name System DNS

Domain Name System DNS CE443 Computer Networks Domain Name System DNS Behnam Momeni Computer Engineering Department Sharif University of Technology Acknowledgments: Lecture slides are from Computer networks course thought by

More information

FTP: the file transfer protocol

FTP: the file transfer protocol FTP: the file transfer protocol at host FTP interface FTP client local file system file transfer FTP remote file system transfer file to/from remote host client/ model client: side that initiates transfer

More information

CS640: Computer Networks. Naming /ETC/HOSTS

CS640: Computer Networks. Naming /ETC/HOSTS CS640: Computer Networks Aditya Akella Lecture 17 Naming and the DNS Naming Need naming to identify resources Once identified, resource must be located How to name resource? Naming hierarchy How do we

More information

Naming and the DNS. Focus. How do we name hosts etc.? Application Presentation Topics. Session Domain Name System (DNS) Email/URLs

Naming and the DNS. Focus. How do we name hosts etc.? Application Presentation Topics. Session Domain Name System (DNS) Email/URLs Naming and the DNS Focus How do we name hosts etc.? Application Presentation Topics Session Domain Name System (DNS) Email/URLs Transport Network Data Link Physical Ldns.1 Names and Addresses 43 name address

More information

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

CS 348: Computer Networks. - DNS; 22 nd Oct 2012. Instructor: Sridhar Iyer IIT Bombay CS 348: Computer Networks - DNS; 22 nd Oct 2012 Instructor: Sridhar Iyer IIT Bombay Domain Name System Map between host names and IP addresses People: many identifiers: name, Passport #, Internet hosts:

More information

Chapter 2 Application Layer

Chapter 2 Application Layer Chapter 2 Application Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

The Application Layer: DNS

The Application Layer: DNS Recap SMTP and email The Application Layer: DNS Smith College, CSC 9 Sept 9, 0 q SMTP process (with handshaking) and message format q Role of user agent access protocols q Port Numbers (can google this)

More information

CS 355. Computer Networking. Wei Lu, Ph.D., P.Eng.

CS 355. Computer Networking. Wei Lu, Ph.D., P.Eng. CS 355 Computer Networking Wei Lu, Ph.D., P.Eng. Chapter 2: Application Layer Overview: Principles of network applications? Introduction to Wireshark Web and HTTP FTP Electronic Mail: SMTP, POP3, IMAP

More information

DNS and P2P File Sharing

DNS and P2P File Sharing Computer Networks DNS and P2P File Sharing Based on Computer Networking, 4 th Edition by Kurose and Ross DNS: Domain Name System People: many identifiers: SSN, name, passport # Internet hosts, routers:

More information

Domain Name System (DNS) Reading: Section in Chapter 9

Domain Name System (DNS) Reading: Section in Chapter 9 Domain Name System (DNS) Reading: Section in Chapter 9 RFC 1034, STD 13 Name Syntax and rules for delegating authority over names Specify implementation of a distributed system that maps names to addresses

More information

DNS. Spring 2016 CS 438 Staff 1

DNS. Spring 2016 CS 438 Staff 1 DNS Spring 2016 CS 438 Staff 1 Host Names vs. IP addresses Host names Mnemonic name appreciated by humans Variable length, full alphabet of characters Provide little (if any) information about physical

More information

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

Lecture 2 CS 3311. An example of a middleware service: DNS Domain Name System Lecture 2 CS 3311 An example of a middleware service: DNS Domain Name System The problem Networked computers have names and IP addresses. Applications use names; IP uses for routing purposes IP addresses.

More information

CS 43: Computer Networks Naming and DNS. Kevin Webb Swarthmore College September 17, 2015

CS 43: Computer Networks Naming and DNS. Kevin Webb Swarthmore College September 17, 2015 CS 43: Computer Networks Naming and DNS Kevin Webb Swarthmore College September 17, 2015 Agenda Identifiers and addressing Domain Name System History Query sequences Record types Load balancing Recall:

More information

Application layer Protocols application transport

Application layer Protocols application transport Application layer Protocols application transport data link physical Network Applications and Application Layer Protocols Network applications: running in end systems (hosts) distributed, communicating

More information

416 Distributed Systems. Feb 24, 2016 DNS and CDNs

416 Distributed Systems. Feb 24, 2016 DNS and CDNs 416 Distributed Systems Feb 24, 2016 DNS and CDNs Outline DNS Design Content Distribution Networks 2 Naming How do we efficiently locate resources? DNS: name à IP address Challenge How do we scale this

More information

Content Distribu-on Networks (CDNs)

Content Distribu-on Networks (CDNs) Content Distribu-on Networks (CDNs) Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:0am in Architecture N101 hjp://www.cs.princeton.edu/courses/archive/spr12/cos461/ Second Half of the Course

More information

1. When will an IP process drop a datagram? 2. When will an IP process fragment a datagram? 3. When will a TCP process drop a segment?

1. When will an IP process drop a datagram? 2. When will an IP process fragment a datagram? 3. When will a TCP process drop a segment? Questions 1. When will an IP process drop a datagram? 2. When will an IP process fragment a datagram? 3. When will a TCP process drop a segment? 4. When will a TCP process resend a segment? CP476 Internet

More information

Domain Name System (DNS)

Domain Name System (DNS) Domain Name System (DNS) Instructor: Anirban Mahanti Office: ICT 745 Email: mahanti@cpsc.ucalgary.ca Class Location: ICT 121 Lectures: MWF 12:00 12:50 Notes derived from Computer Networking: A Top Down

More information

Distributed Systems. Naming

Distributed Systems. Naming Distributed Systems Naming Some slides here are adapted from DNS slide material by Kurose and Ross for their textbook: Computer Networking: A Top Down Approach Featuring the Internet Any problem in computer

More information

DNS: Domain Name System

DNS: Domain Name System DNS: Domain Name System CMPSCI 491G: Computer Networking Lab V. Arun Slides adapted from Liebeherr & Zarki, Kurose & Ross, Kermani DNS: domain name system people: many identifiers: SSN, name, passport

More information

NET0183 Networks and Communications

NET0183 Networks and Communications NET0183 Networks and Communications Lecture 25 DNS Domain Name System 8/25/2009 1 NET0183 Networks and Communications by Dr Andy Brooks DNS is a distributed database implemented in a hierarchy of many

More information

Protocolo HTTP. Web and HTTP. HTTP overview. HTTP overview

Protocolo HTTP. Web and HTTP. HTTP overview. HTTP overview Web and HTTP Protocolo HTTP Web page consists of objects Object can be HTML file, JPEG image, Java applet, audio file, Web page consists of base HTML-file which includes several referenced objects Each

More information

Lektion 2: Web als Graph / Web als System

Lektion 2: Web als Graph / Web als System Lektion 2: Web als Graph / Web als System Helmar Burkhart Informatik Universität Basel Helmar.Burkhart@... WT-2-1 Lernziele und Inhalt Web als Graph erkennen Grundelemente von sozialen Netzwerken sehen

More information

Application-layer protocols

Application-layer protocols Application layer Goals: Conceptual aspects of network application protocols Client server paradigm Service models Learn about protocols by examining popular application-level protocols HTTP DNS Application-layer

More information

internet technologies and standards

internet technologies and standards Institute of Telecommunications Warsaw University of Technology 2015 internet technologies and standards Piotr Gajowniczek Andrzej Bąk Michał Jarociński Internet application layer the email service The

More information

DATA COMMUNICATOIN NETWORKING

DATA COMMUNICATOIN NETWORKING DATA COMMUNICATOIN NETWORKING Instructor: Ouldooz Baghban Karimi Course Book: Computer Networking, A Top-Down Approach By: Kurose, Ross Introduction Course Overview Basics of Computer Networks Internet

More information

The Web History (I) The Web History (II)

The Web History (I) The Web History (II) Goals of Today s Lecture EE 122: The World Wide Web Ion Stoica TAs: Junda Liu, DK Moon, David Zats http://inst.eecs.berkeley.edu/~ee122/ (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues

More information

ICP. Cache Hierarchies. Squid. Squid Cache ICP Use. Squid. Squid

ICP. Cache Hierarchies. Squid. Squid Cache ICP Use. Squid. Squid Caching & CDN s 15-44: Computer Networking L-21: Caching and CDNs HTTP APIs Assigned reading [FCAB9] Summary Cache: A Scalable Wide- Area Cache Sharing Protocol [Cla00] Freenet: A Distributed Anonymous

More information

HTTP. Internet Engineering. Fall 2015. Bahador Bakhshi CE & IT Department, Amirkabir University of Technology

HTTP. Internet Engineering. Fall 2015. Bahador Bakhshi CE & IT Department, Amirkabir University of Technology HTTP Internet Engineering Fall 2015 Bahador Bakhshi CE & IT Department, Amirkabir University of Technology Questions Q1) How do web server and client browser talk to each other? Q1.1) What is the common

More information

Cours du 22 novembre

Cours du 22 novembre Cours du 22 novembre Couche application DNS Application Layer 2-2 DNS: domain name system people: many identifiers: SSN, name, passport # Internet hosts, routers: IP address (32 bit) - used for addressing

More information

Domain Name System E-mail WWW. Application Layer. Mahalingam Ramkumar Mississippi State University, MS. September 15, 2014.

Domain Name System E-mail WWW. Application Layer. Mahalingam Ramkumar Mississippi State University, MS. September 15, 2014. Application Layer Mahalingam Mississippi State University, MS September 15, 2014 Outline 1 DNS Records DNS Components 2 Message Transfer Fetching Emails 3 Applications We will focus on 3 applications DNS

More information

FTP: the file transfer protocol

FTP: the file transfer protocol File Transfer: FTP FTP: the file transfer protocol at host FTP interface FTP client local file system file transfer FTP remote file system transfer file to/from remote host client/ model client: side that

More information

Review of Networking Basics. Yao Wang Polytechnic University, Brooklyn, NY11201 yao@vision.poly.edu

Review of Networking Basics. Yao Wang Polytechnic University, Brooklyn, NY11201 yao@vision.poly.edu Review of Networking Basics Yao Wang Polytechnic University, Brooklyn, NY11201 yao@vision.poly.edu These slides are extracted from the slides made by authors of the book (J. F. Kurose and K. Ross), available

More information

Architecture of So-ware Systems HTTP Protocol. Mar8n Rehák

Architecture of So-ware Systems HTTP Protocol. Mar8n Rehák Architecture of So-ware Systems HTTP Protocol Mar8n Rehák HTTP Protocol Hypertext Transfer Protocol Designed to transfer hypertext informa8on over the computer networks Hypertext: Structured text with

More information

Domain Name System (DNS)

Domain Name System (DNS) Application Layer Domain Name System Domain Name System (DNS) Problem Want to go to www.google.com, but don t know the IP address Solution DNS queries Name Servers to get correct IP address Essentially

More information

DNS: Domain Names. DNS: Domain Name System. DNS: Root name servers. DNS name servers

DNS: Domain Names. DNS: Domain Name System. DNS: Root name servers. DNS name servers DNS: Domain Name System DNS: Domain Names People: many identifiers: SSN, name, Passport # Internet hosts, routers: Always: IP address (32 bit) - used for addressing datagrams Often: name, e.g., nifc14.wsu.edu

More information

600-152 People Data and the Web Forms and CGI CGI. Facilitating interactive web applications

600-152 People Data and the Web Forms and CGI CGI. Facilitating interactive web applications CGI Facilitating interactive web applications Outline In Informatics 1, worksheet 7 says You will learn more about CGI and forms if you enroll in Informatics 2. Now we make good on that promise. First

More information

How To Understand The Power Of A Content Delivery Network (Cdn)

How To Understand The Power Of A Content Delivery Network (Cdn) Overview 5-44 5-44 Computer Networking 5-64 Lecture 8: Delivering Content Content Delivery Networks Peter Steenkiste Fall 04 www.cs.cmu.edu/~prs/5-44-f4 Web Consistent hashing Peer-to-peer CDN Motivation

More information

CS640: Introduction to Computer Networks. Applications FTP: The File Transfer Protocol

CS640: Introduction to Computer Networks. Applications FTP: The File Transfer Protocol CS640: Introduction to Computer Networks Aditya Akella Lecture 4 - Application Protocols, Performance Applications FTP: The File Transfer Protocol user at host FTP FTP user client interface local file

More information

DATA COMMUNICATOIN NETWORKING

DATA COMMUNICATOIN NETWORKING DATA COMMUNICATOIN NETWORKING Instructor: Ouldooz Baghban Karimi Course Book: Computer Networking, A Top-Down Approach, Kurose, Ross Slides: - Course book Slides - Slides from Princeton University COS461

More information

C 1. Last Time. CSE 486/586 Distributed Systems Domain Name System. Review: Causal Ordering. Review: Causally Ordered Multicast.

C 1. Last Time. CSE 486/586 Distributed Systems Domain Name System. Review: Causal Ordering. Review: Causally Ordered Multicast. Last Time CSE 46/6 Distributed Systems Domain Name System Two multicast algorithms for total ordering Sequencer ISIS Multicast for causal ordering Uses vector timestamps Steve Ko Computer Sciences and

More information

Web Caching and CDNs. Aditya Akella

Web Caching and CDNs. Aditya Akella Web Caching and CDNs Aditya Akella 1 Where can bottlenecks occur? First mile: client to its ISPs Last mile: server to its ISP Server: compute/memory limitations ISP interconnections/peerings: congestion

More information

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

Motivation. Domain Name System (DNS) Flat Namespace. Hierarchical Namespace Motivation Domain Name System (DNS) IP addresses hard to remember Meaningful names easier to use Assign names to IP addresses Name resolution map names to IP addresses when needed Namespace set of all

More information

CSE/ISE 311: Systems Administra5on Networking 2

CSE/ISE 311: Systems Administra5on Networking 2 Networking 2 Por$ons courtesy Ellen Liu Outline IP address alloca$on NAT (Network address transla$on) Rou$ng configura$on DHCP (Dynamic host configura$on protocol) DNS (Domain name system) 16-2 IP Address

More information

Atomicity Strong need consistency 6

Atomicity Strong need consistency 6 CS640: Naming Computer AdityaAkella Lecture and the 17DNS Networks DNS Today Design The Road Ahead 2 Need Once How identified, naming to identify Naming Challenge: area? Naming DNS: to do name we hierarchy

More information

1 Introduction: Network Applications

1 Introduction: Network Applications 1 Introduction: Network Applications Some Network Apps E-mail Web Instant messaging Remote login P2P file sharing Multi-user network games Streaming stored video clips Internet telephone Real-time video

More information

Ch 6: Networking Services: NAT, DHCP, DNS, Multicasting

Ch 6: Networking Services: NAT, DHCP, DNS, Multicasting Ch 6: Networking Services: NAT, DHCP, DNS, Multicasting Magda El Zarki Prof. of CS Univ. of CA, Irvine Email: elzarki@uci.edu http: www.ics.uci.edu/~magda Overivew of NAT NAT: Network Address Translation

More information

CONTENT of this CHAPTER

CONTENT of this CHAPTER CONTENT of this CHAPTER v DNS v HTTP and WWW v EMAIL v SNMP 3.2.1 WWW and HTTP: Basic Concepts With a browser you can request for remote resource (e.g. an HTML file) Web server replies to queries (e.g.

More information

Project #2. CSE 123b Communications Software. HTTP Messages. HTTP Basics. HTTP Request. HTTP Request. Spring 2002. Four parts

Project #2. CSE 123b Communications Software. HTTP Messages. HTTP Basics. HTTP Request. HTTP Request. Spring 2002. Four parts CSE 123b Communications Software Spring 2002 Lecture 11: HTTP Stefan Savage Project #2 On the Web page in the next 2 hours Due in two weeks Project reliable transport protocol on top of routing protocol

More information

World Wide Web. Before WWW

World Wide Web. Before WWW World Wide Web Joao.Neves@fe.up.pt Before WWW Major search tools: Gopher and Archie Archie Search FTP archives indexes Filename based queries Gopher Friendly interface Menu driven queries João Neves 2

More information

DNS Domain Name System

DNS Domain Name System Domain Name System DNS Domain Name System The domain name system is usually used to translate a host name into an IP address Domain names comprise a hierarchy so that names are unique, yet easy to remember.

More information

The Web: some jargon. User agent for Web is called a browser: Web page: Most Web pages consist of: Server for Web is called Web server:

The Web: some jargon. User agent for Web is called a browser: Web page: Most Web pages consist of: Server for Web is called Web server: The Web: some jargon Web page: consists of objects addressed by a URL Most Web pages consist of: base HTML page, and several referenced objects. URL has two components: host name and path name: User agent

More information

3. The Domain Name Service

3. The Domain Name Service 3. The Domain Name Service n Overview and high level design n Typical operation and the role of caching n Contents of DNS Resource Records n Basic message formats n Configuring/updating Resource Records

More information

sessionx Desarrollo de Aplicaciones en Red Web Applications History (1) Content History (2) History (3)

sessionx Desarrollo de Aplicaciones en Red Web Applications History (1) Content History (2) History (3) sessionx Desarrollo de Aplicaciones en Red José Rafael Rojano Cáceres http://www.uv.mx/rrojano Web Applications 1 2 Content History (1) History Http CGI Web Tiers ARPANet Email, Ftp, IRC, news Explosive

More information

Ch 6: Networking Services: NAT, DHCP, DNS, Multicasting, NTP

Ch 6: Networking Services: NAT, DHCP, DNS, Multicasting, NTP Ch 6: Networking Services: NAT, DHCP, DNS, Multicasting, NTP Magda El Zarki Prof. of CS Univ. of CA, Irvine Email: elzarki@uci.edu http: www.ics.uci.edu/~magda Network Address Translation - NAT Private

More information

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt 1 Lecture 10: Application Layer 2 Application Layer Where our applications are running Using services provided by

More information

2.5 DNS The Internet s Directory Service

2.5 DNS The Internet s Directory Service 130 CHAPTER 2 APPLICATION LAYER e-mail is also provided by Google, Yahoo!, as well as just about every major university and corporation. With this service, the user agent is an ordinary Web browser, and

More information

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

Distributed Systems. 09. Naming. Paul Krzyzanowski. Rutgers University. Fall 2015 Distributed Systems 09. Naming Paul Krzyzanowski Rutgers University Fall 2015 October 7, 2015 2014-2015 Paul Krzyzanowski 1 Naming things Naming: map names to objects Helps with using, sharing, and communicating

More information

10. Java Servelet. Introduction

10. Java Servelet. Introduction Chapter 10 Java Servlets 227 10. Java Servelet Introduction Java TM Servlet provides Web developers with a simple, consistent mechanism for extending the functionality of a Web server and for accessing

More information

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

The Application Layer. CS158a Chris Pollett May 9, 2007. The Application Layer CS158a Chris Pollett May 9, 2007. Outline DNS E-mail More on HTTP The Domain Name System (DNS) To refer to a process on the internet we need to give an IP address and a port. These

More information

Communications Software. CSE 123b. CSE 123b. Spring 2003. Lecture 13: Load Balancing/Content Distribution. Networks (plus some other applications)

Communications Software. CSE 123b. CSE 123b. Spring 2003. Lecture 13: Load Balancing/Content Distribution. Networks (plus some other applications) CSE 123b CSE 123b Communications Software Spring 2003 Lecture 13: Load Balancing/Content Distribution Networks (plus some other applications) Stefan Savage Some slides courtesy Srini Seshan Today s class

More information

Application Layer. Abusayeed Saifullah. CS 5600 Computer Networks. These slides are adapted from Kurose and Ross

Application Layer. Abusayeed Saifullah. CS 5600 Computer Networks. These slides are adapted from Kurose and Ross Application Layer Abusayeed Saifullah CS 5600 Computer Networks These slides are adapted from Kurose and Ross Web caches (proxy server) goal: satisfy client request without involving origin server v user

More information

Internet Technologies Internet Protocols and Services

Internet Technologies Internet Protocols and Services QAFQAZ UNIVERSITY Computer Engineering Department Internet Technologies Internet Protocols and Services Dr. Abzetdin ADAMOV Chair of Computer Engineering Department aadamov@qu.edu.az http://ce.qu.edu.az/~aadamov

More information

Overview of Computer Networks

Overview of Computer Networks Overview of Computer Networks Client-Server Transaction Client process 4. Client processes response 1. Client sends request 3. Server sends response Server process 2. Server processes request Resource

More information

Chapter 27 Hypertext Transfer Protocol

Chapter 27 Hypertext Transfer Protocol Chapter 27 Hypertext Transfer Protocol Columbus, OH 43210 Jain@CIS.Ohio-State.Edu http://www.cis.ohio-state.edu/~jain/ 27-1 Overview Hypertext language and protocol HTTP messages Browser architecture CGI

More information

Data Communication I

Data Communication I Data Communication I Urban Bilstrup (E327) 090901 Urban.Bilstrup@ide.hh.se www2.hh.se/staff/urban Internet - Sweden, Northern Europe SUNET NORDUnet 2 Internet - Internet Addresses Everyone should be able

More information

HTTP Protocol. Bartosz Walter <Bartek.Walter@man.poznan.pl>

HTTP Protocol. Bartosz Walter <Bartek.Walter@man.poznan.pl> HTTP Protocol Bartosz Walter Agenda Basics Methods Headers Response Codes Cookies Authentication Advanced Features of HTTP 1.1 Internationalization HTTP Basics defined in

More information

Web. Services. Web Technologies. Today. Web. Technologies. Internet WWW. Protocols TCP/IP HTTP. Apache. Next Time. Lecture #3 2008 3 Apache.

Web. Services. Web Technologies. Today. Web. Technologies. Internet WWW. Protocols TCP/IP HTTP. Apache. Next Time. Lecture #3 2008 3 Apache. JSP, and JSP, and JSP, and 1 2 Lecture #3 2008 3 JSP, and JSP, and Markup & presentation (HTML, XHTML, CSS etc) Data storage & access (JDBC, XML etc) Network & application protocols (, etc) Programming

More information

TCP/IP Networking An Example

TCP/IP Networking An Example TCP/IP Networking An Example Introductory material. This module illustrates the interactions of the protocols of the TCP/IP protocol suite with the help of an example. The example intents to motivate the

More information

Goals of Today s Lecture. Separating Naming and Addressing. Host Names vs. IP addresses. Domain Name System (DNS) EE 122: Domain Name System

Goals of Today s Lecture. Separating Naming and Addressing. Host Names vs. IP addresses. Domain Name System (DNS) EE 122: Domain Name System Goals of Today s Lecture EE : Domain Name System Ion Stoica TAs: Junda Liu, DK Moon, David Zats http://inst.eecs.berkeley.edu/~ee/ (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues

More information

Network Technologies

Network Technologies Network Technologies Glenn Strong Department of Computer Science School of Computer Science and Statistics Trinity College, Dublin January 28, 2014 What Happens When Browser Contacts Server I Top view:

More information

Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer

Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer CPSC 360 Network Programming Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer Systems Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu

More information

Internet Technologies. World Wide Web (WWW) Proxy Server Network Address Translator (NAT)

Internet Technologies. World Wide Web (WWW) Proxy Server Network Address Translator (NAT) Internet Technologies World Wide Web (WWW) Proxy Server Network Address Translator (NAT) What is WWW? System of interlinked Hypertext documents Text, Images, Videos, and other multimedia documents navigate

More information

By Bardia, Patit, and Rozheh

By Bardia, Patit, and Rozheh HTTP By Bardia, Patit, and Rozheh HTTP - Introduction - Hyper Text Transfer Protocol -uses the TCP/IP technology -has had the most impact on the World Wide Web (WWW) - specs in RFC 2616 (RFC2616) HTTP

More information

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

Names & Addresses. Names & Addresses. Names vs. Addresses. Identity. Names vs. Addresses. CS 194: Distributed Systems: Naming Names & Addresses CS 9: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of California, Berkeley Berkeley, CA 970-77 What is a?

More information

http://alice.teaparty.wonderland.com:23054/dormouse/bio.htm

http://alice.teaparty.wonderland.com:23054/dormouse/bio.htm Client/Server paradigm As we know, the World Wide Web is accessed thru the use of a Web Browser, more technically known as a Web Client. 1 A Web Client makes requests of a Web Server 2, which is software

More information

HW2 Grade. CS585: Applications. Traditional Applications SMTP SMTP HTTP 11/10/2009

HW2 Grade. CS585: Applications. Traditional Applications SMTP SMTP HTTP 11/10/2009 HW2 Grade 70 60 CS585: Applications 50 40 30 20 0 0 2 3 4 5 6 7 8 9 0234567892022223242526272829303323334353637383940442 CS585\CS485\ECE440 Fall 2009 Traditional Applications SMTP Simple Mail Transfer

More information

Measuring the Web: Part I - - Content Delivery Networks. Prof. Anja Feldmann, Ph.D. Dr. Ramin Khalili Georgios Smaragdakis, PhD

Measuring the Web: Part I - - Content Delivery Networks. Prof. Anja Feldmann, Ph.D. Dr. Ramin Khalili Georgios Smaragdakis, PhD Measuring the Web: Part I - - Content Delivery Networks Prof. Anja Feldmann, Ph.D. Dr. Ramin Khalili Georgios Smaragdakis, PhD Acknowledgement Material presented in these slides is borrowed from presentajons

More information

Outline Definition of Webserver HTTP Static is no fun Software SSL. Webserver. in a nutshell. Sebastian Hollizeck. June, the 4 th 2013

Outline Definition of Webserver HTTP Static is no fun Software SSL. Webserver. in a nutshell. Sebastian Hollizeck. June, the 4 th 2013 Definition of in a nutshell June, the 4 th 2013 Definition of Definition of Just another definition So what is it now? Example CGI php comparison log-file Definition of a formal definition Aisaprogramthat,usingthe

More information

INTERNET DOMAIN NAME SYSTEM

INTERNET DOMAIN NAME SYSTEM INTERNET DOMAIN NAME SYSTEM http://www.tutorialspoint.com/internet_technologies/internet_domain_name_system.htm Copyright tutorialspoint.com Overview When DNS was not into existence, one had to download

More information

HTTP Caching & Cache-Busting for Content Publishers

HTTP Caching & Cache-Busting for Content Publishers HTTP Caching & Cache-Busting for Content Publishers Michael J. Radwin http://public.yahoo.com/~radwin/ OSCON 2005 Thursday, August 4th, 2005 1 1 Agenda HTTP in 3 minutes Caching concepts Hit, Miss, Revalidation

More information

Internet Content Distribution

Internet Content Distribution Internet Content Distribution Chapter 4: Content Distribution Networks (TUD Student Use Only) Chapter Outline Basics of content distribution networks (CDN) Why CDN? How do they work? Client redirection

More information

DNS and electronic mail. DNS purposes

DNS and electronic mail. DNS purposes DNS and electronic mail Section 9.1.3 in the textbook DNS purposes Originally purpose was to translate hostnames into IP addresses www.csd. is easier to remember than 129.100.23.247 Lets us do load balancing

More information

DNS. Outline. What is DNS? How resolve name IP addr? DNS (Domain Name Service) is primarily used to. usable addresses, e.g., IP addresses.

DNS. Outline. What is DNS? How resolve name IP addr? DNS (Domain Name Service) is primarily used to. usable addresses, e.g., IP addresses. 15-441 Lecture 7 Outline DNS DNS Design DNS Today Copyright Seth Goldstein, 2008 (Extra credit, remind me at end) Based on slides from previous 441 lectures 15-441 2008 1 15-441 2008 2 What is DNS? How

More information

The Hyper-Text Transfer Protocol (HTTP)

The Hyper-Text Transfer Protocol (HTTP) The Hyper-Text Transfer Protocol (HTTP) Antonio Carzaniga Faculty of Informatics University of Lugano October 4, 2011 2005 2007 Antonio Carzaniga 1 HTTP message formats Outline HTTP methods Status codes

More information

CSC2231: Akamai. http://www.cs.toronto.edu/~stefan/courses/csc2231/05au. Stefan Saroiu Department of Computer Science University of Toronto

CSC2231: Akamai. http://www.cs.toronto.edu/~stefan/courses/csc2231/05au. Stefan Saroiu Department of Computer Science University of Toronto CSC2231: Akamai http://www.cs.toronto.edu/~stefan/courses/csc2231/05au Stefan Saroiu Department of Computer Science University of Toronto Administrivia Project proposals due today!!! No lecture on Monday:

More information