Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cronjob - daily update of yang files. #1435

Merged
merged 1 commit into from
Jun 22, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions standard/ietf/RFC/ietf-sap-ntw.yang
350 changes: 350 additions & 0 deletions standard/ietf/RFC/[email protected]
Original file line number Diff line number Diff line change
@@ -0,0 +1,350 @@
module ietf-sap-ntw {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-sap-ntw";
prefix sap;

import ietf-network-topology {
prefix nt;
reference
"RFC 8345: A YANG Data Model for Network
Topologies, Section 6.2";
}
import ietf-network {
prefix nw;
reference
"RFC 8345: A YANG Data Model for Network
Topologies, Section 6.1";
}
import ietf-vpn-common {
prefix vpn-common;
reference
"RFC 9181: A Common YANG Data Model for Layer 2 and Layer 3
VPNs";
}
import ietf-yang-types {
prefix yang;
reference
"RFC 6991: Common YANG Data Types, Section 3";
}

organization
"IETF OPSA (Operations and Management Area) Working Group";
contact
"WG Web: <https://datatracker.ietf.org/wg/opsawg/>
WG List: <mailto:[email protected]>

Editor: Mohamed Boucadair
<mailto:[email protected]>

Author: Oscar Gonzalez de Dios
<mailto:[email protected]>

Author: Samier Barguil
<mailto:[email protected]>

Author: Qin Wu
<mailto:[email protected]>

Author: Victor Lopez
<mailto:[email protected]>";
description
"This YANG module defines a model for representing, managing,
and controlling the Service Attachment Points (SAPs) in the
network topology.

Copyright (c) 2023 IETF Trust and the persons identified as
authors of the code. All rights reserved.

Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject to
the license terms contained in, the Revised BSD License set
forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents
(https://trustee.ietf.org/license-info).

This version of this YANG module is part of RFC 9408; see the
RFC itself for full legal notices.";

revision 2023-06-20 {
description
"Initial version.";
reference
"RFC 9408: A YANG Network Data Model for Service Attachment
Points (SAPs)";
}

identity virtual-network {
base vpn-common:service-type;
description
"Virtual network. Refers to a logical network instance
that is built over a physical network.";
reference
"RFC 8453: Framework for Abstraction and Control of TE
Networks (ACTN)";
}

identity enhanced-vpn {
base vpn-common:service-type;
description
"Enhanced VPN (VPN+). VPN+ is an approach that is
based on existing VPN and Traffic Engineering (TE)
technologies but adds characteristics that specific
services require over and above conventional VPNs.";
reference
"draft-ietf-teas-enhanced-vpn:
A Framework for Enhanced Virtual Private Network
(VPN+)";
}

identity network-slice {
base vpn-common:service-type;
description
"IETF Network Slice. An IETF Network Slice
is a logical network topology connecting a number of
endpoints using a set of shared or dedicated network
resources that are used to satisfy specific service
objectives.";
reference
"draft-ietf-teas-ietf-network-slices:
A Framework for IETF Network Slices";
}

identity sdwan {
base vpn-common:service-type;
description
"PE-based Software-Defined Wide-Area Network (SD-WAN).";
reference
"draft-ietf-bess-bgp-sdwan-usage:
BGP Usage for SD-WAN Overlay Networks";
}

identity basic-connectivity {
base vpn-common:service-type;
description
"Basic IP connectivity. This is, for example, a plain
form of connectivity offered to enterprises over a
dedicated or shared MPLS infrastructure.";
}

identity interface-role {
description
"Base identity for the network role of an interface.";
}

identity uni {
base interface-role;
description
"User-to-Network Interface (UNI).";
}

identity nni {
base interface-role;
description
"Network-to-Network Interface (NNI).";
}

identity interface-type {
description
"Base identity for the interface type.";
}

identity phy {
base interface-type;
description
"Physical port.";
}

identity loopback {
base interface-type;
description
"Loopback interface.";
}

identity lag {
base interface-type;
description
"Link Aggregation Group (LAG) interface.";
}

identity irb {
base interface-type;
description
"Integrated Routing and Bridging (IRB) interface. An IRB
interface typically connects an IP Virtual Routing and
Forwarding (IP-VRF) entity to a bridge domain.";
}

identity local-bridge {
base interface-type;
description
"A local bridge reference to accommodate (for example)
implementations that require internal bridging.
When such a type is used, a reference to a local
bridge domain is used to identify the interface.";
}

identity logical {
base interface-type;
description
"Refers to a logical sub-interface that is typically
used to bind a service. This type is used only
if none of the other more specific types (i.e.,
'loopback', 'lag', 'irb', or 'local-bridge') can be used.";
}

grouping sap-entry {
description
"Service Attachment Point (SAP) entry information.";
leaf sap-id {
type string;
description
"Indicates an identifier that uniquely identifies
a SAP.";
}
leaf description {
type string;
description
"A textual description of the SAP.";
}
leaf parent-termination-point {
type nt:tp-id;
description
"Indicates the parent termination point to
which the SAP is attached. A termination
point can be a physical port, an interface, etc.";
}
leaf attachment-interface {
type string;
description
"Indicates the interface to which the SAP is bound.";
}
leaf interface-type {
type identityref {
base interface-type;
}
description
"The type of the interface to which the SAP is bound.";
}
leaf encapsulation-type {
type identityref {
base vpn-common:encapsulation-type;
}
description
"Encapsulation type of the interface to which the
SAP is bound.";
}
leaf role {
type identityref {
base interface-role;
}
description
"Indicates the role of a SAP.";
}
leaf allows-child-saps {
type boolean;
description
"Indicates whether the attachment interface of this
SAP is capable of hosting per-service sub-interfaces.";
}
leaf-list peer-sap-id {
type string;
description
"Indicates an identifier of the peer's termination
identifier (e.g., a Customer Edge (CE)). This
information can be used for correlation purposes,
such as identifying the SAP that is attached to
an endpoint that is provided in a service request.";
}
}

grouping sap-list {
description
"SAP information.";
list sap {
key "sap-id";
description
"The SAPs are an abstraction of the points to which
network services such as L3VPNs, L2VPNs, or network
slices can be attached.";
uses sap-entry;
container sap-status {
config false;
description
"Indicates the operational status of the SAP,
independent of any service provisioned over it.";

uses vpn-common:oper-status-timestamp;
}
container service-status {
description
"Indicates the service status.";
container admin-status {
description
"Administrative service status.";
leaf status {
type identityref {
base vpn-common:administrative-status;
}
description
"Administrative status of the service provisioned
at the SAP.";
}
leaf last-change {
type yang:date-and-time;
description
"Indicates the actual date and time of the service
status change.";
}
}
container oper-status {
config false;
description
"Operational status of the service provisioned
at the SAP.";
uses vpn-common:oper-status-timestamp;
}
}
}
}

augment "/nw:networks/nw:network/nw:network-types" {
description
"Introduces a new network type for a SAP network.";
container sap-network {
presence "Indicates the SAP network type.";
description
"The presence of the container node indicates the
SAP network type.";
leaf-list service-type {
type identityref {
base vpn-common:service-type;
}
description
"Indicates the set of supported service types.";
}
}
}

augment "/nw:networks/nw:network/nw:node" {
when '../nw:network-types/sap:sap-network' {
description
"Augmentation parameters apply only for SAP
networks.";
}
description
"SAP parameters for the node level.";
list service {
key "service-type";
description
"A list of supported service types for the node.";
leaf service-type {
type identityref {
base vpn-common:service-type;
}
description
"Indicates a service type.";
}
uses sap-list;
}
}
}