我仔细观察了一下,在传文件的时候,两个机子是直接连的。
但是,两个QQ客户都是通过网关出去的,在网上显示的地址是网关的地址。彼此之间的连接是不能直接建立的,彼此之间绝对不能通讯的。 那么我想这个连接一定是A用户和B用户分别和QQ服务器建立连接之后,然后由QQ服务器把这两个连接搞成一个连接,然后两个机子才开始通讯的。 但这些都是我的猜测,不知道哪个高人能具体说一下思路,以及怎么实现,谢谢。
但是,两个QQ客户都是通过网关出去的,在网上显示的地址是网关的地址。彼此之间的连接是不能直接建立的,彼此之间绝对不能通讯的。 那么我想这个连接一定是A用户和B用户分别和QQ服务器建立连接之后,然后由QQ服务器把这两个连接搞成一个连接,然后两个机子才开始通讯的。 但这些都是我的猜测,不知道哪个高人能具体说一下思路,以及怎么实现,谢谢。
因为qq有第三方即服务器参与 所以可以知道对方位置 而单纯点对点 难度较大
------------------
点对点协议 (PPP)(RFC1661) 是一组允许来自不同供应商的远程访问软件交互操作的标准协议。启用 PPP 的连接可以通过任何工业标准 PPP 服务器拨入远程网络。
http://www.comprg.com.cn/wz10.htm
http://www.5xsoft.com/data/200107/0716201401.htm
qq用的是那种不可靠的udp协议,
不过,具体如何建立连接没有想过,看大家的看法吧
关注中
up
如果有发一个消息给这IP
客户机读取这类的消息后,开始建立连接。。思路应该是差不多吧