Working TT docs for IETF UCP WG
Paul Zawada <zawada@ncsa.uiuc.edu> Mon, 02 November 1992 20:46 UTC
Received: from ietf.nri.reston.va.us by IETF.CNRI.Reston.VA.US id aa19160;
2 Nov 92 15:46 EST
Received: from CNRI.RESTON.VA.US by IETF.CNRI.Reston.VA.US id aa19156;
2 Nov 92 15:46 EST
Received: from nic.near.net by CNRI.Reston.VA.US id aa03270; 2 Nov 92 15:47 EST
Received: from nic.near.net by nic.near.net id aa12032; 2 Nov 92 15:44 EST
Received: from newton.ncsa.uiuc.edu by nic.near.net id aa12025;
2 Nov 92 15:42 EST
Received: from bliga.ncsa.uiuc.edu by newton.ncsa.uiuc.edu with SMTP id AA27996
(5.65a/IDA-1.4.2 for ucp@nic.near.net); Mon, 2 Nov 92 14:42:04 -0600
Return-Path: <zawada@ncsa.uiuc.edu>
Received: by bliga.ncsa.uiuc.edu (4.1/NCSA-4.1)
id AA05555; Mon, 2 Nov 92 14:42:01 CST
Date: Mon, 2 Nov 92 14:42:01 CST
Sender: ietf-archive-request@IETF.CNRI.Reston.VA.US
From: Paul Zawada <zawada@ncsa.uiuc.edu>
Message-Id: <9211022042.AA05555@bliga.ncsa.uiuc.edu>
To: ucp@nic.near.net
Subject: Working TT docs for IETF UCP WG
Hi Folks...
Well, it is getting close to the IETF meeting, so Kaj Tesink and I have
both been working on our TT documents. Kaj is currently traveling, so
I am sending mail for the two of us.
You may recall Kaj and I were working on two separate documents. Kaj's
task was to develop a spec for passing TT's in RFC822 mail. My task was
to continue to refine the ASN.1 description of inter-NOC trouble tickets.
While we hoped to combine the two before the next meeting, I am not so sure
that my schedule will allow a very refined combination of the two. (I must
appologize to Kaj, since his part was ready in August... I simply have not
had much extra time to devote to these specs.)
*** What this email includes ****
1. Kaj Tesink's e-mail trouble ticket spec. Note: this is only a
"first pass" I anticipate much input from the UCP group.
2. The latest and greatest of the ASN.1 description we've tossed
around at the UCP meetings. I've encorporated many of the
suggestions made at the last meeting.
3. A "sample" trouble ticket (hopefully) based on the ASN.1
description.
********************************
Caveats: Kaj wanted me to mention some unresolved points at the offset:
- He uses many keywords in the message body. Should some of these
keywords be placed in the mail header? Personally, I feel that we
should keep the TT distinct from the mail header. This keeps
the TT independent from the mail platform it is running on.
- He uses ip addresses. He also has specific entries for ping and SNMP.
Should we be protocol specific? I don't think so.. In fact, the
ASN.1 description does not go into any detail whatsoever in the
description of the problem. It currently stands as free text so
the person making the ticket can put in anything he likes; ping
or SNMP reachability, route problems, number of photons lost, etc...
- He mentions NOC subscription and unsolicited notifications, although
no formal procedure is written yet. How do we want to handle
distribution of tickets to NOCs not involved in the problem?
- And timestamps... We discussed this in some detail at the last
meeting, although I cannot not recall a clear "winner." Kaj
suggests the 822 timestamp, while I prefer the GMT output returned
by the UNIX "date -u" command. I beleive GMT was the more favored
format but I can't recall... Can we settle this one last time?
Some things to mention about the ASN.1 description...
- Recall that we're using the SMI used for SNMP. (I can't recall
what RFC that is off the top of my head.) We need a slightly
different definition for the ACCESS attribute. Since we are not
communicating with an agent, read-only and read-write need different
meanings. I propose that read-only mean that an entry cannot be
changed once it is created. A read-write attribute would then be
defined as one which could be altered at a later time, such as the
number of NSCs in the NSC list, etc.
- While I have tried to write my sample TT to closely follow the ASN.1
descritption, I am not an ASN.1 guru. I need help verifying the ASN.1
descritption to make sure it actually defines a trouble ticket as I
depict below. Most errors will be that I incorrectly wrote the ASN.1
description, not the ticket!
- I have not double checked the "STATUS" attribute of most variables
in the description, so some may be wrong...
I think the biggest thing we need to address right now is what documents
are really needed. Personally, looking at the following texts, I think
we ought to develop two documents out of the work done thus far.
1. A formal description of the TT presumably passed along a mail
a mail message. (Right now we assume 822-mail, would this
fit into MIME as well?) This would include methods used to
pass a TT from one NSC to another.
2. A description of a system system which tickets could be collected
and redistributed. Perhaps we should include the notion of public
and private tickets in the first document. The redistribution
system would only redistribute public tickets.
I feel that it is important to establish 1 and get that done first.
We can worry about #2 later.
In the next week I hope to come up with some sort of document to combine
the TT mail spec with the ASN.1 spec. I will send that out as soon as
possible. I do not expect an immediate response on any of the documents
I send out today. This mail message is more of a "heads-up" so people
can be prepared for the meeting. So, PLEASE READ THESE DOCS BEFORE THE
MEETING! (However, I will gladly accept any constructive criticism or
comments in the meantime...)
Hopefully you will be hearing from me again soon...
--zawada
-----------------------------------ENCLOSURES-----------------------
1. DRAFT of RFC822 submission of trouble tickets.........
=====================================================================
D R A F T
Network Working Group Kaj Tesink
Request For Comments: Bellcore
July 1992
Support of the NOC Trouble Submission Facility by
RFC822 based message exchange
Status of This Memo
This memo provides information for the Internet community. It does
not specify an Internet standard. Distribution of this memo is
unlimited.
Abstract
This memo suggests a straight-forward approach towards supporting
RFC-NOCTSF
via RFC 822 based message exchange.
Table of Contents
1. Background
2. Overview
3. Notationa Conventions
4. Lexical Analysis of Messages
5. Mapping of the RFC-NOCTSF to RFC822 messages
5.1. Trouble Ticket Request syntax
5.1.1. Use of the Subject and Message body fields
5.1.2. TTLocalOriginatorId
5.1.3. TTComment
5.1.4. TTLocalProblemCode
5.1.5. TTSNMPObserved
5.1.6. TTSNMPExpected
5.1.7. TTPing
5.2. Trouble Ticket Reply syntax
5.2.1. Use of the Subject and Message body fields
5.2.2. TTLocalOriginatorId
5.2.3. TTComment
5.2.4. TTLocalProblemCode
5.2.5. TTSNMPObserved
5.2.6. TTPing
5.2.7. TTRepair expected by
5.3. Trouble Ticket Notification syntax
5.4. Trouble Ticket Status Request syntax
5.5. Trouble Ticket Status Confirmation syntax
5.6. Trouble Ticket Append Request syntax
5.7. Trouble Ticket Append Confirmation syntax
5.8. Trouble Ticket Cancel Request syntax
5.9. Trouble Ticket Cancel Confirmation syntax
6. Acknowledgements
7. References
1. Background
RFC-NOCTSF describes the functions that need to be supported for NOC
Trouble Ticket handling. The Trouble Reporting may be used by both
end-users and by NOCs.
The functions in RFC-NOCTSF can be efficiently supported vis a number
of access protocols, where each protocol can leverage its particular
strength.
This document describes how RFC-NOCTSF can be supported via RFC822-based
message exchange. The strength of this protocol is:
- Ubiquity
- Simplicity
- It is well tailored to some of the needs of the NOC TSF, e.g., it
allows for verbose and possibly imprecise trouble descriptions, and at
the same time it can also be structured to allow for automatic
parsing of precise problem descriptions.
This document describes the use of basic RFC822 messages only, relying
on ASCII message bodies. The use of other message body types as for
example explained in RFC-MIME is not addressed in this memo.
In some cases, it might be desirable to ensure private message exchange,
for example by the use of PEM described in RFC-PEM. The use of PEM is
not addressed in this memo.
2. Overview
The NOC TSF is accessable via a mailbox. This mailbox shall be used
as follows:
- Incoming messages shall be parsed for known keywords and problem
descriptions as described in this document. In addition, NOCs may add
keywords/problem descriptions for automatic parsing as relevant for
their particular environment. Messages that are succesfully parsed on
keywords/problem descriptions will be processed by the NOC trouble
resolution and tracking system and responded to with message templates
as described in this memo.
- Messages for which automatic inclusion in the NOC trouble resolution
and tracking system is not possible will be parsed by a NOC employee.
The employee will then provide appropriate input to the NOC trouble
resolution and tracking system and responded to the message with
message templates as described in this memo. RFC-NOCTSF describes a
number of functions for information exchange between a NOC TSF and
its users (which may be other NOCs):
User --> NOC NOC --> User
1. Trouble Ticket Request Trouble Ticket Reply
2. Trouble Ticket Notification
3. Trouble Ticket Status Request Trouble Ticket Status
Confirmation
4. Trouble Ticket Append Request Trouble Ticket Append
Confirmation
5. Trouble Ticket Cancel Request Trouble Ticket Cancel
Confirmation
In addition, NOCs may want to support an on-line subscription procedure:
a. NOC Subscription Request NOC Subscription Confirmation
b. NOC Unsubscription Request NOC Unsubscription Confirmation
Subscription implies that this user will receive relevant NOC TSF messages.
The procedures in this memo rely on a loose coupling of NOC procedures:
- Common NOC TSF access procedures are maintained (this memo), but internal
NOC procedures for trouble resolution and tracking can be quite different
(compare for example an internet NOC with a telco NOC).
- Trouble Ticket referrals will be required under certain circumstances.
While the original NOC where the trouble was reported will maintain
"ownership" of the trouble with regard to reporting back to the user
that flagged the trouble, the trouble may have to be handed off to
other NOC(s) for appropriate trouble resolution. This memo relies on a
procedure where Trouble Ticket Identifiers are local to a NOC; no global
administration of TT Ids is assumed or necessary.
NOCs as well as other network users may have a number of network management
tools for trouble identification at their disposal. Examples include
ping()
and a variety of SNMP based tools. This memo includes the use of these
tools
as a possible trouble reporting technique.
3. Notational Conventions
This specification uses the same notational conventions as are used in
RFC 822.
4. Lexical Analysis of Messages
The rules for the lexical analysis as defined in RFC 822 apply. In
addition,
this memo defines structure in the message body. The lexical analysis rules
are extended to the message body as defined in this memo.
5. Mapping of the RFC-NOCTSF to RFC822 messages
This clause defines the messages for access with NOC Trouble Submission
Facilities. An important key to the correct use of these procedures is
the use of the "Subject" line in RFC822 messages.
5.1. Trouble Ticket Request syntax
5.1.1. Use of the Subject and Message body fields
The Subject field shall be used as follows:
Subject field = "TTId : Non-assigned TTRequest" / "TTId :" TTId "TTRequest"
The Message body shall be present and shall consist of any combination
of the following fields:
message body=
/ "TTOriginatorTTId" ":" TTId
/ "TTComment" ":" *text
/ "TTLocalProblemCode ":" problem-list
/ "TTSNMPObserved" ":" snmptext
/ "TTSNMPExpected" ":" snmptext
/ "TTPing" ":" pingtext
5.1.2. TTOriginatorId
This field, which may be present in the message body can be used for
local reference purposes. This field must be present when received
from another NOC. A number of TTId instances may be present.
The sequence of their appearance determines the following:
- Stapling of different TTs into a single new TT. For example, two open
TTs X and Y that are determined to have the same cause may result
into a new TT Z. Messages referring to Z would use:
"TTOriginatorTTId : X
Y".
- The referral sequence that the trouble report has gone through (e.g.,
between NOCs). For example, the referral of the previous TT Z to
another NOC would, assuming acceptance by that NOC result in:
"TTOriginatorTTId : Z
X
Y".
The assuming NOC will use its own TTId, for example K. Referral
to a third NOC would result in:
"TTOriginatorTTId : K
Z
X
Y".
This implies that the TTIds must be globally unique. This is achieved
by prepending locally defined TTIds (unique for a local NOC) with the
identification of the host that represents the TT service of that NOC.
The identifier will be of the form of a Network Address. The types of
Network Address that are used are: IP Address.
TTId =
/ TTId
/ network-address TTIdValue
network-address = IP address
TTIdValue = *text
5.1.3. TTComment
This field, which may be present in the message body can be used for a
textual description of the observed problem.
5.1.4. TTLocalProblemCode
This field, which may be present in the message body can be used for
identifying a problem code that is unique for the local NOC. Note
that in case of TT referrals, a number of instances of this field may
be present. The sequence of their appearance determines the referral
sequence that the trouble report has gone through. This implies that
the problem codes must be globally unique. This is achieved by prepending
locally defined problem codes (unique for a local NOC) with the
identification of the host that represents the TT service of that NOC. The
identifier will
be of the form of a Network Address. The types of Network Address that
are used are: IP Address.
problem-list = network-address ProblemCodeValue
network-address = IP address
ProblemCodeValue = *text
5.1.5. TTSNMPObserved
This field, which may be present in the message body can be used for
identifying a problem observed via the use of SNMP. Multiple instances
of this field may be present, for example
snmptext = object-name "=" objectvalue
objectname =
/ NetworkAddress OBJECT IDENTIFIER Object Instance
/ NetworkAddress OBJECT DESCRIPTOR Object Instance
object value = *text
For proper use of the components of objectname, see RFC1155.
For example suppose a network user obeserves a linkDown from SNMP Agent
192.99.99.199 (for example an agent monitoring a router), this user might
complain to the NOC with:
TTSNMPObserved:192.99.99.199.ifOperStatus.14=2
TTSNMPExpected:192.99.99.199.ifOperStatus.14=1
with ifOperStatus the object in question on the router and 14 the
particular link instance that is down. The value 2 indicates down,
and 1 indicates up (see RFC1213). This information is likely supplied
by a local SNMP tool of that user.
5.1.6. TTSNMPExpected
This field, which may only be present if the TTSNMPObserved field is
present, can be used to elaborate on a problem noted via TTSNMPObserved.
For the syntax of this field see TTSNMPObserved.
5.1.7. TTPing
5.2. Trouble Ticket Reply syntax
The Trouble Ticket Reply is used in response to a previously issued
Trouble Ticket Request.
5.2.1. Use of the Subject and Message body fields
The Subject field shall be used as follows:
Subject field = "TTId : Non-assigned" / "TTId :" TTId "TTStatus :"
TTstatus
TTId shall be used as follows:
TTId = network-address TTIdValue
network-address = IP address
TTIdValue = *text
TTstatus shall be used as follows:
TTstatus = "Open" / "Closed" / "Stapled to :" TTId
The value "Open" corresponds to a situation where a NOC TSF has identified
a problem, relevant for NOC TSF users, that requires some time to resolve.
The value "Closed" corresponds to a situation where a previously identified
problem has been resolved.
The value "Stapled to :" implies a situation where a previously identified
problem is determined to be part of another identified problem relevant for
the NOC TSF user. Inquiries to the status of the problem resolution can
refer
to either TTId.
The Message body may be present and shall consist of any combination of the
following fields:
message body=
/ "TTOriginatorTTId" ":" TTId
/ "TTComment" ":" *text
/ "TTLocalProblemCode ":" problem-list
/ "TTSNMPObserved" ":" snmptext
/ "TTPing" ":" pingtext
/ "TTRepair expected by" ":" data&time
5.2.2. TTOriginatorId
This field, which shall be present and shall be used as described
in 5.1.2.
5.2.3. TTComment
This field, which may be present in the message body can be used for a
textual description of the observed problem.
5.2.4. TTLocalProblemCode
This field, which may be present in the message body can be used for
identifying a problem code that is unique for the local NOC.
The use of this field is as defined in the TTRequest.
5.2.5. TTSNMPObserved
This field, which may be present in the message body can be used for
identifying a problem observed via the use of SNMP. Multiple instances
of this field may be present. The use of this field is as defined in the
TTRequest.
5.2.6. TTPing
5.2.7. TTRepair expected by
This field, which may be present in the message body, gives an indication
of the time when the problem is expected to be solved. This field may
have the same format as the "Date" field in the message header.
5.3. Trouble Ticket Notification syntax
The Trouble Ticket Notification is used to flag a problem to NOC TSF users
observed by the NOC. It can also be used to notify a status change of
previously opened Trouble Tickets.
The Subject field shall be used as defined for the Trouble Ticket Reply.
The message body may be present. Its use shall be the same as the message
body of the Trouble Ticket Reply.
5.4. Trouble Ticket Status Request syntax
The trouble Ticket Status Request can be used by a user of the NOC TSF to
request the status of a previously opened Trouble Ticket.
The Subject field shall be used as follows:
Subject field = "TTId :" TTId "TTStatus :"
The use of the TTId shall be as defined in the Trouble Ticket Reply
No message body need to be present. The message body may be ignored
by the NOC.
5.5. Trouble Ticket Status Confirmation syntax
Trouble Ticket Status Indication is used by the NOC TSF to reply to a
previously submitted Trouble Ticket Status Request by a NOC TSF user.
The syntax of the Trouble Ticket Status Indication shall follow the
syntax of the Trouble Ticket Notification. The TTId in the Subject
field matches the value of the TTId in the Trouble Ticket Status Request.
5.6. Trouble Ticket Append Request syntax
The Trouble Ticket Append Request can be used by a NOC TSF user to
request to append additional information to a previously opened
Trouble Ticket.
The Subject field shall be used as follows:
Subject field = "TTId :" TTId "TTAppend :"
The use of the TTId shall be as defined in the Trouble Ticket Reply
The message body shall follow the same syntax as the message body in
the Trouble Ticket Request.
5.7. Trouble Ticket Append Confirmation syntax
The Trouble Ticket Append Confirmation shall be used by a NOC TSF user
to reply to a previously submitted user request to append information
to a Trouble Ticket.
The Subject field shall be used as follows:
Subject field = "TTId :" TTId "TTAppend Confirmation"
The use of the TTId shall be as defined in the Trouble Ticket Reply
The message body shall follow the same syntax as the message body in the
Trouble Ticket Reply.
5.8. Trouble Ticket Cancel Request syntax
The Trouble Ticket Cancel Request can be used by a NOC TSF user to request
cancellation of a previously opened Trouble Ticket.
The Subject field shall be used as follows:
Subject field = "TTId :" TTId "TTCancel"
The use of the TTId shall be as defined in the Trouble Ticket Reply
No message body need to be present. The message body may be ignored by
the NOC.
5.9. Trouble Ticket Cancel Confirmation syntax
The Trouble Ticket Cancel Confirmation shall be used by a NOC TSF in
reply to a previously submitted Trouble Ticket Cancel Request by a
NOC TSF user to confirm cancellation of a previously opened Trouble
Ticket.
The Subject field shall be used as follows:
Subject field = "TTId :" TTId "TTCancel"
The use of the TTId shall be as defined in the Trouble Ticket Reply
The message body shall follow the same syntax as the message body in
the Trouble Ticket Reply.
No message body need to be present.
6. Acknowledgements
This document was developed in the IETF User Connectivity Problems
Working Group.
7. References
RFC-NOCTSF Functional Spec for an On-line Trouble Submission
Facility - Kaj Tesink, Dale Johnson,
Draft 3/18/92, San Diego
RFC822 Standard for the format of ARPA Internet text messages - David
Crocker, August 13, 1982
RFC1155 Structure and Identification of Management Information for
TCP/IP-based Internets - Marshall Rose, Keith McClogrie, May 1990
RFC1213 Management Information Base for Network Management of
TCP/IP-based internets - Marshall Rose, Keith McClogrie, March 1991
Addresses of the authors:
Kaj Tesink
Bellcore
331 Newman Spring Rd.
RedBank, NJ 07701
Bellcore
Tel. (908) 758-5254
Fax.(908) 758-4196
Email kaj@cc.bellcore.com
0------------0--------------0-------------0-------------0-----------0
Kaj Tesink
pmail Bellcore vmail (908) 758-5254
331 Newman Springs Rd. faxmail (908) 758-4196
Red Bank, NJ 07701 email kaj@cc.bellcore.com
=====================================================================
2. ASN.1 description of inter-NOC TT messages
$Header: /home/net/wsnet/zawada/z/UCP/RCS/exchange.asn,v 1.5 1992/10/30 21:38:11 zawada Exp $
info OBJECT IDENTIFIER ::= { exchange 1 }
nsc OBJECT IDENTIFIER ::= { exchange 2 }
people OBJECT IDENTIFIER ::= { exchange 3 }
contact OBJECT IDENTIFIER ::= { exchange 4 }
notify OBJECT IDENTIFIER ::= { exchange 5 }
notes OBJECT IDENTIFIER ::= { exchange 6 }
-- The info group
infoEntry OBJECT-TYPE
SYNTAX InfoEntry
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The info entry provides specific information on the
nature (and possibly solution) of the problem."
::= { info 1 }
InfoEntry ::= SEQUENCE {
infoProbDesc DisplayString,
infoSolnDesc DisplayString,
infoProbLoc DisplayString,
infoStartDate DisplayString,
infoEndDate DisplayString,
infoOpenDate DisplayString,
infoCloseDate DisplayString,
infoTicketNum DisplayString
}
infoProbDesc OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..255))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"A text summary of the problem."
::= { infoEntry 1 }
infoSolnDesc OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..255))
ACCESS read-only
STATUS optional
DESCRIPTION
"A text summary of the solution to the problem."
::= { infoEntry 2 }
infoProbLoc OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..80))
ACCESS read-only
STATUS optional
DESCRIPTION
"The location of the problem."
::= { infoEntry 3 }
infoStartDate OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..30))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The date the problem started."
::= { infoEntry 4 }
infoEndDate OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..30))
ACCESS read-only
STATUS optional
DESCRIPTION
"The date the problem ended."
::= { infoEntry 5 }
infoOpenDate OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..30))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The date the ticket was opened"
::= { infoEntry 6 }
infoCloseDate OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..30))
ACCESS read-only
STATUS optional
DESCRIPTION
"The date the ticket was closed."
::= { infoEntry 7 }
infoTicketNum OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..30))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"A trouble ticket identifier normally consisting
of a number assigned by the originating NSC
preceded by the NSC's unique prefix."
::= { infoEntry 8 }
-- The nsc group
nscNum OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The total number of entries in the NSC list."
::= { nsc 1 }
nscList OBJECT-TYPE
SYNTAX SEQUENCE OF NscEntry
ACCESS read-write
STATUS mandatory
DESCRIPTION
"List of NSCs that have handled the problem. It
is assumed the the first NSC in the list is the
originating NSC."
::= { nsc 2 }
nscEntry OBJECT-TYPE
SYNTAX NscEntry
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Each entry contains an index and a name of an
NSC who handled the problem."
NscEntry ::= SEQUENCE {
nscIndex Counter,
nscId DisplayString,
nscEmail DisplayString,
nscDate DisplayString }
nscIndex OBJECT-TYPE
SYNTAX Counter
ACCESS read-write
STATUS mandatory
DESCRIPTION
"An index number for the particular NSC in this entry.
Index number 1 is assumed to be the originator."
::= { nscEntry 1 }
nscId OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..20))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The name of the NSC for this entry."
::= { nscEntry 2 }
nscEmail OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..127))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"NSC email address for handling trouble tickets."
::= { nscEntry 3 }
nscDate OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..30))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Timestamp when this NSC first started handling this ticket"
::= { nscEntry 4 }
-- The people group
peopleNum OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The total number of people in the people list."
::= { people 1 }
peopleTable OBJECT-TYPE
SYNTAX SEQUENCE OF PeopleEntry
ACCESS read-write
STATUS mandatory
DESCRIPTION
"A list of persons associated with a ticket."
::= { people 2 }
peopleEntry OBJECT-TYPE
SYNTAX PeopleEntry
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Information (email, phone, etc.) needed to get in
touch with the person."
::= { peopleTable 1 }
PeopleEntry ::= SEQUENCE {
peopleIndex Counter,
peopleName DisplayString,
peopleEmail DisplayString,
peoplePhone DisplayString,
peopleFax DisplayString,
peopleOther DisplayString
}
peopleIndex OBJECT-TYPE
SYNTAX Counter
ACCESS read-write
STATUS mandatory
DESCRIPTION
"person number."
::= { peopleEntry 1 }
peopleName OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..63))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Name of person."
::= { peopleEntry 2 }
peopleEmail OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..127))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Email address of person."
::= { peopleEntry 3 }
peoplePhone OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..31))
ACCESS read-write
STATUS optional
DESCRIPTION
"Phone number of person."
::= { peopleEntry 4 }
peopleFax OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..31))
ACCESS read-write
STATUS optional
DESCRIPTION
"Fax number of person."
::= { peopleEntry 5 }
peoplePager OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..31))
ACCESS read-write
STATUS optional
DESCRIPTION
"Pager number of person."
::= { peopleEntry 6 }
peopleOther OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..80))
ACCESS read-write
STATUS optional
DESCRIPTION
"Any miscellaneous information about the person."
::= { peopleEntry 7 }
peoplePrefer OBJECT-TYPE
SYNTAX INTEGER {
email(1),
telephone(2),
fax(3),
pager(4)
any(255)
}
ACCESS read-write
STATUS optional
DESCRIPTION
"Preferred method of commumnication."
::= { peopleEntry 8 }
-- The contact group
contactNum OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The total number of available contacts."
::= { contact 1 }
contactTable OBJECT-TYPE
SYNTAX SEQUENCE OF ContactEntry
ACCESS read-write
STATUS mandatory
DESCRIPTION
"A list of persons who can be contacted about
the problem. These persons shall also be listed
in the people group"
::= { contact 2 }
contactEntry OBJECT-TYPE
SYNTAX contactEntry
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Information concerning notification."
::= { contactTable 1 }
contactEntry ::= SEQUENCE {
contactIndex Counter,
contactName DisplayString,
contactOther DisplayString
}
contactIndex OBJECT-TYPE
SYNTAX Counter
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Contact index number."
::= { contactEntry 1 }
contactName OBJECT-TYPE
SYNTAX Counter
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Contact entry name. This name must appear in the
people list."
::= { contactEntry 2 }
contactOther OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..80))
ACCESS read-write
STATUS optional
DESCRIPTION
"Any miscellaneous information about the contact."
::= { contactEntry 3 }
-- The notify group
notifyNum OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The total number of entities to notify when problem is
solved."
::= { notify 1 }
notifyTable OBJECT-TYPE
SYNTAX SEQUENCE OF NotifyEntry
ACCESS read-write
STATUS mandatory
DESCRIPTION
"A list of persons or NSCs which wish to be contacted
when the problem is resolved or significant progress
is made in solving the problem."
::= { notify 2 }
notifyEntry OBJECT-TYPE
SYNTAX NotifyEntry
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Information concerning notification."
::= { notifyTable 1 }
NotifyEntry ::= SEQUENCE {
notifyIndex Counter,
notifyName DisplayString,
notifyType INTEGER,
notifyOther DisplayString
}
notifyIndex OBJECT-TYPE
SYNTAX Counter
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Notify index number."
::= { notifyEntry 1 }
notifyName OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..63))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Name of entity to be contacted. If notify type
is NSC, the name shall be found in the NSC list.
If notify type is person, the name shall be found
in the people list."
::= { notifyEntry 2 }
notifyType OBJECT-TYPE
SYNTAX INTEGER {
NSC(1),
person(2)
}
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Type of entity to be contacted."
::= { notifyEntry 3 }
notifyOther OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..80))
ACCESS read-write
STATUS optional
DESCRIPTION
"Any miscellaneous information about the contact."
::= { notifyEntry 4 }
-- The notes group
notesNum OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The total number of notes in the notes list."
::= { notes 1 }
notesTable OBJECT-TYPE
SYNTAX SEQUENCE OF NotesEntry
ACCESS read-write
STATUS mandatory
DESCRIPTION
"A list of possible useful comments that can be added
by entities dealing with the problem."
::= { notes 2 }
notesEntry OBJECT-TYPE
SYNTAX NotesEntry
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Indiviual notes."
::= { notesTable 1 }
NotesEntry ::= SEQUENCE {
notesIndex Counter,
notesDate DisplayString,
notesAuthor DisplayString,
notesNumLines DisplayString,
notesText DisplayString }
notesIndex OBJECT-TYPE
SYNTAX Counter
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Note index number."
::= { notesEntry 1 }
notesDate OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..30))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Date of message."
::= { notesEntry 2 }
notesAuthor OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..15))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Author of message. This person should appear in
the people list."
::= { notesEntry 3 }
notesNumLines OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The number of 80 character lines in the message."
::= { notesEntry 4 }
notesText OBJECT-TYPE
SYNTAX SEQUENCE of NotesText
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Text body of message."
::= { notesEntry 5 }
NotesText ::= SEQUENCE {
textIndex Counter,
textLine DisplayString }
textIndex OBJECT-TYPE
SYNTAX Counter
ACCESS read-write
STATUS mandatory
DESCRIPTION
"Text line index number."
::= { notesText 1 }
textLine OBJECT-TYPE
SYNTAX DisplayString(SIZE(1..80))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"A single line of the text body"
::= { notesText 2 }
END -- Exchange Definitions --
=====================================================================
3. Sample Trouble Ticket based on the above ASN.1 description
infoProbDesc: Net 199.2.3.4 is unreach able from widget.com, a imaginary.net customer
infoSolnDesc: Replaced bad Cable
infoProbLoc: avn.net's Timbuktoo POP
infoStartDate: Fri Oct 30 17:07:45 GMT 1992
infoEndDate: Fri Oct 30 18:10:28 GMT 1992
infoOpenDate: Fri Oct 30 17:32:01 GMT 1992
infoCloseDate: Fri Oct 30 18:15:16 GMT 1992
infoTicketNum: INI1234
nscNum: 2
nscId.1: INI (Imaginary Networks Incoporated)
nscEmail.1: trouble@imaginary.net
nscDate.1: Fri Oct 30 17:32:01 GMT 1992
nscId.2: AVN (Advanced Vapor Networks)
nscEmail.2: tt@avn.net
nscDate.2: Fri Oct 30 18:01:01 GMT 1992
peopleNum: 2
peopleName.1: Joe Engineer
peopleEmail.1: joee@imaginary.net
peoplePhone.1: 1-800-555-1234
peopleFax.1: 1-800-555-4321
peoplePager.1: 1-800-555-1111
peoplePrefer.1: 1
peopleName.2: Will U Shuddup
peopleEmail.2: will@avn.net
peoplePhone.2: 1-800-555-6788
peopleFax.2: 1-800-555-6742
peoplePrefer.2: 2
peopleName.3: John Enduser
peopleEmail.3: je@widget.com
peoplePrefer.3: 1
contactNum: 2
contactName.1: Joe Engineer
contactOther.1: Point of contact for imaginary.net
contactName.2: Will U Shuddup
contactOther.2: Working on problem at avn.net
notifyNum: 2
notifyName.1: INI
notifyType.1: 1
notifyName.2: John Enduser
notifyType.2: 2
notifyOther.2: This is the end user who first noticed the problem;
notesNum: 3
notesDate.1: Fri Oct 30 17:32:10 GMT 1992
notesAuthor.1: Joe Engineer
notesNumLines.1: 2
notesEntry.1.textline.1: User called complaining that he could not reach 199.2.3.4, blort.bliga.edu
notesEntry.1.textline.2: Could not ping host from foo.imaginary.net and traceroute stops at gate.avn.net
notesDate.2: Fri Oct 30 18:07:28 GMT 1992
notesAuthor.2: Will U Shuddup
notesNumLines.2: 2
notesEntry.2.textline.1: Gateway router does not seem to be talking to bliga.edu
notesEntry.2.textline.2: Currently investigating
notesDate.3: Fri Oct 30 18:13:55 GMT 1992
notesAuthor.3: Will U Shuddup
notesNumLines.3: 1
notesEntry.3.textline.1: Replaced bad cable between gateway router and CSU/DSU. Connectivity restored.
--
Paul J. Zawada KB9FMN
NCSAnet Network Engineer zawada@ncsa.uiuc.edu
National Center for Supercomputing Applications ..!pur-ee!zawada
- Working TT docs for IETF UCP WG Paul Zawada