<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc category="info" docName="draft-hwyh-ippm-ps-inband-flow-learning-03"
     ipr="trust200902">
  <front>
    <title abbrev="Inband Flow Learning">Problem Statement and Requirement for
    Inband Flow Learning</title>

    <author fullname="Liuyan Han" initials="L." surname="Han">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street/>

          <city>Beijing</city>


          <code/>

          <country>China</country>
        </postal>

        <email>hanliuyan@chinamobile.com</email>
      </address>
    </author>

    <author fullname="Minxue Wang" initials="M." surname="Wang">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street/>

          <city>Beijing</city>

          <country>China</country>
        </postal>

        <email>wangminxue@chinamobile.com</email>
      </address>
    </author>

    <author fullname="Xuanxuan Wang" initials="X." surname="Wang">
      <organization>Huawei Technologies</organization>

      <address>
        <postal>
          <street/>

          <city>Beijing</city>

          <country>China</country>
        </postal>

        <email>wxxuan@huawei.com</email>
      </address>
    </author>

    <author fullname="Jinming Huang" initials="J." surname="Huang">
      <organization>Huawei Technologies</organization>

      <address>
        <postal>
          <street/>

          <city>Dongguan</city>

          <country>China</country>
        </postal>

        <email>zhangshengli4@huawei.com</email>
      </address>
    </author>

    <date day="27" month="July" year="2023"/>

    <workgroup>IPPM Working Group</workgroup>

    <abstract>
      <t>On-path telemetry techniques can provide high-precision inband flow insight and real-time network performance monitoring. Although they are benefical, network operators still face challenges applying such techniques, especially flow identification when deploying flow-oriented monitoring on a large scale. This document introduces the real network scenarios, and intends to address the problems by proposing the requirements of inband flow learning mechenism that can be used to implement inband flow information telemetry for deployability and flexibility.</t>
    </abstract>

    <note title="Requirements Language">
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
      "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
      "OPTIONAL" in this document are to be interpreted as described in BCP 14
      <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when,
      they appear in all capitals, as shown here.</t>
    </note>
  </front>

  <middle>
    <section title="Introduction">
      <t>On-path telemetry techniques can provide high-precision inband flow insight and real-time network performance monitoring (e.g., jitter, latency, packet loss) by embedding instructions or metadata into user packets. IOAM <xref target="RFC9197"/> and Alternate-Marking <xref target="RFC9341"/> are such techniques, and <xref target="RFC9197"/> <xref target="RFC9326"/> <xref target="RFC9343"/> <xref target="I-D.ietf-mpls-inband-pm-encapsulation"/> provide the encapsulations for different applications. By applying these techniques per-flow SLA compliance monitoring becomes available and benefical for network operators, but there are still challenges as described in <xref target="I-D.song-opsawg-ifit-framework"/>. Especially when deploying flow-oriented monitoring on a large scale, the traditional static configuration mode is no longer applicable.</t>

      <t>Per-flow monitoring can be applied using network management tools, such as Netconf YANG, to deliver the characteristics of specified flows. Then network nodes can identify, match and monitor the flows based on the characteristics. However, even though Netconf YANG can provide feasibility to network operators, some problems or inconveniences may occur during the deployment. For example, the characteristic of a flow (e.g. IP 5-tupe) can vary dynamically and mislead the service flow identification, or the monitored flow needs to be reconfigured for the changes of the path. So inband flow identification becomes a challenge in large scale deployment to network operators. This document introduces the real network scenarios, and intends to address the problems by proposing the requirements of inband flow learning mechanism that can be used to implement inband flow information telemetry for deployability and flexibility. A proposed framework for inband flow learning mechanism is described in <xref target="I-D.hwy-opsawg-ifl-framework"/>, which is out of scope of this document.</t>
    </section>

    <section title="Terminology">
      <t>OAM: Operations, Administration, and Maintenance</t>

      <t>SLA: Service Level Agreement</t>

      <t>NFV: Network Function Virtualization</t>

      <t>UNI: User-Network-Interface</t>

      <t>CN: Core Network</t>
    </section>

    <section title="Problem Statement">
      <t>The following sections describe scenarios that may occur in real network that make it difficult to deploy flow-oriented monitoring quickly and effectively at a large scale.</t>    
    
      <section title="Frequent and Dynamic Change of Flows">
        <t>In 4G/5G mobile backhaul networks, IP address of one service can be
        changed based on location, time or even with business growth. The
        following scenarios describes the challenges which 4G/5G mobile
        service encounters.</t>

        <section title="Tidal Effect">
          <t>A Tidal Effect phenomenon has been recognized as traffics between
          base station and Core Network (CN) show repetitive patterns with
          spatio-temporal variations. A typical example of Tidal phenomenon is
          the traffic difference happened in day and night time of a
          commercial and business area. In day time, eNodeB allocates more
          core network resources when a large number of user equipment
          accesses eNodeB, and less resources at night accordingly. The change
          of the number of UEs and the core network resources may affect the
          change on source and destination IP address of service flows.</t>

          <t>Moreover, NFV used in core network makes the traffic change even
          worse as the IP address at CN cannot be manually configured or even
          predicted. In this case, it is impossible for operators to
          statically deploy flow monitoring and statistics telemetry.</t>
        </section>

        <section title="UPF Expansion">
          <t>In 5G deployment, the increase of number of subscribers triggers
          the expansion of UPF resources on data plane of 5G core network.
          After new UPF resource is added, eNodeB sets up a connection to the
          new UPF. Correspondingly, a new IP flow is created in mobile bearer
          network. In this scenario, if flow monitoring and statistics
          telemetry is deployed in a static mode, operators would need to
          manually add related configurations to mobile bearer network after
          the core network capacity is expanded, which is very difficult to
          deploy in practice.</t>
        </section>
      </section>

      <section title="Enterprise Service Demand">
        <t>The enterprise services usually connect different private networks
        between Headquarter and Branches, Branches and Branches. Network
        operator has very limited or even no information about end users.
        Besides, information from one site could be changed from time to time.
        Unpredictable information on enterprise customer side makes impossible
        for network operators to set up real time flow monitoring, and to
        avoid the omission of flow monitoring.</t>
      </section>

      <section title="Large Scale Network Monitor Deployment and Maintenance ">
        <t>In a large-scale mobile bearer network, a large number of base
        stations and corresponding access points may lead to a large number of
        IP addresses in core network. From network maintenance perspective,
        when flow monitoring and statistics telemetry is deployed in a static
        mode, network operator had to manually set up each monitoring instance
        between base station and core network, then separately delegate
        configurations to a large number of network entities. It is difficult
        for network operators to find an effective way of monitoring creation
        and maintenance.</t>

        <t>Note that traffic monitoring is comprised of uplink and downlink
        directions, which makes twice of workload on configurations.</t>
      </section>

      <section title="Service Flow Path Change">
        <t>When a hop-by-hop flow monitoring is required by critical traffic
        for deep SLA investigation, the actual forwarding path of service flow
        and the every forwarding nodes along the path are obtained. Network
        operator delegates different configurations to each node including
        ingress, transit, and egress nodes on the path.</t>

        <t>Once the traffic forwarding path is changed because of service flow
        switching or route convergence, the monitoring instance on each node
        needs to be re-deployed on the new path. In this situation, a flexible
        and efficient deployment approach is required by network
        operators.</t>
      </section>
    </section>

    <section title="Requirement">
      <t>To face the flow deployment challenges mentioned in preceding
      section, an approach of inband flow learning is required. It should
      simplify the deployment of flow monitoring and achieve an automatic mode
      of telemetry in large scale networks.</t>

      <section title="Ingress Flow Learning ">
        <t>On the UNI side of network node, ingress flow learning can help to
        capture the characteristic data fields of packet and create the
        monitoring instance when the flow is created from base station.
        Flexible policy based on access control list (ACL) can facilitate the
        identification of flow characteristic. For example, IP 2-tuple
        (DIP+SIP), DSCP value, etc.</t>
      </section>

      <section title="Egress Flow Learning ">
        <t>Similar to the requirement on ingress node, traffic egress node
        should support the same capability of inband flow learning to create
        traffic monitoring instance for completing a monitor. When the egress
        node or egress port of a service flow is changed, the egress node or
        egress port of service flow can be triggered to re-learn and
        re-monitor the service flow.</t>
      </section>

      <section title="Hop-by-Hop Flow Learning">
        <t>When hop-by-hop flow monitoring and telemetry is required, the flow
        learning and monitor deployment should be created on all the ingress,
        transit, and egress nodes that service flows pass through. When the
        path of a service flow changes due to the service switching or network
        convergence, the service flow re-triggers the flow learning on the new
        path and starts the new monitoring of service flow.</t>
      </section>

      <section title="Auto Flow Aging">
        <t>In all the inband flow learning scenarios described above, when the
        path of a service flow changes, the flow learning on new path is
        triggered and new monitoring instances are created on devices.
        Regarding the monitoring instances that have been created before the
        path change, if there is no traffic detected within a certain period
        of time, automatic aging and resource recycle should be supported.</t>
      </section>

      <section title="Flow Learning Policy">
        <t>It is valuable to specify the flow learning policy on equipment
        when thousands or millions of flows are transmitted. Flow learning
        policy specifies the metrics and explicit rules executed on equipment,
        for example the flow is filtered based on a particular range of
        protocol number. Centralized controller specifies the flow learning
        policy via management and control plane to equipment, then data plane
        executes the policies to generate monitoring instance. </t>

        <t/>
      </section>
    </section>

    <section title="IANA Considerations">
      <t>This document has no request to IANA</t>
    </section>

    <section title="Security Considerations">
      <t>TBD</t>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <?rfc include="reference.RFC.2119"
?>

      <?rfc include="reference.RFC.8174"
?>

      <?rfc ?>
    </references>

    <references title="Informative References">
      <?rfc include='reference.RFC.9197'?>
      
      <?rfc include='reference.RFC.9341'?>
      
      <?rfc include='reference.RFC.9326'?>
      
      <?rfc include='reference.RFC.9343'?>

      <?rfc include='reference.I-D.ietf-mpls-inband-pm-encapsulation'?>

      <?rfc include='reference.I-D.song-opsawg-ifit-framework'?>
      
      <?rfc include='reference.I-D.hwy-opsawg-ifl-framework'?>

      <?rfc ?>

      <?rfc ?>
    </references>
  </back>
</rfc>
