diff options
author | 2018-10-05 12:47:19 +0000 | |
---|---|---|
committer | 2018-10-05 12:47:19 +0000 | |
commit | 4bd9155af11ee506ffc85e786315ce04002b1563 (patch) | |
tree | e38c6ed470bd1ea4ee2925237a55f4a78e2b0f62 /platform-logic/restconfapi-yang/src/main/yang/sotn/ietf-eth-tran-types@2018-05-24.yang | |
parent | 016d84a110c0587f561f1ec198e4f1883611e0f9 (diff) | |
parent | 2b5c534429df9abf2d6435959a17c9deaab8de7a (diff) |
Merge "Allow YANG sub directories"
Former-commit-id: afd2af123ff00f4c92c3b5461c88cb560fc1773f
Diffstat (limited to 'platform-logic/restconfapi-yang/src/main/yang/sotn/ietf-eth-tran-types@2018-05-24.yang')
-rw-r--r-- | platform-logic/restconfapi-yang/src/main/yang/sotn/ietf-eth-tran-types@2018-05-24.yang | 303 |
1 files changed, 303 insertions, 0 deletions
diff --git a/platform-logic/restconfapi-yang/src/main/yang/sotn/ietf-eth-tran-types@2018-05-24.yang b/platform-logic/restconfapi-yang/src/main/yang/sotn/ietf-eth-tran-types@2018-05-24.yang new file mode 100644 index 00000000..3775f36b --- /dev/null +++ b/platform-logic/restconfapi-yang/src/main/yang/sotn/ietf-eth-tran-types@2018-05-24.yang @@ -0,0 +1,303 @@ +module ietf-eth-tran-types { + namespace "urn:ietf:params:xml:ns:yang:ietf-eth-tran-types"; + prefix "etht-types"; + + organization + "Internet Engineering Task Force (IETF) CCAMP WG"; + contact + " + WG List: <mailto:ccamp@ietf.org> + ID-draft editor: + Haomian Zheng (zhenghaomian@huawei.com); + Italo Busi (italo.busi@huawei.com); + Aihua Guo (aihuaguo@huawei.com); + Yunbin Xu (xuyunbin@ritt.cn); + Yang Zhao (zhaoyangyjy@chinamobile.com); + Xufeng Liu (Xufeng_Liu@jabil.com); + Giuseppe Fioccola (giuseppe.fioccola@telecomitalia.it); + "; + + description + "This module defines the ETH transport types."; + + revision 2018-05-24 { + description + "Initial revision"; + reference + "draft-zheng-ccamp-client-signal-yang"; + } + + /* + * Identities + */ + + identity eth-vlan-tag-type { + description + "ETH VLAN tag type."; + } + + identity c-vlan-tag-type { + base eth-vlan-tag-type; + description + "802.1Q Customer VLAN"; + } + + identity s-vlan-tag-type { + base eth-vlan-tag-type; + description + "802.1Q Service VLAN (QinQ)"; + } + + identity service-classification-type { + description + "Service classification."; + } + + identity port-classification { + base service-classification-type; + description + "Port classification."; + } + + identity vlan-classification { + base service-classification-type; + description + "VLAN classification."; + } + + identity eth-vlan-tag-classify { + description + "VLAN tag classification."; + } + + identity classify-c-vlan { + base eth-vlan-tag-classify; + description + "Classify 802.1Q Customer VLAN tag. + Only C-tag type is accepted"; + } + + identity classify-s-vlan { + base eth-vlan-tag-classify; + description + "Classify 802.1Q Service VLAN (QinQ) tag. + Only S-tag type is accepted"; + } + + identity classify-s-or-c-vlan { + base eth-vlan-tag-classify; + description + "Classify S-VLAN or C-VLAN tag-classify. + Either tag is accepted"; + } + + identity bandwidth-profile-type { + description + "Bandwidth Profile Types"; + } + + identity mef-10-bwp { + base bandwidth-profile-type; + description + "MEF 10 Bandwidth Profile"; + } + identity rfc-2697-bwp { + base bandwidth-profile-type; + description + "RFC 2697 Bandwidth Profile"; + } + + identity rfc-2698-bwp { + base bandwidth-profile-type; + description + "RFC 2698 Bandwidth Profile"; + } + + identity rfc-4115-bwp { + base bandwidth-profile-type; + description + "RFC 4115 Bandwidth Profile"; + } + + identity service-type { + description + "Type of Ethernet service."; + } + + identity p2p-svc { + base service-type; + description + "Ethernet point-to-point service (EPL, EVPL)."; + } + + identity rmp-svc { + base service-type; + description + "Ethernet rooted-multitpoint service (E-TREE, EP-TREE)."; + } + + identity mp2mp-svc { + base service-type; + description + "Ethernet multipoint-to-multitpoint service (E-LAN, EP-LAN)."; + } + + /* + * Type Definitions + */ + + typedef eth-tag-type { + type identityref { + base eth-vlan-tag-type; + } + description + "Identifies a specific ETH VLAN tag type."; + } + + typedef eth-tag-classify { + type identityref { + base eth-vlan-tag-classify; + } + description + "Identifies a specific VLAN tag classification."; + } + + typedef vlanid { + type uint16 { + range "1..4094"; + } + description + "The 12-bit VLAN-ID used in the VLAN Tag header."; + } + + typedef vid-range-type { + type string { + pattern "([1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?" + + "(,[1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?)*)"; + } + description + "A list of VLAN Ids, or non overlapping VLAN ranges, in + ascending order, between 1 and 4094. + This type is used to match an ordered list of VLAN Ids, or + contiguous ranges of VLAN Ids. Valid VLAN Ids must be in the + range 1 to 4094, and included in the list in non overlapping + ascending order. + For example: 1,10-100,50,500-1000"; + } + + typedef bandwidth-profile-type { + type identityref { + base bandwidth-profile-type; + } + description + "Identifies a specific Bandwidth Profile type."; + } + + typedef service-type { + type identityref { + base service-type; + } + description + "Identifies the type of Ethernet service."; + } + + /* + * Grouping Definitions + */ + + grouping etht-bandwidth-profiles { + description + "Bandwidth profile configuration paramters."; + + leaf bandwidth-profile-name { + type string; + description + "Name of the bandwidth profile."; + } + leaf bandwidth-profile-type { + type etht-types:bandwidth-profile-type; + description + "The type of bandwidth profile."; + } + leaf CIR { + type uint64; + description + "Committed Information Rate in Kbps"; + } + leaf CBS { + type uint64; + description + "Committed Burst Size in in KBytes"; + } + leaf EIR { + type uint64; +/* + * Open Issue: need to indicate that EIR is not supported by RFC 2697 + * must + * '../bw-profile-type = "mef-10-bwp" or ' + + * '../bw-profile-type = "rfc-2698-bwp" or ' + + * '../bw-profile-type = "rfc-4115-bwp"' + * + * must + * '../bw-profile-type != "rfc-2697-bwp"' +*/ + description + "Excess Information Rate in Kbps + In case of RFC 2698, PIR = CIR + EIR"; + } + leaf EBS { + type uint64; + description + "Excess Burst Size in KBytes. + In case of RFC 2698, PBS = CBS + EBS"; + } + leaf color-aware { + type boolean; + description + "Indicates weather the color-mode is color-aware or color-blind."; + } + leaf coupling-flag { + type boolean; +/* + * Open issue: need to indicate that Coupling Flag is defined only for MEF 10 + * + * must + * '../bw-profile-type = "mef-10-bwp"' + */ + description + "Coupling Flag."; + } + } + + grouping eth-bandwidth { + leaf eth-bandwidth { + type uint64 { + range "0..10000000000"; + } + units "Kbps"; + description + "Available bandwith value expressed in kilobits per second"; + } + } + + grouping eth-label-restriction { + container eth-label-restriction { + leaf tag-type { + type etht-types:eth-tag-type; + description "VLAN tag type."; + } + leaf priority { + type uint8; + description "priority."; + } + } + } + + grouping eth-label { + leaf vlanid { + type etht-types:vlanid; + description + "VLAN tag id."; + } + } +}
\ No newline at end of file |