SlideShare a Scribd company logo
1 of 25
Download to read offline
Addressing Network Operator
Challenges in YANG push
Data Mesh Integration
zhuoyao.lin@huawei.com, jean.quilbeuf@huawei.com
ahmed.elhassany@swisscom.com, alex.huang-feng@insa-lyon.fr
benoit.claise@huawei.com, thomas.graf@swisscom.com
24. July 2023
1
Conceptual Tree - Network Configuration
Conceptual Tree - Network State
YANG Model
YANG Model
YANG Model
JSON/CBOR
Schema
ID
REST API
Get Schema
Message broker
YANG Schema Registry
In Data Mesh
YANG Data Store
In Data Mesh
JSON/CBOR
Schema ID
YANG push
notification message
YANG Push
Data Collection
Netconf
<get-schema>
Parse YANG notification
message header to obtain
YANG model and version
mapping.
1
2
3 4
5
6
Data
Ingestion
7
Generate Ingestion
Specification
Data Mesh
• Data Mesh is a big data architecture
where different domains can exchange
data with a bounded context and SLO's
are defined in Data Products. Same
principle as in networks.
• Semantics are needed to describe the
data. A gauge32 is not the same as
counter32. Values can increase or
decrease. Needs monotonic increasing
counter normalization or not.
• Versioning is needed to not only
understand that the semantic has
changed, but also wherever the new
semantic is backward compatible or not.
Preventing to break the data processing
pipeline.
• Hostname, publisher ID, sequence
numbers and observation timestamping
are needed to measure loss and delay for
SLO's.
• YANG push as defined in RFC8641 is
missing hostname, sequence numbers,
observation timestamping and versioning.
draft-ahuang-netconf-notif-yang, draft-
tgraf-netconf-notif-sequencing, draft-
tgraf-yang-push-observation-time and
draft-ietf-netconf-yang-notifications-
versioning addresses this.
When Big Data and Network becomes one
Marrying two messaging protocols
Obtaining YANG semantics and Module dependencies
Overview - Step 1 and 2 in the workflow
Goal: Based on semantic reference in YANG push
message, find YANG module dependencies
module: a-module
+--rw a
+--rw a-instance* [name]
| +--rw name string
| +--rw state? string
+--rw d:y
+--rw d:y-leaf? e:e-enum
The schema for a-module
require to register a-modules, e-
module and d-module.
<subscriptions>
<subscription>
<id>6666</id>
<datastore>ds:operational</datastore>
<datastore-xpath-filter>
/a-module:a
</datastore-xpath-filter>
<encoding>encode-xml</encoding>
<periodic>
<period>30000</period>
</periodic>
</subscription>
</subscriptions>
a-module
d-module
augment
e-module
import
Schema registration Order:
a-module, reference{}
e-module, reference{}
d-module, reference{e-module}
a-module, reference{e-module, d-module}
Obtaining the YANG semantics and Module dependencies
Step 1 – Receiving the YANG Push Message
This message is passed to libyangpush. It indicates that a new subscription with
6666 is created and that subscription targets the xpath /a-module:a.
Before executing the next step, “modules” folder that caches YANG modules
received from the device is empty:
Obtaining the YANG semantics and Module dependencies
Step 2 – Obtaining the YANG semantics
a-module
d-module
augment
e-module
import
Starting from a-module, we discover d-module(augment) then
e-module(import for d-module).
The demo fetches all YANG modules from the NETCONF server, parses the input messages and selects
the corresponding YANG module needed to build the schema for incoming messages on that
subscription to register in the Confluent schema register for serializing the messages in Apache Kafka.
Obtaining the YANG semantics and Module dependencies
Step 3 – Register the YANG Semantics in Confluent Schema Registry
Obtaining the YANG semantics and Module dependencies
Step 3 – Register the YANG Semantics in Confluent Schema Registry
Obtaining the YANG semantics and Module dependencies
Status
Status
• Parse YANG push subscription state change notification messages for
semantic and subscription reference, push-update messages for
subscription reference and cache them.
• Determine YANG module dependencies based on YANG library RFC 8525
• Obtain YANG modules and register in Confluent Schema Registry
• Able to compare two YANG module revisions and determine which part of
the semantics are not backward compatible
8
Transforms
semantic referance
Publishes and subscribes
with semantic reference
Apache Kafka
Message Broker
Timeseries DB
YANG push
receiver
YANG push
publisher
Consolidates
Messages
Transforms semantics
in ingestion specifications
zhuoyao.lin@huawei.com, jean.quilbeuf@huawei.com
ahmed.elhassany@swisscom.com, alex.huang-feng@insa-lyon.fr
benoit.claise@huawei.com, thomas.graf@swisscom.com
24. July 2023
Validating Semantics in YANG Push messages
Status and Next Steps
Status
• YANG modules defines the schema body of the notification message.
• The body of the message is defined as XPath over the YANG module.
• Various RFCs and drafts define the NETCONF envelop to send the message.
• YANG Validators uses special flags to validate notifications:
• yanglint -strict --type nc-notif -f xml notification.yang test.xml
• Kafka serdes expects one schema to describe a message.
Next Step
• Check if the existing validators can validate seamlessly NETCONF and YANG push
envelope extensions.
• Develop algorithm to generate a single YANG module that describe a
full message including the NETCONF and YANG push headers.
• Validate and serialize message in Apache Kafka
9
Transforms
semantic referance
Publishes and subscribes
with semantic reference
Apache Kafka
Message Broker
Timeseries DB
YANG push
receiver
YANG push
publisher
Consolidates
Messages
Transforms semantics
in ingestion specifications
zhuoyao.lin@huawei.com,jean.quilbeuf@huawei.com
ahmed.elhassany@swisscom.com, alex.huang-feng@insa-lyon.fr
benoit.claise@huawei.com,thomas.graf@swisscom.com
24. July 2023
Netconf Working
Group update
Versioning in YANG Notifications Subscription
Status and Next Steps
• -03 NETCONF adoption call concluded
• Feedback from Andy during adoption call
• xpath can refer to more than one YANG module
• subscription section 2 is not fully aligned with section 4.1
• Instead of sn:target, sn:stream-filter, sn:within-subscription and
yp:within-subscription should be augmented
• All addressed in -01 revision
-> Requesting feedback and comments.
11
Transforms
semantic referance
Publishes and subscribes
with semantic reference
Apache Kafka
Message Broker
Timeseries DB
YANG push
receiver
YANG push
publisher
Consolidates
Messages
Transforms semantics
in ingestion specifications
thomas.graf@swisscom.com
benoit.claise@huawei.com
alex.huang-feng@insa-lyon.fr
15. July 2023
module: ietf-yang-push-revision
augment /sn:establish-subscription/sn:input/sn:target/sn:stream
/sn:stream-filter/sn:within-subscription:
+-- module-version* [module-name]
+-- module-name yang:yang-identifier
+-- revision? rev:revision-date-or-label
+-- revision-label? ysver:version
augment /sn:establish-subscription/sn:input/sn:target/yp:datastore
/yp:selection-filter/yp:within-subscription:
+-- module-version* [module-name]
+-- module-name yang:yang-identifier
+-- revision? rev:revision-date-or-label
+-- revision-label? ysver:version
augment /sn:subscription-started/sn:target/sn:stream
/sn:stream-filter/sn:within-subscription:
+--ro module-version* [module-name]
+--ro module-name yang:yang-identifier
+--ro revision rev:revision-date-or-label
+--ro revision-label? ysver:version
augment /sn:subscription-started/sn:target/yp:datastore
/yp:selection-filter/yp:within-subscription:
+--ro module-version* [module-name]
+--ro module-name yang:yang-identifier
+--ro revision rev:revision-date-or-label
+--ro revision-label? ysver:version
Extend Datastore Selection and Subscription State Change Notifications
with module name, revision and revision-label
• Network operators need to control semantics in its
data processing pipeline. That includes YANG push.
• This is today only possible during YANG push
subscription but not when nodes are being
upgraded or messages are being published for
configured subscription.
• draft-ietf-netconf-yang-notifications-versioning
extends the YANG push subscription and publishing
mechanism defined in RFC8641:
• By adding the ability to subscribe to a specific
revision or latest-compatible-semversion of
one or more yang modules.
• By extending the YANG push Subscription
State Change Notifications Message so that
the YANG push receiver learns beside the
xpath and the sub-tree filter also the yang
module name, revision and revision-label.
{
"ietf-restconf:notification" : {
"eventTime": "2023-01-03T10:00:00Z",
"ietf-subscribed-notifications:subscription-modified": {
"id": 101,
"stream-xpath-filter": "/ietf-interfaces:interfaces",
"stream": "NETCONF",
"ietf-yang-push-revision:module-version": [{
"module-name": "ietf-interfaces"
"revision": "2014-05-08",
"revision-label": "1.0.0",
}],
}
}
}
12
Backup
State of the Union
From data mess to data mesh
IETF Data
Industry
Network
Vendor/Operator
Evolving YANG Push
Missing puzzle pieces
YANG Push Today at Network Operators Today at IETF
Transport
Protocol
Many and non-standard netconf-https-notif and netconf-udp-notif
Encoding JSON widely adopted. Propriety
protobuf in various variants. CBOR
not implemented yet.
XML in RFC7950, JSON in RFC7951, CBOR in RFC9254
Subscription Non-standard, periodical widely
adopted. On-change sparse.
RFC8639 and RFC8641
Metadata Non-standard. Partially among
message content.
netconf-yang-notifications-versioning, draft-tgraf-netconf-notif-
sequencing, draft-tgraf-yang-push-observation-time, draft-claise-
opsawg-collected-data-manifest, draft-claise-netconf-metadata-for-
collection
Versioning Neither covered in subscription nor
in publishing.
netmod-yang-module-versioning
YANG module Non-standard widely adopted. IETF
coverage non-existent.
Many RFC's defined
15
YANG datastores enabling Closed Loop Operation
Automated data onboarding with bounded context
YANG is a data modelling language which will
not only transform how we managed our
networks; it will transform also how we
manage our services.
24 industry leading colleagues from 4 network
operators, 2 network and 3 analytics providers,
and 3 universities commit on a project to
integrate YANG and CBOR into data mesh. IETF
117 public side meeting on Monday July 24th
17:00 – 17:45.
Automated networks can only run with a common data model. A digital twin YANG data store enables a
comparison between intent and reality. Schema preservation enables closed loop operation. Closed Loop is like an
autopilot on an airplane. We need to understand what the flight envelope is to keep the airplane within. Without,
we crash.
Conceptual Tree - Network Configuration
Conceptual Tree - Network State
Conceptual Tree - Network Configuration
Conceptual Tree - Network State
YANG Data Store
In Data Mesh
YANG Data Store
in Network Device
Digital Twin Data Mesh
16
From YANG push to Analytics
Aiming for an automated processing pipeline
• A network operator aims for:
• An automated data processing pipeline which starts with YANG push,
consolidates at Data Mesh and ends at Network Analytics.
• Operational metrics where IETF defines the semantics.
• Analytical metrics where network operators gain actionable insights.
• We achieve this by integrating YANG push into Data Mesh to:
• Produce metrics from networks with timestamps when network
events were observed.
• Hostname, Publisher ID and sequence numbers help us to understand
from where metrics were exported and measure its delay and loss.
• Forward metrics unchanged from networks
• Learn semantics from networks and validate messages.
• Control semantic changes end to end.
Transforms
semantic referance
Publishes and subscribes
with semantic reference
Apache Kafka
Message Broker
Timeseries DB
YANG push
receiver
YANG push
publisher
Consolidates
Messages
Transforms semantics
in ingestion specifications
Network Analytics
Uses network semantics
to visualize and validate
17
Evolving Big Data Architecture
Domain oriented, like networks
2nd Generation
3rd Generation
current
Data lake
Big data ecosystem
Kappa
Adds streaming for
real-time data
Proprietary
Enterprise Data Warehouse
1st Generation
4th Generation
next-step
Data Mesh
Distributed and organized
in domains.
Data Infra as a Platform
Operational
Delivery Platform
Analytical
Data Platform
Analytical
Data Plane
Operational
Data Plane
Domain A Domain B Domain C
Federated Computentional
Governance for global interoparabiity
Data Product as a Architectual Quantum
Serve
Collect
Publish
Serve
Collect
Publish
Serve
Collect
Publish
From Principles to Logical Architecture
18
1. A single link down results in multiple device topology, control-
plane and forwarding-plane events being exposed at different
times.
2. Determine which interfaces and BGP peerings are being used
first and then observe state. Observe BGP withdrawals and
updates, traffic drop spikes and missing traffic. Generate
multiple concerns.
3. Calculate for each observation a concern score between 0 and
1. The higher, the more probable the changes impacted
forwarding.
4. Unify several concerns for one VPN connectivity service to one
alert identifier.
Network Event
Observation Strategy
Concern Scoring
Alert Unification
2
3
4
T1
T2 T3
1
From Network to Alert Event
Observe multiple perspectives at different times
19
L3 VPN Network Anomaly Detection
Verify operational changes automatically
Analytical Perspectives
Monitors the network service and
wherever it is congested or not.
> BGP updates and withdrawals.
> UDP vs. TCP missing traffic.
> Interface state changes.
Network Events
1. VPN orange lost connectivity.
VPN blue lost redundancy.
2. VPN blue lost connectivity.
Key Point
> AI/ML requires network intent and
network modelled data to deliver
dependable results.
20
module: ietf-notification
structure notification:
+-- eventTime yang:date-and-time
Define YANG module for Netconf Notifications
Closing the semantic gap
• With RFC 5277 the XML schema for NETCONF event
notification was defined.
• With draft-ahuang-netconf-notif-yang updates RFC 5277 by
defining the schema as a YANG module.
• This enables YANG-push to define semantics for the entire
YANG push message and use other encodings than XML such
as YANG-JSON RFC 7951 or YANG-CBOR RFC 9264.
<notification
xmlns="urn:ietf:params:xml:ns:netconf:notification:1.0">
<eventTime>2023-02-04T16:30:11.22Z</eventTime>
<push-update xmlns="urn:ietf:params:xml:ns:yang:ietf-yang-push">
<id>1011</id>
<datastore-contents>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-
interfaces">
<interface>
<name>eth0</name>
<oper-status>up</oper-status>
</interface>
</interfaces>
</datastore-contents>
</push-update>
</notification>
21
Define YANG module for Netconf Notifications
Status
• The yang module prefix has changed to “inotif” to be more explicit.
• The namespace is changed to the one used in RFC5277 :
urn:ietf:params:xml:ns:netconf:notification:1.0
• In IANA section, instead of asking for a new URI, we ask IANA to add
this document as a reference to the URI from RFC5277
• Requesting NETCONG working group adoption.
Transforms
semantic referance
Publishes and subscribes
with semantic reference
Apache Kafka
Message Broker
Timeseries DB
YANG push
receiver
YANG push
publisher
Consolidates
Messages
Transforms semantics
in ingestion specifications
22
module: ietf-notification-sequencing
augment-structure /inotif:notification:
+-- sysName inet:host
+-- publisherId yang:gauge32
+-- sequenceNumber yang:counter32
Extend Streaming Update Notifications with Hostname and Sequencing
For push-update and push-change-update
• When the NETCONF event notification message is forwarded
from the YANG push receiver to another system, such as a
messaging system or a time series database where the message is
stored, the transport context is lost since it is not part of the
NETCONF event notification message metadata. Therefore, the
downstream system is unable to associate the message to the
publishing process (the exporting router), nor able to detect
message loss or reordering.
• draft-tgraf-netconf-notif-sequencing extends the NETCONF
notification defined in RFC5277 with:
• sysName: Describes the hostname following the 'sysName'
object definition in RFC1213 from where the message was
published from.
• publisherId: netconf-distributed-notif describes the
ability to publish from network processors directly. With
this identifier the publishing process from where the
message was published from can be uniquely identified.
• sequenceNumber: Generates a unique sequence number as
described in RFC9187 for each published message.
<notification
xmlns="urn:ietf:params:xml:ns:netconf:notification:1.0">
<eventTime>2023-02-04T16:30:11.22Z</eventTime>
<sysName xmlns="urn:ietf:params:xml:ns:yang:ietf-notification-
sequencing">
example-router
</sysName>
<publisherId xmlns="urn:ietf:params:xml:ns:yang:ietf-
notification-sequencing">
1
</publisherId>
<sequenceNumber xmlns="urn:ietf:params:xml:ns:yang:ietf-
notification-sequencing">
187653
</sequenceNumber>
<push-update xmlns="urn:ietf:params:xml:ns:yang:ietf-yang-push">
<id>1011</id>
<datastore-contents>
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-
interfaces">
<interface>
<name>eth0</name>
<oper-status>up</oper-status>
</interface>
</interfaces>
</datastore-contents>
</push-update>
</notification>
23
module: ietf-yang-push-netobs-timestamping
augment /yp:push-update:
+--ro observation-time? yang:date-and-time
augment /yp:push-change-update:
+--ro state-changed-observation-time? yang:date-and-time
Extend Streaming Update Notifications with Observation Timestamping
For push-update and push-change-update
• To correlate network data among different Network
Telemetry planes as described in Section 3.1 of RFC9232 or
among different YANG push subscription types defined in
Section 3.1 of RFC8641, network observation timestamping is
needed to understand the timely relationship among these
different planes and YANG push subscription types.
• draft-tgraf-yang-push-observation-time extends the YANG
push streaming update notification defined in RFC8641 with:
• observation-time: Describes the measurement
observation time for the "push-update" notification in a
"periodical" subscription.
• state-changed-observation-time: Describes in the
"push-change-update" notification in an "on-change"
subscription the time when the network state change
was observed after the subscription was initially
established. In case of an "on-change sync on start"
subscription it describes the time when the network
state change was observed before the subscription was
established.
{
"ietf-notification:notification": {
"eventTime": "2023-02-04T16:30:11.22Z",
"sysName": "example-router",
"sequenceNumber": 187653,
"ietf-yang-push:push-update": {
"id": 1011,
"observation-time": "2023-02-04T16:30:09.44Z",
"datastore-xpath-filter": "ietf-interfaces:interfaces",
"datastore-contents": {
"ietf-interfaces:interface": {
"name": {
"eth0": {
"oper-status": "up"
}
}
}
}
}
}
}
24
From YANG push to Analytics
Next steps
• Do you realize the gaps and how it could be resolved?
• By defining a YANG module for NETCONF notification and adding
hostname, publisher ID, sequence number, observation time, YANG
module name, revision and revision-label into YANG push-update and
Subscription State Change notification messages an automated data
processing pipeline which starts with YANG push, consolidates at Data
Mesh and ends at Network Analytics would become at reach.
• -> What are your thoughts and comments?
• -> Interested to learn more? Join the IETF 117 public side meeting on
Monday July24th 17:00-17:45 in room Continental 2-3 or look at the
project page:
https://github.com/graf3net/draft-daisy-kafka-yang-
integration/blob/main/draft-daisy-kafka-yang-integration-04.md
zhuoyao.lin@huawei.com, jean.quilbeuf@huawei.com
ahmed.elhassany@swisscom.com, alex.huang-feng@insa-lyon.fr
benoit.claise@huawei.com, thomas.graf@swisscom.com
24. July 2023
Transforms
semantic referance
Publishes and subscribes
with semantic reference
Apache Kafka
Message Broker
Timeseries DB
YANG push
receiver
YANG push
publisher
Consolidates
Messages
Transforms semantics
in ingestion specifications
Network Analytics
Uses network semantics
to visualize and validate
25

