Cisco Cisco Prime Network Registrar 8.1 Technical References

Page of 316
Detailed Description 
Cisco Prime Network Registrar IPAM 8.1.1 CLI and API Guide 
308 
Detailed Description 
The DNS Listener is a small multi-threaded program that listens for messages from DNS 
servers. When notified of a change to a zone that a server is responsible for the listener 
can request detailed information about those changes and then use this information to 
update Cisco Prime Network Registrar IPAM. In this way Cisco Prime Network Registrar 
IPAM is kept synchronized with the DNS as hosts join and leave the network.  
The listener is composed of three long lived threads, one queue, and a short lived thread.  
See Figure 1. The notify thread is responsible for listening for notify messages from DNS 
servers. When changes are made to the affected zones the DNS server will send a 
NOTIFY message to the listener.  Notify messages sent by DNS servers are sent to port 
53 by default, which is a privileged port on most UNIX systems. For this reason the DNS 
Listener defaults to port 5053. Both the port the server sends to and the port the listener 
listens on can be changed as described below. 
When the listener receives a NOTIFY message, the notify thread sends a message to the 
transfer manager thread which increments its count of notify messages for the server. 
When the number of notify messages exceeds the listener.notifythreshold property, and 
the transfer manager is not in the paused state, the transfer manager thread will create and 
start a transfer thread. The transfer thread will request an IXFR from the appropriate 
DNS server, place the resulting resource records on the queue, and then exit. 
The resource record input manager thread is notified when records are placed on the 
queue. When this happens the input manager compares the number of records on the 
queue with the listener.maxrecords property.  If there are more records than the 
listener.maxrecords specifies, the input manager thread will send a pause message to the 
transfer manager thread.  When the transfer manager is in the pause state it will continue 
to process notify messages from the notify thread, but will not start any new transfer 
threads. The input thread will then sequentially remove the resource records from the 
queue and process them as described above. When the number of records remaining on 
the queue is less than the listener.maxrecords, a restart message will be sent to the transfer 
manager.