<?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" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.43 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-cao-savnet-ipfix-sav-00" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="SAV IPFIX">Export of Source Address Validation (SAV) Information in IPFIX</title>
    <seriesInfo name="Internet-Draft" value="draft-cao-savnet-ipfix-sav-00"/>
    <author initials="Q." surname="Cao" fullname="Qian Cao">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>caoqian@zgclab.edu.cn</email>
      </address>
    </author>
    <author initials="M." surname="Huang" fullname="Mingqing Huang">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>huangmq@mail.zgclab.edu.cn</email>
      </address>
    </author>
    <author initials="B." surname="Claise" fullname="Benoit Claise">
      <organization>Everything OPS</organization>
      <address>
        <postal>
          <country>Belgium</country>
        </postal>
        <email>benoit@everything-ops.net</email>
      </address>
    </author>
    <author initials="T." surname="Zhou" fullname="Tianran Zhou">
      <organization>Huawei</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>zhoutianran@huawei.com</email>
      </address>
    </author>
    <date year="2026" month="September" day="17"/>
    <area>Routing</area>
    <workgroup>savnet</workgroup>
    <keyword>IPFIX, Source Address Validation (SAV)</keyword>
    <abstract>
      <?line 67?>

<t>This document specifies the IP Flow Information Export Information Elements to export the context and outcome of Source Address Validation enforcement data. These SAV-specific Information Elements provide detailed insight into why packets are identified as spoofed by capturing the specific SAV rules that triggered validation decisions. This operational visibility is essential for network operators to observe SAV enforcement behavior and analyze source address spoofing events detected by SAV.</t>
    </abstract>
  </front>
  <middle>
    <?line 70?>

