throbber
Diplomarbeit in Telematik, TU Graz
`
`I nstitut fur Informations/ererbeitung und Computergatutzte neue Medien
`
`The World-WideWeb Gateway to Hyper-G:
`Using a Connectionless Protocol to Access
`Session-Oriented Services
`
`Christian Dede‘
`
`Gutachter: O.Univ.-Prof. Dr.phiI. Dr.h.c. Hermann Meurer
`
`Betreuer: Dipl.-lng. Dr.tedIn. Frawk Kaape
`
`Graz, imMé21995
`
`MAC002662
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 1
`
`

`
`Abstract
`
`In thisthesis, posébilitiesae studied how session-oriented sewioeson the Internet can be
`
`made bleto users of dient progranstha useaoonnedionlessepplicaiorrlevel
`
`protocol .
`
`The concepts and propetti is of two Hypermedia I nfomiati on Systems, the World-V\fi de Web
`(\/\lV\NV)..aJd.Hyper—.G. aradeacri bed and a ogmpaism mt1~e_er1.thes_e tiug s_3zs_t_e_n3s i§.giyq1.
`A gateway program was devel oped which is used as a protocol oonvener between the sessi on
`
`oriented Hyper-G client-server protoool aid the oonnectionles Hypertext Transfer Protocol
`
`(HTTP). A meohanisn was implemented that dlows to cfifferentiae HTTP requests aid to
`mgn them to Hyper-G sessions The gate/vay provides users of World-\Mde Web clients
`with sess'on-oriented aooesto information res ding on Hyper—G servers
`
`MAC002663
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 2
`
`

`
`Table of Contents
`
`1. Introduction ............................................................................................................. ..1
`
`2. The World—Wide Web ............................................................................................. ..3
`
`2.1. History ........................................................................................................ ..3
`2.2. Architecture ................................................................................................ ..4
`
`2.3. Uniform Resource Locztor (URL) ............................................................... ..5
`
`2.3.1. Syntax .......................................................................................... ..6
`2.3.2. The HTTP Scheme ....................................................................... ..7
`
`2.3.3. Encoding of Prohibited Characters................................................ ..8
`
`2.3.4. Security Conéderaions ................................................................ ..8
`
`2.4. Hypertext Transfer Protocol (HTTP) ........................................................... ..9
`
`2.4.1. Request ......................................................................................... ..10
`2.4.1.1. Methods ......................................................................... ..11
`
`2.4.1.2. Headers .......................................................................... ..12
`
`........................................... ..14
`2.4.2. Response........ ..7............. ... ..........
`2.4.2.1. Stausline....................................................................... ..14
`
`2.4.2.2. Headers .......................................................................... ..17
`
`2.4.3. Considerations about Log lnformaion .......................................... .. 19
`
`2.5. Hypertext Markup La1guage(HTM L) ........................................................ .. 19
`
`2.5.1. Spedficaion Levels...................................................................... ..20
`
`2.5.2. Generd wntax ............................................................................. ..21
`2.5.3. Elements ....................................................................................... ..22
`
`2.5.3.1. Elementswithin the HEAD Element .............................. ..22
`
`2.5.3.2. Andwors.......................................................................... ..23
`
`2.5.3.3. Headings‘. ....................................................................... ..23
`
`2.5.3.4. Character Highlighting ................................................... ..23
`
`2.5.3.5. Paragraphs...................................................................... ..24
`2.5.3.6. Lists ............................................................................... ..24
`
`2.5.3.7. Other Formatting Styles ................................................. ..25
`
`2.5.3.8. lnline Images.................................................................. ..25
`2.5.4. Fill-Out Forms.............................................................................. ..26
`
`2.5.5. HTML 3.0 .................................................................................... ..29
`
`2.6. Future Developments .................................................................................. ..30
`
`MACO02664
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 3
`
`

