Это зависит от того, сколько вы хотите сделать самостоятельно. Это для образовательных целей или для реального применения?
Если последнее, я бы использовал XMPP (Jabber). Это последний открытый стандарт IM, используемый такими продуктами, как Google и Facebook-чат (среди прочих). Вы можете использовать одну из библиотек Java XMPP (например, Smack). Обратите внимание, что XMPP - это протокол клиент-сервер.
Если вы хотите сделать это самостоятельно, я все равно не буду использовать RMI. Это будет главным образом блокировать реализации в использовании Java. Он также не разработан как общий сетевой протокол. Скорее, это в основном длинная рука для одной машины для манипулирования объектами на другой машине.
Скорее начните с точки зрения чистого сетевого протокола, который любой может реализовать. Это может быть одноранговый или клиент-сервер. Затем выполните реализацию Java.
Что значит «IP-мессенджер»? Какое приложение действительно будет использоваться? –
http://stackoverflow.com/questions/how-to-ask. Прочтите. Еще раз. –