<section anchor="sec-intro">
      <name>Introduction</name>
      <t>Source Address Validation (SAV) serves as a fundamental defense mechanism against IP source address spoofing. Despite its critical role in network security, current SAV implementations lack operational visibility, making it difficult to answer essential operational questions:</t>
      <ul spacing="normal">
        <li>
          <t>How many packets are identified as spoofed and dropped by SAV?</t>
        </li>
        <li>
          <t>Which interfaces receive spoofed packets and which source prefixes are targeted?</t>
        </li>
        <li>
          <t>Which specific SAV rules trigger the enforcement actions?</t>
        </li>
        <li>
          <t>Are SAV rules functioning as intended or potentially misconfigured?</t>
        </li>
      </ul>
      <t>This document introduces a set of SAV-specific IP Flow Information Export (IPFIX) Information Elements (IEs) that enable detailed reporting of Source Address Validation enforcement actions. These elements align with the SAV concepts and operational models defined in <xref target="I-D.ietf-savnet-general-sav-capabilities"/>, and provide traffic observations that can be operationally correlated with the SAV configuration and state information available via the YANG data model <xref target="I-D.li-savnet-sav-yang"/>.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</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"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here.</t>
      <t>This document makes use of the terms defined in <xref target="RFC7011"/>, and <xref target="I-D.ietf-savnet-general-sav-capabilities"/>.</t>
      <t>The following terms are used as defined in <xref target="RFC7011"/>:</t>
      <ul spacing="normal">
        <li>
          <t>IPFIX</t>
        </li>
        <li>
          <t>IPFIX Information Elements</t>
        </li>
        <li>
          <t>Template</t>
        </li>
        <li>
          <t>Template Record</t>
        </li>
        <li>
          <t>Data Record</t>
        </li>
        <li>
          <t>Data Set</t>
        </li>
        <li>
          <t>Exporter</t>
        </li>
        <li>
          <t>Collector</t>
        </li>
      </ul>
      <t>The following terms are used as defined in <xref target="I-D.ietf-savnet-general-sav-capabilities"/>.</t>
      <ul spacing="normal">
        <li>
          <t>SAV rule</t>
        </li>
        <li>
          <t>Validation mode</t>
        </li>
      </ul>
    </section>
    <section anchor="sec-sav-overview">
      <name>SAV Overview and IPFIX Export Requirements</name>
      <t>This section outlines the operational requirements for SAV telemetry export using IPFIX, based on the generalized SAV architectural framework defined in <xref target="I-D.ietf-savnet-general-sav-capabilities"/>.</t>
      <t>The SAV framework establishes four canonical validation modes that model validation policies:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Interface-based prefix allowlist (Mode 1):</strong> Validates that a source prefix is explicitly permitted on the incoming interface.</t>
        </li>
        <li>
          <t><strong>Interface-based prefix blocklist (Mode 2):</strong> Validates that a source prefix is not explicitly blocked on the incoming interface.</t>
        </li>
        <li>
          <t><strong>Prefix-based interface allowlist (Mode 3):</strong> Validates that a packet is received on an interface explicitly permitted for its source prefix.</t>
        </li>
        <li>
          <t><strong>Prefix-based interface blocklist (Mode 4):</strong> Validates that a packet is not received on an interface explicitly blocked for its source prefix.</t>
        </li>
      </ul>
      <t>These modes can be applied independently or in combination on a router, following a defined validation procedure (Section 2 of <xref target="I-D.ietf-savnet-general-sav-capabilities"/>). Furthermore, when identifying a packet as spoofed, a range of traffic handling policies (e.g. discard, rate-limit, redirect) can be applied.</t>
      <t>However, the generalized SAV model requires corresponding operational visibility capabilities. Without integrated telemetry, operators face significant challenges in:</t>
      <ul spacing="normal">
        <li>
          <t>Enforcement Visibility: Observing SAV enforcement actions and identifying which rules were triggered.</t>
        </li>
        <li>
          <t>Operational Analysis: Understanding the context of SAV decisions and troubleshooting unexpected enforcement behavior.</t>
        </li>
        <li>
          <t>Threat Intelligence: Analyzing traffic patterns identified as spoofed by SAV.</t>
        </li>
      </ul>
      <t>To address these limitations, IPFIX <xref target="RFC7011"/> and <xref target="RFC7012"/> provide a vendor-neutral protocol for SAV telemetry. The exported data must provide insight into:</t>
      <ul spacing="normal">
        <li>
          <t>The validation outcome and specific reason for the decision</t>
        </li>
        <li>
          <t>The identity and type of SAV rule or rule set that influenced the decision</t>
        </li>
        <li>
          <t>The configured rule content that was evaluated during validation</t>
        </li>
        <li>
          <t>The enforcement action applied to spoofed packets</t>
        </li>
      </ul>
      <t>The following section defines the IPFIX IEs that meet these requirements.</t>
    </section>
    <section anchor="sec-IEs">
      <name>IPFIX SAV Information Elements</name>
      <t>This section defines the IEs used for SAV telemetry. These IEs have been specified in accordance with the guidelines in <xref target="RFC7013"/>.</t>
      <section anchor="design-rationale">
        <name>Design Rationale</name>
        <t>The SAV IPFIX IEs are designed to provide detailed visibility into SAV enforcement actions, enabling network operators and automation systems to monitor and troubleshoot SAV operations effectively. The design follows these principles:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Scope</strong>. The SAV-specific IEs are used to report the outcome and context of SAV processing for data plane traffic observations. Interface, device or network-level SAV configuration is out of scope for these IEs and is covered by the SAVNET YANG data model.</t>
          </li>
          <li>
            <t><strong>Conceptual Alignment</strong>. The elements align with the validation modes and rule types defined in <xref target="I-D.ietf-savnet-general-sav-capabilities"/>, ensuring consistency with the architectural SAV concepts.</t>
          </li>
          <li>
            <t><strong>Semantic Correlation</strong>. The IPFIX encoding preserves the semantic relationships defined in <xref target="I-D.li-savnet-sav-yang"/>, which enables correlation between IPFIX Data Records in the data plane and YANG configuration/state data in the control plane, facilitating comprehensive analysis.</t>
          </li>
          <li>
            <t><strong>Structured Encoding</strong>. The <tt>savMatchedContentList</tt> is encoded as a <tt>subTemplateList</tt> to represent the multi-field tuples of SAV rules. The structure of <tt>subTemplateList</tt> was chosen because it can encapsulate heterogeneous fields (e.g., prefix, length, interface) within a single list element. The list semantics (<tt>allOf</tt>, <tt>exactlyOneOf</tt>) directly encode the SAV validation logic (e.g., matching all rules in an allowlist vs. exactly one in a blocklist) into the data structure.</t>
          </li>
        </ul>
      </section>
      <section anchor="subsec-IEs-savRuleType">
        <name>savRuleType (unsigned8)</name>
        <t>The <tt>savRuleType</tt> element classifies the rule as either an allowlist or a blocklist. The values correspond to the check type concepts in the SAV architecture:</t>
        <ul spacing="normal">
          <li>
            <t>A value of <tt>0</tt> is reserved to indicate that no value is available.</t>
          </li>
          <li>
            <t>A value of <tt>1</tt> (allowlist) indicates the packet was validated against an allowlist.</t>
          </li>
          <li>
            <t>A value of <tt>2</tt> (blocklist) indicates the packet was validated against a blocklist.</t>
          </li>
        </ul>
      </section>
      <section anchor="subsec-IEs-savTargetType">
        <name>savTargetType  (unsigned8)</name>
        <t>The <tt>savTargetType</tt> element specifies the lookup key used by the SAV rule. It may be used in conjunction with <tt>savRuleType</tt> to fully define the validation mode applied.</t>
        <ul spacing="normal">
          <li>
            <t>A value of <tt>0</tt> is reserved to indicate that no value is available.</t>
          </li>
          <li>
            <t>A value of <tt>1</tt> (interface-based) indicates the rule is indexed by an interface (e.g., "on interface X, what prefixes are allowed/blocked?").</t>
          </li>
          <li>
            <t>A value of <tt>2</tt> (prefix-based) indicates the rule is indexed by a source prefix (e.g., "for prefix Y, which interfaces are allowed/blocked?").</t>
          </li>
        </ul>
      </section>
      <section anchor="subsec-IEs-savMatchedContentList">
        <name>savMatchedContentList (subTemplateList)</name>
        <t>The <tt>savMatchedContentList</tt> element carries the content of the rules that were relevant to the validation decision, encoded as a <tt>subTemplateList</tt> according to <xref target="RFC6313"/>. Each element in the list represents a complete SAV rule tuple. The content and semantics of the list are defined by the <tt>savRuleType</tt>:</t>
        <ul spacing="normal">
          <li>
            <t><strong>For Allowlist non-matches (<tt>savRuleType=1</tt>)</strong>: The <tt>savMatchedContentList</tt> consists of the set of all rule tuples from the consulted SAV allowlist at the time of the packet's processing. The subTemplateList semantic MUST be <tt>allOf</tt> (0x03), indicating that the packet was validated against all these rules and did not match any of them.</t>
          </li>
          <li>
            <t><strong>For Blocklist matches (<tt>savRuleType=2</tt>)</strong>: The <tt>savMatchedContentList</tt> contains the matched rule tuple from the consulted SAV blocklist. The subTemplateList semantic MUST be <tt>exactlyOneOf</tt> (0x01), indicating that the packet matched this specific rule.</t>
          </li>
        </ul>
        <t><strong>Semantic Interpretation of Standard Information Elements:</strong>