More Related Content

Similar to ietf117-netconf-yang-push-data-mesh-integration.pdf

Distributed & Highly Available server applications in Java and Scala
Distributed & Highly Available server applications in Java and ScalaDistributed & Highly Available server applications in Java and Scala
Distributed & Highly Available server applications in Java and ScalaMax Alexejev
 
IBM MQ - better application performance
IBM MQ - better application performanceIBM MQ - better application performance
IBM MQ - better application performanceMarkTaylorIBM
 
Understanding network and service virtualization
Understanding network and service virtualizationUnderstanding network and service virtualization
Understanding network and service virtualizationSDN Hub
 
slides-117-opsawg-a-data-manifest-for-contextualized-telemetry-data-00.pdf
slides-117-opsawg-a-data-manifest-for-contextualized-telemetry-data-00.pdfslides-117-opsawg-a-data-manifest-for-contextualized-telemetry-data-00.pdf
slides-117-opsawg-a-data-manifest-for-contextualized-telemetry-data-00.pdfThomasGraf42
 
MQ What's New Beyond V8 - V8003 level
MQ What's New Beyond V8 - V8003 levelMQ What's New Beyond V8 - V8003 level
MQ What's New Beyond V8 - V8003 levelMarkTaylorIBM
 
A Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEA Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEQAware GmbH
 
A Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEA Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEMario-Leander Reimer
 
Programming the Network Data Plane
Programming the Network Data PlaneProgramming the Network Data Plane
Programming the Network Data PlaneC4Media
 
Data Pipelines with Kafka Connect
Data Pipelines with Kafka ConnectData Pipelines with Kafka Connect
Data Pipelines with Kafka ConnectKaufman Ng
 
Kafka and event driven architecture -og yatra20
Kafka and event driven architecture -og yatra20Kafka and event driven architecture -og yatra20
Kafka and event driven architecture -og yatra20Vinay Kumar
 
Kafka and event driven architecture -apacoug20
Kafka and event driven architecture -apacoug20Kafka and event driven architecture -apacoug20
Kafka and event driven architecture -apacoug20Vinay Kumar
 
Paper review about NAC & SDN
Paper review about NAC & SDNPaper review about NAC & SDN
Paper review about NAC & SDNKyunghee Univ
 
netconf, restconf, grpc_basic
netconf, restconf, grpc_basicnetconf, restconf, grpc_basic
netconf, restconf, grpc_basicGyewan An
 
OpenStack Networking and Automation
OpenStack Networking and AutomationOpenStack Networking and Automation
OpenStack Networking and AutomationAdam Johnson
 
Cluster_Performance_Apache_Kafak_vs_RabbitMQ
Cluster_Performance_Apache_Kafak_vs_RabbitMQCluster_Performance_Apache_Kafak_vs_RabbitMQ
Cluster_Performance_Apache_Kafak_vs_RabbitMQShameera Rathnayaka
 

Similar to ietf117-netconf-yang-push-data-mesh-integration.pdf (20)

Distributed & Highly Available server applications in Java and Scala
Distributed & Highly Available server applications in Java and ScalaDistributed & Highly Available server applications in Java and Scala
Distributed & Highly Available server applications in Java and Scala
 
