DNCIM stitchers
The following stitchers all interact with the DNCIM database. The Discovery engine, ncp_disco, uses these stitchers to store the network model data in the DNCIM database .
CreateAndSendTopology
: if Network Manager is in full discovery modeRecreateAndSendTopology
: if Network Manager is in rediscovery mode
Stitcher | Function |
---|---|
CleanDNCIMCollections |
To conform to the standard model, this stitcher fixes Collection
by setting the mainNodeEntityId to NULL if the mainNodeEntityId is
not NULL. |
CleanDNCIMObjects |
A placeholder stitcher that calls any stitcher that is required to filter or
remove data from DNCIM before it sends the data to MODEL (for example, it calls the
CleanDNCIM_OutOfBandRouterLinks stitcher). |
CleanDNCIM_OutOfBandRouterLinks |
Removes router link connectivity for out of band
devices from the connects table. |
CreateInferredChassis |
Creates an inferred chassis which usually is a BGP peer, an MPLS PE router visible from a CE router, or an MPLS CE visible from a customer PE. |
DeleteDNCIMSubnetCollects |
Deletes the collects entries from the subnet objects so that the collects relationship is correctly rebuilt after a partial discovery without deleting the subnet object. |
DeleteNodeFromDNCIM |
This stitcher is used in partial discovery. It moves a given DNCIM entity into a
pending delete domain. If a device is not found after the discovery, then the device is removed
entirely. Such devices are removed by the DeleteRemovedEntities
stitcher. |
DeleteRemovedEntities |
The DeleteRemovedEntities stitcher deletes entities that have
previously been put aside for deletion during a partial
discovery. |
GetConnectSpeedOfComponent |
Calculates the connection speed of a connection component such as a network pipe (containing multiple paths, hops, and so on through the network). This stitcher iterates over the links resolving the overall connection speed of the component. The stitcher is recursive, so if a component contains subcomponents, then the stitcher is called again on the subcomponent. |
GetConnectSpeed |
Resolves the connection speed of a simple connection by examining the interface speed of the interfaces at each end. |
GetEntityId |
Gets the entity ID for a given domain and entity name. |
GetInterfaceSpeed |
Retrieves the interface speed of an interface. |
GetPendingDeleteDomainId |
Retrieves the ID of the temporary domain used to store entities affected by the partial discovery. The temporary domain might need to be deleted. |
InferDNCIMObjects |
Infers the existence of objects from current data. This stitcher
replaces functionality in the deprecated PostScratchProcessing
stitcher. |
PopulateConnectSpeeds |
Builds an entry to the connectSpeeds table. |
PopulateDNCIM |
This is the root DNCIM stitcher, which populates the DNCIM database tables with entity and relationship data. |
PopulateDNCIM_5GControlPlane |
Populates DNCIM with 5G control plane records. |
PopulateDNCIM_5GDataPlane |
Populates DNCIM with 5G Data plane records. |
PopulateDNCIM_BGP |
A container stitcher which calls all the BGP-related modelling stitchers as appropriate to model BGP within the topology. |
PopulateDNCIM_BGPAutonomousSystem |
Models a BGP autonomous system record. |
PopulateDNCIM_BGPProtoEndPt |
Models a BGP protocol end point. |
PopulateDNCIM_BGPServices |
Models the BGP services within the system. |
PopulateDNCIM_BGPTopology |
Builds the BGP topology layer. |
PopulateDNCIM_Collect |
Builds an entry to the collects table within DNCIM. |
PopulateDNCIMCollection |
Populates the DNCIM collection table with data. |
PopulateDNCIM_Connection |
Puts a single connection for supplied arguments into DNCIM connection table. |
PopulateDNCIMConnects |
Populates the DNCIM connection table with data from layer tables. |
PopulateDNCIM_ConnectSpeeds |
Populates the connection speed table for a simple connection (no pipes). |
PopulateDNCIM_ConnectSpeedsPipe |
Populates the connectSpeed entry for a network pipe. |
PopulateDNCIM_Containment |
Populates the DNCIM containment table with data about the containment relationship, modelling a single individual containment relationship from the arguments passed to the stitcher. |
PopulateDNCIMContainment |
Transposes the workingEntities.containment table to the DNCIM
contains table. |
PopulateDNCIM_CreateProbeCollection |
Assists with the creation of probe collections. |
PopulateDNCIM_CustomGeography |
Adds devices to the correct geographical collections based on their location data. |
PopulateDNCIMDependencies |
Takes the contents of the workingEntities.dependencies table,
and adds the relevant relationships to DNCIM. |
PopulateDNCIM_Dependency |
Populates the dependency table for a single dependency relationship, modelling a single dependency relationship from the arguments passed to the stitcher. |
PopulateDNCIMDiscoverySource |
Populates the discovery source objects. |
PopulateDNCIM_DomainMembers |
Populates the domainMembers table within DNCIM. |
PopulateDNCIM_Entity |
Inserts a record with the given arguments into the DNCIM
entityData and domain members tables. This results in the entity showing up in the
entity view as this view s based on a JOIN operation of those two tables. |
PopulateDNCIMFromEbnbr |
Takes the contents of a single discovery entityByNeighbor table,
for example, CollectorLayer1 , and
transfers these contents to the DNCIM connects table. |
PopulateDNCIM_GeographicLocation |
Processes geographical location and region information for devices. Calls the
PopulateDNCIM_Entity stitcher to stores the processed location and region
information in the DNCIM entityData table.As long as geographical data is supported by the respective vendor EMSs that are interrogated by the LTE collectors, then geographical location data will be determined by the collectors, processed by this stitcher, and the corresponding NCIM topology database tables will be populated with this geographical data. When you create dynamic collection network views of type Geographical Region and Geographical Location, then this geographical data in NCIM is used to create the hierarchical geographical views of the network. |
PopulateDNCIM_GlobalVlanUnresolved |
Copies a global VLAN entity from workingEntities.finalEntity
into the DNCIM globalVlan table. |
PopulateDNCIMHostedServices |
Populates the hostedService table for the network. |
PopulateDNCIM_HostedService |
Populates the hostedService table for a single
relationship. |
PopulateDNCIM_IGMP |
Manages the population of DNCIM with IGMP data. |
PopulateDNCIM_IGMPService |
Creates Multicast IGMP Service entities and populates
igmpService . |
PopulateDNCIM_IGMPEndPt |
Resolves the required IGMP end points and populates
igmpEndPoint . |
PopulateDNCIM_IGMPGroups |
Creates the required group entities and populates igmpGroup . It
also makes the Group entities collect any relevant End Points. |
PopulateDNCIM_IPMRoute |
Models the IPMRoute objects. |
PopulateDNCIM_IPMRouteService |
Creates Multicast Routing Service entities. The service entities are linked to the appropriate chassis entity as a Hosted Service. |
PopulateDNCIM_IPMRouteEndPt |
Populates DNCIM with IPMRoute Protocol Endpoint data. |
PopulateDNCIM_IPMRouteGroups |
Creates the MDT, Group, and Source entities and populates the ipMRouteMDT, ipMRouteGroup, and ipMRouteSource DNCIM tables. |
PopulateDNCIM_IPMRouteTopology
|
Models the topology of the IPM routes |
PopulateDNCIM_ISIS |
Container stitcher that populates the isisService, isisArea and isisEndPoint tables in DNCIM and NCIM. The stitcher also populates the ISISTopology within DNCIM, which is based on the ISISLayer. |
PopulateDNCIM_ISISService |
Sub-stitcher of
|
PopulateDNCIM_ISISTopology |
Sub-stitcher of
|
PopulateDNCIM_LAG |
Manages the population of dNCIM with Link Aggregation Group (LAG) modelling entities, including SAE link aggregation entities (which collect LAG ports), and aggregation group entities (which contains LAG ports). |
PopulateDNCIM_LAGEndPt |
Creates LAG End Point entities for LAG members. |
PopulateDNCIM_LAGLinkCollections |
Creates and populates the Link Aggregation Service Affected Event (SAE) entities. |
PopulateDNCIM_LTECollection |
Populates DNCIM with LTE collection records. |
PopulateDNCIM_LTEControlPlane |
Populates DNCIM with LTE control plane records. |
PopulateDNCIM_LTEDataPlane |
Populates DNCIM with LTE data plane records. |
PopulateDNCIM_LTEDepends |
Populates DNCIM with LTE eUtranSector entities and the corresponding LTE eUtranCell and antennaFunction entities that this eUtranSector entity depends on. |
PopulateDNCIM_ManagedStatus |
Sets the value of the managedStatus field for each of the
interfaces of a main node indicating whether that interface should be monitored or not. The tag can
take the following values:The
managed status of an entity can be one of the following values:
Note: Unmanaged entities do not suppress other events in RCA. The ncp_poller process
does not poll unmanaged entities. Events on unmanaged entities have the field
NmosManagedStatus set in the alerts.status field in the ObjectServer.
|
PopulateDNCIM_MPLSTE |
Top-level MPLS TE stitcher that calls the other MPLS TE stitchers in order. This stitcher is like the CreateMPLSTE stitcher that does the equivalent work on the scratchTopology database. |
PopulateDNCIM_MPLSTEPipeHop |
Builds a single MPLS TE pipe segment as part of an MPLS TE tunnel pipe. This stitcher is like the CreateMPLSTEPipeHop that does the equivalent work on the scratchTopology database. |
PopulateDNCIM_MPLSTEResources |
Builds the MPLS TE Resource objects. This stitcher is like the CreateMPLSTEResources stitcher that does the equivalent work on the scratchTopology database. |
PopulateDNCIM_MPLSTEServices |
Builds the MPLS TE Service objects. This stitcher is like the CreateMPLSTEServices stitcher that does the equivalent work on the scratchTopology database. |
PopulateDNCIM_MPLSTETunnelPipe |
Builds a network pipe object for an MPLS TE tunnel. This stitcher is like the CreateMPLSTETunnelPipe stitcher that does the equivalent work on the scratchTopology database. |
PopulateDNCIM_MPLSTETunnels |
Builds the MPLS TE tunnels and LSP objects. This stitcher is like the CreateMPLSTETunnels stitcher that does the equivalent work on the scratchTopology database. |
PopulateDNCIM_MXGroupCollection |
Populates the Juniper MX group collection object. |
PopulateDNCIM_NseEndPt |
Populates an NSE end point entity within the topology model to aid in RAN network RCA management. |
PopulateDNCIM_OSPFArea |
Infers the existence and creates the ospfArea and ospfRoutingDomain objects. This stitcher replaces functionality in the deprecated CreateOSPFAreas and CreateOSPFRoutingDomains stitchers. |
PopulateDNCIM_OSPFEndPt |
Infers the existence and creates the ospfEndPoint objects. This stitcher replaces functionality in the deprecated CreateOSPFProtocolEndPoints stitchers. |
PopulateDNCIM_OSPFLinks |
Populates the connects table
with OSPF links. This stitcher replaces functionality in the
deprecated CreateOSPFPointToPointAdjacencies stitchers. |
PopulateDNCIM_OSPFLSANodes |
Builds the OSPF LSA nodes within the network as well as their connections. |
PopulateDNCIM_OSPFService |
Infers the existence and creates the ospfService and ospfNetworkLSA objects. This stitcher replaces functionality in the deprecated CreateOSPFServices and CreateOSPFNetworkLSAPseudoNodes stitchers. |
PopulateDNCIM_OSPF |
Calls the appropriate stitchers to populate the OSPF objects. |
PopulateDNCIM_PIM |
Manages the population of DNCIM with PIM data. |
PopulateDNCIM_PIMService |
Creates Multicast PIM Service entities and populates the pimService table. |
PopulateDNCIM_PIMEndPt |
This stitcher creates PIM End Point entities and populates the pimEndPoint table. |
PopulateDNCIM_PIMTopology |
Creates the PIM Topology links. |
PopulateDNCIM_PIMNetworkCollection |
Creates the PIM Network entity, which collects all PIM routers. It also updates the PIM service display label to indicate the role of the service. |
PopulateDNCIM_PipeComposition |
Builds and populates the pipeComposition entry for a given relationship. |
PopulateDNCIM_ProbeCollection |
Creates hierarchical probe collections for use in network views. |
PopulateDNCIM_ProbeEndPt |
Creates probe end points representing the source or target. Defines the probe service to depend on them, and the probe entity collect them. |
PopulateDNCIM_Probes |
Creates probe entities representing a network performance probe instance, and contains them beneath the appropriate probe service. |
PopulateDNCIM_ProbeService |
Creates probe service entities that represent the network probe technology that is supported on the device, and hosts it on the chassis. |
PopulateDNCIM_ProbeTopology |
Creates links based on probe source or target data, and assigns them to the probe topology. |
PopulateDNCIM_ProtocolEndPt |
Populates the DNCIM protocolEndPoint table for a single relationship. |
PopulateDNCIMProtocolEndPts |
Populates the protocolEndPoint table for the topology. |
PopulateDNCIM_RanChassis |
Populates the DNCIM tables that extend chassis
entities with radio area network (RAN) data. The following
items are all modelled as chassis entities:
|
PopulateDNCIM_RanCollection |
Takes RAN area data, defines logical collections from it, and adds devices and cells to the created collections. |
PopulateDNCIM_RanContainedElements |
Populates DNCIM tables to handle RAN based on the
following considerations:
|
PopulateDNCIM_RediscoveredEntities |
Populates the rediscovered entities table which is used to keep track of partial discovery. |
PopulateDNCIM_SLA |
Processes SLA-related data for network performance probes. |
PopulateDNCIM_SubIfaceStatus |
Sets the sub-interfaces to unmanaged state if the
m_UnmanagedSubInts option is enable in disco.config and the parent
interfaces were set to unmanaged by
PopulateDNCIM_ManagedStatus.stch. The stitcher runs recursively to find all the
sub-interfaces. |
PopulateDNCIMSubnetAndCollects |
Models the subnet objects within DNCIM and creates the collects relationship between the subnet and the interfaces on those subnets. |
PopulateDNCIMTopologies |
Builds the topology model objects within DNCIM with which the presence of a connection within a specific topology is modelled. |
PopulateDNCIM_VlanCollections |
Creates VLAN connections and creates VLAN collection entities. Called by the InferDNCIMObjects stitcher. |
PopulateDNCIM_VTPEdges |
Augments VTP domain entities with edge devices connected to VTP entities. This stitcher replaces functionality in the deprecated AddVTPEdges stitcher. |
PopulateDNCIM_VTP |
Populates the DNCIM vtpDomain table with inferred VTP entities. This stitcher replaces functionality in the deprecated AddVTPCollections. |
PopulateDNCIM_WLAN |
This stitcher builds the WLAN objects inferred from the topology. |
PopulateDNCIM_WLAN80211SpecCollection |
This stitcher creates or updates WLAN spec collections. |
PopulateDNCIM_WLANAccessPoint |
This stitcher populates WLAN Access Points from the discovery engine. The data in the wlanAccessPoint table supplements the chassis data. |
PopulateDNCIM_WLANChannelCollection |
This stitcher creates or updates WLAN channel collections. |
PopulateDNCIM_WLANCollections |
This stitcher identifies the entities of interest to various WLAN collections and invokes the stitchers to create or update them. |
PopulateDNCIM_WLANServices |
This stitcher populates WLAN services from the discovery engine. |
PopulateDNCIM_WLANSSIDCollection |
This stitcher creates or updates SSID WLAN collections. |
PrepareDNCIMForRediscovery |
Sets up a temporary domain if necessary, retrieves the domain's ID, and copies the partially rediscovered entities into the temporary domain to make them ready for processing. |
RefreshDNCIM |
Clears out the DNCIM tables before repopulating the tables. |
RemovePendingDomainRelationships |
Removes all relationships involving a rediscovered device. The relationships are then recreated by the processing stitchers where the relationships are still present at the time of the rediscovery. |
RetrieveDisplayLabel |
For a supplied record, retrieves the display label to use in the entityData table. |
RetrieveDNCIMEnumeration |
For a given group and key, returns the DNCIM enumeration string. |
RetrieveDNCIMMapping |
Retrieves the mapping value for gven mappingGroup and mappingKey values. |
RetrieveDNCIMVendorFromObjectId |
Retrieves the vendor value for a given sysObjectId value. |
RetrieveDomainId |
For a given domain, retrieves the domain ID. |
RetrieveEntityId |
For a given name and domain ID, retrieves the entity
ID. If the ID does not exist in the DNCIM entityName cache,
then the stitcher calls the RetrieveNCIMEntityId stitcher
to retrieve the entity ID from NCIM and create the same entity ID
in the DNCIM entityName cache. This ensures that NCIM and
DNCIM entity IDs are consistent where possible. If the RetrieveNCIMEntityId stitcher retrieves an entity ID from NCIM but that entityId is already allocated within dNCIM, then a new entity ID is created in dNCIM and a discovery event is generated with information on the mismatch between the entity IDs in dCNIM and NCIM. If the RetrieveNCIMEntityId fails to communicate with the NCIM database, then it hands back control to the RetrieveEntityId stitcher. The RetrieveEntityId then generates a new entity ID in the dNCIM entityName cache and generates a discovery event indicating that the NCIM database is down. |
RetrieveNCIMEntityId |
Called by the RetrieveEntityId stitcher to requests
an entity ID from the NCIM database if it has not been possible
to retrieve the entity ID from the DNCIM entityName cache.
If the ID does not exist in NCIM, then the stitcher creates the entity
ID in the NCIM database and also creates the same entity ID
in the DNCIM entityName cache. This ensures that NCIM and
DNCIM entity IDs are consistent where possible. If the RetrieveNCIMEntityId stitcher retrieves an entity ID from NCIM but that entityId is already allocated within dNCIM, then a new entity ID is created in dNCIM and a discovery event is generated with information on the mismatch between the entity IDs in dCNIM and NCIM. If the RetrieveNCIMEntityId fails to communicate with the NCIM database, then it hands back control to the RetrieveEntityId stitcher. The RetrieveEntityId then generates a new entity ID in the dNCIM entityName cache and generates a discovery event indicating that the NCIM database is down. |
SendDNCIMChangesToModel |
Sends topology changes to ncp_model. The stitcher records the time the topology is sent. Called by PopulateDNCIM.stch. |
UnconnectedToSubnet |
Finds main node entities which are not connected to anything and places them within the appropriate subnet collection. |