bind _addr specifies the address to bind to for incoming communications.
mcast_addr and mcast_port specify the muticast address/port to use when broadcasting messages to the cluster.
Even if you don't specify a mcast address and port one is used. See the javadocs on the UDP protocol on the JGroups website for defaults.
There is no specific reason why specifying these would help performance though. I suppose what you need to do is to identify where your bottlenecks are - at what stages of the app do you run into performance bottlenecks, etc etc.
Thanks for the reply. That helps me to understand the difference between the two much better.
We are working with our network engineering department to monitor the network traffic between the different machines based on various configurations (the app servers are located offsite in a data center). So far we have been focusing on different configurations at the JBossCache level, specifically the cache mode. If we start testing different JGroups configurations I'll post the results here.
Just FYI, it's hard to determine the bottleneck since we only run into problems when running all 16 nodes. Fun stuff. ;-)
Have you tried repl_async?
Also, if you need sync replication but have session affinity, you could try buddy replication. Makes things scale much better.