< draft-meng-savi-yang-00.txt   draft-meng-savi-yang-01.txt >
SAVI W. Meng SAVI W. Meng
Internet-Draft C. Wang Internet-Draft C. Wang
Intended status: Standards Track ZTE Corporation Intended status: Standards Track ZTE Corporation
Expires: January 7, 2016 July 6, 2015 Expires: June 26, 2016 December 24, 2015
YANG Data Model for SAVI YANG Data Model for SAVI
draft-meng-savi-yang-00 draft-meng-savi-yang-01
Abstract Abstract
This document defines a YANG data model for SAVI. This document defines a YANG data model for SAVI.
Status of this Memo Status of this Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 7, 2016. This Internet-Draft will expire on June 26, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2015 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 5, line 7 skipping to change at page 5, line 7
manage the devices by using NETCONF. manage the devices by using NETCONF.
2. Convention and Terminology 2. Convention and Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
3. Design of the Data Model 3. Design of the Data Model
+--savi configuration module: ietf-savi
+--global +--rw savi
| +--rw ip-version +--rw global
| +--rw enable | +--rw ip-version uint8
| +--rw arrange-mode | +--rw enable boolean
| +--rw max-dad-delay | +--rw arrange-mode? uint8
| +--rw max-dad-prepare-delay | +--rw max-dad-delay? uint16
| +--rw max-ns-delay | +--rw max-dad-prepare-delay? uint16
| +--rw dhcp-only | +--rw max-ns-delay? uint16
+--interface | +--rw dhcp-only boolean
| +--interface* [interface-index] +--rw interface
| | +--rw interface-index | +--rw interface* [index]
| | +--rw interface-name[] | +--rw index uint32
| | +--rw enable | +--rw interface-name string
| | +--rw validation-status | +--rw enable boolean
| | +--rw trust-status | +--rw validation-status uint8
| | +--rw filting-number | +--rw filting-number uint8
+--binding +--rw binding
| +--rw binding-info* [ip-addr] | +--rw binding-info* [ip-addr]
| | +--rw ip-addr | +--rw ip-addr inet:ipv6-address
| | +--rw interface-index | +--rw interface-index uint32
| | +--rw ip-addr-type | +--rw ip-addr-type uint8
| | +--rw type | +--rw type uint8
| | +--rw mac-addr | +--rw mac-addr yang:mac-address
| | +--rw status | +--rw status uint8
| | +--rw lifetime | +--rw lifetime uint32
| | +--rw row-status | +--rw row-status uint8
+--filtering +--rw filtering
| +--rw filtering-info* [interface-index] +--rw filtering-info* [interface-index]
| | +--rw ip-addr[] +--rw ip-addr? inet:ipv6-address
| | +--rw interface-index +--rw interface-index uint32
| | +--rw ip-addr-type +--rw ip-addr-type uint8
| | +--rw mac-addr +--rw mac-addr yang:mac-address
+--global
4. SAVI YANG Model 4. SAVI YANG Model
This module imports typedefs from [RFC6991]. This module imports typedefs from [RFC6991].
module ietf-savi { <CODE BEGINS> file "ietf-savi@2015-12-24.yang"
namespace "urn:ietf:params:xml:ns:yang:ietf-savi";
prefix "savi";
organization
"Internet Engineer Task Force";
contact
Editor: Wei Meng module ietf-savi {
<mailto:meng.wei2@zte.com.cn> namespace "urn:ietf:params:xml:ns:yang:ietf-savi";
Editor: Cui Wang prefix "savi";
<mailto:wang.cui1@zte.com.cn>
description "TBD"; import ietf-interfaces {
prefix "if";
}
revision 2015-07-06 { import ietf-inet-types {
description "Initial revision"; prefix "inet";
} }
import ietf-yang-types { import ietf-yang-types {
prefix yang; prefix yang;
} }
import ietf-inet-types { organization
prefix "inet"; "IETF SAVI Working Group";
} contact
"
Editor: Wei Meng
<mailto:meng.wei2@zte.com.cn>
Editor: Cui Wang
<mailto:wang.cui1@zte.com.cn>
";
description "The YANG module defines a generic configuration model for SAVI";
import ietf-interfaces { revision 2015-12-24 {
prefix "if"; description "01 revision.";
} reference "draft-meng-savi-yang-01";
}
//data defs revision 2015-07-06 {
container configuration { description "Initial revision";
description 'Configuration model info.' ; reference "draft-meng-savi-yang-00";
container savi { }
description 'Configure SAVI parameters.' ;
container global{ /* Configuration Data */
description 'Global configuration.' ;
presence global-config ;
leaf ip-version {
description 'IP Version.' ;
type uint8 ;
mandatory true ;
}
leaf enable {
description 'Enable.' ;
type boolean ;
mandatory true ;
}
leaf arrange-mode {
description 'Arrange mode.' ;
type uint8 ;
}
leaf max-dad-delay {
description 'Max DAD delay time.' ;
type uint16 {
range 1..4094 {
description 'The value of delay time,it must between 1 to 409'
+ '4.'
;
}
}
}
leaf max-dad-prepare-delay {
description 'Max DAD prepare delay time.' ;
type uint16 {
range 1..4094 {
description 'The value of delay time,it must between 1 to 409'
+ '4.'
;
}
}
}
leaf max-ns-delay { container savi {
description 'Max NS delay time.' ; description 'Configure SAVI parameters.' ;
type uint16 {
range 1..4094 {
description 'The value of delay time,it must between 1 to 409'
+ '4.'
;
}
}
}
leaf dhcp-only {
description 'DHCP ONLY.' ;
type boolean ;
mandatory true ;
}
} container global{
leaf ip-version {
type uint8 ;
mandatory true ;
description 'IP Version.' ;
}
leaf enable {
type boolean ;
mandatory true ;
description 'Enable.' ;
}
leaf arrange-mode {
type uint8 ;
description 'Arrange mode.' ;
}
leaf max-dad-delay {
type uint16 {
range 1..4094 {
description 'The value of delay time,it must between 1 to 409'
+ '4.'
;
}
}
description 'Max DAD delay time.' ;
}
leaf max-dad-prepare-delay {
type uint16 {
range 1..4094 {
description 'The value of delay time,it must between 1 to 409'
+ '4.'
;
}
}
description 'Max DAD prepare delay time.' ;
}
leaf max-ns-delay {
type uint16 {
range 1..4094 {
description 'The value of delay time,it must between 1 to 409'
+ '4.'
;
}
}
description 'Max NS delay time.' ;
}
leaf dhcp-only {
type boolean ;
mandatory true ;
description 'DHCP ONLY.' ;
}
description 'Global configuration.' ;
}
container interface { container interface {
description 'Interface.' ; list interface {
list interface { key index ;
description 'Interface.' ; leaf index {
key index ; type uint32 {
leaf index { range 1..16777215 {
description 'Interface index.' ; description 'The value of index,it must between 1 to 16777215.' ;
type uint32 { }
range 1..16777215 { }
description 'The value of index,it must between 1 to 16777215.' ; description 'Interface index.' ;
} }
} leaf interface-name {
} type string;
leaf interface-name { mandatory true;
mandatory true; description 'Interface name.' ;
type string; }
} leaf enable {
leaf enable { type boolean;
mandatory true; mandatory true;
type boolean; description 'Enable.' ;
} }
leaf validation-status { leaf validation-status {
mandatory true; type uint8;
type uint8; mandatory true;
} description 'Validation status.' ;
leaf filting-number { }
mandatory true; leaf filting-number {
type uint8; type uint8;
} mandatory true;
} description 'Filting number.' ;
} }
description 'Interface.' ;
}
description 'Interface.' ;
}
container binding { container binding {
description 'Binding information.' ; list binding-info {
list binding-info { key ip-addr ;
description 'Binding information.' ; leaf ip-addr {
key ip-addr ; type inet:ipv6-address;
leaf ip-addr { description 'IP address.' ;
description 'IP address.' ; }
type inet:ipv6-address; leaf interface-index {
} type uint32;
} mandatory true;
} description 'Interface index.' ;
leaf interface-index { }
mandatory true; leaf ip-addr-type {
type uint32; type uint8;
mandatory true;
description 'IP Address type.' ;
}
leaf type {
type uint8;
mandatory true;
description 'Binding type.' ;
}
leaf mac-addr {
type yang:mac-address;
mandatory true;
description 'Mac Address.' ;
}
leaf status {
type uint8;
mandatory true;
description 'The status of binding information.' ;
}
leaf lifetime {
type uint32;
mandatory true;
description 'The lifetime of binding information.' ;
}
leaf row-status {
type uint8;
mandatory true;
description 'The row status of binding information.' ;
}
description 'Binding information.' ;
}
description 'Binding information.' ;
}
} container filtering {
leaf ip-addr-type { list filtering-info {
mandatory true; key interface-index;
type uint8; leaf ip-addr {
} type inet:ipv6-address;
leaf type { description 'IP address.' ;
mandatory true;
type uint8;
}
leaf mac-addr {
mandatory true;
type yang:mac-address;
}
leaf status {
mandatory true;
type uint8;
}
leaf lifetime {
mandatory true;
type uint32;
}
leaf row-status {
mandatory true;
type uint8;
}
}
}
container filtering { }
description 'Filtering information.' ; leaf interface-index {
list filtering-info { type uint32;
description 'Filtering information.' ; mandatory true;
key interface-index; description 'Interface index.' ;
leaf ip-addr { }
description 'IP address.' ; leaf ip-addr-type {
type inet:ipv6-address; type uint8;
} mandatory true;
} description 'IP Address type.' ;
} }
leaf interface-index { leaf mac-addr {
mandatory true; type yang:mac-address;
type uint32; mandatory true;
} description 'Mac address.' ;
leaf ip-addr-type { }
mandatory true; description 'Filtering information.' ;
type uint8; }
} description 'Filtering information.' ;
leaf mac-addr { }
mandatory true;
type yang:mac-address;
}
} }
} }
}
} <CODE ENDS>
}
5. Security Considerations 5. Security Considerations
This document has no additional security considerations. This document has no additional security considerations.
6. Acknowledgements 6. Acknowledgements
7. Normative References 7. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/
RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC6020] Bjorklund, M., "YANG - A Data Modeling Language for the [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for
Network Configuration Protocol (NETCONF)", RFC 6020, the Network Configuration Protocol (NETCONF)", RFC 6020,
October 2010. DOI 10.17487/RFC6020, October 2010,
<http://www.rfc-editor.org/info/rfc6020>.
[RFC6991] Schoenwaelder, J., "Common YANG Data Types", RFC 6991, [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types",
July 2013. RFC 6991, DOI 10.17487/RFC6991, July 2013,
<http://www.rfc-editor.org/info/rfc6991>.
Authors' Addresses Authors' Addresses
Wei Meng Wei Meng
ZTE Corporation ZTE Corporation
No.50 Software Avenue, Yuhuatai District No.50 Software Avenue, Yuhuatai District
Nanjing Nanjing
China China
Email: meng.wei2@zte.com.cn,vally.meng@gmail.com Email: meng.wei2@zte.com.cn,vally.meng@gmail.com
 End of changes. 23 change blocks. 
223 lines changed or deleted 243 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/