<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE rfc [
<!ENTITY nbsp "&#160;">
<!ENTITY zwsp "&#8203;">
<!ENTITY nbhy "&#8209;">
<!ENTITY wj "&#8288;">
]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<?rfc toc="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc iprnotified="no"?>
<?rfc strict="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-liu-opsawg-ipfix-bgp-pov-00" ipr="trust200902" submissionType="IETF" obsoletes="" updates="" xml:lang="en" tocInclude="true" symRefs="true" sortRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.22.0 -->
  <front>
    <title abbrev="IPFIX BGP Prefix Origin Validation">Export of BGP Prefix Origin Validation in IP Flow Information Export (IPFIX)</title>
    <seriesInfo name="Internet-Draft" value="draft-liu-opsawg-ipfix-bgp-pov-00"/>
    <author fullname="Yisong Liu" initials="Y." surname="Liu">
      <organization>China Mobile</organization>
      <address>
	     <postal>
          <country>China</country>
         </postal>
        <email>liuyisong@chinamobile.com</email>
      </address>
    </author>
    <author fullname="Xueyan Song" initials="X." surname="Song">
      <organization>ZTE Corporation</organization>
      <address>
	     <postal>
          <country>China</country>
         </postal>
        <email>song.xueyan2@zte.com.cn</email>
      </address>
    </author>
    <author fullname="Taoran Zhou" initials="T." surname="Zhou">
      <organization>ZTE Corporation</organization>
      <address>
	     <postal>
          <country>China</country>
         </postal>
        <email>zhou.taoran@zte.com.cn</email>
      </address>
    </author>
    <date/>
    <workgroup>OPSAWG</workgroup>
    <keyword>BGP</keyword>
	<keyword>Prefix Origin Validation</keyword>
    <keyword>RPKI</keyword>
    <!-- Keywords will be incorporated into HTML output
        files in a meta tag but they have no effect on text or nroff
        output. If you submit your draft to the RFC Editor, the
        keywords will be used for the search engine. -->

  <abstract>
      <t>
	   This document defines an IP Flow Information Export (IPFIX) Information Element for monitoring the state of Resource Public Key 
	   Infrastructure (RPKI) based BGP Prefix Origin Validation. The Information Element enables network operators to collect and analyze 
	   BGP route validation states (valid, invalid, not-found) to facilitate the detection of potential route hijacks improving network 
	   observability and security.
      </t>
    </abstract>
	
  </front>
      <!-- end of abstract -->	
	  
  <middle>
    <section anchor="sec_intro" numbered="true" toc="default">
      <name>Introduction</name>
	 <t>
    The RPKI <xref target="RFC6480"/> provides a cryptographic framework for validating the association between IP address blocks and Autonomous 
	System (AS) numbers. BGP Prefix Origin Validation, as defined in <xref target="RFC6811"/>, enables routers to verify whether the origin AS of 
	a BGP route announcement is authorized to advertise the corresponding IP prefix, based on Route Origin Authorizations (ROAs) <xref target="RFC9582"/> in the RPKI.	 
	 </t>
	 <t>
	 When BGP Prefix Origin Validation is enabled on a router, the router maintains a local cache of Validated ROA Payloads (VRPs) obtained 
	 through the RPKI-to-Router protocol (RTR) <xref target="RFC8210"/>. For each received BGP UPDATE message, the router extracts the announced IP prefix 
	 and its origin AS, compares this tuple against the local VRP cache, and assigns a validation state (valid, invalid, not-found) according 
	 to the algorithm specified in <xref target="RFC6811"/>. This validation state can be attached as a local path attribute to the BGP route entry 
	 and influence subsequent routing decisions, such as route filtering and route preference adjustment.
	 </t>
	 <t>
	 While this validation mechanism enhances BGP security, network operators currently lack standardized methods to monitor the validation states 
	 across their network infrastructure. IP Flow Information Export (IPFIX) <xref target="RFC7011"/> provides a standard protocol for exporting 
	 flow information from network devices. There is an existing IPFIX Information Element bgpValidityState (Element ID 294, see IANA-IPFIX), which defines the 
	 "validity state" of the BGP route correspondent source or destination IP address. This element does not specifically address RPKI-based origin validation.
	 </t>
     <t>
	 This document defines a new IPFIX Information Element specifically designed for monitoring the state of RPKI-based BGP Prefix Origin Validation. 
	 The element enables network operators to collect, analyze, and monitor the validation states of BGP routes across their network infrastructure.
     </t>
	</section>
    <!-- end of introduction -->
	