`
`3. Hyper-G ................................................................................................................... ..31
`
`3.1. Design Concepts ......................................................................................... ..31
`
`3.2. Daa Orgenizaion ....................................................................................... ..32
`
`3.2.1. Collection Hierarchy versus Hypertext .......................................... ..32
`3.2.2. Document Clusters........................................................................ ..33
`
`3.2.3. Link MZTQGITIHII ......................................................................... ..34
`3.3. Faures ...................................................................................................... ..34
`
`3.3.1. Seaoh Facilities............................................................................ ..34
`
`3.3.2. Navigation .................................................................................... ..35
`3.3.3. Identifimion Modes and Aooess Rights........................................ ..35
`
`3.3.4. lnteroperaaility with other Information Systems ........................... ..36
`3.3.5. Document Cache........................................................................... ..37
`
`3.4. Applications................................................................................................ ..38
`3.5. Comperi son between Hyper-G and
`......................................:.;-.:‘.....39
`
`..... .. .......................... ..43
`4. Implementation of the Gateway .........................................
`"
`4.1. God ............................................................................................................ ..43
`4.2. Basic Concept ............................................................................................. ..45
`
`4.2.1. Providing Connectionoriented Aooees with a Connectionless
`Protoool .................................................................................................. ..45
`
`4.2.2. Padlel P_rooesa'ng of Requests..................................................... ..48
`4.2.3. Process Model .............................................................................. ..49
`
`4.2.4. Differentiaion of Users ................................................................ . .55
`
`4.2.5. URL Formation ............................................................................ ..58
`
`4.3. Comparison with an Altemaive Concept .................................................... ..61
`
`.................... ..63
`4.4. Structure aid Functiond ity of the Program ......................
`4.4.1. The Main Module ...................................................... ..'................. ..e3
`4.4.2. The CI as \/WVWSI ave.................................................................. ..64
`
`4.4.3. irnplementation Details ................................................................. ..66
`
`4.5. The User's View of the Gateway ................................................................. ..67
`
`4.5.1. Entry Page .................................................................................... ..68
`4.5.2. Menu Line .................................................................................... ..69
`
`4.5.3. Collection Lists............................................................................. ..71
`
`4.5.4. Documents.................................................................................... ..72
`
`4.5.5. Searching ...................................................................................... ..73
`
`4.5.6. Options Menu ............................................................................... ..76
`4.5.6.1. User Identification .......................................................... ..76.
`
`MACOO2665
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 4
`
`

`
`4.5.6.2. Status ............................................................................. ..77
`
`4.5.6.3. Preferred Laiguage ......... ... ............................................ ..78
`
`4.5.6.4. Display Setting ............................................................... ..78
`
`4.5.7. Online Help .................................................................................. ..79
`4.6. Customization ............................................................................................. ..79
`
`4.6.1. Useof Filesfor Building the User Interface .................................. ..79
`
`4.6.1.1. Specification of Place Holders........................................ ..80
`
`4.6.1.2. Desrription of Files ..... .. ................................................. ..83
`
`4.6.2. Gateway Commands ..................................................................... ..87
`
`4.6.3. Commandl ineparaneters and Environmentvaidnles ..................... ..90
`
`4.7. Proxy Gaeway Support .............................................................................. ..93
`
`4.7.1. Proxy Server Concept ................................................................... ..93
`
`4.7.2. Using theVWVW Gae/vay asa Proxy Gaaivay ............................ ..94
`
`Bibliography ................................................................................................................ ..97
`
`MACO02666
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 5
`
`

