当前课程知识点:计算思维导论 > 第九单元 > 9.1 机器间的通信方式 > Video
这一节
我们来讲计算机网络互连的秘密
我们来看一个很平常的生活片段
假设你去吃螺蛳粉
这个是你
首先你会用支付宝付钱
付钱之后
因为这家螺蛳粉很好吃
你就排着队吧
排队的时候
我想你不会闲着
会看看实时的新闻推送
会看看QQ留言
当你看到淘宝上推送的消息说
你新买的运动服到货了
你会在人群中欢喜地傻笑
接着你会看到有人在朋友圈
秀他的自驾游
世界那么大
我想去看看
可是你不能去看
你还要去出差学习
所以你要去订一张火车票
于是赶紧的
你进入了铁路12306订了一张票
订好了票
你才会不慌不忙的
接过服务员递过来的螺蛳粉
那么这个中间
其实也不过短短的三分钟
可是这不经意的一幕
仅仅3分钟
我们已经触动了近十个网络技术和服务
计算机网络越来越像水和电
成了我们工作学习和生活中
必不可少的部分
这一节
我们不妨一起来揭秘
互联网究竟是如何从互连到互联
进入我们的生活的
首先来看看两台机器的互联
要做些什么
我们知道
计算机互联的主要目的是为了
资源共享和相互通信
实现这个目标的关键
就是
你首先要知道如何把数据
从源主机通过计算机网络
发送到目的主机
我们不妨想象
在两台没有互联的机器
是两个分散在不同地理位置上的
两个独立的个体
他们之间确实没有任何关系
我们把它称为自治系统
怎么说呢
就是像两个独立的人一样
那我们可以这么来类比
两个处在不同地理位置的人
如果要联系要怎么做呢
比如我在柳州
而您在北京
我们之间如果要通信
你想想该怎么做
我们是不是首先想到就是
打电话
是的
打电话是一个很好的方式
事实上
早期的计算机之间的互联
就是借鉴了这一方式
计算机网络就是在
计算机技术
和通讯技术发展的基础上
而发展起来的
比如电报 电话 收音机 电视机
在那段时期被不断地发明
科学家们
很自然地
就想到借助这一时期的通讯技术
来建立一个通信的信道
将信息的发送者
和信息的接收者连(接)起来
是的
我们首先得连起来
像这样
但是问题来了
计算机是数字电子计算机
它能处理的是数字信号
而电话通信技术这一类的处理
它的范畴是属于模拟信号
是否能将两台机器
或者两台计算机
所发出的数字信号
转变为可以在
电话交换系统中传播的模拟信号
再进行反相变换呢
实际上
早期两台机器的互联
就是这么做的
其中
进行模数和数模转换功能的
这样的通讯设备DCT
就是我们大名鼎鼎的调制解调器
俗称 猫
它们的通信过程
被描述成是
建立连接
传送数据再释放连接
和我们打电话的时候
连线
然后电话交流
挂断
简直是一模一样的
特别说明的是
这里的载体或者介质
当然不一定是电话线
后来出现了双绞线
铜轴电缆
光纤电缆
甚至可以是无线电波
红外线
传输信道变为了数字信道
这时数据通信终端的作用
也要发生相应的改变
比如变成信号码与电平的转换
以及线路中继控制等等
这样虽然通信是没有问题的
但是两台机器之间
必须使用一条实际的物理链路
如果是多台机器的话
比如说像这样4台
他们的连接方式就得是这样的
两两相连
那么
你想像一下
如果有更多的节点加入
会怎么样呢
我们不妨来看看这个图
这种方式
所需要的线路的对数
与通话用户间的关系
是 N(N-1)/2
这个N就是用户数或者说机器数
比如8台机器相连
它所需要的线路数
是28条才能够两两相连
那么首先你想一想
安装施工吧
复杂吧
我还在想
对这些并非那么聪明的电话机来说
或者是
略为聪明一点点的计算机来说
它们会不会存在着选择困难综合征
显然
从成本上来说
这样的全网互连的方式
要付出高昂的代价
那么
我们的控诉就到此结束了吗
还没有呢
最让人不能接受的是
在这种方式下
你想打电话
是不是会占线
而且会常常占线
因为
正在通信的两台机器
它自始至终的需要
独占这条链路来进行信息传输
那么
其它的计算机或终端
如果想同时共亨该电路
就只能说抱歉了
不
它是连抱歉都不会说的
显然
像刚刚那样的两台机器之间的通信
我们也叫它电路交换方式
它的实时性很强
延迟也很小
但是付出的代价很昂贵的
除非是非常重要的场合
否则是不可取的
特别是
计算机网络
和电话通信之间
有很大的不同
我们得认真的考虑
我们的数据
并不是像打电话那样很集中
是连续传输的
是不是
我们并不是时时刻刻在网上传输的
有一段时间数据传输量可能很大
很密集
而另一段时间
我们在计算机网络上
也许几乎没有任何的传输活动
那么
有什么样的方式
可以使得效率提高
并且让更多的
甚至所有的通信者
都能平等地访问
拥有这一个连接呢
比起打电话的独占方式
你有没有想到其他的一些通信方式
比如
邮局
邮局的通信方式是不是这样的
当发送方需要发信时
它会投递给邮局
邮递员会不断地接力
送到下一个邮局
再到下一个邮局
直到寄到对方手中
这样的信息或者说信件
在传递的时候
它当然不是独占一条线路的
它有很多很小的邮局来给你转发
如果
把规模缩小来看几台机器之间的情况
它就是这样的
这里特别说明一下
这样的邮局是很多
它是一个分布式的网络
如果只是建立一个中心节点
想把所有的机器连起来
那么这个中心节点肯定会出问题
它会因为流量过大支持不了
过载并且崩溃
比如我们的邮局系统中的邮局
是不是也不可能只有一两个
所以这是分布式的
因而
比起打电话的方式
邮局通信看上去
实时性的确没那么高
但是
这种连通方式利用率却会很高
信息在不同的时间
一段一段地部分占有物理通路
而不是独占
特别是
当网络规模增大的时候
信息它有路可选
大大的提高了
通信线路的利用率和连通性
这样看来
邮局转发的方式是可取的
计算机网络
也借鉴了这样的一种信息传递方式
源主机把要发送的信息
组织成一个数据包
我们可以叫它报文
在网络中一站一站地向前传送
直至达到目的主机
传送之前记得
我们也要像发送货物那样打包
标上源地址
目的地址这些必要的信息
邮局
也就是我们的交换结点
会对各个方向上收到的报文排队
找到下一个邮局
然后转发出去
这样就大功告成了
刚刚说的报文交换
用的存储转发的方式
其实挺不错的
但是它的弊端是
大量的报文一定会带来
排队等待的延迟
前一个报文发走了
后一个才能处理
这个问题
就有点像大家去过高速公路
过那个收费站的时候
路上开得还挺快的
在收费站的时候
堵得一肚子气
这个问题在比较长一段时间
都在困扰着大家
当时
就读麻省理工学院的
克兰罗克关注到这一点
1962年完成了
大通信网的信息流论文
1964年也就是工作之后
他发表了通信网这样一本书
提出了信息块
也就是分组交换的智慧钻石
在当时
这个在通信领域是一个非常新的
而且很重要的概念
当然了
这一技术对未来的影响非常深远
直到今天
我们的网络大部分都还是
分组交换网
那么
分组交换到底是怎么回事呢
实际上很容易理解
简单的说
就是将一个原来的长报文
首先分割成
若干个长度一样的较短的分组
然后
记得要把这些分组
携带上编号信息
第几个
然后逐个逐个地发出去
在计算机网络
通过邮局
接力传输到目的地就可以了
那这个时候
我们的重组
就可以根据编号来进行重组
这里有一个示意图
显然
分组之后
邮局在转发时
不会再有特大号的货物
需要额外的库房
去浪费存储空间
更重要的一点是
分组之后
后一个分组的存储操作
与前一个分组的转发操作
是可以并行工作的
这种流水线式的传输方式
大大的减少了报文的传输时间
我们来看一个对比图
这里就对比了
刚刚提到的信息传输
机器通信的三种方式
这就好像大家去饭店吃饭
电路交换就相当于是包场
报文交换是
第一桌的菜全部上好
第二桌才能开始上菜吃饭
而分组交换之后
厨房会兼顾每一桌
流水上菜
效率当然是会提高
所以
虽然这个分组看起来
只是一个很小的改进
但是你可千万别小看它
这样的分组转发方式
它大大地加速了
数据在网络中的传输速度
它是科学家智慧的结晶
好的
这一节就讲到这里
谢谢
-1.1 计算思维及其教育
--Video
-2.1 计算是什么
--Video
-2.2 计算与自动计算
--Video
-2.3 计算机及其计算本质特征(I)
--Video
-2.4 计算机及计算的本质特征(II)
--Video
-3.1 数的表示与模拟计算
--Video
-3.2 数的表示与数字计算
--Video
-3.3 二进制加法运算的机器化
--Video
-3.4 “九九归一”的加法运算
--Video
-3.5 二进制之优越性及问题与代价
--Video
-4.1 从数学危机到图灵机
--Video
-4.2 图灵机的计算能力
--Video
-4.3 什么问题都能计算吗?
--Video
-4.4 冯•诺依曼机及其发展与演化
--Video
-4.5 从算盘到图灵机——机械计算的本质
--Video
-4.6 电子计算机——透过现象看本质
--Video
-5.1 思维可机械计算吗(I)
--Video
-5.2 思维可机械计算吗(II)
--Video
-6.1 量子理论
--Video
-6.2 量子计算机
--Video
-7.1 人类求解问题之过程
--Video
-7.2 基于计算(机)的问题求解过程
--Video
-7.3 面向过程的结构化设计方法学
--Video
-7.4 面向对象之方法学
--Video
-7.5 面向对象技术
--Video
-7.6 抽象
--Video
-7.7 计算学科中的抽象
--Video
-7.8 时间与空间及其相互转换
--Video
-7.9 技术层面的其他方法学
--Video
-7.10 认知层面的其他方法学
--Video
-8.1 算法与程序
--Video
-8.2 算法设计方法——枚举
--Video
-8.3 算法设计方法——递推
--Video
-8.4 算法设计方法——递归
--Video
-8.5 算法设计方法——分治
--Video
-8.6 算法设计方法——仿生
--Video
-9.1 机器间的通信方式
--Video
-9.2 数据转发方法
--Video
-9.3 网络分层体系结构
--Video
-9.4 有趣的对称加密技术
--Video
-9.5 难解的非对称加密技术
--Video
-9.6 数字签名及其应用
--Video
-9.7 从自然智能到人工智能
--Video
-9.8 符号主义的基本思想
--Video
-9.9 连接主义Ⅰ
--Video
-9.10 连接主义Ⅱ
--Video
-9.11 行为主义的基本思想
--Video
-9.12 机器翻译的愿景与困难
--Video
-9.13 峰回路转的自然语言处理
--Video
-9.14 信息传输中的问题与挑战
--Video
-9.15 重复传输与冗余编码
--Video
-9.16 校验与校验和
--Video
-9.18 自纠错技术及应用
--Video
-9.19 两种简单的数据压缩方法
--Video
-9.20 哈夫曼编码
--Video
-9.21 数据压缩极限与LZ压缩方法
--Video
-9.22 大海捞针的搜索引擎
--Video
-9.23 网页排序方法(PageRank)
--Video
-10.1 计算文化
--Video
-期末考试--作业