netconfcentral logo

sd-onos-service-l3vpn

HTML

sd-onos-service-l3vpn@2015-10-14



  module sd-onos-service-l3vpn {

    yang-version 1;

    namespace "urn:onos:l3vpn";

    prefix l3vpn;

    import ietf-inet-types {
      prefix inet;
    }
    import ietf-yang-types {
      prefix yang-types;
    }
    import sd-onos-service-types {
      prefix service-types;
    }
    import sd-onos-common-types {
      prefix types;
    }

    organization "";

    contact "";

    revision "2015-10-14" {
      description "revised revision.";
    }


    container service {
      container l3vpn-cfg {
        list vpn-cfg {
          key "name";
          uses l3vpn;
        }  // list vpn-cfg
      }  // container l3vpn-cfg

      container service-paths {
        list service-path {
          key "service-id source-ne-id source-ac-id destination-ne-id destination-ac-id";
          uses service-types:service-path;
        }  // list service-path
      }  // container service-paths
    }  // container service

    grouping l3vpn {
      leaf name {
        type string;
        mandatory true;
        description "name of snc eline.";
      }

      leaf id {
        type uint32;
        mandatory true;
        description "ID of snc eline.";
      }

      leaf user-label {
        type string;
        description
          "user label of snc eline.";
      }

      leaf parent-ncd-id {
        type string;
        description "parent ncd id.";
      }

      leaf admin-status {
        type types:admin-status;
      }

      leaf operate-status {
        type types:operate-status;
      }

      uses service-type-grouping;

      container acess-information {
        list access-circuit {
          key "id";
          uses service-types:l3-ac;
        }  // list access-circuit
      }  // container acess-information

      container protect-policy {
        description
          "L3VPN Service protect policy.";
        uses service-types:protect-policy;
      }  // container protect-policy

      container tunnel-service {
        description "tunnel service.";
        uses service-types:tunnel-service;
      }  // container tunnel-service
    }  // grouping l3vpn

    grouping service-type-grouping {
      leaf service-topology {
        type enumeration {
          enum "full-mesh" {
            value 1;
            description "full-mesh.";
          }
          enum "hub-spoke" {
            value 2;
            description "hub-spoke.";
          }
        }
        default 'full-mesh';
        description "service topology type.";
      }
    }  // grouping service-type-grouping

    rpc create-l3vpn-instance {
      input {
        container l3vpn-instance {
          uses l3vpn;
        }  // container l3vpn-instance
      }
    }  // rpc create-l3vpn-instance

    rpc delete-l3vpn-instance {
      input {
        leaf l3vpn-id {
          type string;
        }
      }
    }  // rpc delete-l3vpn-instance

    rpc close-l3vpn {
      input {
        leaf l3vpn-id {
          type string;
        }

        container ac-status {
          list acs {
            key "id";
            leaf id {
              type string;
            }

            leaf admin-status {
              type types:admin-status;
            }
          }  // list acs
        }  // container ac-status
      }
    }  // rpc close-l3vpn

    rpc modify-l3vpn-instance-basic {
      input {
        leaf l3vpn-id {
          type string;
        }

        leaf user-label {
          type string;
        }
      }
    }  // rpc modify-l3vpn-instance-basic

    rpc modify-l3vpn-instance-ac-qos {
      input {
        leaf l3vpn-id {
          type string;
        }

        container ac-qos {
          list acs {
            key "id";
            leaf id {
              type string;
            }

            container qos-policy {
              container qos-if-cars {
                list qos-if-car {
                  key "direction";
                  uses service-types:qos-if-car;
                }  // list qos-if-car
              }  // container qos-if-cars
            }  // container qos-policy
          }  // list acs
        }  // container ac-qos
      }
    }  // rpc modify-l3vpn-instance-ac-qos

    rpc modify-l3vpn-instance-connection {
      input {
        leaf l3vpn-id {
          type string;
        }

        container ac-connection {
          list acs {
            leaf id {
              type string;
              description "ac id.";
            }

            container connection {
              description
                "CE to PE  connection.";
              uses service-types:connection;
            }  // container connection
          }  // list acs
        }  // container ac-connection
      }
    }  // rpc modify-l3vpn-instance-connection

    rpc inquire-l3vpn-instance-work-path {
      input {
        leaf service-id {
          type string;
        }

        leaf ingress-ne-id {
          type string;
        }

        leaf destination-ne-id {
          type string;
        }

        leaf ingress-ac-id {
          type string;
        }

        leaf destination-ac-id {
          type string;
        }

        leaf path-layer {
          type string;
        }

        leaf path-role {
          type string;
        }
      }

      output {
        container service-path {
          leaf service-id {
            type string;
          }

          leaf ingress-ne-id {
            type string;
          }

          leaf destination-ne-id {
            type string;
          }

          leaf ingress-ac-id {
            type string;
          }

          leaf destination-ac-id {
            type string;
          }

          leaf path-layer {
            type string;
          }

          leaf path-role {
            type string;
          }

          list path-list {
            key "ne-id";
            leaf ne-id {
              type string;
            }

            leaf ingress-ltp-id {
              type string;
            }

            leaf backward-peer-id {
              type string;
            }

            leaf egress-ltp-id {
              type string;
            }

            leaf forward-peer-id {
              type string;
            }
          }  // list path-list
        }  // container service-path
      }
    }  // rpc inquire-l3vpn-instance-work-path
  }  // module sd-onos-service-l3vpn