<section numbered="true" toc="default">
      <name>Terminology</name>
      <section numbered="true" toc="default">
        <name>Terms Used in This Document</name>
        <t>
        This document uses the following terms defined in <xref target="RFC6811"/>.
        </t>
        <t>
		Validated ROA Payload (VRP): A locally stored object which contains the content (IP address, prefix length, maximum length, origin AS number).</t>
        <t>
		Prefix: (IP address, prefix length), interpreted as is customary (see <xref target="RFC4632"/>).
		</t>
        <t>
		Route: Data derived from a received BGP UPDATE, as defined in <xref target="RFC4271"/>.
		</t>	
        <t>Additionally, this document uses the terms defined in <xref target="RFC7011"/>.</t>	  
        <t>
		Observation Point: An Observation Point is a location in the network where packets can be observed. Examples include a line to which a probe is attached;
		a shared medium, such as an Ethernet-based LAN; a single port of a router; or a set of interfaces (physical or logical) of a router.
		</t>		  
		<t>
		Exporter: A device that hosts one or more Exporting Processes is termed an Exporter.
		</t>	
		<t>
		IPFIX Device: An IPFIX Device hosts at least one Exporting Process. It may host further Exporting Processes as well as arbitrary numbers of Observation 
		Points and Metering Processes.
		</t>
		<t>
		Information Element: An Information Element is a protocol and encoding independent description of an attribute that may appear in an IPFIX Record. 
		Information Elements are defined in the IANA "IPFIX Information Elements" registry (see IANA-IPFIX). The type associated with an Information Element indicates 
		constraints on what it may contain and also determines the valid encoding mechanisms for use in IPFIX.
		</t>	
		<t>
		Exporting Process: The Exporting Process sends IPFIX Messages to one or more Collecting Processes. The Flow Records in the Messages are generated by one 
		or more Metering Processes.
		</t>
		<t>
		Collecting Process: A Collecting Process receives IPFIX Messages from one or more Exporting Processes. The Collecting Process might process or store Flow 
		Records received within these Messages, but such actions are out of scope for this document.
		</t>
	  
      </section>
	  
      <section numbered="true" toc="default">
        <name>Requirements Language</name>
        <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" format="default"/> <xref target="RFC8174" format="default"/> when, and only when, they appear in all capitals, as shown here.
        </t>
      </section>
    </section>
    <!-- end of terminology -->

<!-- ===================================================================== -->

<section anchor="IPFIX-BGP-POV" numbered="true" toc="default">
      <name>IPFIX IEs for BGP Prefix Origin Validation</name>	    
		<t> This section defines a new IPFIX Information Element for monitoring RPKI-based BGP Prefix Origin Validation.</t>
		<section numbered="true" toc="default">
            <name>bgpPrefixOriginValidationState</name>

         <dl newline="false" indent="3" spacing="normal" >
          <dt>Name:</dt>
          <dd>
            <t>bgpPrefixOriginValidationState</t>
          </dd>
          <dt>ElementID:</dt>
          <dd >
            <t>TBD1</t>
          </dd>
          <dt>Description:</dt>
          <dd>
		  <t indent="0"> It indicates the validation state of a BGP route prefix and its origin ASN as determined by BGP Prefix Origin Validation as defined in <xref target="RFC6811" format="default"/>.</t>
		  <t indent="0"> This element describes the result of comparing a BGP route prefix derived from a BGP UPDATE message against VRP obtained from RPKI server. The validation algorithm follows RFC6811.</t>
          <t indent="0"> The state of BGP Prefix Origin Validation is encoded in a single octet, where only the two latest significant bits (bits 0 and 1) are used. The four possible state are:</t>
          <t indent="0"> 00: BGP Prefix Origin Validation is not enabled on the exporting device for this prefix. This indicates the administrative state where validation is inactive (e.g., not configured).</t>
		  <t indent="0"> 01: The validation state for the route prefix is valid. The state means at least one VRP matches the route prefix.</t>
		  <t indent="0"> 10: The validation state for the route prefix is invalid. The state means at least one VRP covers the route prefix, but no VRP matches it.</t> 
		  <t indent="0"> 11: The validation state for the route prefix is not found. This state means no VRP covers the route prefix.</t>
		  <t indent="0"> Bits 2 to 7 are reserved. The Exporting Process MUST set these bits to zero. The Collecting Process MUST ignore them.</t> 
		  </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t indent="0" >unsigned8</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd >
            <t indent="0">identifier</t>
          </dd>
		  <dt>Additional Information:</dt>
          <dd>
            <t indent="0"> See <xref target="RFC6811" format="default"/> the definition of validation state of BGP route prefix.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t indent="0" ><xref target="RFC6811" format="default"/>, this document.</t>
          </dd>
        </dl>				
			
      </section>			
	</section>					
			

    <!-- end of IPFIX IEs -->

