[Search] [txt|pdfized|bibtex] [Tracker] [WG] [Email] [Nits]
Versions: 00 01                                                         
Network Working Group                                   J. Schoenwaelder
Internet-Draft                                                F. Strauss
Expires: May 11, 2001                                    TU Braunschweig
                                                       November 10, 2000


                      SMIng Internet Core Modules
                 draft-irtf-nmrg-sming-inet-modules-00.txt

Status of this Memo

   This document is an Internet-Draft and is in full conformance with
   all provisions of Section 10 of RFC2026.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups. Note that
   other groups may also distribute working documents as
   Internet-Drafts.

   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."



     The list of current Internet-Drafts can be accessed at
     http://www.ietf.org/ietf/1id-abstracts.txt

     The list of Internet-Draft Shadow Directories can be accessed at
     http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on May 11, 2001.

Abstract

   This memo defines SMIng [1] modules for commonly used Internet
   network layer addressing information. The intent is that these
   definitions will be imported and used in other SMIng modules that
   would otherwise define their own representations.

   This document builds on RFC 2851 [3] and extends it in many ways.

Copyright Notice

   Copyright (C) The Internet Society (2000). All Rights Reserved.











Schoenwaelder & Strauss    Expires May 11, 2001                 [Page 1]


Internet-Draft        SMIng Internet Core Modules          November 2000


Table of Contents

   1. IRTF-NMRG-INET . . . . . . . . . . . . . . . . . . . . . . . .   3
   2. IRTF-NMRG-INET-FILTER  . . . . . . . . . . . . . . . . . . . .   8
   3. Security Considerations  . . . . . . . . . . . . . . . . . . .  10
   4. Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . .  11
      References . . . . . . . . . . . . . . . . . . . . . . . . . .  12
      Authors' Addresses . . . . . . . . . . . . . . . . . . . . . .  12











































Schoenwaelder & Strauss    Expires May 11, 2001                 [Page 2]


Internet-Draft        SMIng Internet Core Modules          November 2000


