Network Working Group J. Dang
Internet-Draft B. Liu
Intended status: Standards Track Huawei Technologies
Expires: May 7, 2020 G. Yang
China Telecom
K. Lee
LG U+
November 4, 2019

Instant Congestion Assessment Network (iCAN) for Traffic Engineering
draft-liu-ican-01

Abstract

This draft proposes a new technology named iCAN (instant Congestion Assessment Network), which represents a set of mechanisms running directly on network nodes. These mechanisms allow the nodes adjusting the flows' paths based on real-time measurement of the candidate paths. The measurement is to reflect the congestion situation of each path, so that the nodes could decide which flows need to be switched from a path to another.

This is something that current TE technologies can hardly achieve. In current TE, the paths are usually planned in a certralized controller, which is far from the data plane, thus neither be able to assess the real-time congestion situation of each path, nor able to assure the data plane always go as expected (especially in SRv6 scenarios). In a result, traditional TE is not able to adjust the flow paths in real-time to fit for the change of traffic instantly.

iCAN can work with traditional TE perfectly: the controller plans multi-path transmission in relatively long period (e.g. minutes), and iCAN does the flow path optimization in a much shorter interval (e.g. milliseconds).

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 May 7, 2020.

Copyright Notice

Copyright (c) 2019 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 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

Traditional IP routing is shortest path based on static metrics, which can fulfil basic requirement of connectivity. MPLS-TE brings the capability of utilizing non-shortest paths, thus traffic dispatch is doable; however, MPLS-TE in only a complementary mechanism because of the scalability issue. Segment routing provides even more flexibility that paths could be easily programmed; and along with the controller, it could be scaled.

However, the above mentioned mechanisms all run in the control plane, which implies that they are not able to sense the data plane situation in real-time, thus they are mostly for relative static planning/controlling (minuets, hours or even day-level) of network traffic and not able to adapt to the microscopic traffic change in real-time (e.g. mili-second level). So, in real bearer networks (metro, backbones etc.), it is always underload so that the redundant resources could tolerant the traffic burst, results in a significant waste of network resources.

This draft proposes the iCAN (Instant Congestion Assessment Network) architecture to achieve autonomous adapt to traffic changes in real-time in terms of switching flows between multiple forwarding paths. iCAN includes following mechanisms:

Use cases, scenarios and implementation candidates of iCAN are also discussed in this draft.

2. Problem Statement

2.1. Background Problems

2.1.1. Latency issue

New services like AR/VR would require strictly low lantency which would be a big challenge to current network. Other than fixed lantency caused by the forwarding devices' internal processing and transmission time on wire, the prominent factor of lantency is the queuing time caused by congestion. Thus, to controll the latency of a certain path, is mostly to controll the congestion.

2.1.2. Microburst issue

The network users/services are so comprehensive that the traffic model is always uncertain, which results in high bandwidth peak-to-average ratio. In other words, real traffic could often changes dramatically in second or even millisecond level. Thus, even if the bandwidth of paths seem all good in a network management system, there might be congestion happening in real forwarding plane that just could not detected by the management system.

2.2. Gap Analysis

2.2.1. Load balancing

In real networks, the traffic is usually un-balanced. Some links might be idle while some might be heavily congested. The partial congestion in the network has affected the bandwidth planning of the network. Ideally, the bandwidth planning of the network generally depends on the average bandwidth of the link, however, in reality the bandwidth planning more tends to peak bandwidth of the link in order to guarantee the business experience. Especailly for low-latancy servie, since it is very sensitive to congestion, the result is that operators would have to increase investment for network expansion.

Although there are mechanisms against load balancing issue, the real result is usually not as expected.

- Device-level Load Balance (e.g. ECMP)

- Network-level load balance (e.g. UCMP)

2.2.2. SLA assurance

- QoS mechanism

2.2.3. High availability

Current networks highly relies BFD for high availability. The problems of BFD are:

3. iCAN Architecture and Key Technical Requirements

3.1. Architecture

                                                                          
                 +-----------+                                            
                 |           |                                            
                 | Controller|                                            
                 |           |                                            
                 +-----------+                                            
                       |                                                  
          0.Multi-path |                                                  
              Planning |                                                  
                       |                                                  
                       |                                                  
                       v                                                  
                 +-----------+  --------Path 1------------  +----------+  
 Imcoming Flows  |  Ingress  |3.Flow swithing between paths | Egress   |  
 --------------> |   Node    |  --------Path N------------  |  Node    |  
                 |           |     Intermediate Nodes       |          |  
                 +-/------\--+ <--------------------------> +----------+  
                  /        \   1.Path Quality Assessment                  
                 / 2. Flow  \ (simultaneusly on multiple paths)           
                /  recognition                                            
               /              \                                           
                                                                          

