World Wide Web - PowerPoint PPT Presentation

1 / 55
About This Presentation
Title:

World Wide Web

Description:

1995 - more Internet email than US post. 1999 - x million docs & y million servers ... User-Agent: Mozilla/2.0 CR/LF Jan.2001. C.Watters. 37. HTTP REQUEST PROTOCOL ... – PowerPoint PPT presentation

Number of Views:45
Avg rating:3.0/5.0
Slides: 56
Provided by: carolyn97
Category:
Tags: postmozilla | web | wide | world

less

Transcript and Presenter's Notes

Title: World Wide Web


1
World Wide Web
  • Basics

2
What is an internet anyway?
  • 2 or more networks that can communicate

3
Historical View Internet
  • 1969 - Telnet
  • 1970 - 4 computers
  • Stanford, UCLA, UC Santa Barbara, U Utah
  • 1971 - FTP
  • 1983 - 562 computers on the internet
  • 1993 - 1.2 million computers on the internet
  • 1999 - ?? Kazillions

4
What is the World Wide Web ?
  • Hypertext connectivity of documents

5
Size of the Internet
6
(No Transcript)
7
The web
  • The Web is protocol that uses the internet as the
    communication structure
  • links documents stored in computers communicating
    with the internet
  • main authority W3 consortium
  • www.w3.com

8
Historical View WWW
  • 1989 - Berners Lee - web doc proposal
  • 1990 - Berners Lee - text browser (physicists)
  • 1992 - public access to web docs at CERN
  • 1993 - 60 web servers Mosaic (graphics)
  • (500 servers by year end)
  • 1995 - more Internet email than US post
  • 1999 - x million docs y million servers

9
http//www.lexis-nexis.com
10
Basics
  • Web server - machine that services internet
    request
  • Web client - machine that initiates internet
    request
  • Browser - software to interact with internet data
    at the client
  • TCP/IP - internet data protocol
  • FTP - internet file transfer protocol
  • HTTP - hypertext transfer protocol
  • HTML - hypertext markup language

11
Client-Server Model
12
Looking in the Cloud
  • /opt/sbin/traceroute

13
CAnet2 layer 2 links
14
CAnet3 Physical Links
15
1. Client-Server Web
  • Cloud model
  • TCP/IP
  • HTTP and MIME types
  • FTP
  • protocol stacks

16
Servers and Clients
  • Servers - computer systems at the end of a
    network that store files and provide other
    services
  • Clients - computer systems that are end points
    for users of the data

17
Network Architectures
  • ISOs OSI model
  • 1970s
  • International Organization for Standards
  • Open Systems Interconnection reference Model
  • 7 layer architecture

18
ISO - OSI Model
  • Application layer
  • presentation layer
  • session layer
  • transport layer
  • network layer
  • data link layer
  • physical layer
  • Ftp, telnet, etc
  • data compression, format
  • set up connections
  • end-to-end trans of packets
  • guide packets along links
  • send packet between nodes
  • deliver bits between nodes

19
ISO OSI model
20
INTERNET MODEL
  • 4 layers
  • Application layer
  • communication services (ftp, telnet, email)
  • transport layer
  • transmission of messages end-to-end
  • network layer
  • transmission of messages sequence of links
  • link layer
  • transmission of packet across one link

21
Internet layers
22
Application Layer
  • FTP
  • HTTP
  • SMTP
  • telnet
  • etc

23
TCP/IP
  • Suite of protocols made the standard for the
    Internet
  • facilitates communication between heterogeneous
    and similar networks that are connected together
  • reliable, connection oriented, byte stream
    protocol

24
Transport layer TCP and UDP
  • TCP
  • transmission control protocol
  • full duplex byte stream
  • virtual path (connected)
  • error free
  • uses acknowledgements
  • 16 bit address of ports
  • UDP
  • user datagram protocol
  • connectionless
  • no acknowledgements
  • no flow control
  • no resending of erroroneous packets
  • some error detection
  • 16 bit port addresses

25
TCP/IPTransport Control ProtocolInternet
Protocol
26
TCP and IP
27
Network Layer IP
  • Delivers packets up to 64kbytes, 1 at a time
  • Each packet has a header
  • sending host and intended host network addresses
  • 32 bit addresses
  • IP layer (like UDP)
  • unreliable
  • connectionless

28
Link Layer links
  • Connect computer to Internet
  • SLIP
  • serial line IP (asynchronous, 1 char at a time)
  • move IP packets to common link (phone line)
  • PPP
  • point-to-point protocol
  • also synchronous transfer for packets

29
Data encapsulation using TCP on Ethernet
30
TCP/IP apps
  • TCP/IP software usually includes
  • remote terminal client using TELNET protocol for
    remote login
  • electronic mail client using SMTP protocol to
    transfer e-mail to remote system
  • file transfer client using FTP protocol to
    transfer files between 2 machines

31
HTTPHyperText Transport Protocol
  • Native protocol for WWW
  • sits on top of internets TCP/IP protocol
  • HTTP is a 4 step process per transaction
  • uses a predefined set of document formats from
    MIME

