Server multicast, multithread, udp. [Problema - Enviar mensagem somente para um cliente]

Pessoal, estou precisando da ajuda de vocês primeiramente na lógica e depois em código. Não estou conseguindo pensar direito em como fazer isso. Dei uma pesquisada aqui no fórum mas não deu para resolver meu problema. É o seguinte, eu tenho um servidor multithread que envia mensagens recebidas de qualquer cliente para um endereço multicast, onde todos os clientes ficam ouvindo esse endereço. Eu estou com dificuldade em querer mandar mensagem para um cliente só. Meu servidor funciona assim.

Cria servidor.
Espera conexões.
Cliente se conecta e manda o socket do cliente para uma outra classe que implementa Runnable.
E quando recebe uma mensagem, envia para um endereço multicast.

Código dessa parte para ser mais claro.

public void startServer() {
        serverExecutor = Executors.newCachedThreadPool();

        /** Cria servidor e gerencia novos clientes */
        try {
            /** serverSocket para entrada conexões */
            ServerSocket serverSocket = new ServerSocket( PORTA_SERVIDOR, 100 );
            System.out.printf( "%s%d%s\n", "Servidor esperando conexões na porta ", PORTA_SERVIDOR, " ..." );

            // Esperando por clientes constantemente
            while( true ) {
                /** Aceita conexões de novos clientes */
                Socket clienteSocket = serverSocket.accept();
                
                /**
                 * Cria uma Thread separa para cada cliente conectado passando um objeto RecebedorDeMensagem para receber
                 * mensagens de um cliente particular e depois retorna esperando por novas conexões.
                 */
                serverExecutor.execute( new RecebedorDeMensagem( this, clienteSocket ) );

                System.out.println( "Conexão recebida de: " + clienteSocket.getInetAddress() );
            }
        }
        catch( IOException e ) {
            e.printStackTrace();
        }
    } // fim do método startServer

Esse this que ele passa para a classe RecebedorDeMensagem é porque a classe servidor implementa uma interface mensagemListener, que cada classe que quer enviar uma mensagem implementa da forma como quiser.

Ninguém pode me ajudar nesse problema? Ao menos tentar?