HTTP (syper text transfer protocol)(6).ppt

IshaanKumar43 7 views 45 slides Jul 21, 2024
Slide 1
Slide 1 of 45
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45

About This Presentation

http full details work with ssh and wihtout sshl


Slide Content

HTTP
Hypertext Transfer Protocol

HTTP 2
What It Is
Protocolfortransferofvariousdata
formatsbetweenserverandclient
–Plaintext
–Hypertext
–Images
–Video
–Sound
Meta-informationalsotransferred

HTTP 3
Uniform Resources
URL
–UniformResourceLocator
–Referstoanexistingprotocol
http:,wais:,ftp:,mailto:,gopher:,news:
–Pointstoadocumentonaspecificserver
URN
–UniformResourceName
–Globallyunique,persistentidentifier
Independentoflocation

HTTP 4
Uniform Resources
URI
–UniformResourceIdentifier
–CollectionofURL’sandURN’s

HTTP 5
URL
<scheme>://<host>:<port>
/<path>;<parameters>?<query>
#<fragment>
–scheme
Theprotocolyouareusing
–host
Hostnameoripnumber
–port
TCPportnumberthatprotocolserverisusing
–path
Pathandfilenamereferenceofobjectonserver

HTTP 6
URL
<scheme>://<host>:<port>
/<path>;<parameters>?<query>
#<fragment>
–parameters
Anyspecificparametersthatobjectneeds
–query
QuerystringforaCGIprogram
–fragment
Referencetoasubsetofanobject

HTTP 7
URL and HTTP
AllpartsofURL,exceptparameters,
usedwithhttp
Schemeandhostcanbeomittedwhen
referencedobjectisonsamemachine
asreferringdocument
Portcanbeomittedsolongas
referencedhostisrunningonportlisted
inyour/etc/servicesfile
–Usuallyport80

HTTP 8
URL and HTTP
Fullpathusedwhenreferringto
anotherserver
–Relativepathonsameserver
ReferencewithrelativepathisapartialURL
QuerypassesparameterstoCGI
Fragmentjumpstolabelswithinapage
–http://www.x.y/z#foo

HTTP 9
Web Documents
–html
–ASCIItext
–Preformatted
postscript
–Images
GIF
JPEG
–Video
MPEG
–VRML
–Java

HTTP 10
Communication
Servertellsclientwhattypeof
informationiscoming before
informationarrives
–Fileextensions
.html.htm
.txt
.ps
.au
.gif.tiff.jpeg
.mpeg
.vrml.wrl
.java

HTTP 11
Communication
Textandinlineimages
–Separateobjects
Clientbrowsermayoptionallysenda
listofformatsitcanaccept
Documentcanbeaprogram
–Webserverexecutesprogramandsends
resultstoclient
–Generictermforthisprogramisscript,
gateway,orgatewayscript

HTTP 12
Scripts
Translatesinputfromclient
Callsotherprograms
Translatesoutputfromprogramsand
returnsittoclient

HTTP 13
Gateways
Translatesfromoneprotocolorservice
toanother
–HTTP/databasequery
–Databasequeryresults/HTTP

HTTP 14
HTTP 1.0
BernersLee,Fielding,Nielsen-1995
Usedinhypermediasystemsdistributed
acrossnetworks
Definesrequest-responseconversation
–Requestingprogram(client)establishes
connectionwithreceivingprogram(server)
–Clientsendsrequesttoserver
HTTPspecifiessyntax

HTTP 15
HTTP 1.0
Definesrequest-responseconversation
–Serverreplieswithresponse
httpspecifiessyntax
Doesnothandlenetworkconnectivity
orhowinformationistransmitted
TCP/IPdoesthis

HTTP 16
HTTP 1.0
HTTPrequest
–Method
–URI
–Protocolversion
–Optionalotherinformation
–Method[RequestURI]HTTP/1.0<CRLF>

HTTP 17
HTTP 1.0
Method
–Get
Returnsobject
–Head
Returnsinformationaboutobject
–Post
Sendsinformationtobestoredonserveroras
inputtoscript