1. IRTF-NMRG-INET

   module IRTF-NMRG-INET {

       organization    "IRTF Network Management Research Group (NMRG),
                        Network Management Group, TU Braunschweig";

       contact         "Juergen Schoenwaelder

                     TU Braunschweig
                        Bueltenweg 74/75
                        38106 Braunschweig
                        Germany

                        Phone: +49 531 391-3266
                     EMail: schoenw@ibr.cs.tu-bs.de";

       description     "This module defines core types and classes for
                        the Internet protocol suite. This document builds
                        upon RFC 2851 and extends it in various ways."

       revision {
           date     "2000-11-10";
           description "Initial revision.";
       };

       //
       // core type definitions for the Internet Protocol suite
       //

       typedef InetPort {
           type            Unsigned32 (0..65535);
           description
              "Represents a 16 bit port number of an Internet
            transport layer protocol.";
       };

       typedef InetProtocol {
           type            Unsigned32 (0..255);
           description
               "Represents an Internet Protocol (IP) protocol number.";
       };

       typedef InetAddress {
           type            OctetString;
           description
               "Represents a generic IP version neutral Internet address.";
       };



Schoenwaelder & Strauss    Expires May 11, 2001                 [Page 3]


Internet-Draft        SMIng Internet Core Modules          November 2000


       typedef InetAddressMask {
           type            Unsigned32;
           description
            "Represents an address prefix length (traditionally called
             an address mask) for generic Internet addresses.";
       };

       //
       // Internet Protocol address types for specific IP versions
       //

       typedef InetAddressType {
        type            Enumeration (unknown(0), ipv4(1), ipv6(2), dns(16));
           description
              "A value that represents a type of Internet address.

               unknown(0)  An unknown address type. This value MUST
                        be used if the value of the corresponding
                        address object is a zero-length string.
                        It may also be used to indicate an IP address
                        which is not in one of the formats defined
                        below.

            ipv4(1)     An IPv4 address as defined by the
                        InetAddressIPv4 type.

            ipv6(2)     An IPv6 address as defined by the
                        InetAddressIPv6 type.

            dns(16)     A DNS domain name as defined by the
                        InetAddressDNS type.

            The type SHOULD NOT be subtyped in object type definitions
            to support future extensions. It MAY be subtyped in
            compliance statements in order to require only a subset of
            these address types for a compliant implementation.";
       };

       typedef InetAddressIPv4 {
           type         InetAddress (4);
           format         "1d.1d.1d.1d";
           description
              "Represents a 32 bit IP version 4 (IPv4) network address:

               octets   contents         encoding
               1-4     IPv4 address       network-byte order

               If there is a corresponding InetAddressType attribute,
               its value MUST be ipv4(1).";


Schoenwaelder & Strauss    Expires May 11, 2001                 [Page 4]


Internet-Draft        SMIng Internet Core Modules          November 2000


           reference       "STD 5 (RFC 791)";
       };

       typedef InetAddressIPv6 {
           type            InetAddress (16 | 20);
           format          "2x:2x:2x:2x:2x:2x:2x:2x%4d";
           description
              "Represents an IPv6 network address:

               octets   contents         encoding
                1-16    IPv6 address     network-byte order
               17-20    scope identifier network-byte order

               If there is a corresponding InetAddressType attribute,
            its value MUST be ipv6(2).

               The scope identifier (bytes 17-20) MUST NOT be present
               for global IPv6 addresses. For non-global IPv6 addresses
               (e.g. link-local or site-local addresses), the scope
               identifier MUST always be present. It contains a link
               identifier for link-local and a site identifier for
               site-local IPv6 addresses.

               The scope identifier MUST disambiguate identical address
               values. For link-local addresses, the scope identifier will
               typically be the interface index (ifIndex as defined in the
               IF-MIB, RFC 2233) of the interface on which the address is
               configured.

               The scope identifier may contain the special value 0
               which refers to the default scope. The default scope
               may be used in cases where the valid scope identifier
               is not known (e.g., a management application needs to
               write a site-local InetAddressIPv6 address without
               knowing the site identifier value). The default scope
               SHOULD NOT be used as an easy way out in cases where
               the scope identifier for a non-global IPv6 is known.";
       };

       typedef InetAddressDNS {
           type            InetAddress (1..255);
           format          "255a";
           description
              "Represents a DNS domain name. The name SHOULD be
               fully qualified whenever possible.

               If there is a corresponding InetAddressType attribute,
            its value MUST be dns(16).



Schoenwaelder & Strauss    Expires May 11, 2001                 [Page 5]


Internet-Draft        SMIng Internet Core Modules          November 2000


               The descriptions of objects of this type must fully describe
               how (and when) such names are to be resolved to IP
               addresses.";
       };

       //
       // generic Internet Protocol endpoints
       //

       class InetEndpoint {
           attribute InetAddressType type {
            access      readwrite;
               description
               "The type of this Internet Protocol endpoint.";
           };
           attribute InetAddress address {
            typemap type {
                map ipv4 InetAddressIPv4,
                map ipv6 InetAddressIPv6,
                map dns  InetAddressDNS
            };
               access      readwrite;
               description
               "The address of this Internet Protocol endpoint.

                An address value is always interpreted within the
                context of the type value. The type attribute defines
                the context.";
           };
           description
            "...";.
       };

       //
       // generic Internet Protocol subnets
       //

       class InetSubnet {
           attribute InetEndpoint endpoint {
                    access      readwrite;
               description
                "An endpoint in the Internet Protocol subnet.";
           }
           attribute InetAddressMask mask {
                    access      readwrite;
            description
                "The address mask which identifies the subnet
                 portion of the address of the endpoint.";
           };


Schoenwaelder & Strauss    Expires May 11, 2001                 [Page 6]


Internet-Draft        SMIng Internet Core Modules          November 2000


           description
            "...";.
       };

       //
       // generic Internet Protocol transport layer endpoints
       //

       class InetTransportEndpoint {
           attribute InetEndpoint address {
            access      readwrite;
            description
                "";
        };
           attribute InetPort     port;
            access      readwrite;
            description
                "";
           description
            "...";.
       };

   };




























Schoenwaelder & Strauss    Expires May 11, 2001                 [Page 7]


Internet-Draft        SMIng Internet Core Modules          November 2000