`
`1. Introduction
`
`As public interest for a gl obd information infrastructure currently ina tremendously,
`
`modern hypermedia informai on systems are beoonii ng more aid more important on
`
`internaiona informal on networks. At the moment, there are different systems at ready in
`
`wide use but also under development. Interoperability is therefore one of the key iwies
`
`in fact, different informaion systems, at based on the dient-sewer pn'ncipie,~ usudly differ in
`
`the applicaion—levet protooolswhich they use for communication between clients and
`
`servers Aslong as this is only limited to diverse naiii rig conventions aid other "rninor“
`
`differences oonvers‘ on between two protooois cai easily be paformed.
`
`A problem arises, however, if one system uses a oonnecti onleas and totally stateless dient-
`
`server protocol and the other system is based on a oonnecti orioriented protocol that ma'nta' ns
`
`a_ state
`
`oonsecuti v_e transections_This i s the casewith the two hypamedi a
`
`infomiati on wstems World-Wide Web aid Hyper-G. Moreover, there ae feaurestha are
`
`only sipported by one of these systems
`
`Therna'n god of thisthesisisto study possbilities how aoonnection-oriented aocesto a
`
`Hyper-G sever c:ai be provided for usersof \/WV\N clients
`
`The approach tekei for this project was to build a gate/vay that cai be seen as a \/\NV\N server
`
`from the VWV\N client's view aid as a Hyper-G client from the Hyper-G servers vie/v. I n
`
`fact, the gaeway progran is a oomplete V\NVW save‘ since it meets two requirements
`
`-
`
`-
`
`It ta ks the client-server protocol used by the VWVW when communicating with dieits.
`
`It is ableto provide documents in formats used by the VWVW.
`
`The difference to a usua V\NVW sever is tha the gateway does not retrieve resources from a
`
`si mplefile system, but has a Hyper-G server as its back-erid daaiase.
`
`The gateivay is designed to work as a normd Hyper-G olient whidi uses a oonnedion-
`
`oriented dient-sen/er protocol and nia'nta' ns ai individua session for each user of a WWW
`
`client. For this purpose, a oonoept wa devel oped tha dlows to distinguish requests from
`
`different V\NV\N clients aid to gn them to already opened Hyper-G sefions
`
`The fact that the gateway has now been in use with every Hyper-G server for sometime may
`
`be seen as ai indicztion that the project was a s.icoess‘u| attempt to irmrove interoperability
`
`between Hyper-G aid the Worl d-Vifi de Web.
`
`MACO02667
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 6
`
`

`
`In chaater 2 of thisthesis an overview of the Worid-WIdeWeb project isgiven be‘ore the
`
`three key concepts of the V\NV\N, the Hypertext trmsfer protocol, Uniform Resource
`
`Locaors, awd the Hypertext Ma‘kup Language are dealt with in some more detail.
`
`Chapter 3 descri bes Hyper-G, its concepts features and qaplicaions. At the end of this
`diapter, a comparison between Hyper-G aid the VWVW is drawn as differences md
`
`s'miIa1'tieshave an important impact on thedesign of the gateway.
`
`Findly, the implementaion of the gae/vay progran is described in chapter 4. The god of the
`
`project and the concepts developed ae explained in deta'|. After the structure and the
`
`functiond ity of the program is shown, a deta'ied dam‘ ption for users of the gateway is given.
`
`A sepaate section dedswith posbilities of progran customization. Last but not least, ways
`
`how to use the gateway together with the Hyper-G document came as a proxy server ae
`discussed.
`
`MAC002668
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 7
`
`