When standard IPFIX IEs (such as <tt>ingressInterface</tt>, <tt>sourceIPv4Prefix</tt>, <tt>sourceIPv4PrefixLength</tt> or their IPv6 equivalents) are used within the subTemplateList of <tt>savMatchedContentList</tt>, they represent values from the SAV rule configuration, rather than from the actual packet being validated. This contextual distinction is critical for correct interpretation:</t>
        <ul spacing="normal">
          <li>
            <t><strong>In the parent Data Record</strong>: These IEs describe attributes of the actual spoofed packets that were validated by SAV.</t>
          </li>
          <li>
            <t><strong>Within <tt>savMatchedContentList</tt></strong>: These same IEs describe the configured SAV rule parameters that were evaluated during validation.</t>
          </li>
        </ul>
        <t>This approach ensures clear semantic distinction by reusing existing IEs, without requiring definition of new elements for SAV rule parameters.</t>
      </section>
      <section anchor="subsec-IEs-savPolicyAction">
        <name>savPolicyAction (unsigned8)</name>
        <t>The <tt>savPolicyAction</tt> indicates the action applied to packets identified as spoofed. The action taken is a matter of local policy. This element reports the outcome.</t>
        <ul spacing="normal">
          <li>
            <t>A value of <tt>0</tt> is reserved to indicate that no value is available.</t>
          </li>
          <li>
            <t>A value of <tt>1</tt> (permit) indicates packets represented by the record were allowed to proceed (monitoring only).</t>
          </li>
          <li>
            <t>A value of <tt>2</tt> (discard) indicates packets represented by the record were discarded or dropped.</t>
          </li>
          <li>
            <t>A value of <tt>3</tt> (rate-limit) indicates packets represented by the record were subject to a rate-limiting policy.</t>
          </li>
          <li>
            <t>A value of <tt>4</tt> (redirect) indicates packets represented by the record were redirected to an alternative destination.</t>
          </li>
          <li>
            <t>Values <tt>5-255</tt> are reserved for future extension.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="use-cases">
      <name>Use Cases</name>
      <t>The SAV-specific IPFIX IEs defined in this document enable network operators to answer critical operational questions that are currently unaddressable without telemetry for SAV:</t>
      <t><strong>SAV Enforcement Monitoring:</strong> Use <tt>savRuleType</tt> (TBD1), <tt>savTargetType</tt> (TBD2), <tt>savPolicyAction</tt> (TBD4)  and standard IPFIX counters, to quantify SAV enforcement actions, analyze their distribution across different validation modes, and identify applied SAV enforcement actions (discard, rate-limit, redirect) at the data plane level. This complements control-plane monitoring via YANG models, providing visibility into actual enforcement behavior rather than configured rules.</t>
      <t><strong>Rule-Level Attribution and Troubleshooting:</strong> Use <tt>savMatchedContentList</tt> (TBD3) to determine the specific SAV rule configuration that triggered enforcement decisions, including the exact rule parameters (interfaces, prefixes) evaluated during validation, whether for allowlist failures or blocklist matches.</t>
      <t><strong>Forensic Analysis and Compliance:</strong> SAV Data Records include both SAV-specific Information Elements and traditional packet-level details (source/destination addresses, ports, protocol), providing complete information for incident investigation and compliance reporting. Operators can use these records to investigate the source and nature of spoofing attacks, and gather evidence to support external trust initiatives and regulatory compliance reporting.</t>
    </section>
    <section anchor="sec-operational">
      <name>Operational Considerations</name>
      <t>While this document defines new IPFIX IEs using standard IPFIX mechanisms, implementors should consider:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Exporter Implementation:</strong> Exporters MUST properly encode the <tt>subTemplateList</tt> structure for <tt>savMatchedContentList</tt> and ensure semantic consistency between <tt>savRuleType</tt> and list contents. Exporters MUST also define the sub-templates (e.g., 901-904) used in <tt>savMatchedContentList</tt> prior to exporting Data Records that use them.</t>
        </li>
        <li>
          <t><strong>Collector Processing:</strong> Collectors MUST be capable of parsing <tt>subTemplateList</tt> structure and understanding the context-dependent semantics of standard IEs within <tt>savMatchedContentList</tt>. Collectors MUST associate the sub-templates with the main template for correct interpretation.</t>
        </li>
        <li>
          <t><strong>Export Volume and Aggregation:</strong> When <tt>savMatchedContentList</tt> is used for allowlist non-matches, the exported record carries the full consulted allowlist, which may generate excessive IPFIX traffic. To bound export load, exporters SHOULD consider rate limiting, sampling <xref target="RFC5475"/>, or aggregation <xref target="RFC7015"/>. Exporters MAY aggregate packets sharing the same Flow Key and SAV context into a single Data Record, including over a reporting interval. For allowlist non-match events, aggregation is more constrained because the consulted allowlist may change between packets. Exporters SHOULD avoid combining packets validated against different allowlist contents into the same Data Record.</t>
        </li>
      </ul>
    </section>
    <section anchor="yang-ipfix-mapping">
      <name>YANG-IPFIX Mapping</name>
      <t>The mappings between the SAV YANG data model and IPFIX IEs are considered based on the common foundation of the general SAV capabilities document <xref target="I-D.ietf-savnet-general-sav-capabilities"/>. The operational correlation is demonstrated in Table 1, which defines the values for the designed IEs mapped from the corresponding <xref target="I-D.li-savnet-sav-yang"/> SAV Management YANG Module.</t>
      <artwork><![CDATA[
+---------------------+---------------------------------------+
| YANG Elements       | IPFIX IEs                             |
+---------------------+---------------------------------------+
| sav-check-type      | savRuleType                           |
|   sav:sav-allow-list|     1 (allowlist)                     |
|   sav:sav-block-list|     2 (blocklist)                     |
+---------------------+---------------------------------------+
| sav-mode            | savTargetType                         |
|   sav:sav-im        |     1 (interface-based)               |
|   sav:sav-cm        |     2 (prefix-based)                  |
+---------------------+---------------------------------------+
| SAV Rules attributes| savMatchedContentList                 |
|   source-prefix     |     sourceIPv4Prefix/sourceIPv6Prefix |
|   incoming-interface|     ingressInterface                  |
+---------------------+---------------------------------------+
]]></artwork>
      <t>Table 1: Mappings between SAV YANG Data Model and IPFIX Information Elements</t>
      <t>The <tt>savPolicyAction</tt> element carries real-time SAV decisions applied to
