通过服务端,对消息进行转发?该怎么处理

通过服务端,对消息进行转发?
eg:QTcpsocket传输数据
客户A、客户B都和服务端建立了连接,现在A想对B发送消息,但是A不知道B的地址,所以A将消息发送给服务器,然后服务器将消息转发给B。该如何实现?

小弟想法:A和服务器建立连接之后,会有一个socketA,负责A和服务器之间的消息传送,同样,B和服务器之间建立连接之后,也会产生一个socketB,我们可以通过socketA将消息发送给服务器,然后通过socketB将消息发给A。
但是,我可以通过socketA将消息发给服务器,但是服务器通过socketB转发消息的时候,结果B收不到消息,消息又被A给接收了,奇怪呀。。。求高手解释。。。

------解决方案--------------------
探讨

跟帖给分呀。。。