NetBrain CE 5.0
NetBrain CE 5.0NetBrain CE 5.0
NetBrain CE 5.0
 
IBM MQ - better application performance
IBM MQ - better application performanceIBM MQ - better application performance
IBM MQ - better application performance
 
Understanding network and service virtualization
Understanding network and service virtualizationUnderstanding network and service virtualization
Understanding network and service virtualization
 
slides-117-opsawg-a-data-manifest-for-contextualized-telemetry-data-00.pdf
slides-117-opsawg-a-data-manifest-for-contextualized-telemetry-data-00.pdfslides-117-opsawg-a-data-manifest-for-contextualized-telemetry-data-00.pdf
slides-117-opsawg-a-data-manifest-for-contextualized-telemetry-data-00.pdf
 
[OSS Upstream Training] 5 open stack liberty_recap
[OSS Upstream Training] 5 open stack liberty_recap[OSS Upstream Training] 5 open stack liberty_recap
[OSS Upstream Training] 5 open stack liberty_recap
 
open stackliberty_recap_by_VietOpenStack
open stackliberty_recap_by_VietOpenStackopen stackliberty_recap_by_VietOpenStack
open stackliberty_recap_by_VietOpenStack
 
MQ What's New Beyond V8 - V8003 level
MQ What's New Beyond V8 - V8003 levelMQ What's New Beyond V8 - V8003 level
MQ What's New Beyond V8 - V8003 level
 
A Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEA Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EE
 
A Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEA Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EE
 
Programming the Network Data Plane
Programming the Network Data PlaneProgramming the Network Data Plane
Programming the Network Data Plane
 
OVS-LinuxCon 2013.pdf
OVS-LinuxCon 2013.pdfOVS-LinuxCon 2013.pdf
OVS-LinuxCon 2013.pdf
 
Data Pipelines with Kafka Connect
Data Pipelines with Kafka ConnectData Pipelines with Kafka Connect
Data Pipelines with Kafka Connect
 
Kafka and event driven architecture -og yatra20
Kafka and event driven architecture -og yatra20Kafka and event driven architecture -og yatra20
Kafka and event driven architecture -og yatra20
 
Kafka and event driven architecture -apacoug20
Kafka and event driven architecture -apacoug20Kafka and event driven architecture -apacoug20
Kafka and event driven architecture -apacoug20
 
Paper review about NAC & SDN
Paper review about NAC & SDNPaper review about NAC & SDN
Paper review about NAC & SDN
 
netconf, restconf, grpc_basic
netconf, restconf, grpc_basicnetconf, restconf, grpc_basic
netconf, restconf, grpc_basic
 
Stonehenge
StonehengeStonehenge
Stonehenge
 
OpenStack Networking and Automation
OpenStack Networking and AutomationOpenStack Networking and Automation
OpenStack Networking and Automation
 
Cluster_Performance_Apache_Kafak_vs_RabbitMQ
Cluster_Performance_Apache_Kafak_vs_RabbitMQCluster_Performance_Apache_Kafak_vs_RabbitMQ
Cluster_Performance_Apache_Kafak_vs_RabbitMQ
 

More from ThomasGraf42

BMP Peer Up Message Namespace
BMP Peer Up Message NamespaceBMP Peer Up Message Namespace
BMP Peer Up Message NamespaceThomasGraf42
 
Semantic Metadata Annotation for Network Anomaly Detection
Semantic Metadata Annotation for Network Anomaly DetectionSemantic Metadata Annotation for Network Anomaly Detection
Semantic Metadata Annotation for Network Anomaly DetectionThomasGraf42
 
UDP-based Transport for Configured Subscriptions
UDP-based Transport for Configured SubscriptionsUDP-based Transport for Configured Subscriptions
UDP-based Transport for Configured SubscriptionsThomasGraf42
 
Subscription to Distributed Notifications
Subscription to Distributed NotificationsSubscription to Distributed Notifications
Subscription to Distributed NotificationsThomasGraf42
 
YANG Grouping for UDP Clients and UDP Servers
YANG Grouping for UDP Clients and UDP ServersYANG Grouping for UDP Clients and UDP Servers
YANG Grouping for UDP Clients and UDP ServersThomasGraf42
 
YANG model for NETCONF Event Notifications
YANG model for NETCONF Event NotificationsYANG model for NETCONF Event Notifications
YANG model for NETCONF Event NotificationsThomasGraf42
 
slides-117-nmrg-sessb-data-management-paradigms-data-fabric-and-data-mesh-00.pdf
slides-117-nmrg-sessb-data-management-paradigms-data-fabric-and-data-mesh-00.pdfslides-117-nmrg-sessb-data-management-paradigms-data-fabric-and-data-mesh-00.pdf
slides-117-nmrg-sessb-data-management-paradigms-data-fabric-and-data-mesh-00.pdfThomasGraf42
 
slides-117-opsawg-modeling-the-digital-map-based-on-rfc8345-sharing-experienc...
slides-117-opsawg-modeling-the-digital-map-based-on-rfc8345-sharing-experienc...slides-117-opsawg-modeling-the-digital-map-based-on-rfc8345-sharing-experienc...
slides-117-opsawg-modeling-the-digital-map-based-on-rfc8345-sharing-experienc...ThomasGraf42
 
slides-117-grow-grow-bmp-enhancements-to-frrouting-00.pdf
slides-117-grow-grow-bmp-enhancements-to-frrouting-00.pdfslides-117-grow-grow-bmp-enhancements-to-frrouting-00.pdf
slides-117-grow-grow-bmp-enhancements-to-frrouting-00.pdfThomasGraf42
 
slides-117-grow-draft-francios-grow-bmp-loc-peer-00.pdf
slides-117-grow-draft-francios-grow-bmp-loc-peer-00.pdfslides-117-grow-draft-francios-grow-bmp-loc-peer-00.pdf
slides-117-grow-draft-francios-grow-bmp-loc-peer-00.pdfThomasGraf42
 
slides-117-grow-bmp-peer-up-message-namespace-00.pdf
slides-117-grow-bmp-peer-up-message-namespace-00.pdfslides-117-grow-bmp-peer-up-message-namespace-00.pdf
slides-117-grow-bmp-peer-up-message-namespace-00.pdfThomasGraf42
 
slides-117-anrw-sessb-daisy-practical-anomaly-detection-in-large-bgpmpls-and-...
slides-117-anrw-sessb-daisy-practical-anomaly-detection-in-large-bgpmpls-and-...slides-117-anrw-sessb-daisy-practical-anomaly-detection-in-large-bgpmpls-and-...
slides-117-anrw-sessb-daisy-practical-anomaly-detection-in-large-bgpmpls-and-...ThomasGraf42
 
BMP Extension for Path Status TLV
BMP Extension for Path Status TLVBMP Extension for Path Status TLV
BMP Extension for Path Status TLVThomasGraf42
 
TLV support for BMP Route Monitoring and Peer Down Messages
TLV support for BMP Route Monitoring and Peer Down MessagesTLV support for BMP Route Monitoring and Peer Down Messages
TLV support for BMP Route Monitoring and Peer Down MessagesThomasGraf42
 
BMP Loc-RIB: Peer address
BMP Loc-RIB: Peer addressBMP Loc-RIB: Peer address
BMP Loc-RIB: Peer addressThomasGraf42
 
UDP-based Transport for Configured Subscriptions
UDP-based Transport for Configured SubscriptionsUDP-based Transport for Configured Subscriptions
UDP-based Transport for Configured SubscriptionsThomasGraf42
 
On-Path delay in Postcard-mode In Situ OAM
On-Path delay in Postcard-mode In Situ OAMOn-Path delay in Postcard-mode In Situ OAM
On-Path delay in Postcard-mode In Situ OAMThomasGraf42
 
YANG Push Workflow
YANG Push WorkflowYANG Push Workflow
YANG Push WorkflowThomasGraf42
 
YANG Schema registry integration update
YANG Schema registry integration updateYANG Schema registry integration update
YANG Schema registry integration updateThomasGraf42
 

More from ThomasGraf42 (20)

BMP Peer Up Message Namespace
BMP Peer Up Message NamespaceBMP Peer Up Message Namespace
BMP Peer Up Message Namespace
 
Semantic Metadata Annotation for Network Anomaly Detection
Semantic Metadata Annotation for Network Anomaly DetectionSemantic Metadata Annotation for Network Anomaly Detection
Semantic Metadata Annotation for Network Anomaly Detection
 
UDP-based Transport for Configured Subscriptions
UDP-based Transport for Configured SubscriptionsUDP-based Transport for Configured Subscriptions
UDP-based Transport for Configured Subscriptions
 
Subscription to Distributed Notifications
Subscription to Distributed NotificationsSubscription to Distributed Notifications
Subscription to Distributed Notifications
 
YANG Grouping for UDP Clients and UDP Servers
YANG Grouping for UDP Clients and UDP ServersYANG Grouping for UDP Clients and UDP Servers
YANG Grouping for UDP Clients and UDP Servers
 
YANG model for NETCONF Event Notifications
YANG model for NETCONF Event NotificationsYANG model for NETCONF Event Notifications
YANG model for NETCONF Event Notifications
 
slides-117-nmrg-sessb-data-management-paradigms-data-fabric-and-data-mesh-00.pdf
slides-117-nmrg-sessb-data-management-paradigms-data-fabric-and-data-mesh-00.pdfslides-117-nmrg-sessb-data-management-paradigms-data-fabric-and-data-mesh-00.pdf
slides-117-nmrg-sessb-data-management-paradigms-data-fabric-and-data-mesh-00.pdf
 
slides-117-opsawg-modeling-the-digital-map-based-on-rfc8345-sharing-experienc...
slides-117-opsawg-modeling-the-digital-map-based-on-rfc8345-sharing-experienc...slides-117-opsawg-modeling-the-digital-map-based-on-rfc8345-sharing-experienc...
slides-117-opsawg-modeling-the-digital-map-based-on-rfc8345-sharing-experienc...
 
slides-117-grow-grow-bmp-enhancements-to-frrouting-00.pdf
slides-117-grow-grow-bmp-enhancements-to-frrouting-00.pdfslides-117-grow-grow-bmp-enhancements-to-frrouting-00.pdf
slides-117-grow-grow-bmp-enhancements-to-frrouting-00.pdf
 
slides-117-grow-draft-francios-grow-bmp-loc-peer-00.pdf
slides-117-grow-draft-francios-grow-bmp-loc-peer-00.pdfslides-117-grow-draft-francios-grow-bmp-loc-peer-00.pdf
slides-117-grow-draft-francios-grow-bmp-loc-peer-00.pdf
 
slides-117-grow-bmp-peer-up-message-namespace-00.pdf
slides-117-grow-bmp-peer-up-message-namespace-00.pdfslides-117-grow-bmp-peer-up-message-namespace-00.pdf
slides-117-grow-bmp-peer-up-message-namespace-00.pdf
 
slides-117-anrw-sessb-daisy-practical-anomaly-detection-in-large-bgpmpls-and-...
slides-117-anrw-sessb-daisy-practical-anomaly-detection-in-large-bgpmpls-and-...slides-117-anrw-sessb-daisy-practical-anomaly-detection-in-large-bgpmpls-and-...
slides-117-anrw-sessb-daisy-practical-anomaly-detection-in-large-bgpmpls-and-...
 
BMP YANG Module
BMP YANG ModuleBMP YANG Module
BMP YANG Module
 
BMP Extension for Path Status TLV
BMP Extension for Path Status TLVBMP Extension for Path Status TLV
BMP Extension for Path Status TLV
 
TLV support for BMP Route Monitoring and Peer Down Messages
TLV support for BMP Route Monitoring and Peer Down MessagesTLV support for BMP Route Monitoring and Peer Down Messages
TLV support for BMP Route Monitoring and Peer Down Messages
 
BMP Loc-RIB: Peer address
BMP Loc-RIB: Peer addressBMP Loc-RIB: Peer address
BMP Loc-RIB: Peer address
 
UDP-based Transport for Configured Subscriptions
UDP-based Transport for Configured SubscriptionsUDP-based Transport for Configured Subscriptions
UDP-based Transport for Configured Subscriptions
 
On-Path delay in Postcard-mode In Situ OAM
On-Path delay in Postcard-mode In Situ OAMOn-Path delay in Postcard-mode In Situ OAM
On-Path delay in Postcard-mode In Situ OAM
 
YANG Push Workflow
YANG Push WorkflowYANG Push Workflow
YANG Push Workflow
 
YANG Schema registry integration update
YANG Schema registry integration updateYANG Schema registry integration update
YANG Schema registry integration update
 

Recently uploaded

一比一原版犹他大学毕业证如何办理
一比一原版犹他大学毕业证如何办理一比一原版犹他大学毕业证如何办理
一比一原版犹他大学毕业证如何办理F
 
Call girls Service Canacona - 8250092165 Our call girls are sure to provide y...
Call girls Service Canacona - 8250092165 Our call girls are sure to provide y...Call girls Service Canacona - 8250092165 Our call girls are sure to provide y...
Call girls Service Canacona - 8250092165 Our call girls are sure to provide y...MOHANI PANDEY
 
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样ayvbos
 
Call girls Service in Ajman 0505086370 Ajman call girls
Call girls Service in Ajman 0505086370 Ajman call girlsCall girls Service in Ajman 0505086370 Ajman call girls
Call girls Service in Ajman 0505086370 Ajman call girlsMonica Sydney
 
Down bad crying at the gym t shirtsDown bad crying at the gym t shirts
Down bad crying at the gym t shirtsDown bad crying at the gym t shirtsDown bad crying at the gym t shirtsDown bad crying at the gym t shirts
Down bad crying at the gym t shirtsDown bad crying at the gym t shirtsrahman018755
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfJOHNBEBONYAP1
 
Research Assignment - NIST SP800 [172 A] - Presentation.pptx
Research Assignment - NIST SP800 [172 A] - Presentation.pptxResearch Assignment - NIST SP800 [172 A] - Presentation.pptx
Research Assignment - NIST SP800 [172 A] - Presentation.pptxi191686
 
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查ydyuyu
 
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac RoomVip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Roommeghakumariji156
 
💚 Call Girls Bahraich 9332606886 High Profile Call Girls You Can Get The S...
💚 Call Girls Bahraich   9332606886  High Profile Call Girls You Can Get The S...💚 Call Girls Bahraich   9332606886  High Profile Call Girls You Can Get The S...
💚 Call Girls Bahraich 9332606886 High Profile Call Girls You Can Get The S...Sareena Khatun
 
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样ayvbos
 
PIC Microcontroller Structure & Assembly Language.ppsx
PIC Microcontroller Structure & Assembly Language.ppsxPIC Microcontroller Structure & Assembly Language.ppsx
PIC Microcontroller Structure & Assembly Language.ppsxjeykeydeveloper
 
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查ydyuyu
 
Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.krishnachandrapal52
 
Sensual Call Girls in Tarn Taran Sahib { 9332606886 } VVIP NISHA Call Girls N...
Sensual Call Girls in Tarn Taran Sahib { 9332606886 } VVIP NISHA Call Girls N...Sensual Call Girls in Tarn Taran Sahib { 9332606886 } VVIP NISHA Call Girls N...
Sensual Call Girls in Tarn Taran Sahib { 9332606886 } VVIP NISHA Call Girls N...kumargunjan9515
 
Best SEO Services Company in Dallas | Best SEO Agency Dallas
Best SEO Services Company in Dallas | Best SEO Agency DallasBest SEO Services Company in Dallas | Best SEO Agency Dallas
Best SEO Services Company in Dallas | Best SEO Agency DallasDigicorns Technologies
 
Russian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi EscortsRussian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi EscortsMonica Sydney
 
Local Call Girls in Seoni 9332606886 HOT & SEXY Models beautiful and charmin...
Local Call Girls in Seoni  9332606886 HOT & SEXY Models beautiful and charmin...Local Call Girls in Seoni  9332606886 HOT & SEXY Models beautiful and charmin...
Local Call Girls in Seoni 9332606886 HOT & SEXY Models beautiful and charmin...kumargunjan9515
 
Indian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi EscortsIndian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi EscortsMonica Sydney
 

Recently uploaded (20)

一比一原版犹他大学毕业证如何办理
一比一原版犹他大学毕业证如何办理一比一原版犹他大学毕业证如何办理
一比一原版犹他大学毕业证如何办理
 
Call girls Service Canacona - 8250092165 Our call girls are sure to provide y...
Call girls Service Canacona - 8250092165 Our call girls are sure to provide y...Call girls Service Canacona - 8250092165 Our call girls are sure to provide y...
Call girls Service Canacona - 8250092165 Our call girls are sure to provide y...
 
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
 
Call girls Service in Ajman 0505086370 Ajman call girls
Call girls Service in Ajman 0505086370 Ajman call girlsCall girls Service in Ajman 0505086370 Ajman call girls
Call girls Service in Ajman 0505086370 Ajman call girls
 
Down bad crying at the gym t shirtsDown bad crying at the gym t shirts
Down bad crying at the gym t shirtsDown bad crying at the gym t shirtsDown bad crying at the gym t shirtsDown bad crying at the gym t shirts
Down bad crying at the gym t shirtsDown bad crying at the gym t shirts
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
 
Research Assignment - NIST SP800 [172 A] - Presentation.pptx
Research Assignment - NIST SP800 [172 A] - Presentation.pptxResearch Assignment - NIST SP800 [172 A] - Presentation.pptx
Research Assignment - NIST SP800 [172 A] - Presentation.pptx
 
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
 
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac RoomVip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
 
💚 Call Girls Bahraich 9332606886 High Profile Call Girls You Can Get The S...
💚 Call Girls Bahraich   9332606886  High Profile Call Girls You Can Get The S...💚 Call Girls Bahraich   9332606886  High Profile Call Girls You Can Get The S...
💚 Call Girls Bahraich 9332606886 High Profile Call Girls You Can Get The S...
 
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
 
PIC Microcontroller Structure & Assembly Language.ppsx
PIC Microcontroller Structure & Assembly Language.ppsxPIC Microcontroller Structure & Assembly Language.ppsx
PIC Microcontroller Structure & Assembly Language.ppsx
 
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
 
Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.
 
Sensual Call Girls in Tarn Taran Sahib { 9332606886 } VVIP NISHA Call Girls N...
Sensual Call Girls in Tarn Taran Sahib { 9332606886 } VVIP NISHA Call Girls N...Sensual Call Girls in Tarn Taran Sahib { 9332606886 } VVIP NISHA Call Girls N...
Sensual Call Girls in Tarn Taran Sahib { 9332606886 } VVIP NISHA Call Girls N...
 
Best SEO Services Company in Dallas | Best SEO Agency Dallas
Best SEO Services Company in Dallas | Best SEO Agency DallasBest SEO Services Company in Dallas | Best SEO Agency Dallas
Best SEO Services Company in Dallas | Best SEO Agency Dallas
 
Russian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi EscortsRussian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
 
Local Call Girls in Seoni 9332606886 HOT & SEXY Models beautiful and charmin...
Local Call Girls in Seoni  9332606886 HOT & SEXY Models beautiful and charmin...Local Call Girls in Seoni  9332606886 HOT & SEXY Models beautiful and charmin...
Local Call Girls in Seoni 9332606886 HOT & SEXY Models beautiful and charmin...
 
Indian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi EscortsIndian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
 

ietf117-netconf-yang-push-data-mesh-integration.pdf

  • 1. Addressing Network Operator Challenges in YANG push Data Mesh Integration zhuoyao.lin@huawei.com, jean.quilbeuf@huawei.com ahmed.elhassany@swisscom.com, alex.huang-feng@insa-lyon.fr benoit.claise@huawei.com, thomas.graf@swisscom.com 24. July 2023 1
  • 2. Conceptual Tree - Network Configuration Conceptual Tree - Network State YANG Model YANG Model YANG Model JSON/CBOR Schema ID REST API Get Schema Message broker YANG Schema Registry In Data Mesh YANG Data Store In Data Mesh JSON/CBOR Schema ID YANG push notification message YANG Push Data Collection Netconf <get-schema> Parse YANG notification message header to obtain YANG model and version mapping. 1 2 3 4 5 6 Data Ingestion 7 Generate Ingestion Specification Data Mesh • Data Mesh is a big data architecture where different domains can exchange data with a bounded context and SLO's are defined in Data Products. Same principle as in networks. • Semantics are needed to describe the data. A gauge32 is not the same as counter32. Values can increase or decrease. Needs monotonic increasing counter normalization or not. • Versioning is needed to not only understand that the semantic has changed, but also wherever the new semantic is backward compatible or not. Preventing to break the data processing pipeline. • Hostname, publisher ID, sequence numbers and observation timestamping are needed to measure loss and delay for SLO's. • YANG push as defined in RFC8641 is missing hostname, sequence numbers, observation timestamping and versioning. draft-ahuang-netconf-notif-yang, draft- tgraf-netconf-notif-sequencing, draft- tgraf-yang-push-observation-time and draft-ietf-netconf-yang-notifications- versioning addresses this. When Big Data and Network becomes one Marrying two messaging protocols
  • 3. Obtaining YANG semantics and Module dependencies Overview - Step 1 and 2 in the workflow Goal: Based on semantic reference in YANG push message, find YANG module dependencies module: a-module +--rw a +--rw a-instance* [name] | +--rw name string | +--rw state? string +--rw d:y +--rw d:y-leaf? e:e-enum The schema for a-module require to register a-modules, e- module and d-module. <subscriptions> <subscription> <id>6666</id> <datastore>ds:operational</datastore> <datastore-xpath-filter> /a-module:a </datastore-xpath-filter> <encoding>encode-xml</encoding> <periodic> <period>30000</period> </periodic> </subscription> </subscriptions> a-module d-module augment e-module import Schema registration Order: a-module, reference{} e-module, reference{} d-module, reference{e-module} a-module, reference{e-module, d-module}
  • 4. Obtaining the YANG semantics and Module dependencies Step 1 – Receiving the YANG Push Message This message is passed to libyangpush. It indicates that a new subscription with 6666 is created and that subscription targets the xpath /a-module:a. Before executing the next step, “modules” folder that caches YANG modules received from the device is empty:
  • 5. Obtaining the YANG semantics and Module dependencies Step 2 – Obtaining the YANG semantics a-module d-module augment e-module import Starting from a-module, we discover d-module(augment) then e-module(import for d-module). The demo fetches all YANG modules from the NETCONF server, parses the input messages and selects the corresponding YANG module needed to build the schema for incoming messages on that subscription to register in the Confluent schema register for serializing the messages in Apache Kafka.
  • 6. Obtaining the YANG semantics and Module dependencies Step 3 – Register the YANG Semantics in Confluent Schema Registry
  • 7. Obtaining the YANG semantics and Module dependencies Step 3 – Register the YANG Semantics in Confluent Schema Registry
  • 8. Obtaining the YANG semantics and Module dependencies Status Status • Parse YANG push subscription state change notification messages for semantic and subscription reference, push-update messages for subscription reference and cache them. • Determine YANG module dependencies based on YANG library RFC 8525 • Obtain YANG modules and register in Confluent Schema Registry • Able to compare two YANG module revisions and determine which part of the semantics are not backward compatible 8 Transforms semantic referance Publishes and subscribes with semantic reference Apache Kafka Message Broker Timeseries DB YANG push receiver YANG push publisher Consolidates Messages Transforms semantics in ingestion specifications zhuoyao.lin@huawei.com, jean.quilbeuf@huawei.com ahmed.elhassany@swisscom.com, alex.huang-feng@insa-lyon.fr benoit.claise@huawei.com, thomas.graf@swisscom.com 24. July 2023
  • 9. Validating Semantics in YANG Push messages Status and Next Steps Status • YANG modules defines the schema body of the notification message. • The body of the message is defined as XPath over the YANG module. • Various RFCs and drafts define the NETCONF envelop to send the message. • YANG Validators uses special flags to validate notifications: • yanglint -strict --type nc-notif -f xml notification.yang test.xml • Kafka serdes expects one schema to describe a message. Next Step • Check if the existing validators can validate seamlessly NETCONF and YANG push envelope extensions. • Develop algorithm to generate a single YANG module that describe a full message including the NETCONF and YANG push headers. • Validate and serialize message in Apache Kafka 9 Transforms semantic referance Publishes and subscribes with semantic reference Apache Kafka Message Broker Timeseries DB YANG push receiver YANG push publisher Consolidates Messages Transforms semantics in ingestion specifications zhuoyao.lin@huawei.com,jean.quilbeuf@huawei.com ahmed.elhassany@swisscom.com, alex.huang-feng@insa-lyon.fr benoit.claise@huawei.com,thomas.graf@swisscom.com 24. July 2023
  • 11. Versioning in YANG Notifications Subscription Status and Next Steps • -03 NETCONF adoption call concluded • Feedback from Andy during adoption call • xpath can refer to more than one YANG module • subscription section 2 is not fully aligned with section 4.1 • Instead of sn:target, sn:stream-filter, sn:within-subscription and yp:within-subscription should be augmented • All addressed in -01 revision -> Requesting feedback and comments. 11 Transforms semantic referance Publishes and subscribes with semantic reference Apache Kafka Message Broker Timeseries DB YANG push receiver YANG push publisher Consolidates Messages Transforms semantics in ingestion specifications thomas.graf@swisscom.com benoit.claise@huawei.com alex.huang-feng@insa-lyon.fr 15. July 2023
  • 12. module: ietf-yang-push-revision augment /sn:establish-subscription/sn:input/sn:target/sn:stream /sn:stream-filter/sn:within-subscription: +-- module-version* [module-name] +-- module-name yang:yang-identifier +-- revision? rev:revision-date-or-label +-- revision-label? ysver:version augment /sn:establish-subscription/sn:input/sn:target/yp:datastore /yp:selection-filter/yp:within-subscription: +-- module-version* [module-name] +-- module-name yang:yang-identifier +-- revision? rev:revision-date-or-label +-- revision-label? ysver:version augment /sn:subscription-started/sn:target/sn:stream /sn:stream-filter/sn:within-subscription: +--ro module-version* [module-name] +--ro module-name yang:yang-identifier +--ro revision rev:revision-date-or-label +--ro revision-label? ysver:version augment /sn:subscription-started/sn:target/yp:datastore /yp:selection-filter/yp:within-subscription: +--ro module-version* [module-name] +--ro module-name yang:yang-identifier +--ro revision rev:revision-date-or-label +--ro revision-label? ysver:version Extend Datastore Selection and Subscription State Change Notifications with module name, revision and revision-label • Network operators need to control semantics in its data processing pipeline. That includes YANG push. • This is today only possible during YANG push subscription but not when nodes are being upgraded or messages are being published for configured subscription. • draft-ietf-netconf-yang-notifications-versioning extends the YANG push subscription and publishing mechanism defined in RFC8641: • By adding the ability to subscribe to a specific revision or latest-compatible-semversion of one or more yang modules. • By extending the YANG push Subscription State Change Notifications Message so that the YANG push receiver learns beside the xpath and the sub-tree filter also the yang module name, revision and revision-label. { "ietf-restconf:notification" : { "eventTime": "2023-01-03T10:00:00Z", "ietf-subscribed-notifications:subscription-modified": { "id": 101, "stream-xpath-filter": "/ietf-interfaces:interfaces", "stream": "NETCONF", "ietf-yang-push-revision:module-version": [{ "module-name": "ietf-interfaces" "revision": "2014-05-08", "revision-label": "1.0.0", }], } } } 12
  • 14. State of the Union From data mess to data mesh IETF Data Industry Network Vendor/Operator
  • 15. Evolving YANG Push Missing puzzle pieces YANG Push Today at Network Operators Today at IETF Transport Protocol Many and non-standard netconf-https-notif and netconf-udp-notif Encoding JSON widely adopted. Propriety protobuf in various variants. CBOR not implemented yet. XML in RFC7950, JSON in RFC7951, CBOR in RFC9254 Subscription Non-standard, periodical widely adopted. On-change sparse. RFC8639 and RFC8641 Metadata Non-standard. Partially among message content. netconf-yang-notifications-versioning, draft-tgraf-netconf-notif- sequencing, draft-tgraf-yang-push-observation-time, draft-claise- opsawg-collected-data-manifest, draft-claise-netconf-metadata-for- collection Versioning Neither covered in subscription nor in publishing. netmod-yang-module-versioning YANG module Non-standard widely adopted. IETF coverage non-existent. Many RFC's defined 15
  • 16. YANG datastores enabling Closed Loop Operation Automated data onboarding with bounded context YANG is a data modelling language which will not only transform how we managed our networks; it will transform also how we manage our services. 24 industry leading colleagues from 4 network operators, 2 network and 3 analytics providers, and 3 universities commit on a project to integrate YANG and CBOR into data mesh. IETF 117 public side meeting on Monday July 24th 17:00 – 17:45. Automated networks can only run with a common data model. A digital twin YANG data store enables a comparison between intent and reality. Schema preservation enables closed loop operation. Closed Loop is like an autopilot on an airplane. We need to understand what the flight envelope is to keep the airplane within. Without, we crash. Conceptual Tree - Network Configuration Conceptual Tree - Network State Conceptual Tree - Network Configuration Conceptual Tree - Network State YANG Data Store In Data Mesh YANG Data Store in Network Device Digital Twin Data Mesh 16
  • 17. From YANG push to Analytics Aiming for an automated processing pipeline • A network operator aims for: • An automated data processing pipeline which starts with YANG push, consolidates at Data Mesh and ends at Network Analytics. • Operational metrics where IETF defines the semantics. • Analytical metrics where network operators gain actionable insights. • We achieve this by integrating YANG push into Data Mesh to: • Produce metrics from networks with timestamps when network events were observed. • Hostname, Publisher ID and sequence numbers help us to understand from where metrics were exported and measure its delay and loss. • Forward metrics unchanged from networks • Learn semantics from networks and validate messages. • Control semantic changes end to end. Transforms semantic referance Publishes and subscribes with semantic reference Apache Kafka Message Broker Timeseries DB YANG push receiver YANG push publisher Consolidates Messages Transforms semantics in ingestion specifications Network Analytics Uses network semantics to visualize and validate 17
  • 18. Evolving Big Data Architecture Domain oriented, like networks 2nd Generation 3rd Generation current Data lake Big data ecosystem Kappa Adds streaming for real-time data Proprietary Enterprise Data Warehouse 1st Generation 4th Generation next-step Data Mesh Distributed and organized in domains. Data Infra as a Platform Operational Delivery Platform Analytical Data Platform Analytical Data Plane Operational Data Plane Domain A Domain B Domain C Federated Computentional Governance for global interoparabiity Data Product as a Architectual Quantum Serve Collect Publish Serve Collect Publish Serve Collect Publish From Principles to Logical Architecture 18
  • 19. 1. A single link down results in multiple device topology, control- plane and forwarding-plane events being exposed at different times. 2. Determine which interfaces and BGP peerings are being used first and then observe state. Observe BGP withdrawals and updates, traffic drop spikes and missing traffic. Generate multiple concerns. 3. Calculate for each observation a concern score between 0 and 1. The higher, the more probable the changes impacted forwarding. 4. Unify several concerns for one VPN connectivity service to one alert identifier. Network Event Observation Strategy Concern Scoring Alert Unification 2 3 4 T1 T2 T3 1 From Network to Alert Event Observe multiple perspectives at different times 19
  • 20. L3 VPN Network Anomaly Detection Verify operational changes automatically Analytical Perspectives Monitors the network service and wherever it is congested or not. > BGP updates and withdrawals. > UDP vs. TCP missing traffic. > Interface state changes. Network Events 1. VPN orange lost connectivity. VPN blue lost redundancy. 2. VPN blue lost connectivity. Key Point > AI/ML requires network intent and network modelled data to deliver dependable results. 20
  • 21. module: ietf-notification structure notification: +-- eventTime yang:date-and-time Define YANG module for Netconf Notifications Closing the semantic gap • With RFC 5277 the XML schema for NETCONF event notification was defined. • With draft-ahuang-netconf-notif-yang updates RFC 5277 by defining the schema as a YANG module. • This enables YANG-push to define semantics for the entire YANG push message and use other encodings than XML such as YANG-JSON RFC 7951 or YANG-CBOR RFC 9264. <notification xmlns="urn:ietf:params:xml:ns:netconf:notification:1.0"> <eventTime>2023-02-04T16:30:11.22Z</eventTime> <push-update xmlns="urn:ietf:params:xml:ns:yang:ietf-yang-push"> <id>1011</id> <datastore-contents> <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf- interfaces"> <interface> <name>eth0</name> <oper-status>up</oper-status> </interface> </interfaces> </datastore-contents> </push-update> </notification> 21
  • 22. Define YANG module for Netconf Notifications Status • The yang module prefix has changed to “inotif” to be more explicit. • The namespace is changed to the one used in RFC5277 : urn:ietf:params:xml:ns:netconf:notification:1.0 • In IANA section, instead of asking for a new URI, we ask IANA to add this document as a reference to the URI from RFC5277 • Requesting NETCONG working group adoption. Transforms semantic referance Publishes and subscribes with semantic reference Apache Kafka Message Broker Timeseries DB YANG push receiver YANG push publisher Consolidates Messages Transforms semantics in ingestion specifications 22
  • 23. module: ietf-notification-sequencing augment-structure /inotif:notification: +-- sysName inet:host +-- publisherId yang:gauge32 +-- sequenceNumber yang:counter32 Extend Streaming Update Notifications with Hostname and Sequencing For push-update and push-change-update • When the NETCONF event notification message is forwarded from the YANG push receiver to another system, such as a messaging system or a time series database where the message is stored, the transport context is lost since it is not part of the NETCONF event notification message metadata. Therefore, the downstream system is unable to associate the message to the publishing process (the exporting router), nor able to detect message loss or reordering. • draft-tgraf-netconf-notif-sequencing extends the NETCONF notification defined in RFC5277 with: • sysName: Describes the hostname following the 'sysName' object definition in RFC1213 from where the message was published from. • publisherId: netconf-distributed-notif describes the ability to publish from network processors directly. With this identifier the publishing process from where the message was published from can be uniquely identified. • sequenceNumber: Generates a unique sequence number as described in RFC9187 for each published message. <notification xmlns="urn:ietf:params:xml:ns:netconf:notification:1.0"> <eventTime>2023-02-04T16:30:11.22Z</eventTime> <sysName xmlns="urn:ietf:params:xml:ns:yang:ietf-notification- sequencing"> example-router </sysName> <publisherId xmlns="urn:ietf:params:xml:ns:yang:ietf- notification-sequencing"> 1 </publisherId> <sequenceNumber xmlns="urn:ietf:params:xml:ns:yang:ietf- notification-sequencing"> 187653 </sequenceNumber> <push-update xmlns="urn:ietf:params:xml:ns:yang:ietf-yang-push"> <id>1011</id> <datastore-contents> <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf- interfaces"> <interface> <name>eth0</name> <oper-status>up</oper-status> </interface> </interfaces> </datastore-contents> </push-update> </notification> 23
  • 24. module: ietf-yang-push-netobs-timestamping augment /yp:push-update: +--ro observation-time? yang:date-and-time augment /yp:push-change-update: +--ro state-changed-observation-time? yang:date-and-time Extend Streaming Update Notifications with Observation Timestamping For push-update and push-change-update • To correlate network data among different Network Telemetry planes as described in Section 3.1 of RFC9232 or among different YANG push subscription types defined in Section 3.1 of RFC8641, network observation timestamping is needed to understand the timely relationship among these different planes and YANG push subscription types. • draft-tgraf-yang-push-observation-time extends the YANG push streaming update notification defined in RFC8641 with: • observation-time: Describes the measurement observation time for the "push-update" notification in a "periodical" subscription. • state-changed-observation-time: Describes in the "push-change-update" notification in an "on-change" subscription the time when the network state change was observed after the subscription was initially established. In case of an "on-change sync on start" subscription it describes the time when the network state change was observed before the subscription was established. { "ietf-notification:notification": { "eventTime": "2023-02-04T16:30:11.22Z", "sysName": "example-router", "sequenceNumber": 187653, "ietf-yang-push:push-update": { "id": 1011, "observation-time": "2023-02-04T16:30:09.44Z", "datastore-xpath-filter": "ietf-interfaces:interfaces", "datastore-contents": { "ietf-interfaces:interface": { "name": { "eth0": { "oper-status": "up" } } } } } } } 24
  • 25. From YANG push to Analytics Next steps • Do you realize the gaps and how it could be resolved? • By defining a YANG module for NETCONF notification and adding hostname, publisher ID, sequence number, observation time, YANG module name, revision and revision-label into YANG push-update and Subscription State Change notification messages an automated data processing pipeline which starts with YANG push, consolidates at Data Mesh and ends at Network Analytics would become at reach. • -> What are your thoughts and comments? • -> Interested to learn more? Join the IETF 117 public side meeting on Monday July24th 17:00-17:45 in room Continental 2-3 or look at the project page: https://github.com/graf3net/draft-daisy-kafka-yang- integration/blob/main/draft-daisy-kafka-yang-integration-04.md zhuoyao.lin@huawei.com, jean.quilbeuf@huawei.com ahmed.elhassany@swisscom.com, alex.huang-feng@insa-lyon.fr benoit.claise@huawei.com, thomas.graf@swisscom.com 24. July 2023 Transforms semantic referance Publishes and subscribes with semantic reference Apache Kafka Message Broker Timeseries DB YANG push receiver YANG push publisher Consolidates Messages Transforms semantics in ingestion specifications Network Analytics Uses network semantics to visualize and validate 25