spoofed packets. It does not directly map to YANG configuration node.</t>
      <t>The code points for these IEs are maintained by IANA in the corresponding subregistries of the IPFIX registry. Future additions or changes are managed via Expert Review as described in <xref target="IANA">IANA Considerations</xref>.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The SAV-specific Information Elements defined in this document export data that reveals the security posture of a network's source address validation deployment. This data is sensitive and warrants additional considerations beyond those in <xref target="RFC7012"/>.</t>
      <ul spacing="normal">
        <li>
          <t><strong>Rule Configuration Disclosure</strong>: The <tt>savMatchedContentList</tt> element, when used with the <tt>allOf</tt> semantic for allowlist non-matches, exports the complete set of source prefixes permitted on an interface. An adversary with access to these IPFIX exports, for example via a compromised collector, could learn which source prefixes are allowed on each interface. This information could then be used to forge packets with spoofed source addresses drawn from those permitted prefixes, thereby increasing the adversary's ability to evade source address validation.</t>
        </li>
        <li>
          <t><strong>Enforcement State Disclosure</strong>: The <tt>savPolicyAction</tt> element with the value <tt>permit</tt> (monitoring only) reveals that SAV is not actively enforcing on a given path. This information could be exploited by an adversary to identify interfaces or prefixes where spoofed traffic would not be dropped.</t>
        </li>
        <li>
          <t><strong>IPFIX Export Amplification</strong>: A sustained spoofing attack can trigger a large volume of IPFIX exports and may overload the collector or the management plane, causing a secondary denial-of-service effect. This risk is especially relevant when allowlist non-match records carry the full consulted allowlist. The guidance in <xref target="sec-operational">Operational Considerations</xref> can help mitigate this risk.</t>
        </li>
        <li>
          <t><strong>Transport Security</strong>: Given the sensitivity of SAV enforcement data, exporters and collectors SHOULD use encrypted transport such as TLS or DTLS as described in <xref target="RFC7011"/> to protect SAV Data Records from eavesdropping and tampering.</t>
        </li>
        <li>
          <t><strong>Access Control</strong>: Collectors that store SAV enforcement data SHOULD restrict access to authorized operators, as the data reveals both the SAV configuration and its enforcement outcomes.</t>
        </li>
      </ul>
      <t>Other security considerations described in <xref target="I-D.ietf-savnet-general-sav-capabilities"/> apply to this document.</t>
    </section>
    <section anchor="IANA">
      <name>IANA Considerations</name>
      <t>This document requests IANA actions for the IPFIX registry <xref target="IANA-IPFIX"/>. Specifically, it requests the creation of new subregistries for the value spaces of selected SAV-specific Information Elements, and the allocation of four new IPFIX Information Elements.</t>
      <section anchor="New-sub-reg">
        <name>New IPFIX Sub-registries</name>
        <t>IANA is requested to create new subregistries under the IPFIX IEs registries. These subregistries specify the value spaces for the <tt>savRuleType</tt>, <tt>savTargetType</tt>, and <tt>savPolicyAction</tt> IEs. The corresponding IE definitions are provided in <xref target="NewIE">New Information Elements</xref>. The allocation policy is Expert Review <xref target="RFC8126"/>.</t>
        <section anchor="subsec-iana-savRuleType">
          <name>IPFIX savRuleType (TBD1) Subregistry</name>
          <ul spacing="normal">
            <li>
              <t><strong>Reference</strong>: This document, <xref target="subsec-IEs-savRuleType">savRuleType</xref>; <xref target="I-D.ietf-savnet-general-sav-capabilities"/>, Section 2 (Validation Modes)</t>
            </li>
            <li>
              <t><strong>Allocation Policy</strong>: Expert Review <xref target="RFC8126"/></t>
            </li>
            <li>
              <t><strong>Expert Guidance</strong>: Experts should ensure that new values are consistent with the SAV architecture concepts defined in <xref target="I-D.ietf-savnet-general-sav-capabilities"/>, particularly the validation modes and rule types (allowlist or blocklist).</t>
            </li>
          </ul>
          <t>Initial values:</t>
          <artwork><![CDATA[
+-------+------------+-------------------------------------------------+
| Value |   Name     |                 Description                     |
+-------+------------+-------------------------------------------------+
|   0   | unassigned |  Reserved; no value is available                |
|   1   | allowlist  |  The packet was validated against an allowlist  |
|   2   | blocklist  |  The packet was validated against a blocklist   |
| 3-255 | unassigned |  Reserved for future assignment                 |
+-------+------------+-------------------------------------------------+
]]></artwork>
        </section>
        <section anchor="subsec-iana-savTargetType">
          <name>IPFIX savTargetType (TBD2) Subregistry</name>
          <ul spacing="normal">
            <li>
              <t><strong>Reference</strong>: This document, <xref target="subsec-IEs-savTargetType">savTargetType</xref>; <xref target="I-D.ietf-savnet-general-sav-capabilities"/>, Section 2 (Validation Modes)</t>
            </li>
            <li>
              <t><strong>Allocation Policy</strong>: Expert Review <xref target="RFC8126"/></t>
            </li>
            <li>
              <t><strong>Expert Guidance</strong>: Experts should consult <xref target="I-D.ietf-savnet-general-sav-capabilities"/> to ensure new values align with the defined target types (interface-based or prefix-based).</t>
            </li>
          </ul>
          <t>Initial values:</t>
          <artwork><![CDATA[
+-------+-----------------+----------------------------------------+
| Value |       Name      |              Description               |
+-------+-----------------+----------------------------------------+
|   0   |    unassigned   |   Reserved; no value is available      |
|   1   | interface-based |   The rule is indexed by an interface  |
|   2   |   prefix-based  |   The rule is indexed by a prefix      |
| 3-255 |    unassigned   |   Reserved for future assignment       |
+-------+-----------------+----------------------------------------+
]]></artwork>
        </section>
        <section anchor="subsec-iana-savPolicyAction">
          <name>IPFIX savPolicyAction (TBD4) Subregistry</name>
          <ul spacing="normal">
            <li>
              <t><strong>Reference</strong>: This document, <xref target="subsec-IEs-savPolicyAction">savPolicyAction</xref>;  <xref target="I-D.ietf-savnet-general-sav-capabilities"/>, Section 4 (Traffic Handling Policies)</t>
            </li>
            <li>
              <t><strong>Allocation Policy</strong>: Expert Review <xref target="RFC8126"/></t>
            </li>
            <li>
              <t><strong>Expert Guidance</strong>: Experts should ensure that new actions are consistent with the SAV traffic handling policies defined in <xref target="I-D.ietf-savnet-general-sav-capabilities"/>.</t>
            </li>
          </ul>
          <t>Initial values:</t>
          <artwork><![CDATA[
+-------+----------+---------------------------------------------------+
| Value |   Name   |                  Description                      |
+-------+----------+---------------------------------------------------+
|   0   |unassigned| Reserved; no value is available                   |
|   1   |  permit  |The packet was allowed to proceed (monitoring only)|
|   2   |  discard | Packet was discarded or dropped                   |
|   3   |rate-limit| Traffic was subjected to rate limiting            |
|   4   | redirect | Packet was redirected to alternative destination  |
| 5-255 |unassigned| Reserved for future assignment                    |
+-------+----------+---------------------------------------------------+
]]></artwork>
        </section>
      </section>
      <section anchor="NewIE">
        <name>New Information Elements</name>
        <t>This document also requests IANA to allocate four new IEs under the "IPFIX Information Elements" registry <xref target="RFC7012"/> available at <xref target="IANA-IPFIX"/>. Note that three of these IEs (<tt>savRuleType</tt>, <tt>savTargetType</tt>, and <tt>savPolicyAction</tt>) have associated value spaces. The corresponding subregistries are defined in <xref target="New-sub-reg">New IPFIX Sub-registries</xref>.</t>
        <artwork><![CDATA[
+------------+-----------------------+
| Element ID | Name                  |
+------------+-----------------------+
| TBD1       | savRuleType           |
| TBD2       | savTargetType         |
| TBD3       | savMatchedContentList |
| TBD4       | savPolicyAction       |
+------------+-----------------------+
]]></artwork>
        <section anchor="savruletype">
          <name>savRuleType</name>
          <ul spacing="normal">
            <li>
              <t><strong>ElementID</strong>: TBD1</t>
            </li>
            <li>
              <t><strong>Name</strong>: savRuleType</t>
            </li>
            <li>
              <t><strong>Abstract Data Type</strong>: unsigned8</t>
            </li>
            <li>
              <t><strong>Data Type Semantics</strong>: identifier</t>
            </li>
            <li>
              <t><strong>Description</strong>: Identifies the validation rule type triggered during SAV enforcement.</t>
            </li>
            <li>
              <t><strong>Reference</strong>: This document, <xref target="subsec-iana-savRuleType">IPFIX savRuleType Subregistry</xref></t>
            </li>
          </ul>
        </section>
        <section anchor="savtargettype">
          <name>savTargetType</name>
          <ul spacing="normal">
            <li>
              <t><strong>ElementID</strong>: TBD2</t>
            </li>
            <li>
              <t><strong>Name</strong>: savTargetType</t>
            </li>
            <li>
              <t><strong>Abstract Data Type</strong>: unsigned8</t>
            </li>
            <li>
              <t><strong>Data Type Semantics</strong>: identifier</t>
            </li>
            <li>
              <t><strong>Description</strong>: Specifies the entity type against which validation was performed.</t>
            </li>
            <li>
              <t><strong>Reference</strong>: This document, <xref target="subsec-iana-savTargetType">IPFIX savTargetType Subregistry</xref></t>
            </li>
          </ul>
        </section>
        <section anchor="savmatchedcontentlist">
          <name>savMatchedContentList</name>
          <ul spacing="normal">
            <li>
              <t><strong>ElementID</strong>: TBD3</t>
            </li>
            <li>
              <t><strong>Name</strong>: savMatchedContentList</t>
            </li>
            <li>
              <t><strong>Abstract Data Type</strong>: subTemplateList</t>
            </li>
            <li>
              <t><strong>Data Type Semantics</strong>: list</t>
            </li>
            <li>
              <t><strong>Description</strong>: The content of the SAV rules relevant to the validation decision.</t>
            </li>
            <li>
              <t><strong>Reference</strong>: This document, <xref target="subsec-IEs-savMatchedContentList">savMatchedContentList</xref></t>
            </li>
          </ul>
        </section>
        <section anchor="savpolicyaction">
          <name>savPolicyAction</name>
          <ul spacing="normal">
            <li>
              <t><strong>ElementID</strong>: TBD4</t>
            </li>
            <li>
              <t><strong>Name</strong>: savPolicyAction</t>
            </li>
            <li>
              <t><strong>Abstract Data Type</strong>: unsigned8</t>
            </li>
            <li>
              <t><strong>Data Type Semantics</strong>: identifier</t>
            </li>
            <li>
              <t><strong>Description</strong>: Action applied to packets identified as spoofed.</t>
            </li>
            <li>
              <t><strong>Reference</strong>: This document, <xref target="subsec-iana-savPolicyAction">IPFIX savPolicyAction Subregistry</xref></t>
            </li>
          </ul>
        </section>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC7011" target="https://www.rfc-editor.org/info/rfc7011" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7011.xml">
          <front>
            <title>Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of Flow Information</title>
            <author fullname="B. Claise" initials="B." role="editor" surname="Claise"/>
            <author fullname="B. Trammell" initials="B." role="editor" surname="Trammell"/>
            <author fullname="P. Aitken" initials="P." surname="Aitken"/>
            <date month="September" year="2013"/>
            <abstract>
              <t>This document specifies the IP Flow Information Export (IPFIX) protocol, which serves as a means for transmitting Traffic Flow information over the network. In order to transmit Traffic Flow information from an Exporting Process to a Collecting Process, a common representation of flow data and a standard means of communicating them are required. This document describes how the IPFIX Data and Template Records are carried over a number of transport protocols from an IPFIX Exporting Process to an IPFIX Collecting Process. This document obsoletes RFC 5101.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="77"/>
          <seriesInfo name="RFC" value="7011"/>
          <seriesInfo name="DOI" value="10.17487/RFC7011"/>
        </reference>
        <reference anchor="RFC7012" target="https://www.rfc-editor.org/info/rfc7012" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7012.xml">
          <front>
            <title>Information Model for IP Flow Information Export (IPFIX)</title>
            <author fullname="B. Claise" initials="B." role="editor" surname="Claise"/>
            <author fullname="B. Trammell" initials="B." role="editor" surname="Trammell"/>
            <date month="September" year="2013"/>
            <abstract>
              <t>This document defines the data types and management policy for the information model for the IP Flow Information Export (IPFIX) protocol. This information model is maintained as the IANA "IPFIX Information Elements" registry, the initial contents of which were defined by RFC 5102. This information model is used by the IPFIX protocol for encoding measured traffic information and information related to the traffic Observation Point, the traffic Metering Process, and the Exporting Process. Although this model was developed for the IPFIX protocol, it is defined in an open way that allows it to be easily used in other protocols, interfaces, and applications. This document obsoletes RFC 5102.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7012"/>
          <seriesInfo name="DOI" value="10.17487/RFC7012"/>
        </reference>
        <reference anchor="RFC7013" target="https://www.rfc-editor.org/info/rfc7013" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7013.xml">
          <front>
            <title>Guidelines for Authors and Reviewers of IP Flow Information Export (IPFIX) Information Elements</title>
            <author fullname="B. Trammell" initials="B." surname="Trammell"/>
            <author fullname="B. Claise" initials="B." surname="Claise"/>
            <date month="September" year="2013"/>
            <abstract>
              <t>This document provides guidelines for how to write definitions of new Information Elements for the IP Flow Information Export (IPFIX) protocol. It provides instructions on using the proper conventions for Information Elements to be registered in the IANA IPFIX Information Element registry, and provides guidelines for expert reviewers to evaluate new registrations.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="184"/>
          <seriesInfo name="RFC" value="7013"/>
          <seriesInfo name="DOI" value="10.17487/RFC7013"/>
        </reference>
        <reference anchor="RFC6313" target="https://www.rfc-editor.org/info/rfc6313" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6313.xml">
          <front>
            <title>Export of Structured Data in IP Flow Information Export (IPFIX)</title>
            <author fullname="B. Claise" initials="B." surname="Claise"/>
            <author fullname="G. Dhandapani" initials="G." surname="Dhandapani"/>
            <author fullname="P. Aitken" initials="P." surname="Aitken"/>
            <author fullname="S. Yates" initials="S." surname="Yates"/>
            <date month="July" year="2011"/>
            <abstract>
              <t>This document specifies an extension to the IP Flow Information Export (IPFIX) protocol specification in RFC 5101 and the IPFIX information model specified in RFC 5102 to support hierarchical structured data and lists (sequences) of Information Elements in data records. This extension allows definition of complex data structures such as variable-length lists and specification of hierarchical containment relationships between Templates. Finally, the semantics are provided in order to express the relationship among multiple list elements in a structured data record. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6313"/>
          <seriesInfo name="DOI" value="10.17487/RFC6313"/>
        </reference>
        <reference anchor="RFC8126" target="https://www.rfc-editor.org/info/rfc8126" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8126.xml">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.li-savnet-sav-yang" target="https://datatracker.ietf.org/doc/html/draft-li-savnet-sav-yang-08" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.li-savnet-sav-yang.xml">
          <front>
            <title>YANG Data Model for Intra-domain and Inter-domain Source Address Validation (SAVNET)</title>
            <author fullname="Dan Li" initials="D." surname="Li">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Libin Liu" initials="L." surname="Liu">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <author fullname="Changwang Lin" initials="C." surname="Lin">
              <organization>New H3C Technologies</organization>
            </author>
            <author fullname="Jianping Wu" initials="J." surname="Wu">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Tianhao Wu" initials="T." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <author fullname="Weiqiang Cheng" initials="W." surname="Cheng">
              <organization>China Mobile</organization>
            </author>
            <date day="12" month="April" year="2026"/>
            <abstract>
              <t>This document describes a YANG data model for Intra-domain and Inter-domain Source Address Validation (SAVNET). The model serves as a base framework for configuring and managing an SAV subsystem, including SAV rule and SAV Tables, and expected to be augmented by other SAV technology models accordingly. Additionally, this document also specifies the model for the SAV Static application.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-li-savnet-sav-yang-08"/>
        </reference>
        <reference anchor="I-D.ietf-savnet-general-sav-capabilities" target="https://datatracker.ietf.org/doc/html/draft-ietf-savnet-general-sav-capabilities-03" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-savnet-general-sav-capabilities.xml">
          <front>
            <title>General Source Address Validation Capabilities</title>
            <author fullname="Mingqing(Michael) Huang" initials="M." surname="Huang">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <author fullname="Weiqiang Cheng" initials="W." surname="Cheng">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Dan Li" initials="D." surname="Li">
              <organization>Tsinghua University</organization>
            </author>
            <author fullname="Nan Geng" initials="N." surname="Geng">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Li Chen" initials="L." surname="Chen">
              <organization>Zhongguancun Laboratory</organization>
            </author>
            <date day="21" month="June" year="2026"/>
            <abstract>
              <t>The SAV rules of existing source address validation (SAV) mechanisms are derived from other core data structures (e.g., FIB-based uRPF) that are not dedicatedly designed for source filtering. Consequently, these mechanisms have limitations in deployable scenarios and traffic handling policies. To overcome these limitations, this document introduces general SAV capabilities from a data plane perspective. How to implement the capabilities and how to generate SAV rules are not in the scope of this document.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-savnet-general-sav-capabilities-03"/>
        </reference>
        <reference anchor="RFC5475" target="https://www.rfc-editor.org/info/rfc5475" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5475.xml">
          <front>
            <title>Sampling and Filtering Techniques for IP Packet Selection</title>
            <author fullname="T. Zseby" initials="T." surname="Zseby"/>
            <author fullname="M. Molina" initials="M." surname="Molina"/>
            <author fullname="N. Duffield" initials="N." surname="Duffield"/>
            <author fullname="S. Niccolini" initials="S." surname="Niccolini"/>
            <author fullname="F. Raspall" initials="F." surname="Raspall"/>
            <date month="March" year="2009"/>
            <abstract>
              <t>This document describes Sampling and Filtering techniques for IP packet selection. It provides a categorization of schemes and defines what parameters are needed to describe the most common selection schemes. Furthermore, it shows how techniques can be combined to build more elaborate packet Selectors. The document provides the basis for the definition of information models for configuring selection techniques in Metering Processes and for reporting the technique in use to a Collector. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5475"/>
          <seriesInfo name="DOI" value="10.17487/RFC5475"/>
        </reference>
        <reference anchor="RFC7015" target="https://www.rfc-editor.org/info/rfc7015" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7015.xml">
          <front>
            <title>Flow Aggregation for the IP Flow Information Export (IPFIX) Protocol</title>
            <author fullname="B. Trammell" initials="B." surname="Trammell"/>
            <author fullname="A. Wagner" initials="A." surname="Wagner"/>
            <author fullname="B. Claise" initials="B." surname="Claise"/>
            <date month="September" year="2013"/>
            <abstract>
              <t>This document provides a common implementation-independent basis for the interoperable application of the IP Flow Information Export (IPFIX) protocol to the handling of Aggregated Flows, which are IPFIX Flows representing packets from multiple Original Flows sharing some set of common properties. It does this through a detailed terminology and a descriptive Intermediate Aggregation Process architecture, including a specification of methods for Original Flow counting and counter distribution across intervals.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7015"/>
          <seriesInfo name="DOI" value="10.17487/RFC7015"/>
        </reference>
        <reference anchor="IANA-IPFIX" target="https://www.iana.org/assignments/ipfix/ipfix.xhtml">
          <front>
            <title>IP Flow Information Export (IPFIX) Entities</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
    </references>
    <?line 373?>