HTTP 18
HTTP 1.0
Method
–Put
Sendsnewcopyofexistingobjecttoserver
Usuallynotallowed
–Delete
Deletesobject
Usuallynotallowed

HTTP 19
HTTP 1.0
Otherinformation
–UserAgent
Kindofbrowser
–If-Modified-Since
Returnsobjectonlyifmorerecentthangiven
date
Otherwisereturnsstatuscode304

HTTP 20
HTTP 1.0
Otherinformation
–Accept
Mimetypeswhichbrowsercanaccept
–MultipurposeInternetMailExtension
text/plain
text/html
application/postscript
image/gif
image/jpeg
audio/basic
video/mpeg
x-world/x-vrml

HTTP 21
HTTP 1.0
Otherinformation
–Authorization
Userpassword
GET/X/Y/Z.HTML HTTP1.0
UserAgent:Prodigy-WB/1.3e
Accept:text/plain
Accept:text/html
Accept:application/postscript
Accept:image/gif
–Accept:*/*

HTTP 22
HTTP 1.0
HTTPresponse
–Statusline
HTTP-versionStatus-codeReason
Status-codes1xx-Informational
–Reservedforfutureuse

HTTP 23
HTTP 1.0
HTTPresponse
–Statusline
Status-codes2xx-Success
–Theactionwassuccessfullyreceived,understood,
andaccepted
200OK
201POSTcommandsuccessful
202Requestaccepted
203GETorHEADrequestfulfilled
204Nocontent

HTTP 24
HTTP 1.0
HTTPresponse
–Statusline
Status-codes3xx-Redirection
–Furtheractionmustbetakeninordertocomplete
request
300Resourcefoundatmultiplelocations
301Resourcemovedpermanently
302Resourcemovedtemporarily
304Resourcehasnotmodified(sincedate)

HTTP 25
HTTP 1.0
HTTPresponse
–Statusline
Status-codes4xx-Clienterror
–Therequestcontainsbadsyntaxorcannotbe
fulfilled
400Badrequestfromclient
401Unauthorizedrequest
402Paymentrequiredforrequest
403Resourceaccessforbidden
404Resourcenotfound
405Methodnotallowedforresource
406Resourcetypenotacceptable

HTTP 26
HTTP 1.0
HTTPresponse
–Statusline
Status-codes5xx-Servererror
–Theserverfailedtofulfillanapparentlyvalidrequest
500Internalservererror
501Methodnotimplemented
502Badgatewayorserveroverload
503Serviceunavailable/gatewaytimeout
504Secondarygateway/servertimeout

HTTP 27
HTTP 1.0
HTTPresponse
–Descriptionofinformation
Server Typeofserver
Date Dateandtime
Content-Length Numberofbytes
Content-Type Mimetype
Content-LanguageEnglish,forexample
Content-EncodingDatacompression
Last-Modified Datewhenlastmodified
Expires Datewhenfilebecomes
invalid

HTTP 28
HTTP 1.0
Problems
–HTTPisstateless
EachrequestrequiresseparateTCPconnection
Serverdoesn’trememberpreviousrequests

HTTP 29
Evolution of HTTP
HTTP/0.9-1990
–Requestmethod+URI+crlf
GET/pets/index.html
Justfilecontentssentback
–Noheaderinformation
Gopherinfluence
–Mediatypes
Singlecharacterindicatedoneoftentypes

HTTP 30
Evolution of HTTP
HTTP/1.0-1995
–Meta-informationbetweenclientand
server
Mediatypes
–MIMEtype/subtype
Statuscodes
Thisinformationinfluencedthedevelopmentof
websearchengines
–Caching
–Authorization

HTTP 31
Evolution of HTTP
HTTP/1.0-1995
–Problems
Scalability
–Highnumberofclientsvisitserverforshorttime
Flashcrowd
Bandwidth

HTTP 32
Evolution of HTTP
HTTP/1.1
–Byteranges
Requestofadocumentsubset
–Adobe'sPortableDocumentFormat
–Streamingmultimedia
Eliminates unnecessary client/server
communication
Aninterruptedtransferwhichisrestartedcan
bemoreefficient

HTTP 33
Evolution of HTTP
HTTP/1.1
–Contentnegotiationwithqualityfactors
Qualityfactors
–Realnumbersbetween0and1
Defaultis1
Accept-Language:fr,en-gb;q=0.8,en;q=0.7

HTTP 34
Evolution of HTTP
HTTP/1.1
–Chunkedencoding
Transmissionofstreamingmultimedia
–Oneframevariesinsizeandcompositionfromthe
next
Streamingvideo
–Entireimagetransmittedinfirstchunkand
differencestothepreviousimagearetransmittedin
thenextchunk

HTTP 35
Evolution of HTTP
HTTP/1.1
–Protocolswitching
Clientcanspecifyanotherprotocolmoresuited
todatabeingtransferred
–Messageintegritychecks
–Digestauthentication
InHTTP/1.0,usersentusernameandpassword
overthenetwork
InHTTP/1.1,theclientandtheservernever
sendtheactualusernameorpasswordoverthe
network

HTTP 36
Evolution of HTTP
HTTP/1.1
–Persistentconnections
InHTTP/1.0,ifasinglepageincludesinline
images,multipleframes,animation,andother
externalreferences,tobrowsethispagewould
requiremanyreconnections
In HTTP/1.1 there are multiple
request/responsetransactionsperconnection
Clientscanpipelinerequeststotheserverby
sendingmultiplerequestsatstartofsession

HTTP 37
Evolution of HTTP
HTTP/1.1
–Cachemanagementwithentitytags
WhenbodyofURIchanges,sodoesitsentity
tag
–Usefulformaintainingcaches,asupdatedURI
informationwouldhaveadifferententitytag
Cantellifsameresourceisbeingcachedfrom
multipleURI'sasitwouldhavesameentitytag
Strongentitytag
–Changeswhenanyportionofresourcechanges
Oneormorebyteschange
Weakentitytag
–Changesonlywhensemanticsofentity-body
changes

HTTP 38
Evolution of HTTP
HTTP/1.1
–Softwaremultihoming
NumberofavailableIPaddressesisaconcern
InHTTP/1.0,servercouldhavemultipleDNS
entriesandIPaddresses,eachcorresponding
todifferentdocumenttree
InHTTP/1.1,servercouldhavemultipleDNS
entriesandonlyasingleIPaddress

HTTP 39
The Future
HTTP-NextGeneration
–Manychannels
OneTCPconnectioncarriesmultiplechannels
forparallelcommunication
Differentprotocolsoneachchannel
–Traditionalway
MultipleTCPconnectionsbetweensameclient
andserver
Pagescontainimages,video,audio,andhtml

HTTP 40
The Future
Extensibility
–AddingnewMIMEheadershasbeenthe
traditionalwayofextendinghttp
–Drawbacks
Noindicationwhetherreceivingend
understandstheseextensions
Noindicationwhetherextensionisintendedfor
allpartiesalongmessagepathoronlyfor
certainintermediaries
Noindicationoforderinwhichextensions
shouldbeinterpreted

HTTP 41
The Future
Extensibility
–PEP
ProtocolExtensionProtocol

HTTP 42
The Future
Performance
–ParsingMIMEheaderswastesresources
–Stickyheaders
Persistentstatebetweenmultiplehttprequests
Notallheadershavetobeincludedinevery
httpmessage
Distributedauthoring
–Eventnotification

HTTP 43
The Future
Cachingandreplication
–Popularsitesarereallypopular
–Flashcrowdshappen
–Hotspotsonthenetaredynamic
–Amountofdynamicdataisincreasing

HTTP 44
The Future
QoS
–Qualityofservice
–Noteverythingmustbetreatedwithsame
QoS
–RequiredQoSshouldbemadeattheuser-
interface

HTTP 45
The Future
Real-timeprotocolsandtheweb
–Streamingprotocols
Audio/video-on-demand