问题讨论:程序 C/C++ Java GUI编程 ASP Php Shell Perl Web开发 软件工程 三大件 机箱 存储设备 光存储 音频设备 视频设备 外设 购机
asp php java C CGI .net vb delphi unix|linux sql Word Excel WPS OutLook Powerpoint Dreamweaver FPage/Golive CSS/HTML DOM/JS
热门词:流程图 excel 入侵检测 vss Windows 安全漏洞 QQ空间 事件编程 MFC

 网络技术 > 网络相关 

路由器数据传输浅析

[2006-10-9 20:28:18] [来源: 百家电脑学院] [我要投稿]

摘自赛迪网

    网络本身的意义就在于它能使信息更快,更便捷的传送到网络所覆盖的整个区域范围,从而实现信息化和全球化的时代要求。但信息的传送必须要得到正确、完整的保证。在计算机通信的早期人们就已发现,对于经常产生误码的实际链路,只要加上合适的控制规程,就可以使通信变为比较可靠的。这些规程演变到现在,成为网际间的数据传输封装协议有HDLC、PPP、ATM、帧中继等。于是,在两台微机可以在这个实验网络通信后,我们不但对HDLC与PPP进行了传输速率,还用CISCO路由器分别在这两种协议下的加压缩与不加压缩时的状态做了一个比较。

    用于测试传输速度的软件是5.58M的一个注册表文件,使用FTP进行数据传输。传输过程应用了二进制算法和HASH排序,得出的结果在下表中列出。


从实验的结果,可以看出在同样的网络环境中,HDLC与PPP相比,在正常的情况下,PPP要稍快一点。在加压缩后,两协议都明显要比未压缩前要快。这是什么原因呢?那么就从他们的结构开始说起吧。

HDLC(High-level Data Link Control),高级数据链路控制。前身是面向比特的规程SDLC,后经ISO修改才称为HDLC的。在CISCO的路由器中,HDLC是默认的传输协议,与普通的HDLC的结构相似,为此,我们就以普通的HDLC对其结构进行分析。

HDLC的帧结构

数据链路层的数据是以帧为单位的。一个帧的结构具有固定的格式。标志字段F(Flag ),放在帧的开头和结尾,作为帧的边界,用于解决比特同步的问题。帧校验序列FCS(Frame Check Sequence)字段共占16bit,它采用的生成多项式是CRC-CCITT。所检验的范围是从地址字段的第1个比特起,到信息字段的最末1个为止。控制字段C共8bit。HDLC的许多重要功能都要靠控制字段来实现。

PPP的帧格式和HDLC的相似。与HDLC不同的是多了2个字节的协议字段。当协议字段为0x0021时,信息字段就是IP数据报。若为0xC021,则信息字段是链路控制数据,而0x8021表示这是网络控制数据。PPP不提供使用序号和确认的可靠传输。PPP工作在网络层与数据链路层中,包括NCP与LCP协议。NCP是在第三层用于局域网中的多协议封装,LCP用于第二层的广域网链路控制协议。

从两者的结构上来看,PPP有比HDLC更复杂的控制机制,处理的时候需要的时间相对要多些。从通信的连接来看,HDLC在连接与断开时采取的是双方握手协议;PPP使用的是一个鉴别认证机制,双方通过连接,然后协商,身份的鉴别,LCP的配置,打开通信到通信结束,完成整个过程。所以在整个测试中,PPP在链路的连接到数据的处理,所耗费的时间都要比HDLC要多。特别在大行的数据传输时,更能体现出HDLC的传输速度。但PPP在安全方面却比HDLC要更胜一筹,其身份验证可以根据安全的要求对所有接收的数据进行检测,通过鉴定后才会把数据接收转发否则丢弃掉。因此,对两协议的选用可视传输的要求来考虑。(以下分别是两协议的通信链路连接状态图)

此外,我们对两种协议进行了链路的压缩传送。结果,在速度方面,两者都有了显著的提高。其实,所谓的压缩也就是对传输实体进行的,对包头和负载的压缩。链路压缩并不是指单单一个特别的协议功能,而CISCO就提供了两种专用于路由器传输数据的压缩算法----Stac与Predictor。但在HDLC结构中,Stac是唯一的选择。STAC对数据的压缩实际上是通过对一些多余字串的数据流用特定的标记替代,而这些带有信息量的标记都是明显短于所替代的数据流的。如果算法在数据中不能找到可以替代的字串,那么将不会有压缩的情况发生,或者在传输中就像压缩功能没有被激活一般。在一些应用中,例如是在发送加密数据时,压缩就只会增加传输的开销,所以在这类情况中,是不会对原始传输进行修改。而且Stac压缩算法对占用CPU的资源有较高要求,往往不被采用于高CPU利用率的路由器中。Predictor压缩算法就如其名字一般。这一CISCO优先算法是通过尝试从一个操作检索系统中预测出即将到来的特征数据序列,而这个系统就是基于压缩字典生成的。何为压缩字典,其实它就是一本由众多可能出现的数据序列组合成的编码书。如果一个特征数据流在此字典中被发现,且与字典中的其中一条目完全吻合,那么,此字典条目将会用来替代数据流。得出的条目包含的是更小更短的特征序列。在远端,这些特征将会与数据字典再次做一个对比进行解码。数据流就会被找出及用合适的信息替换。Predictor压缩算法就如形体语言一般,利用一个手势即可表达整个的句子与含义(压缩),远比拼出由一个个单独的词语所组成的句子与含义(无压缩)来得简单。因为所有的群体对手势语言都能理解,所以相互间能够很好的沟通。相反,当其中一人在交流时包含了一个未知的形体语言,那么相互间的沟通将不会产生。在压缩中同样会出现缺少交流的情况。如在一方选用了压缩算法,那么在另一方也必须使用。(需要注意的是,两端所使用的算法必须一致。)


该篇文章发表在:百家学院 (http://www.9php.com),详细参考以上网站.

·看过 路由器数据传输浅析 文章的还看过:

    该分类还没有添加任何内容!

·百家学院 | 最新评论·

评论内容:不能少于5个字,请自觉遵守互联网相关政策法规。

用户名: 验证码: 验证码,看不清楚?请点击刷新验证码