Figure-1: iCAN architecture

As above figure shows, there are 3 entities:

  1. Controller
    -
    Responsible for planning multiple paths for a set of flows that could be aggregated to a pair of Ingress/Egress routers.
    -
    After delivering the planned paths to the ingress router, the controller would need nothing to do.
  2. Ingress node:
    -
    Serves as a local "controller" for the iCAN system.
    -
    Responsible for triggering the path congestion assessment, which is coordinated with the egress router through a measurement protocol.
    -
    After getting the assessment results, the ingress router would calculate which flows need to be switched to a different path, in order to make the paths load balanced or to assure the transport quality of a certain of important flows.
    -
    In order to do the path switching calculation, the ingress router needs to recognize the TopN flow passing by it, since switching the big flows would make the most effort.
  3. Egress node:
    -
    Only needs to coordinate with the ingress router to do the path assessment.
  4. Intermediate nodes (optional)
    -
    If the intermediate nodes are allowed to participate in iCAN, they can provide useful information (e.g. link utilization) for better measurement of path quality. (TBD)

3.2. Key technical requirements

3.2.1. Path quality assessment

           +---------+            +----------+
           | Ingress |            |  Egress  |
           | Router  |            |  Router  |
 Delimiter +----+----+            +-----+----+
  Packet        |                       |
---------> XXXX | ^                     |
           .... | |                     |
           .... | |                     |
           .... | |ti                   |
           .... | |                     |
           .... | |                     |       Delimiter
---------> XXXX | V                     |        Packet
 Delimiter      |                     ^ | XXXX <---------
  Packet        |                     | | ....
                |                     | | ....
                |                   ti| |
                |                     | | ....
                |                     | |
                |                     V | ....  Delimiter
                |                       | ....   Packet
                |                       | XXXX <---------

Candidate solutions:

Figure-2 Path congestion assesment between ingress/egress routes

        | <----------> | <----------> | <----------> |
        |      Ti      |      Ti      |      Ti      |
 Path1  | m1        m2 |    m3        | m4     m5    |       m6
---------------------------------------------------------------
        |              |              |              |
 Path2  |          m1  |    m2       m3      m4      |   m5
--------------------------------------+------------------------
        |              |              |              |
 Path3  | m1     m2    m3         m4  |    m5        | m6
-----------------------+---------------------------------------

Figure-3 Multiple path measurement allignment

As the figure shows above, m1-mN indicates every measurent made on each path, as every "ti" interval, the egress would return the packet count to the ingress router for path congestion degree measurement (as described above). Due to path congestion, the packets sent by the egress router would arrive at the ingress router at different intervals other than "ti" time. Thus, for path congestion degree comparison between multipla paths, it needs a longer "Ti" interval (e.g. 10ms) to make sure that there would be at least one measurement completed most of the time.

3.2.2. Recognition and statistic of flows in devices

3.2.3. Flow switching between paths

4. Use Cases and Scenarios

4.1. Network load balancing

Background problem: traffic is not balanced in current metro network.

While some links are heavily loaded, others might be still lightly loaded: unbalance could lows down the service quality (e.g. SLA could not be guaranteed in the heavily loaded links/paths); unbalance could lows down the network utilization ratio (normally with 30%, e.g. a 100G physical capacity network can only bear at most 30G traffic, a huge waste of network infrastructure).

iCAN could be used for load balance among the multiple paths between a pair of ingress/egress nodes. Once the network is balanced, the real throughput of the network could be elevated significantly. A couple of targeted scenarios are described below.

4.1.1. Multiple-access in backbone networks

