rfc9418v2.txt | rfc9418.txt | |||
---|---|---|---|---|
Internet Engineering Task Force (IETF) B. Claise | Internet Engineering Task Force (IETF) B. Claise | |||
Request for Comments: 9418 J. Quilbeuf | Request for Comments: 9418 J. Quilbeuf | |||
Category: Standards Track Huawei | Category: Standards Track Huawei | |||
ISSN: 2070-1721 P. Lucente | ISSN: 2070-1721 P. Lucente | |||
NTT | NTT | |||
P. Fasano | P. Fasano | |||
TIM S.p.A | TIM S.p.A | |||
T. Arumugam | T. Arumugam | |||
Cisco Systems, Inc. | Consultant | |||
June 2023 | July 2023 | |||
A YANG Data Model for Service Assurance | A YANG Data Model for Service Assurance | |||
Abstract | Abstract | |||
This document specifies YANG modules for representing assurance | This document specifies YANG modules for representing assurance | |||
graphs. These graphs represent the assurance of a given service by | graphs. These graphs represent the assurance of a given service by | |||
decomposing it into atomic assurance elements called subservices. | decomposing it into atomic assurance elements called subservices. | |||
The companion document, "Service Assurance for Intent-Based | The companion document, "Service Assurance for Intent-Based | |||
Networking Architecture" (RFC 9417), presents an architecture for | Networking Architecture" (RFC 9417), presents an architecture for | |||
skipping to change at line 198 ¶ | skipping to change at line 198 ¶ | |||
* device: Whether a device is healthy, and if not, what are the | * device: Whether a device is healthy, and if not, what are the | |||
symptoms? Such a subservice might monitor the device resources, | symptoms? Such a subservice might monitor the device resources, | |||
such as CPU, RAM, or Ternary Content-Addressable Memory (TCAM). | such as CPU, RAM, or Ternary Content-Addressable Memory (TCAM). | |||
Potential symptoms are "CPU overloaded", "Out of RAM", or "Out of | Potential symptoms are "CPU overloaded", "Out of RAM", or "Out of | |||
TCAM". | TCAM". | |||
* ip-connectivity: Given two IP addresses bound to two devices, what | * ip-connectivity: Given two IP addresses bound to two devices, what | |||
is the quality of the IP connectivity between them? Potential | is the quality of the IP connectivity between them? Potential | |||
symptoms are "No route available" or "Equal-Cost Multipaths | symptoms are "No route available" or "Equal-Cost Multipaths | |||
(ECMPs) Imbalance". | (ECMPs) imbalance". | |||
An instance of the device subservice is representing a subpart of the | An instance of the device subservice is representing a subpart of the | |||
network system, namely a specific device. An instance of the ip- | network system, namely a specific device. An instance of the ip- | |||
connectivity subservice is representing a feature of the network, | connectivity subservice is representing a feature of the network, | |||
namely the connectivity between two specific IP addresses on two | namely the connectivity between two specific IP addresses on two | |||
devices. In both cases, these subservices might depend on other | devices. In both cases, these subservices might depend on other | |||
subservices, for instance, the connectivity might depend on a | subservices, for instance, the connectivity might depend on a | |||
subservice representing the routing system and on a subservice | subservice representing the routing system and on a subservice | |||
representing ECMPs. | representing ECMPs. | |||
skipping to change at line 244 ¶ | skipping to change at line 244 ¶ | |||
expected to appear only once in the global assurance graph even if | expected to appear only once in the global assurance graph even if | |||
several service instances depend on it. For example, an instance of | several service instances depend on it. For example, an instance of | |||
the device subservice is a dependency of every service instance that | the device subservice is a dependency of every service instance that | |||
relies on the corresponding device. The assurance graph of a | relies on the corresponding device. The assurance graph of a | |||
specific service instance is the subgraph obtained by traversing the | specific service instance is the subgraph obtained by traversing the | |||
global assurance graph through the dependencies, starting from the | global assurance graph through the dependencies, starting from the | |||
specific service instance. | specific service instance. | |||
An assurance agent configured with such a graph is expected to | An assurance agent configured with such a graph is expected to | |||
produce, for each configured subservice, a health status that | produce, for each configured subservice, a health status that | |||
indicates how healthy the subservice is. If the the subservice is | indicates how healthy the subservice is. If the subservice is not | |||
not healthy, the agent is expected to produce a list of symptoms | healthy, the agent is expected to produce a list of symptoms | |||
explaining why the subservice is not healthy. | explaining why the subservice is not healthy. | |||
3.2. Tree View | 3.2. Tree View | |||
The following tree diagram [RFC8340] provides an overview of the | The following tree diagram [RFC8340] provides an overview of the | |||
"ietf-service-assurance" module. | "ietf-service-assurance" module. | |||
module: ietf-service-assurance | module: ietf-service-assurance | |||
+--ro assurance-graph-last-change yang:date-and-time | +--ro assurance-graph-last-change yang:date-and-time | |||
+--rw subservices | +--rw subservices | |||
skipping to change at line 450 ¶ | skipping to change at line 450 ¶ | |||
Keeping the history of the graph structure is out of scope for this | Keeping the history of the graph structure is out of scope for this | |||
YANG module. Only the current version of the assurance graph can be | YANG module. Only the current version of the assurance graph can be | |||
fetched. In order to keep the history of the graph structure, some | fetched. In order to keep the history of the graph structure, some | |||
time-series database (TSDB) or similar storage must be used. | time-series database (TSDB) or similar storage must be used. | |||
3.3. YANG Module | 3.3. YANG Module | |||
This model contains references to [RFC6991]. | This model contains references to [RFC6991]. | |||
<CODE BEGINS> file "ietf-service-assurance@2023-06-02.yang" | <CODE BEGINS> file "ietf-service-assurance@2023-07-11.yang" | |||
module ietf-service-assurance { | module ietf-service-assurance { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:ietf-service-assurance"; | namespace "urn:ietf:params:xml:ns:yang:ietf-service-assurance"; | |||
prefix sain; | prefix sain; | |||
import ietf-yang-types { | import ietf-yang-types { | |||
prefix yang; | prefix yang; | |||
reference | reference | |||
"RFC 6991: Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
skipping to change at line 503 ¶ | skipping to change at line 503 ¶ | |||
Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
to the license terms contained in, the Revised BSD License | to the license terms contained in, the Revised BSD License | |||
set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
Relating to IETF Documents | Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info). | (https://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC 9418; see the | This version of this YANG module is part of RFC 9418; see the | |||
RFC itself for full legal notices. "; | RFC itself for full legal notices. "; | |||
revision 2023-06-02 { | revision 2023-07-11 { | |||
description | description | |||
"Initial version."; | "Initial version."; | |||
reference | reference | |||
"RFC 9418: YANG Modules for Service Assurance"; | "RFC 9418: YANG Modules for Service Assurance"; | |||
} | } | |||
identity subservice-base { | identity subservice-base { | |||
description | description | |||
"Base identity for subservice types."; | "Base identity for subservice types."; | |||
} | } | |||
skipping to change at line 779 ¶ | skipping to change at line 779 ¶ | |||
description | description | |||
"List of dependencies of the subservice."; | "List of dependencies of the subservice."; | |||
uses subservice-dependency; | uses subservice-dependency; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
container agents { | container agents { | |||
config false; | config false; | |||
description | description | |||
"Container for the list of agents's symptoms."; | "Container for the list of agents' symptoms."; | |||
list agent { | list agent { | |||
key "id"; | key "id"; | |||
description | description | |||
"Contains symptoms of each agent involved in computing the | "Contains symptoms of each agent involved in computing the | |||
health status of the current graph. This list acts as a | health status of the current graph. This list acts as a | |||
glossary for understanding the symptom ids returned by each | glossary for understanding the symptom ids returned by each | |||
agent."; | agent."; | |||
leaf id { | leaf id { | |||
type string; | type string; | |||
description | description | |||
skipping to change at line 990 ¶ | skipping to change at line 990 ¶ | |||
assuring the health of a device. | assuring the health of a device. | |||
The typical parameter for the configuration of the device subservice | The typical parameter for the configuration of the device subservice | |||
is the name of the device that we want to assure. By augmenting the | is the name of the device that we want to assure. By augmenting the | |||
parameter choice from the "ietf-service-assurance" YANG module for | parameter choice from the "ietf-service-assurance" YANG module for | |||
the case of the "device-type" subservice type, this new parameter is | the case of the "device-type" subservice type, this new parameter is | |||
specified. | specified. | |||
5.3. YANG Module | 5.3. YANG Module | |||
<CODE BEGINS> file "ietf-service-assurance-device@2023-06-02.yang" | <CODE BEGINS> file "ietf-service-assurance-device@2023-07-11.yang" | |||
module ietf-service-assurance-device { | module ietf-service-assurance-device { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace | namespace | |||
"urn:ietf:params:xml:ns:yang:ietf-service-assurance-device"; | "urn:ietf:params:xml:ns:yang:ietf-service-assurance-device"; | |||
prefix sain-device; | prefix sain-device; | |||
import ietf-service-assurance { | import ietf-service-assurance { | |||
prefix sain; | prefix sain; | |||
reference | reference | |||
"RFC 9418: YANG Modules for Service Assurance"; | "RFC 9418: YANG Modules for Service Assurance"; | |||
skipping to change at line 1027 ¶ | skipping to change at line 1027 ¶ | |||
Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
to the license terms contained in, the Revised BSD License | to the license terms contained in, the Revised BSD License | |||
set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
Relating to IETF Documents | Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info). | (https://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC 9418; see the | This version of this YANG module is part of RFC 9418; see the | |||
RFC itself for full legal notices. "; | RFC itself for full legal notices. "; | |||
revision 2023-06-02 { | revision 2023-07-11 { | |||
description | description | |||
"Initial revision."; | "Initial revision."; | |||
reference | reference | |||
"RFC 9418: YANG Modules for Service Assurance"; | "RFC 9418: YANG Modules for Service Assurance"; | |||
} | } | |||
identity device-type { | identity device-type { | |||
base sain:subservice-base; | base sain:subservice-base; | |||
description | description | |||
"Identity of device subservice."; | "Identity of device subservice."; | |||
skipping to change at line 1097 ¶ | skipping to change at line 1097 ¶ | |||
the name of the device and, on that specific device, a specific | the name of the device and, on that specific device, a specific | |||
interface. These parameters are aligned with the "ietf-interfaces" | interface. These parameters are aligned with the "ietf-interfaces" | |||
model described in [RFC8343], where the name of the interface is the | model described in [RFC8343], where the name of the interface is the | |||
only key needed to identify an interface on a given device. By | only key needed to identify an interface on a given device. By | |||
augmenting the parameter choice from the "ietf-service-assurance" | augmenting the parameter choice from the "ietf-service-assurance" | |||
YANG module for the case of the interface-type subservice type, those | YANG module for the case of the interface-type subservice type, those | |||
two new parameters are specified. | two new parameters are specified. | |||
6.3. YANG Module | 6.3. YANG Module | |||
<CODE BEGINS> file "ietf-service-assurance-interface@2023-06-02.yang" | <CODE BEGINS> file "ietf-service-assurance-interface@2023-07-11.yang" | |||
module ietf-service-assurance-interface { | module ietf-service-assurance-interface { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace | namespace | |||
"urn:ietf:params:xml:ns:yang:ietf-service-assurance-interface"; | "urn:ietf:params:xml:ns:yang:ietf-service-assurance-interface"; | |||
prefix sain-interface; | prefix sain-interface; | |||
import ietf-service-assurance { | import ietf-service-assurance { | |||
prefix sain; | prefix sain; | |||
reference | reference | |||
"RFC 9418: YANG Modules for Service Assurance"; | "RFC 9418: YANG Modules for Service Assurance"; | |||
skipping to change at line 1136 ¶ | skipping to change at line 1136 ¶ | |||
Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
to the license terms contained in, the Revised BSD License | to the license terms contained in, the Revised BSD License | |||
set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
Relating to IETF Documents | Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info). | (https://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC 9418; see the | This version of this YANG module is part of RFC 9418; see the | |||
RFC itself for full legal notices. "; | RFC itself for full legal notices. "; | |||
revision 2023-06-02 { | revision 2023-07-11 { | |||
description | description | |||
"Initial revision."; | "Initial revision."; | |||
reference | reference | |||
"RFC 9418: YANG Modules for Service Assurance"; | "RFC 9418: YANG Modules for Service Assurance"; | |||
} | } | |||
identity interface-type { | identity interface-type { | |||
base sain:subservice-base; | base sain:subservice-base; | |||
description | description | |||
"Checks whether an interface is healthy."; | "Checks whether an interface is healthy."; | |||
skipping to change at line 1329 ¶ | skipping to change at line 1329 ¶ | |||
and R. Wilton, "Network Management Datastore Architecture | and R. Wilton, "Network Management Datastore Architecture | |||
(NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, | (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, | |||
<https://www.rfc-editor.org/info/rfc8342>. | <https://www.rfc-editor.org/info/rfc8342>. | |||
[RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol | [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol | |||
Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, | Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, | |||
<https://www.rfc-editor.org/info/rfc8446>. | <https://www.rfc-editor.org/info/rfc8446>. | |||
[RFC9417] Claise, B., Quilbeuf, J., Lopez, D., Voyer, D., and T. | [RFC9417] Claise, B., Quilbeuf, J., Lopez, D., Voyer, D., and T. | |||
Arumugam, "Service Assurance for Intent-Based Networking | Arumugam, "Service Assurance for Intent-Based Networking | |||
Architecture", RFC 9417, DOI 10.17487/RFC9417, June 2023, | Architecture", RFC 9417, DOI 10.17487/RFC9417, July 2023, | |||
<https://www.rfc-editor.org/info/rfc9417>. | <https://www.rfc-editor.org/info/rfc9417>. | |||
9.2. Informative References | 9.2. Informative References | |||
[RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | |||
BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | |||
<https://www.rfc-editor.org/info/rfc8340>. | <https://www.rfc-editor.org/info/rfc8340>. | |||
[RFC8343] Bjorklund, M., "A YANG Data Model for Interface | [RFC8343] Bjorklund, M., "A YANG Data Model for Interface | |||
Management", RFC 8343, DOI 10.17487/RFC8343, March 2018, | Management", RFC 8343, DOI 10.17487/RFC8343, March 2018, | |||
skipping to change at line 1408 ¶ | skipping to change at line 1408 ¶ | |||
contact | contact | |||
"WG Web: <https://datatracker.ietf.org/wg/opsawg/> | "WG Web: <https://datatracker.ietf.org/wg/opsawg/> | |||
WG List: <mailto:opsawg@ietf.org> | WG List: <mailto:opsawg@ietf.org> | |||
Author: Benoit Claise <mailto:benoit.claise@huawei.com> | Author: Benoit Claise <mailto:benoit.claise@huawei.com> | |||
Author: Jean Quilbeuf <mailto:jean.quilbeuf@huawei.com>"; | Author: Jean Quilbeuf <mailto:jean.quilbeuf@huawei.com>"; | |||
description | description | |||
"This example module extends the ietf-service-assurance-device | "This example module extends the ietf-service-assurance-device | |||
module to add specific support for devices of the Acme | module to add specific support for devices of the Acme | |||
Corporation. "; | Corporation. "; | |||
revision 2023-06-02 { | revision 2023-07-11 { | |||
description | description | |||
"Initial revision."; | "Initial revision."; | |||
reference | reference | |||
"RFC 9418: YANG Modules for Service Assurance"; | "RFC 9418: YANG Modules for Service Assurance"; | |||
} | } | |||
identity device-acme-type { | identity device-acme-type { | |||
base sain-device:device-type; | base sain-device:device-type; | |||
description | description | |||
"Network device is healthy."; | "Network device is healthy."; | |||
skipping to change at line 1601 ¶ | skipping to change at line 1601 ¶ | |||
WG List: <mailto:opsawg@ietf.org> | WG List: <mailto:opsawg@ietf.org> | |||
Author: Benoit Claise <mailto:benoit.claise@huawei.com> | Author: Benoit Claise <mailto:benoit.claise@huawei.com> | |||
Author: Jean Quilbeuf <mailto:jean.quilbeuf@huawei.com>"; | Author: Jean Quilbeuf <mailto:jean.quilbeuf@huawei.com>"; | |||
description | description | |||
"This example module augments the ietf-service-assurance module | "This example module augments the ietf-service-assurance module | |||
to add support for the subservice ip-connectivity. | to add support for the subservice ip-connectivity. | |||
It checks whether the IP connectivity between two IP addresses | It checks whether the IP connectivity between two IP addresses | |||
belonging to two network devices is healthy."; | belonging to two network devices is healthy."; | |||
revision 2023-06-02 { | revision 2023-07-11 { | |||
description | description | |||
"Initial version."; | "Initial version."; | |||
reference | reference | |||
"RFC 9418: YANG Modules for Service Assurance"; | "RFC 9418: YANG Modules for Service Assurance"; | |||
} | } | |||
identity ip-connectivity-type { | identity ip-connectivity-type { | |||
base sain:subservice-base; | base sain:subservice-base; | |||
description | description | |||
"Checks connectivity between two IP addresses."; | "Checks connectivity between two IP addresses."; | |||
skipping to change at line 1677 ¶ | skipping to change at line 1677 ¶ | |||
"WG Web: <https://datatracker.ietf.org/wg/opsawg/> | "WG Web: <https://datatracker.ietf.org/wg/opsawg/> | |||
WG List: <mailto:opsawg@ietf.org> | WG List: <mailto:opsawg@ietf.org> | |||
Author: Benoit Claise <mailto:benoit.claise@huawei.com> | Author: Benoit Claise <mailto:benoit.claise@huawei.com> | |||
Author: Jean Quilbeuf <mailto:jean.quilbeuf@huawei.com>"; | Author: Jean Quilbeuf <mailto:jean.quilbeuf@huawei.com>"; | |||
description | description | |||
"This example module augments the ietf-service-assurance module | "This example module augments the ietf-service-assurance module | |||
to add support for the subservice is-is. | to add support for the subservice is-is. | |||
It checks whether an IS-IS instance is healthy."; | It checks whether an IS-IS instance is healthy."; | |||
revision 2023-06-02 { | revision 2023-07-11 { | |||
description | description | |||
"Initial version."; | "Initial version."; | |||
reference | reference | |||
"RFC 9418: YANG Modules for Service Assurance"; | "RFC 9418: YANG Modules for Service Assurance"; | |||
} | } | |||
identity is-is-type { | identity is-is-type { | |||
base sain:subservice-base; | base sain:subservice-base; | |||
description | description | |||
"Health of IS-IS routing protocol."; | "Health of IS-IS routing protocol."; | |||
skipping to change at line 1896 ¶ | skipping to change at line 1896 ¶ | |||
Appendix D. YANG Library for Service Assurance | Appendix D. YANG Library for Service Assurance | |||
This section provides the JSON encoding of the YANG library [RFC8525] | This section provides the JSON encoding of the YANG library [RFC8525] | |||
that lists all modules defined in this document and their | that lists all modules defined in this document and their | |||
dependencies. This library can be used to validate data instances | dependencies. This library can be used to validate data instances | |||
using yangson, as explained in the previous section. | using yangson, as explained in the previous section. | |||
{ | { | |||
"ietf-yang-library:modules-state": { | "ietf-yang-library:modules-state": { | |||
"module-set-id": "ietf-service-assurance@2023-06-02", | "module-set-id": "ietf-service-assurance@2023-07-11", | |||
"module": [ | "module": [ | |||
{ | { | |||
"name": "ietf-service-assurance", | "name": "ietf-service-assurance", | |||
"namespace": | "namespace": | |||
"urn:ietf:params:xml:ns:yang:ietf-service-assurance", | "urn:ietf:params:xml:ns:yang:ietf-service-assurance", | |||
"revision": "2023-06-02", | "revision": "2023-07-11", | |||
"conformance-type": "implement" | "conformance-type": "implement" | |||
}, | }, | |||
{ | { | |||
"name": "ietf-service-assurance-device", | "name": "ietf-service-assurance-device", | |||
"namespace": | "namespace": | |||
"urn:ietf:params:xml:ns:yang:ietf-service-assurance-device", | "urn:ietf:params:xml:ns:yang:ietf-service-assurance-device", | |||
"revision": "2023-06-02", | "revision": "2023-07-11", | |||
"conformance-type": "implement" | "conformance-type": "implement" | |||
}, | }, | |||
{ | { | |||
"name": "ietf-service-assurance-interface", | "name": "ietf-service-assurance-interface", | |||
"namespace": | "namespace": | |||
"urn:ietf:params:xml:ns:yang:ietf-service-assurance-interface", | "urn:ietf:params:xml:ns:yang:ietf-service-assurance-interface", | |||
"revision": "2023-06-02", | "revision": "2023-07-11", | |||
"conformance-type": "implement" | "conformance-type": "implement" | |||
}, | }, | |||
{ | { | |||
"name": "example-service-assurance-device-acme", | "name": "example-service-assurance-device-acme", | |||
"namespace": | "namespace": | |||
"urn:example:example-service-assurance-device-acme", | "urn:example:example-service-assurance-device-acme", | |||
"revision": "2023-06-02", | "revision": "2023-07-11", | |||
"conformance-type": "implement" | "conformance-type": "implement" | |||
}, | }, | |||
{ | { | |||
"name": "example-service-assurance-is-is", | "name": "example-service-assurance-is-is", | |||
"namespace": "urn:example:example-service-assurance-is-is", | "namespace": "urn:example:example-service-assurance-is-is", | |||
"revision": "2023-06-02", | "revision": "2023-07-11", | |||
"conformance-type": "implement" | "conformance-type": "implement" | |||
}, | }, | |||
{ | { | |||
"name": "example-service-assurance-ip-connectivity", | "name": "example-service-assurance-ip-connectivity", | |||
"namespace": | "namespace": | |||
"urn:example:example-service-assurance-ip-connectivity", | "urn:example:example-service-assurance-ip-connectivity", | |||
"revision": "2023-06-02", | "revision": "2023-07-11", | |||
"conformance-type": "implement" | "conformance-type": "implement" | |||
}, | }, | |||
{ | { | |||
"name": "ietf-yang-types", | "name": "ietf-yang-types", | |||
"namespace": "urn:ietf:params:xml:ns:yang:ietf-yang-types", | "namespace": "urn:ietf:params:xml:ns:yang:ietf-yang-types", | |||
"revision": "2013-07-05", | "revision": "2013-07-05", | |||
"conformance-type": "import" | "conformance-type": "import" | |||
}, | }, | |||
{ | { | |||
"name": "ietf-inet-types", | "name": "ietf-inet-types", | |||
skipping to change at line 1986 ¶ | skipping to change at line 1986 ¶ | |||
Netherlands | Netherlands | |||
Email: paolo@ntt.net | Email: paolo@ntt.net | |||
Paolo Fasano | Paolo Fasano | |||
TIM S.p.A | TIM S.p.A | |||
via G. Reiss Romoli, 274 | via G. Reiss Romoli, 274 | |||
10148 Torino | 10148 Torino | |||
Italy | Italy | |||
Email: paolo2.fasano@telecomitalia.it | Email: paolo2.fasano@telecomitalia.it | |||
Thangam Arumugam | Thangavelu Arumugam | |||
Cisco Systems, Inc. | Consultant | |||
Milpitas, California | Milpitas, California | |||
United States of America | United States of America | |||
Email: thangavelu@yahoo.com | Email: thangavelu@yahoo.com | |||
End of changes. 22 change blocks. | ||||
25 lines changed or deleted | 25 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. |