32
MIME
  • MIME - multipurpose internet mail extensions
  • defines file formats (images, video, text, etc)
  • e.g. Content-type text/html
  • Data type/subtype
  • text/html
  • text/plain
  • image/gif
  • video/mpeg
  • application/msword
  • etc!!!

33
HTTP Connection
  • 1. Client
  • makes an HTTP request for a web page
  • makes a TCP/IP connection
  • 2. Server accepts request
  • sends page as HTTP
  • 3. Client downloads page
  • 4. Server breaks the connection

34
HTTP is Stateless!!!!
  • Each operation or transaction makes a new
    connection
  • each operation is unaware of any other connection
  • each click is a new connection
  • So how do they do those shopping carts??

35
What does it look like?
  • Header object file
  • Header
  • plain text
  • info about the object (MIME etc)
  • methods allowed
  • etc
  • browser sends a header to server each time you
    ask for information
  • server sends a header and possibly content

36
HTTP Transaction Example
  • GET /catalog/ip/ip.htm HTTP 1.0
  • Accept text/plain
  • Accept text/html
  • Referer http//www.june.com/catalog.html
  • User-Agent Mozilla/2.0
  • ltCR/LFgt

37
HTTP REQUEST PROTOCOL
  • Request Simple Full
  • Simple GET ltURIgt CRLF
  • Full Method URI ProtVersion CRLF
    ltHTRQ Headergt CRLF ltdatagt
  • Method GET POST HEAD .
  • ltHTRQ Headergt ltFieldnamegtltValuegtCRLF
  • ltdatagt MIME conforming message
  • www.w3.org/Protocols/HTTP/

38
HTTP Header fields
  • General-header fields
  • used for both requests and responses
  • Request-header fields
  • used for responses
  • extra client information for use by server
  • optional

39
General-header fields
  • Date mon,11, Jan 1999 081432 GMT
  • MIME-version 1.0
  • Pragma no cache
  • directives

40
Request-header fields
  • acceptable MIME types for response
  • Accepttext/html
  • Accept.
  • 401 response from client
  • Authorization Basic abcdef (uuencoded username
    and password)
  • Fromclient-email-addr

41
More Request-header fields
  • If-Modified-Sincedate
  • conditional get
  • source of current requested Url
  • RefererURL
  • robot/browser identification
  • User-AgentMozilla/2.0

42
Looking at the HTTP Header Values
  • In Perl
  • ENVFrom
  • In Netscape
  • www.cs.dal.ca/watters/cgi-bin/webcourse/env.html

43
HTTP Methods
  • Client requests either
  • simple request
  • full request
  • Request-line method Request-URI HTTP-version
    CRLF
  • GET /catalog/ip.html
    HTTP/1.0

44
Simple requests
  • Only for HTTP 0.9
  • only uses Get method
  • causes the server to locate and transfer the
    object specified
  • client responsible for handling the object
  • GET lturigt CRLF

45
Full Request
  • Uses HTTP version and more methods
  • method tells server what to do to the resource
    requested
  • Methods
  • GET
  • POST
  • HEAD

46
GET Method
  • Request server to retrieve object specified
  • conditional GET
  • request message includes
  • If-Modified-Since in header

47
HEAD Method
  • Like GET but does not return the object
  • returns a header about the resource requested
    (metainformation)
  • good way to test link validity

48
POST Method
  • Include an object in the request
  • server should use that object in processing the
    request
  • must include a Content-Length in header

49
HTTP Response Message
  • HTTP protocol version
  • 3 digit status code
  • reason phrase
  • CRLF
  • optional header fields
  • CRLF

50
HTTP Response Header Fields
  • Additional information about the server
  • such as
  • LOCATION exact URI address
  • SERVER server software (CERN/3.0)
  • WWW-AUTHENTICATE
  • status 401 responses (unauthorized request)
  • server challenges client
  • client may use to send authorization info to
    server

51
Understanding STATUS Codes
  • 1xx - not yet in use
  • 2xx - action successful
  • 3xx - further action needed
  • 4xx - client request error
  • 5xx - server error

52
HTTP Transaction
  • 1. Client and server establish a connection
  • 2. Client makes a request
  • 3. Server makes a response
  • 4. Server terminates connection

53
  • Step 1 establish connection
  • TCP/IP connection set up
  • uses a port number as application reference
  • usually port 80
  • ports lt 1024 are privileges (gt1024 are open)
  • Step 2 client request
  • Http message sent with a request line
  • request-line method URL HTTP version

54
Web Port Assignments
  • 21 FTP
  • 23 Telnet
  • 25 smtp (mail)
  • 70 gopher
  • 79 finger
  • 80 HTTP

55
  • Step 3 Server response
  • server sends Http message and optionally
    requested data
  • resp-message HTTP version statuscode
    reason-phrase optional stuff
  • Step 4 connection terminated
  • usually the server
  • sometimes the client stops it
  • anything else, whoever notices terminates
Write a Comment
User Comments (0)
About PowerShow.com