博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
P2P应用层组播
阅读量:6197 次
发布时间:2019-06-21

本文共 805 字,大约阅读时间需要 2 分钟。

组播技术(Multicast)是一种针对多点传输和多方协作应用的组通信模型,有高效的数据传输效率,是下一代Internet应用的重要支撑技术。早期的组播技术研究试图在IP层提供组播通信功能,但IP组播的实施涉及到对现有网络基础设施的调整,因此,大规模应用受到限制。随着P2P研究的兴起,基于应用层的组播技术逐渐受到广泛关注。应用层组播协议将组成员节点自组织成重叠网络(Overlay network) ,在主机节点实现组播功能,为数据多点并发传输提供服务。应用层组播是在应用层实现组播功能而不需要网络层的支持,这样就可以避免出现由于网络层迟迟不能 部署对组播的支持而使组播应用难以进行的情况。当然,应用层组播也有许多局限:一是端系统对IP网络的了解有限,节点参与组网时,只能通过探测获得一些网络性能参数,选取的逻辑链路难以优化;二是主机不了解IP网络的拓扑结构,只能通过带宽和时延等外在的特性参数,以启发式的方式建立重叠网络,逻辑链路不能较好地利用质量较好的底层网络资源,重叠网络的多条链路可能经过同一条物理链路。

 

当主机向组播组发送数据时,是将数据放在组播数据报中,组播数据报用于寻找组播组的地址。它与UDP数据报没有什么区别。大多数组播是音频或视频数据,或者是两者兼而有之。这些类型的数据相对来说数据量比较大,部分数据的丢失影响不大。如果在传输过程中有几个像素点,甚至是整帧的视频数据丢失,信号不至于模糊不清,不可辨识。因此,组播数据用UDP发送,尽管不可靠,但其传输速度要比面向连接的TCP发送数据的速度快3倍(只要思考一下就会知道,TCP上的组播几乎不可能。TCP要求主机确认接收,而在组播中处理确认绝对是一场噩梦)。如果应用组播传输数据又不能忍受数据的丢失,则需要判定数据在传输过程中是否受损以及如何处理数据的丢失。例如,若建立一个分布式缓冲系统,就可以简单决定具体是哪些文件没有真正达到客户机缓存。

转载地址:http://vduca.baihongyu.com/

你可能感兴趣的文章
mybatis 3.2.8 + log4j2.0.2 控制台输出sql语句
查看>>
iOS开发之调用系统打电话发短信接口以及程序内发短信
查看>>
C#正则表达式Regex类的介绍
查看>>
C实现通用数据结构--双向链表
查看>>
Android setTag()/getTag()-(转)
查看>>
基础总结篇之中的一个:Activity生命周期
查看>>
Log4cpp介绍及使用
查看>>
安装logstash+kibana+elasticsearch+redis搭建集中式日志分析平台
查看>>
百度翻译word-wrap,页面错乱原因查找过程(已修复)
查看>>
编写你自己的单点登录(SSO)服务
查看>>
CMD魔法堂:支持显示UTF8编码的中文
查看>>
空气质量标准
查看>>
tar命令的详解
查看>>
windows下使用lighttpd+php(fastcgi)+mysql
查看>>
Android Fragment详解(一):概述
查看>>
SQLSever: 如何在select中的每一行产生不同的随机数?
查看>>
【插件开发】—— 11 窃听风云(Java事件监听原理-GEF实例讲解)
查看>>
EF异常:“System.InvalidOperationException”类型的未经处理的异常在 mscorlib.dll 中发生...
查看>>
quartz中的corn表达式(转)
查看>>
机器学习技法--学习笔记03--Kernel技巧
查看>>