Netmod Working Group M. Betts, Ed.
Internet-Draft ZTE
Intended status: Informational N. Davis, Ed.
Expires: April 27, 2015 Ciena
K. Lam, Ed.
Alcatel-Lucent
B. Zeuner, Ed.
Deutsche Telekom
S. Mansfield, Ed.
Ericsson
P. Doolan, Ed.
Coriant
October 24, 2014

Framework for Deriving Interface Data Schema from UML Information Models
draft-betts-netmod-framework-data-schema-uml-00

Abstract

This draft describes a framework for how interface protocol specific data schema can be systematically derived from an underlying common information model, focusing upon the networking and forwarding domain. The benefit of using such an approach in interface specification development is to promote convergence, interoperability, and efficiency.

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at http://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on April 27, 2015.

Copyright Notice

Copyright (c) 2014 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.


Table of Contents

1. Introduction

Interface specifications are often generated as point solutions where the designer codes a particular interface from domain (problem space) concepts that may not be explicitly captured, may be defined using localized terminology that is subject to ambiguity in interpretation, and is highly focussed on a particular use-case/application. The designer typically provides a representation of the interface schema in the form of a data schema [RFC3444](i.e., data structures conveyed over the interface), which only exposes the view of the domain relevant at that specific interface. As this data schema is a simple statement of the particular interface, it solely describes relationships relevant to the specific realization, having no inherent relationship to other interfaces in the system.

Approaching the development of interface specifications on a per use-case/application basis tends to promote unnecessary variety through a proliferation of similar interfaces, resulting in unnecessary divergences that limit interoperability. It also risks confusion of representational artifacts with fundamental characteristics of the information to be conveyed across the interface. There is also a risk that conflicting representations of the same information may be generated. Finally, each such interface appears to stand alone, thereby failing to capture relationships to other aspects of the same (or different) domains that are not explicitly needed for the interface.

This draft describes a framework for how data schema and their associated purpose-specific interfaces/APIs can be systematically derived from an underlying common information model, focusing upon the networking and forwarding domain. The benefit of using such an approach in the development of interface specifications is to promote convergence, interoperability, and efficiency.

1.1. Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119].

2. Basic Concepts

An information model condenses domain knowledge and insights to provide a representation of its essential concepts, structures, and interrelationships. In capturing domain understanding, such a model offers a coherent and consistent terminology and structure, expresses the semantics of the domain, and interrelates all relevant aspects of the domain. It enables a consistent expression of information that improves interoperability between software components at interfaces derived from it. A "good" information model should capture domain best practices, and be designed to support domain variety as well as extensibility and evolution. Examples of domains include networking and forwarding, storage, etc. A single industry information model is the assembly of all domain information models, which inter-relate at "touch points".

There may be several relevant views of any particular domain, depending upon the perspective of the viewer, all of which are interrelated and involve subsets of the information model, and none of which contradict each other. (It should be noted that one view provides the information model representation of the overall domain.) To form a particular view, some elements of the model may be pruned. Additionally, for efficiency, some systematic refactoring of the information model may also occur.

In this draft, the term data schema is used in the context of either: (i) a specific protocol that is used to implement a purpose specific interface, or (ii) a programming language that is used to invoke a purpose specific API.

While a purpose specific interface/API is not a simple direct encoding of the information model of the overall domain, it is by its nature based on a relevant view of the information model of the domain. It must be completely and consistently traceable to this view and should use the associated domain terminology. Depending on its application, a particular view may lead to a number of encoded forms at various types of interfaces/APIs. The information model does not dictate the encoded form, which will depend upon such factors as necessary capability, interaction style, and programming language.

3. Information Modeling

This section introduces the Unified Modeling Language (UML), which has been used to model application structure, behavior, and architecture (in addition to business process and data structure). It also provides references to existing and ongoing work on standard information models based on UML.

3.1. Unified Modeling Language

The information model is expressed in terms of the Unified Modeling Language (UML) [OMG_UML], which was developed by the Object Management Group. It is a general-purpose modeling language in the field of software engineering. In 2000 the Unified Modeling Language was also accepted by the International Organization for Standardization (ISO) as an approved ISO standard [ISO_IEC_UML]. UML may be used in four ways:

UML defines a number of basic model elements (UML artefacts), such as object classes, attributes, associations, interfaces, operations, operation parameters, data types, etc. In order to assure a consistent and harmonized modelling approach, and to ensure uniformity in the application of UML to a problem domain, a subset of the basic model artefacts should be selected according to guidelines for creating an information model expressed in UML [ONF_UML_Guide]. The guidelines are generic; i.e., they are not specific to any particular domain that the information model is addressing, nor are they restricted to any particular protocol interface data schema.

