⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2774.txt

📁 RFC 的详细文档!
💻 TXT
📖 第 1 页 / 共 3 页
字号:
   Microsoft Corporation
   1 Microsoft Way
   Redmond, WA 98052, USA

   EMail: frystyk@microsoft.com


   Paul J. Leach
   Microsoft Corporation
   1 Microsoft Way
   Redmond, WA 98052, USA

   EMail: paulle@microsoft.com


   Scott Lawrence
   Agranat Systems, Inc.
   5 Clocktower Place, Suite 400
   Maynard, MA 01754, USA

   EMail: lawrence@agranat.com














Nielsen, et al.               Experimental                     [Page 14]

RFC 2774              An HTTP Extension Framework          February 2000


Appendices

14. Summary of Protocol Interactions

   The following tables summarize the outcome of strength and scope rules
   of the mandatory proposal of compliant and non-compliant HTTP proxies
   and origin servers. The summary is intended as a guide and index to
   the text, but is necessarily cryptic and incomplete. This summary
   should never be used or referenced separately from the complete
   specification.

                        Table 1: Origin Server

       Scope            Hop-by-hop                End-to-end

     Strength      Optional     Required    Optional     Required
                    (may)        (must)       (may)       (must)

   Mandatory     Standard    501 (Not     Standard     501 (Not
   unsupported   processing  Implemented) processing   Implemented)

   Extension     Standard    510 (Not     Standard     510 (Not
   unsupported   processing  Extended)    processing   Extended)
   Extension     Extended    Extended     Extended     Extended
   supported     processing  processing   processing   processing


                         Table 2: Proxy Server

       Scope            Hop-by-hop                End-to-end

     Strength      Optional     Required    Optional     Required
                    (may)        (must)       (may)       (must)

   Mandatory     Strip       501 (Not     Forward      501 (Not
   unsupported   extension   Implemented) extension    Implemented)
                             or tunnel                 or tunnel

   Extension     Strip       510 (Not     Forward      Forward
   unsupported   extension   Extended)    extension    extension

   Extension     Extended    Extended     Extended     Extended
   supported     processing  processing   processing,  processing,
                 and strip   and strip    may strip    may strip







Nielsen, et al.               Experimental                     [Page 15]

RFC 2774              An HTTP Extension Framework          February 2000


15. Examples

   The following examples show various scenarios using mandatory in
   HTTP/1.1 requests and responses. Information not essential for
   illustrating the examples is left out (referred to as "...")

15.1 User Agent to Origin Server

               Table 3: User Agent directly to origin server

   Client issues a request M-GET /some-document HTTP/1.1
   with one optional and   Opt: "http://www.my.com/tracking"
   one mandatory extension Man: "http://www.foo.com/privacy"
                           ...

   Origin server accepts   HTTP/1.1 200 OK
   the mandatory extension Ext:
   but ignores the         Cache-Control: max-age=120, no-cache="Ext"
   optional one. The       ...
   client can not see in
   this case that the
   optional extension was
   ignored.


               Table 4: Origin server with Vary header field

   Client issues a request M-GET /p/q HTTP/1.1
   with one mandatory      Man: "http://www.x.y/transform"; ns=16
   extension               16-use-transform: xyzzy
                           ...

   Origin server accepts   HTTP/1.1 200 OK
   the mandatory but       Ext:
   indicates that the      Vary: Man, 16-use-transform
   response varies on the  Date: Sun, 25 Oct 1998 08:12:31 GMT
   request extension       Expires: Sun, 25 Oct 1998 08:12:31 GMT
   declaration             Cache-Control: no-cache="Ext", max-age=1000
                           ...












Nielsen, et al.               Experimental                     [Page 16]

RFC 2774              An HTTP Extension Framework          February 2000


