An electronic communication system comprising a cluster comprising a plurality of network nodes wherein a network node of the plurality of network nodes comprises at least one processor and a memory operatively coupled to the at least one processor, the electronic communication system being configured to: access communication information in at least one storage medium, the communication information comprising information associated with each network node of the plurality of network nodes; determine which communication device of a plurality of communication devices to register with each network node of the plurality of network nodes based on the communication information; register one or more of the plurality of communication devices with a network node of the plurality of network nodes based on the step of determining which communication device of the plurality of communication devices to register with each network node of the plurality of network nodes; the electronic communication system being characterised in that it is further configured to: collect and store additional communication information; create updated communication information based on the additional communication information; determine if every communication device of the plurality of communication devices is registered to the correct network node based on the updated communication information; if it is determined that not every communication device of the plurality of communication devices is registered to the correct network node based on the updated communication information, determine if the communication service quality for every communication device of the plurality of communication devices is above an acceptable threshold; if it is determined that not every communication device of the plurality of communication devices is registered to the correct network node based on the updated communication information and that the communication service quality for every communication device of the plurality of communication devices is above an acceptable threshold, determine that a time for redistributing the one or more of the plurality of communication devices has exceeded a threshold and, in response, redistribute the one or more of the plurality of communication devices to the correct network nodes based on the updated communication information. access communication information in at least one storage medium, the communication information comprising information associated with each network node of the plurality of network nodes; determine which communication device of a plurality of communication devices to register with each network node of the plurality of network nodes based on the communication information; register one or more of the plurality of communication devices with a network node of the plurality of network nodes based on the step of determining which communication device of the plurality of communication devices to register with each network node of the plurality of network nodes; collect and store additional communication information; create updated communication information based on the additional communication information; determine if every communication device of the plurality of communication devices is registered to the correct network node based on the updated communication information; if it is determined that not every communication device of the plurality of communication devices is registered to the correct network node based on the updated communication information, determine if the communication service quality for every communication device of the plurality of communication devices is above an acceptable threshold; if it is determined that not every communication device of the plurality of communication devices is registered to the correct network node based on the updated communication information and that the communication service quality for every communication device of the plurality of communication devices is above an acceptable threshold, determine that a time for redistributing the one or more of the plurality of communication devices has exceeded a threshold and, in response, redistribute the one or more of the plurality of communication devices to the correct network nodes based on the updated communication information.