Opsawg Working Group                                              C. Li
Internet-Draft                                                    C. Xie
Intended status: Informational                             China Telecom
Expires: September 2, 2018                                      R. Kumar
                                                               R. Lohiya
                                                        Juniper Networks
                                                                   J. Bi
                                                     Tsinghua University
                                                                   W. Xu
                                                     Huawei Technologies
                                                           March 1, 2018


           Coordinated Address Space Management architecture
         draft-li-opsawg-address-pool-management-arch-00

Abstract

   This document describes an architecture for the IP address space
   management.  It includes architectural concepts and components used
   in the CASM (Coordinated Address Space Management), with a focus on
   those interfaces to be standardized in the IETF.

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).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://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 September 2, 2018.

Copyright Notice

   Copyright (c) 2018 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
   (https://trustee.ietf.org/license-info) in effect on the date of



Li, et al.              Expires September 2, 2018               [Page 1]


Internet-Draft           Address Pool Management              March 2018


   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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  CASM Reference architecture . . . . . . . . . . . . . . . . .   3
   4.  CASM Functional and Logical Blocks  . . . . . . . . . . . . .   5
     4.1.  CASM Application  . . . . . . . . . . . . . . . . . . . .   5
     4.2.  CASM Coordinator  . . . . . . . . . . . . . . . . . . . .   5
     4.3.  CASM Device . . . . . . . . . . . . . . . . . . . . . . .   6
   5.  CASM Interface and operation  . . . . . . . . . . . . . . . .   7
     5.1.  CASM App-facing Interface . . . . . . . . . . . . . . . .   7
       5.1.1.  Functional requirements . . . . . . . . . . . . . . .   7
       5.1.2.  General operational . . . . . . . . . . . . . . . . .   8
       5.1.3.  Interface modeling requirements . . . . . . . . . . .   8
     5.2.  CASM device-facing Interface  . . . . . . . . . . . . . .   8
       5.2.1.  Functional requirements . . . . . . . . . . . . . . .   8
       5.2.2.  Interface modeling requirements . . . . . . . . . . .  10
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .  15
   7.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  15
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  15
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .  15
     8.2.  Informative References  . . . . . . . . . . . . . . . . .  15
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  15

1.  Introduction

   The address space management is an integral part of any network
   management solution.  The network architectures are rapidly changing
   with the migration toward private and public clouds.  At the same
   time, application architectures are also evolving with a shift toward
   micro-services and multi-tiered approach.

   There is a pressing need to define a new address management system
   which can meet these diverse set of requirements.  Such a system must
   be built with well-defined interfaces so users can easily migrate
   from one vendor to another without rewriting their network management
   systems.

   This document defines a reference architecture that should become the
   basis to develop a new address management system.  We are calling




Li, et al.              Expires September 2, 2018               [Page 2]


Internet-Draft           Address Pool Management              March 2018


   this new system as Centralized Address Space Management (CSAM)
   system.

   A series of use cases are defined in "Use Case Draft".  For example,
   Broadband Network Gateway (BNG), which manages a routable IP address
   on behalf of each subscriber, should be configured with the IP
   address pools allocated to subscribers.  However, currently operators
   are facing with the address shortage problem, the remaining IPv4
   address pools are usually quite scattered, no more than /24 per
   address pool in many cases.  Therefore, it is complicated to manually
   configure the address pools on lots of Broadband Network Gateway
   (BNG) for operators.  For large scale MAN, the number of BNGs can be
   up to over one hundred.  Manual configuration on all the BNGs
   statically will not only greatly increase the workload, but also
   decrease the utilization efficiency of the address pools when the
   number of subscribers changes in the future.

   Above is one example of use case, there are other devices which may
   need to configure address pools as well.  In this document, we
   propose a mechanism to manage the address pools centrally.  In this
   way, operators do not need to configure the address pools one by one
   manually and it also helps to use the address pools more efficiently.

2.  Terminology

   The following terms are used in this document:

      CASM: Coordinated Address Space Management

      IPAM: IP Address Management

      DA: A device agent in device, which contact with CASM Coordinator
      to manipulate address pool

      CASM Coordinator: A management system which has a centralized
      database manage the overall address pools and allocate address
      pools to the device in the devices.

3.  CASM Reference architecture

   The figure below shows the reference model for CASM.  This figure
   covers the various possible scenarios that can exist in a CASM
   system.








Li, et al.              Expires September 2, 2018               [Page 3]


Internet-Draft           Address Pool Management              March 2018


          +-------------+       +-------------+       +-------------+
          |     CASM    |       |     CASM    |       |     CASM    |
          |application 1|       |application j|       |application n|
          +------/------+       +------/------+       +------/------+
                 |                     |                     |
                 |                     |                     |
                 |                     |                     |
                 |                     |                     |
                 |                     |                     |
         +-------\---------------------\---------------------\-------+
         |    Coordinated Address Space Management System (CASM)     |
         |                       Coordinator                         |
         |    +-------------+  +-------------+  +-------------+      |
         |    |     Pool    |  |   Address   |  |   Address   |      |
         |    |  Management |  | Management  |  |  Database   |      |
         |    +-------------+  +-------------+  +-------------+      |
         |                                                           |
         +---.-------------------------.--------------------------.--+
             |                         |                          |
             |                         |                          |
             |                         |                          |
             |                         |                          |
             |                         |                          |
  +----------\--------+      +---------\---------+       +--------\----------+
  |                   |      |                   |       |                   |
  |  +-------------+  |      |  +-------------+  |       |  +-------------+  |
  |  |    Agent    |  |      |  |    Agent    |  |       |  |    Agent    |  |
  |  +-------------+  |      |  +-------------+  |       |  +-------------+  |
  |                   |      |                   |       |                   |
  |  +-------------+  |      |  +-------------+  |       |  +-------------+  |
  |  |     CASM    |  |      |  |     CASM    |  |       |  |     CASM    |  |
  |  | Distributor |  |      |  | Distributor |  |       |  | Distributor |  |
  |  +-------------+  |      |  +-------------+  |       |  +-------------+  |
  |      Device 1     |      |      Device 2     |       |      Device m     |
  +-------------------+      +-------------------+       +-------------------+


                   Figure 1: CASM reference architecture

   The overall procedure is as follows:

   o  Operators will configure remaining address pools centrally in the
      Address Pool Management System (APMS).  There are multiple address
      pools which can be configured centrally.  The APMS server will
      then divide the address pools into addressing unit (AU) which will
      be allocated to the agent in devices by default.





Li, et al.              Expires September 2, 2018               [Page 4]


Internet-Draft           Address Pool Management              March 2018


   o  The agent will initiate Address Pool request to the APMS.  It can
      carry its desired size of address pool the request, or just use a
      default value.  The address pool size in the request is only used
      as a hint.  The actual size of the address pool is totally
      determined by APMS.  It will also carry the DA's identification
      and the type of address pool.

   o  APMS looks up the remaining address pool in its local database.
      It will then allocate a set of address pools to the DA.  Each
      address pool has a related lifetime.

   o  DA receives the AddressPool reply and use them for their purpose.

   o  If the lifetime of the address pool is going to expire, the DA
      should issue an AddressPoolRenew request to extend the
      lifetime,including the IPv4, IPv6, Ports, etc.

   o  The AddressPoolReport module keeps monitoring and reports the
      current usage of all current address pools for each transition
      mechanism. if it is running out of address pools, it can renew the
      AddressPoolRequest for a newly allocated one.  It can also release
      and recycle an existing address pool if the that address pool has
      not been used for a specific and configurable time.

   o  When the connection of APMS is lost or the APMS needs the status
      information of certain applications, the APMS may pre-actively
      query the DA for the status information.

4.  CASM Functional and Logical Blocks

4.1.  CASM Application

   CASM Application is a functional entity which usually used to manage,
   operate, maintain the CASM Coordinator.  For example, operator or
   external user can manage the address pool in CASM Coordinator, and
   access log, address allocation records, etc.

4.2.  CASM Coordinator

   Coordinated Address Space Management System (CASM) Coordinator is a
   centralized address management coordinator for CASM application to
   maintain the overall address pools, addresses, address properties,
   etc.

   It maintains an address database including the overall address pools
   (OAP) and the address pool status (APS).  CASM Applications can
   maintain its remaining address pools in the OAP.  They can also
   reserve some address pool for special-purpose usage.  The address



Li, et al.              Expires September 2, 2018               [Page 5]


Internet-Draft           Address Pool Management              March 2018


   pools status is to reflect the current usage of the address pools for
   different devices.  CASM Coordinator also has the interface to
   maintain the address pools to different devices dynamically.

4.3.  CASM Device

   A CASM Device is responsible for distribute or allocate address from
   local address pools received from CASM Coordinator.

   Device agent (DA) is a component in a CASM device through which
   contact with CASM Coordinator.  It initiates the address pools
   allocation requests, passes the address pools to local instances,
   detect the availability of address pools, or report the status of
   local address pool usage and update the address pools requests, etc.
   for some devices, e.g. v6transition, VPN, etc., additional routing
   modules needs to update the routing table accordingly.

   CASM Distributor is another component in a CASM device, DHCP Server
   is a typical distributor which can assign IP addresses to client
   computer, DHCP protocol is usually used for this assignment.  The
   address assignment procedure between the CASM Distributor and
   computer is out of scope of this draft.

   The device determines whether the usage status of the IP address pool
   in device is satisfies the condition.  The address pool is a sharable
   resource, when the resource in device is insufficient or excessive,
   the device sends address pools request to the CASM Coordinator, and
   receives response with address pools allocated for this device from
   CASM Coordinator.  It can then use these address pools to assign
   address to end users.

   The typical CASM devices such as BNG, BRAS, CGN, DHCP Server, NAT,
   V6Transition, DNS Server, etc., are described in use cases of "draft-
   xie-ps-centralized-address-management-02" and "draft-kumar-casm-
   problem-and-use-cases-00".

   The form of device is diverse, it can be physical or virtualized, and
   it can be a box integrated with control plane and user plane, or
   separated control plane remote from box and one or more devices share
   centralized control plane.  In this device form, the control plane
   will manage multiple user plane devices.  A number of devices that
   are subordinate to a control plane will jointly share the address
   pools to make the utilization more high.








Li, et al.              Expires September 2, 2018               [Page 6]


Internet-Draft           Address Pool Management              March 2018


5.  CASM Interface and operation

5.1.  CASM App-facing Interface

5.1.1.  Functional requirements

   The CASM should support following functionality for it to be adopted
   for wide variety of use cases.

5.1.1.1.  Address pools

   A CASM system should allow ability to manage different kind of
   address pools.  The following pools should be considered for
   implementation; this is not mandatory or exhaustive by any means but
   given here as most commonly used in networks.  The CASM system should
   allow user-defined pools with any address objects.

   Unicast address pool:

   o  Private IPv4 addresses

   o  Public IPv4 addresses

   o  IPv6 addresses

   o  MAC Addresses

   Multicast address pool:

   o  IPv4 address

   o  IPv6 address

5.1.1.2.  Pool management

   There should be a rich set of functionality as defined in this
   section for operation of a given pool.

   Address management:

   o  Address allocation either as single or block

   o  Address reservation

   o  Allocation logic such as mapping schemes or algorithm per pool

   o




Li, et al.              Expires September 2, 2018               [Page 7]


Internet-Draft           Address Pool Management              March 2018


   General management:

   o  Pool initializing, resizing, threshold markings for resource
      monitoring

   o  Pool attributes such as used to automatically create DNS record

   o  Pool priority for searching across different pools

   o  Pool fragmentation rules, such as how pool can be sub-divided

   o  Pool lease rules for allocation requests

5.1.2.  General operational

   The CASM architecture consists of three major distinct entities: CASM
   Application, CASM Coordinator and network device with a device Agent.
   In order to provide address space and pools resource that CASM
   Coordinator can centrally maintaining, there is an interface between
   CASM Applications and CASM Coordinator.  The CASM Application can
   manage the address space and pool in the CASM Coordinator, and the
   get address allocation records, logs from CASM Coordinator.

5.1.3.  Interface modeling requirements

   There are three broad categories for CASM interface definition:

   Pool management interface: Interface to external user or applications
   such as SDN controller to manage addresses

   Log interface: Interface to access log and records such as DHCP, DNS,
   NAT Integration interface: Interface to address services such as
   DHCP, DNS, NAT

5.2.  CASM device-facing Interface

5.2.1.  Functional requirements

   In order to build a complete address management system, it is
   important that CASM should be able to integrate with other address
   services.  This will provide a complete solution to network operators
   without requiring any manual or proprietary workflows.

   DHCP server:

   o  Interface to initialize address pools on DHCP server

   o  Notification interface whenever an address lease is modified



Li, et al.              Expires September 2, 2018               [Page 8]


Internet-Draft           Address Pool Management              March 2018


   o  Interface to access address lease records from DHCP server

   o  Ability to store lease records and play back to DHCP server on
      reboot

   DNS server:

   o  Interface to initialize NAT pools

   o  Interface to access NAT records from NAT device

   o  Ability to store NAT records and play back to NAT device on reboot

5.2.1.1.  General operational

   The CASM architecture consists of three major distinct entities: CASM
   Application, CASM Coordinator and network device with a device Agent.
   In order to provide address pool manipulations between CASM
   Coordinator and device, the CASM architecture calls for well-defined
   protocols for interfacing between them.  Protocol such as radius
   can be used to compatible with legacy network equipment.  And in
   more modern network system, network device acts as NETCONF/RESTCONF
   server side, device like CASM Coordinator act as client side.  The
   network device sends address pool request message carrying the
   requested resource information to the CASM Coordinator, the
   centralized CASM Coordinator send response message to the network
   device, where the response message includes address pool resource
   information allocated to the network device, and network device
   receives the response message and retrieve the allocated address pool
   resource information carried in the response message.

   The overall address management procedure is as follows:

   o  Address Pool Management System (CASM) Coordinator configure
      remaining address pools centrally.  There are multiple address
      pools which can be configured.  The CASM Coordinator will then
      divide the address pools into addressing unit (AU) which will be
      allocated to the agent in devices by default.

   o  The agent will initiate Address Pool request to the CASM
      Coordinator.  The device judges whether the address resource used
      by the device meet certain conditions, the condition indicates the
      use status of the address resource with the device.  Then it
      generate and issue an Address Pool request in which carried its
      desired size of address pool, or just use a default value.  The
      address pool size in the request is only used as a hint.  The
      actual size of the address pool is totally determined by CASM




Li, et al.              Expires September 2, 2018               [Page 9]


Internet-Draft           Address Pool Management              March 2018


      Coordinator.  It will also carry the DA's identification and the
      type of address pool.

   o  CASM Coordinator looks up the remaining address pool in its local
      database.  It will then allocate a set of address pools to the DA.
      Each address pool has a related lifetime.

   o  DA receives the Address Pool reply and use them for their purpose.

   o  If the lifetime of the address pool is going to expire, the DA
      should issue an Address Pool Renew request to extend the lifetime,
      including the IPv4, IPv6, Ports, etc.

   o  The Address Pool Report module keeps monitoring and reports the
      current usage of all current address pools for each transition
      mechanism.  If it is running out of address pools, it can renew
      for a newly allocated one.  It can also release and recycle an
      existing address pool if that address pool has not been used for a
      specific and configurable time.

   o  When the connection of CASM Coordinator is lost or the CASM
      Coordinator needs the status information of certain applications,
      the CASM Coordinator may pre-actively query the DA for the status
      information.

5.2.2.  Interface modeling requirements

5.2.2.1.  Initial Address Pool Configuration























Li, et al.              Expires September 2, 2018              [Page 10]


Internet-Draft           Address Pool Management              March 2018


          +--------------+                           +-----------------+
          |   Device     |                           |       CASM      |
          |   Agent      |                           |   Coordinator   |
          +------+-------+                           +--------+--------+
                 |                                            |
        +--------+-------+                                    |
        |1.DA start-up   |                                    |
        +---------+------+                                    |
                  |            2.Address Pool Request         |
                  |------------------------------------------>|
                  |                                           |
                  |                                  +--------+-------+
                  |                                  |  3. Check      |
                  |                                  |   address pool |
                  |                                  +--------+-------+
                  |          4.Address Pool Reply             |
                  |<------------------------------------------|
                  |                                           |


               Figure 2: Initial Address Pool Configuration

   Figure 2 The procedure is as follows:

   1.  The DA checks whether there is already address pool configured in
       the local site when it starts up.

   2.  The DA will initiate Address Pool request to the CASM
       Coordinator.  It can carry its desired size of address pool in
       the request, or just use a default value.  The address pool size
       in the DA's request is only used as a hint.  The actual size of
       the address pool is totally determined by CASM Coordinator.  It
       will also carry the DA's identification, the type of transition
       mechanism and the indication of port allocation support.

   3.  The CASM Coordinator determines the address pool allocated for
       the DA based on the parameters received.

   4.  The CASM Coordinator sends the Address Pool Reply to the DA.  It
       will also distribute the routing entry of the address pool
       automatically.  In particular, if the newly received address pool
       can be aggregated to an existing one, the routing should be
       aggregated accordingly.








Li, et al.              Expires September 2, 2018              [Page 11]


Internet-Draft           Address Pool Management              March 2018


5.2.2.2.  Address Pool Status Report


        +--------------+                             +-----------------+
        |   Device     |                             |      CASM       |
        |   Agent      |                             |   Coordinator   |
        +------+-------+                             +--------+--------+
               |                                              |
      +--------+-------+                                      |
      |1.Monitor and   |                                      |
      |count the status|                                      |
      +--------+-------+                                      |
               |        2.Address Pool Status Report          |
               |--------------------------------------------->|
               |                                     +--------+-------+
               |                                     |  3. Record     |
               |                                     |   address pool |
               |                                     +--------+-------+
               |       4.Address Pool Report Confirm          |
               |<---------------------------------------------|
               |                                              |
               |                                              |



                   Figure 3: Address Pool Status Report

   Figure 3 Figure 3 illustrates the active address pool status report
   procedure:

   1.  The DA will monitor and count the usage status of the local
       address pool.  The DA counts the address usage status in
       certain period, which includes the local address,
       address usage ratio (peak and average values), and the port usage
       ratio (peak and average values).

   2.  The DA reports the address pool usage status to the CASM
       Coordinator.

   3.  The CASM Coordinator records the status and compares with the
       existing address information to determine whether additional
       address pool is needed.









Li, et al.              Expires September 2, 2018              [Page 12]


Internet-Draft           Address Pool Management              March 2018


   4.  The CASM Coordinator will confirm the address pool status report
       request to the DA.  It will keep sending the address pool status
       report request to the CASM Coordinator if no confirm message is
       received.

5.2.2.3.  Address Pool Status Query

   When the status of CASM Coordinator is lost or the CASM Coordinator
   needs the status information of the DAs, the CASM Coordinator may
   actively query the TD for the status information, as shown in step 1
   of Figure 4.  The following steps 2,3,4,5 are the same as the Address
   Pool Status Report procedure.


        +--------------+                             +-----------------+
        |   Device     |                             |      CASM       |
        |   Agent      |                             |   Coordinator   |
        +------+-------+                             +--------+--------+
               |                                              |
               |                                              |
               |         1.Address Pool Status Query          |
               |<---------------------------------------------|
               |                                              |
      +--------+-------+                                      |
      |2.Monitor and   |                                      |
      |count the status|                                      |
      +--------+-------+                                      |
               |        3.Address Pool Status Report          |
               |--------------------------------------------->|
               |                                     +--------+-------+
               |                                     |  4. Record     |
               |                                     |   address pool |
               |                                     +--------+-------+
               |       5.Address Pool Report Confirm          |
               |<---------------------------------------------|
               |                                              |
               |                                              |



                    Figure 4: Address Pool Status Query

5.2.2.4.  Address Exhaustion

   When the addresses used by the DA reaches a certain usage threshold,
   the DA will renew the address pool request to the CASM Coordinator
   for an additional address pool.  The procedure is the same as the
   initial address pool request.



Li, et al.              Expires September 2, 2018              [Page 13]


Internet-Draft           Address Pool Management              March 2018


5.2.2.5.  Address Pool Release


        +--------------+                             +-----------------+
        |   Device     |                             |       CASM      |
        |   Agent      |                             |    Coordinator  |
        +------+-------+                             +--------+--------+
               |                                              |
      +--------+-------+                                      |
      |1.Address pools |                                      |
      |  not used      |                                      |
      |                |                                      |
      +--------+-------+                                      |
               |        2.Address Pool Release Request        |
               |--------------------------------------------->|
               |                                     +--------+-------+
               |                                     |3. Update       |
               |                                     |   address pool |
               |                                     |   database     |
               |                                     +--------+-------+
               |       4.Address Pool Release Notification    |
               |<---------------------------------------------|
      +--------+-------+                                      |
      |5. Reduce       |                                      |
      |  address pool  |                                      |
      +--------+-------+                                      |
               |         6.Address Pool Release Confirm       |
               |--------------------------------------------->|
               |                                              |
               |                                              |



                      Figure 5: Address Pool Release

   Figure 5 illustrates the address pool release procedure:

   1.  The counting module in the DA checks if the usage threshold of
       address pool reaches a certain condition;

   2.  The DA sends the address pool release request to the CASM
       Coordinator to ask the release of those addresses;

   3.  The CASM Coordinator updates the local address pool information
       to add the new addressed released;

   4.  The CASM Coordinator notifies the TD that the addresses have been
       release successfully;



Li, et al.              Expires September 2, 2018              [Page 14]


Internet-Draft           Address Pool Management              March 2018


   5.  The DA will update the local address pool.  If no Address Pool
       Release Notification is received, the DA will repeat step 2;

   6.  Optionally, the DA confirms with the CASM Coordinator that the
       address pool has been released successfully.

6.  Security Considerations

7.  Acknowledgements

   N/A.

8.  References

8.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

8.2.  Informative References

   [RFC6888]  Perreault, S., Ed., Yamagata, I., Miyakawa, S., Nakagawa,
              A., and H. Ashida, "Common Requirements for Carrier-Grade
              NATs (CGNs)", BCP 127, RFC 6888, DOI 10.17487/RFC6888,
              April 2013, <https://www.rfc-editor.org/info/rfc6888>.

Authors' Addresses

   Chen Li
   China Telecom
   No.118 Xizhimennei street, Xicheng District
   Beijing  100035
   P.R. China

   Email: lichen@ctbri.com.cn


   Chongfeng Xie
   China Telecom
   No.118 Xizhimennei street, Xicheng District
   Beijing  100035
   P.R. China

   Email: xiechf.bri@chinatelecom.cn





Li, et al.              Expires September 2, 2018              [Page 15]


Internet-Draft           Address Pool Management              March 2018


   Rakesh Kumar
   Juniper Networks
   1133 Innovation Way
   Sunnyvale  CA 94089
   US

   Email: rkkumar@juniper.net


   Anil Lohiya
   Juniper Networks
   1133 Innovation Way
   Sunnyvale  CA 94089
   US

   Email: alohiya@juniper.net


   Jun Bi
   Tsinghua University
   3-212, FIT Building, Tsinghua University, Haidian District
   Beijing  100084
   P.R. China

   Email: junbi@tsinghua.edu.cn


   Weiping Xu
   Huawei Technologies
   Bantian, Longgang District
   shenzhen  518129
   P.R. China

   Email: xuweiping@huawei.com

















Li, et al.              Expires September 2, 2018              [Page 16]