`
`2. The World—V\fide Web
`
`Theofficid ddinition describestheWor|d—V\fide Web (\/WVW, W3 or sometimes simply
`
`cziled The Web) esa "wide-area hypermedia information retrieval system". ltsaim isto give
`
`universd aooessto a lage universe of documents It is one of the informeti on systems
`
`currently working on top of the Internet and it is probwly the most popular at the moment.
`
`Although it is strongly based on hygext, it indudesthe handling of other typesof data as
`
`well, such as image, sound, movie, etc. Being the first widespread hypermedia system
`
`availabl e through the Internet, the Web has replaced some "traditi ond" informaion 9/stems.
`
`Information about the \/WVW in general can befound for exanple in [BERNERSLEE92],
`
`[BERNERSLEE92a], [HUGHES93] and [BERNERSLEE94a]. Useful inforrnaion for the
`VWVW user can befound in [KROL94], whidw also oomp€restheVWVWwith other
`
`information s/gems available on the Internet.
`
`2.1. History
`
`The bi rthpl aoe of the Worl d-Vlfi de Web w$ the European Laboratory for Parti d e Physics
`
`(CERN) locaed in Geneva, S/vitzerland. For a long tirnethere hasbeen a specid need for
`
`wide~a'ea hypertext to support the rsseaoh activities of patide physicists The need aises
`
`from the geogrephi(:d dispersion of research institutes working together on the sane proj ects.
`
`Very often reseachers i noluding students awd vis'ti ng scientists only work at one institute for
`
`a limited period of time before leaving for some other location. "New" reseaohers replacing
`
`them have to get "up to speed" on projectsquiddy. Much of the informaion they need isin
`
`fact available online, but retrievd aways needed some speci a knowl edge of the network.
`
`One had to remember complicated instructions for different protocols, host names, and
`
`termi nd types. One of the origind aims of the initiaive at CERN was to provide a system
`
`with a"point-and dick" interfaoe.
`
`The first project proposd dates from the yea 1989 and was written by Tim BernersLee. In
`
`October 1990 the project proposd was reformulated with Robert Ca'||ieu as ooaithor and in
`
`Novenber of the sane yea a prototype of the initid \/WV\N ted browser/editor was
`
`developed for the NeXT usi ng the graphic user interface tool 3 NeXTStep. At Chri arnas 1990
`
`the NeXTStep a1d a line mode browser were presented at CERN. In May 1991 the line mode
`
`MACO02669
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 8
`
`

`
`browser (vwvvv) was released on oentrd CERN machines The National Center of
`Sipecorrputing Applications (NCSA) a the Univesity of lllinois, Urbaia-Chaiipagn,
`
`stated to develop a niulti-platform interface to the World-Vlfi de Web aid in Februay 1993
`
`the fi rst a pha vesi on of M arc Andreeserfs " Mosa' c for X" [ANDREESSEN93] was
`
`released. in Septenbe of the same yea the NCSA released working vesionscf Mosaic for
`
`at mq'or platforms including vesionsfor PCNW ndowsend the Macintosh. At CERN the first
`
`intenaiona World-Vlfide Web Confeencewas held in May 1994.
`
`A brief history, writtei by R. Ca'llia.i, who hasfollcwed the development of the Web from
`
`the very beginning, cai befound in [CAlLLlAU95]. A detailed list of datesconoerning the
`
`history oftheWWWcei beobta'nedfrom
`
`http://i nfo. cern. ch/hypertextIVW/VH story. htnt
`
`2.2. Architecture
`
`The Worid-Wide Web, like maiy othe mplicai ons on globa networks, uses a dient—server
`
`model. V\NVW clients, oftei celled "VWVW browsers’, try to fetch information from remote
`
`servers, whee the information resides aid present the data to the use. VWVW savers must
`
`make information avalayle. Thissornetimes indudesthe ability to perform seeches The
`
`server isfree to geierate requested documents by sending red fi lesor by generating virtud
`
`_ hypertext on the fly. This mdtesit possiblethat a "gateway" serve oould paa hypetext
`
`image of aiother wsten to a \/W\/W browser.
`
`The advantages of such an architecture ee that the user interface rema' ns the sane, no matter
`
`wha type of serve the client is connected to for a paticul er traisacti on aid the the use
`
`need not undestaid the differences between protocols The concept of hypertext is
`
`arfficiently sirriple to require no tra' ning for a compute use. As hypertext is transferred in
`
`mek—up form, whidi is a logica representation compared to the actual form in which the
`
`information is presented to the use, the dieit program can mate optima use of fonts,
`
`col ours, aid othe interface resources ava‘ I ail e on the user's corrputer.
`
`To make thisflow of information possible three major "staidads' aid oonveitions wee
`
`defined. At first, a consi stent address system using a compact syntax for a "Uniform Resource
`
`Locaoi" was defined. This is described in diaiter 2.3. In addition to other protocolswhidi
`
`may be used with the V\NVW a na/v p_rotocol, the "Hypertext Traisfe Protocol" was defined
`
`givi rig performaice aid features not otherwise ava'|d)l e. This protocol is explained in diqite
`
`MACOO2670
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 9
`
`

