KB Logo

TOLIS Group Knowledge Base

Browse KB by category:
Go to KB #:
Glossary
Email   Bookmark



How does BRU Server use the ports 14441 to 14450 for backup operations?

Views: 12777
Votes: 2
Posted: 07 Feb, 2008

BRU Server Port Usage for Backup Operations

BRU Server uses TCP ports 14441 to 14450. These ports cannot be changed by the user.

In order to understand how BRU Server uses ports, both during backups and when dormant, this article discusses the uses of the ports and how the parent-child port relationship occurs as well as the BRU process that you may see running in the process list. To make it easier to understand, we will only use two machines - the BRU Server Server system and the BRU Server Agent system.

The BRU Server Server is the main system that has BRU Server's Server component, the BRU Server Agent component, and possibly the BRU Server Console installed.  The BRU Server Agent system is the client machine that has only the BRU Server Agent software installed.

While BRU Server is running, but not actually performing a backup, the following ports are used:

BRU Server Port Usage - No Backups Running
Port # Backup System Server Processes Client Machine Agent Processes
14441 Server (Listening)  
14442 Agent (Listening) Agent (Listening)
14443    
14444    
14445    
14446    
14447    
14448    
14449    
14450    

Port 14441 is in use by the BRU Server "Server" process, listening for connections from the BRU Server Console, bru-server.cmd, or bru-server.console applications.  Port 14442 is in use on both the client machine that has the BRU Server Agent software installed, as well as the BRU Server Server system, because it too has the BRU Server Agent software installed. Port 14441 will always be in use as long as the BRU Server's Server daemon is running, as will the BRU Server Agent process on 14442.   No other ports are currently in use.

Now, lets start a backup of the BRU Server Agent system.  This backup will be called "Backup 1".  The type of backup does not matter because no matter what type of backup it happens to be, the same process is used. With "Backup 1" now running, the following ports are used:

BRU Server Port Usage - One Backup Running
Port # Server System Server Processes Client Machine Agent Processes
14441 Server (Listening)  
14442 Agent (Listening) Agent (Listening)
14443 Backup 1 (Receiving) Backup 1 (Sending)
14444    
14445    
14446    
14447    
14448    
14449    
14450    

BRU Server Server: Ports 14441 and 14442 are still in use, however, now port 14443 is in use to receive the data for the "Backup 1" backup job from the BRU Server Agent system.
BRU Server Agent: Port 14442 is still in use, however, now port 14443 is in use to send the data for the "Backup 1" backup job to the BRU Server Server system.
BRU Processes: There is one BRU process running on the BRU Server Agent system to obtain the data and send the data to the BRU Server Server. Pretty straight forward so far, right?

Now a scheduled backup on the BRU Server Server has started.  That job name is "Backup 2" and it's backing up the BRU Server Server system.

BRU Server Port Usage - Two Backups Running
Port # Server System Server Processes Client Machine Agent Processes
14441 Server (Listening)  
14442 Agent (Listening) Agent (Listening)
14443 Backup 1 (Receiving) Backup 1 (Sending)
14444 Backup 2 (Sending)  
14445 Backup 2 (Receiving)  
14446    
14447    
14448    
14449    
14450    

BRU Server Server: All previous ports are the same, however, now port 14444 is sending the data to port 14445 for the backup of the BRU Server Server system.
BRU Server Agent: No changes.
BRU Processes: There are now two BRU processes running. One one the BRU Server Agent system for "Backup 1" and one on the BRU Server Server system for "Backup 2".

Now, to get a better idea of how the backup processes are spawned, lets start another backup operation on the BRU Server Agent system.  In doing so, you will now see the port usage as:

BRU Server Port Usage - Three Backups Running
Port # Server System Server Processes Client Machine Agent Processes
14441 Server (Listening)  
14442 Agent (Listening) Agent (Listening)
14443 Backup 1 (Receiving) Backup 1 (Sending)
14444 Backup 2 (Sending) Backup 3 (Sending)
14445 Backup 2 (Receiving)  
14446 Backup 3 (Receiving)  
14447    
14448    
14449    
14450    

