Internet and Intranet Fundamentals

Slides:



Advertisements
Similar presentations
Hypertext Transfer PROTOCOL ----HTTP Sen Wang CSE5232 Network Programming.
Advertisements

World Wide Web Basics Original version by Carolyn Watters (Dalhousie U. Computer Science)
HTTP HyperText Transfer Protocol. HTTP Uses TCP as its underlying transport protocol Uses port 80 Stateless protocol (i.e. HTTP Server maintains no information.
Hypertext Transfer Protocol Kyle Roth Mark Hoover.
How does the server format the information it gives to the appln program? As environment variables and in standard input.
1 HTTP – HyperText Transfer Protocol Part 1. 2 Common Protocols In order for two remote machines to “ understand ” each other they should –‘‘ speak the.
The Web The World Wide Web What does it do?.
CGI. XML2 Common Gateway Interface n Georgia Tech 1995 Web Usage Survey –Perl % –C % –Shell Scripts - 8.1% –Tcl - Tool Commercial Language.
Cornell CS502 Web Basics and Protocols CS 502 – Carl Lagoze Acks to McCracken Syracuse Univ.
HTTP Presented By: Holly Mortinson Amy Drout Kyle Balmer & Matt Conklin.
1 The HyperText Transfer Protocol: HTTP Nick Smith Stuart Alley Tara Tjaden.
Hypertext Transport Protocol CS Dick Steflik.
 What is it ? What is it ?  URI,URN,URL URI,URN,URL  HTTP – methods HTTP – methods  HTTP Request Packets HTTP Request Packets  HTTP Request Headers.
Lecture 4 Web browsers, servers and HTTP Boriana Koleva Room: C54
Rensselaer Polytechnic Institute CSC-432 – Operating Systems David Goldschmidt, Ph.D.
HyperText Transfer Protocol HTTP v1.1 hussein suleman uct cs honours 2007.
Web Servers Web server software is a product that works with the operating system The server computer can run more than one software product such as .
Overview A plain HTML document is static A CGI program is executed in real-time, so that it can output dynamic information. CGI (Common Gateway Interface)
CP3024 Lecture 3 Server Side Facilities. Lecture contents  Server side includes  Common gateway interface (CGI)  PHP Hypertext Preprocessor (PHP) pages.
FTP (File Transfer Protocol) & Telnet
HyperText Transfer Protocol (HTTP).  HTTP is the protocol that supports communication between web browsers and web servers.  A “Web Server” is a HTTP.
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
CP476 Internet Computing Lecture 5 : HTTP, WWW and URL 1 Lecture 5. WWW, HTTP and URL Objective: to review the concepts of WWW to understand how HTTP works.
TCP/IP Protocol Suite 1 Chapter 22 Upon completion you will be able to: World Wide Web: HTTP Understand the components of a browser and a server Understand.
Copyright (c) 2010, Dr. Kuanchin Chen1 The Client-Server Architecture of the WWW Dr. Kuanchin Chen.
WebServer A Web server is a program that, using the client/server model and the World Wide Web's Hypertext Transfer Protocol (HTTP), serves the files that.
Web Server Design Week 14 Old Dominion University Department of Computer Science CS 495/595 Spring 2010 Martin Klein 4/14/10.
E-Business William R. Mussatto CyberStrategies, Inc. 12/2/2000.
The HyperText Transfer Protocol. History HTTP has been in use since 1990 (HTTP/0.9) HTTP/1.0 was defined in RFC 1945 (May 1996) and included metainformation.
Web HTTP Hypertext Transfer Protocol. Web Terminology ◘Message: The basic unit of HTTP communication, consisting of structured sequence of octets matching.
HTTP Hypertext Transfer Protocol RFC 1945 (HTTP 1.0) RFC 2616 (HTTP 1.1)
World Wide Web (WWW) A Distributed Document- Based System Group E Ricky Tong (D-A0-1611) Eddy Leong (D-A0-1623) Dick Lei (D-A0-1658)
Web Client-Server Server Client Hypertext link TCP port 80.
1 Seminar on Service Oriented Architecture Principles of REST.
Web Technologies Interactive Responsiveness Function Hypertext Web E-Publishing Simple Response Web Fill-in Forms Object Web « Full-Blown » Client/Server.
Form Data Encoding GET – URL encoded POST – URL encoded
Jan.2001C.Watters1 World Wide Web Basics. Jan.2001C.Watters2 What is an internet anyway? 2 or more networks that can communicate.
Copyright © 2002 ProsoftTraining. All rights reserved. Java Servlets.
Operating Systems Lesson 12. HTTP vs HTML HTML: hypertext markup language ◦ Definitions of tags that are added to Web documents to control their appearance.
CITA 310 Section 2 HTTP (Selected Topics from Textbook Chapter 6)
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1 Fundamentals.
Krerk Piromsopa. 1 Department of Computer Engineering. Chulalongkorn University. Web Application Generic Issues.
EE 122: Lecture 21 (HyperText Transfer Protocol - HTTP) Ion Stoica Nov 20, 2001 (*)
CS 6401 The World Wide Web Outline Background Structure Protocols.
Fundamentals. A Brief Intro to the Internet - Origins - ARPAnet - late 1960s - Network reliability - For ARPA-funded research organizations - BITnet,
Overview of Servlets and JSP
Computer Networks with Internet Technology William Stallings Chapter 04 Modern Applications 4.1 Web Access - HTTP.
World Wide Web r Most Web pages consist of: m base HTML page, and m several referenced objects addressed by a URL r URL has two components: host name and.
Web Server Design Assignment #5: Unsafe Methods & CGI Due: 05/05/2010 Old Dominion University Department of Computer Science CS 495/595 Spring 2010 Martin.
Introduction to CGI PROG. CGI stands for Common Gateway Interface. CGI is a standard programming interface to Web servers that gives us a way to make.
1 Unraveling the Web: How Does it All Work?. 2 Web Enabling Technologies F TCP/IP network (Internet & others) F URLs F HTTP protocol and HTTP Servers.
MIIS1 MIIS - 17 Introduction to the WWW & http * * http information from World Wide Web Programming with HTML & CGI by Ed Tittel, Mark Gaither, S. Hassinger,
1 Chapter 22 World Wide Web (HTTP) Chapter 22 World Wide Web (HTTP) Mi-Jung Choi Dept. of Computer Science and Engineering
INTRODUCTION Dr Mohd Soperi Mohd Zahid Semester /16.
HTTP Protocol Amanda Burrows. HTTP Protocol The HTTP protocol is used to send HTML documents through the Internet. The HTTP protocol sends the HTML documents.
Web Server Design Week 13 Old Dominion University Department of Computer Science CS 495/595 Spring 2012 Michael L. Nelson 04/03/12.
Web Server Design Week 15 Old Dominion University Department of Computer Science CS 495/595 Spring 2009 Michael L. Nelson 4/20/09.
HyperText Transfer Protocol HTTP v1.1 hussein suleman uct cs honours 2009.
Hypertext Transfer Protocol
HTTP – An overview.
Hypertext Transfer Protocol
Web Server Design Assignment #5: Unsafe Methods & CGI
Hypertext Transport Protocol
HyperText Transfer Protocol
EE 122: HyperText Transfer Protocol (HTTP)
William Stallings Data and Computer Communications
The HTTP Protocol COSC 2206 Internet Tools The HTTP Protocol
Environment Variables
HTTP Hypertext Transfer Protocol
Web Server Design Week 16 Old Dominion University
Presentation transcript:

Internet and Intranet Fundamentals Class 4 Session A&B

HTTP Topics Overview Source Documentation How It Works Status Future Directions

HTTP Overview HyperText Transfer Protocol Applications Layer Protocol Generic Protocol gateway to SMTP, NNTP, FTP, Gopher, WAIS Uses TCP Port 80 (by default) presumes reliable transport

HTTP Overview Language of the World Wide Web Provides Open-Ended Set of Methods indicating purpose of request Builds on URI, URL, URN disciplines

HTTP Overview URI = Uniform Resource Identifier identifies points of content mechanism used to access resource specific computer housing the resource specific name of resource on computer formatted strings which indicate characteristics of a resource

HTTP Overview URL = Uniform Resource Locator a particular form of URI Web page address URN = Uniform Resource Name institutional persistence identifies agency responsible for a definition, for example, but not the location namable resource may exist at none or several locations.

HTTP/1.0 Source Documentation RFC 1945 HTTP/1.0 (deprecated) http://www.ics.uci.edu/pub/ietf/http/rfc1945 May 1996 HTTP in use since 1990 Authors Tim Berners-Lee Roy Fielding Henryk Frystyk

HTTP/1.0 HTTP/1.0 superceded HTTP/0.9 HTTP/0.9 allowed raw data transfer HTTP/1.0 introduced MIME types Multipurpose Internet Mail Extensions Content type: text/html Content type: text/plain modify request/response semantics

HTTP/1.0 Shortcomings of HTTP/1.0 weak on proxies, caching, persistent connections, and virtual hosts proliferation of imposters: incompletely implemented applications stateless new connection for each request/response exchange

HTTP/1.1 Source Documentation RFC 2068 HTTP/1.1 http://www.w3.org/Protocols/rfc2068/rfc2068 January 1997 addresses shortcomings of HTTP/1.0

How HTTP Works Request/Response Protocol Request from client contains ... request method URI protocol version MIME-like message with request modifiers, client info, possible body content

How HTTP Works Request/Response Protocol Response from server contains … status line message protocol version success or error code MIME-like message server info entity meta-information possible entity body content

How HTTP Works Request/Response Protocol More Sophisticated Interactions proxies forwarding agent gateways receiving agent tunnels relay point between two connections firewalls non-caching

How HTTP Works URIs Two Forms of URIs See RFC 1738: absolute relative to some known base URI Absolute http: “//” host [: port] [abs_path] http://www.csz.com:8023/directory/file.htm Relative [abs_path] See RFC 1738: http://www.ietf.org/rfc/rfc1738.txt

How HTTP Works Caching not all responses are cacheable national hierarchies of proxy caches to save transoceanic bandwidth systems that broadcast or multicast cache entries organizations that distribute subsets of cached data via CD-ROM

How HTTP Works Media Types Type / Subtype followed by 0 or more optional parameters delimited on the left by “;” parameter are of form attribute=value Content-type: text/html Content-type: text/plain (default) Content-Type: multipart/mixed; boundary=gc0p4Jq0M2Yt08jU534c0p Assigned by IANA

How HTTP Works Media Types Media Type Parameters: charset default is ISO-8859-1 Multipart Types multipart/form-data multipart/mixed multipart/parallel

HTTP Language Tags Identifies language Controlled by IANA en en-US en-cockney x-pig-latin I-cherokee

HTTP Messages Request or Response Use RFC 822 for Transferring Entities I.e., the payload of a message generic-message = start-line *message-header CRLF [ message-body ] start-line = Request-Line | Status-Line

HTTP Messages Methods GET, HEAD must be supported POST for sending data back to server although GET can also be used indirectly to pass parameter information back to the server

HTTP Authentication Secure Sockets Layer (SSL) .htaccess files https RSA Encryption public key / private key not really part of HTTP

HTTP Dynamic Pages: .pl, .asp, .jsp, .stm Information from “environment” and from “forms” examples: http://csz.com/cgi-bin/test-cgi?x=y {get syntax} https://secure1.csz.com/cgi-bin/ssienvirodump.pl

HTTP http://csz.com/cgi-bin/test-cgi?x=y HTTP_USER_AGENT = Mozilla/4.72 [en] (Win95; U) HTTP_REFERER = HTTP_COOKIE = SERVER_SOFTWARE = Apache/1.3.3 (Unix) SERVER_NAME = www.csz.com GATEWAY_INTERFACE = CGI/1.1 SERVER_PROTOCOL = HTTP/1.0 SERVER_PORT = 80 REQUEST_METHOD = GET HTTP_ACCEPT = image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */* PATH_INFO = PATH_TRANSLATED = SCRIPT_NAME = /cgi-bin/test-cgi QUERY_STRING = x=y REMOTE_HOST = REMOTE_ADDR = 38.253.188.243 REMOTE_USER = AUTH_TYPE = CONTENT_TYPE = CONTENT_LENGTH =

HTTP https://secure1.csz.com/cgi-bin/ssienvirodump.pl HTTP_USER_AGENT = Mozilla/4.72 [en] (Win95; U) HTTP_REFERER = https://secure1.csz.com/vitafree/order.html HTTP_COOKIE = www.symantec.com FALSE / FALSE 972781498 Pass 1 SERVER_SOFTWARE = Apache/1.3.3 (Unix) SERVER_NAME = www.csz.com GATEWAY_INTERFACE = CGI/1.1 SERVER_PROTOCOL = HTTP/1.0 SERVER_PORT = 80 REQUEST_METHOD = GET HTTP_ACCEPT = image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */* PATH_INFO = PATH_TRANSLATED = SCRIPT_NAME = /cgi-bin/test-cgi QUERY_STRING = x=y REMOTE_HOST = REMOTE_ADDR = 38.253.188.243 REMOTE_USER = mussatto AUTH_TYPE = basic CONTENT_TYPE = CONTENT_LENGTH =

HTTP-NG Limitations of HTTP/1.1 lack of modularity message transport, method invocation, document processing too tightly interwoven performance concerns HTTP accounts for too much of the load on the Net wireless at a disadvantage OBEd by XML

HTTP-XLM XML- Definitions XML is a method for putting structured data in a text file XML looks a bit like HTML but isn't HTML XML is text, but isn't meant to be read XML is a family of technologies XML is verbose, but that is not a problem XML is new, but not that new XML is license-free, platform-independent and well-supported

HTTP-XLM XML- Layout