2. IRTF-NMRG-INET-FILTER

   module IRTF-NMRG-INET-FILTER {

       import IRTF-NMRG-INET (InetPort, InetSubnet);

       organization    "IRTF Network Management Research Group (NMRG),
                        Network Management Group, TU Braunschweig";

       contact         "Juergen Schoenwaelder

                     TU Braunschweig
                        Bueltenweg 74/75
                        38106 Braunschweig
                        Germany

                        Phone: +49 531 391-3266
                     EMail: schoenw@ibr.cs.tu-bs.de";

       description     "This module defines core filter classes for
                        the Internet protocol suite.";

       revision {
           date     "2000-11-10";
           description "Initial revision.";
       };

       class InetPortRange {
           attribute InetPort start {
               access      readwrite;
               description
                "The first port number in the port range.";
           };
           attribute InetPort end {
            access      readwrite;
               description
                "The last port number in the port range.";
           };
           description
              "This class represents a range of consecutive Internet
            transport layer port numbers. The start and end port
            numbers are included in the range of consecutive port
            numbers.";
       };

   class BaseFilter {
       attribute DisplayString name {
        access      readwrite;
        description "...";


Schoenwaelder & Strauss    Expires May 11, 2001                 [Page 8]


Internet-Draft        SMIng Internet Core Modules          November 2000


       };
       attribute Counter64 byteCount {
        access      readonly;
        description "...";
       };
       attribute Counter64 packetCount {
        access      readonly;
        description "...";
       };
   };

   class FiveTupleFilter : BaseFilter {
       attribute InetSubnet srcSubNet {
        description "...";    // description optional?!
       };
       attribute InetSubnet dstSubNet {
        description "...";
       };
       attribute InetPortRange srcPortRange {
        description "...";
       };
       attribute InetPortRange dstPortRange {
        description "...";
       };
       attribute InetProtocol protocol {
        access      readwrite;
        description "...";
       };
   };

   };




















Schoenwaelder & Strauss    Expires May 11, 2001                 [Page 9]


Internet-Draft        SMIng Internet Core Modules          November 2000


3. Security Considerations

   This module does not define any management objects. Instead, it
   defines a set of SMIng types and classes which may be used by other
   SMIng modules to define management objects.

   Meaningful security considerations can only be written in the
   modules that define management objects.











































Schoenwaelder & Strauss    Expires May 11, 2001                [Page 10]


Internet-Draft        SMIng Internet Core Modules          November 2000


4. Acknowledgments

   The document builds on RFC 2851 [3], which was written by M.
   Daniele, B. Haberman, S. Routhier and J. Schoenwaelder.

   The authors would like to thank Randy Bush, Richard Draves, Mark
   Ellison, Bill Fenner, Jun-ichiro Hagino, Tim Jenkins, Glenn
   Mansfield, Keith McCloghrie, Thomas Narten, Erik Nordmark, Peder
   Chr.  Norgaard, Randy Presuhn, Andrew Smith, Dave Thaler, Kenneth
   White, Bert Wijnen, and Brian Zill for their comments and
   suggestions.








































Schoenwaelder & Strauss    Expires May 11, 2001                [Page 11]


Internet-Draft        SMIng Internet Core Modules          November 2000


References

   [1]  Strauss, F., "SMIng - A new Structure of Management
        Information", October 2000.

   [2]  Bradner, S., "Key words for use in RFCs to Indicate Requirement
        Levels", RFC 2119, BCP 14, March 1997.

   [3]  Daniele, M., Haberman, B., Routhier, S., Schoenwaelder, J.,
        "Textual Conventions for Internet Network Addresses", RFC 2851,
        June 2000.

Authors' Addresses

   Juergen Schoenwaelder
   TU Braunschweig
   Bueltenweg 74/75
   38106 Braunschweig
   Germany

   Phone: +49 531 391-3289
   EMail: schoenw@ibr.cs.tu-bs.de
   URI:   http://www.ibr.cs.tu-bs.de/

   Frank Strauss
   TU Braunschweig
   Bueltenweg 74/75
   38106 Braunschweig
   Germany

   Phone: +49 531 391-3266
   EMail: strauss@ibr.cs.tu-bs.de
   URI:   http://www.ibr.cs.tu-bs.de/


















Schoenwaelder & Strauss    Expires May 11, 2001                [Page 12]


Internet-Draft        SMIng Internet Core Modules          November 2000


Full Copyright Statement

   Copyright (C) The Internet Society (2000).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implmentation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph
   are included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
























Schoenwaelder & Strauss    Expires May 11, 2001                [Page 13]