BRU Server Server: All previous ports are still the same, however, now port 14446 has been put to use to receive the data from "Backup 3" on the BRU Server Agent system.
BRU Server Agent: All previous ports are still in use, however, port 14444 is now in use on the BRU Server Agent system to send the data from "Backup 3" to the BRU Server Server system.
BRU Processes: There are now three BRU processes running. One on the BRU Server Server for "Backup 2" and two on the BRU Server Agent system, one for each backup running.

If you continue this process, you can see how each backup takes a port on the Server system and on the Agent system.

How does the parent-child relationship come into play with all of this?  It's actually quite simple.  First, the question must be asked "what is a parent-child relationship when it comes to TCP/IP ports?"  A parent port is the initial process that spawns other processes and a child process is the spawned process.  Therefore, in the example below, the parent Server process is using port 14441.  This process is the first one created by BRU Server's Server component when the BRU Server Server daemon was started.


BRU Server Parent-Child Relationship - Three Backups Running
Port # Server System Server Processes Client Machine Agent Processes
14441 Server (Listening) Server Parent  
14442 Agent (Listening) Agent Parent Agent (Listening) Agent Parent
14443 Backup 1 (Receiving) Server Child Backup 1 (Sending) Agent Child
14444 Backup 2 (Sending) Agent Child Backup 3 (Sending) Agent Child
14445 Backup 2 (Receiving) Server Child  
14446 Backup 3 (Receiving) Server Child  
14447    
14448    
14449    
14450    

The parent-child relationship is on a per-machine basis.  Therefore, the Agent Child on the BRU Server Agent for "Backup 3" is not the child of any processes on the BRU Server Server system.  This is because that would cross machines, which the parent-child relationship does not do.  Instead, the parent-child relationship is individually done for each machine.  The parent process of "Backup 3" on the BRU Server Agent system is the Agent process that using port 14442.

Process tree's can be viewed in a Unix command line.  To do this, simply execute "ps axjf".  You can also sort the list by using the "grep" command, such as "ps axjf | grep bru".  That command requests the process tree list, but only shows those with the name of "bru" in the command.

Here is an example process tree from a Unix system with one backup process running to a tape device and only showing the process with the name of "bru":

$ ps axjf | grep bru
    1  2587  2587  2587 ?           -1 Ss       0   5:27 /usr/local/bru-server/server
 2587 12055 12055 12055 ?           -1 Ss       0   0:00  \_ /usr/local/bru-server/server
12055 12060 12055 12055 ?           -1 S        0   0:02      \_ /usr/local/bru-server/server
12055 12061 12055 12055 ?           -1 D        0   0:02      \_ brufilter -cvvvvvvvvvvf /dev/nst0 -Oj -b131072 -q/dev/fd/3 -r/dev/fd/4 -
    1  2589  2589  2589 ?           -1 Ss       0   1:51 /usr/local/bru-server/agent
 2589 12056  2589  2589 ?           -1 S        0   0:00  \_ /usr/local/bru-server/agent
12056 12057  2589  2589 ?           -1 S        0   0:01      \_ /usr/local/bru-server/agent
12056 12058  2589  2589 ?           -1 S        0   0:00      \_ /usr/local/bru-server/agent
12056 12059  2589  2589 ?           -1 D        0   0:03      \_ /usr/local/bru-server/bru -VBl -QX -m -vv -L localhost -a -B -m -cf - -
    1 12047  2772  2772 ?           -1 S      500   0:00 bru-server
12047 12048  2772  2772 ?           -1 Z      500   0:00  \_ [bru-server] <defunct>
12047 12050  2772  2772 ?           -1 S      500   0:00  \_ bru-server
12047 12053  2772  2772 ?           -1 S      500   0:00  \_ bru-server

 In the above example, there are three parent processes.  Process 2587, 2589, and 12047.  The processes listed below each are "child" processes that have been spawned from the parent process.

For questions about this, or for further cliarification, please contact Technical Support.

Others in this Category
document How to automatically disable Time Machine during a BRU Server backup.
document Moving from Retrospect? Information that you need to know before using BRU
document BRU Server doesn't backup mounted volumes, why?
document Autostart BRU Server on SuSE and openSuSE
document Does BRU Server support the ZFS filesystem?
» More Articles



RSS
Powered by KnowledgebasePublisher
Page Load Time: 0.045552 seconds / 45.552 milliseconds.
Page File Size: 41176 bytes.