类似于视频会议(这个好像一般都是一对一传输的)和网络电视等,从根节点采集数据,然后分发下来,整个结构是一个树形结构,即每个客户端也复杂分发数据给其他的客户端,大致如下图所示:
Root(视频采集分发根节点)
/ | \
A B C
/|\ /|\
D E F H I J
看RTP和RTCP协议是基于重传、流量控制和变速率编码来实现,并且好像大部分是对于一对一传输这个模型的,现在如果某个节点比如E节点网速比较慢,那么A节点减慢传输速度给E,可是D和F的节点是网络正常,那也就出现问题,发给每个人的速度不一样,那就得使用多个缓冲区,分别对应于每个子节点。这样似乎有点耗内存,因为实时的视频数据比较大的。
变速率编码似乎在这里也不行,原因也一样,就是他的子节点速率不一致,总不能因为差的某些节点来影响其他所有的好的节点吧。并且变速率编码也不是那么容易写的。
至于重传,那么造成的时延又怎么处理?
请问一下高手,在这样情况下是如何保证QoS的?或者怎么选取一个折衷的方案?
15 个解决方案
#1
顶,好像是很复杂啊。我也在做这方面,交流啊:hxiang.zhang@gmail.com
#2
树状的P2P本身就存在很大的问题。
现在的P2P基本都是网状的。
分片交互方式的,树状的带宽会不够的
现在的P2P基本都是网状的。
分片交互方式的,树状的带宽会不够的
#3
厉害
#4
在发送的时候,做一下处理就可以了。你最好用重叠方式传,这样的话,你可以知道发送了多少,从而可以控制发送的速度。
#5
动态调整树型,把速率高的节点靠近书根,速率很低的节点放在叶子上.
#6
有點意思,up
#7
没有高手说说了吗?
等待中。。。
今天看到有“前向纠错”这个方法,就是利用后面的数据包来恢复前面丢掉的数据包,并且以音频数据优先,因为音频数据比较小,恢复可能比较好点。
等待中。。。
今天看到有“前向纠错”这个方法,就是利用后面的数据包来恢复前面丢掉的数据包,并且以音频数据优先,因为音频数据比较小,恢复可能比较好点。
#8
不会消耗多少内存的。
树状=>网状?
树状=>网状?
#9
网状好像管理起来比较复杂一点哦
#10
前向纠错 是以增加冗余来保证,如果带宽够那是没有问题
网状的实际上也不会复杂多少,就是保存的上级结点多些,而且是双向传输的.
网状的实际上也不会复杂多少,就是保存的上级结点多些,而且是双向传输的.
#11
mark
#12
在网状处理的逻辑算法不是很成熟的时候,就牺牲效率来达到需求了..不然网状反而会影响结果..
GZ
GZ
#13
哈哈,我有个方案,基于UDP的
#14
mark,
谁有p2p技术方面的入门资料啊
想做一个文件共享系统
谢谢
谁有p2p技术方面的入门资料啊
想做一个文件共享系统
谢谢
#15
你可能参考一个开源的项目,我分析过,它就是基于树型的p2p
www.peercast.org
www.peercast.org
#1
顶,好像是很复杂啊。我也在做这方面,交流啊:hxiang.zhang@gmail.com
#2
树状的P2P本身就存在很大的问题。
现在的P2P基本都是网状的。
分片交互方式的,树状的带宽会不够的
现在的P2P基本都是网状的。
分片交互方式的,树状的带宽会不够的
#3
厉害
#4
在发送的时候,做一下处理就可以了。你最好用重叠方式传,这样的话,你可以知道发送了多少,从而可以控制发送的速度。
#5
动态调整树型,把速率高的节点靠近书根,速率很低的节点放在叶子上.
#6
有點意思,up
#7
没有高手说说了吗?
等待中。。。
今天看到有“前向纠错”这个方法,就是利用后面的数据包来恢复前面丢掉的数据包,并且以音频数据优先,因为音频数据比较小,恢复可能比较好点。
等待中。。。
今天看到有“前向纠错”这个方法,就是利用后面的数据包来恢复前面丢掉的数据包,并且以音频数据优先,因为音频数据比较小,恢复可能比较好点。
#8
不会消耗多少内存的。
树状=>网状?
树状=>网状?
#9
网状好像管理起来比较复杂一点哦
#10
前向纠错 是以增加冗余来保证,如果带宽够那是没有问题
网状的实际上也不会复杂多少,就是保存的上级结点多些,而且是双向传输的.
网状的实际上也不会复杂多少,就是保存的上级结点多些,而且是双向传输的.
#11
mark
#12
在网状处理的逻辑算法不是很成熟的时候,就牺牲效率来达到需求了..不然网状反而会影响结果..
GZ
GZ
#13
哈哈,我有个方案,基于UDP的
#14
mark,
谁有p2p技术方面的入门资料啊
想做一个文件共享系统
谢谢
谁有p2p技术方面的入门资料啊
想做一个文件共享系统
谢谢
#15
你可能参考一个开源的项目,我分析过,它就是基于树型的p2p
www.peercast.org
www.peercast.org