15.2 User Agent to Origin Server via HTTP/1.1 Proxy

   These two examples show how an extended request interacts with an
   HTTP/1.1 proxy.

              Table 5: HTTP/1.1 Proxy forwards extended request

   Client issues a request M-GET /some-document HTTP/1.1
   with one optional and   C-Opt: "http://www.meter.org/hits"
   one mandatory hop-by-   C-Man: "http://www.copy.org/rights"
   hop extension           Connection: C-Opt, C-Man
                           ...

   HTTP/1.1 proxy forwards M-GET /some-document HTTP/1.1
   the request and takes   Via: 1.1 new
   out the connection      ...
   headers

   Origin server fails as  HTTP/1.1 510 Not Extended
   the request does not    ...
   contain any information
   belonging to the M-GET
   method

         Table 6: HTTP/1.1 Proxy does not forward extended request

   Client issues a request M-GET /some-document HTTP/1.1
   with one optional and   C-Opt: "http://www.meter.org/hits"
   one mandatory hop-by-   C-Man: "http://www.copy.org/rights"
   hop extension           Connection: C-Opt, C-Man
                           ...

   HTTP/1.1 proxy refuses  HTTP/1.1 501 Not Implemented
   to forward the M-GET    ...
   method and returns an
   error

   Origin server never
   sees the extended
   request











Nielsen, et al.               Experimental                     [Page 17]

RFC 2774              An HTTP Extension Framework          February 2000


15.3 User Agent to Origin Server via HTTP/1.0 Proxy

   These two examples show how an extended request interacts with an
   HTTP/1.0 proxy in the message path

             Table 7: HTTP/1.0 Proxy forwards extended request

   Client issues a request M-GET /some-document HTTP/1.1
   with one mandatory      Man: "http://www.price.com/sale"
   extension               ...

   HTTP/1.0 proxy forwards M-GET /some-document HTTP/1.0
   the request as a        Man: "http://www.price.com/sale"
   HTTP/1.0 request        ...
   without changing the
   method

   Origin server accepts   HTTP/1.1 200 OK
   declaration and returns Ext:
   a 200 response and an   Date: Sun, 25 Oct 1998 08:12:31 GMT
   extension               Expires: Sun, 25 Oct 1998 08:12:31 GMT
   acknowledgement. The    Cache-Control: no-cache="Ext", max-age=600
   response can be cached  ...
   by HTTP/1.1 caches for
   10 minutes.

                Table 8: HTTP/1.0 and HTTP/1.1 Proxy Chain

   Client issues request   M-GET /some-document HTTP/1.1
   with one mandatory and  Man: "http://www.copy.org/rights"
   one hop-by-hop optional C-Opt: "http://www.ads.org/noads"
   extension               Connection: C-Opt
                           ...

   HTTP/1.0 proxy forwards M-GET /some-document HTTP/1.0
   request as HTTP/1.0     Man: "http://www.copy.org/rights"
   request without         C-Opt: "http://www.ads.org/noads"
   changing the method and Connection: C-Man
   without honoring the    ...
   Connection directives

   HTTP/1.1 proxy deletes  M-GET /some-document HTTP/1.1
   (and ignores) optional  Man: "http://www.copy.org/rights"
   extension and forwards  C-Man: "http://www.ads.org/givemeads"
   the rest including a    Connection: C-Man
   via header field. It    Via: 1.0 new
   also add a hop-by-hop   ...
   mandatory extension



Nielsen, et al.               Experimental                     [Page 18]

RFC 2774              An HTTP Extension Framework          February 2000


   Origin server accepts   HTTP/1.1 200 OK
   both mandatory          Ext:
   extensions. The         C-Ext
   response is not         Connection: C-Ext
   cachable by the         Date: Sun, 25 Oct 1998 08:12:31 GMT
   HTTP/1.0 cache but can  Expires: Sun, 25 Oct 1998 08:12:31 GMT
   be cached for 1 hour by Cache-Control: no-cache="Ext", max-age=3600
   HTTP/1.1 caches.        ...

   HTTP/1.1 proxy removes  HTTP/1.1 200 OK
   the hop-by-hop          Ext:
   extension               Date: Sun, 25 Oct 1998 08:12:31 GMT
   acknowledgement and     Expires: Sun, 25 Oct 1998 08:12:31 GMT
   forwards the remainder  Cache-Control: no-cache="Ext", max-age=3600
   of the response.        ...




































Nielsen, et al.               Experimental                     [Page 19]

RFC 2774              An HTTP Extension Framework          February 2000


Full Copyright Statement

   Copyright (C) The Internet Society (2000).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.



















Nielsen, et al.               Experimental                     [Page 20]


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -