smi to xsd translations
DESCRIPTION
SMI to XSD Translations. IETF70 David Harrington. Agenda. The Need The Approaches Comparisons. IETF69 XSDMI BOF. Proposal – a standard XSD translation for SMIv2 types, textual conventions, and macros for MIB definitions - PowerPoint PPT PresentationTRANSCRIPT
SMI to XSD Translations
IETF70
David Harrington
Agenda
• The Need
• The Approaches
• Comparisons
IETF69 XSDMI BOF
• Proposal – a standard XSD translation for SMIv2 types, textual conventions, and macros for MIB definitions
• Goal – any XML-based protocol or implementation can leverage existing SMIv2 types, textual conventions, MIB structures, and existing code.
• BOF Results: 13-0 in favor
Post-BOF
• Decision to bring it to OPSAWG rather than start a whole new WG for this fairly simple work
• YANG proposes an SMI-YANG-XSD translation path using tools.
• Proponents of YANG concerned that a standard SMI-XSD translation would constrain YANG work.
• Concern over competing standards slowed progress.
Moving Forward
• Compare the current YANG tools with the XSDMI definitions, and other SMI-XSD translations of data types, etc.
• Determine how far apart we are
• Determine if we can eliminate differences
• Determine why some differences might be needed.
The Approaches - XSDMI
• Draft-romascanu-netconf-datatypes-00 hand-crafted translations of SMI types and textual conventions
• Goal- to quickly provide types for implementers developing their own proprietary XML data models for Netconf
• Rough consensus on the need.• Work stopped when Romascanu became
AD.
The Approaches - XSDMI
• Work restarted by Li Yan when original authors no longer available.
• SMI is a separate standard from SNMP and from MIB modules, per RFC1052.
• Draft-romascanu-netconf-datatypes-01,02 positioned as protocol-independent translation to meet standard and proprietary needs for Netconf, MIB2RDML, and other uses.
The Approaches - XSDMI
• Libsmi is a popular open-source toolkit for validating MIB modules. Smidump (from libsmi toolkit) can translate a MIB module into XSD.
• Draft-romascanu-netconf-datatypes-01,02 based on documenting the open source code translation algorithms of smidump.
• “Running code” for SMI-XSD translations.
The Approaches – MIB2RDML
• MIB2RDML wants to make existing MIB available for reuse in Web Services environments by providing translations of SMI types, TCs, and structures.
• Leader of MIB2RDML recognized this could be done in two steps – SMI-XSD and then XSD-RDML (and other).
• Bob Natale joined XSDMI team after BOF.
The Approaches – XSDMI/MIB2RDML
• Draft-li-netconf-datatypes-03 unfocused due to competing use cases; confusion over relation to netconf; never published.
• We improved focus on SMIv2 fidelity and netconf-independence.
• New cleaner draft with a new name – draft-li-natale-smi-datatypes-in-xsd-00
• Would like to make this simply an OPSAWG draft – not XSDMI, not YANG, not MIB2RDML
The Approaches - YANG
• YANG is focused on Netconf. Period.
• YANG based on “running code” from multiple sources (Juniper, Tail-f, Ericsson, Bierman, libsmi)
• YANG can import SMI MIB modules (including types, TCs, structures)
• Tools include smidump and pyang.
• Tools provide YANG-to-XSD translations.
The Approaches - YANG
• YANG specs are incomplete. As a result, the tools are still in development
• Current XSD output of tools doesn’t match
Proposal
• I have XSD from – Romascanu-netconf-datatypes-03– Pyang output– Smidump output
• Let’s look these over and decide how different they are.
• Let’s decide whether it makes sense to try to reach consensus on the XSD format
Proposal
• Can these XSD formats be “harmonized”?
• We may need to accept that SMI to XSD translations might differ to meet requirements of different protocols
• If translations are protocol-independent, this is an OPS area task.
• Should this harmonizing be done in OPSAWG?
Thank You
• Questions?