`
`2.4. A set of dataformascai beused in which datacai betraisferred. Oneof them isarm
`
` , the Hypertext Markup Laiguage, described in diepter 2.5., whidi isthe ma'n
`
`fomia for traisrnitting hypatett.
`
`idedly, these oonventi ons diould diow current aid even future softvvae systems to work
`
`together across different platforms
`
`Interoperability with other systems
`
`Standard protoooisused by theV\NV\N are FTP, which alowsacoessto adiivesof at kinds.
`
`of infonriaion including software and documentation, aid NNTPwhid1 is used to access
`
`network ne/vs By the way, news atidesmdte good exarplesof documents which can be
`
`converted into hypertext, athey contain references to other atides aid news groups
`
`other protocols used by exi sting information systems are supported by the VWV\N. In
`
`paticula there ae the Wide Area I nformation Service (WAI S) [KAHLE92]1which alows
`
`searching through indexedmaeri a. aid finding atides based on.what.they.conta'.n,. aid
`
`Gopher [Li NDNER94], which provides a menu system for browsing resources on the
`
`Internet. The functionaity offered by WAI 8 ca be used by VWVW browsas swell as
`
`Gopher menuscai easily beoonverted into aiist of text eierrientswith hypertext linksto other
`documents So the Gopher spaoecai be used as part of the WWW.
`
`Providing I nformation
`
`One of the strategies of theV\NWV is tha existing onli ne information, no matter in what
`
`fomiat it isstored, ma’nta'ned aid origindiy made available, may be "published" aspat of
`
`the web. Thiscai be achieved by giving acoessto datathrough snail aid simple server
`
`prograns Rather than having one s'ngIetype of VWV\N server prograri, every server which
`
`understaidsat least one of the specified protocols aid which cai provide data in a least one
`
`of the wecified formats used by the World-Wide Web isa"VWVW server". This aiproach is
`
`probably one of the reasons why the use of the WWW is incrng so quid<iy.
`
`2.3. Uniform Resource Locator (URL)
`
`This chapter gives a definition of the Uniform Resource Locaor as specified in [BERNERS
`
`LEE94], which isasocaied the"URL specificziion" in this chapter.
`
`MAC002671
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 10
`
`

`
`In thefirst pat, thegenerd 3/ntax isdescribed. Theseoond pat dedsonly with the specid
`
`ruleswhich ae qaplied to the HTTP protocol. Rulesfor other protocol sd1emesa'e omitted
`
`here In thethird pat, the socdled URL encoding isdescribed. And findly, some
`
`consi deraions about security of this mechanism a'e mentioned in thefourth pat.
`
`A URL isaformalized piececf information for location and accessof resourceson the
`
`Internet. The URL—sohemeis derived from conceptsintroduced by theVWVW globa
`
`information initiative. It hasbeen sucoemully used by the World-V\fide Web for quitealong
`time and is one of the main ideas that form the wholeconcept of the wvvvv.
`
`2.3.1. Syntax
`
`Origindly, URLs are a mapping of physical addresses of objectswhich are retrievableusing
`
`at ready estmlished protocols However, the generic syntax allows the design of new schemes
`
`for nanesto be resolved using protooolswhich have not been specified up to now.
`
`A complete URL consists of a nam'ng schemespecifier asthefirfi element followed by a
`
`firing. The way of defining anew URL scheme can ealy bee<pla‘ned. If you an encodeal
`
`protocol paanfiers necessary to access the object into a firing with a prefix to idmtify the
`
`protocol, you will haveane/v scheme.
`
`The exact forma of the firing is specific to the naming scheme. However, those schemes
`
`which are used in locaors of information on the lntemet have a common syntax for the firing
`
`whidw isthe socdled Internet protocol part. The naming scheme specifier is sepaaed from
`
`the firing by acolon.
`
`Naming scheme gecifiers
`
`http
`
`ftp
`
`Hypertext Transfer Protocol (see chapter 2.1.2.)
`
`File Traifier Hotocol
`
`The Gopher Protocol
`
`Electronic rna'l address
`
`ne/vs
`
`Usenet news
`
`tel net, rlogin Reference to interactive sessions
`
`wais
`
`Vlfide Area I nformai on Servers
`
`MACOO2672
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 11
`
`

