~ubuntu-branches/debian/experimental/ion/experimental

« back to all changes in this revision

Viewing changes to ams/doc/pod5/amsrc.pod

  • Committer: Package Import Robot
  • Author(s): Leo Iannacone
  • Date: 2012-02-01 09:46:31 UTC
  • Revision ID: package-import@ubuntu.com-20120201094631-qpfwehc1b7ftkjgx
Tags: upstream-2.5.3~dfsg1
ImportĀ upstreamĀ versionĀ 2.5.3~dfsg1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
=head1 NAME
 
2
 
 
3
amsrc - CCSDS Asynchronous Message Service MIB initialization file
 
4
 
 
5
=head1 DESCRIPTION
 
6
 
 
7
The Management Information Base (MIB) for an AMS communicating entity (either
 
8
B<amsd> or an AMS application module) must contain enough information to
 
9
enable the entity to initiate participation in AMS message exchange, such
 
10
as the network location of the configuration server and the roles and message
 
11
subjects defined for some venture.
 
12
 
 
13
AMS entities automatically load their MIBs from initialization files at
 
14
startup.  When AMS is built with the -DNOEXPAT compiler option set, the
 
15
MIB initialization file must conform to the I<amsrc> syntax described
 
16
below; otherwise the I<expat> XML parsing library must be linked into
 
17
the AMS executable and the MIB initialization file must conform to the
 
18
I<amsxml> syntax described in amsxml(5).
 
19
 
 
20
The MIB initialization file lists I<elements> of MIB update information,
 
21
each of which may have one or more I<attributes>.  An element may also
 
22
have sub-elements that are listed within the declaration of the parent
 
23
element, and so on.
 
24
 
 
25
The declaration of an element may occupy a single line of text in the
 
26
MIB initialization file or may extend across multiple files.  A single-line
 
27
element declaration is indicated by a '*' in the first character of the
 
28
line.  The beginning of a multi-line element declaration is indicated by
 
29
a '+' in the first character of the line, while the end of that declaration
 
30
is indicated by a '-' in the first character of the line.  In every case,
 
31
the type of element must be indicated by an element-type name beginning
 
32
in the second character of the line and terminated by whitespace.  Every
 
33
start-of-element line B<must> be matched by a subsequent end-of-element
 
34
line that precedes the start of any other element that is not a nested
 
35
sub-element of this element.
 
36
 
 
37
Attributes are represented by whitespace-terminated <name>=<value>
 
38
expressions immediately following the element-type name on a '*' or
 
39
'+' line.  An attribute value that contains whitespace must be enclosed
 
40
within a pair of single-quote (') characters.
 
41
 
 
42
Two types of elements are recognized in the MIB initialization file:
 
43
control elements and configuration elements.  A control element establishes
 
44
the update context within which the configuration elements nested within
 
45
it are processed, while a configuration element declares values for one
 
46
or more items of AMS configuration information in the MIB.
 
47
 
 
48
Note that an aggregate configuration element (i.e., one which may contain
 
49
other interior configuration elements; venture, for example) may be presented
 
50
outside of any control element, simply to establish the context in which 
 
51
subsequent control elements are to be interpreted.
 
52
 
 
53
=head1 CONTROL ELEMENTS
 
54
 
 
55
=over 4
 
56
 
 
57
=item B<ams_mib_init>
 
58
 
 
59
Initializes an empty MIB.  This element must be declared prior to the
 
60
declaration of any other element.
 
61
 
 
62
Sub-elements: none
 
63
 
 
64
Attributes:
 
65
 
 
66
=over 4
 
67
 
 
68
=item continuum_nbr
 
69
 
 
70
Identifies the local continuum.
 
71
 
 
72
=item ptsname
 
73
 
 
74
Identifies the primary transport service for the continuum.  Valid values
 
75
include "dgr" and "udp".
 
76
 
 
77
=item pubkey
 
78
 
 
79
This is the name of the public key used for validating the digital
 
80
signatures of meta-AMS messages received from the configuration server
 
81
for this continuum.  The value of this attribute (if present) must
 
82
identify a key that has been loaded into the ION security database,
 
83
nominally by ionsecadmin(1).
 
84
 
 
85
=item privkey
 
86
 
 
87
This is the name of the private key used for constructing the digital
 
88
signatures of meta-AMS messages sent by the configuration server
 
89
for this continuum.  This attribute should B<only> be present in
 
90
the MIB initialization file for amsd().  The value of this attribute
 
91
(if present) must identify a key that has been loaded into the ION
 
92
security database, nominally by ionsecadmin(1).
 
93
 
 
94
=back
 
95
 
 
96
=item B<ams_mib_add>
 
97
 
 
98
This element contains a list of configuration items that are to be
 
99
added to the MIB.
 
100
 
 
101
=item B<ams_mib_change>
 
102
 
 
103
This element contains a list of configuration items that are to be
 
104
revised in the MIB.
 
105
 
 
106
=item B<ams_mib_delete>
 
107
 
 
108
This element contains a list of configuration items that are to be
 
109
deleted from the MIB.
 
110
 
 
111
=back
 
112
 
 
113
=head1 CONFIGURATION ELEMENTS
 
114
 
 
115
=over 4
 
116
 
 
117
=item B<continuum>
 
118
 
 
119
Identifies a known remote continuum.
 
120
 
 
121
Sub-elements: none
 
122
 
 
123
Attributes:
 
124
 
 
125
=over 4
 
126
 
 
127
=item nbr
 
128
 
 
129
Identifies the local continuum.
 
130
 
 
131
=item name
 
132
 
 
133
Identifies the local continuum.
 
134
 
 
135
=item neighbor
 
136
 
 
137
1 if the continuum is a neighbor of the local continuum, zero otherwise.
 
138
 
 
139
=item desc
 
140
 
 
141
A textual description of this continuum.
 
142
 
 
143
=back
 
144
 
 
145
=item B<csendpoint>
 
146
 
 
147
Identifies one of the network locations at which the configuration server
 
148
may be reachable.  If the configuration server might be running at any one
 
149
of several locations, the number of other locations that are preferred to
 
150
this one is noted; in this case, csendpoints must be listed within the
 
151
ams_mib_add element in descending order of preference, i.e., with the most
 
152
preferred network location listed first.
 
153
 
 
154
Sub-elements: none
 
155
 
 
156
Attributes:
 
157
 
 
158
=over 4
 
159
 
 
160
=item epspec
 
161
 
 
162
Identifies the endpoint at which the configuration server may be
 
163
reachable.  The endpoint specification must conform the endpoint
 
164
specification syntax defined for the continuum's primary transport
 
165
service; see the AMS Blue Book for details.
 
166
 
 
167
=item after
 
168
 
 
169
If present, indicates the number of other configuration server network
 
170
locations that are considered preferable to this one.  This attribute is
 
171
used to ensure that csendpoints are listed in descending order of
 
172
preference.
 
173
 
 
174
=back
 
175
 
 
176
=item B<amsendpoint>
 
177
 
 
178
Normally the specifications of the transport service endpoints at which
 
179
an AMS application module can receive messages are computed automatically
 
180
using standard transport-service-specific rules.  However, in some cases
 
181
it might be necessary for a module to receive messages at one or more
 
182
non-standard endpoints; in these cases, amsendpoint elements can be
 
183
declared in order to override the standard endpoint specification rules.
 
184
 
 
185
Sub-elements: none
 
186
 
 
187
Attributes:
 
188
 
 
189
=over 4
 
190
 
 
191
=item tsname
 
192
 
 
193
Identifies the transport service for which a non-standard endpoint
 
194
specification is being supplied.
 
195
 
 
196
=item epspec
 
197
 
 
198
Identifies an endpoint at which the application module will be reachable,
 
199
in the context of the named transport service.  The endpoint specification
 
200
must conform the endpoint specification syntax defined for the named transport
 
201
service; see the AMS Blue Book for details.
 
202
 
 
203
=back
 
204
 
 
205
=item B<application>
 
206
 
 
207
Identifies one of the applications supported within this continuum.
 
208
 
 
209
Sub-elements: none
 
210
 
 
211
Attributes:
 
212
 
 
213
=over 4
 
214
 
 
215
=item name
 
216
 
 
217
Identifies the application.
 
218
 
 
219
=item pubkey
 
220
 
 
221
This is the name of the public key used for validating the digital
 
222
signatures of meta-AMS messages received from the registrars for all
 
223
cells of any message space in this continuum that is characterized by
 
224
this application name.  The value of this attribute (if present) must
 
225
identify a key that has been loaded into the ION security database,
 
226
nominally by ionsecadmin(1).
 
227
 
 
228
=item privkey
 
229
 
 
230
This is the name of the private key used for constructing the digital
 
231
signatures of meta-AMS messages sent by the registrars for all cells
 
232
of any message space in this continuum that is characterized by this
 
233
application name.  This attribute should B<only> be present in
 
234
the MIB initialization file for amsd().  The value of this attribute
 
235
(if present) must identify a key that has been loaded into the ION
 
236
security database, nominally by ionsecadmin(1).
 
237
 
 
238
=back
 
239
 
 
240
=item B<venture>
 
241
 
 
242
Identifies one of the ventures operating within the local continuum.
 
243
 
 
244
Sub-elements: role, subject, unit, msgspace
 
245
 
 
246
Attributes:
 
247
 
 
248
=over 4
 
249
 
 
250
=item nbr
 
251
 
 
252
Identifies the venture.
 
253
 
 
254
=item appname
 
255
 
 
256
Identifies the application addressed by this venture.
 
257
 
 
258
=item authname
 
259
 
 
260
Identifies the authority under which the venture operates, distinguishing
 
261
this venture from all other ventures that address the same application.
 
262
 
 
263
=item gweid
 
264
 
 
265
Identifies the RAMS network endpoint ID of the RAMS gateway module for
 
266
this venture's message space in the local continuum.  Gateway endpoint
 
267
ID is expressed as <protocol_name>@<eid_string> where I<protocol_name>
 
268
is either "bp" or "udp".  If protocol name is "bp" then I<eid_string>
 
269
must be a valid Bundle Protocol endpoint ID; otherwise, I<eid_string>
 
270
must be of the form <hostname>:<port_number>.  If the gweid attribute
 
271
is omitted, the RAMS gateway module's RAMS network endpoint ID defaults
 
272
to "bp@ipn:<local_continuum_number>.<venture_number>".
 
273
 
 
274
=item net_config
 
275
 
 
276
Has the value "tree" if the RAMS network supporting this venture is
 
277
configured as a tree; otherwise "mesh", indicating that the RAMS network
 
278
supporting this venture is configured as a mesh.
 
279
 
 
280
=item root_cell_resync_period
 
281
 
 
282
Indicates the number of seconds in the period on which resynchronization is
 
283
performed for the root cell of this venture's message space in the local
 
284
continuum.  If this attribute is omitted, resynchronization in that cell
 
285
is disabled.
 
286
 
 
287
=back
 
288
 
 
289
=item B<role>
 
290
 
 
291
Identifies one of the functional roles in the venture that is the element
 
292
that's currently being configured.
 
293
 
 
294
Sub-elements: none
 
295
 
 
296
Attributes:
 
297
 
 
298
=over 4
 
299
 
 
300
=item nbr
 
301
 
 
302
Identifies the role.
 
303
 
 
304
=item name
 
305
 
 
306
Identifies the role.
 
307
 
 
308
=item authname
 
309
 
 
310
Identifies the authority under which the venture operates, distinguishing
 
311
this venture from all other ventures that address the same application.
 
312
 
 
313
=item pubkey
 
314
 
 
315
This is the name of the public key used for validating the digital
 
316
signatures of meta-AMS messages received from all application modules
 
317
that register in this functional role.  The value of this attribute
 
318
(if present) must identify a key that has been loaded into the ION
 
319
security database, nominally by ionsecadmin(1).
 
320
 
 
321
=item privkey
 
322
 
 
323
This is the name of the private key used for constructing the digital
 
324
signatures of meta-AMS messages sent by all application modules that
 
325
register in this functional role.  This attribute should B<only> be
 
326
present in the MIB initialization file for application modules that
 
327
register in this role.  The value of this attribute (if present) must
 
328
identify a key that has been loaded into the ION security database,
 
329
nominally by ionsecadmin(1).
 
330
 
 
331
=back
 
332
 
 
333
=item B<subject>
 
334
 
 
335
Identifies one of the subjects on which messages may be sent, within
 
336
the venture that is the element that's currently being configured.
 
337
 
 
338
Sub-elements: sender, receiver
 
339
 
 
340
Attributes:
 
341
 
 
342
=over 4
 
343
 
 
344
=item nbr
 
345
 
 
346
Identifies the subject.
 
347
 
 
348
=item name
 
349
 
 
350
Identifies the subject.
 
351
 
 
352
=item desc
 
353
 
 
354
A textual description of this message subject.
 
355
 
 
356
=item symkey
 
357
 
 
358
This is the name of the symmetric key used for both encrypting and
 
359
decrypting the content of messages on this subject; if omitted, messages
 
360
on this subject are not encrypted by AMS.  If authorized senders and
 
361
receivers are defined for this subject, then this attribute should
 
362
B<only> be present in the MIB initialization file for application
 
363
modules that register in roles that appear in the subject's lists of
 
364
authorized senders and/or receivers.  The value of this attribute
 
365
(if present) must identify a key that has been loaded into the ION
 
366
security database, nominally by ionsecadmin(1).
 
367
 
 
368
=item marshal
 
369
 
 
370
This is the name associated with the content marshaling function
 
371
defined for this message subject.  If present, whenever a message on
 
372
this subject is issued the associated function is automatically called
 
373
to convert the supplied content data to a platform-independent representation
 
374
for transmission; this conversion occurs before any applicable content
 
375
encryption is performed.  If omitted, content data are transmitted without
 
376
conversion to a platform-independent representation.  Marshaling functions
 
377
are defined in the marshalRules table in the marshal.c source file.
 
378
 
 
379
=item unmarshal
 
380
 
 
381
This is the name associated with the content unmarshaling function
 
382
defined for this message subject.  If present, whenever a message on
 
383
this subject is received the associated function is automatically called
 
384
to convert the transmitted content to local platform-specific
 
385
representation; this conversion occurs after any applicable content
 
386
decryption is performed.  If omitted, received content data are
 
387
delivered without conversion to a local platform-specific representation.
 
388
Unmarshaling functions are defined in the unmarshalRules table in the
 
389
marshal.c source file.
 
390
 
 
391
=back
 
392
 
 
393
=item B<sender>
 
394
 
 
395
Identifies one of the roles in which application modules must register
 
396
in order to be authorized senders of messages on the subject that is the
 
397
element that's currently being configured.
 
398
 
 
399
Sub-elements: none
 
400
 
 
401
Attributes:
 
402
 
 
403
=over 4
 
404
 
 
405
=item name
 
406
 
 
407
Identifies the sender.  The value of this attribute must be the name of a role
 
408
that has been defined for the venture that is currently being configured.
 
409
 
 
410
=back
 
411
 
 
412
=item B<receiver>
 
413
 
 
414
Identifies one of the roles in which application modules must register
 
415
in order to be authorized receivers of messages on the subject that is the
 
416
element that's currently being configured.
 
417
 
 
418
Sub-elements: none
 
419
 
 
420
Attributes:
 
421
 
 
422
=over 4
 
423
 
 
424
=item name
 
425
 
 
426
Identifies the receiver.  The value of this attribute must be the name of a
 
427
role that has been defined for the venture that is currently being configured.
 
428
 
 
429
=back
 
430
 
 
431
=item B<unit>
 
432
 
 
433
Identifies one of the organizational units within the venture that is the
 
434
element that's currently being configured.
 
435
 
 
436
Sub-elements: none
 
437
 
 
438
Attributes:
 
439
 
 
440
=over 4
 
441
 
 
442
=item nbr
 
443
 
 
444
Identifies the venture.
 
445
 
 
446
=item name
 
447
 
 
448
Identifies the venture.
 
449
 
 
450
=item resync_period
 
451
 
 
452
Indicates the number of seconds in the period on which resynchronization is
 
453
performed, for the cell of this venture's message space that is the portion
 
454
of the indicated unit which resides in the local continuum.  If this attribute
 
455
is omitted, resynchronization in that cell is disabled.
 
456
 
 
457
=back
 
458
 
 
459
=item B<msgspace>
 
460
 
 
461
Identifies one of the message spaces in remote continua that are encompassed
 
462
by the venture that is the element that's currently being configured.
 
463
 
 
464
Sub-elements: none
 
465
 
 
466
Attributes:
 
467
 
 
468
=over 4
 
469
 
 
470
=item nbr
 
471
 
 
472
Identifies the remote continuum within which the message space operates.
 
473
 
 
474
=item gweid
 
475
 
 
476
Identifies the RAMS network endpoint ID of the RAMS gateway module for
 
477
this message space.  Gateway endpoint ID is expressed as
 
478
<protocol_name>@<eid_string> where I<protocol_name> is either "bp"
 
479
or "udp".  If protocol name is "bp" then I<eid_string> must be a
 
480
valid Bundle Protocol endpoint ID; otherwise, I<eid_string> must be
 
481
of the form <hostname>:<port_number>.  If the gweid attribute is omitted,
 
482
the RAMS network endpoint ID of the message space's RAMS gateway
 
483
module defaults to "bp@ipn:<remote_continuum_number>.<venture_number>".
 
484
 
 
485
=item symkey
 
486
 
 
487
This is the name of the symmetric key used for both encrypting and
 
488
decrypting all messages to and from modules in the remote message
 
489
space that are forwarded between the local RAMS gateway server and
 
490
modules in the local message space; if omitted, these messages
 
491
are not encrypted.  The value of this attribute (if present) must
 
492
identify a key that has been loaded into the ION security database,
 
493
nominally by ionsecadmin(1).
 
494
 
 
495
=back
 
496
 
 
497
=back
 
498
 
 
499
=head1 EXAMPLE
 
500
 
 
501
*ams_mib_init continuum_nbr=2 ptsname=dgr
 
502
 
 
503
+ams_mib_add
 
504
 
 
505
*continuum nbr=1 name=apl desc=APL
 
506
 
 
507
*csendpoint epspec=beaumont.stepsoncats.com:2357
 
508
 
 
509
*application name=amsdemo
 
510
 
 
511
+venture nbr=1 appname=amsdemo authname=test
 
512
 
 
513
*role nbr=2 name=shell
 
514
 
 
515
*role nbr=3 name=log
 
516
 
 
517
*role nbr=4 name=pitch
 
518
 
 
519
*role nbr=5 name=catch
 
520
 
 
521
*role nbr=6 name=benchs
 
522
 
 
523
*role nbr=7 name=benchr
 
524
 
 
525
*role nbr=96 name=amsd
 
526
 
 
527
*role nbr=97 name=amsmib
 
528
 
 
529
*role nbr=98 name=amsstop
 
530
 
 
531
*subject nbr=1 name=text desc='ASCII text'
 
532
 
 
533
*subject nbr=2 name=noise desc='more ASCII text'
 
534
 
 
535
*subject nbr=3 name=bench desc='numbered msgs'
 
536
 
 
537
*subject nbr=97 name=amsmib desc='MIB updates'
 
538
 
 
539
*subject nbr=98 name=amsstop desc='shutdown'
 
540
 
 
541
*unit nbr=1 name=orbiters
 
542
 
 
543
*unit nbr=2 name=orbiters.near
 
544
 
 
545
*unit nbr=3 name=orbiters.far
 
546
 
 
547
*msgspace nbr=2
 
548
 
 
549
-venture
 
550
 
 
551
-ams_mib_add
 
552
 
 
553
=head1 SEE ALSO
 
554
 
 
555
amsxml(5)