ACEmessage is a network application designed to deliver messages across any network infrastructure. When you install ACEmessage you get a standard set of 'out the box' settings which are designed to work with most networks. However, occasionally it is important to understand how ACEmessage operates, so that you can improve the speed at which messages are delivered across your organisation.
It is important to understand the Message Delivery Mode option which is accessible via:
[ACEmessage] -> Options (Button) -> Network (Tab)
Delivery Mode has two options:
These two options greatly change the way ACEmessage sends the message to your chosen targets. They are discussed below.
When ACEmessage sends a message via Unicast Message Delivery Mode, it contacts each target individually over the network. This process is defined below:
ACEmessage by default has 5 Sending Pipes of communication where the above steps are carried out. Therefore ACEmessage will simultaneously talk to 5 target computers to deliver the message, it will then keep using these 5 Sending Pipes until All of the target computers in the list have been processed.
Most problems that occur with slow message distributions are due between points 1 & 2 above. If ACEmessage resolves a hostname to an IP Address on the network, it will attempt to connect to that IP Address over TCP port 9487. If this target computer is either:
ACEmessage will 'lock' that particular Sending Pipe until a reasonable response time during stages 1 & 2 above. This is generally up to 10 seconds for a valid response, if no response is received within 10 seconds then the target is deemed to be 'unreachable' and therefore ACEmessage will fail that target computer and process the next in the list.
As you can imagine, if you have 1000 computer targets, and 20% are switched off (or other problems as listed above), then that is alot of 'lock time' during your message distribution.
ACEmessage can be tuned to enable quicker message distribution. These issues are defined below:
DNS
Make sure the computer which is running ACEmessage has fast access to a DNS server. You must also make sure that the hostnames can be resolved via this DNS server. A simple way to test this is using the NSLOOKUP tool in a CMD window. Simply type the hostname of a computer once you have entered an NSLOOKUP prompt, and you should see the IP Address for the hostname appear. If this resolution fails or takes a while you may need to check your DNS configuration.
PING
ACEmessage v1.7 (and later) now has a feature to PING target computers before attempting to communicate with them. A PING is a quick network cummunication test which verifies if a host if available on the network. To enable PING checking (Which can dramatically improve UNICAST message delivery times):
Firewall
For ACEmessage to successfully send a message to a computer, the ACEmessage computer must be able to create a communication session over TCP port 9487. So there must be no firewall inbetween the sending and receiving host (either hardware or software firewall) which will block TCP 9487 packets. YOU MUST ENABLE TCP PORT 9487 across your network for sucessful message delivery over UNICAST. ACEmessage and ACE Client (on install) will amend the Windows Firewall ruleset to allow the above. However, bespoke firewall applications or hardware firewalls will need to be amended to ALLOW tcp port 9487 commuication.
Testing ACE Client (Receiving ACEnwork.exe) Receiving Service on a Target Computer
Make sure that ACE Client is installed and listed in your Add/Remove Programs in the Control Panel. In you launch your Services list (START->RUN-> services.msc) you should see the ACEmessage Network Client service listed. It should have a Status of Started and a Startup Type of Automatic. If you open Windows Task Manager (Press CTRL+SHIFT+ESC altogether) you should have a process listed called ACEnwork.exe (Make you you click the button to show processes from all users!). If the above are all OK then ACE Client should be in a suitable state to receive messages.
Increasing the Sending Pipes
In extreme circumstances it may be required to increase the amount of Sending Pipes available to ACEmessage from the default of 5. You can increase this by:
<setting name="MaxUnicastPipes" serializeAs="String">
<value>5</value>
</setting>
ACEmessage has the ability to utilise Multicast for Message Delivery. The benefits of using Multicast Message Delivery Mode are:
As you can imagine, the main benefit is the 'instant' delivery of messages. Multicasting is a network technology whereby ACEmessage will send the message to the 'network infrastructure' and your network infrastructure will send the message to all ACE Client Computers. Those ACE Client computers who need to display the message (i.e their logged on users is a target) will then display the message to the user.
Multicast is not the default method of message delivery, due to the fact that most corporate networks to not have multicast enabled by default across their network routers and switches. If Multicast message delivery is not working across your organisation, it is most likely due to:
All of the above issues can be resolved by experienced Network Administrators who can enable Multicast across your network. They may require the below technical information in order to understand how ACEmessage and ACE Client utilise multicast.
ACE Clients will Join the following Multicast Group (By Default) upon Computer Startup (via IGMP)
Group: 231.4.5.52
ACEmessage (When operating in Multicast Message Delivery Mode) will:
Send UDP Packets to 231.4.5.52, with a TTL of 32 and to UDP port 8765
ACEmessage Multicast issues are mainly focused around Multicast setup and configuration of your network infrastructure. We cannot provide a default set of configuration guides due to the varied amount of network manufacturers (Cisco, 3Com, HP, Dell, Juniper... etc) however we recommend you speak with your Network Administrators to enable Multicasting across your network for the above settings as detailed.