阅读:1273回复:0
不需要服务器的即时通讯软件 的可行性
本人近来突发奇想,要做一个不需要服务器的即时通讯软件,
请各位高手来讨论一下技术上的可行性,先不管有没有人用, 现假设有一百万人在全球各地装了这个软件。那么,不需要 服务器可以通讯么? 下面是我的初步考虑: 1。如何告诉网上的其他客户端本机在线?? 系统运行的时候,不断向位于全球不同网络内的主机以固定的 UDP端口发送请求。为了避免发送很多的请求,可以考虑先用 traceroute来减少发送的数目。 2。如何发现发现网络上的其他客户端? 系统启动的时候,同时启动一个pcap程序,监视网络上的数据 流,一旦发现固定端口的数据,进行一些验证之后,认为已经发现 了一个客户端。 这时候,两个客户端就建立了一个连接。 3。客户端如何扩充?? 一个客户端一旦发现了新的客户端,他就立即向他已知的客户 端发送广播。从而是客户端数量膨胀。 考虑到网络的效率和稳定性,一个网络之内,可以轮流又几个客户端做转发工作。 4。数据如何传播? 数据直接传播或者类似3的方式转播。 这些都还是一些初步的想法,欢迎大家讨论。如果真的有这么一个软 件的话,那简直台爽了。 |
|