`
`and some others which are less important. Moreover, new schemes may be registered by
`
`future specificaions
`
`The I nternet protocol part
`
`The second element of the URL consists of the Internet Protocol (l P) address part fol I owed
`
`by the path.
`
`The Internet Protocol (IP) address@
`
`This statswith adouble slash ''l/'' and endswith the following slash '‘l''. The double slash
`
`also indicaesthe presence of the lPaddre$ pat in acertain URL. Vwthin that pat are
`
`- 8 U£' DBFTE,
`
`which isoptlond and rarely used.
`
`- the internet domain name of the host. Itsforma is qaecified in RFC1034
`
`[MOCKAPETRI S87]. Instead of the dcma'n nane the I P
`
`‘address asaset of four decimd digitscan be used.
`
`- the port nurrber,
`
`which isgiven in decima notation dter a colon if it is not the
`
`default port number for the protocol.
`
`The pgh @
`
`Thisisthe rest of thelocator and it indudesinformation that should not beprocessed by the
`
`client. In genera, the slash "I" indicatesa level in a hierardty, with thelcwer level pat on the
`
`right side.
`
`2.3.2. The HTTP Scheme
`
`The HTTP protocol specifies that the path part is handled tratsparently. Only the servers de-
`
`reference URLs. The pan is pa$ed by the client to the server with my request, but is not
`
`aciudly understood by the client. Aocordi ng to [B ERN ERSLEE92a], the domment nane
`
`usual ly conta' ned in the path part should be composed of pri ntebl e chaacters and should not
`
`contain my information about paticular formats ava' table for a document or its length.
`
`If the URL whidw is sent to the client refers to the sane server that sardsthe URL, the host
`
`pat is omitted. in thiscase, onlythe path pat issent by theserver. Hcvvever, when aserver is
`
`being used magaelvay (especialy a"proxy gaarvay"). then the complete URL ispaeeed on
`
`MAC002673
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 12
`
`

