导语:在现代信息技术迅猛发展的时代,带宽这一概念越来越被大众所熟知。
本文将全面科普带宽的重要性及其应用场景,带你深入了解带宽在日常生活和工作中的广泛应用。
一、什么是带宽?
带宽,简单来说,是指单位时间内数据传送的速率。
它表示电子线路或网络能够传输数据的能力。
带宽的单位通常是“位/秒”(bps),表示每秒传输的数据量。
带宽越高,数据传输的速度就越快。
二、带宽的重要性
1. 数据传输效率:带宽的高低直接影响到数据传输的效率。高带宽意味着更高的数据传输速度,能够更快地下载、上传文件,提高网络使用的体验。
2. 云计算和大数据处理:云计算和大数据处理需要高速、大容量的数据传输,带宽的提升使得云计算服务更加流畅,大数据处理更加高效。
3. 多媒体应用:随着互联网的普及,视频、音频、直播等多媒体应用越来越广泛,高带宽能够确保流媒体内容的高质量传输,提升用户体验。
4. 物联网发展:物联网时代,大量设备需要同时传输数据,高带宽能够满足大量设备的数据传输需求,推动物联网的发展。
三、带宽的应用场景
1. 宽带上网:在日常生活中,我们常用的宽带上网就是带宽的典型应用。高带宽意味着更快的下载、上传速度,让我们在浏览网页、观看视频、进行在线游戏等操作时能够获得更好的体验。
2. 企业数据传输:在企业环境中,带宽用于数据传输、云计算服务、视频会议等。高带宽能够确保企业数据的快速传输,提高办公效率。
3. 远程医疗与教育:远程医疗和远程教育需要高速、稳定的网络连接。带宽的提升使得远程医疗和教育的实施更加便捷,提高了医疗和教育的质量。
4. 视频监控与直播:在公共安全领域,视频监控和直播需要高带宽来确保画面的清晰度和流畅度。高带宽还能够支持多画面同时传输,提高监控效率。
5. 云计算与大数据处理:云计算和大数据处理需要大规模的数据传输和存储。高带宽使得云计算服务更加流畅,大数据处理更加高效,推动了云计算和大数据产业的发展。
6. 物联网与智能家居:物联网时代,智能家居设备需要实时传输数据。高带宽能够满足大量设备同时传输数据的需求,实现智能家居的便捷操作和管理。
7. 虚拟现实与游戏:虚拟现实技术和游戏需要高速的网络连接来支持高质量的画面和流畅的操作。高带宽能够提升虚拟现实体验和在线游戏的质量。
8. 科学研究与高性能计算:科学研究和高性能计算需要处理大量数据,高带宽能够加快数据处理速度,推动科学研究进展。
四、科普的带宽名字大全
1. 宽带:指传输速率较高的网络连接,通常用于家庭和企业上网。
2. 窄带:指传输速率较低的网络连接,适用于一些基本的网络应用。
3. 频带宽度:指一个信号所占用的频率范围,是带宽的一种表现形式。
4. 数据带宽:指单位时间内数据传输的速率,是评价数据传输能力的重要指标。
5. 通道带宽:指通信系统中通道的传输能力,决定了信号传输的质量。
6. 无线带宽:指无线通讯系统中的传输能力,影响无线通信的质量和数据传输速率。
总结:
本文通过介绍带宽的概念、重要性以及应用场景,带领大家了解了带宽在日常生活和工作中的广泛应用。
同时,本文还提供了科普的带宽名字大全,帮助大家更好地理解和应用相关概念。
随着信息技术的不断发展,带宽的重要性将越来越突出,我们将更加依赖于高带宽的网络连接。
再来一个科普:1G到5G
6月6日,中国5G商用牌照已经正式发放,花落四家机构。
值此值得纪念的时刻,给大家分享一篇有关5G的科普文章。
一、电磁波 要说5G,不懂点电磁波是不行的。
提问:仙人掌能防电脑辐射吗?知道答案的大盆友直接看后半篇,下面这段写给小盆友。
日常生活中,除了原子电子之外,剩下的几乎全是电磁波,红外线、紫外线、太阳光、电灯光、wifi信号、手机信号、电脑辐射、核辐射,等等。
只要是波,就逃不过三个参数:波速、波长、振幅。
电磁波的速度是恒定的光速,因此只需考虑:波长(或频率)、振幅(不考虑方向),其中 频率对于电磁波来说,尤为重要。
频率越高,对应着电磁波的波长越短,能量越高,衰减越快,穿透性越差,散射越少,对人体伤害越大。
就着这个原则,咱从头到尾捋一遍。
长的电磁波波长能到 1亿米, 频率3Hz,1秒钟三个波,如果用来通信的话,等你一句话说完,就可以过年了。
稍微正常点的电磁波, 波长几万米, 用这通信,就一个字:稳!江河大山都挡不住,甚至能穿透几十米深的海水(海水导电,是电磁波的克星)。
不过就这点频率,只能勉强携带点信息,发一个hello,大概需要半小时,也就比写信稍微强点。
因为超长波实在是稳,一般用在岸台向潜艇单向发送命令。
再短点, 几十米波长的电磁波, 频率就到了百万赫兹MHz级别,能携带的信息就很可观了,一句话至少能说利索了。
而且照样还能跑很远,几百公里不在话下,所以收音机广播、电报、业余无线电一般用这个频段。
说点有用的,假如你困在荒岛上,有个飞机路过,赶紧用121.5MHz呼救,这是民用紧急通信频率,还有个军用紧急通信频率243MHz,这些都是不加密的公共频率。
上次解放军和台军战机对峙,双方用这个频率对话,结果被无线电爱好者录下来放网上了,吃瓜群众喜闻乐见之余,又担心我军通信太容易被破解,真是阿弥陀佛了。
波长再短点, 到了1米~1厘米, 就有意思了。
一方面,虽然衰减已经很明显了,但一口气还能跑个百十公里,够用;另一方面,频率到了GHz级别,能携带足够多的信息,不但话能说利索了,还有多余功夫让你加个密什么的。
所以这个波段是通信的焦点,什么1G2G3G4G,什么卫星通信雷达通信,全在这,统称微波通信。
到了毫米级, 电磁波就跑不了多远了,虽然毫米波不太发散,但很容易被周边物质吸收或反射,几乎没啥穿透性,用来通信很鸡肋,不过用在导弹导引雷达或微波炉上棒棒的。
但,毕竟频率超过了30GHz,携带的信息量实在太馋人,要不还是试试吧!于是,5G来了。
5G同志先等等,继续往下数,来到 微米级。
毫无疑问,能携带的信息量继续倍增,但波长0.7微米的电磁波就已经是可见光了。
可见光都见过吧,别说穿墙了,一张纸都够呛,想接着按照7G8G9G的套路肯定走不通啊。
然后,就有了激光通信,发射端和接收端必须瞄得准准的,中间还不能有阻挡,这优缺点自个儿体会体会。
波长到了0.3微米, 也就是300纳米,先别管频率的事了,这玩意儿就是我们熟知的紫外线,终于对人体有害了。
太阳光里的紫外线大约占了4%,如果你一天能晒上半小时太阳的话,那么前面提到的那些电磁波辐射基本可以无视了(不要钻电磁共振的牛角尖,咱只说普遍情况)。
波长200纳米的紫外线, 在太阳光中几乎是没有的,所以在阳光太强时,紫外线通信就成了激光通信很好的补充,不但隐蔽性更好,还不用对得那么准,在几公里的距离上非常好用,是近些年军事通信的研究热点。
接下来就和通信无关了, 波长到了纳米级就成了X光, 就是在医院见到的那种,这么说的话,X光其实也能叫纳米技术(这是玩笑)。
最后, 波长短到了0.01纳米以下,这就是闻之色变的伽马射线, 来自核辐射,全宇宙最强的能量形式之一!若是要毁灭一个星系,伽马射线是不二之选。
实际上,科学家一直怀疑,超新星爆炸产生的伽马射线爆已经毁灭了绝大部分的宇宙文明,好在太阳系处于比较角落的地带,周边恒星不多。
终于说完了波长频率,那振幅呢?连仙人掌能不能防辐射都不知道,也就没必要了解振幅的含义了,直接跳过。
二、1和0 回到微波通信。
为什么频率越高,能携带的信息就越多?以数字信号为例,信息就是一串串的1和0,所以先搞清楚怎样用电磁波表示1和0。
第一种方法叫 “调幅”, 基本思路是调整电磁波的振幅,振幅大的表示1,振幅小的表示0,如下图。
收音机的AM就是调幅,缺点颇多。
第二种方法叫 “调频”, 基本思路是调整频率来表示1和0,比如,用密集的波形表示1,疏松的波形表示0。
收音机的FM就是调频,优点多多的。
很显然, 在单位时间内,发出的波越多,能表示的1和0就越多,换句话说,频率越高能携带的信息就越多。
这样算起来,频率800MHz意味着每秒产生800万个波,都用来表示1和0的话,1秒钟可以传输100M数据,这速度很快啊!为啥我们感觉不到呢? 古语有云,重要的事情说三遍,通信也是如此。
无线电跋山涉水,弄丢几个1,0太正常了,防止走丢的土办法就是抱团。
比如,用一万个连续的1表示一个1,哪怕路上走丢了两千个1,最后咱还能认得这是1。
这种傻办法只能用在民用通信,因为特征太明显,很容易被破解。
还记得北斗民用信号被破解的新闻吧,原因就在此。
民用信号只要能和其他信号区分开就行,不会弄得太复杂,不然传输效率太低。
按2G技术那样,800MHz的频率,传输数据大不过每秒几十K。
军用就两码事了,为了防止被破解,要用很复杂的组合来表示1和0,中间说不定还有很多无效信息,各种跳频技术扩频技术,还不停变换组合,总之越花哨越好。
所以同样一句话,军事通信要用掉更多的1,0,因此为了保证传输效率,军用频率就比民用高很多。
就目前来说,顶级破解技术还干不过顶级加密技术,这里不包括尚未成熟的量子通信。
军事对抗是无止境的,干不过也不能认怂!那怎办?既然弄不清楚你的1,0,那我就索性再送你一堆1,0,把你原有的组合搞乱,让你自己人都懵逼。
这就是电子对抗的环节,跑题了,还是说回5G。
三、关键技术 前面说的,都是不值钱的原理,下面看看值钱的技术。
5G关键技术有一堆说法,咱给粗暴地归个类。
振荡电路插个天线就可以产生电磁波,用特定方法改变电磁波的频率或振幅,变成各种复杂的组合,这个过程叫 调制。
对应的,竖个天线就能收到空中的电磁波,按预定方法变回1,0,这个过程叫 解调。
把电磁波发到空中,或者把空中的电磁波收下来,都需要天线,别以为现在手机光溜溜的就不需要天线了。
手机与手机是无法直接通信的,而是通过周边的基站与别的手机联系。
于是,问题来了,5G使用的毫米波在空气中衰减非常严重,但又不能无限制提高发射功率,怎么办呢?只能在天线上做文章了。
5G的第一个关键技术: 大规模多天线阵列。
大白话就是,增加天线的数量,不是增加一个两个,而是几百个。
这个思路很好理解,但是呢,用那么多天线发射同一个信号,稍不留神就乱成一锅粥。
多天线加毫米波,对比原先的少天线加厘米波,无线电传播的物理特征肯定不一样,得重新建立信道模型。
那信道模型怎么建立呢?相信我,你不会感兴趣的。
天线一多,不但能解决毫米波衰减的问题,传输效率、抗干扰等性能也是蹭蹭涨,算是5G必须课。
曾与华为齐名的大唐电信于2015年率先发布了 256大规模天线, 引爆全球通信业,一时风光无限!可惜后来突然闪崩,沦落到卖科研大楼求生,令人唏嘘! 基站天线搞定,下面就轮到终端机的天线了,这货也有术语: 全双工技术。
一般手机的通信天线只有一个,收发信号交替进行,费劲的很!全双工技术,就是把发信号的天线和收信号的天线分开,收发信号同时进行,优点就不说了。
不过,这很难吗? 你想想,把话筒和音响挨在一起,还要求两者能正常工作,你说难吗?大体上分两个思路,其一,物理方法,比如在俩天线之间加屏蔽材料;其二,信号处理,比如无源模拟对消等。
2016年4月华为宣布已于成都5G外场率先完成第一阶段5G关键技术验证,测试结果完全达到预期。
其中两个重要验证就是大规模天线技术和全双工技术。
天线搞定了,再来就是 新多址接入技术, 这词听着真拗口,别急,马上就顺了! 举个例子(数字是胡诌的): 假设手机基站用100Hz表示1,105Hz表示0,这时又接进一个新电话,那新电话的1可以用110Hz,0用115Hz,如果再来新电话,依次类推。
这就是1G的思路,简称 FDMA。
这样2个电话就用掉了从100Hz到115Hz的频段,占用的15Hz就叫带宽。
外行也看出来了,这路子太费带宽了。
好在那会的手机只是传个语音,数据量不大,但也架不住手机数量的增加,很快就不够用了! 换个思路,大家都用100Hz表示1,105Hz表示0,但是第1秒给甲用,第2秒给乙用,第3秒给丙用,只要轮换的好,5Hz的带宽就够3个手机用,就是延时严重点而已。
这就是2G的思路,简称 TDMA。
再到后来,数据量越来越大,2G也玩不转了。
不过,只要有需求,就不怕没套路:在各自的信号前面加上序列码,再揉成一串发送,接收端按序列号只接受自己的信号。
就好像快递员一次性送了一叠信过来,大家按照信封上的名字打开各自的信。
这就是3G的思路,简称 CDMA。
如我这把年纪的人,应该都被联通的CDMA广告轰炸过吧? 再发展就是正交频分多址技术,把2个互不干扰的正交信号揉成一串发送。
所谓正交信号,和量子力学的叠加态有点类似。
把信号叠在一起发送,就是4G的思路,简称 OFDMA。
每个终端在网络上都有一个地址,所以这种让很多手机一起打电话的技术,从1G到4G,统称:多址接入技术。
咱5G特别时髦,叫“新多址接入技术”,这货怎么个“新”法呢? 稀疏码多址接入、非正交多址接入、图分多址接入……好吧,我承认有点云里雾里了,总体思路就是叠加更多信号或者把前面的技术混到一起,这里涉及大量的数学知识,奉劝各位好自为之吧! 暂时就说这么多吧,5G要实现10Gb/秒的峰值速率、1百万的连接数密度、1毫秒的时延,必须要先解决这三大关键技术。
2016年4月,华为的第一阶段 “关键技术验证”, 主要也是验证这仨技术。
新多址接入采用滤波正交频分复用、稀疏码多址接入、极化码,结合大规模天线,吞吐率提升10倍以上,在100MHz带宽下,平均吞吐量达到3.6Gb/秒;全双工采用了无源模拟对消、有源模拟对消和数字对消三重对消框架,可以实现113dB的自干扰消除能力,获得了90%以上的吞吐率增益。
2017年6月,华为完成第二阶段 “多种关键技术融合测试及单基站性能测试”, 在200MHz带宽下,单用户下行吞吐率超过6Gb/秒,小区峰值超过18Gb/秒,配套业内首个小型化5G测试终端,单个5G基站可同时支持上百路超高清4K视频。
2018年9月,华为完成第三阶段 “基于独立组网的5G核心网关键技术与业务流程测试”。
这三个阶段测试,华为均以100%通过率顺利完成。
除了三大关键技术之外,无数用户要组成网络,事情自然少不了。
比如,分配传输资源和指挥交通一样让人头大,一条道路分配不合理,半个城市就得跟着瘫痪,所以,华为完成关键技术验证后,又花了2年时间才进行独立组网测试。
再比如,能耗不能太离谱,价格不能高上天,诸如此类的基本要求。
四、又是芯片 可以看到,5G要处理的数据量远大于4G,所谓数据就是1,0,但凡涉及1,0的东西,基本都用芯片。
控制电磁波发射要用射频芯片,编码解码要用基带芯片,等等,这些也属于5G核心关键技术。
2019年1月24日,华为发布了全球首款5G基站核心芯片: 天罡, 以及,全球首款单芯片多模5G基带芯片: 巴龙5000。
既然是世界首款,免不了拿下N个全球第一。
把条件放宽到调制解调芯片,玩家就比较多了。
5G的主流频率是28GHz,有能力处理这个频段的芯片,目前是4家。
高通是最早的,三星是唯一做到39GHz的,华为是工艺最先进的,英特尔是哪里都不掉队的,台湾联发科据说马上也要来了。
多说一句,华为2018年2月发布的这款巴龙5G01芯片,因块头太大无法用在手机上,2019年1月就推出了手机使用的巴龙5000,同时还没耽误手机处理器芯片麒麟和服务器芯片鲲鹏,这进展还是不错的!五、标准 5G涉及的技术实在太多太杂,得订个规矩。
立规矩的重要性不比技术研发低,待会你看看欧盟就明白了。
5G标准第一阶段的第一部分已于2018年6月完成并发布,标志着首个真正完整意义的国际5G标准出炉,剩余部分陆续到2020年才能完工。
这次标准发布一共有50家公司参与,中国有中国电信、中国移动、中国联通、华为、中兴、大唐电信等16家,美国8家,欧洲8家,日本13家,韩国5家。
从数量上看,咱还是不错的。
从质量上看,咱应该也还是不错的。
举个例子: 在信道编码问题上,欧盟一直用Turbo码,美帝高通习惯用LDPC码,华为擅长用Polar码。
于是,第一回合欧盟就被干掉了,不但积累的Turbo技术打了水漂,还得重新学LDPC和Polar。
华为和高通继续交锋了两轮。
信道编码分“控制信道编码”和“数据信道编码”,高通的方案是两者都用LDPC码,华为的方案是数据信道用你家的LDPC码,控制信道用Polar码。
然后,联想对华为的方案投了反对票…… 当然,联想的投票对结局毫无影响。
因为分歧过大,当天只确定数据信道用LDPC码,至于控制信道择日再议。
等择好日,再次投票时,高通、三星、英特尔、爱立信等巨头搜罗了31家公司组成阵营,要求全部用LDPC码,华为则组织了包括联想在内的55家公司力争。
最终, 华为Polar成为控制信道编码,高通LDPC成为数据信道编码,大家平分秋色。
这事被翻出来后,联想引起众怒,但华为很贴心地帮着解围。
顺便说个常识:行业标准都还没全出来,5G离全面成熟应用还是有一段路的。
六、场景和意义 因为担心小盆友的想象力不够,所以国际电信联盟召开的ITU-RWP5D第22次会议,确定了5G的三个应用场景: 这图画得实在太差,解释一下:三个角上的三句话是5G的三大功能特点,蓝色小块是应用场景,小块越靠近哪个角就说明对这个功能的依赖越大。
后来,这三个角又改成了四个: 连续广域覆盖、热点高容量、低功耗大连接、低时延高可靠…… 说晕了,还是本僧用大白话总结一下吧。
就技术而言,5G就三句话: 网速快、信号广、延时少。
但技术带来的改变却超越了想象力,5G是全信息化的基石,完全可以实现当年物联网吹过的牛: 万物互联。
如果非要找个参考的话,可以想象一下:把2G3G4G去掉,回到大哥大时代……不认识大哥大的00后小盆友,可以问问身边的80后老爷爷。
我觉着,5G与4G的差异,比得上4G和1G的差异。
怎么样?懂了不?
P2P技术科普
迅雷,msn,skype,pplive, ppstream, BT……铺天盖地的 P2P 应用已然一定程度上改变了我们上网的习惯,方式以及质量。
如果你想了解 P2P 技术,又懒得找,懒得看那些繁琐,模棱两可又及其抽象的中文资料,这里应该是一个你想来的地方。
我的目的是用比较俗的语言来对 P2P 技术做一个系统的介绍。
这里,我会尽量避开不必要的术语,只告诉并解释你需要知道的。
当然我不是什么专家,不过请你相信我回尽量保证我所提供信息的准确性和严谨性。
我们没有任何商业目的,您的每一次点击都将对我国的慈善事业做出一份贡献。
在此谨代表站长 kakarott 先生向诸位表示感谢。
一、P2P 基本原理
在 P2P 技术之前,网络中的所有人大多都是通过一种叫做 “客户端 / 服务器” 的模式被组织在一起。
一个服务器向很多客户提供服务。
这样的模式中,对服务器的性能及相应带宽要求比较高,如果有成千上万的人都想下春晚,kaka 的海淀在线肯定就操蛋了。
当然一般的公司不会用一个家用电脑做服务器。
假设有存在一个特别强大的服务器,以及足够的带宽。
我们来看看这种模式天生的一些弱点:
-
服务器扮演的角色太重了,网络的一切都指着他。
假如 kaka 不小心把电脑从 6 楼扔下去,整个网络就都瘫痪了。
请注意,想要把一个服务器弄失灵的方法太多了,所以使用这中模式的风险是比较大的。
网络的资源利用率低下。
所有客户都只能从服务器那获得资源,因为他们之间不认识,甚至不知道相互的存在。
然而,现实中,可能每个人都有自己独门的资源,比如日天有无数游戏,威哥有无数动漫电影……. 总之,整个网络的资源可能是服务器的无数倍。
但是苦无客户端之间没有交流的渠道,所以资源无法互通。
关于完美服务器的假设,基本不成立。
P2P 技术就是要解决上述的问题已达到如下的效果: 所有人的资源都可以被别人找到并使用。
没有哪个人特别重要,人人平等(peer-to-peer 就是这个意思),任何一个人失灵都不会导致网络的死亡。
这里以 Gnutella 为例,对 P2P 基本原理进行介绍。
Gnutella 是一种典型的 P2P 网络,很具代表性,以其为基础的软件有 Limewire。
这种网络里,没有服务器。
用户之间任意连接,如图二左所示:
图 1-2
Kaka 认识 ‘日天’‘curt’‘威’, 日天认识‘小胖’,威认识‘候泡’,Curt 认识 ‘路’。
当然真正的网络有至少有成百上千个用户,这里只是展示一个小的局部。
这个网络如何工作呢?比如 kaka 想要找一首叫‘走进新时代’的歌。一个基本交易要经过如下几步:
-
kaka 给他的邻居们每人发一个请求消息,‘你们丫谁有走进新时代?’日天,威,curt 吐血,‘谁 tm 听这歌啊,我没有’。
于是把 kaka 的消息转发给他们的邻居:日天发给小胖,威发给候泡,curt 发给路总。
当 kaka 邻居的邻居们收到这个消息后,同样,先看看自己有没有。
比如,候泡有这个歌,他就可以给 kaka 发个消息:‘爷这有,来下吧’卡卡于是可以直接去候泡那下载。
很多人说在 p2p 里面,所有人即是服务器又是客户端。
应该这样理解,比如,kaka 在上例中就是个客户端。
但当有人要想要春晚的时候,只要那人的请求消息能被转到 kaka 这,kaka 就可以成为一个服务器。
最后要说的是 P2P 的现状以及应用。
目前 P2P 与传统的‘客户端 / 服务器’模式可以说分庭抗礼,互为补充。
那么为什么没能取而代之呢?因为,P2P 也有自身的弱点,其中包括:
-
占带宽(50% 以上的网络带宽都是 P2P 占用的,搜索方法不灵)安全(不具体解释了,太专业了,总之和加密那些东西有关)诚信(没有中央控制,你传个毛片也可以告诉你是新闻联播)自私(我什么都不付出,有也说没有)知识产权保护(在中国相当于盗版的集散地)等等。
至于这些问题的对策以及其不足,以后会做专题介绍。
P2P 的应用不少但大都停留在比较低端的服务,比如文件共享,msn,在线视频这一类。
实际上作为一种新的模式,其生命力应该不止如此。
二、非结构化 P2P 及其搜索方法
上集回顾,传统的‘客户端 / 服务器’模式有一些问题,比如,单一故障点,低资源利用率,高带宽要求。
我说 P2P 客服了这些问题,因为没有中央服务器了。
这里,我要强调一下,并不是说只要有中央的东西就是失败,只要这个中央的东西不是那个实际掌握资源的人就可以接受。
下面,简要介绍一下 P2P 技术的发展。
第一代、Napster
这一代的 p2p 只是把资源从服务器上拿掉了。
中央服务器上只有一个目录。
这个目录记录着哪个用户有哪些资源。
要建立这样的一个目录,要求网络中的每个人都要告诉这个服务器:他有什么资源。
-
Kaka 发一个资源请求向中央服务器。
这个服务器然后检索目录,并告诉 Kaka,日天有他要的东西。
Kaka 直接去找日天下东西。
这样做,解决了高带宽需求(服务器只需要转发一些消息,而不用真格的提供资源),低资源利用率的问题(网络里谁都可以发挥作用了)。
但是,他仍然面临严重的‘单一故障点’风险。
同时,napster 的出现严重挑战了知识产权法,并最终导致其在 2001 年被勒令关闭。
第二代、非结构化 P2P
Napster 帝国的坍塌,导致了江湖上群雄并起,老的规矩也就法不责众了,其中 Gnutella 等非结构的 P2P 脱颖而出。
非结构化说白了就是,用户之间瞎连,没有规定谁必须和谁有连接,基本随机。
其基本搜索方法是地毯式的,如果这样的搜索能够遍及整个网络。
那么,只要资源存在就一定能一网打尽。
但是上天要求每一个用户都要给自己资源请求加一个限制,于是每个资源请求都只能走几步就必须停了,即使什么都还没找到。
因为地毯式的搜索要消耗大量的网络资源,比如,平均一个人有 4 个邻居,如果资源请求的限制为 5. 那么一共需要 4+42+43+44+45=1364个信息,每个信息多大呢?大概几 k 到几十 k,也就是说一个信息就至少几 m。
一个人一个信息就这么大了,想想一个大网络,每人十几个邻居,限制提高到 7 或 8. 这就是为什么中国很多地方,尤其是网吧限制 p2p. 因为他们可怜的带宽都被 p2p 的请求信息占用了。
当然,p2p 的设计者们都看到了问题,于是提出了很多新的搜索方法。
这些方法可以分成两种:根据以前的搜索信息对以后的搜索进行预测;瞎找,碰运气。
-
根据经验的搜索准确率可能会高一点,但是这种方法要求每个用户都要建一些表来记录以前的数据,而且每次发送或接到请求都要经过一系列的计算才能决定发给哪个邻居。
而且程序上难以实现,更重要的是平均准确率并不比瞎找好很多。
这里就不多做介绍了。
瞎 B 找的,还基本上以地毯式为基础。
我介绍两种最常见的:K-walkers: 第一个人先把消息发给 k 个邻居,具体多少都自己定。
然后从第一轮邻居开始都只把消息转发给他们的一个邻居。
水纹式(涟漪式):先定一个限制。
第一个人先发给第一层的邻居。
如果第一层不灵,他们再发给他们的邻居。
一旦找到资源就不再继续了。
这样的话最坏的情况就是原始的地毯式。
好点的情况就是,消息没到限制就找到了相应的资源,就停了。
这种非结构的 p2p 的优点在于,操作简单,完全不需要中央控制,所以又称为‘存(纯)p2p’。
其缺点同样明显,要么牺牲搜索成功率,要么牺牲带宽占有量。
于是又有人提出了结构化的 P2P。数学的东西我就不说了,基本的思想就是:
-
每个用户,资源都得有个名字。
有一种数学加密方法,对这些名字加密。
且保证如果名字不同,那么得到的结果就不同。
如一资源和一用户加密后结果接近,就把该资源的地址放到相应的用户身上。
这样,结构化的 P2P 就可以保证,只要网络里有相应的资源,就一定能找到。
但是由于其程序实现的难度,加之维护网络所需的投入太大,并不被经常使用。
尽管他有很漂亮的数据。
当然还有第三代的,以后再做专题。
三、BT 工作原理简介
2002 年左右,程小胖告诉我有一种软件可以下片,人越多越快。
很神奇。
请注意,并不是所有的 P2P 技术都能做到这点,其他的 P2P 基本上只是提高网络资源的利用率,但是,网络中的每一单买卖都仍然采用,1 对 1 的客户端服务器模式。
回顾一下之前讲过的 P2P,去掉技术细节,做一单买卖可以这样描述:
-
有人向网络发一个资源请求(请求者)。
有很多种搜索方法可供选择。
当一个有该的资源的人(提供者)收到这个的请求,他会设法通知请求者:他那有其想要的东西。
于是请求者去找提供者下载。
这样做的一个缺点就是,比如,我选择了一个比较矬的提供者,而那人的带宽只有 30k,然而网络中还有很多潜在提供者,可能有的人能达到 30m。
但是由于我在选择时只无法对对方的带宽做出判断而无福消受。
这样做还有一个致命的漏洞!比如,我收到一个关于 “海贼王” 的请求,而且我有全套。
按理说我应该通知请求者,让他来我这下。
但是,让他来我这里下东西,对我来说,除了占我带宽,增加我中毒的风险,没有任何的好处。
那我凭什么主动邀请他来??我何不装 ytd,对该请求视而不见?非常不幸的是,跟我有相同想法的孙子在一般 p2p 网络里面占了大多数,甚至绝大多数。
这就是搭便车问题(free riding)。
所幸还是有一些大侠的,无偿的提供着大量资源,他们的存在使得那些一般的 P2P 得以侥幸存活。
其实,如果仅仅依赖活雷锋们,P2P 就失去了其人人平等的意义。
大侠们回复了网络中绝大多数的请求,于是人人都愿意与这些人建立连接,因为这样能更快的找到资源。
于是这些大侠们就成了变得越来越红,网络的拓扑结构(我装 b 了,这个词没法解释,但是我实在找不出别的词了,别在意,看下图。
)将会发生变化。
图 3-1
这样的变化很不好,因为 P2P 又逐渐变成了客户端 / 服务器模式了。
于是,不论是学术界还是产业界都意识到,如果没有一种鼓励机制来刺激提供者,P2P 将失去其天生的魅力。
在众多解决方案中 BT 脱颖而出,迅速发展了起来。
BT 是简称,在国外可能会产生歧义,如 British Telecommunications 等等。
所以大家尽量还是用全称,尤其是和外国人说的时候 Bit-Torrent。
有人说 BT 是第三代的 P2P,我认为这是因为他把 P2P 的理念更加深入的实现了。
在 BitTorrent 当中,所有的资源都被切成很小的等份(碎片)。
这里,你不需要知道怎么切,只需要知道有一种技术可以把一个文件切成很多小等份,还能把这些等份再重新的组装。
在这个技术的支持下,bittorrent 中所有有相同请求的用户可以相互传资源的碎片。
而且谁传的多,谁就将获得更多。
具体技术如下:
首先,有同样资源请求的人怎么能相互认识呢?bittorrent 中每一个资源都对应有一个叫tracker的服务器。
只要你对一个资源有意思,你就必须先联系这个资源相应的 tracker。
或者你想要共享一个资源你也必须联系 tracker。
这样的话,tracker 就掌握着整个网络中谁想要这个资源以及谁有这个资源。
当然,为了节约,一个 tracker 可以负责多种资源。
那么,怎么找到 tracker 呢?大家可能听说过做种子,每个有完整资源的人都可以做种子,其实就是生成一个后缀是 的文件。
每一款 bittorrent 应用软件都会自动帮你生成,所以不用担心。
你只要知道这个文件中包括两部分内容:1,tracker的地址。
2,相关资源的一些属性,比如大小,名字等等。
这个 torrent 文件一般都可以发布在网上,比如某某人的博客,或者论坛上。
于是,大家可以从网上找到 torrent 文件,并从中知道 tracker 在哪。
再通过联系 tracker 得到一个名单,其中包括一部分正在下载或有完整资源的用户。
这时候,你就可以与这些人建立链接,并分别从他们身上要不同的碎片。
当然要相同资源的人越多,你可以建立连接的人就越多,也就更可能早日得到所有碎片。
还有一点很重要就是,bittorrent 有自己的鼓励机制,就是说,你做的贡献大就会被鼓励,你不做贡献就会被惩罚。
具体的操作是,每个人在下载的同时也上传。
上传给谁呢?谁给我给的多,我就传给谁。
而且我只传个前 4 名的(视具体软件具体分析,也可能是前 8 名或其他)。
bittorrent 大概的工作原理就是这样了,还有些细节这里不多说了。
我个人认为 Bittorrent 的设计还是很不错的,但是其只适用于文件共享,或视频共享。
然而网络中的资源又何止电影音乐??绝大多数的资源是不可分的,bittorrent 的局限性还是相当大! 另一点可悲的是,大多数宽带用户是 ADSL,也就是说他们的下载上传的带宽上限差别很大,比如,下载最大 2m/s,上传却只有 100k/s。
这也限制了 bittorrent 的发挥。
苹果 iMac14,4 笔记本电脑可以用什么显卡驱动?
有自带的不用再装了