+--------------------------------------------------------------------+
|  +-----------------+  +-----------------+     +-----------------+  |
|  | Interconnection |  | Interconnection |     | Interconnection |  |
|  | in City 1 Core  |  | in City 2 Core  | ... | in City n Core  |  |
|  +--------+--------+  +--------+--------+     +--------+--------+  |
|           |                    |                       |           |
|     +-----+-----+        +-----+-----+           +-----+-----+     |
|     | Terminal  |        | Terminal  |           | Terminal  |     |
|     | in City 1 |        | in City 2 |           | in City n |     |
|     +---+-\-----\        +---+-------\           /----/+-----+     |
+---------|---\-----\-----/----|---------\---/--------/--|-----------+
          |     \      \/      |         / \        /    | 
          |       \   /   \    |   /         \   /       | 
          |        /         / |               /         |
          |     /    \  /      | \          /    \       | 
          |  /     /   \       |       \ /         \     |
   +------|/---/-+     +-\-----|------/+     \  +----\---|-------+
   |   +--/--/   |     |    \--+--/    |        |  \  +\-+--+    |
   |   | AP1 |   |     |    | AP2 |    |        |     | APn |    |
   |   +--+--+   |     |    +--+--+    |        |     +--+--+    |
   |      |      |     |       |       | ...... |        |       |
   |    Metro    |     |DC Campus/Metro|        |   IDC Region   |
   |  Networks   |     |   Networks    |        |    Networks    |
   +-------------+     +---------------+        +----------------+

Figure-4: Multiple-access in backbone networks

Between APs and TPs, BGP is running for traffic routing. The BGP policies are always static, since it is very error-prone for manully adjusting BGP policies. Thus, the traffic running among the paths between APs and TPs are always un-balanced. With iCAN runs as on top of the mesh tunnels, the un-balanced issue could be solved in principle.

4.1.2. Multiple paths in metro network

Similar as the iCAN architecture showed as Figure-1, in metro networks, there might be multiple paths between ingress/egress router pairs. Thus, iCAN could be used to increase the throughput without hardware expansion.

4.2. SLA assurance

Since iCAN could switch flow in real-time, it can guarantee a set of important flows. Once the path which carries the important flows is to be congested, the other flows could be switched to alternative paths, and the important flows would stablely running in the original path.

(More content TBD)

4.3. Fine-Granularity reliability

Traditional reliability protocols such as BFD, can only assess the link on or off. With the path congestion assessment ability, iCAN could also asses the quality degradation.

(More content TBD)

5. Implementation with Underlay Technologies

5.1. iCAN with SRv6

-
SR Multiple Explicit Paths
For example, there are 3 paths between the ingress and egress nodes, and the multi-path is defined as a SR-List containing LSP1/2/3.
The probe message detects the congestion status of the three SR-list paths. The edge device adjusts the load balancing between the three paths according to the congestion status of the three SR-lists, and switch the flows from the path with a high congestion to the path with a low congestion.
-
SR Multiple Explicit+Loose Paths
In loose path scenario, there needs to be an additional approach to probe the specific paths of a SR tunnel. After that, operations on the probed paths are the same as explicit path scenario.

5.2. iCAN with VxLAN

TBD.

5.3. iCAN with MPLS/MPLS-TE

TBD.

6. Standardization Requirements

  1. Multi-path Planning (North Interface between Controller and devices)
  2. Path Congestion Assesment (Horizontal Interface between devices), mostly regarding to Req-1&2&3 described in Section 3.2.1 .
  3. Flow Switching Negotiation (Horizontal Interface between devices), mostly regarding to Req-3&4 described in Section 3.2.3 .

(More content TBD.)

7. Security Considerations

TBD.

8. IANA Considerations

TBD.

9. Acknowledgements

Very valuable comments were from Shunsuke Homma, Mikael Abrahamsson and Bruno Decraene.

A commercial router hardware based prototype had been implemented to prove the machinisms discussed in the document are workable.

Conventions: [RFC2119][RFC2629]

10. References

10.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.
[RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, DOI 10.17487/RFC2629, June 1999.

10.2. Informative References

[I-D.dang-ippm-congestion] Dang, J. and J. Wang, "A One-Path Congestion Metric for IPPM", Internet-Draft draft-dang-ippm-congestion-01, March 2019.
[I-D.dang-ippm-multiple-path-measurement] Dang, J. and J. Wang, "A Multi-Path Concurrent Measurement Protocol for IPPM", Internet-Draft draft-dang-ippm-multiple-path-measurement-01, March 2019.

Authors' Addresses

Joanna Dang Huawei Technologies Q27, Huawei Campus No.156 Beiqing Road Beijing, 100095 P.R. China EMail: dangjuanna@huawei.com
Bing Liu Huawei Technologies Q27, Huawei Campus No.156 Beiqing Road Hai-Dian District, Beijing, 100095 P.R. China EMail: leo.liubing@huawei.com
Guangming Yang China Telecom 109 Zhongshan W Ave Guangzhou, 510630 P.R. China EMail: yangguangm@chinatelecom.cn
Kyungtae Lee LG U+ 71, Magokjungang 8-ro, Gangseo-gu Seoul, Republic of Korea EMail: coolee@lguplus.co.kr