Internet Technologies 4-http. F. Ricci 2010/2011
|
|
|
- Alexander Harmon
- 10 years ago
- Views:
Transcription
1 Internet Technologies 4-http F. Ricci 2010/2011
2 Content Hypertext Transfer Protocol Structure of a message Methods Headers Parameters and character encoding Proxy Caching HTTP 1.1: chunked transfer and persistent connection State management Cookies
3 Protocol Stack Finally! We re here.
4 Contact a Daemon Using Telnet First type in: telnet 80 Then the following: GET index.html HTTP/1.0 Then two CRLF You will get the reply from the http daemon putty
5 HTTP HTTP stands for Hypertext Transfer Protocol HTTP (network protocol) delivers virtually all files and other data (resources) on the World Wide Web - HTML files, image files, query results,... HTTP is used to transmit resources, i.e., some chunk of information that can be identified by a URL HTTP uses the client-server stateless model An HTTP client opens a connection and sends a request message to an HTTP server; the HTTP server then returns a response message (containing the requested resource).
6 Client and Server User uses HTTP client (Web Browser) It enters a URL (e.g. Makes a request to the server client initiates TCP connection (creates socket) to server, port 80 server accepts TCP connection from client HTTP messages (application-layer protocol messages) exchanged between browser (HTTP client) and Web server (HTTP server) TCP connection closed request (URL) Client response (HTML, ) Server
7 HTTP Server Listens on port 80 (usually) Handles HTTP requests Sends back responses Document root is a directory in the file system Server maps path to file system file URL Path / maps to Document Root Let s say Document Root is C:\htdocs\ / => C:\htdocs\ /images/ => C:\htdocs\images\ /a/x.html => C:\htdocs\a\X.html
8 Example of Request
9 Example of Response
10 Request and Responses Request and responses have two parts: headers and content (is called message-body in the specs) If you type a URL into your browser, the browser creates an HTTP request and sends it to a server The server finds the requested file and sends it back in an HTTP response The response headers are describing things like the type of web server, the file type of the response, the length of the response and other info The response content is the file data.
11 Request and Response Format The format of the request and response messages are similar and both kinds of messages consist of: an initial line, zero or more header lines, a blank line (i.e. a CRLF by itself), and an optional message body (e.g. a file, or query data, or query output). Put another way, the format of an HTTP message is: <initial line, different for request vs. response> Header1: value1 Header2: value2 Header3: value3 <optional message body goes here, like file contents or query data; it can be many lines long, or even binary data $&*%@!^$@>
12 Http Specifications HTTP-message = Request Response generic-message = start-line *(message-header CRLF) CRLF [ message-body ] start-line = Request-Line Status-Line message-header = field-name ":" [ field-value ] HTTP Message
13 Initial Request Line A request line has three parts, separated by spaces: a method name, the local path of the requested resource, and the version of HTTP being used. A typical request line is: GET /path/to/file/index.html HTTP/1.0 GET is the most common HTTP method; it says "give me this resource". The path is the part of the URL after the host name, also called the request URI (a URI is like a URL, but more general, see lecture 2) The HTTP version always takes the form "HTTP/x.x", uppercase current version is 1.1.
14 Initial Response Line (status) The initial response line, called the status line, also has three parts separated by spaces: the HTTP version, a response status code that gives the result of the request, and an English reason phrase describing the status code Examples: HTTP/ OK HTTP/ Not Found The HTTP version is in the same format as in the request line, "HTTP/x.x".
15 HTTP Status Codes The status code response groups Details: sec6.html#sec6.1.1
16 Header Lines Header lines provide information about the request or response, or about the object sent in the message body Header lines should end in CRLF The header name is not case-sensitive (though the value may be) Any number of spaces or tabs may be between the ":" and the value Header lines beginning with space or tab are actually part of the previous header line, folded into multiple lines for easy reading Examples: following two headers are equivalent: Header1: some-long-value-1a, some-long-value-1b HEADER1: some-long-value-1a, some-long-value-1b
17 HTTP Message Headers HTTP 1.0 defines 16 headers, none are required. HTTP 1.1 defines 46 headers (1 required host: ) sec14.html#sec14) some headers
18 Message Body An HTTP message may have a body of data sent after the header lines In a response: the requested resource returned to the client (or perhaps explanatory text if there's an error) In a request: user-entered data or uploaded files are sent to the server If an HTTP message includes a body, there are usually header lines in the message that describe the body: The Content-Type: header gives the MIME-type of the data in the body, such as text/html or image/gif The Content-Length: header gives the number of bytes in the body.
19 MIME types An Internet media type (originally MIME) and sometimes a Content-type (because of HTTP) is a twopart identifier for file formats on the Internet A media type is composed of at least two parts: a type, a subtype, and one or more optional parameters Example Content-Type:text/html; charset=utf-8 Type application: Multipurpose files application/javascript, application/octetstream, application/octet-stream,... Type audio: audio/mpeg, audio/x-wav Type image: image/gif, image/png, image/jpeg Type text: text/css, text/html, text/xml Type video: video/mpeg, video/mp4, video/quicktime.
20 Parameters Clients can pass parameters to the server (e.g. rawhtml=yes) Parameters are simple name and value pairs Parameters are generally collected from HTML forms Form values are sent as parameters to the server when you click the Submit or Next button on the form The client encodes parameters before they are sent to the server (why?) Multiple parameters are separated by ampersands (&) example
21 Unsafe Characters Some Characters need to be encoded ~ SPACE % Examples [ASCII: 126 (0x7E)] [ASCII: 32 (0x20)] [ASCII: 37 (0x25)] %20page.html URL Encoding reference
22 Parameters Encoding rules: Space characters are converted to a plus (+) sign (or %20) The following characters remain unchanged (but can also be encoded): lowercase letters a- z, uppercase letters A-Z, the numbers 0-9, the period (.), the hypen (-) the asterisk (*), and the underscore (_) All other characters are converted into %xy, where xy is a hexadecimal number that represents the low 8 bits of the character! * ' ( ) ; & = + $, /? % # [ ]
23 HTTP Methods The built-in HTTP request methods Details: sec9.html#sec9
24 Parameters with GET and POST With a GET request, parameters are added at the end of the URL in encoded form If your URL is the following The parameter user added to the URL Additional parameters can be added, separated by & POST is basically the same as GET, but parameters are handled differently: parameters are passed as the body of request with the same type of encoding If you have lots of parameters or binary data, you may use the POST request. Try example with POST
25 HTTP Proxy Servers "Middlemen" between clients and servers May "rewrite" HTTP requests and responses Looks like a server sending responses Proxy Server Looks like a client making requests
26 Proxy An HTTP proxy is a program that acts as an intermediary between a client and a server It receives requests from clients, and forwards those requests to the intended servers Thus, a proxy has functions of both a client and a server Requests to a proxy differ from normal requests: in the first line, they use the complete URL of the resource being requested, instead of just the path For example, GET HTTP/1.0 That way, the proxy knows which server to forward the request to (though the proxy itself may use another proxy).
27 Why Proxy Servers? Content filtering Packet filter (firewall) Prevent children from accessing sites Used to contact server in special way Firewall (shadow the client IP number) Security Rewrite content Swedish chef (translation) Redirect requests Content router To improve performance Logging activity.
28 Why Proxy Servers?
29 Translation
30 HTTP Versions HTTP/1.0 (May 1996) This is the first protocol revision to specify its version in communications and is still in wide use, especially by proxy servers HTTP/1.1 (June 1999) Faster response, by allowing multiple transactions to take place over a single persistent connection Faster response and great bandwidth savings, by adding cache support (If-Modified-Since, If-Unmodified- Since) Faster response for dynamically-generated pages, by supporting chunked encoding, which allows a response to be sent before its total length is known Efficient use of IP addresses, by allowing multiple domains to be served from a single IP address.
31 HTTP 1.1 Client To comply with HTTP 1.1, clients must include the Host: header with each request accept responses with chunked data either support persistent connections, or include the "Connection: close" header with each request handle the "100 Continue" response.
32 Host: Header In HTTP 1.1, one server at one IP address can be multihomed, i.e. the home of several Web domains: " and " can live on the same server Actually this is the standard for web hosting (IP sharing virtual hosting) link Thus, every HTTP request must specify which host name the request is intended for, with the Host: header A complete HTTP 1.1 request might be GET /path/file.html HTTP/1.1 Host: [blank line here] Host: is the only required header in an HTTP 1.1 request. It's also the most urgently needed new feature in HTTP 1.1 The majority of sites require the Host header (otherwise bad request).
33 Chunked Transfer-Encoding To start sending a response before knowing its total length the server must use the simple chunked transfer-encoding The complete response is broken into smaller chunks and send in series HTTP/ OK Date: Fri, 31 Dec :59:59 GMT Content-Type: text/plain Transfer-Encoding: chunked 1a = characters in the first chunk 1a; ignore-stuff-here abcdefghijklmnopqrstuvwxyz abcdef 0 some-footer: some-value another-footer: another-value [blank line here] data in the first chunk 10 = 16 characters in the second chunk data in the second chunk end
34 Non-Persistent HTTP: Response time Definition of RTT: time for a small packet to travel from client to server and back (round trip time) Response time: one RTT to initiate TCP connection one RTT for HTTP request and first few bytes of HTTP response to return file transmission time total = 2RTT+transmit time initiate TCP connection RTT request file RTT file received time time time to transmit file
35 Persistent Connections In HTTP 1.0 TCP connections are closed after each request and response, so each resource to be retrieved requires its own connection Opening and closing TCP connections takes a substantial amount of CPU time, bandwidth, and memory Most Web pages consist of several files on the same server, so much can be saved by allowing several requests and responses to be sent through a single persistent connection Persistent connections are the default in HTTP 1.1.
36 Persistent Connections Persistent connection is the default in HTTP1.1 unless: If a client includes the "Connection: close" header in the request, then the connection will be closed after the corresponding response if a response contains "Connection: close", then the server will close the connection following that response - don't send any more requests through that connection A server might close the connection before all responses are sent - a client must keep track of requests and resend them as needed.
37 The "100 Continue" Response During the course of an HTTP 1.1 client sending a request to a server, the server might respond with an interim "100 Continue" response This means the server has received the first part of the request HTTP/ Continue HTTP/ OK Date: Fri, 31 Dec :59:59 GMT Content-Type: text/plain Content-Length: 42 some-footer: some-value another-footer: another-value abcdefghijklmnoprstuvwxyz abcdef First response Client must send the body or just wait the second response Second response
38 Caching Hierarchical caching with three proxies.
39 Caching Who should do the caching? Client: browser stores last visited pages Proxy: stores most commonly accessed pages Server: sometimes does not recompute a dynamic page How long should pages be cached? Some pages should never be cached stocks rates (no-cache) If the server used Last-Modified response header then client should not cache pages that are recently modified Use the If-Modified-Since request header see next slides.
40 The Date and Last-Modified Headers Caching is an important improvement in HTTP it can't work without timestamped responses Servers must timestamp every response with a Date: header containing the current time, in the form Date: Fri, 31 Dec :59:59 GMT All responses except those with 100-level status (but including error responses) must include the Date: header All time values in HTTP use Greenwich Mean (meridian) Time Last-Modified header indicates really when the page has been modified (it is not required).
41 If-Modified-Since: or If-Unmodified-Since: To avoid sending resources that don't need to be sent, thus saving bandwidth Request headers: If-Modified-Since: and If- Unmodified-Since: only send to me the resource if it has changed since this date (the other says the opposite) If the requested resource has been modified since the given date, the server ignores the header and return the resource Otherwise it returns a "304 Not Modified" response, including the Date: header and no message body: HTTP/ Not Modified Date: Fri, 31 Dec :59:59 GMT
42 Statelessness and Cookies Some examples of cookies.
43 Continuity Problem (User s Point of View) Server State Page 1 Page 2 Page 3 Added book to cart Added book to cart CC# = XXX Billing address Order submitted & logged Page 4
44 The Illusion of Continuity User thinks that choices made on page 1 are remembered on page 3 However HTTP is Stateless Requests from same user do not necessarily come in adjacent requests There may be several other requests in the middle.
45 Continuity Problem: Server s Point of View Request 1 Request 2
46 Solution: Store State Somewhere HTTP is stateless Server Side: Makes Server Really Complicated State per client! We will see this solution in the next lectures Client Side: Server puts little notes on the client side When client submits the next form, it also (unknowingly) submits these little notes Server reads the notes, remembers who the client is or obtain the info to generate a page that logically follows.
47 Technique: Hidden Fields In a Form a field may be "hidden" it is sent to the server but not displayed to the user <form name="myform" action=" dothat" method="post"> <input type="text" size="25" name="product" value="enter the product name here!"> <input type="hidden" name="uid" value="007"> </form> Simple way to store state on client side But what if the client (user) closes browser, returns to your site 30 seconds later? The uid information is written in the requested url, so it can be easily seen by a malicious user (better use POST!).
48 Technique: HTTP Cookies Idea Server (e.g., a servlet) sends a simple (cookie) name and value to client - telling which URLs this cookie is valid for Client returns the same name and value when it connects to the same site (or same domain, depending on cookie settings) Typical Uses of Cookies storing information client side Identifying a user during an e-commerce session Avoiding username and password Customizing a site Focusing advertising Positive side: Site will remember who you are Negative side: Privacy?
49 Cookie Syntax On HTTP response, the server writes a header: Set-Cookie: NAME=VALUE; expires=date; path=path; domain=domain_name; secure On HTTP requests, the client (browser): looks through cookie database, finds all cookies that match the current URL (domain +path), and Writes a header: Cookie: NAME1=OPAQUE_STRING1; NAME2=OPAQUE_STRING2;... "opaque" means that the cookie is not explicitly containing any information but enable the server to understand who is the client.
50 Cookie Example Client requests a document, and receives in the response: Set-Cookie: CUSTOMER=WILE_E_COYOTE; path=/; expires=wednesday, 09-Nov :12:40 GMT When client requests a URL in path "/" on this server, it sends: Cookie: CUSTOMER=WILE_E_COYOTE Client requests a document, and receives in the response: Set-Cookie: PART_NUMBER=ROCKET_LAUNCHER_0001; path=/ When client requests a URL in path "/" on this server, it sends: Cookie: CUSTOMER=WILE_E_COYOTE; PART_NUMBER=ROCKET_LAUNCHER_0001 Client receives: Set-Cookie: SHIPPING=FEDEX; path=/foo
51 Cookie Example When client requests a URL in path "/" on this server, it sends: Cookie: CUSTOMER=WILE_E_COYOTE; PART_NUMBER=ROCKET_LAUNCHER_0001 When client requests a URL in path "/foo" on this server, it sends: Cookie: CUSTOMER=WILE_E_COYOTE; PART_NUMBER=ROCKET_LAUNCHER_0001; SHIPPING=FEDEX
52 Cookies and Focused Advertising
53 Some Problems with Cookies The problem is privacy, not security Servers can remember your previous actions If you give out personal information, servers can link that information to your previous actions Servers can share cookie information through use of a cooperating third party like doubleclick.net Poorly designed sites store sensitive information like credit card numbers directly in cookie JavaScript bugs let hostile sites steal cookies (old browsers) Moral for servlet authors If cookies are not critical to your task, avoid servlets that totally fail when cookies are disabled Don't put sensitive info in cookies.
54 Scenario Two sites can share data on a user by each loading small images off the same third-party site and the third party site uses cookies to identify the users search-site.com and random-site.com want to display direct ads from ad-site.com, based on the user search history If the user searched for "Java Servlets" the search site can return a page with a (small) image link <IMG SRC=" +Servlets" > Therefore, the browser connect to ad-site.com that returns the small (invisible) image and a cookie After, the user visits random-site.com that can return a banner generated by ad-site.com <IMG SRC=" > The ad-site receives the request and its cookie Looking at his database can understand that this user searched on search-site for "Java Servlets and can send a "personalized" banner.
55 Manually Deleting Cookies
HTTP Protocol. Bartosz Walter <[email protected]>
HTTP Protocol Bartosz Walter Agenda Basics Methods Headers Response Codes Cookies Authentication Advanced Features of HTTP 1.1 Internationalization HTTP Basics defined in
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
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
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
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
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:
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
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.
Computer Networks. Lecture 7: Application layer: FTP and HTTP. Marcin Bieńkowski. Institute of Computer Science University of Wrocław
Computer Networks Lecture 7: Application layer: FTP and Marcin Bieńkowski Institute of Computer Science University of Wrocław Computer networks (II UWr) Lecture 7 1 / 23 Reminder: Internet reference model
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
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
reference: HTTP: The Definitive Guide by David Gourley and Brian Totty (O Reilly, 2002)
1 cse879-03 2010-03-29 17:23 Kyung-Goo Doh Chapter 3. Web Application Technologies reference: HTTP: The Definitive Guide by David Gourley and Brian Totty (O Reilly, 2002) 1. The HTTP Protocol. HTTP = HyperText
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
Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP Abstract Message Format. The Client/Server model is used:
Evolution of the WWW Communication in the WWW World Wide Web (WWW) Access to linked documents, which are distributed over several computers in the History of the WWW Origin 1989 in the nuclear research
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
CTIS 256 Web Technologies II. Week # 1 Serkan GENÇ
CTIS 256 Web Technologies II Week # 1 Serkan GENÇ Introduction Aim: to be able to develop web-based applications using PHP (programming language) and mysql(dbms). Internet is a huge network structure connecting
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
URLs and HTTP. ICW Lecture 10 Tom Chothia
URLs and HTTP ICW Lecture 10 Tom Chothia This Lecture The two basic building blocks of the web: URLs: Uniform Resource Locators HTTP: HyperText Transfer Protocol Uniform Resource Locators Many Internet
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
THE PROXY SERVER 1 1 PURPOSE 3 2 USAGE EXAMPLES 4 3 STARTING THE PROXY SERVER 5 4 READING THE LOG 6
The Proxy Server THE PROXY SERVER 1 1 PURPOSE 3 2 USAGE EXAMPLES 4 3 STARTING THE PROXY SERVER 5 4 READING THE LOG 6 2 1 Purpose The proxy server acts as an intermediate server that relays requests between
Basic Internet programming Formalities. Hands-on tools for internet programming
Welcome Basic Internet programming Formalities Hands-on tools for internet programming DD1335 (gruint10) Serafim Dahl [email protected] DD1335 (Lecture 1) Basic Internet Programming Spring 2010 1 / 23
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
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
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
Data Communication I
Data Communication I Urban Bilstrup (E327) 090901 [email protected] www2.hh.se/staff/urban Internet - Sweden, Northern Europe SUNET NORDUnet 2 Internet - Internet Addresses Everyone should be able
Introduction to Computer Security
Introduction to Computer Security Web Application Security Pavel Laskov Wilhelm Schickard Institute for Computer Science Modern threat landscape The majority of modern vulnerabilities are found in web
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 [email protected] http://ce.qu.edu.az/~aadamov
7 Why Use Perl for CGI?
7 Why Use Perl for CGI? Perl is the de facto standard for CGI programming for a number of reasons, but perhaps the most important are: Socket Support: Perl makes it easy to create programs that interface
Nuance Mobile Developer Program. HTTP Services for Nuance Mobile Developer Program Clients
Nuance Mobile Developer Program HTTP Services for Nuance Mobile Developer Program Clients Notice Nuance Mobile Developer Program HTTP Services for Nuance Mobile Developer Program Clients Copyright 2011
Table of Contents. Open-Xchange Authentication & Session Handling. 1.Introduction...3
Open-Xchange Authentication & Session Handling Table of Contents 1.Introduction...3 2.System overview/implementation...4 2.1.Overview... 4 2.1.1.Access to IMAP back end services...4 2.1.2.Basic Implementation
Web Programming. Robert M. Dondero, Ph.D. Princeton University
Web Programming Robert M. Dondero, Ph.D. Princeton University 1 Objectives You will learn: The fundamentals of web programming... The hypertext markup language (HTML) Uniform resource locators (URLs) The
Siteminder Integration Guide
Integrating Siteminder with SA SA - Siteminder Integration Guide Abstract The Junos Pulse Secure Access (SA) platform supports the Netegrity Siteminder authentication and authorization server along with
Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP - Message Format. The Client/Server model is used:
Evolution of the WWW Communication in the WWW World Wide Web (WWW) Access to linked documents, which are distributed over several computers in the History of the WWW Origin 1989 in the nuclear research
Building a Multi-Threaded Web Server
Building a Multi-Threaded Web Server In this lab we will develop a Web server in two steps. In the end, you will have built a multi-threaded Web server that is capable of processing multiple simultaneous
Computer Networking LAB 2 HTTP
Computer Networking LAB 2 HTTP 1 OBJECTIVES The basic GET/response interaction HTTP message formats Retrieving large HTML files Retrieving HTML files with embedded objects HTTP authentication and security
APACHE WEB SERVER. Andri Mirzal, PhD N28-439-03
APACHE WEB SERVER Andri Mirzal, PhD N28-439-03 Introduction The Apache is an open source web server software program notable for playing a key role in the initial growth of the World Wide Web Typically
WHAT IS A WEB SERVER?
4663ch01.qxd_lb 12/2/99 12:54 PM Page 1 CHAPTER 1 WHAT IS A WEB SERVER? Never trust a computer you can t throw out a window. Steve Wozniak CHAPTER OBJECTIVES In this chapter you will learn about: Client/Server
SIP: Protocol Overview
SIP: Protocol Overview NOTICE 2001 RADVISION Ltd. All intellectual property rights in this publication are owned by RADVISION Ltd. and are protected by United States copyright laws, other applicable copyright
Chapter 27 Hypertext Transfer Protocol
Chapter 27 Hypertext Transfer Protocol Columbus, OH 43210 [email protected] http://www.cis.ohio-state.edu/~jain/ 27-1 Overview Hypertext language and protocol HTTP messages Browser architecture CGI
The HTTP Plug-in. Table of contents
Table of contents 1 What's it for?... 2 2 Controlling the HTTPPlugin... 2 2.1 Levels of Control... 2 2.2 Importing the HTTPPluginControl...3 2.3 Setting HTTPClient Authorization Module... 3 2.4 Setting
BITS-Pilani Hyderabad Campus CS C461/IS C461/CS F303/ IS F303 (Computer Networks) Laboratory 3
BITS-Pilani Hyderabad Campus CS C461/IS C461/CS F303/ IS F303 (Computer Networks) Laboratory 3 Aim: To give an introduction to HTTP, SMTP, & DNS, and observe the packets in a LAN network. HTTP (Hypertext
LabVIEW Internet Toolkit User Guide
LabVIEW Internet Toolkit User Guide Version 6.0 Contents The LabVIEW Internet Toolkit provides you with the ability to incorporate Internet capabilities into VIs. You can use LabVIEW to work with XML documents,
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
CPSC 360 - Network Programming. Email, FTP, and NAT. http://www.cs.clemson.edu/~mweigle/courses/cpsc360
CPSC 360 - Network Programming E, FTP, and NAT Michele Weigle Department of Computer Science Clemson University [email protected] April 18, 2005 http://www.cs.clemson.edu/~mweigle/courses/cpsc360
Session Initiation Protocol
TECHNICAL OVERVIEW Session Initiation Protocol Author: James Wright, MSc This paper is a technical overview of the Session Initiation Protocol and is designed for IT professionals, managers, and architects
Session Initiation Protocol (SIP)
Session Initiation Protocol (SIP) Introduction A powerful alternative to H.323 More flexible, simpler Easier to implement Advanced features Better suited to the support of intelligent user devices A part
Application Layer: HTTP and the Web. Srinidhi Varadarajan
Application Layer: HTTP and the Web Srinidhi Varadarajan The Web: the http protocol http: hypertext transfer protocol Web s application layer protocol client/server model client: browser that requests,
Application Layer. CMPT371 12-1 Application Layer 1. Required Reading: Chapter 2 of the text book. Outline of Chapter 2
CMPT371 12-1 Application Layer 1 Application Layer Required Reading: Chapter 2 of the text book. Outline of Chapter 2 Network applications HTTP, protocol for web application FTP, file transfer protocol
Cookies Overview and HTTP Proxies
Cookies Overview and HTTP Proxies What is a Cookie? Small piece of data generated by a web server, stored on the client s hard drive. Serves as an add-on to the HTTP specification (remember, HTTP by itself
Introduction to LAN/WAN. Application Layer (Part II)
Introduction to LAN/WAN Application Layer (Part II) Application Layer Topics Domain Name System (DNS) (7.1) Electronic Mail (Email) (7.2) World Wide Web (WWW) (7.3) Electronic Mail (Email) Mostly used
1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; e-mail: SMTP.
Chapter 2 Review Questions 1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; e-mail: SMTP. 2. Network architecture refers to the organization of the communication process
Lecture 8a: WWW Proxy Servers and Cookies
Internet and Intranet Protocols and Applications Lecture 8a: WWW Proxy Servers and Cookies March, 2004 Arthur Goldberg Computer Science Department New York University [email protected] Terminology Origin
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
Remote login (Telnet):
SFWR 4C03: Computer Networks and Computer Security Feb 23-26 2004 Lecturer: Kartik Krishnan Lectures 19-21 Remote login (Telnet): Telnet permits a user to connect to an account on a remote machine. A client
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
CS 5480/6480: Computer Networks Spring 2012 Homework 1 Solutions Due by 9:00 AM MT on January 31 st 2012
CS 5480/6480: Computer Networks Spring 2012 Homework 1 Solutions Due by 9:00 AM MT on January 31 st 2012 Important: No cheating will be tolerated. No extension. CS 5480 total points = 32 CS 6480 total
Server Setup. Basic Settings
Server Setup Basic Settings CrushFTP has two locations for its preferences. The basic settings are located under the "Prefs" tab on the main screen while the advanced settings are under the file menu.
CloudOYE CDN USER MANUAL
CloudOYE CDN USER MANUAL Password - Based Access Logon to http://mycloud.cloudoye.com. Enter your Username & Password In case, you have forgotten your password, click Forgot your password to request a
Modern Web Development From Angle Brackets to Web Sockets
Modern Web Development From Angle Brackets to Web Sockets Pete Snyder Outline (or, what am i going to be going on about ) 1.What is the Web? 2.Why the web matters 3.What s unique about
Application Example: WWW. Communication in the WWW. WWW, HTML, URL and HTTP. Loading of Web Pages. The Client/Server model is used in the WWW
Application Example WWW Communication in the WWW In the following application protocol examples for WWW and E-Mail World Wide Web (WWW) Access to linked documents, which are distributed over several computers
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
An Insight into Cookie Security
An Insight into Cookie Security Today most websites and web based applications use cookies. Cookies are primarily used by the web server to track an authenticated user or other user specific details. This
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
Packet Capture. Document Scope. SonicOS Enhanced Packet Capture
Packet Capture Document Scope This solutions document describes how to configure and use the packet capture feature in SonicOS Enhanced. This document contains the following sections: Feature Overview
cnds@napier Slide 1 Introduction cnds@napier 1 Lecture 6 (Network Layer)
Slide 1 Introduction In today s and next week s lecture we will cover two of the most important areas in networking and the Internet: IP and TCP. These cover the network and transport layer of the OSI
FAQs for Oracle iplanet Proxy Server 4.0
FAQs for Oracle iplanet Proxy Server 4.0 Get answers to the questions most frequently asked about Oracle iplanet Proxy Server Q: What is Oracle iplanet Proxy Server (Java System Web Proxy Server)? A: Oracle
Ethical Hacking as a Professional Penetration Testing Technique
Ethical Hacking as a Professional Penetration Testing Technique Rochester ISSA Chapter Rochester OWASP Chapter - Durkee Consulting, Inc. [email protected] 2 Background Founder of Durkee Consulting since 1996
2 Downloading Access Manager 3.1 SP4 IR1
Novell Access Manager 3.1 SP4 IR1 Readme May 2012 Novell This Readme describes the Novell Access Manager 3.1 SP4 IR1 release. Section 1, Documentation, on page 1 Section 2, Downloading Access Manager 3.1
World Wide Web. Before WWW
World Wide Web [email protected] 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
DEPLOYMENT GUIDE Version 2.1. Deploying F5 with Microsoft SharePoint 2010
DEPLOYMENT GUIDE Version 2.1 Deploying F5 with Microsoft SharePoint 2010 Table of Contents Table of Contents Introducing the F5 Deployment Guide for Microsoft SharePoint 2010 Prerequisites and configuration
What is Distributed Annotation System?
Contents ISiLS Lecture 12 short introduction to data integration F.J. Verbeek Genome browsers Solutions for integration CORBA SOAP DAS Ontology mapping 2 nd lecture BioASP roadshow 1 2 Human Genome Browsers
Module 45 (More Web Hacking)
(More Web Hacking) In this Module, you'll lear how to use netcat to perform cursory server reconnaissance. You'll lear what a web proxy is and how it functions. You'll know how to enable your browser to
Internet Information TE Services 5.0. Training Division, NIC New Delhi
Internet Information TE Services 5.0 Training Division, NIC New Delhi Understanding the Web Technology IIS 5.0 Architecture IIS 5.0 Installation IIS 5.0 Administration IIS 5.0 Security Understanding The
CS 213, Fall 2000 Lab Assignment L5: Logging Web Proxy Assigned: Nov. 28, Due: Mon. Dec. 11, 11:59PM
CS 213, Fall 2000 Lab Assignment L5: Logging Web Proxy Assigned: Nov. 28, Due: Mon. Dec. 11, 11:59PM Jason Crawford ([email protected]) is the lead person for this assignment. Introduction A web proxy
N-CAP Users Guide Everything You Need to Know About Using the Internet! How Firewalls Work
N-CAP Users Guide Everything You Need to Know About Using the Internet! How Firewalls Work How Firewalls Work By: Jeff Tyson If you have been using the internet for any length of time, and especially if
Setup Guide Access Manager 3.2 SP3
Setup Guide Access Manager 3.2 SP3 August 2014 www.netiq.com/documentation Legal Notice THIS DOCUMENT AND THE SOFTWARE DESCRIBED IN THIS DOCUMENT ARE FURNISHED UNDER AND ARE SUBJECT TO THE TERMS OF A LICENSE
Oct 15, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html 3. Internet : the vast collection of interconnected networks that all use the TCP/IP protocols
E-Commerce Infrastructure II: the World Wide Web The Internet and the World Wide Web are two separate but related things Oct 15, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html 1 Outline The Internet and
Single Pass Load Balancing with Session Persistence in IPv6 Network. C. J. (Charlie) Liu Network Operations Charter Communications
Single Pass Load Balancing with Session Persistence in IPv6 Network C. J. (Charlie) Liu Network Operations Charter Communications Load Balancer Today o Load balancing is still in use today. It is now considered
Chapter 6 Virtual Private Networking Using SSL Connections
Chapter 6 Virtual Private Networking Using SSL Connections The FVS336G ProSafe Dual WAN Gigabit Firewall with SSL & IPsec VPN provides a hardwarebased SSL VPN solution designed specifically to provide
Email, SNMP, Securing the Web: SSL
Email, SNMP, Securing the Web: SSL 4 January 2015 Lecture 12 4 Jan 2015 SE 428: Advanced Computer Networks 1 Topics for Today Email (SMTP, POP) Network Management (SNMP) ASN.1 Secure Sockets Layer 4 Jan
Lecture 8a: WWW Proxy Servers and Cookies
Internet and Intranet Protocols and Applications Lecture 8a: WWW Proxy Servers and Cookies March 12, 2003 Arthur Goldberg Computer Science Department New York University [email protected] Terminology Origin
DEPLOYMENT GUIDE Version 1.1. Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5
DEPLOYMENT GUIDE Version 1.1 Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Citrix Presentation Server Prerequisites
P and FTP Proxy caching Using a Cisco Cache Engine 550 an
P and FTP Proxy caching Using a Cisco Cache Engine 550 an Table of Contents HTTP and FTP Proxy caching Using a Cisco Cache Engine 550 and a PIX Firewall...1 Introduction...1 Before You Begin...1 Conventions...1
2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET)
2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET) There are three popular applications for exchanging information. Electronic mail exchanges information between people and file
FILE TRANSFER PROTOCOL INTRODUCTION TO FTP, THE INTERNET'S STANDARD FILE TRANSFER PROTOCOL
FTP FILE TRANSFER PROTOCOL INTRODUCTION TO FTP, THE INTERNET'S STANDARD FILE TRANSFER PROTOCOL Peter R. Egli INDIGOO.COM 1/22 Contents 1. FTP versus TFTP 2. FTP principle of operation 3. FTP trace analysis
SSL VPN Portal Options
1. ProSecure UTM Quick Start Guide This quick start guide describes how to use the SSL VPN Wizard to configure SSL VPN portals on the ProSecure Unified Threat Management (UTM) Appliance. The Secure Sockets
Configuring the WT-4 for ftp (Ad-hoc Mode)
En Configuring the WT-4 for ftp (Ad-hoc Mode) Windows XP Introduction This document provides basic instructions on configuring the WT-4 wireless transmitter and a Windows XP Professional SP2 ftp server
Hypertext for Hyper Techs
Hypertext for Hyper Techs An Introduction to HTTP for SecPros Bio Josh Little, GSEC ~14 years in IT. Support, Server/Storage Admin, Webmaster, Web App Dev, Networking, VoIP, Projects, Security. Currently
The HTTP protocol (HyperText Transfer Protocol) Short history of HTTP. The HTTP 1.0 protocol. 07/07/2011(dec'09)
The HTTP protocol (HyperText Transfer Protocol) Antonio Lioy < [email protected] it > english version created by Marco D. Aime < [email protected] > Politecnico di Torino Dip. Automatica e Informatica Short
Hack Yourself First. Troy Hunt @troyhunt troyhunt.com [email protected]
Hack Yourself First Troy Hunt @troyhunt troyhunt.com [email protected] We re gonna turn you into lean, mean hacking machines! Because if we don t, these kids are going to hack you Jake Davies, 19 (and
EXTENDED FILE SYSTEM FOR FMD AND NANO-10 PLC
EXTENDED FILE SYSTEM FOR FMD AND NANO-10 PLC Before you begin, please download a sample I-TRiLOGI program that will be referred to throughout this manual from our website: http://www.tri-plc.com/trilogi/extendedfilesystem.zip
DEPLOYMENT GUIDE Version 1.2. Deploying the BIG-IP System v9.x with Microsoft IIS 7.0 and 7.5
DEPLOYMENT GUIDE Version 1.2 Deploying the BIG-IP System v9.x with Microsoft IIS 7.0 and 7.5 Deploying F5 with Microsoft IIS 7.0 and 7.5 F5's BIG-IP system can increase the existing benefits of deploying
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
1 Recommended Readings. 2 Resources Required. 3 Compiling and Running on Linux
CSC 482/582 Assignment #2 Securing SimpleWebServer Due: September 29, 2015 The goal of this assignment is to learn how to validate input securely. To this purpose, students will add a feature to upload
CIS 551 / TCOM 401 Computer and Network Security. Spring 2007 Lecture 20
CIS 551 / TCOM 401 Computer and Network Security Spring 2007 Lecture 20 Announcements Reminder: Project 3 is available on the web pages Due: April 3rd Midterm II has been graded Today: Web Security [Some
Using RADIUS Agent for Transparent User Identification
Using RADIUS Agent for Transparent User Identification Using RADIUS Agent Web Security Solutions Version 7.7, 7.8 Websense RADIUS Agent works together with the RADIUS server and RADIUS clients in your
