`
`Covers HTTP/1.1
`
`“MANNING _
`
`Huawei V. Uniloc - Exhibit No. 1015 - 1/8
`
`Huawei v. Uniloc - Exhibit No. 1015 - 1/8
`
`
`
`Illustrated Guide
`
`:0 HTTP
`
`
`
`PAUL S. HETHMON
`H'
`
`MANNING
`(‘rrccnwich
`
`(74“ w. lung.)
`
`Huawei V. Uniloc - Exhibit No. 1015 - 2/8
`
`Huawei v. Uniloc - Exhibit No. 1015 - 2/8
`
`
`
`Fm :lL‘LlfunlL brim-sing and ordering urthis lxmlnt. SUL‘ http:ku’w.brnwcchnuksxttm.
`
`The pubiishet offers discounts rm this lmuk when ordered in summary. Fur mort-
`inl‘btmation. please contact:
`
`Special Sales [)cpal‘lluc‘rtl
`Manning I‘ubltcatlons (.0.
`3' Lewis Street
`Greenwich. CT (H.850
`
`Fax: [203] Gfil-‘JDIB
`email: orders@mannmg.com
`
`_.
`
`_ "3:“
`
`/: f
`\'\t99 '
`MAY U 8.199 7
`
`“---.._*'___..-—-'
`
`.n
`
`. p
`
`am "6
`
`-’7é
`
`we] 94’— H 94 ML
`
`/ W7
`
`M337
`
`©1997 by Manning Publications Co. All rights reserved.
`
`No part of this publication may be reproduced. stored in .I. retrieval system. ur
`transmi'tlcd. in any form or by means electmnic. mechanics]. photocopying. or
`otherwise. without prior written permission of the publisher.
`
`9 Recognizing the importance oi'prescrving what has been written. it is
`Manning's policy to have the bunks it publishes printed on acidifice paper. and
`we exert our best aliens to that end.
`
`Many ofthe designations used by manufacturers and sellers to distinguish their
`products are claimed as trademarks. Where those designations appear in the book.
`and Manning Publications was aware of a trademark claim. the designations have
`been printed in initial caps or all caps.
`
`Library of Congress Cataloging-in-Publican'on Data
`Hethmnn. Paul 5.
`Illustrated guide to H I IP! Paul S. Hethmon.
`p.
`cm.
`Includes bibliographical refrences and index.
`ISBN l-834777—37-6
`l. Hypertext systems. 2. HTTP {Computer network protocol)
`I. Title.
`QA76.76.H94H434 1997
`004.6‘2—dc21
`
`97-1595
`CIP
`
`M Manning Publiutions Ca.
`3 Lewis Street
`Greenwich. CT 06830
`
`Copyeditor: Maggie Mitchel]
`Typesetter: Dorothy Mmioo
`Cover designer: Leslie Haimes
`
`Printed in the United States ol'AI-ncsica
`125456739l0—CR—00999397
`
`Huawei V. Uniloc - Exhibit No. 1015 - 3/8
`
`Huawei v. Uniloc - Exhibit No. 1015 - 3/8
`
`
`
`COfll'é’fitS
`
`pr‘tjfézfr
`
`xii
`
`ac'krzowlrdgrm’rrts
`
`xiv
`
`1
`
`Introduction I
`
`1.1
`
`15 this book For you? 2
`
`[.2 Required background 3
`1.3 The material 4
`
`1.4 Finishing 6
`
`2 H TTP overview 7
`
`2.1 What is the World Wide Web? 8
`The clicntfserver model 8
`
`2.2 General operation 10
`A bit of history 12
`HTTWOD 12. HTI'PJ'H) 13
`
`2.4 HTTP/1.1 16
`Persistent connections 18.
`New rcqucst methods 1?.
`Chunked encoding 19. Byte range operations 20.
`Content ncgotiation 20. Digest Authentication 21.
`Caching 22
`
`2.5 Finishing 24
`
`vii
`
`Huawei V. Uniloc - Exhibit No. 1015 - 4/8
`
`Huawei v. Uniloc - Exhibit No. 1015 - 4/8
`
`
`
`(f (LY TEN T5
`
`
`3
`
`Bank" H TTP—synmx and temtmtz'c: 25
`
`3.] Terminology 26
`3.2 I’rotocoisyntax 31
`
`3.3 The basic grammar 53
`
`3.4 Basic HTTP concepts 34
`HTI'P version 34. Uniform Resource Identifiers 35.
`
`Formals for date and time 38, Code: date handling 3‘}.
`Character sets 4i. Content coding: 42. Transfer
`endings 43.
`(lode: chunked encoding 44. Media
`types 47’.
`Product tokens 4‘). Quality values 49.
`Language tags 50.
`El1ti1}’tags 50. Range units 5!
`
`3.5 Finishing 52
`
`4'
`
`The request 53
`
`4.l The Request Message 54
`4.2 Method definitions 55
`The OPTIONS method 55. The GET method 56, The
`HEAD method '37" The POST method 58, The PUT
`method '39. The DELETE method 60. The TRACE
`method 60
`
`4.3 The request header fields 6]
`Accept 6], Accept-Charset 62. AcceptrEncoding 62.
`Accept-Language 62. Authorization 63. Code:
`Bascfié 64.
`From 6?. Host
`I57,
`If-Modif‘ichSince 67,
`[f—March 68.
`IF—None-Match 68‘
`lf-Rangc 69.
`IF—Unmodificd-Since 69. Max—Forwards 69,
`Proxy-Authorization WU. Range 70. ReFeret 71.
`User-Agent 71
`
`4.4 Implementation 7]
`PUT 80.
`POST 7B.
`GET and HEAD 72,
`DELETE 8!. OPTIONS BI. TRACE 32
`
`4.5 Finishing 83
`
`viii
`
`Huawei V. Uniloc - Exhibit No. 1015 - 5/8
`
`Huawei v. Uniloc - Exhibit No. 1015 - 5/8
`
`
`
`
`
`r_'r)A‘TE.'\'T5
`
`
`5 Entity and general headers, and eache—mmm! 84
`
`5.1 The entity headers 83
`A110“: 85. Content-Base 85. Content-Encoding 86
`Content-Language 86. Content-Length 86.
`Content—Location 87’. ContentiMDS B7.
`
`Content-Range 8?. ContemAType 88. ETag 83.
`last-Modified 38
`
`5.2 The genera! headers 88
`I’ralgma 8‘).
`Connectiun 89. Date 89.
`Transfer—Encoding 8‘). Upgrade 90. Via ‘10
`5.3 Cache-Control 91
`What is cachable? 93. Age 93. Cache-Control 94.
`Expires 95. Warning 95. Cache operation 96.
`Expiration of responses 99.
`Fresh and stale
`responses 1110. Validatingaresponae Ifll.Examples 1113
`
`5.4 Finishing 105
`
`6 The rexpome 106
`
`6.1 The response message 107
`1 1 1
`6.2 The response header fields
`Accept-Ranges 112. Authentication-info 112.
`Location 113.
`Proxy-Authenticate 113,
`Proxy-Authentieare-info 113.
`Public 113.
`Retry-After 114.
`Server 114. Vary 114.
`Warning 114. WWW-Authenticate 115, Code:Digesr
`Access Authentication 1 15
`
`6.3 DigestAccess Authentication 117
`
`6.4 Implementation 121
`GET and HEAD 121. GET and byte range
`requests 124. GET and content negotiation 126
`
`6.5 Finishing 127
`
`Huawei V. Uniloc - Exhibit No. 1015 - 6/8
`
`Huawei v. Uniloc - Exhibit No. 1015 - 6/8
`
`
`
`(TO .’\‘ TEN TE
`
`
`7
`
`Socket; 128
`
`7.1 The socket 129
`
`7.2 Setting up the server socket 138'
`
`7.5 Setting up the client socket 134
`7.4 Data transmission 136
`
`7.5 Utility routines 144
`7.6 Host name and address routines 144
`
`2.7 NT specifics 146
`7.8 05/2 specifics 14?
`7.9 The socket class 149
`
`7.10 The socket class methods 154
`
`7.11 Finishing 173
`
`8 TbeHTTP/IJserwr 174
`
`3.] The configuration file 175
`8.2 The main program 179
`8.3 The server 133
`
`8.4 The authorization model 187
`
`8.5 Request and response headers 189
`3.6 HTTPHJ 216
`
`8.7 Finding the method 224
`8.8 TRACE 225
`
`8.9 OPTIONS 229
`8.10 PUT 230
`
`3.11
`
`If functions 238
`
`8.12 Chunked encoding 242
`8.13 The DELETE method 247
`
`8.14 GET the document 254
`
`8.15 Checking the If-Range 265
`
`Huawei V. Uniloc - Exhibit No. 1015 - 7/8
`
`Huawei v. Uniloc - Exhibit No. 1015 - 7/8
`
`
`
`r UN 1' EV IV
`
`
`3. |(1
`
`'I‘ransmission nf‘hytc rangcs 267’
`
`8.1.7 Finishing .174
`
`9 Common Gateway {ritefiore support 275
`9.] Basic Functions 23’6
`
`9.2 Executing the CG] program 287
`9.5 The 05!}! version 28‘)
`9.4 The Windows version 299
`
`9.5 Finishing 308
`
`appendixfl HTTP syntax 309
`
`appendix 8 HTTP header-field definition: 32!
`
`.370
`gloomy
`bibliography
`index
`.373
`
`572
`
`Huawei V. Uniloc - Exhibit No. 1015 - 8/8
`
`Huawei v. Uniloc - Exhibit No. 1015 - 8/8
`
`