`
`the HTTP command line. If thereisasearch pat present, it istreated aspat of thepah and
`
`therefore sent aspat of the HTTP command.
`
`2.3.3. Encoding of Prohibited Characters
`
`\/Vhen a system hasa local addressing sdweme, it is often useful to de‘inea mapping from
`
`local addressesinto URLs In this case, referencesto objectswithin theaddressing scheme
`
`may beaccessed (possibly viagaeways) globdly. The URL spedfication allowsthe
`
`definition of any mapping scheme provided tha it is unambiguous, reversible, aid produces
`
`vdid URLs It is recommended the! hierardwiczi structuresin agiven locd naming schane
`
`may be mapped onto the hi erarchicd URL path syntax. Thi sdlows the patid form of the
`URL to be used.
`
`According to the encoding scheme proposed by the URL spedfi cation, any character which is
`
`not allowed in a URL, or my character whose use, dthough technicdly ailowed, would
`posébly caise problems of corruption by imperfed gaezvays or because of different
`
`dwaacter sets, should be encoded afollcws Characters in question should be represented in
`
`the URL by a percentage si gn "%" followed by two hexadeci md digits (0-9, A-F) which
`
`represent the vd ue of the character.
`
`2.3.4. Security Considerations
`
`It should be mentioned that there isno guaraitee that objeclswhid1 could be located by
`
`certan URLs at onetirnewill be removed or moved to mother locaion at some late‘ time,
`
`which reeultsin changed URLs. Thesane URL could even point to one object at onetime
`
`and to another object at wrne other ti me.
`
`Another point is that it is sometimes possible to construct a URL with the intention to
`
`perfonn a ham! ess operai on, such as the retri era of an object aooordi ng to one protocol,
`
`that will in fact case a destrudive remote operation to occur. Typically, this isthe anewhen
`
`the URL coma’ ns a non-standard port number for the given protocol. If the server is in fast
`
`running a different protocol on that port number, this coul d cause probl ems, especid Iy when
`
`the instructions conta‘ ned in the URL have a tota Iy different meaning according to the other
`
`protocol.
`
`Finaly, asstaed in the URL specificaion, the use of URLs containing passwordsis dearly
`unwise.
`
`MACOOZ674
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 13
`
`

`
`2.4. Hypertext Transfer Protocol (HTTP)
`
`I n this diqiter, the apt icai on-level protoool whidi is used by the Wort d—Wi de Web for
`
`informal on retrievai md manipulation is explained. Thisversi on of the HTTP protoml,
`
`known as HTTP 1.0, isai upgradeof the origina protocol implemented in theealiest VWV\N
`releases
`
`The purpose of the Hypertext Trmsfer Protocol is to provide afast aid fl ad ble mediaiisn
`
`for following references between unitsof information whidi are distributed at different
`
`locations auos the I nternet. lts nane may be misi riterpreted. It is not only a protocol for
`
`transferring hypertext, but for traisferting ail sorts of information with the efficiency that is
`
`needed for following links in a hypertext wstem.
`
`The protocol is stateless aid obj ed-oriented. 8-bit transfer is always used. It provides several
`
`oommaidsfor retn‘ evat, manipulation and seeding of data in a distributed oolleboraive
`
`hyperm_e_di a.i_rito_rmat_i on s/sen. Qne of its pr9pg1tesi§.th.at_th§ set. of HTTP 99n.1rria_n<1§
`
`could easily be extended.
`
`The process of retrieving or mail pulai ng iriformai on usi rig this stael ess protocol a ways
`
`consists of two operations A request is sent from the dient to the inforrnati on source, the
`
`server. This request oonta' ns the type of operai on (retri evd , wachi ng, etc. ) Whldl the client
`
`waits the server to perform aid seoondly, some sort of identifier for the object on whicti this
`
`operai on should be petformed. The type of operaion is set by the oommaid, whidi is (filed
`
`the of a HTTP request. The problem of referendng a oerta' n object is solved by
`
`us'ng the oonoept of Uniform Resource Locdors which isdescribed in chapter 2.3. In
`
`addition to that, for some types of operation the dient has the possibility to send additiona
`
`data to the sewer within the request. The server, a‘ter trying to fulfil the request, sends a
`
`response to the dient. The response of course depends on the request aid on the fact, whether
`
`or not the request has been processed siooessfully.
`
`A oonnection between dient aid server isestailished by the dient. Nomialy, when TCP/lP
`
`is used, the default port for HTTP transaction is the reserved number 80. But other port
`
`nurrbers may be used, if they are specified in the URL of the request. After setting up a
`
`connection, the dient sends the request and waits for the response from the server. After that,
`
`the connection is closed by either both patties. In other words, aoonnection bdween client
`
`and server is gn_|y set up for one transaction,
`
`MAC002675
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 14
`
`

`
`2.4.1. Request
`
`The CI ient's request to the save oonsi sts of the followi ng pets
`
`- The first line‘
`
`- The request headers
`
`(are explained in 2.4.1.2.).
`
`- An empty line
`
`- Daa
`
`All othe pats except for the first line ee opti on:-1. Their presence depends on the method
`
`and sometimes (for the heades) on the implementation. An empty line has to be sent to
`
`indicatethe beginning of the data body. if no data body is present, an empty line indicates the
`
`end of the request.
`
`The data body can be my MIME oonforrning message [BORENSTEl N92], theeore dso
`
`tzinary .d_at.a its length is given on a header line (see 2-4.2-2-).
`
`To md<eclee how the serve cm know about the end of the rguest, thiscan bea<pIained
`
`asfollovvs. Linescei beread until an empty lineoowrs, which indicaestha all headelines
`
`have been read. If a Content-length field is present in the heade, it tellsthe server that the
`
`following daabody oonta'nsthee)edfied number of bytes. If thefield is omitted, uaidly a
`
`method is used which impliesthat theeisno databody following, asit iswith GET, for
`
`example.
`
`Thefirstlineisdefinedas <Nethod> <tRL> <Versi on>
`
`<M2thod>isoneoftheoomrna1dsdescn‘bedin 2.4.1.1.
`
`<tRL> is defined in 2.3. A petiai URL is nomtdly given heeif the scheme (httpz) and the
`
`serve are obvious. Wheees, if the save isbeing used asagae/vay, the complete URL is
`
`given (see 4.7.1.). The URL should beenooded using the medtanism described in 2.3.3. at
`
`least to a extend the spaoesmd oontrol cheades (deoimat (>31 and 128159) ee esceaed.
`
`<Ver si on> isthe protoool Vesion whichthedient use: usualy thisis: HTTPI 1.0
`
`' Lines are dwaysterminaed by CRLF. Howe/e, it is recommended ma serves should betoleeit if lines
`
`aeterminaed by LF only.
`
`MAC002676
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 15
`
`

`
`If <Ver si on> isnot present, it can beassurned that the client uses H'lTPVe's'on 0.9,
`
`which usesa simpleform of requea. Thissimplefonn is aiso dlowed for HTTP 1.0 for back-
`
`compatibility.
`
`Thesirrplerequestisdefinedas
`
`C-ET <LRL>
`
`It hand request heaietsawd no daa body.
`
`2.4.1.1. Methods
`
`The method field which isthefirst element on thefirsl line of a HTTP request indicaesthe
`
`operation to beperfomied on theobject identified by the URL following asthe second
`element.
`
`Wnat followsisalist of currently defined methods, asdesoribed in [BERNERSLEE93].
`
`GET
`
`means retrievethe object that isidentified by the URL. Thisisdso um
`
`for searches, which is expla‘ned.|ater.—
`
`HEAD
`
`POST
`
`PUT
`
`DELETE
`
`LINK
`
`UNLINK
`
`is the same as GET, but retums only headers atd no actual daa.
`
`creates a new object linked to the specified object. The new object is sent
`
`mthe data body of the request.
`
`storestheobject which issmt asthedatabody under the specified URL.
`
`The URL must dready exist.
`
`requests the deletion of the specified object.
`
`linksan existing object to the specified object.
`
`removes the link from an object.
`
`TEXTSEARCH
`
`Objectsmzy be searched for with atea string. This isirnplemented using
`the seam form of the GEI‘ method.
`
`SPACEJUM P
`
`Theobject will aooept aquety which oontahsooordinatesof apoint
`
`within the object. Actud implementations use the GET method with
`
`gaecid URLsasdescribed later.
`
`In addition to that, thefollowing methods we defined: CHECKOUT, SHOWMETHOD,
`
`CHECKI N, SEARCH. These methods are not explained here becaise most of them are still
`
`MAC002677
`
`Petitioner Microsoft Corporation - Ex. 1043, p. 16
`
`

`
`unda discussion aid not yet implemented. For details the reader is referred to eg.
`
`[BERNERS-LEE93].
`
`Currently, only the methods GET aid POST are wid

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket