draft-ietf-dmm-fpc-cpdp-00.txt   draft-ietf-dmm-fpc-cpdp-01.txt 
DMM Working Group M. Liebsch DMM Working Group M. Liebsch
Internet-Draft NEC Internet-Draft NEC
Intended status: Standards Track S. Matsushima Intended status: Standards Track S. Matsushima
Expires: November 7, 2015 Softbank Telecom Expires: January 7, 2016 SoftBank
S. Gundavelli S. Gundavelli
Cisco Cisco
D. Moses D. Moses
Intel Corporation Intel Corporation
May 6, 2015 July 6, 2015
Protocol for Forwarding Policy Configuration (FPC) in DMM Protocol for Forwarding Policy Configuration (FPC) in DMM
draft-ietf-dmm-fpc-cpdp-00.txt draft-ietf-dmm-fpc-cpdp-01.txt
Abstract Abstract
The specification as per this document supports the separation of the The specification as per this document supports the separation of the
Control-Plane for mobility- and session management from the actual Control-Plane for mobility- and session management from the actual
Data-Plane. The protocol semantics abstract from the actual details Data-Plane. The protocol semantics abstract from the actual details
for the configuration of Data-Plane nodes and apply between a Client for the configuration of Data-Plane nodes and apply between a Client
function, which is used by an application of the mobility Control- function, which is used by an application of the mobility Control-
Plane, and an Agent function, which is associated with the Plane, and an Agent function, which is associated with the
configuration of Data-Plane nodes according to the policies issued by configuration of Data-Plane nodes according to the policies issued by
skipping to change at page 1, line 45 skipping to change at page 1, line 45
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on November 7, 2015. This Internet-Draft will expire on January 7, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2015 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 32 skipping to change at page 2, line 32
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions and Terminology . . . . . . . . . . . . . . . . . 3 2. Conventions and Terminology . . . . . . . . . . . . . . . . . 3
3. Model for Policy-based DMM Network Control . . . . . . . . . 3 3. Model for Policy-based DMM Network Control . . . . . . . . . 3
3.1. Reference Architecture for DMM Forwarding Policy 3.1. Reference Architecture for DMM Forwarding Policy
Configuration . . . . . . . . . . . . . . . . . . . . . . 3 Configuration . . . . . . . . . . . . . . . . . . . . . . 3
3.2. Generalized Rules on the Client-Agent-Interface . . . . . 6 3.2. Generalized Rules on the Client-Agent-Interface . . . . . 6
3.3. Role of the DMM FPC Client Function . . . . . . . . . . . 6 3.3. Role of the DMM FPC Client Function . . . . . . . . . . . 6
3.4. Role of the DMM FPC Agent Function . . . . . . . . . . . 7 3.4. Role of the DMM FPC Agent Function . . . . . . . . . . . 7
4. Protocol Messages and Semantics . . . . . . . . . . . . . . . 7 4. Protocol Messages and Semantics . . . . . . . . . . . . . . . 7
4.1. Protocol Messages . . . . . . . . . . . . . . . . . . . . 7 4.1. Protocol Messages . . . . . . . . . . . . . . . . . . . . 7
4.2. Protocol Attributes . . . . . . . . . . . . . . . . . . . 8 4.2. Protocol Attributes . . . . . . . . . . . . . . . . . . . 9
4.3. Protocol Operation . . . . . . . . . . . . . . . . . . . 10 4.3. Protocol Operation . . . . . . . . . . . . . . . . . . . 13
5. Conceptual Data Structures . . . . . . . . . . . . . . . . . 15 5. Conceptual Data Structures . . . . . . . . . . . . . . . . . 18
6. Security Considerations . . . . . . . . . . . . . . . . . . . 16 6. Security Considerations . . . . . . . . . . . . . . . . . . . 19
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19
8. Work Team Participants . . . . . . . . . . . . . . . . . . . 16 8. Work Team Participants . . . . . . . . . . . . . . . . . . . 19
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 16 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 19
9.1. Normative References . . . . . . . . . . . . . . . . . . 16 9.1. Normative References . . . . . . . . . . . . . . . . . . 19
9.2. Informative References . . . . . . . . . . . . . . . . . 16 9.2. Informative References . . . . . . . . . . . . . . . . . 19
Appendix A. YANG Data Model for the FPC Protocol . . . . . . . . 17 Appendix A. YANG Data Model for the FPC Protocol . . . . . . . . 20
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 25 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 31
1. Introduction 1. Introduction
One objective of the Distributed Mobility Management (DMM) WG is the One objective of the Distributed Mobility Management (DMM) WG is the
separation of the mobility management Control- and Data-Plane to separation of the mobility management Control- and Data-Plane to
enable flexible deployment, such as decentralized provisioning of enable flexible deployment, such as decentralized provisioning of
Data-Plane nodes (DPN). Data-Plane nodes can be configured to Data-Plane nodes (DPN). Data-Plane nodes can be configured to
function as anchor for a registered Mobile Node's (MN) traffic, function as anchor for a registered Mobile Node's (MN) traffic,
others can be configured to function as Mobile Access Gateway (MAG) others can be configured to function as Mobile Access Gateway (MAG)
as per the Proxy Mobile IPv6 protocol [RFC5213] or a Foreign Agent as per the Proxy Mobile IPv6 protocol [RFC5213] or a Foreign Agent
skipping to change at page 6, line 9 skipping to change at page 6, line 9
| DPN Configuration API | | DPN Configuration API |
+-------------------------+ +-------------------------+
Figure 2: Illustration of the functional reference architecture for Figure 2: Illustration of the functional reference architecture for
DMM Forwarding Policy Configuration (FPC) DMM Forwarding Policy Configuration (FPC)
3.2. Generalized Rules on the Client-Agent-Interface 3.2. Generalized Rules on the Client-Agent-Interface
To abstract configuration details of an IP switch or IP router on the To abstract configuration details of an IP switch or IP router on the
FPC protocol interface, this specification adopts the model of FPC protocol interface, this specification adopts the model of
logical gates (Ports) to bind certain properties, such as a QoS logical Ports to bind certain properties, such as a QoS policy.
policy. Additional properties can be bound to the same logical Port, Additional properties can be bound to the same logical Port, e.g.
e.g. encapsulation of packets, being directed to that logical Port, encapsulation of packets, being directed to that logical Port, in a
in a GRE tunnel. The remote tunnel endpoint is configured as part of GRE tunnel. The remote tunnel endpoint is configured as part of the
the property bound to that logical Port. All traffic, which has a property bound to that logical Port. All traffic, which has a
forwarding rule in common and should be forwarded according to the forwarding rule in common and should be forwarded according to the
properties bound to a particular Port, can be referred to that Port properties bound to a particular Port, can be referred to that Port
by configuration of a forwarding rule. Multiple IP flows or even by configuration of a forwarding rule. Multiple IP flows or even
aggregated traffic being destined to a given IP prefix can be aggregated traffic being destined to a given IP prefix can be
directed to that logical Port and experiences the same treatment directed to that logical Port and experiences the same treatment
according to the configured properties and forwarding according to the configured properties and forwarding
characteristics. Aggregated or per-Host/per-Flow traffic can be characteristics. Aggregated or per-Host/per-Flow traffic can be
identified by a longest prefix match or a Traffic Selector identified by a longest prefix match or a Traffic Selector [RFC6088]
respectively. respectively.
Figure 3 illustrates the generic policy configuration model as used Figure 3 illustrates the generic policy configuration model as used
between an FPC Client function and an FPC Agent function. between an FPC Client function and an FPC Agent function.
<prefix 1> <IP flow 1> <host src IP 1> +-------------------+ <prefix 1> <IP flow 1> <host src IP 1> +-------------------+
<host dst IP 1> <IP flow 2> <prefix 2> | Bind 1..M | <host dst IP 1> <IP flow 2> <prefix 2> | Bind 1..M |
| <IP flow 3> | | traffic templates | | <IP flow 3> | | traffic templates |
| | | | to each logical | | | | | to each logical |
| | | | port | | | | | port |
skipping to change at page 8, line 4 skipping to change at page 7, line 47
encapsulation, NA(P)T, traffic prioritization and scheduling) on encapsulation, NA(P)T, traffic prioritization and scheduling) on
the identified DPN according to the DPN's technology the identified DPN according to the DPN's technology
o Monitor scheduled events (e.g. failure or missing rule) and issue o Monitor scheduled events (e.g. failure or missing rule) and issue
an associated message to the FPC Client Function (NOTIFICATION, an associated message to the FPC Client Function (NOTIFICATION,
QUERY) QUERY)
4. Protocol Messages and Semantics 4. Protocol Messages and Semantics
4.1. Protocol Messages 4.1. Protocol Messages
The following table lists all specified protocol messages to create
and delete logical Ports, to add properties and to add forwarding
rules in terms of binding traffic descriptors to a logical Port.
Furthermore, messages are specified to schedule tasks, such as
monitoring, at an Agent and to probe the status of the scheduled task
from a Client. Additional messages are specified to enable the Data-
Plane to notify or query the Control-Plane through the Agent and
Client functions.
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| Message | Description | | Message | Description |
+=====================================================================+ +=====================================================================+
| Messages issued by the FPC Client | | Messages issued by the FPC Client |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| PRT_ADD | Add a logical port | | PRT_ADD | Add a logical port |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| PRT_DEL | Delete an existing logical port | | PRT_DEL | Delete an existing logical port |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| PROP_ADD | Add a property to a logical port | | PROP_ADD | Add a property to a logical port |
skipping to change at page 8, line 27 skipping to change at page 8, line 31
| PROP_DEL | Remove and delete a property from a logical port | | PROP_DEL | Remove and delete a property from a logical port |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| RULE_ADD | Add forwarding rule by binding traffic descriptor | | RULE_ADD | Add forwarding rule by binding traffic descriptor |
| | to a logical port | | | to a logical port |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| RULE_MOD | Modify existing forwarding rule by changing the | | RULE_MOD | Modify existing forwarding rule by changing the |
| | traffic descriptor bound to a logical port | | | traffic descriptor bound to a logical port |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| RULE_DEL | Delete a forwarding rule | | RULE_DEL | Delete a forwarding rule |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| EVENT_REG | Register an event at an Agent, which is to be | | EVENT_REG | Register an event and descriptions at an Agent |
| | monitored by the Agent and to be reported | | | about what is to be monitored by the Agent and |
| | what is to be reported in case the event occurs |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| PROBE | Probe the status of a registered event | | PROBE | Probe the status of a registered event |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| Messages issued by the FPC Agent | | Messages issued by the FPC Agent |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| | Notify the Client about the status of a | | | Notify the Client about the status of a |
| NOTIFY | monitored attribute at any event kind | | NOTIFY | monitored attribute at any event kind |
| | (periodic / event trigger / probed) | | | (periodic / event trigger / probed) |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| QUERY | Query the Client about missing rules/states | | QUERY | Query the Client about missing rules/states |
skipping to change at page 9, line 13 skipping to change at page 9, line 22
refer to a logical port as forwarding information. refer to a logical port as forwarding information.
This document specifies attributes from the following categories: This document specifies attributes from the following categories:
o Identifier attributes o Identifier attributes
o Properties o Properties
o Property-specific attributes o Property-specific attributes
o Traffic descriptors o Rules and Traffic descriptors
Note on the list of attributes: The list of attributes is not yet Note on the list of attributes: The list of attributes is not yet
complete. complete.
Note on Format Clarification: Meant to provide a first idea on the Note on Format Clarification: Meant to provide an idea on the content
format and number space and indicates length (bit) and semantics of of attributes. Semantics of key information fields or sub-option and
key information fields. the value's length (bit) are indicated. The possibility of a field/
option to appear multiple times in a message or within an attribute,
e.g. as sub-option, is referred to by '*'.
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| Attribute | Format Clarification | Description | | Attribute | Format Clarification | Description |
+=====================================================================+ +=====================================================================+
| Identifiers | | Identifiers |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| PRT_ID | [16,PTR_ID] | Identifies a logical Port | | PRT_ID | [32,PRT_ID] | Identifies a logical Port |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| PRT_PROP_ID | [16,PRT_ID] | Identifies a logical Port | | PRT_PROP_ID | [32,PRT_ID] | Identifies a logical Port |
| | [8,PROP_ID] | and one of its properties | | | [8,PROP_ID] | and one of its properties |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| CLI_ID | [8, Carrier ID] | Identifies an | | PRT_RULE_ID | [32,PRT_ID] | Identifies a logical Port |
| | [8, Network ID] | FPC Client function | | | [8,RULE_ID] | and a rule that refers to |
| | [16, Client ID] | | | | | the Port |
+----------------+----------------------+-----------------------------+
| CLI_ID | [16, Carrier ID] | Identifies an |
| | [16, Network ID] | FPC Client function |
| | [32, Client ID] | |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| AGT_ID | [8, Carrier ID] | Identifies an | | AGT_ID | [16, Carrier ID] | Identifies an |
| | [8, Network ID] | FPC Agent function | | | [16, Network ID] | FPC Agent function |
| | [16, Agent ID] | | | | [32, Agent ID] | |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| DPN_ID | [8, Carrier ID] | Identifies a Data Plane | | DPN_ID | [16, Carrier ID] | Identifies a Data Plane |
| | [8, Network ID] | Node (DPN) | | | [16, Network ID] | Node (DPN) |
| | [16, DPN ID] | | | | [32, DPN ID] | |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| EVENT_ID | [16, Event ID] |Identifies a registered event| | EVENT_ID | [32, Event ID] |Identifies a registered event|
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
Figure 5: Protocol Attributes: Identifiers Figure 5: Protocol Attributes: Identifiers
+---------------------------------------------------------------------+ +----------------------------------------------------------------------+
| Attribute | Format Clarification | Description | | Attribute | Format Clarification | Description |
+=====================================================================+ +======================================================================+
| Properties | | Properties |
+---------------------------------------------------------------------+ +----------------------------------------------------------------------+
| PROP_TUN | [type][src][dst] | Property Encapsulation, | | PROP_TUN | [type][src][dst] | Property Encapsulation, |
| | | indicates type GRE, IP, GTP | | | | indicates type GRE, IP, |
+---------------------------------------------------------------------+ | | | GTP |
| PROP_REWR | TBD | Property NAT | +----------------------------------------------------------------------+
+---------------------------------------------------------------------+ | PROP_REWR | [in_src_ip][out_src_ip] | Property NAT defines |
| PROP_QOS | TBD | Property QoS | | | [in_dst_ip][out_dst_ip] | IP address and port |
+---------------------------------------------------------------------+ | | [in_src_port][out_src_port]| re-write rules |
| PROP_GW | [ip address next hop]| Property Next Hop | | | [in_dst_port][out_dst_port]| |
+---------------------------------------------------------------------+ +----------------------------------------------------------------------+
| PROP_QOS | [QoS index type][index] | Property QoS refers to |
| | [DSCP] | single index and DS Code|
| | | Point to write |
+----------------------------------------------------------------------+
| PROP_GW | [ip address next hop] | IP address of the Next |
| | | Hop to which IP packets |
| | | should be forwarded |
+----------------------------------------------------------------------+
Figure 6: Protocol Attributes: Properties Figure 6: Protocol Attributes: Properties
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| Attribute | Format Clarification | Description | | Attribute | Format Clarification | Description |
+=====================================================================+ +=====================================================================+
| Property-specific | | Property-specific |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| IPIP_CONF | | IP-encapsulation | | IPIP_CONF | | IP-encapsulation |
| | | configuration attribute | | | | configuration attribute |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| GRE_CONF | [prototype][seq-#] | GRE_encapsulation | | GRE_CONF | [prototype][seq-#] | GRE_encapsulation |
| | [key].. | configuration attribute | | | [key] | configuration attribute |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| GTP_CONF | [TEID_local] | GTP-U encapsulation | | GTP_CONF | [TEID_local] | GTP-U encapsulation |
| | [TEID_remote] | configuration attribute | | | [TEID_remote] | configuration attribute |
| | [seq-#].. | | | | [seq-#] | |
+---------------------------------------------------------------------+ +---------------------------------------------------------------------+
| QOS_GBR | [GBR] *[PRT_ID] | Guaranteed Bit Rate and |
| | | single or multiple PRT_IDs |
| | | to which the GBR applies |
| | | when being aggregated |
+----------------+----------------------+-----------------------------+
| QOS_MBR | [MBR] *[PRT_ID] | Maximum Bit Rate and single |
| | | or multiple PRT_IDs to which|
| | | the MBR applies when being |
| | | aggregated |
+----------------+----------------------+-----------------------------+
Figure 7: Protocol Attributes: Property-specific Figure 7: Protocol Attributes: Property-specific
+---------------------------------------------------------------------+
| Attribute | Format Clarification | Description |
+=====================================================================+
| Rules |
+---------------------------------------------------------------------+
| RULE_DST_IP | [IP address] | Aggregated or per-host dst |
| | [Prefix Len] | IP address/prefix rule |
+---------------------------------------------------------------------+
| RULE_SRC_IP | [IP address] | Aggregated or per-host src |
| | [Prefix Len] | IP address/prefix rule |
+---------------------------------------------------------------------+
| RULE_TS | [Traffic Selector] | Traffic Selector based rule,|
| | | Format as per RFC6088 |
+----------------+----------------------+-----------------------------+
Figure 8: Protocol Attributes: Rules
4.3. Protocol Operation 4.3. Protocol Operation
The following list comprises a more detailed description of each The following list comprises a more detailed description of each
message's semantic. message's semantic.
o PRT_ADD - Issued by a Client to add a new logical port at an o PRT_ADD - Issued by a Client to add a new logical port at an
Agent, to which traffic can be directed. An Agent receiving the Agent, to which traffic can be directed. An Agent receiving the
PRT_ADD message should identify the new logical port according to PRT_ADD message should identify the new logical port according to
the included port identifier (PRT_ID). In case the DPN holds the included port identifier (PRT_ID). The Agent should add a new
already a registration for a logical port with the same logical port into its conceptual data structures using the port
identifier, the Agent should throw an error message to the Client. identifier as key. Optionally, the PRT_ADD message can include
Otherwise the Agent should add a new logical port into its property descriptions as well as rules descriptions, which are
conceptual data structures using the port identifier as key. bound and refer to the new logical port. This enables a Client to
issue a new configuration in a single transaction with an Agent.
o PRT_DEL - Used by a Client to delete an existing logical port. An o PRT_DEL - Used by a Client to delete an existing logical port. An
Agent receiving such message should delete all properties Agent receiving such message should delete all properties
associated with the identified port. associated with the identified port.
o PROP_ADD - Used by the Client to add a new property to an existing o PROP_ADD - Used by the Client to add a new property to an existing
logical port. The property is unambiguously identified through a logical port. The property is unambiguously identified through a
property identifier (PRT_PROP_ID). All traffic, which is directed property identifier (PRT_PROP_ID). All traffic, which is directed
to this logical port, experiences the existing and newly added to this logical port, experiences the existing and newly added
property. property. Optionally, the PROP_ADD message can include rules
descriptions, which refer to the port to which the properties are
bound. This enables a Client to add new rules to the existing
port to which the new properties have been bound in a single
transaction.
o PROP_MOD - Used by a Client to modify an existing property. For o PROP_MOD - Used by a Client to modify an existing property. For
example, a tunnel property can be changed to direct traffic to a example, a tunnel property can be changed to direct traffic to a
different tunnel endpoint in case of an MN's handover different tunnel endpoint in case of an MN's handover.
Optionally, the PROP_MOD message can include rules descriptions,
which refer to the port whose properties are modified. This
enables a Client to add new rules to the existing port whose
properties have been modifier in a single transaction.
o PROP_DEL - Used by a Client to delete one or multiple properties, o PROP_DEL - Used by a Client to delete one or multiple properties,
each being identified by a property identifier. each being identified by a property identifier.
o RULE_ADD - Used by a Client to add a forwarding rule and direct o RULE_ADD - Used by a Client to add a forwarding rule and direct
traffic towards a logical port. The rule add command must traffic towards a logical port. The rule add command must
unambiguously identify aggregated traffic (longest prefix), per unambiguously identify aggregated traffic (longest prefix), per
host IP traffic or per-flow traffic in the RULE_ADD command and host IP traffic or per-flow traffic in the RULE_ADD command and
bind the identified traffic to a logical port. An Agent receiving bind the identified traffic to a logical port. An Agent receiving
a RULE_ADD command must add the rule to its local conceptual data a RULE_ADD command must add the rule to its local conceptual data
skipping to change at page 12, line 25 skipping to change at page 14, line 48
identifier. An Agent receiving a PROBE message should send the identifier. An Agent receiving a PROBE message should send the
requested information for each event in a single or multiple requested information for each event in a single or multiple
NOTIFY messages. NOTIFY messages.
o NOTIFY - Used by an Agent to report the status of an event to a o NOTIFY - Used by an Agent to report the status of an event to a
Client. Client.
o QUERY - Used by an Agent to request an update of logical port o QUERY - Used by an Agent to request an update of logical port
properties via a Client. properties via a Client.
Figure 8 illustrates an exemplary session life-cycle based on Proxy The following list provides some information on the use and semantics
of attributes:
o PROP_TUN - Defines the properties for encapsulation into different
tunnel headers. The property includes IP address information of
tunnel endpoints as well as a type identifier to select the
encapsulation type. Further attributes may be included to provide
information which is relevant for the configuration and
initialization of the tunnel.
o PROP_REWR - Defines the properties for IP address and port re-
write.
o PROP_QOS - Defines the QoS properties in terms of a known index
type, e.g. LTE's Quality Class Index (QCI), and its value (QCI
1..9), as well as a Differentiated Services Code Point (DSCP) to
classify and mark packets. Additional attributes may follow, e.g.
as sub-options, to define Guaranteed Bit Rate (GBR) and Maximum
Bit Rate (MBR) bounds. GBR and MBR attributes can apply to a
single port or multiple ports. The latter is required to
configure aggregate bounds, such as Aggregate Maximum Bit Rate
(AMBR), taking traffic, which is forwarded through different ports
(hence experiencing different treatment), into account. In such
case the GBR/MBR attributes append multiple PRT_ID attributes to
identify the ports which are to be monitored to determine the
aggregated view of the bit rate. The scope of attributes for QoS
is aligned to [RFC7222]. The Allocation and Retention Priority
(ARP) as per [RFC7222] is not present in the list of QoS-specific
attributes, since ARP is treated and kept in the Control-Plane for
granting requests for new resources and QoS, as well as for
preempting other QoS configuration, if needed.
o PROP_GW - Defines a Next Hop IP address, to which packets are
forwarded. Using this attribute, the Control-Plane can configure
a host-route in the Data-Plane to deviate from default routes.
Figure 9 illustrates an exemplary session life-cycle based on Proxy
Mobile IPv6 registration via MAG Control-Plane function 1 (MAG-C1) Mobile IPv6 registration via MAG Control-Plane function 1 (MAG-C1)
and handover to MAG Control-Plane function 2 (MAG-C2). Edge DPN1 and handover to MAG Control-Plane function 2 (MAG-C2). Edge DPN1
represents the Proxy CoA after attachment, whereas Edge DPN2 serves represents the Proxy CoA after attachment, whereas Edge DPN2 serves
as Proxy CoA after handover. as Proxy CoA after handover.
+-------Router--------+ +-------Router--------+
+-----------+ |+-------+ +---------+| +-----------+ |+-------+ +---------+|
+------+ +------+ +-----+ FPC | | FPC | | Anchor | +------+ +------+ +-----+ FPC | | FPC | | Anchor |
|MAG-C1| |MAG-C2| |LMA-C| Client| | Agent | | DPN | |MAG-C1| |MAG-C2| |LMA-C| Client| | Agent | | DPN |
+------+ +------+ +-----+-------+ +-------+ +---------+ +------+ +------+ +-----+-------+ +-------+ +---------+
skipping to change at page 13, line 41 skipping to change at page 16, line 41
| |<--PBA------| [PROP_ID,PROP_TUN] |-tun1 mod->| | |<--PBA------| [PROP_ID,PROP_TUN] |-tun1 mod->|
| | | | | | | | | |
| | +----+ | | | | | +----+ | | |
| | |Edge| | | | | | |Edge| | | |
| | |DPN2| | | | | | |DPN2| | | |
| | +----+ | | | | | +----+ | | |
| | | | | | | | | | | |
| | |-============================================-| | | |-============================================-|
| | | | | | | | | |
Figure 8: Exemplary Message Sequence (focus on FPC reference point) Figure 9: Exemplary Message Sequence (focus on FPC reference point)
After reception of the Proxy Binding Update (PBU) at the LMA Control- After reception of the Proxy Binding Update (PBU) at the LMA Control-
Plane function (LMA_C), the LMA-C selects a suitable DPN, which Plane function (LMA_C), the LMA-C selects a suitable DPN, which
serves as Data-Plane anchor to the MN's traffic. The LMA-C adds a serves as Data-Plane anchor to the MN's traffic. The LMA-C adds a
new logical port to the DPN to treat the MN's traffic (1) and new logical port to the DPN to treat the MN's traffic (1) and
includes a Port Identifier (PRT_ID) to the PRT_ADD command. The includes a Port Identifier (PRT_ID) to the PRT_ADD command. The
LMA-C identifies the selected Anchor DPN by including the associated LMA-C identifies the selected Anchor DPN by including the associated
DPN identifier. DPN identifier.
Subsequently, the LMA-C adds properties to the new logical port. One Subsequently, the LMA-C adds properties to the new logical port. One
skipping to change at page 14, line 30 skipping to change at page 17, line 30
target MAG-C2. The PBU refers to a new Data-Plane node (Edge DPN2) target MAG-C2. The PBU refers to a new Data-Plane node (Edge DPN2)
to represent the new tunnel endpoint. The LMA-C sends a PROP_MOD to represent the new tunnel endpoint. The LMA-C sends a PROP_MOD
message (5) to the Agent to modify the existing tunnel property of message (5) to the Agent to modify the existing tunnel property of
the existing logical port and to update the tunnel endpoint from Edge the existing logical port and to update the tunnel endpoint from Edge
DPN1 to Edge DPN2. At reception of the PROP_MOD message, the Agent DPN1 to Edge DPN2. At reception of the PROP_MOD message, the Agent
applies local configuration commands to modify the tunnel. applies local configuration commands to modify the tunnel.
To reduce the number of protocol handshakes between the LMA-C and the To reduce the number of protocol handshakes between the LMA-C and the
DPN, the LMA-C can append property (PROP_TUN, PROP_QOS) and rules DPN, the LMA-C can append property (PROP_TUN, PROP_QOS) and rules
(prefix info HNP) attributes to the PRT_ADD message, as illustrated (prefix info HNP) attributes to the PRT_ADD message, as illustrated
in Figure 9 in Figure 10
+-----------+ +-------+ +---------+ +-----------+ +-------+ +---------+
+------+ +------+ +-----+ FPC | | FPC | | Anchor | +------+ +------+ +-----+ FPC | | FPC | | Anchor |
|MAG-C1| |MAG-C2| |LMA-C| Client| | Agent | | DPN | |MAG-C1| |MAG-C2| |LMA-C| Client| | Agent | | DPN |
+------+ +------+ +-----+-------+ +-------+ +---------+ +------+ +------+ +-----+-------+ +-------+ +---------+
[MN attach] | | | | [MN attach] | | | |
|-------------PBU----->| | | |-------------PBU----->| | |
| | |----(1)-PRT_ADD----------->| | | | |----(1)-PRT_ADD----------->| |
| | | [PRT_ID,PROP_ID,PROP_TUN, |--tun1 up->| | | | [PRT_ID,PROP_ID,PROP_TUN, |--tun1 up->|
|<------------PBA------| PROP_ID,PROP_QOS, |--tc qos-->| |<------------PBA------| PROP_ID,PROP_QOS, |--tc qos-->|
| | | HNP] |-route add>| | | | HNP] |-route add>|
skipping to change at page 15, line 25 skipping to change at page 18, line 25
| [DPN1| | | | | | [DPN1| | | | |
| | | | | | | | | |
| [MN handover] | | | | [MN handover] | | |
| |---PBU ---->| | | | |---PBU ---->| | |
| | |---------PROP_MOD--------->| | | | |---------PROP_MOD--------->| |
| |<--PBA------| [PROP_ID,PROP_TUN] |-tun1 mod->| | |<--PBA------| [PROP_ID,PROP_TUN] |-tun1 mod->|
| | | | | | | | | |
| | [Edge]-===========================================-| | | [Edge]-===========================================-|
| | [DPN2] | | | | | [DPN2] | | |
Figure 9: Example: Sequence for Message Aggregation (focus on FPC Figure 10: Example: Sequence for Message Aggregation (focus on FPC
reference point) reference point)
5. Conceptual Data Structures 5. Conceptual Data Structures
An FPC Client must keep record about the logical ports, each port's An FPC Client must keep record about the logical ports, each port's
properties as well as configured rules as per the Mobility Control- properties as well as configured rules as per the Mobility Control-
Plane function's request. Such information must be maintained for Plane function's request. Such information must be maintained for
each Agent, with which the Client communicates. In case the Mobility each Agent, with which the Client communicates. In case the Mobility
Control-Plane function identifies a particular DPN at which the Control-Plane function identifies a particular DPN at which the
policies should be enforced, the Client must associate the DPN policies should be enforced, the Client must associate the DPN
skipping to change at page 16, line 36 skipping to change at page 19, line 36
Seite, Alper Yegin, Carlos Bernardos, Charles Perkins and Fred Seite, Alper Yegin, Carlos Bernardos, Charles Perkins and Fred
Templin. Templin.
9. References 9. References
9.1. Normative References 9.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC6088] Tsirtsis, G., Giarreta, G., Soliman, H., and N. Montavont,
"Traffic Selectors for Flow Bindings", RFC 6088, January
2011.
[RFC7333] Chan, H., Liu, D., Seite, P., Yokota, H., and J. Korhonen, [RFC7333] Chan, H., Liu, D., Seite, P., Yokota, H., and J. Korhonen,
"Requirements for Distributed Mobility Management", RFC "Requirements for Distributed Mobility Management", RFC
7333, August 2014. 7333, August 2014.
[RFC7429] Liu, D., Zuniga, JC., Seite, P., Chan, H., and CJ. [RFC7429] Liu, D., Zuniga, JC., Seite, P., Chan, H., and CJ.
Bernardos, "Distributed Mobility Management: Current Bernardos, "Distributed Mobility Management: Current
Practices and Gap Analysis", RFC 7429, January 2015. Practices and Gap Analysis", RFC 7429, January 2015.
9.2. Informative References 9.2. Informative References
[RFC3344] Perkins, C., "IP Mobility Support for IPv4", RFC 3344, [RFC3344] Perkins, C., "IP Mobility Support for IPv4", RFC 3344,
August 2002. August 2002.
[RFC5213] Gundavelli, S., Leung, K., Devarapalli, V., Chowdhury, K., [RFC5213] Gundavelli, S., Leung, K., Devarapalli, V., Chowdhury, K.,
and B. Patil, "Proxy Mobile IPv6", RFC 5213, August 2008. and B. Patil, "Proxy Mobile IPv6", RFC 5213, August 2008.
[RFC7222] Liebsch, M., Seite, P., Yokota, H., Korhonen, J., and S.
Gundavelli, "Quality-of-Service Option for Proxy Mobile
IPv6", RFC 7222, May 2014.
Appendix A. YANG Data Model for the FPC Protocol Appendix A. YANG Data Model for the FPC Protocol
This appendix provides (so far experimental) formating of some FPC This appendix provides (so far experimental) formating of some FPC
protocol components adopting YANG data modeling. The current FPC protocol components adopting YANG data modeling. The current FPC
information model as per this initial draft version will experience information model as per this initial draft version will experience
extensions, as it is not yet complete, and may experience changes extensions, as it is not yet complete, and may experience changes
that need to be reflected in the data model. Whether a detailed data that need to be reflected in the data model. Whether a detailed data
model will be included in this document or solely an information model will be included in this document or solely an information
model will be adopted by this document and a detailed data model will model will be adopted by this document and a detailed data model will
be part of a separate document is currently being discussed. be part of a separate document is currently being discussed.
<CODE BEGINS> file "ietf-dmm-fpcp@2015-07-06.yang"
module ietf-dmm-fpcp { module ietf-dmm-fpcp {
namespace "urn:ietf:params:xml:ns:yang:dmm-fpcp"; namespace "urn:ietf:params:xml:ns:yang:ietf-dmm-fpcp";
prefix fpcp; prefix fpcp;
import ietf-inet-types { prefix inet; } import ietf-inet-types { prefix inet; }
organization "IETF DMM Working Group";
contact "Satoru Matsushima <satoru.matsushima@g.softbank.co.jp>";
description description
"This module contains YANG definition for "This module contains YANG definition for
Forwarding Policy Configuration Protocol.(FPCP)"; Forwarding Policy Configuration Protocol.(FPCP)";
revision 2015-03-09 {} revision 2015-07-06 {
description "Changes based on -01 version of FPCP draft.";
reference "draft-ietf-dmm-fpc-cpdp-01";
}
typedef fpcp-port-id { typedef fpcp-port-id {
type uint32;
description "PRT_ID"; description "PRT_ID";
type uint16;
} }
typedef fpcp-property-id { typedef fpcp-property-id {
description "PROP_ID";
type uint8; type uint8;
description "PRT_PROP_ID";
}
typedef fpcp-rule-id {
type uint8;
description "PRT_RULE_ID";
} }
identity tunnel-type { identity tunnel-type {
description description
"Base identity from which specific use of "Base identity from which specific use of
tunnels are derived."; tunnels are derived.";
} }
identity fpcp-tunnel-type { identity fpcp-tunnel-type {
base "tunnel-type"; base "tunnel-type";
skipping to change at page 18, line 18 skipping to change at page 21, line 40
identity gtp { identity gtp {
base "fpcp-tunnel-type"; base "fpcp-tunnel-type";
description "GTP-U tunnel"; description "GTP-U tunnel";
} }
identity gre { identity gre {
base "fpcp-tunnel-type"; base "fpcp-tunnel-type";
description "GRE tunnel"; description "GRE tunnel";
} }
identity service-function {
description
"Base identity from which specific
service function types are derived.";
}
identity ip-protocol { identity ip-protocol {
description description
"Base identity from which specific "Base identity from which specific
IP protocol types are derived."; IP protocol types are derived.";
} }
identity qos-type { identity qos-type {
description description
"Base identity from which specific "Base identity from which specific
uses of QoS types are derived."; uses of QoS types are derived.";
} }
identity fpcp-qos-type { identity fpcp-qos-type {
base "qos-type"; base "qos-type";
description description
"Base identity from which specific "Base identity from which specific
QoS types in FPCP uses are derived."; QoS types in FPCP uses are derived.";
} }
identity fpcp-qos-type-high { identity fpcp-qos-type-gbr {
base "fpcp-qos-type";
description
"An example FPCP QoS Type for high quality class.
FPCP supported QoS classes are TBD.";
}
identity fpcp-qos-type-middle {
base "fpcp-qos-type"; base "fpcp-qos-type";
description description
"An example FPCP QoS Type for middle quality class. "A QoS Type for Guaranteed Bit Rate (GBR).";
FPCP supported QoS classes are TBD.";
} }
identity fpcp-qos-type-low { identity fpcp-qos-type-mbr {
base "fpcp-qos-type"; base "fpcp-qos-type";
description description
"An example FPCP QoS Type for low quality class. "A QoS Type for Maximum Bit Rate (MBR).";
FPCP supported QoS classes are TBD.";
} }
grouping fpcp-client { grouping fpcp-client {
description "CLI_ID to identify FPCP Client"; description "CLI_ID to identify FPCP Client";
leaf carrier-id { leaf carrier-id {
type uint8; type uint16;
description "Carrier ID";
} }
leaf network-id { leaf network-id {
type uint8; type uint16;
description "Network ID";
} }
leaf client-id { leaf client-id {
type uint16; type uint32;
mandatory true; mandatory true;
description "Client ID";
} }
} }
grouping fpcp-agent { grouping fpcp-agent {
description "AGT_ID to identify FPCP Agent"; description "AGT_ID to identify FPCP Agent";
leaf carrier-id { leaf carrier-id {
type uint8; type uint16;
description "Carrier ID";
} }
leaf network-id { leaf network-id {
type uint8; type uint16;
description "Network ID";
} }
leaf agent-id { leaf agent-id {
type uint16; type uint32;
mandatory true; mandatory true;
description "Agent ID";
} }
} }
grouping dpn { grouping dpn {
description "DPN_ID to identify Data-Plane Node"; description "DPN_ID to identify Data-Plane Node";
leaf carrier-id { leaf carrier-id {
type uint8; type uint16;
description "Carrier ID";
} }
leaf network-id { leaf network-id {
type uint8;
}
leaf dpn-id {
type uint16; type uint16;
mandatory true; description "Network ID";
}
}
grouping port-property-id {
description "PRT_PROP_ID";
leaf port-id {
mandatory true;
type fpcp-port-id;
} }
leaf property-id { leaf dpn-id {
type fpcp-property-id; type uint32;
mandatory true; mandatory true;
description "DPN ID";
} }
} }
grouping tunnel-endpoints { grouping tunnel-endpoints {
description description
"PROP_TUN property as a set of tunnel endpoints"; "PROP_TUN property as a set of tunnel endpoints";
leaf tunnel-type { leaf tunnel-type {
type identityref { type identityref {
base "fpcp-tunnel-type"; base "fpcp-tunnel-type";
} }
description "Tunnel Type";
} }
leaf remote-address { leaf remote-address {
type inet:ip-address; type inet:ip-address;
description "Remote endpoint";
} }
leaf local-address { leaf local-address {
type inet:ip-address; type inet:ip-address;
description "Local endpoint";
} }
} }
grouping gtp-attributes { grouping gtp-attributes {
description description
"GTP_CONF as GTP tunnel specific attributes"; "GTP_CONF as GTP tunnel specific attributes";
leaf remote-teid { leaf remote-teid {
type uint32; type uint32;
description "TEID of remote-endpoint";
} }
leaf local-teid { leaf local-teid {
type uint32; type uint32;
description "TEID of local-endpoint";
} }
} }
grouping gre-attributes { grouping gre-attributes {
description description
"GRE_CONF as GRE tunnel specific attribute"; "GRE_CONF as GRE tunnel specific attribute";
leaf key { leaf key {
type uint32; type uint32;
description "GRE_KEY";
}
}
grouping rewriting-properties {
description
"PROP_REWR. TBD for which type of rewriting functions
need to be defined";
leaf type {
type identityref {
base service-function;
}
description "The type of service-function";
}
}
grouping qos-properties {
description "PROP_QOS";
leaf qos-type {
type identityref {
base "fpcp-qos-type";
}
description "QoS Type";
}
leaf bandwidth {
type uint32;
description "";
} }
} }
grouping fpcp-identifier-attributes { grouping fpcp-identifier-attributes {
description description
"Identifiers of protocol attributes"; "Identifiers of protocol attributes";
leaf port-id {
type fpcp-port-id;
}
container client { container client {
description "Client ID";
uses fpcp-client; uses fpcp-client;
} }
container agent { container agent {
description "Agent ID";
uses fpcp-agent; uses fpcp-agent;
} }
list nodes { list nodes {
key dpn-id; key dpn-id;
uses dpn; uses dpn;
description "DPN ID";
} }
} }
grouping fpcp-traffic-descriptor { grouping fpcp-traffic-descriptor {
description description
"Traffic descriptor group collects parameters to "Traffic descriptor group collects parameters to
identify target traffic flow and apply QoS policy"; identify target traffic flow.";
leaf rule-id {
type fpcp-rule-id;
description "PRT_RULE_ID";
}
leaf destination-ip { leaf destination-ip {
type inet:ip-prefix; type inet:ip-prefix;
description "Rule of destination IP";
} }
leaf source-ip { leaf source-ip {
type inet:ip-prefix; type inet:ip-prefix;
description "Rule of source IP";
} }
leaf protocol { leaf protocol {
type identityref { type identityref {
base "ip-protocol"; base "ip-protocol";
} }
description "Rule of protocol";
} }
leaf destination-port { leaf destination-port {
type inet:port-number; type inet:port-number;
description "Rule of destination port";
} }
leaf source-port { leaf source-port {
type inet:port-number; type inet:port-number;
} description "Rule of source port";
leaf qos {
type identityref {
base "fpcp-qos-type";
}
} }
} }
grouping fpcp-port-properties { grouping fpcp-port-properties {
description description
"A set of port property attributes"; "A set of port property attributes";
leaf property-id { leaf property-id {
type fpcp-property-id; type fpcp-property-id;
description "Property ID";
} }
list next-hops { container endpoints {
container endpoints { description "Tunnel Endpoint";
uses tunnel-endpoints; uses tunnel-endpoints;
} }
choice tunnel { container qos {
case gtp-u { description "QoS Type";
when "tunnel-type = 'gtp'"; uses qos-properties;
uses gtp-attributes; }
container rewriting {
description "Rewriting function";
uses rewriting-properties;
}
choice tunnel {
description "Tunnel-Type";
case gtp-u {
when "tunnel-type = 'gtp'" {
description "In case of GTP-U is tunnel-type";
} }
case gre { uses gtp-attributes;
when "tunnel-type = 'gre'"; }
uses gre-attributes; case gre {
when "tunnel-type = 'gre'" {
description "In case of GRE is tunnel-type";
} }
uses gre-attributes;
} }
} }
} }
// Port Entries // Port Entries
container port-entries { container port-entries {
description description
"This container binds set of traffic-descriptor and "This container binds set of traffic-descriptor and
port properties to a port and lists them as a port entry."; port properties to a port and lists them as a port entry.";
list port-entry { list port-entry {
key port-id; key port-id;
description "List of port entries";
leaf port-id {
type fpcp-port-id;
description "Port-ID";
}
container identifier { container identifier {
description "Attributes set of Identifiers";
uses fpcp-identifier-attributes; uses fpcp-identifier-attributes;
} }
container trafic-descriptor { list trafic-descriptor {
key rule-id;
description "Rule and traffic-descriptor";
uses fpcp-traffic-descriptor; uses fpcp-traffic-descriptor;
} }
list properties { list properties {
key property-id;
description "Attributes set of properties";
uses fpcp-port-properties; uses fpcp-port-properties;
} }
} }
} }
// PRT_ADD // PRT_ADD
rpc port_add { rpc port_add {
description "PRT_ADD"; description "PRT_ADD";
output { input {
list fpcp-port-entry { list adding-ports {
uses fpcp-identifier-attributes; description "Ports that are added to an agent";
leaf port-id {
type fpcp-port-id;
description "Port-ID";
}
container trafic-descriptor {
description "Rule and traffic-descriptor";
uses fpcp-traffic-descriptor;
}
list properties {
key property-id;
description "Attributes set of properties";
uses fpcp-port-properties;
}
} }
} }
} }
// PRT_DEL // PRT_DEL
rpc port_delete { rpc port_delete {
description "PRT_DEL"; description "PRT_DEL";
input { input {
leaf deleting-port { list deleting-ports {
type fpcp-port-id; description "Ports that are deleted from an agent";
leaf deleting-port {
type fpcp-port-id;
description "Deleting port-id";
}
} }
} }
} }
// PROP_ADD // PROP_ADD
rpc port_property_add { rpc port_property_add {
description "PROP_ADD"; description "PROP_ADD";
input { input {
leaf target-port { list adding-properties {
type fpcp-port-id; description "Properties that are added to an agent";
mandatory true; leaf target-port {
} type fpcp-port-id;
container port-properties { description "Port-ID";
uses fpcp-port-properties; }
list properties {
key property-id;
description "Attributes set of properties";
uses fpcp-port-properties;
}
} }
} }
} }
// PROP_MOD // PROP_MOD
rpc port_property_modify { rpc port_property_modify {
description "PROP_MOD"; description "PROP_MOD";
input { input {
leaf target-port { list modifying-properties {
type fpcp-port-id; description
mandatory true; "Properties that are modified in an agent";
} leaf target-port {
container port-properties { type fpcp-port-id;
uses fpcp-port-properties; mandatory true;
description
"Target port-id of modifying properties";
}
list properties {
key property-id;
description "Attributes set of properties";
uses fpcp-port-properties;
}
} }
} }
} }
// PROP_DEL // PROP_DEL
rpc port_property_delete { rpc port_property_delete {
description "PROP_DEL"; description "PROP_DEL";
input { input {
container deleting-property { list deleting-property {
uses port-property-id; description
"Target port/property-id of deleting properties";
leaf port-id {
type fpcp-port-id;
mandatory true;
description "Port ID";
}
leaf property-id {
type fpcp-property-id;
mandatory true;
description "Property ID";
}
} }
} }
} }
// RULE_ADD // RULE_ADD
rpc rule_add { rpc rule_add {
description description
"TBD for input parameters of which RULE_ADD includes "TBD for input parameters of which RULE_ADD includes
but now just traffic-descriptor."; but now just traffic-descriptor.";
input { input {
leaf target-port { list adding-rules {
type fpcp-port-id; description "Rules that are added to an agent";
mandatory true; leaf target-port {
} type fpcp-port-id;
container port-properties { mandatory true;
uses fpcp-traffic-descriptor; description "Target port-id of adding rule";
}
list port-rules {
description "Added rule";
uses fpcp-traffic-descriptor;
}
} }
} }
} }
// RULE_MOD // RULE_MOD
rpc rule_modify { rpc rule_modify {
description description
"TBD for input parameters of which RULE_MOD includes "TBD for input parameters of which RULE_MOD includes
but now just traffic-descriptor."; but now just traffic-descriptor.";
input { input {
leaf target-port { list modifying-rules {
type fpcp-port-id; description "Rules that are modified in an agent";
mandatory true; leaf target-port {
} type fpcp-port-id;
container port-properties { mandatory true;
uses fpcp-traffic-descriptor; description "Target port-id of modifying rule";
}
list port-rule {
description "Modified rule";
uses fpcp-traffic-descriptor;
}
} }
} }
} }
// RULE_DEL // RULE_DEL
rpc rule_delete { rpc rule_delete {
description description
"TBD for input parameters of which RULE_DEL includes "TBD for input parameters of which RULE_DEL includes
but now just traffic-descriptor."; but now just traffic-descriptor.";
skipping to change at page 25, line 4 skipping to change at page 30, line 32
} }
} }
} }
// RULE_DEL // RULE_DEL
rpc rule_delete { rpc rule_delete {
description description
"TBD for input parameters of which RULE_DEL includes "TBD for input parameters of which RULE_DEL includes
but now just traffic-descriptor."; but now just traffic-descriptor.";
input { input {
leaf target-port { list deleting-rules {
type fpcp-port-id; description "Rules that are deleted from an agent";
mandatory true; leaf target-port {
} type fpcp-port-id;
container port-properties { mandatory true;
uses fpcp-traffic-descriptor; description "Target port-id of deleting rule";
}
list target-rules {
description "Deleting rules";
leaf target-rule-id {
type fpcp-rule-id;
mandatory true;
description "Rule ID";
}
}
} }
} }
} }
// EVENT_REG // EVENT_REG
rpc event_register { rpc event_register {
description description
"TBD for registered parameters included in EVENT_REG."; "TBD for registered parameters included in EVENT_REG.";
} }
// PROBE // PROBE
rpc probe { rpc probe {
skipping to change at page 25, line 38 skipping to change at page 31, line 26
} }
// NOTIFY // NOTIFY
notification notify { notification notify {
description description
"TBD for which status and event are reported to client."; "TBD for which status and event are reported to client.";
} }
} }
Figure 10: FPC YANG Data Model </CODE ENDS>
Figure 11: FPC YANG Data Model
Authors' Addresses Authors' Addresses
Marco Liebsch Marco Liebsch
NEC Laboratories Europe NEC Laboratories Europe
NEC Europe Ltd. NEC Europe Ltd.
Kurfuersten-Anlage 36 Kurfuersten-Anlage 36
D-69115 Heidelberg D-69115 Heidelberg
Germany Germany
skipping to change at page 26, line 4 skipping to change at page 31, line 41
Marco Liebsch Marco Liebsch
NEC Laboratories Europe NEC Laboratories Europe
NEC Europe Ltd. NEC Europe Ltd.
Kurfuersten-Anlage 36 Kurfuersten-Anlage 36
D-69115 Heidelberg D-69115 Heidelberg
Germany Germany
Phone: +49 6221 4342146 Phone: +49 6221 4342146
Email: liebsch@neclab.eu Email: liebsch@neclab.eu
Satoru Matsushima Satoru Matsushima
Softbank Telecom SoftBank
1-9-1,Higashi-Shimbashi,Minato-Ku 1-9-1,Higashi-Shimbashi,Minato-Ku
Tokyo 105-7322 Tokyo 105-7322
Japan Japan
Email: satoru.matsushima@g.softbank.co.jp Email: satoru.matsushima@g.softbank.co.jp
Sri Gundavelli Sri Gundavelli
Cisco Cisco
170 West Tasman Drive 170 West Tasman Drive
San Jose, CA 95134 San Jose, CA 95134
USA USA
Email: sgundave@cisco.com Email: sgundave@cisco.com
Danny Moses Danny Moses
 End of changes. 97 change blocks. 
169 lines changed or deleted 401 lines changed or added

This html diff was produced by rfcdiff 1.42. The latest version is available from http://tools.ietf.org/tools/rfcdiff/