Summary

  
Module sd-onos-service-l3vpn
Version 2015-10-14
File sd-onos-service-l3vpn@2015-10-14.yang
  
Prefix l3vpn
Namespace urn:onos:l3vpn
  
Cooked /cookedmodules/sd-onos-service-l3vpn/2015-10-14
YANG /src/sd-onos-service-l3vpn@2015-10-14.yang
XSD /xsd/sd-onos-service-l3vpn@2015-10-14.xsd
  
  

Description

 

Groupings

Grouping Objects Abstract
l3vpn name id user-label parent-ncd-id admin-status operate-status service-topologyacess-information protect-policy tunnel-service
service-type-grouping service-topology

Objects

Type Key
Mandatory config
Optional config
Not config
Object Type Abstract
service container l3vpn-cfg service-paths
   l3vpn-cfg container vpn-cfg
      vpn-cfg list name id user-label parent-ncd-id admin-status operate-status service-topology acess-information protect-policy tunnel-service
         acess-information container access-circuit
            access-circuit list id name ne-id ltp-id admin-status operate-status l2-access role qos-policy connection
               admin-status leaf OID: /service/l3vpn-cfg/vpn-cfg/acess-information/access-circuit/admin-status
               connection container connection information of ac.
                  ip-address leaf ip address of access circuit's connectio.
                  mask-length leaf mask length of ip address.
                  protocols leaf protocols between PE and CE.
                  static-routes container static-route
                     static-route list ip-prefix mask-length next-hop preference
                        ip-prefix leaf OID: /service/l3vpn-cfg/vpn-cfg/acess-information/access-circuit/connection/static-routes/static-route/ip-prefix
                        mask-length leaf OID: /service/l3vpn-cfg/vpn-cfg/acess-information/access-circuit/connection/static-routes/static-route/mask-length
                        next-hop leaf OID: /service/l3vpn-cfg/vpn-cfg/acess-information/access-circuit/connection/static-routes/static-route/next-hop
                        preference leaf OID: /service/l3vpn-cfg/vpn-cfg/acess-information/access-circuit/connection/static-routes/static-route/preference
               id leaf ac id.
               l2-access container link layer access information of ac.
                  access-action leaf access type.
                  access-type leaf OID: /service/l3vpn-cfg/vpn-cfg/acess-information/access-circuit/l2-access/access-type
                  action-vlan-id leaf action vlan id.
                  dot1q-vlan-bitmap leaf Dot1Q Vlan Bitmap.
                  qinq-cvlan-bitmap leaf QinQ cvlan Bitmap.
                  qinq-svlan-bitmap leaf QinQ svlan Bitmap.
               ltp-id leaf ltp id.
               name leaf ac name.
               ne-id leaf ne id.
               operate-status leaf OID: /service/l3vpn-cfg/vpn-cfg/acess-information/access-circuit/operate-status
               qos-policy container qos-if-cars
                  qos-if-cars container qos-if-car
                     qos-if-car list direction cir pir cbs pbs
                        cbs leaf forward CBS. unit:Kbps
                        cir leaf forward CIR. unit:Kbps
                        direction leaf qos for interface car
                        pbs leaf forward PBS. unit:Kbps
                        pir leaf forward PIR. unit:Kbps
               role leaf role of snc lsp.
         admin-status leaf OID: /service/l3vpn-cfg/vpn-cfg/admin-status
         id leaf ID of snc eline.
         name leaf name of snc eline.
         operate-status leaf OID: /service/l3vpn-cfg/vpn-cfg/operate-status
         parent-ncd-id leaf parent ncd id.
         protect-policy container L3VPN Service protect policy.
            protect-type leaf protection type
            revertive-type leaf revertive mode
            wtr leaf WTR.unit:s
         service-topology leaf service topology type.
         tunnel-service container tunnel service.
            latency leaf tunnel latency requirement.
            oam-policy container detect-type bfd-detect-para
               bfd-detect-para container ingress-discriminator egress-discriminator tx-interval rx-interval detect-interval
                  detect-interval leaf detect-interval
                  egress-discriminator leaf egress-discriminator
                  ingress-discriminator leaf ingress-discriminator
                  rx-interval leaf rx-interval
                  tx-interval leaf tx-interval
               detect-type leaf detect type
            protect-policy container protect-type revertive-type wtr
               protect-type leaf protection type
               revertive-type leaf revertive mode
               wtr leaf WTR.unit:s
            signaling-type leaf signaling type.
            tunnel-mode leaf service to tunnel mode.
         user-label leaf user label of snc eline.
   service-paths container service-path
      service-path list service-id source-ne-id source-ac-id destination-ne-id destination-ac-id path-lists
         destination-ac-id leaf destination ltp id.
         destination-ne-id leaf destination ne id.
         path-lists container path-list
            path-list list path-layer path-role paths
               path-layer leaf path type. 0 : PW, 1 : BGP-LSP, 2 : PW
               path-role leaf path role.. 0 : master, 1 : backup, 2 : Bypass.
               paths container path
                  path list ne-id ingress-ltp-id backward-peer-id egress-ltp-id forward-peer-id
                     backward-peer-id leaf OID: /service/service-paths/service-path/path-lists/path-list/paths/path/backward-peer-id
                     egress-ltp-id leaf OID: /service/service-paths/service-path/path-lists/path-list/paths/path/egress-ltp-id
                     forward-peer-id leaf OID: /service/service-paths/service-path/path-lists/path-list/paths/path/forward-peer-id
                     ingress-ltp-id leaf OID: /service/service-paths/service-path/path-lists/path-list/paths/path/ingress-ltp-id
                     ne-id leaf OID: /service/service-paths/service-path/path-lists/path-list/paths/path/ne-id
         service-id leaf l2vpn or l3vpn service id.
         source-ac-id leaf source ltp id.
         source-ne-id leaf source ne id.

RPC Methods

RPC Abstract
close-l3vpn input output
create-l3vpn-instance input output
delete-l3vpn-instance input output
inquire-l3vpn-instance-work-path input output
modify-l3vpn-instance-ac-qos input output
modify-l3vpn-instance-basic input output
modify-l3vpn-instance-connection input output