The Basic Name Server (BNS) provides a mapping between logical names (symbols and aliases) and corresponding items. BNS stores these mappings in a local database and distributes global mappings to other nodes. BNS notifies applications of changes to mappings and allows applications to look up items using logical names or modify name-item mappings through library functions.
2. Basic system Name Server (BNS)
The Basic system Name Server (BNS) is a facility to provide a mapping
from a set of names to a set of corresponding items.
Some definitions of names
: piece of information identified with a logical name, which can be
Item
either a symbol or an alias.
: logical name for an item used to obtain or modify the
Symbol
corresponding item. BNS is case sensitive in handling symbols.
: kind of nickname for a symbol. An item can be obtained using
Alias
the symbol or using the alias of a symbol. An alias may never refer to
another alias. BNS is case sensitive in handling aliases.
01/04/2
Version 6
MCC/CPC/CIS
UBSS/BNS 2
3. BNS : Indirection Level
ALIAS
SYMBOL ITEM
01/04/2
Version 6
MCC/CPC/CIS
UBSS/BNS 3
4. BNS : Concepts
Two types of aliases and symbols are known by BNS:
Local aliases and symbols only known on the local node. They are not
distributed to other nodes.
Global aliases and symbols distributed to other nodes (by mean of
CDC). A global alias may not reference a local symbol. A local alias
may, however, reference a global symbol.
BNS is used by several UBSS services :
IPC/FIFO services for the mapping of address,
IOC_LPR_SERVER for logical names of printers,
SCM for applicative state of the node.
BNS provides services for application processes.
01/04/2
Version 6
MCC/CPC/CIS
UBSS/BNS 4
5. BNS : model
Logique Name Logical or Physical Attributes
Updates
Get
Notification
FIFO FPL 200.111.23.7 :: 109 :: TCP
PRINTER /DEV/TTY1
ERROR /etc/log220895
/etc/log230895
ERROR
Modify
01/04/2
Version 6
MCC/CPC/CIS
UBSS/BNS 5
6. BNS : Configuration
NODE 1 NODE 2 NODE 3
BNS BNS BNS
BNSIO
store store store
LAN
01/04/2
Version 6
MCC/CPC/CIS
UBSS/BNS 6
7. BNS : functionalities
The Basic system Name Server performs the following functions:
Pre-processing of the Name Server File (NSF), which contains local
and global symbols and local and global aliases. The syntax and
semantics of the NSF contents are checked. BNS exits when an error is
detected in the NSF.
Creates a local database containing the names specified in the NSF and
the global names received from other nodes.
Distributes initialized, modified and deleted global symbols and aliases.
Maintains the local BNS database.
Executes the requests issued by applications by means of the BNS
library functions.
Notifies applications when names or aliases are initialized, modified or
deleted.
Executes the BNS specific commands of BNSIO.
01/04/2
Version 6
MCC/CPC/CIS
UBSS/BNS 7
8. BNS : Change Notification
Item Change
Alias Change
Alias SYMBOL ITEM
Attributs Change Notification
}
Change
notification
Alias Change Notification to FIFO
01/04/2
Version 6
MCC/CPC/CIS
UBSS/BNS 8
9. BNS
The Name Server File (NSF) :
initialization file for BNS which defines all symbols and aliases.
used to fill the BNS database. In this file only a part of the filling of
the local database is specified, since the local BNS database is also
filled with global symbols and aliases which were inserted at remote
nodes.
It is impossible for application programs to insert new symbols or
aliases in the BNS database dynamically
BNSIO is a tool for an interactive user to inspect, modify or delete symbol
or aliases known by BNS.
01/04/2
Version 6
MCC/CPC/CIS
UBSS/BNS 9
10. BNS library functions
Retrieve name or alias
Retrieve the corresponding item of a specified name.
bns_get
Retrieve the corresponding symbol of a specified alias.
bns_get_alias
Modify name or alias
Modify the item of a specified name.
bns_modify
Modify the symbol of a specified alias.
bns_modify_alias
Enable/disable notification
Enable/disable notification relative to creation,modification
bns_notify
and deletion of a specified name.
Enable/disable notification relative to creation, modification
bns_notify_alias
and deletion of a specified alias.
Control BNS behavior
Control or retrieve BNS behavior
bns_control_node_access
( [dis]connection from its network access ).
01/04/2
Version 6
MCC/CPC/CIS
UBSS/BNS 10