COMP 150-IDS: Internet Scale Distributed Systems (Spring 2017) URIs and RFC 3986
|
|
- Daniella Black
- 6 years ago
- Views:
Transcription
1 COMP 150-IDS: Internet Scale Distributed Systems (Spring 2017) URIs and RFC 3986 Noah Mendelsohn Tufts University Web: Copyright: 2012, 2013, 2015, 2016 & 2017 Noah Mendelsohn
2 Goals What is named when we use the Web Learn the detailed design of URIs See how the naming principles we ve explored are reflected in Web architecture and URIs Learn to read RFCs and to study the art of writing specifications Understand why grammars are important 2
3 Review: Naming Questions 3
4 Some characteristics of names Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too few names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
5 Review Web Architecture Basics
6 Architecting a universal Web Identification: URIs Interaction: HTTP Data formats: HTML, JPEG, etc.
7 What Happens When We Browse a Web Page? Consider: What are all the things that are named in the interaction between browser and Web Server?
8 The user clicks on a link URI is
9 The http scheme tells client to send HTTP GET msg URI is HTTP GET
10 The client sends an HTTP GET URI is HTTP GET demo1/test.html Host: webarch.noahdemo.com GET /demo1/test.html HTTP/1.0 Host: webarch.noahdemo.com User-Agent: Noahs Demo HttpClient v1.0 Accept: */* Accept-language: en-us
11 HTTP/ OK Date: Tue, 28 Aug :49:33 GMT Server: Apache Transfer-Encoding: HTTP GET chunked Content-Type: text/html The server sends an HTTP Response HTTP Status Code 200 Means Success! <html> <head> <title>demo #1</title> </head> <body> <h1>a very simple Web page</h1> </body> </html> Host: webarch.noahdemo.com demo1/test.html HTTP RESPONSE
12 HTTP/ OK Date: Tue, 28 Aug :49:33 GMT Server: Apache Transfer-Encoding: HTTP GET chunked Content-Type: text/html The server sends an HTTP Response <html> <head> <title>demo #1</title> </head> <body> <h1>a very simple Web page</h1> </body> </html> Host: webarch.noahdemo.com demo1/test.html HTTP RESPONSE The representation returned is an HTML document
13 Architecting a universal Web Identification: URIs Interaction: HTTP Data formats: HTML, JPEG, etc.
14 Assign URIs for all Resources A resource is something that has information (e.g. a Web page) If a resource doesn t have a URI, you can t link to it it s not part of the Web.
15 The Structure of URIs 16
16 A simple URI
17 A simple URI
18 A simple URI Scheme
19 Schemes Scheme Schemes let us name different kinds of things, accessed in different ways.
20 A simple URI Authority Authority: who controls allocation of this name?
21 A simple URI // Fixed in grammar to indicate authority follows
22 A simple URI // Fixed in grammar to indicate authority follows Tim BL was asked if he had any regrets about the Web Mr. Berners-Lee smiled and admitted he might make one change a small one. He would get rid of the double slash // after the http: in Web addresses. The double slash, though a programming convention at the time, turned out to not be really necessary, Mr. Berners-Lee explained. Look at all the paper and trees, he said, that could have been saved if people had not had to write or type out those slashes on paper over the years not to mention the human labor and time spent typing those two keystrokes countless millions of times in browser address boxes. (Today s browsers, of course, automatically fill in the preamble when a user types a Web address.) From:
23 A simple URI Path Path: provides for hierarchical naming also supports../xxx relative syntax
24 A simple URI Path Path: provides for hierarchical naming maps well to hierarchical information systems
25 A more complex URI
26 A more complex URI Query component The query is part of the URI... However, in many cases, all URIs with a common path are processed by the same server-side code Also HTML forms are useful for filling in the query components
27 Fragments Fragments identify parts of documents Fragment interpretation depends on the media type of the returned representation (text/html) this is useful but tricky and causes a variety of problems.
28 Characteristics of URIs 29
29 Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
30 Some characteristics of URIs Both supported Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
31 Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Depends on scheme Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
32 Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Yes URIs on the side of a bus is an important goal Opaque vs. data-carrying? but some URIs are complex Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
33 Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Allowed but not required Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
34 Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) With most schemes, absolute URIs are global Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
35 Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) FILE: scheme is not global! Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
36 Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) NO!! Status code 404 is key to Web scalability Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
37 Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Some aliases required e.g.: http vs. HTTP worst cases depend on users Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
38 Depends on scheme and user see Metadata in URI finding Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
39 URIs are the structuring mechanism for the Web as a whole Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
40 Designed to allow mappings to hierarchical systems Some characteristics of URIs Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
41 Some characteristics of URIs Decentralized allocation except: Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
42 Some characteristics of URIs scheme names centrally registered with IANA Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
43 Some characteristics of URIs For http and mailto schemes: central Domain Name (DNS) registration Absolute vs. relative required for authority Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
44 Some characteristics of URIs Yes. E.g.: ASCII-only, spaces and some punctuation must be %encoded Absolute vs. relative Address (locator)? Human readable? Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
45 Some characteristics of URIs Absolute vs. relative URIs are silent on this but HTTP Address (locator)? redirection provides for indirect Human readable? identification Short/convenient? Global (context independent)? Ensures referent exists? Aliases? (too many names) Opaque vs. data-carrying? Reflect structure of system? Supports navigation: e.g...? Who can generate them? Constraints from environment E.g. no - in C/C++ variable names Indirect identification allowed?
46 Grammars 47
47 What are formal grammars? Grammars are formal languages for specifying other languages A grammar allows you to: Always: determine whether a given string is in the specified language Often: associate structures in the grammar with parts of the string The Chomsky hierarchy: Different grammars have different expressive power Regular expressions recognize regular languages (ab*) a, ab, abb, abbb Context-free grammars are more powerful: typically used for programming languages The ABNF used in RFC s is a context-free grammar Context-free grammars can be recognized (parsed) by a finite-state pushdown automaton Tutorial at:
48 Why use formal grammars for specifying languages? Precise and rigorous Less ambiguous than an explanation in English Membership of a string in a language can be checked automatically Tools to process the language can often be constructed automatically from the grammar
49 ABNF: the grammar for IETF RFCs ABNF example from RFC 3986: URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ] ABNF is itself specified in RFC 2234 ABNF is convenient to use in fixed-font specification documents like RFCs
50 Summary 51
51 Summary The structure and interpretation of URIs is set out in RFC 3986 URIs embody many of the principles we have studied Formal grammars are powerful tools for specifying names The design decisions embodied in URIs are keys to the success of the Web!!
Naming System Design Tradeoffs
COMP 117: Internet Scale Distributed Systems (Spring 2018) Naming System Design Tradeoffs Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah Copyright: 2012, 2013,
More informationDocument Architecture: HTML & CSS
COMP 150-IDS: Internet Scale Distributed Systems (Spring 2018) Document Architecture: HTML & CSS Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah Copyright 2012,
More informationAnnouncements Fawzi Emad, Computer Science Department, UMCP
Announcements You must come to lecture for which you are registered! If you are going to be routinely late (or leave early) please try to adjust your class schedule. Look over class webpage Lectures slides
More informationAnnouncements Fawzi Emad, Computer Science Department, UMCP
Announcements Look over class webpage Lectures slides are being posted TA Office hours will start next week Make sure you are downloading Komodo Edit and not Komodo IDE 1 Very Brief History of The Internet
More informationVersioning, Extensibility & Postel s Law
COMP 150-IDS: Internet Scale Distributed Systems (Spring 2016) Versioning, Extensibility & Postel s Law Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah Copyright
More informationWorld-Wide Web Protocols CS 571 Fall Kenneth L. Calvert All rights reserved
World-Wide Web Protocols CS 571 Fall 2006 2006 Kenneth L. Calvert All rights reserved World-Wide Web The Information Universe World-Wide Web structure: hypertext Nonlinear presentation of information Key
More informationHTTP Reading: Section and COS 461: Computer Networks Spring 2013
HTTP Reading: Section 9.1.2 and 9.4.3 COS 461: Computer Networks Spring 2013 1 Recap: Client-Server Communication Client sometimes on Initiates a request to the server when interested E.g., Web browser
More informationComputer Networks. Wenzhong Li. Nanjing University
Computer Networks Wenzhong Li Nanjing University 1 Chapter 8. Internet Applications Internet Applications Overview Domain Name Service (DNS) Electronic Mail File Transfer Protocol (FTP) WWW and HTTP Content
More informationUR what? ! URI: Uniform Resource Identifier. " Uniquely identifies a data entity " Obeys a specific syntax " schemename:specificstuff
CS314-29 Web Protocols URI, URN, URL Internationalisation Role of HTML and XML HTTP and HTTPS interacting via the Web UR what? URI: Uniform Resource Identifier Uniquely identifies a data entity Obeys a
More informationCSCI-1680 WWW Rodrigo Fonseca
CSCI-1680 WWW Rodrigo Fonseca Based partly on lecture notes by Sco2 Shenker and John Janno6 Administrivia HW3 out today Will cover HTTP, DNS, TCP TCP Milestone II coming up on Monday Make sure you sign
More informationProduced by. Mobile Application Development. Higher Diploma in Science in Computer Science. Eamonn de Leastar
Mobile Application Development Higher Diploma in Science in Computer Science Produced by Eamonn de Leastar (edeleastar@wit.ie) Department of Computing, Maths & Physics Waterford Institute of Technology
More informationWEB TECHNOLOGIES CHAPTER 1
WEB TECHNOLOGIES CHAPTER 1 WEB ESSENTIALS: CLIENTS, SERVERS, AND COMMUNICATION Modified by Ahmed Sallam Based on original slides by Jeffrey C. Jackson THE INTERNET Technical origin: ARPANET (late 1960
More informationThe HTTP protocol. Fulvio Corno, Dario Bonino. 08/10/09 http 1
The HTTP protocol Fulvio Corno, Dario Bonino 08/10/09 http 1 What is HTTP? HTTP stands for Hypertext Transfer Protocol It is the network protocol used to delivery virtually all data over the WWW: Images
More informationCSCI-1680 WWW Rodrigo Fonseca
CSCI-1680 WWW Rodrigo Fonseca Based partly on lecture notes by Scott Shenker and John Jannotti Precursors 1945, Vannevar Bush, Memex: a device in which an individual stores all his books, records, and
More informationCS4/MSc Computer Networking. Lecture 3: The Application Layer
CS4/MSc Computer Networking Lecture 3: The Application Layer Computer Networking, Copyright University of Edinburgh 2005 Network Applications Examine a popular network application: Web Client-server architecture
More informationLecture 7b: HTTP. Feb. 24, Internet and Intranet Protocols and Applications
Internet and Intranet Protocols and Applications Lecture 7b: HTTP Feb. 24, 2004 Arthur Goldberg Computer Science Department New York University artg@cs.nyu.edu WWW - HTTP/1.1 Web s application layer protocol
More informationWeb, HTTP and Web Caching
Web, HTTP and Web Caching 1 HTTP overview HTTP: hypertext transfer protocol Web s application layer protocol client/ model client: browser that requests, receives, displays Web objects : Web sends objects
More informationChapter 3: Uniform Resource Identifiers References:
3. Uniform Resource Identifiers 3-1 Chapter 3: Uniform Resource Identifiers References: Erik Wilde: World Wide Web Technische Grundlagen (in German). Springer, 1999, ISBN 3-540-64700-7, 641 Seiten. NCSA
More information2. Introduction to Internet Applications
2. Introduction to Internet Applications 1. Representation and Transfer 2. Web Protocols 3. Some Other Application Layer Protocols 4. Uniform Resource Identifiers (URIs) 5. Uniform Resource Locators (URLs)
More informationLecture 6 Application Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it
Lecture 6 Application Layer Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Application-layer protocols Application: communicating, distributed processes running in network hosts
More informationCOMP 117: Internet-scale Distributed Systems Lessons from the World Wide Web
COMP 117: Internet Scale Distributed Systems (Spring 2018) COMP 117: Internet-scale Distributed Systems Lessons from the World Wide Web Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah
More informationObsoletes: 2070, 1980, 1942, 1867, 1866 Category: Informational June 2000
Network Working Group Request for Comments: 2854 Obsoletes: 2070, 1980, 1942, 1867, 1866 Category: Informational D. Connolly World Wide Web Consortium (W3C) L. Masinter AT&T June 2000 The text/html Media
More informationCSE 333 Lecture HTTP
CSE 333 Lecture 19 -- HTTP Hal Perkins Department of Computer Science & Engineering University of Washington Administrivia Server-side programming exercise due Wed. morning HW4 due a week later - How s
More informationApplication Layer: The Web and HTTP Sec 2.2 Prof Lina Battestilli Fall 2017
CSC 401 Data and Computer Communications Networks Application Layer: The Web and HTTP Sec 2.2 Prof Lina Battestilli Fall 2017 Outline Application Layer (ch 2) 2.1 principles of network applications 2.2
More informationApplication Protocols and HTTP
Application Protocols and HTTP 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross Administrivia Lab #0 due
More informationMaxware, Pirsenteret D. Zigmond WebTV Networks, Inc. R. Petke UUNET Technologies November 1999
Network Working Group Request for Comments: 2718 Category: Informational L. Masinter Xerox Corporation H. Alvestrand Maxware, Pirsenteret D. Zigmond WebTV Networks, Inc. R. Petke UUNET Technologies November
More informationCSE 333 Lecture HTTP
CSE 333 Lecture 19 -- HTTP Hal Perkins Paul G. Allen School of Computer Science & Engineering University of Washington Administrivia HW4 due a week from Thursday - How s it look? Today: http; finish networking/web
More informationIntroduction to TCP/IP
COMP 150-IDS: Internet Scale Distributed Systems (Spring 2016) Introduction to TCP/IP Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah Copyright 2012, 2015 &
More informationApplication Layer. Applications and application-layer protocols. Goals:
Application Layer Goals: Conceptual aspects of network application protocols Client paradigm Service models Learn about protocols by examining popular application-level protocols HTTP DNS 1 Applications
More informationIntroduction to: The Architecture of the Internet
COMP 150-IDS: Internet Scale Distributed Systems (Spring 2016) Introduction to: The Architecture of the Internet Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah
More informationHyperText Transfer Protocol
Outline Introduce Socket Programming Domain Name Service (DNS) Standard Application-level Protocols email (SMTP) HTTP HyperText Transfer Protocol Defintitions A web page consists of a base HTML-file which
More informationMetcalfe s Law : Why is the Web so Big?
COMP 117: Internet Scale Distributed Systems (Spring 2018) Metcalfe s Law : Why is the Web so Big? Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah Copyright
More informationWeb History. Systemprogrammering 2006 Föreläsning 9 Web Services. Internet Hosts. Web History (cont) 1945: 1989: Topics 1990:
Systemprogrammering 2006 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. Describes
More informationC22: Browser & Web Server Communication
CISC 3120 C22: Browser & Web Server Communication Hui Chen Department of Computer & Information Science CUNY Brooklyn College 11/01/2017 CUNY Brooklyn College 1 Web Application Architecture Client apps
More informationNetworking. INFO/CSE 100, Spring 2006 Fluency in Information Technology.
Networking INFO/CSE 100, Spring 2006 Fluency in Information Technology http://www.cs.washington.edu/100 Apr-3-06 networks @ university of washington 1 Readings and References Reading Fluency with Information
More informationIntroduction to: The Architecture of the Internet
COMP 117: Internet Scale Distributed Systems (Spring 2018) Introduction to: The Architecture of the Internet Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah
More informationGiving credit where credit is due
CSCE 230J Computer Organization Web Services Dr. Steve Goddard goddard@cse.unl.edu Giving credit where credit is due Most of slides for this lecture are based on slides created by Drs. Bryant and O Hallaron,
More informationUniform Resource Identifier (URI): Generic Syntax
Network Working Group Request for Comments: 3986 Obsoletes: 2732, 2396, 1808 STD: 66 Updates: 1738 Category: Standards Track T. Berners-Lee W3C/MIT R. Fielding Day Software L. Masinter Adobe Systems January
More informationRequest for Comments: Obsoletes: 2732, 2396, January 2005
Network Working Group Request for Comments: 3986 STD: 66 Updates: 1738 Obsoletes: 2732, 2396, 1808 Category: Standards Track T. Berners-Lee W3C/MIT R. Fielding Day Software L. Masinter Adobe Systems January
More information3. Uniform Resource Identifiers 3-1
3. Uniform Resource Identifiers 3-1 Chapter 3: Uniform Resource Identifiers References: Erik Wilde: World Wide Web Technische Grundlagen (in German). Springer, 1999, ISBN 3-540-64700-7, 641 Seiten. NCSA
More informationAn HTTP-Based Versioning Mechanism for Linked Data. Presentation at
Herbert Van de Sompel Robert Sanderson Michael L. Nelson Lyudmila Balakireva Harihar Shankar Scott Ainsworth Memento is partially funded by the Library of Congress Presentation at http://bit.ly/ac9ghh
More informationCOMP 150-IDS: Internet Scale Distributed Systems (Spring 2016) What s in a name?
COMP 150-IDS: Internet Scale Distributed Systems (Spring 2016) What s in a name? Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah Copyright 2012, 2013,2015 &
More informationScalability, Performance & Caching
COMP 150-IDS: Internet Scale Distributed Systems (Spring 2015) Scalability, Performance & Caching Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah Copyright
More informationUnraveling the Mysteries of J2EE Web Application Communications
Unraveling the Mysteries of J2EE Web Application Communications An HTTP Primer Peter Koletzke Technical Director & Principal Instructor Common Problem What we ve got here is failure to commun cate. Captain,
More informationCSc 450/550 Computer Networks Network Architectures & Client-Server Model
CSc 450/550 Computer Networks Network Architectures & Client-Server Model Jianping Pan Summer 2007 5/17/07 CSc 450/550 1 Last lectures So far, nuts and bolts views of the Internet Internet evolution and
More informationReview of Previous Lecture
Review of Previous Lecture Network access and physical media Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models Some slides are in courtesy of J. Kurose
More information[MS-INFODCF]: InfoPath Data Connection File Download Protocol. Intellectual Property Rights Notice for Open Specifications Documentation
[MS-INFODCF]: Intellectual Property Rights Notice for Open Specifications Documentation Technical Documentation. Microsoft publishes Open Specifications documentation for protocols, file formats, languages,
More informationScalability, Performance & Caching
COMP 150-IDS: Internet Scale Distributed Systems (Spring 2018) Scalability, Performance & Caching Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah Copyright
More informationMulti-agent and Semantic Web Systems: Linked Open Data
Multi-agent and Semantic Web Systems: Linked Open Data Fiona McNeill School of Informatics 14th February 2013 Fiona McNeill Multi-agent Semantic Web Systems: *lecture* Date 0/27 Jena Vcard 1: Triples Fiona
More informationInternet Engineering Task Force (IETF) Category: Standards Track. M. Petit-Huguenin Impedance Mismatch November 2013
Internet Engineering Task Force (IETF) Request for Comments: 7064 Category: Standards Track ISSN: 2070-1721 S. Nandakumar G. Salgueiro P. Jones Cisco Systems M. Petit-Huguenin Impedance Mismatch November
More informationWeb. Computer Organization 4/16/2015. CSC252 - Spring Web and HTTP. URLs. Kai Shen
Web and HTTP Web Kai Shen Web: the Internet application for distributed publishing and viewing of content Client/server model server: hosts published content and sends the content upon request client:
More informationInternet Engineering Task Force (IETF) Request for Comments: 8297 Category: Experimental December 2017 ISSN:
Internet Engineering Task Force (IETF) K. Oku Request for Comments: 8297 Fastly Category: Experimental December 2017 ISSN: 2070-1721 Abstract An HTTP Status Code for Indicating Hints This memo introduces
More informationWeb Technology. COMP476 Networked Computer Systems. Hypertext and Hypermedia. Document Representation. Client-Server Paradigm.
Web Technology COMP476 Networked Computer Systems - Paradigm The method of interaction used when two application programs communicate over a network. A server application waits at a known address and a
More informationNetwork Working Group Request for Comments: 2318 Category: Informational W3C March 1998
Network Working Group Request for Comments: 2318 Category: Informational H. Lie B. Bos C. Lilley W3C March 1998 The text/css Media Type Status of this Memo This memo provides information for the Internet
More informationApplication Level Protocols
Application Level Protocols 2 Application Level Protocols Applications handle different kinds of content e.g.. e-mail, web pages, voice Different types of content require different kinds of protocols Application
More informationNotes beforehand... For more details: See the (online) presentation program.
Notes beforehand... Notes beforehand... For more details: See the (online) presentation program. Topical overview: main arcs fundamental subjects advanced subject WTRs Lecture: 2 3 4 5 6 7 8 Today: the
More informationHTML4 TUTORIAL PART 2
HTML4 TUTORIAL PART 2 STEP 1 - CREATING A WEB DESIGN FOLDER ON YOUR H DRIVE It will be necessary to create a folder in your H Drive to keep all of your web page items for this tutorial. Follow these steps:
More informationWeb Client And Server
Web Client And Server Project Part A Overview In this part of the project, you and your partner will build a simple web client and a succession of servers to which it can connect. The goal is to slowly
More informationExpires in 6 months September Internet Public Key Infrastructure Online Certificate Status Protocol - OCSP <draft-ietf-pkix-ocsp-00.
HTTP/1.1 200 OK Date: Tue, 09 Apr 2002 06:26:11 GMT Server: Apache/1.3.20 (Unix) Last-Modified: Thu, 23 Oct 1997 15:29:00 GMT ETag: "304c31-471a-344f6d3c" Accept-Ranges: bytes Content-Length: 18202 Connection:
More informationWeb Programming. Based on Notes by D. Hollinger Also Java Network Programming and Distributed Computing, Chs.. 9,10 Also Online Java Tutorial, Sun.
Web Programming Based on Notes by D. Hollinger Also Java Network Programming and Distributed Computing, Chs.. 9,10 Also Online Java Tutorial, Sun. 1 World-Wide Wide Web (Tim Berners-Lee & Cailliau 92)
More informationFrom Web Documents to Web Applications
COMP 150-IDS: Internet Scale Distributed Systems (Spring 2016) From Web Documents to Web Applications Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah Copyright
More information2/13/2014. A protocol is an agreed-upon convention that defines how communication occurs between two (or more?) endpoints
Rensselaer Polytechnic Institute CSCI-4220 Network Programming David Goldschmidt, Ph.D. A protocol is an agreed-upon convention that defines how communication occurs between two (or more?) endpoints All
More informationHTTP and Web Content Delivery
HTTP and Web Content Delivery COS 461: Computer Networks Spring 2011 Mike Freedman hgp://www.cs.princeton.edu/courses/archive/spring11/cos461/ 2 Outline Layering HTTP HTTP conneclon management and caching
More information1.1 A Brief Intro to the Internet
1.1 A Brief Intro to the Internet - Origins - ARPAnet - late 1960s and early 1970s - Network reliability - For ARPA-funded research organizations - BITnet, CSnet - late 1970s & early 1980s - email and
More informationNetworking Fundamentals
ECPE 170 Jeff Shafer University of the Pacific Networking Fundamentals 2 Lab Schedule AcEviEes Assignments Due Today Wednesday Apr 24 th Networking Fundamentals Lab 12 due by 11:59pm Last 3 days of class
More informationUFCEKG Lecture 2. Mashups N. H. N. D. de Silva (Slides adapted from Prakash Chatterjee, UWE)
UFCEKG 20 2 Data, Schemas & Applications Lecture 2 Introduction to thewww WWW, URLs, HTTP, Services and Mashups N. H. N. D. de Silva (Slides adapted from Prakash Chatterjee, UWE) Suppose all the information
More informationRequest for Comments: 3405 BCP: 65 October 2002 Category: Best Current Practice
Network Working Group M. Mealling Request for Comments: 3405 VeriSign BCP: 65 October 2002 Category: Best Current Practice Dynamic Delegation Discovery System (DDDS) Part Five: URI.ARPA Assignment Procedures
More informationApplication Layer Protocols
Application Layer Protocols Dr. Ihsan Ullah Department of Computer Science & IT University of Balochistan, Quetta Pakistan Email: ihsan.ullah.cs@gmail.com These slides are adapted from the slides accompanying
More informationEE 122: HyperText Transfer Protocol (HTTP)
Background EE 122: HyperText Transfer Protocol (HTTP) Ion Stoica Nov 25, 2002 World Wide Web (WWW): a set of cooperating clients and servers that communicate through HTTP HTTP history - First HTTP implementation
More informationNetwork Security (NetSec)
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Network Security (NetSec) IN2101 WS 16/17 Prof. Dr.-Ing. Georg Carle Cornelius Diekmann Version: October
More informationCSCI312 Principles of Programming Languages!
CSCI312 Principles of Programming Languages!! Chapter 3 Regular Expression and Lexer Xu Liu Recap! Copyright 2006 The McGraw-Hill Companies, Inc. Clite: Lexical Syntax! Input: a stream of characters from
More informationApplication Layer Introduction; HTTP; FTP
Application Layer Introduction; HTTP; FTP Tom Kelliher, CS 325 Feb. 4, 2011 1 Administrivia Announcements Assignment Read 2.4 2.6. From Last Time Packet-switched network characteristics; protocol layers
More informationRequest for Comments: 2295 Category: Experimental Hewlett-Packard March 1998
Network Working Group Request for Comments: 2295 Category: Experimental K. Holtman TUE A. Mutz Hewlett-Packard March 1998 Status of this Memo Transparent Content Negotiation in HTTP This memo defines an
More informationInternet Engineering Task Force (IETF) Request for Comments: 7725 Category: Standards Track February 2016 ISSN:
Internet Engineering Task Force (IETF) T. Bray Request for Comments: 7725 Textuality Category: Standards Track February 2016 ISSN: 2070-1721 Abstract An HTTP Status Code to Report Legal Obstacles This
More informationWorld Wide Web. Before WWW
FEUP, João Neves World Wide Web Joao.Neves@fe.up.pt CAcer t WoT User Digitally signed by CAcert WoT User DN: cn=cacert WoT User, email=joao.neves@i nescporto.pt, email=b2d718a54c3 83ce1a9d48aa87e2ef 687ee8769f0
More informationexpires in six months October 1997 Internet Public Key Infrastructure Operational Protocols: FTP and HTTP <draft-ietf-pkix-opp-ftp-http-01.
HTTP/1.1 200 OK Date: Tue, 09 Apr 2002 06:26:48 GMT Server: Apache/1.3.20 (Unix) Last-Modified: Tue, 21 Oct 1997 17:15:00 GMT ETag: "361b18-2953-344ce314" Accept-Ranges: bytes Content-Length: 10579 Connection:
More informationCMSC 332 Computer Networking Web and FTP
CMSC 332 Computer Networking Web and FTP Professor Szajda CMSC 332: Computer Networks Project The first project has been posted on the website. Check the web page for the link! Due 2/2! Enter strings into
More informationInterpreter. Scanner. Parser. Tree Walker. read. request token. send token. send AST I/O. Console
Scanning 1 read Interpreter Scanner request token Parser send token Console I/O send AST Tree Walker 2 Scanner This process is known as: Scanning, lexing (lexical analysis), and tokenizing This is the
More informationLinked Data Semantic Web Technologies 1 (2010/2011)
Linked Data Semantic Web Technologies 1 (2010/2011) Sebastian Rudolph Andreas Harth Institute AIFB www.kit.edu Data on the Web Increasingly, web sites provide direct access to data Using Semantic Web standards,
More informationAnnouncements. 1. Class webpage: Have you been reading the announcements? Lecture slides and coding examples will be posted
Announcements 1. Class webpage: Have you been reading the announcements? Lecture slides and coding examples will be posted 2. Install Komodo Edit on your computer right away. 3. Bring laptops to next class
More informationProject 1: Web Client and Server
Project 1: Web Client and Server Overview In this part of the project, your group will build a simple web client and a succession of servers to which it can connect. In addition you, will learn how to
More informationCS 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 DNS
More informationWeb Design and HTML. Web Page vs Web Site. Navigation. Links. A web page is a single page viewable using web browser. A web site is a set of web pages
Web Page vs Web Site Web Design and HTML Lecture 14 COMPSCI111/111G SS 2018 A web page is a single page viewable using web browser Should be visually appealing, informative A web site is a set of web pages
More information0 0& Basic Background. Now let s get into how things really work!
+,&&-# Department of Electrical Engineering and Computer Sciences University of California Berkeley Basic Background General Overview of different kinds of networks General Design Principles Architecture
More informationCS 43: Computer Networks. Layering & HTTP September 7, 2018
CS 43: Computer Networks Layering & HTTP September 7, 2018 Last Class: Five-layer Internet Model Application: the application (e.g., the Web, Email) Transport: end-to-end connections, reliability Network:
More informationIntroduc)on to Computer Networks
Introduc)on to Computer Networks COSC 4377 Lecture 3 Spring 2012 January 25, 2012 Announcements Four HW0 s)ll missing HW1 due this week Start working on HW2 and HW3 Re- assess if you found HW0/HW1 challenging
More informationDecision Properties for Context-free Languages
Previously: Decision Properties for Context-free Languages CMPU 240 Language Theory and Computation Fall 2018 Context-free languages Pumping Lemma for CFLs Closure properties for CFLs Today: Assignment
More informationNetworking: Application Layer
CS 4410 Operating Systems Networking: Application Layer Summer 2016 Cornell University 1 Today Two application-layer protocols: DNS HTTP Domain Name Service When a user wants to communicate with a remote
More informationThe World Wide Web. Internet
The World Wide Web Relies on the Internet: LAN (Local Area Network) connected via e.g., Ethernet (physical address: 00-B0-D0-3E-51-BC) IP (Internet Protocol) for bridging separate physical networks (IP
More informationCS 43: Computer Networks. HTTP September 10, 2018
CS 43: Computer Networks HTTP September 10, 2018 Reading Quiz Lecture 4 - Slide 2 Five-layer protocol stack HTTP Request message Headers protocol delineators Last class Lecture 4 - Slide 3 HTTP GET vs.
More informationREST Easy with Infrared360
REST Easy with Infrared360 A discussion on HTTP-based RESTful Web Services and how to use them in Infrared360 What is REST? REST stands for Representational State Transfer, which is an architectural style
More informationApplications & Application-Layer Protocols: The Web & HTTP
CPSC 360 Network Programming Applications & Application-Layer Protocols: The Web & HTTP Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu http://www.cs.clemson.edu/~mweigle/courses/cpsc360
More informationInternet Mail: The SMTP Model
Internet Mail: The SMTP Model User File System Sender- SMTP SMTP Commands Replies Receiver- SMTP File System Simple Mail Transfer Protocol (SMTP) to transfer e-mails Depending on the operating system,
More informationStreamServe Persuasion SP5 StreamServe Connect for SAP - Business Processes
StreamServe Persuasion SP5 StreamServe Connect for SAP - Business Processes User Guide Rev A StreamServe Persuasion SP5StreamServe Connect for SAP - Business Processes User Guide Rev A SAP, mysap.com,
More informationLibrary of Congress BIBFRAME Pilot. NOTSL Fall Meeting October 30, 2015
Library of Congress BIBFRAME Pilot NOTSL Fall Meeting October 30, 2015 THE BIBFRAME EDITOR AND THE LC PILOT The Semantic Web and Linked Data : a Recap of the Key Concepts Learning Objectives Describe the
More informationNetwork Security (NetSec)
Chair of Network Architectures and Services Department of Informatics Technical University of Munich Network Security (NetSec) IN2101 WS 18/19 Prof. Dr.-Ing. Georg Carle Dr. Holger Kinkelin Jonas Jelten
More information1.1 A Brief Intro to the Internet
1.1 A Brief Intro to the Internet - Origins - ARPAnet - late 1960s and early 1970s - Network reliability - For ARPA-funded research organizations - BITnet, CSnet - late 1970s & early 1980s - email and
More informationCOSC 2206 Internet Tools. The HTTP Protocol
COSC 2206 Internet Tools The HTTP Protocol http://www.w3.org/protocols/ What is TCP/IP? TCP: Transmission Control Protocol IP: Internet Protocol These network protocols provide a standard method for sending
More informationInternet Engineering Task Force (IETF) Request for Comments: 6694 August 2012 Category: Informational ISSN:
Internet Engineering Task Force (IETF) S. Moonesamy, Ed. Request for Comments: 6694 August 2012 Category: Informational ISSN: 2070-1721 Abstract The "about" URI Scheme This document describes the "about"
More informationCaching. Caching Overview
Overview Responses to specific URLs cached in intermediate stores: Motivation: improve performance by reducing response time and network bandwidth. Ideally, subsequent request for the same URL should be
More information