首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络协议 >

哪位研究过GTalk的P2P部分?问上它里面的Relay流程是什么样子的

2012-08-14 
哪位研究过GTalk的P2P部分?问下它里面的Relay流程是什么样子的?如题,还有它的语音数据封装形式和端口分配

哪位研究过GTalk的P2P部分?问下它里面的Relay流程是什么样子的?
如题,还有它的语音数据封装形式和端口分配处理

[解决办法]
看了一下,基本原理如TURN draft-ietf-behave-turn-09描述的那样。但有挺多不同和简化。当然了,这个东西私有的,不存在互通的问题。

基本流程差不多,client和relay server之间 allocate啊, response啊。。。。

但正如你看到的,一个明显不同,Gtalk的server transport address用端口5000,relayed transport address用端口5001. 所以Gtalk对所有allocation都分配的5001,并不像TURN协议所说的一个relayed transport address可以一一对应一个allocation。Gtalk用地址对和连接绑定来识别allocation。 当然了,有源代码,你也可以修改,因为RelayServer的写法是有一个sock address pool,可以从这个pool中选择/分配relayed transport address给某个client的allocation,只是这个pool陪Gtalk设置为只有一个sock address,使用端口5001.

还有,比如说Gtalk中的allocation不是通过Refresh消息来刷新,而是用数据包去刷新。也没有实现Allocation的一些高级属性,比如分配的一些选项。
。。。


-千里

热点排行