One document matched: draft-ietf-mext-binary-ts-04.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='../xml2rfc-1.34pre3/rfc2629.xslt' ?>
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>
<!DOCTYPE rfc SYSTEM "../xml2rfc-1.34pre3/rfc2629.dtd" [
<!ENTITY rfc0768 PUBLIC ''
'http://xml.resource.org/public/rfc/bibxml/reference.RFC.0768.xml'>
<!ENTITY rfc0791 PUBLIC ''
'http://xml.resource.org/public/rfc/bibxml/reference.RFC.0791.xml'>
<!ENTITY rfc0793 PUBLIC ''
'http://xml.resource.org/public/rfc/bibxml/reference.RFC.0793.xml'>
<!ENTITY rfc2119 PUBLIC ''
'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'>
<!ENTITY rfc2460 PUBLIC ''
'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2460.xml'>
<!ENTITY rfc3168 PUBLIC ''
'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3168.xml'>
<!ENTITY rfc3260 PUBLIC ''
'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3260.xml'>
<!ENTITY rfc4303 PUBLIC ''
'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4303.xml'>
<!ENTITY fb PUBLIC ''
'http://xml.resource.org/public/rfc/bibxml3/reference.I-D.draft-ietf-mext-flow-binding-05.xml'>
]>
<rfc category="std" docName="draft-ietf-mext-binary-ts-04.txt" ipr="trust200811">
<front>
<title>Traffic Selectors for Flow Bindings</title>
<author initials="G." surname="Tsirtsis" fullname="George Tsirtsis">
<organization>Qualcomm</organization>
<address>
<email>tsirtsis@qualcomm.com</email>
</address>
</author>
<author initials="G." surname="Giarreta" fullname="Gerardo Giarreta">
<organization>Qualcomm</organization>
<address>
<email>gerardog@qualcomm.com</email>
</address>
</author>
<author fullname="Hesham Soliman" initials="H." surname="Soliman">
<organization>Elevate Technologies</organization>
<address>
<email>hesham@elevatemobile.com</email>
</address>
</author>
<author initials="N.M" surname="Montavont" fullname="Nicolas Montavont">
<organization abbrev="IT/TB"> Institut Telecom / Telecom Bretagne</organization>
<address>
<postal>
<street>2, rue de la chataigneraie</street>
<city>Cesson Sevigne</city>
<code>35576</code>
<country>France</country>
</postal>
<phone>(+33) 2 99 12 70 23</phone>
<email>nicolas.montavont@telecom-bretagne.eu</email>
<uri>http://www.rennes.enst-bretagne.fr/~nmontavo//</uri>
</address>
</author>
<date month="February" year="2010"/>
<abstract>
<t>This document defines binary formats for IPv4 and IPv6 traffic
selectors to be used in conjunction with flow bindings for
Mobile IPv6.</t>
</abstract>
</front>
<middle>
<section title="Requirements notation">
<t>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 <xref target="RFC2119"/>.</t>
</section>
<section title="Introduction">
<t>This document defines binary formats for IPv4 and IPv6 Traffic
Selector sub-options as defined in <xref
target="I-D.ietf-mext-flow-binding"/>.</t>
<t>The binary traffic selector format defined here, allows for
efficient identification of flow(s) based on well known fields
in IPv4 <xref target="RFC0791"/>, IPv6 <xref target="RFC2460"/>,
and transport layer headers like TCP <xref target="RFC0793"/>
and UDP <xref target="RFC0768"/>. </t>
</section>
<section title="Traffic Selector Sub-Options">
<t>
<xref target="I-D.ietf-mext-flow-binding"/> defines the format
for the traffic selector sub-option.</t>
<t>The following values of the TS Format field, are defined in this
specification for binary traffic selectors.</t>
<t>TS Format:</t>
<t>
<list>
<t>1 IPv4 binary traffic selector</t>
<t>2 IPv6 binary traffic selector</t>
</list>
</t>
<section title="IPv4 binary traffic selector">
<t> If the TS Format field of the traffic selector sub-option
indicates "IPv4 binary traffic selector", then the traffic
selector is formatted as shown below. </t>
<t>The alignment requirement for this sub-option is: <list>
<t>4n if A, B, C, D, E, or F is set</t>
<t>2n if G, H, I, or J is set</t>
<t>n if K, L, M, N is set</t>
</list>
</t>
<figure anchor="FRv4" title="IPv4 binary traffic selector">
<artwork>
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Sub-opt Type | Sub-Opt Len | TS Format | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|A|B|C|D|E|F|G|H|I|J|K|L|M|N| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (A)Start Source Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (B)End Source Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (C)Start Destination Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (D)End Destination Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (E)Start IPSEC SPI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (F)End IPSEC SPI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (G)Start Source port | (H)End Source port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (I)Start Destination port | (J)End Destination port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (K)Start DS | (L)End DS |(M)Start Prot. | (N) End Prot. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
</figure>
<t>Flags (A-N)</t>
<t>
<list>
<t> Each flag indicates whether the corresponding field
is present in the message</t>
</list>
</t>
<t>(A)Start Source Address</t>
<t>
<list>
<t> This field identifies the first source address, from
the range of 32-bit IPv4 addresses to be matched, on
data packets sent from a corresponding node to the
mobile node as seen by the home agent. In other
words this is one of the addresses of the
correspondent node.</t>
</list>
</t>
<t>(B)End Source Address</t>
<t>
<list>
<t> If more than one contiguous source address needs to
be matched then this field can be used to indicate
the end value of a range starting from the value of
the Start Source Address field. This field MUST NOT
be included unless the Start Source Address field is
included. When this field is included the receiver
will match all of the addresses between fields (A)
and (B), inclusive of (A) and (B).</t>
</list>
</t>
<t>(C)Start Destination Address</t>
<t>
<list>
<t> This field identifies the first destination address,
from the range of 32-bit IPv4 addresses to be
matched, on data packets sent from a corresponding
node to the mobile node as seen by the home agent.
In other words this is one of the registered home
addresses of the mobile node.</t>
</list>
</t>
<t>(D)End Destination Address</t>
<t>
<list>
<t> If more than one contiguous destination address
needs to be matched then this field can be used to
indicate the end value of a range starting from the
value of the Start Destination Address field. This
field MUST NOT be included unless the Start
Destination Address field is included. When this
field is included the receiver will match all of the
addresses between fields (C) and (D), inclusive of
(C) and (D).</t>
</list>
</t>
<t>(E)Start IPSEC SPI - Security Parameter Index</t>
<t>
<list>
<t> This field identifies the first 32-bit IPSEC SPI
value, from the range of SPI values to be matched,
on data packets sent from a corresponding node to
the mobile node as seen by the home agent. This
field is defined in <xref target="RFC4303"/>. </t>
</list>
</t>
<t>(F)End IPSEC SPI - Security Parameter Index</t>
<t>
<list>
<t> If more than one contiguous SPI values need to be
matched then this field can be used to indicate the
end value of a range starting from the value of the
Start IPSEC SPI field. This field MUST NOT be
included unless the Start IPSEC SPI field is
included. When this field is included the receiver
will match all of the SPI values between fields (E)
and (F), inclusive of (E) and (F).</t>
</list>
</t>
<t>(G)Start Source Port</t>
<t>
<list>
<t> This field identifies the first 16-bit source port
number, from the range of port numbers to be
matched, on data packets sent from a corresponding
node to the mobile node as seen by the home agent.
This is from the range of port numbers defined by
IANA (http://www.iana.org/assignments/port-numbers)
</t>
</list>
</t>
<t>(H)End Source Port</t>
<t>
<list>
<t> If more than one contiguous source port numbers need
to be matched then this field can be used to
indicate the end value of a range starting from the
value of the Start Source Port field. This field
MUST NOT be included unless the Start Source Port
field is included. When this field is included the
receiver will match all of the port numbers between
fields (G) and (H), inclusive of (G) and (H).</t>
</list>
</t>
<t>(I)Start Destination Port</t>
<t>
<list>
<t> This field identifies the first 16-bit destination
port number, from the range of port numbers to be
matched, on data packets sent from a corresponding
node to the mobile node as seen by the home
agent.</t>
</list>
</t>
<t>(J)End Destination Port</t>
<t>
<list>
<t> If more than one contiguous destination port numbers
need to be matched then this field can be used to
indicate the end value of a range starting from the
value of the Start Destination Port field. This
field MUST NOT be included unless the Start
Destination Port field is included. When this field
is included the receiver will match all of the port
numbers between fields (I) and (J), inclusive of (I)
and (J).</t>
</list>
</t>
<t>(K)Start DS - Differential Services</t>
<t>
<list>
<t> This field identifies the first differential
services value, from the range of differential
services values to be matched, on data packets sent
from a corresponding node to the mobile node as seen
by the home agent. Note that this field is called
Type of Service field in <xref target="RFC0791"/>.
<xref target="RFC3260"/> then clarified that the
field has been redefined as 6 bits DS field and 2
bits reserved, later claimed by Explicit Congestion
Notification (ECN) <xref target="RFC3168"/>. For the
purpose of this specification the DS field is 8 bits
long, were the 6 most significant bits indicating
the DS field to be matched and the 2 least
significant bits MUST be set to 0 by the sender and
ignored by the receiver.</t>
</list>
</t>
<t>(L)End DS - Differential Services</t>
<t>
<list>
<t> If more than one contiguous DS values need to be
matched then this field can be used to indicate the
end value of a range starting from the value of the
Start DS field. This field MUST NOT be included
unless the Start DS field is included. When this
field is included, it MUST be coded the same way as
defined for (K). When this field is included the
receiver will match all of the values between fields
(K) and (L), inclusive of (K) and (L).</t>
</list>
</t>
<t>(M)Start Protocol</t>
<t>
<list>
<t> This field identifies the first 8-bit protocol
value, from the range of protocol values to be
matched, on data packets sent from a corresponding
node to the mobile node as seen by the home
agent.</t>
</list>
</t>
<t>(N)End Protocol</t>
<t>
<list>
<t> If more than one contiguous protocol values need to
be matched then this field can be used to indicate
the end value of a range starting from the value of
the Start Protocol field. This field MUST NOT be
included unless the Start Protocol field is
included. When this field is included the receiver
will match all of the values between fields (M) and
(N), inclusive of (M) and (N).</t>
</list>
</t>
<t>Reserved</t>
<t>
<list>
<t> Reserved for future use. These bits MUST be set to
zero by the sender and ignored by the receiver.</t>
</list>
</t>
</section>
<section title="IPv6 binary traffic selector">
<t> If the TS Format field of the traffic selector sub-option
indicates "IPv6 binary traffic selector", then the traffic
selector is formatted as follows:</t>
<t>The alignment requirement for this sub-option is: <list>
<t>8n if A, B, C, or D is set</t>
<t>4n if E, F, G, or H is set</t>
<t>2n if I, J, K, or L is set</t>
<t>n if M, N, O, or P is set</t>
</list>
</t>
<figure anchor="FRv6" title="IPv6 binary traffic selector">
<artwork>
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Sub-opt Type | Sub-Opt Len | TS Format | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ (A)Start Source Address +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ (B)End Source Address +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ (C)Start Destination Address +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ (D)End Destination Address +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (E)Start IPSEC SPI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (F)End IPSEC SPI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (G)Start Flow Label |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (H)End Flow Label |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (I)Start Source port | (J)End Source port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (K)Start Destination port | (L)End Destination port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| (M)Start TC | (N)End TC | (O)Start NH | (P) End NH |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
</figure>
<t>Flags (A-P)</t>
<t>
<list>
<t> Each flag indicates whether the corresponding field
is present in the message</t>
</list>
</t>
<t>(A)Start Source Address</t>
<t>
<list>
<t> This field identifies the first source address, from
the range of 128-bit IPv6 addresses to be matched,
on data packets sent from a corresponding node to
the mobile node as seen by the home agent. In other
words this is one of the addresses of the
correspondent node.</t>
</list>
</t>
<t>(B)End Source Address</t>
<t>
<list>
<t> If more than one contiguous source address needs to
be matched then this field can be used to indicate
the end value of a range starting from the value of
the Start Source Address field. This field MUST NOT
be included unless the Start Source Address field is
included. When this field is included the receiver
will match all of the addresses between fields (A)
and (B), inclusive of (A) and (B).</t>
</list>
</t>
<t>(C)Start Destination Address</t>
<t>
<list>
<t> This field identifies the first destination address,
from the range of 128-bit IPv6 addresses to be
matched, on data packets sent from a corresponding
node to the mobile node as seen by the home agent.
In other words this is one of the registered home
addresses of the mobile node.</t>
</list>
</t>
<t>(D)End Destination Address</t>
<t>
<list>
<t> If more than one contiguous destination address
needs to be matched then this field can be used to
indicate the end value of a range starting from the
value of the Start Destination Address field. This
field MUST NOT be included unless the Start
Destination Address field is included. When this
field is included the receiver will match all of the
addresses between fields (C) and (D), inclusive of
(C) and (D).</t>
</list>
</t>
<t>(E)Start IPSEC SPI - Security Parameter Index</t>
<t>
<list>
<t> This field identifies the first 32-bit IPSEC SPI
value, from the range of SPI values to be matched,
on data packets sent from a corresponding node to
the mobile node as seen by the home agent. This
field is defined in <xref target="RFC4303"/>.</t>
</list>
</t>
<t>(F)End IPSEC SPI - Security Parameter Index</t>
<t>
<list>
<t> If more than one contiguous SPI values need to be
matched then this field can be used to indicate the
end value of a range starting from the value of the
Start IPSEC SPI field. This field MUST NOT be
included unless the Start IPSEC SPI field is
included. When this field is included the receiver
will match all of the SPI values between fields (E)
and (F), inclusive of (E) and (F).</t>
</list>
</t>
<t>(G)Start Flow Label</t>
<t>
<list>
<t> This field identifies the first flow label value,
from the range of flow label values to be matched,
on data packets sent from a corresponding node to
the mobile node as seen by the home agent. According
to <xref target="RFC2460"/> the flow label is 24-bit
long. For the purpose of this specification the
sender of this option MUST prefix the flow label
value with 8-bits of "0" before inserting it in this
field. The receiver SHOULD ignore the first 8-bits
of this field. </t>
</list>
</t>
<t> (H)End Flow Label</t>
<t>
<list>
<t> If more than one contiguous flow label values need
to be matched then this field can be used to
indicate the end value of a range starting from the
value of the Start Flow Label field. This field MUST
NOT be included unless the Start Flow Label field is
included. When this field is included the receiver
will match all of the flow label values between
fields (G) and (H), inclusive of (G) and (H).</t>
</list>
</t>
<t>(I)Start Source Port</t>
<t>
<list>
<t> This field identifies the first 16-bit source port
number, from the range of port numbers to be
matched, on data packets sent from a corresponding
node to the mobile node as seen by the home agent.
</t>
</list>
</t>
<t>(J)End Source Port</t>
<t>
<list>
<t> If more than one contiguous source port numbers need
to be matched then this field can be used to
indicate the end value of a range starting from the
value of the Start Source Port field. This field
MUST NOT be included unless the Start Source Port
field is included. When this field is included the
receiver will match all of the port numbers between
fields (I) and (J), inclusive of (I) and (J).</t>
</list>
</t>
<t>(K)Start Destination Port</t>
<t>
<list>
<t> This field identifies the first 16-bit destination
port number, from the range of port numbers to be
matched, on data packets sent from a corresponding
node to the mobile node as seen by the home
agent.</t>
</list>
</t>
<t>(L)End Destination Port</t>
<t>
<list>
<t> If more than one contiguous destination port numbers
need to be matched then this field can be used to
indicate the end value of a range starting from the
value of the Start Destination Port field. This
field MUST NOT be included unless the Start
Destination Port field is included. When this field
is included the receiver will match all of the port
numbers between fields (K) and (L), inclusive of (K)
and (L).</t>
</list>
</t>
<t>(M)Start TC - Traffic Class</t>
<t>
<list>
<t> This field identifies the first traffic class value,
from the range of traffic class values to be
matched, on data packets sent from a corresponding
node to the mobile node as seen by the home agent.
This field is equivalent to the Start DS field in
the IPv4 traffic selector in <xref target="FRv4"/>.
As per <xref target="RFC3260"/>, the field is
defined as 6 bits DS field and 2 bits reserved,
later claimed by Explicit Congestion Notification
(ECN) <xref target="RFC3168"/>. For the purpose of
this specification the TC field is 8 bits long, were
the 6 most significant bits indicating the DS field
to be matched and the 2 least significant bits MUST
be set to 0 by the sender and ignored by the
receiver.</t>
</list>
</t>
<t>(N)End TC - Traffic Class</t>
<t>
<list>
<t> If more than one contiguous TC values need to be
matched then this field can be used to indicate the
end value of a range starting from the value of the
Start TC field. This field MUST NOT be included
unless the Start TC field is included. When this
field is included, it MUST be coded the same way as
defined for (M). When this field is included the
receiver will match all of the values between fields
(M) and (N), inclusive of (M) and (N).</t>
</list>
</t>
<t>(O)Start NH - Next Header</t>
<t>
<list>
<t> This field identifies the first 8-bit next header
value, from the range of next header values to be
matched, on data packets sent from a corresponding
node to the mobile node as seen by the home
agent.</t>
</list>
</t>
<t>(P)End NH - Next Header</t>
<t>
<list>
<t> If more than one contiguous next header values need
to be matched then this field can be used to
indicate the end value of a range starting from the
value of the Start NH field. This field MUST NOT be
included unless the Start next header field is
included. When this field is included the receiver
will match all of the values between fields (O) and
(P), inclusive of (O) and (P).</t>
</list>
</t>
<t>Reserved</t>
<t>
<list>
<t> Reserved for future use. These bits MUST be set to
zero by the sender and ignored by the receiver.</t>
</list>
</t>
</section>
</section>
<section title="Security Considerations">
<t>This draft defines the format of the traffic selector field of a
sub-option defined for flow bindings <xref
target="I-D.ietf-mext-flow-binding"/>. The authors have not
identified any security concerns pertaining to this draft beyond
what is already identified in <xref
target="I-D.ietf-mext-flow-binding"/>. </t>
</section>
<section title="IANA Considerations">
<t>1) New TS format values from the "Traffic Selector Format"
namespace for the Traffic Selector sub-option defined in <xref
target="I-D.ietf-mext-flow-binding"/>. The following values
are requested: <list>
<t>1 IPv4 Binary Traffic Selector</t>
<t>2 IPv6 Binary Traffic Selector</t>
</list>
</t>
</section>
<section title="Aknowledgements">
<t>The authors would like to thank Patrick Stupar and Julien
Laganier for their contributions to this document. We would also
like to thank Benjamin Lim, Dave Craig, Patrick Stupar, and
Basavaraj Patil for their reviews and comments.</t>
</section>
</middle>
<back>
<references title="Normative References"> &rfc0768; &rfc0791;
&rfc0793; &rfc2119; &rfc2460; &rfc3168;
&rfc4303; &fb;</references>
<references title="Informative References"> &rfc3260; </references>
</back>
</rfc>
| PAFTECH AB 2003-2026 | 2026-04-23 15:31:40 |