Возможно, вам также придется рассмотреть случай, когда у двух пиров даже нет общедоступных IP-адресов, и в этом случае вы можете использовать методы STUN , чтобы избежать необходимости в центральном сервере. STUN эффективно использовался в таких продуктах, как Skype (я думаю), но на данном этапе он остается черным искусством.
Для централизованного подхода рассмотрим XMPP , из которых ejabberd является очень популярной реализацией. Существуют и другие протоколы обмена сообщениями, например, новый стандарт AMPQ.
Эти технологии, вероятно, будут более надежными и масштабируемыми, чем домашний протокол на основе сокетов.