I’m not sure how you define “TCP connection”.
Each session in this protocol is initiated by a packet with a SETUP type message, then the backend server responds with an OK message, then the client sends a few other messages of various types and receives each time a proper response, and at some point the client sends a TEARDOWN message and receives an OK. That’s how all sessions progress. Each session lasts a couple of minutes max.
Perhaps I must also repeat that all sessions will be initiated by the same one or two or maybe three clients systems, so differentiation based on IP address is meaningless.
I know that this protocol can be load-balanced using the Octopus load balancer (a partner of ours is doing it and is happy with it), but I have trouble finding documentation about that, whereas HAP seems to be more prevalent and better supported overall.