The BCAAA service consists of two processes: bcaaa.exe and bcaaa-nnn.exe. bcaaa.exe is the acceptor and bcaaa-nnn.exe is the processor. The nnn in bcaaa-nnn.exe refers to the version of the protocol spoken between the ProxySG and BCAAA. The example in this article will use bcaaa-130.exe.
The acceptor (bcaaa.exe) is the process that listens on port 16101. When a ProxySG connects, the acceptor completes the TCP handshake and then reads the first few bytes of the stream, which contain the ProxySG's login information. Included in the login information is the version of the protocol spoken by the ProxySG. In this example, that version is 130.
The acceptor then spawns a new instance of the processor for the realm. Because the ProxySG sent 130 for its protocol version number, the process spawned will be bcaaa-130.exe. The acceptor then hands off the connected socket to the newly spawned processor, and the processor will be the only process doing reads and writes on the socket from this point forward.
It's important to note that a separate instance of the processor is spawned for each connected authentication realm. This is why you will frequently see multiple instances of the processor running on a given BCAAA server at one time.