<!-- ===================================================================== -->

<section numbered="true" toc="default">
      <name>Operational Considerations </name>
	   <t>
       The Observation Point <xref target="RFC7011"/> for monitoring BGP Prefix Origin Validation states is typically the router performing the validation. 
	   The router acting as an IPFIX Exporter is expected to have BGP Prefix Origin Validation enabled and properly configured. This includes establishing RTR sessions 
	   with RPKI cache servers and ensuring the local VRP cache is synchronized.
	   </t>
	   <t>
	   When network operators design a template for IPFIX export of BGP Prefix Origin Validation information export, which should combine with other context informations, 
	   such as sourceIPv4Prefix/sourceIPv6Prefix, sourceIPv4PrefixLength/sourceIPv6PrefixLength, bgpSourceAsNumber, as defined in <xref target="RFC7012"/>.
	   </t>
	   <t>
       In scenarios of network changes or maintenance, frequent export of IPFIX records for BGP validation states may lead to considerable overhead on router resources 
	   and bandwidth. Operators should balance monitoring needs with performance impact by using thresholds, adjusted export intervals, or focused sampling, such as 
	   prioritizing invalid states, refer to <xref target="RFC5475"/> for sampling and filtering strategies. 
	   </t>

    </section>
    <!-- end of operation -->

<!-- ===================================================================== -->
	   
<section numbered="true" toc="default">
      <name>Security Considerations </name>
        <t>
       The security considerations for IPFIX in general discussed in <xref target="RFC7011"/>, and those for RPKI and BGP Prefix Origin Validation discussed 
	   in <xref target="RFC6811"/> apply to this document.	   
       </t>
       <t>
	   The IPFIX data records containing BGP Prefix Origin Validation state SHOULD be transported using security protocols (such as TLS, DTLS) and satisfy the mutual 
	   authentication between IPFIX Exporting Processes and IPFIX Collecting Processes as specified in <xref target="RFC7011"/>. An implementation may use 
	   BGP Prefix Origin Validation state as the information input for network routing policies. Network operators should ensure that the data collection and storage of 
	   BGP Prefix Origin Validation state comply with applicable privacy regulations.
	   </t>

    </section>
    <!-- end of security -->

<!-- ===================================================================== --> 
	   
<section numbered="true" toc="default">
      <name>IANA Considerations </name>
       <t>
       IANA is requested to assign a new Information Element ID in the IPFIX Information Elements registry.
       </t>
	   <t>
       Information Element bgpPrefixOriginValidationState with Element ID TBD1.
	   </t>
    </section>
    <!-- end of IANA -->

<!-- ===================================================================== --> 


  </middle>  
    <!-- end of middle -->	  
	
  <back>
  <references>
     <name>References</name>	  
	  <references>
      <name>Normative References</name>	  
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7011.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6811.xml"/>
	  </references>
	  <references>
      <name>Informative References</name>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4632.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4271.xml"/>	
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7012.xml"/>
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5475.xml"/>	
        <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6480.xml"/>	
		<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9582.xml"/>	
		<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8210.xml"/>
	  </references>		
  </references>
  </back>
    <!-- end of middle -->	 
	
  </rfc>