3.2. Standard UML Information Model

Information models expressed in UML, primarily focused upon the networking and forwarding domain, have been, and are in the process of being, developed in ITU-T, TM Forum, NGMN, 3GPP, MEF, ONF, and others.

ITU-T Recommendations are focused on understanding the telecommunications problem space and developing information models addressing network and network element considerations. Some examples of available standard ITU-T information models relevant to the networking and forwarding domain include:

The above information models are developed from ITU-T Recommendations that define the respective transport technology functional models and management requirements.

The TM Forum community has likewise developed extensive models of the same space from the network level management perspective [TMF_MTNM] [TMF_MTOSI] [TMF_TR225]. The basis for all functions made available to the network level management is defined in the protocol-neutral network element level management work done in ITU-T. Its models thus complement the ITU-T information models. In further collaboration with 3GPP, considerable joint effort has been devoted to develop a consistent and coherent approach to that space.

The NGMN has published a document called Next Generation Converged Operations Requirements (NGCOR) [NGMN_NGCOR], with the expressed purpose of taking these requirements into account when converged management interfaces for mobile and fixed networks are being standardized in the SDOs. An ongoing collaboration called the Multi-SDO Project on Converged Management is taking care that the requirements are considered during the specification of new interfaces. It includes participants from ETSI, NGMN, TMF, 3GPP, and other SDOs, equipment vendors, OS vendors and service providers.

4. From UML IM to Data Schema Definition

This section outlines the steps to be taken in deriving data schema from the information model specifications.

Figure 1 below provides an overview of the structure of a common information model and how purpose specific IM views and data schema may be derived from it.

The common information model is a library of model artefacts organized into a number of information model fragments, to facilitate the independent development of technology and application specific extensions. The core model fragment refers to information model artefacts that could be commonly used regardless of the specific technology or application domain. The forwarding technology specific model fragment refers to technology specific extensions; e.g., for OTN, Ethernet, SDH, etc. The application specific fragment refers to extensions for supporting particular applications. For purposes of navigability, the core information model fragment is itself structured as a series of modules. For example, a module on artefacts for identifiers and naming, a module on artefacts for forwarding aspects that are independent of the specific forwarding technologies, etc.

+-------------------------+
|Common Information Model |
|+-----------------------+|
||Core model fragment    ||
||* module-1             ||
||* module-2             ||                                         
||* ...                  ||                            +-----------+
||* module-n             ||                            |Protocol 1 |
|+-----------------------+|          +----------+ Map  |Interface  |
|+-----------------------+|          |View of   |---+\ |data schema|
||Forwarding technology  ||--------\ |the       |---+/ +-----------+
||specific model fragment|| Prune/  \|Common IM |           
|+-----------------------+| refactor/|for a     |---+\ +-----------+
|+-----------------------+|--------/ |particular|--.+/ |Protocol 2 |
||Application            ||      .   |purpose   || .   |Interface  |
||specific model fragment||--------\ +----------+|  .  |data schema|
|+-----------------------+| Prune/  \ |          ||  . +-----------+
|            .            | refactor/ +----------+|  .
|            .            |--------/   |          |  .
|            .            |   .  .     +----------+  .
|+-----------------------+|    . .        .          .
||xxx                    ||     ..       .           .
||specific model fragment||      .      .            .
|+-----------------------+|       .    .             .
|                         |        .  .              .
+-------------------------+         ..               . 
                 .  .               ..                .
                .    .             .  .                .
               .      .           .    .                .
+-------------.--------.---------.------.----------------.---------- 
|Guidelines  .          .       .        .                .         \
|           .            .     .          .         +-------------  |
| +-----------      +-----------    +-----------    | protocol    \ |
| | Model     \     | Use of    \   | Common    \   | specific    | |
| | structure |     | UML       |   | process   |   | mapping rule| |
| +-----------+     +-----------+   +-----------+   +-------------+ |
+-------------------------------------------------------------------+

            

High-level methodology for deriving interface protocol specific data schema from UML information model

Figure 1

The aforementioned guideline document [ONF_UML_Guide] also provides guidelines for creating a common information model view for a specific purpose. Guidelines are under development for conversion (mapping) from an UML information model into various protocol specific interface data schema such as REST/JSON, Netconf/YANG interface, etc.

