Internet DRAFT - draft-chau-sfc-dynamic-forwarding-by-constraints
draft-chau-sfc-dynamic-forwarding-by-constraints
SFC working group CHAU
Internet Draft PARK
Intended status: <Informational> JUNG
Expires: December 10 , 2015 Soongsil University
June 30, 2015
Dynamic Forwarding by Constraint Options in SFC
draft-chau-sfc-dynamic-forwarding-by-constraints-00.txt
Status of this Memo
This Internet-Draft is submitted 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/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on December 30, 2015.
Copyright Notice
Copyright (c) 2015 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.
Chau, et al. Expires December 30, 2015 [Page 1]
Internet-Draft SFC Constraint June 2015
Abstract
This draft describes a Constraint-based Dynamic Control (CDC)
inserted into SFC architecture to support dynamic assignment of
Service Function (SF) with the use of filters functions. SFC
Operators only need to provide general conditions for a chaining
with CDC.
Table of Contents
1. Introduction ................................................ 2
2. Conventions used in this document............................ 3
3. Terminology ................................................. 3
4. Operational Procedures....................................... 4
4.1. Static Mode of Service Forwarding ...................... 4
4.2. Dynamic Mode of Service Forwarding ..................... 4
4.3. Logical conjunction in Dynamic SFC ..................... 4
4.4. Logical disjunction in Dynamic SFC ..................... 4
5. Constraint-based Headers..................................... 5
5.1. Constraint Header Format................................ 5
5.2. Base Header Format...................................... 5
5.3. Constraint Header Format................................ 6
6. Security Considerations...................................... 7
7. IANA Considerations ......................................... 7
8. References .................................................. 7
8.1. Normative References.................................... 7
8.2. Informative References.................................. 7
9. Acknowledgement ............................................. 7
Authors' Addresses ............................................. 8
1. Introduction
This draft describes a Constraint-based Dynamic Control (CDC) that
inserted into SFC architecture to support dynamic assignment of
Service Function (SF) with the use of filters functions.
Flow distribution, which is illustrated through Service Function
Chain (SFC) and Service Function Path (SFP), is a crucial point to
bring stability and improve performance to the SFC domain. Although
SFC and SFP are specified in most of the cases, there are some cases
where they can be decided through constraint options. Without
specific information, SFC Control Plane or SFF can decide
dynamically which SFC and SFP option is suitable for an incoming
flow using constraint options.
Some but not all use cases for the constraint options are:
Chau, et al. Expires December 30, 2015 [Page 2]
Internet-Draft SFC Constraint June 2015
o The SFP "must travel/must not travel" through one or more "type
of SF"
o The SFP "must travel/must not travel" through one or more
"organization"
o The SFP "may travel" through "type of service functions". The
"may" constraint means that this is an optional constraint.
o The SFP "must travel" through "type of service" "AND/OR" "another
type of service"
2. Conventions used in this document
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].
In this document, these words will appear with that interpretation
only when in ALL CAPS. Lower case uses of these words are not to be
interpreted as carrying RFC-2119 significance.
3. Terminology
This draft uses the following terminologies defined by SFC-arch.
o SF: Service Function [SFC-arch]
o SFC: Service Function Chain [SFC-arch]
o SFF: Service Function Forwarder [SFC-arch]
o SFP: Service Function Path [SFC-arch]
o NSH: Network Service Header [SFC-nsh]
Here are the terminologies specific for this draft:
o CDC: Constraint-based Dynamic Control
o CNH: Constraint Header
o OrgID: Organization ID
o RCF: Related Constraint Field
Chau, et al. Expires December 30, 2015 [Page 3]
Internet-Draft SFC Constraint June 2015
4. Operational Procedures
4.1. Static Mode of Service Forwarding
When a Service Classification Function intends to put SFP and SFC
into Static Mode, it SHOULD NOT append CNH into target packet or
MUST append the CNH with the F bit set as 0.
On receipt of the packet, the SFF MUST treats packets without CNH as
normal SFC packet. The same process is applied with the following
cases:
o Packets that have CNH with F bit set as 0
o Packets that have CNH with F bit set as 1 and CLength bits set as
0.
4.2. Dynamic Mode of Service Forwarding
When a Service Classification Function intends to put SFP and SFC
into Dynamic Mode, it SHOULD NOT append CNH into target packet or
MUST append the CNH with the F bit set as 1 and CLength bit MUST be
more than 0.
On receipt of the packet, the SFF MUST treats packets as dynamic SFC
packet and processes based on information set on the base header and
constraint headers.
4.3. Logical conjunction in Dynamic SFC
When a Service Classification Function intends to make a conjunction
between constraint headers (for example: between constraint headers
A and B), it MUST appends the constraint header ID of B to the RCF
of constraint header A.
On receipt of the packet, the SFF MUST treats two constraint headers
same as A "AND" B.
4.4. Logical disjunction in Dynamic SFC
When a Service Classification Function intends to make a disjunction
between constraint headers, it MUST NOT append the constraint header
ID of any constraint header to the RCF of other constraint headers.
On receipt of the packet, the SFF MUST treats constraint headers
with zero value in RCF as "OR" logical.
Chau, et al. Expires December 30, 2015 [Page 4]
Internet-Draft SFC Constraint June 2015
5. Constraint-based Headers
A Constraint Header (CNH) contains single constraint information and
its related metadata. A Service Classification Function, which is
used to handle SFC policy and encapsulation, is also responsible for
adding CNHs to a packet and set the service forwarding mode to
dynamic when the packet reaches the boundary of SFC-enabled domain.
5.1. Constraint Header Format
A CNH consists of a 4-byte base header and constraint headers, as
shown in Figure 1 below.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Base Header |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Constraint Header |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Constraint Header |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Constraint Header |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Constraint Header
Base header: provides basic information about the forwarding header.
Constraint header: provides information about constraint ID,
organization ID, service type, constraint option, related constraint
ID.
5.2. Base Header Format
Base header is an extension of NSH base format. One of the
reservation bit is used as Service Forwarding Mode information.
Chau, et al. Expires December 30, 2015 [Page 5]
Internet-Draft SFC Constraint June 2015
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Ver|O|C|F|CLength|R| Length | MD Type | Next Protocol |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Base Header Fields Descriptions
Except for the left-to-right count 4 to 8 bit, all field
descriptions are the same as described in [SFC-nsh]
F bit: Indicates that this packet is treated as dynamic/constraint
or static/normal mode. 0 bit indicates normal mode and 1 bit
indicates the dynamic mode.
CLength: The total Constraint header length.
5.3. Constraint Header Format
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ID | OrgID | Type | C |R|R| RC | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
ID: The first 4 bits indicate the constraint ID (maximum is 16 of
constraints)
OrgID: The next 1-byte length which indicates the organization ID of
SFs. 0 value means any organization is possible.
Type: 4 bits that indicate the service type. For example: Web filter,
Mail filter, DLP?0 value means any type of service is possible.
C bits: Constraint bit which indicates the constraint that is given
to this header. An example can be must travel, must not travel, may
travel?The next two R bits are reserved for the development of
constraint condition.
Chau, et al. Expires December 30, 2015 [Page 6]
Internet-Draft SFC Constraint June 2015
Related Constraint ID (RC): Some constraints are related with other
constraints (like AND condition). This field indicates the relation
of this header to another header.
Other bits are reserved.
6. Security Considerations
(TBD)
7. IANA Considerations
(TBD)
8. References
8.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
8.2. Informative References
[SFC-arch] Quinn, P., Ed. and J. Halpern, Ed., "Service Function
Chaining (SFC) Architecture", 2014,
<http://datatracker.ietf.org/doc/draft-quinn-sfc-arch>.
[SFC-nsh] Quinn, P. and J. Guichard, "Network Service Header", 2014,
<http://datatracker.ietf.org/doc/draft-quinn-sfc-nsh>
9. Acknowledgement
(TBD)
Chau, et al. Expires December 30, 2015 [Page 7]
Internet-Draft SFC Constraint June 2015
Authors' Addresses
Ngoc-Tu Chau
Soongsil University
369, Sangdo-ro, Dongjak-gu,
Seoul 156-743, Korea
Email: chaungoctu@ssu.ac.kr
Jungsoo Park
Soongsil University
369, Sangdo-ro, Dongjak-gu,
Seoul 156-743, Korea
Email: ddukki86@ssu.ac.kr
Souhwan Jung
Soongsil University
369, Sangdo-ro, Dongjak-gu,
Seoul 156-743, Korea
Email: souhwanj@ssu.ac.kr
Chau, et al. Expires December 30, 2015 [Page 8]