INTERNET-DRAFT                                            M. Yevstifeyev
Intended Status: Experimental                          December 31, 2010
Expires: July 4, 2011


               HTTP 'Headers-Not-Recognized' Header Field
           <draft-yevstifeyev-http-headers-not-recognized-10>

Abstract

   This document defines mechanism which allows HTTP hosts to notify
   another hosts about not supported headers - 'Headers-Not-Recognized'
   HTTP header field.


Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as
   Internet-Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/1id-abstracts.html

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html


Copyright and License Notice

   Copyright (c) 2010 IETF Trust and the persons identified as the
   document authors. All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document. Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document. Code Components extracted from this document must



Yevstifeyev               Expires July 4, 2011                  [Page 1]


INTERNET DRAFT      Headers-Not-Recognized for HTTP    December 31, 2010


   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.


Table of Contents

   1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 3
      1.1. Motivation  . . . . . . . . . . . . . . . . . . . . . . . . 3
      1.2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . 3
         1.2.1. Conformance Criteria . . . . . . . . . . . . . . . . . 3
         1.2.2. Syntax Notation  . . . . . . . . . . . . . . . . . . . 3
         1.2.3. Terminology  . . . . . . . . . . . . . . . . . . . . . 3
   2. Technical Overview . . . . . . . . . . . . . . . . . . . . . . . 4
      2.1 Model of Work  . . . . . . . . . . . . . . . . . . . . . . . 4
      2.2 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
   3. IANA Considerations  . . . . . . . . . . . . . . . . . . . . . . 5
   4. Security Considerations  . . . . . . . . . . . . . . . . . . . . 5
   5. Normative References . . . . . . . . . . . . . . . . . . . . . . 5
   Author's Addresses  . . . . . . . . . . . . . . . . . . . . . . . . 5































Yevstifeyev               Expires July 4, 2011                  [Page 2]


INTERNET DRAFT      Headers-Not-Recognized for HTTP    December 31, 2010


1. Introduction

1.1. Motivation

   HTTP is one of the most widely-used protocols in the Internet. One of
   the things which made it so popular is extensibility. One can easily
   add any header field to the HTTP message. However, all hosts are not
   able to support all the header fields. Generally, if a it host does
   not support the header field, it is simply ignored. The another side
   of exchange is not notified about not processed header fields.

   This document proposes mechanism which allows HTTP hosts to notify
   another hosts about not recognized headers.

   The proposal is to send a message with definite header field to the
   host if one or more header fields of its request are not supported.
   This document defines 'Headers-Not-Recognized' HTTP header field to
   be used in such occasion.

1.2. Conventions

1.2.1. Conformance Criteria

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [RFC2119].

1.2.2. Syntax Notation

   This specification uses the Augmented Backus-Naur Form (ABNF)
   notation of [RFC5234].

   The construction <n>#<m>element is used as defined in RFC 2616
   [RFC2616], Section 2.1.

1.2.3. Terminology

   HTTP refers to protocol, defined in RFC 2616 [RFC2616]

   The terms client, server, proxy, gateway and tunnel have the same
   meaning as in the HTTP/1.1 specification ([RFC2616], Section 1.3).

   The term host means client or server.








Yevstifeyev               Expires July 4, 2011                  [Page 3]


INTERNET DRAFT      Headers-Not-Recognized for HTTP    December 31, 2010


2. Technical Overview

2.1 Model of Work

   If the HTTP host receives HTTP message which contains some header
   fields which are not supported by it, it is RECOMMENDED for it to
   include the Headers-Not-Recognized header field in the response to
   the host that sent message with not supported header fields.
   Information about not supported header fields is to be put in the
   'Headers-Not-Recognized' header field following the rules of Section
   2.2 of this document. The 'Headers-Not-Recognized' header field MUST
   contain information only about not supported header fields - i.e.
   header fields which are not able to be processed anyway. It MUST NOT
   contain information about header fields, which are partly supported,
   whose entity cannot be processed while the header field is supported
   at all etc.

   When HTTP host receives HTTP message with Headers-Not-Recognized
   header field, it is RECOMMENDED that it avoids sending messages with
   header fields with mentioned in it names to source (for message with
   this header field) host or tries to change them so that hat host is
   able to recognize and process them.

   Intermediate systems (also called middle-boxes), such as proxies,
   tunnels, gateways etc. MUST transfer the messages with Headers-Not-
   Recognized header field to the destination host without changing the
   entity of this header field if the not supported header field was
   present in the initial HTTP request (i. e. request which intermediate
   system received before transferring it to destination node), but MUST
   omit it if Headers-Not-Recognized header field's entity concerns only
   to headers added to initial request by middle-box. If the
   aforementioned header concerns added header fields partly, middle-box
   MUST change the entity so that it concerns only initial request
   header field.

2.2 Syntax

   'Headers-Not-Recognized' header field has the following format:

   headers_not_recognized = 1#header_name
   header_name            = 1*VCHAR










Yevstifeyev               Expires July 4, 2011                  [Page 4]


INTERNET DRAFT      Headers-Not-Recognized for HTTP    December 31, 2010


3. IANA Considerations

   The permanent message header field registry should be updated with
   the following registration:

   Header field name
     Headers-Not-Recognized

   Applicable protocol
     http

   Status
     experimental

   Specification document
     RFC xxxx

   [RFC Editor: replace xxxx with assigned RFC number]
   [Note: This registration should take place at
   http://www.iana.org/assignments/message-headers/perm-headers.html
   This note is to be deleted upon publication.]


4. Security Considerations

   This extension to HTTP is not believed to add any additional security
   concerns not already present in RFC 2616 [RFC2616].


5. Normative References

   [RFC2119]   S. Bradner, "Key words for use in RFCs to Indicate
               Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2616]   Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,
               Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext
               Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.

   [RFC5234]   Crocker, D., Ed., and P. Overell, "Augmented BNF for
               Syntax Specifications: ABNF", STD 68, RFC 5234, January
               2008.

Author's Addresses

   Mykyta Yevstifeyev
   Kotovsk, Ukraine

   EMail: evnikita2@gmail.com



Yevstifeyev               Expires July 4, 2011                  [Page 5]