Applying such guidelines, protocol-specific interface data schema may be derived from existing, and emerging, standard UML information models addressing the forwarding and networking domains. Examples include MEF 38 [MEF_38] and MEF 39 [MEF_39], which provide YANG modules derived from UML information models G.8052 [ITU-T_G.8052] and MEF 7.1 [MEF_7.1] for Service OAM Fault and Performance Monitoring, respectively. YANG models could be derived for OTN in a similar way using the G.874.1 [ITU-T_G.874.1] UML information model as a base.

The following subsections provide further elaboration of the high-level methodology described above.

4.1. Common Information Model

A common information model includes the objects/packages, their properties (represented as attributes), relationships, etc. that are necessary to describe the domain for the applications being developed. It will be necessary to continually expand and refine the common model over time as new forwarding technologies, capabilities and applications are encompassed and new insights are gained. To allow these extensions to be made in a seamless manner, the common information model is structured into a number of model fragments.

This modelling approach enables application specific and forwarding plane technology specific extensions to be developed independently.

4.2. Common Information Model View for a Specific Purpose

The next step is the development of a purpose specific information model view, which is a subset of the common information model. It is developed by:

4.3. Data Schema

The data schema (DS) is constructed by mapping of the purpose specific information model view and adding the interface protocol specific operations and notifications. The operations should include data structures taken directly from the purpose specific information model view with no further adjustment.

The development of the data schema should consider the following:

5. Acknowledgements

6. Contributors

            Eve Varma
            Alcatel-Lucent
            USA
            email eve.varma@alcatel-lucent.com
	
	  
            Dave Hood
            Ericsson
            USA
            email dave.hood@ericsson.com
	
	  

7. IANA Considerations

This memo includes no request to IANA.

8. Security Considerations

TBD

9. References

9.1. Normative References

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC3444] Pras, A. and J. Schoenwaelder, "On the Difference between Information Models and Data Models", RFC 3444, January 2003.

9.2. Informative References

[ISO_IEC_UML] ISO/IEC, "ISO/IEC 19505-1:2012 - Information technology - Object Management Group Unified Modeling Language (OMG UML) - Part 1: Infrastructure. Iso.org.2012-04-20. Retrieved 2014-04-10", 2012.
[ITU-T_G.8052] ITU-T, "ITU-T G.8052/Y.1346 (2013), Protocol-neutral management information model for the Ethernet Transport capable network element", 2013.
[ITU-T_G.8152] ITU-T, "ITU-T G.8152/Y.1375 (draft in progress), Protocol-neutral management information model for the MPLS-TP network element", 201x.
[ITU-T_G.874.1] ITU-T, "ITU-T G.874.1 (2012), Optical transport network: Protocol-neutral management information model for the network element view", 2012.
[ITU-T_G.gim] ITU-T, "Generic protocol-neutral management Information Model for transport network resources", 201x.
[MEF_38] MEF, "Service OAM Fault Management YANG Modules", 2012.
[MEF_39] MEF, "Service OAM Performance Monitoring YANG Module", 2012.
[MEF_7.1] MEF, "Carrier Ethernet Management Information Model [superseded by MEF 7.2, which supports additional sets of service attributes defined in recent MEF specifications]", 2009.
[NGMN_NGCOR] NGMN Alliance, "Next Generation Converged Operations Requirements (NGCOR)", 2013.
[OMG_UML] OMG, "OMG Unified Modelling Language (UML), Infrastructure, Version 2.4.1", 2011.
[ONF_UML_Guide] ONF, "onf2014.491.03 UML Modeling Guidelines", 2014.
[TMF_MTNM] TM Forum, "TM Forum Multi Technology Network Management, Release 3.5", 2009.
[TMF_MTOSI] TM Forum, "TM Forum Multi Technology OS Interface, Release 3.0", 2012.
[TMF_TR225] TM Forum, "TM Forum TR225, Logical Resource: Network Function Model", 2014.

Appendix A. Additional Stuff

TBD

Authors' Addresses

Malcolm Betts (editor) ZTE Canada Phone: +1 678 534 2542 EMail: malcolm.betts@zte.com.cn
Nigel Davis (editor) Ciena UK EMail: ndavis@ciena.com
Kam Lam (editor) Alcatel-Lucent USA Phone: +1 732 331 3476 EMail: kam.lam@alcatel-lucent.com
Bernd Zeuner (editor) Deutsche Telekom Germany Phone: +49 6151 58 12086 EMail: b.zeuner@telekom.de
Scott Mansfield (editor) Ericsson USA Phone: +1 724 931 9316 EMail: scott.mansfield@ericsson.com
Paul Doolan (editor) Coriant Germany Phone: +1 972 357 5822 EMail: paul.doolan@coriant.com