zoukankan      html  css  js  c++  java
  • 1.2 电路,分组,报文交换

    1.2.1电路交换:

    在电话问世后不久,人们就发现,要让所有的电话机两两相连是不现实的。

    例如,两部电话只需要用一对电线就能互相连接起来

     但如果有5部电话要两两相连,那就需要10根电线

    那要是当我的电话有10000台呢,要的线是不是就太多了。

    这个时候人们意识到,我们搞一个中间设备将这些电话连接起来不就行了。这个中间设备就是电话交换机。每一个电话都连接到上面,可以把电话交换机看成是有多个开关的开关器。想要接谁就接谁,按需接通。

     电话交换机接通电话线的方式称为电路交换。从通信资源的分配角度来看,交换就是按照某种方式动态的分配传输线路的资源。

    电路交换有以下三个步骤:

    1)建立连接(分配通信资源)。例如在打电话之前,必须先拨号请求建立连接,当被叫用户听到电话交换机送来的拨号音并摘机后,从主叫端到被叫端就建立了一条连接。也就是一条专用的物理通路,这条连接保证了双方通话时所需的通信资源,而这些资源在双方通信时不会被其它资源占用。

    2)通话(一直占用通信资源)。

    3)释放连接(归还通信资源)

    思考:请大家思考一下,如果使用电路交换来传送计算机数据,是否可行?

    • 可以,但是效率很低

    因此计算机网络常常采用分组交换而不是电路交换

     

    1.2.2 分组交换

    假设下图为因特网的一部分,在因特网中,最重要的分组交换机就是路由器,他负责将各种网络互连起来,并对接收到的分组进行转发,也就是进行分组交换。

     

    我们来看这样一个例子:

    假设H6的用户要给H2的用户发送一条消息,通常我们把表示该消息的整块数据称为一个报文。

    在发送报文之前,先把较长的报文划分为一个个等长的数据段,

    在每一个数据段前面,加上一些由必要的控制信息组成的首部后,就构成了一个分组,也可简称为包。相应的首部也可称为包头。

    思考:添加首部的作用是什么?这不是加大了待传输的数据量吗?

    实际上首部非常关键,包含目的地址,否则分组传输路径中的各分组交换机(也就是各路由器),就不知道如何转发分组了。分组交换机(路由器)收到分组以后,先将分组暂存下来。再检查其首部,按照首部中的目的地址进行查表转发,找到合适的转发接口。通过该接口将分组转发给下一个分组交换机。

    在本例中,各分组进过不同路由器转发到H2,H2收到之后,去掉首部,组合各数据段还原出原始报文。

    1.2.3报文交换

    与分组交换类似,报文交换中的交换节点也采用存储转发方式,但报文交换对报文的大小没有限制,这就要求交换结点需要有较大的缓存空间。需要注意的是,报文交换主要用于早期的电报通信网,现在较少使用,通常被先进的分组交换方式替代。因此报文交换不再详细介绍

     

    三种交换方式对比:

    A B C D为4个交换机

    分组交换相比报文交换,减少了转发时延。还可以避免过长的报文长时间占用链路,同时也有利于进行差错控制。

    各种交换的优缺点:

  • 相关阅读:
    转:什么是即时编译(JIT)!?OpenJDK HotSpot VM剖析
    用好spring mvc validator可以简化代码
    接口服务中的日志
    rest api参数与content-type
    【单页应用】全局控制器app应该干些什么?
    【webapp的优化整理】要做移动前端优化的朋友进来看看吧
    【单页应用】理解MVC
    【单页应用】view与model相关梳理
    【单页应用之通信机制】view之间应该如何通信
    【单页应用巨坑之History】细数History带给单页应用的噩梦
  • 原文地址:https://www.cnblogs.com/YXBLOGXYY/p/15395002.html
Copyright © 2011-2022 走看看