<section anchor="ipfix-encoding-examples">
      <name>IPFIX Encoding Examples</name>
      <t>This appendix provides encoding examples for the SAV-specific IPFIX IEs defined in this document.</t>
      <section anchor="template-record-and-data-record-with-sub-template-list">
        <name>Template Record and Data Record with Sub-Template List</name>
        <t>This example demonstrates the encoding for two observed SAV enforcement events representing different validation scenarios and address families as shown in Table 2.</t>
        <artwork><![CDATA[
+-----+--------------+---------+---------+-----------+-------------+
|Event|Source Address|Interface|Rule Type|Target Type|Policy Action|
+-----+--------------+---------+---------+-----------+-------------+
|  1  | 192.0.2.100  |  5001   |Allowlist| Interface | Rate-limit  |
|  2  | 2001:db8::1  |  5002   |Blocklist| Prefix    | Discard     |
+-----+--------------+---------+---------+-----------+-------------+
]]></artwork>
        <t>Table 2: Two Observed SAV Validation Events</t>
        <t>The first event represents an IPv4 allowlist non-match event where a packet from source 192.0.2.100 arriving on interface 5001 failed to match any source prefixes configured in the interface-based allowlist.
The second event represents an IPv6 blocklist match event where a packet from source 2001:db8::1 was received on interface 5002, which matched a prefix-based blocklist rule.</t>
        <section anchor="sub-template-definitions">
          <name>Sub-Template Definitions</name>
          <t>The following sub-templates are defined for use within the <tt>savMatchedContentList</tt> element to encode different types of SAV rule mappings based on address family and validation target type. The <tt>savMatchedContentList</tt> element is encoded as a <tt>subTemplateList</tt> according to <xref target="RFC6313"/>.</t>
          <t>The template IDs used in these examples are exemplary and chosen arbitrarily. In actual implementations, exporters MUST assign unique template IDs within the IPFIX session for these sub-templates.</t>
          <ul spacing="normal">
            <li>
              <t><strong>Sub-Template 901: IPv4 Interface-to-Prefix Mapping</strong></t>
            </li>
          </ul>
          <t>This sub-template is used when <tt>savTargetType=1</tt>(interface-based validation mode) for IPv4 traffic. It contains the mapping from an interface to source IPv4 prefixes as defined in the SAV rule configuration. It can be used for both blocklist and allowlist.</t>
          <artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          Set ID = 2           |          Length = 20          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       Template ID = 901       |        Field Count = 3        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|   ingressInterface = 10     |        Field Length = 4       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|   sourceIPv4Prefix = 44     |        Field Length = 4       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| sourceIPv4PrefixLength = 9  |        Field Length = 1       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          <t>Figure 1: Sub-Template 901 (IPv4 Interface-to-Prefix Mapping)</t>
          <ul spacing="normal">
            <li>
              <t><strong>Sub-Template 902: IPv6 Interface-to-Prefix Mapping</strong>
