1 module lispflowmapping {
8 prefix lispflowmapping;
10 import ietf-inet-types {
12 revision-date 2010-09-24;
15 import ietf-yang-types {
17 revision-date 2010-09-24;
20 organization "LISP Flow Mapping";
23 "David Goldberg <david.goldberg@contextream.com>
24 Vina Ermagan <vermagan@cisco.com>";
27 "YANG version of the mapping service.";
29 revision "2013-10-31" {
34 grouping TransportAddress{
35 container TransportAddress {
38 reference "http://www.iana.org/assignments/safi-namespace/safi-namespace.xhtml";
41 type inet:port-number;
46 grouping LispAFIAddress {
49 reference "http://www.iana.org/assignments/safi-namespace/safi-namespace.xhtml";
53 grouping LispNoAddress {
61 grouping LispIpv4Address {
68 type inet:ipv4-address;
69 reference "https://tools.ietf.org/html/rfc3209#section-4.6.2.1";
73 grouping LispIpv6Address {
80 type inet:ipv6-address;
84 grouping LispMacAddress {
91 type yang:mac-address;
95 grouping LispDistinguishedNameAddress {
101 leaf distinguishedName {
107 grouping LispASAddress {
118 grouping LispSimpleAddress {
119 choice primitiveAddress {
124 uses LispIpv4Address;
127 uses LispIpv6Address;
132 case DistinguishedName {
133 uses LispDistinguishedNameAddress;
141 grouping ReencapHop {
143 uses LispSimpleAddress;
159 grouping LispLcafAddress {
167 reference "http://tools.ietf.org/html/draft-ietf-lisp-lcaf-03";
171 grouping LcafSegmentAddress {
172 reference http://tools.ietf.org/html/draft-ietf-lisp-lcaf-03#section-4.1;
173 uses LispLcafAddress{
180 range "0 .. 16777215";
184 uses LispSimpleAddress;
187 grouping LcafTrafficEngineeringAddress {
188 reference http://tools.ietf.org/html/draft-ietf-lisp-lcaf-03#section-4.1;
189 uses LispLcafAddress{
199 grouping LcafListAddress {
200 reference http://tools.ietf.org/html/draft-ietf-lisp-lcaf-03#section-4.1;
201 uses LispLcafAddress{
207 uses LispSimpleAddress;
211 grouping LcafSourceDestAddress {
212 reference "http://tools.ietf.org/html/draft-ietf-lisp-lcaf-03#section-4.11";
213 uses LispLcafAddress{
218 container srcAddress {
219 uses LispSimpleAddress;
221 container dstAddress {
222 uses LispSimpleAddress;
232 grouping LcafKeyValueAddress {
233 reference "http://tools.ietf.org/html/draft-ietf-lisp-lcaf-04#section-4.14";
234 uses LispLcafAddress{
240 uses LispSimpleAddress;
243 uses LispSimpleAddress;
247 grouping LcafApplicationDataAddress {
248 reference "http://tools.ietf.org/html/draft-ietf-lisp-lcaf-03#section-4.11";
249 uses LispLcafAddress{
255 uses LispSimpleAddress;
264 type inet:port-number;
267 type inet:port-number;
272 grouping LispAddress {
273 container LispAddressContainer{
279 uses LispIpv4Address;
282 uses LispIpv6Address;
287 case DistinguishedName {
288 uses LispDistinguishedNameAddress;
294 uses LcafSegmentAddress;
296 case LcafSourceDest {
297 uses LcafSourceDestAddress;
300 uses LcafKeyValueAddress;
303 uses LcafListAddress;
305 case LcafApplicationData {
306 uses LcafApplicationDataAddress;
308 case LcafTrafficEngineering {
309 uses LcafTrafficEngineeringAddress;
316 grouping EidRecords {
328 grouping LocatorRecords {
336 leaf multicastPriority {
339 leaf multicastWeight {
357 grouping EidToLocatorRecord {
370 enum NativelyForward;
381 // locator record list
385 grouping EidToLocatorRecords {
386 list eidToLocatorRecord {
387 uses EidToLocatorRecord;
400 grouping MapRegister {
401 reference "http://tools.ietf.org/html/rfc6830#section-6.1.6";
402 reference "http://tools.ietf.org/html/draft-ermagan-lisp-nat-traversal-05#section-4.3";
406 leaf xtrSiteIdPresent {
418 leaf authenticationData {
421 uses EidToLocatorRecords;
426 reference "http://tools.ietf.org/html/rfc6830#section-6.1.7";
427 reference "http://tools.ietf.org/html/draft-ermagan-lisp-nat-traversal-05#section-4.3";
428 leaf xtrSiteIdPresent {
437 leaf authenticationData {
440 uses EidToLocatorRecords;
444 grouping MapRequest {
445 reference "http://tools.ietf.org/html/rfc6830#section-6.1.2";
449 leaf mapDataPresent {
467 container SourceEid {
475 uses EidToLocatorRecord;
480 reference "http://tools.ietf.org/html/rfc6830#section-6.1.4";
487 leaf echoNonceEnabled {
490 leaf securityEnabled {
493 uses EidToLocatorRecords;
496 grouping MapRegisterNotification {
497 container MapRegister {
500 uses TransportAddress;
504 grouping MapNotifyMessage {
505 container MapNotify {
508 uses TransportAddress;
512 grouping MapRequestMessage {
513 container MapRequest {
516 uses TransportAddress;
520 grouping MapRequestNotification {
521 container MapRequest {
524 uses TransportAddress;
529 grouping MapReplyMessage {
533 uses TransportAddress;
539 uses MapNotifyMessage;
545 uses MapRequestMessage;
551 uses MapReplyMessage;
555 notification addMapping {
556 uses MapRegisterNotification;
559 notification requestMapping {
560 uses MapRequestNotification;
563 notification xtrRequestMapping {
564 uses MapRequestNotification;