i2rs | M. Wang, Ed. |
Internet-Draft | J. Chen |
Intended status: Informational | Huawei |
Expires: January 4, 2018 | R. Gu |
China Mobile | |
July 3, 2017 |
Information Model of Control-Plane and User-Plane separation BNG
draft-wcg-i2rs-cu-separation-infor-model-01
To improve network resource utilization and reduce the operation expense, the Control-Plane and User-Plane separation conception is raised [draft-gu-nfvrg-cloud-bng-architecture-01]. This document describes the information model for the interface between Control-Plane and User-Plane separation BNG. This information model may involve both control channel interface and configuration channel interface. The interface for control channel allows the Control-Plane to send the user's information table to the User-Plane, and the User-Plane to report the statistics information to the Control-Plane, etc. The interface for configuration channel is in charge of the version negotiation between the CP and UP, the configuration for the devices of CP and UP, and the report of UP's capabilities, etc. The information model defined in this document enable defining a standardized data model. Such a data model can be used to define an interface to the CU separation BNG.
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). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at http://datatracker.ietf.org/drafts/current/.
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."
This Internet-Draft will expire on January 4, 2018.
Copyright (c) 2017 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 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.
The rapid development of new services, such as 4K, IoT, etc, and increasing number of home broadband service users present some new challenges for BNGs such as:
To address these challenges, cloud-based BNG with C/U separated conception is raised [draft-gu-nfvrg-cloud-bng-architecture-01]. The main idea of Control-Plane and User-Plane separation method is to extract and centralize the user management functions of multiple BNG devices, forming an unified and centralized control plane (CP). And the traditional router’s Control Plane and forwarding plane are both preserved on BNG devices in the form of a user plane (UP).
This document describes the information model for the interface between Control-Plane and User-Plane separation BNG. This information model may involve both control channel interface and configuration channel interface. The interface for control channel allows the Control-Plane to send the user's information table to the User-Plane, and the User-Plane to report the statistics information to the Control-Plane, etc. The interface for configuration channel is in charge of the version negotiation between the CP and UP, the configuration for the devices of CP and UP, and the report of UP's capabilities, etc. The information model defined in this document enable defining a standardized data model. Such a data model can be used to define an interface to the CU separation BNG.
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 [RFC2119].
BNG: Broadband Network Gateway. A broadband remote access server (BRAS, B-RAS or BBRAS) routes traffic to and from broadband remote access devices such as digital subscriber line access multiplexers (DSLAM) on an Internet service provider's (ISP) network. BRAS can also be referred to as a Broadband Network Gateway (BNG).
CP: Control Plane. The CP is a user control management component which support to manage UP’s resources such as the user entry and forwarding policy
UP: User Plane. UP is a network edge and user policy implementation component.
Briefly, a C/U separated BNG is made up of a CP and a UP. The CP is a user control management component which support to manage UP’s resources such as the user entry and forwarding policy, for example, the access bandwidth and priority management. And the UP is a network edge and user policy implementation component. It can support the forwarding plane functions on traditional BNG devices, such as traffic forwarding, QoS, and traffic statistics collection, and it can also support the control plane functions on traditional BNG devices, such as routing, multicast, etc.
In CP’s view, the UP provides the control management network resources such as user’s formation, access bandwidth, etc. The CP manages these resources and according to specific service’s requirements to generate several tables which contains a set of rules. And then CP sends these tables to UP.
In UP’s view, the CP generates tables and provides the rules. The UP receives these tables, parses it, matches these rules, and then performs corresponding actions.
This section describes information model that represents the concept of the interface of CU separation BNG which is language and protocol neutral.
The following figure describes the Overview of Information Model for CU separation BNG.
+---CP: (generate Tables, which including several rules) | | | +---PORT information: rule 1, 2, 3 ... | | | +---User Infor: rule 1, 2, 3 ... | | | +---IPv4 Infor: rule 1, 2, 3 ... | | | +---IPv6 Infor: rule 1, 2, 3 ... | | | +---QoS: rule 1, 2, 3 ... | | | +---Address field distribute: rule 1, 2, 3 ... | +---UP | +---Case 1:(report resources and statistical information) | | | +---PORT RESOURCES of UP | | | +---Traffic statistics | +---Case 2:(match rules then perform corresponding actions) | +---PORT information: match rules then action | +---User Infor: match rules then action | +---IPv4 Infor: match rules then action | +---IPv6 Infor: match rules then action | +---QoS: match rules then action | +---Address field distribute: match rules then action
This section describes information model for the interface of Control-Plane (CP). As mentioned in section 3, the CP is a user control management component which support to manage UP's resources and forwarding policy, and base on these resources and specific requirements of user's service, generate several tables which contains a set of matching rules.
The User Information Table contains a set of User's information. Base on above information CP generates corresponding table and matching rules. And then sends it to UP.
The Figure below illustrates the User Information Table of Control-Plane:
+---CP: (generate Tables, which contains several rules) | +---User-Infor | +---SubId | +---SubMac | +---AccessType | +---SessionID | +---InnerVlanId | +---OuterVlanId | +---SubIf
User Information may include:
The User-IPv4 Information Table contains a set of User's information and corresponding IPv4 address information. Base on above information CP generates corresponding table and matching rules. And then sends it to UP.
The Figure below illustrates the IPv4 Information Table of Control-Plane:
+---CP: (generate Tables, which contains several rules) | +---IPv4-Infor | +---UserID | +---SubIPv4 | +---MaskLen | +---GateWay | +---VRF
IPv4-Infor includes:
The User-IPv6 Information Table contains a set of User's information and corresponding IPv6 address information. Base on above information CP generates corresponding table and matching rules. And then sends it to UP.
The Figure below illustrates the IPv6 Information Table of Control-Plane:
+---CP: (generate Tables, which contains several rules) | +---IPv6-Infor | +---UserID | +---SubIPv6 | +---IPv6MaskLen | +---PDAddr | +---PDMasklen | +---Vrf
IPv6 Infor includes:
In CU separation BNG information model, the Control-Plane (CP) generates the QoS Table base on managed UP's bandwidth resources and specific QoS requirements of user's services. This table may contains a set of QoS matching rules. The CP sends this table to UP, UP receives and parses this table, matches these QoS rules, and then performs corresponding actions.
The Figure below illustrates the QoS Table of Control-Plane:
+---CP: (generate Tables, which including several rules) | +---PORT-infor | +--- UserId | +--- QosSubCarCir | +--- QosSubCarPir | +--- QosSubCarCbs | +--- QosSubCarPbs
UserId: Identifier of user.
QosSubCarCir: Committed Information Rate.
QosSubCarPir: Peak information rate.
QosSubCarCbs:Committed Burst Size.
QosSubCarPbs:Peak Burst Size.
The Port is a logical construct that identifies a specific process or a type of network service. In CU separation BNG information model, the Control-Plane (CP) generate the Port-Infor table base on the port-resources, which are received from the User-Plane (UP), and the specific requirements of user's services. This table contains a set of Port's matching rules. And then the CP sends this Port-Infor to UP
The Figure below illustrates the Port Information Table of Control-Plane:
+---CP: (generate tables, which contains several rules) | +---PORT-infor | +---IfIndex | +---BasEn
IfIndex: Index for interface.
BasEn: Enable the Bas Port.
In CU separation BNG information model, the Control-Plane (CP) generates and sends this Address field distribute Information table to UP. The UP receives and parses this table, matches corresponding rules presented in Address-field-distribute, and then performs actions
The Figure below illustrates the Address field distribute Table of Control-Plane:
+---CP:(generate Tables, which including several rules) | +---PORT-infor | +---AddressSegment | +---AddressSegmentMask | +---AddressSegmentVrf | +---NextHop | +---IfIndex | +---MaskLen
AddressSegment: The address segment information.
AddressSegmentMask: The address segment mask information.
AddressSegmentVrf: The address segment VRF.
NextHop: The next hop.
IfIndex: The index of the outing interface.
MaskLen: The Mask length.
This section describes information model for the interface of User-Plane (UP). As mentioned in section 3, the CP is a network edge and user policy implementation component. It supports: Forwarding plane functions on traditional BNG devices, including traffic forwarding, QoS, and traffic statistics collection Control plane functions on traditional BNG devices, including routing, multicast, and MPLS.
In CU separation BNG information model, the CP generates tables and provides the rules. The UP plays two roles:
The User Information Table contains a set of User's information. In CU separation BNG information model, the CP generates and sends this Information table to UP. The UP parses this table, matches corresponding rules, and then performs next step of actions.
The Figure below illustrates the User Information Table of User-Plane:
+---CP: (generate Tables, which contains several rules) | +---User-Infor Table | …… | Sends it to UP V +---UP: (Match Rules, then perform corresponding actions) | +---User-Infor (Match Rules) | +---SubId (Match Rule 1) | +---SubMac (Match Rule 2) | +---AccessType (Match Rule 3) | +---SessionID (Match Rule 4) | +---InnerVlanId (Match Rule 5) | +---OuterVlanId (Match Rule 6) | +---SubIf (Match Rule 7)
The user information models are presented in section 4.1.1.1.
The IPv4 Information Table contains a set of User's information and corresponding IPv4 address information. In CU separation BNG information model, the CP generates and sends this Information table to UP. The UP parses this table, matches corresponding rules, and then performs next step of actions.
The Figure below illustrates the IPv4 Information Table of User-Plane:
+---CP: (generate Tables, which contains several rules) | +---IPv4-Infor Table | …… | Sends it to UP V +---UP: (Match Rules, then perform corresponding actions) | +---IPv4-Infor (Match Rules) | +---UserID (Match Rule 1) | +---SubIPv4 (Match Rule 2) | +---MaskLen (Match Rule 3) | +---GateWay (Match Rule 4) | +---VRF (Match Rule 5)
The IPv4 Information Models are presented in section 4.1.1.2.
The IPv6 Information Table contains a set of User's information and corresponding IPv6 address information. In CU separation BNG information model, the CP generates and sends this Information table to UP. The UP parses this table, matches corresponding rules, and then performs next step of actions.
The Figure below illustrates the IPv6 Information Table of User-Plane:
+---CP: (generate Tables, which contains several rules) | +---IPv6-Infor Table | …… | Sends it to UP V +---UP: (Match Rules, then perform corresponding actions) | +---IPv6-Infor (Match Rules) | +---UserID (Match Rules) | +---SubIPv6 (Match Rules) | +---IPv6MaskLen (Match Rules) | +---PDAddr (Match Rules) | +---PDMasklen (Match Rules) | +---Vrf (Match Rules)
The IPv6 Information Models are presented in section 4.1.1.3.
In CU separation BNG information model, the Control-Plane (CP) generates the QOS Table base on managed UP’s bandwidth resources and specific QoS requirements of user’s services. This table contains a set of QoS matching rules. The CP sends this table to UP, UP receives and parses this table, matches corresponding QoS rules presented in the table, and then performs corresponding actions.
The Figure below illustrates the QoS Table of User-Plane:
+---CP: (generate Tables, which including several rules) | +---QoS-infor Table | …… | Sends it to UP V +---UP: (Match Rules, then perform corresponding actions) | +---QoS-infor (Match Rules) | +--- UserId (Match Rules) | +--- QosSubCarCir (Match Rules) | +--- QosSubCarPir (Match Rules) | +--- QosSubCarCbs (Match Rules) | +--- QosSubCarPbs (Match Rules)
The QoS Information Tables are presented in section 4.1.1.4.
Another role of User-Plane is to report the available network resources and statistical information. This section describes the information model of UP’s traffic statistics report. The User-Plane captures run time traffic statistics, generates the traffic-statistics infor table, and then reports it to Control-Plane.
The Figure below illustrates the Traffic Statistics Infor Table of User-Plane:
+---UP:(report Traffic statistics) | +---UP-Traffic statistics | +--- UserID | +--- StatisticsType | +--- IngressStatisticsPackets | +--- IngressStatisticsBytes | +--- EngressStatisticsPackets | +--- EngressStatisticsBytes
UserID: The Identifier of User.
StatisticsType: Traffic types such as IPv4, IPv6.
IngressStatisticsPackets: Ingress Statistics Packets
IngressStatisticsBytes: Ingress Statistics Bytes.
EngressStatisticsPackets: Engress Statistics Packets
EngressStatisticsBytes: Engress Statistics Bytes.
The Port is a logical construct that identifies a specific process or a type of network service. In CU separation BNG information model, the Control-Plane (CP) generate the Port-Infor table base on the port-resources, which are received from the User-Plane (UP), and the specific requirements of user's services. This table contains a set of Port's matching rules. And then the CP sends this Port-Infor to UP
The Figure below illustrates the Port Information Table of User-Plane:
+---CP: (generate tables, which contains several rules) | +---PORT-infor | +---IfIndex | +---BasEn
IfIndex: Index for interface.
BasEn: Enable the Bas Port.
Another role of User-Plane is to report the available network resources and statistical information. This section describes the information model of UP’s port resources report. The User-Plane looks up the available ports, reports them to the Control-Plane. The Control-Plane can generate Port-Infor table base on these information and specific requirements of user’s services.
The Figure below illustrates the Port Resources Information Table of User-Plane:
+---UP:(report network resources) | +---UP-PORT-RESOURCES | +---IfIndex | +---IfName | +---IfType | +---LinkType | +---MacAddr | +---IfPhyState | +---MTU
IfIndex: The Index of interface.
IfName: The name of interface.
IfType: The interface type.
LinkType: The link type.
MacAddr: The Mac address.
IfPhyState: The physical state of the interface.
MTU: Maximum Transmission Unit.
In CU separation BNG information model, the Control-Plane (CP) generates and sends this Address field distribute Information table to UP. The UP receives and parses this table, matches corresponding rules presented in Address-field-distribute, and then performs actions
The Figure below illustrates the Address field distribute Table of User-Plane:
+---UP:(match rules then perform corresponding actions) | +---PORT-infor | +---AddressSegment | +---AddressSegmentMask | +---AddressSegmentVrf | +---NextHop | +---IfIndex | +---MaskLen
AddressSegment: The address segment information.
AddressSegmentMask: The address segment mask information.
AddressSegmentVrf: The address segment VRF.
NextHop: The next hop.
IfIndex: The index of the outing interface.
MaskLen: The Mask length.
None.
None.
[RFC2119] | Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997. |
As mentioned in section 1, this information model may involve both control channel interface and configuration channel interface. The following appendix presents the yang data model for the configuration channel.
This yang data model extended the LNE model by adding some attributes which describe the information of QoS, ACL, Vlan, etc. And there are some mature models to describe the QoS, ACL and Vlan,etc. Therefore the schema-mount mechanism is used to extend the LNE model:
module exmaple-vbras{ namespace "http://example.com/yang:ietf-vbras"; prefix "vbras"; import ietf-network-instance{ prefix ni; } identity vbras-instance { base network-instance-type; description "Identity for vbras"; } }
As an example, consider the case where an LNE with a 'name' of "vbras-one" is defined on a network device. In this case the following structure might be made available:
....................................................................... (network-device state) +--rw yanglib:modules-state [RFC7895] +--rw lne:logical-network-elements [I-D. draft-ietf-rtgwg-lne-mode] +--rw logical-network-element* [name] +--rw name="vbras-one" string +--rw manged=true boolean +--rw root yang-schema-mount | ....................................................................... | (exposed LNE state if managed=true) | +--rw yanglib:modules-state [RFC7895] +--rw if:intefaces [RFC7223] +--rw if-l3-vlan: ietf-if-l3-vlan [I-D. ietf-netmod-sub-intf-vlan-model] +--rw policy: ietf-qos-policy [I-D. draft-asechoud-rtgwg-qos-model] +--rw acl: ietf-access-control-list [I-D. ietf-netmod-acl-model] +--rw vbras: example-vbras