zoukankan      html  css  js  c++  java
  • 网络传输之电路交换、报文交换、分组交换、多路复用

    数据交换类型

    从主机A把数据送到主机B最简单的技术便是AB之间连接一条链路,直接通信即可,但是网络接入边缘(终端)越来越多,网络越来越复杂,如果采用主机之间直接相连的方式,最终需要的链路数量是(N为主机数量)

    [N(N-1)/2 ]

    这个成本(经济,技术)非常高且复杂,为了解决这个技术,引入了交换机。

    这就需要交换技术。目前主要有三类数据交换类型:

    1. 电路交换
    2. 报文交换
    3. 分组交换

    电路交换

    说明

    最典型的电路交换网络:电话网络。

    电路交换的三个阶段:

    1. 建立连接(呼叫/电路建立)
    2. 通信
    3. 释放连接(拆除电路)

    电路交换最显著的特点:独占资源。独占后如何被多路通信进行共享呢,这类技术便是多路复用技术。

    多路复用技术

    多路复用multiplexing。物理链路的通信能力远远大于一路通信所需要的能力,通过复用提高信道利用率,同时各个通信线路之间又互不影响,这便是多路复用所要解决的问题。

    1. 将整个链路资源划分为资源片
    2. 将资源片分配给各路呼叫
    3. 每路呼叫独占分配到的资源片

      目前典型的多路复用技术有三种:
    4. 频分多路复用(frequency division multiplexing FDM)
    5. 时分多路复用(time division multiplexing TDM)
    6. 码分多路复用(code division multiplexing CDM)
    7. 波分多路复用(Wavelength division multiplexing WDM)

    频分多路复用

    将信道资源按照频率进行划分成子信道,频率之间相互隔离,互不干扰,让每个使用方独占某个子信道(每个频率)。当使用方被分配到某个频率后,可以一直使用这个频率。

    典型应用,有线电视,fm调频收音机等。

    时分多路复用

    时分复用是将时间划分为一段段等长的时分复用帧(TDM帧),每个用户在每个TDM帧中占用固定序号的时隙,时隙周期性出现。

    时分复用用户在不同时间占用相同的频带带宽。

    码分多路复用

    既不划分时间,也不划分频率。

    给每一个用户分配一个唯一的m bit的码片序列(chipping sequence),其中0用-1表示,1用+1标识。eg,某站的码片序列为(-1-1-1+1+1-1+1+1)。

    每个用户使用相同的频率进行发送。但是需要对数据用各自的码片序列进行数据编码。

    编码信号=(原始数据)*(码片序列)

    1. 如发送比特1(+1),则发送m bit的码片序列
    2. 如发送比特0(-1),则发送m bit的码片序列的反码

    如何保证共享信道互不干扰,数据不碰撞,不重复:需要各用户的码片序列相互正交

    所有用户同时采用相同的频率进行发送,所以接收方收到数据是一个所有用户的叠加数据,如果接收方想收取某用户的数据,而不受其他用户的影响,该如何接收呢:数据解码

    解码:发送方用户的码片序列和收到叠加数据进行内积用算。内积结果

    1. 1 说明发送方发送了1
    2. -1 说明发送方发送了0
    3. 0 说明不是该码片序列对应的发送方发送的数据。

    典型应用:蜂窝网,卫星通信。

    波分多路复用

    波分复用其实就是频分复用,不过是以光波的波长进行了划分。

    报文交换、分组交换

    在整个数据传输过程中,整个报文一次性从源主机发送到下一个相邻节点。典型应用:电报。

    将整个报文拆分为一系列相对比较小的数据包,然后进行传输。最终在接收方再进行重组,目前Internet传输就采用的分组交换。

    统计多路复用

    报文交换和分组交换都无需提前建立连接,而是直接进行发送,这种技术叫做统计多路复用(statistical multiplexing),按需使用,占用全部链路带宽,有很强的随机性。

    存储转发(store-and-forward)

    接收到数据后先存储,然后进行路由,确定发送链路,如果发现链路可用,则进行发送。

    报文交换和分组交换比较

    结论:性能问题,分组使得网络资源进一步得到应用(大量设备在同时发送数据)。

    报文交换中,如果传输路径是A,B,C,D。

    1. 报文交换中,A在传输的时候,BCD都在闲置状态
    2. 分组交换中,A、B、C、D都在同时传输报文。

    一般性公式

    报文大小:M bits

    链路带宽:R bps

    分组大小:L bits

    跳步数量:h

    路由器数:n,n=h-1

    分组交换需要的时间:

    [T=M/R+(h-1)L/R=M/R+nL/R ]

    报文交换需要的时间:

    [T=hM/R=(n+1)M/R ]

    由此可见随着网络链路的增加,路由器数量的增加,报文交换的性能急剧下降,分组交换势在必行

    分组交换和电路交换比较

    网络应用的突发性,大部分时间并不需要一直占用链路,比如上网浏览网页,只需要在网页下载的时候才需要网络,浏览网页的时间是不需要网络链路的。

    分组交换允许更多用户同时使用网络。网络资源利用率高。

    分组交换适用于突发性的数据网络传输网络。上网,发邮件。

    由于没有提前建立链接,没有提前分配资源,分组交换很可能会导致网络拥塞,最终产生分组延迟和丢失(需要相关协议进行保证和处理比如TCP)。

  • 相关阅读:
    Spring mvc配置
    css选择器
    网页全屏背景设计
    2018年的第一篇
    总结2016,规划2017
    Jenkins上Git ssh登陆配置
    Jenkins构建项目,JAVA_HOME is not defined correctly
    运行Jmeter.bat出错:Not able to find java executor or version. Please check your installation. errorlevel=2
    Selenium获取input值的两种方法:WebElement.getAttribute("value")和WebElement.getText()
    Jmeter
  • 原文地址:https://www.cnblogs.com/Brake/p/14093542.html
Copyright © 2011-2022 走看看