This sub-template is the IPv6 equivalent of Sub-Template 901, used for interface-based validation with IPv6 traffic.</t>
            </li>
          </ul>
          <artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          Set ID = 2           |          Length = 20          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       Template ID = 902       |        Field Count = 3        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|   ingressInterface = 10     |        Field Length = 4       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|   sourceIPv6Prefix = 170    |        Field Length = 16      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| sourceIPv6PrefixLength = 29 |        Field Length = 1       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          <t>Figure 2: Sub-Template 902 (IPv6 Interface-to-Prefix Mapping)</t>
          <ul spacing="normal">
            <li>
              <t><strong>Sub-Template 903: IPv4 Prefix-to-Interface Mapping</strong></t>
            </li>
          </ul>
          <t>This sub-template is used when <tt>savTargetType=2</tt>(prefix-based validation mode) for IPv4 traffic. It contains the mapping from a source IPv4 prefixes to interface as defined in the SAV rule configuration. It can be used for both blocklist and allowlist.</t>
          <artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          Set ID = 2           |          Length = 20          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       Template ID = 903       |        Field Count = 3        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|   sourceIPv4Prefix = 44     |        Field Length = 4       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| sourceIPv4PrefixLength = 9  |        Field Length = 1       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|   ingressInterface = 10     |        Field Length = 4       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          <t>Figure 3: Sub-Template 903 (IPv4 Prefix-to-Interface Mapping)</t>
          <ul spacing="normal">
            <li>
              <t><strong>Sub-Template 904: IPv6 Prefix-to-Interface Mapping</strong></t>
            </li>
          </ul>
          <t>This sub-template is the IPv6 equivalent of Sub-Template 903, used for prefix-based validation with IPv6 traffic.</t>
          <artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          Set ID = 2           |          Length = 20          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       Template ID = 904       |        Field Count = 3        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|   sourceIPv6Prefix = 170    |        Field Length = 16      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| sourceIPv6PrefixLength = 29 |        Field Length = 1       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|   ingressInterface = 10     |        Field Length = 4       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          <t>Figure 4: Sub-Template 904 (IPv6 Prefix-to-Interface Mapping)</t>
        </section>
        <section anchor="main-template-record">
          <name>Main Template Record</name>
          <t>The main Template Record (ID 400) contains fields for exporting detailed SAV enforcement information including the validation outcome and the specific rule content that triggered the action. The template incorporates the <tt>savMatchedContentList</tt> element as a variable-length <tt>subTemplateList</tt> to carry the relevant SAV rule contents using the appropriate sub-templates defined above.</t>
          <artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          Set ID = 2           |          Length = 28          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        Template ID = 400      |        Field Count = 5        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|  observationTimeMicrosec=324|        Field Length = 8       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|      savRuleType = TBD1     |        Field Length = 1       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|     savTargetType = TBD2    |        Field Length = 1       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| savMatchedContentList=TBD3  |      Field Length = 0xFFFF    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|   savPolicyAction = TBD4    |        Field Length = 1       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          <t>Figure 5: Main Template Record (ID 400)</t>
        </section>
        <section anchor="data-set-example">
          <name>Data Set Example</name>
          <t>The following Data Set contains two Data Records that represent the two SAV validation scenarios in Table 2.</t>
          <t>The first Data Record (allowlist non-match) encodes the complete set of allowed prefixes using Sub-Template 901 with the <tt>allOf</tt> semantic (0x03). The allowlist includes three SAV rules for <tt>ingressInterface</tt> 5001, with <tt>sourceIPv4Prefix</tt> values 198.51.100.0/24, 203.0.113.0/24, and 192.0.2.128/25.</t>
          <t>The second Data Record (blocklist match) encodes the specific blocked interface using Sub-Template 904 with the <tt>exactlyOneOf</tt> semantic (0x01). The matched rule is <tt>sourceIPv6Prefix</tt> 2001:db8::/32 on <tt>ingressInterface</tt> 5002.</t>
          <t>The figure below uses abbreviated IE names: <tt>savRT</tt> for <tt>savRuleType</tt>, <tt>savTT</tt> for <tt>savTargetType</tt>, <tt>savAct</tt> for <tt>savPolicyAction</tt>, <tt>sPrf4Len</tt> for <tt>sourceIPv4PrefixLength</tt>, and <tt>sPrf6Len</tt> for <tt>sourceIPv6PrefixLength</tt>.</t>
          <artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          Set ID = 400         |          Length = 88          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              observationTimeMicrosec =                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      0x5D2F0A0000000000                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   savRT =1    |   savTT=1     |     255       |   List Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     = 30      | semantic=0x03 |    Template ID = 901          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                ingressInterface[0] = 5001                     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              sourceIPv4Prefix[0] = 198.51.100.0               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|sPrf4Len[0]=24 |         ingressInterface[1] =                 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      5001     |         sourceIPv4Prefix[1] =                 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  203.0.113.0  | sPrf4Len[1]=24|      ingressInterface[2] =    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               5001            |       sourceIPv4Prefix[2] =   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         192.0.2.128           |sPrf4Len[2]=25 |    savAct=3   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              observationTimeMicrosec =                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      0x5D2F0A0000000001                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   savRT =2    |   savTT=2     |     255       |  List Length  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     = 24      | semantic=0x01 |     Template ID = 904         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                     sourceIPv6Prefix[0]                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|sPrf6Len[0]=32 |          ingressInterface[0] =                |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       5002    |    savAct=2   |              padding          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          <t>Figure 6: Data Set Example</t>
        </section>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
