1 计算机网络的结构
1.1 网路边缘
1.2 接入网络
1.3 网络核心
2 Internet的结构
2.1 简介
2.2 IXP
3 数据交换
4 电路交换
4.1 简介
4.2 电路交换之中的共享问题的解决
4.3 码分多路复用CDM
5 报文交换
5.1 什么是报文
6 分组交换
6.1 什么是分组
6.2 它是共享链路的
6.3 存储转发
7 报文转发和分组转发比较
7.1 传输延迟的概念
7.2 报文交换和分组交换
8 分组交换和电路交换比较
8.1 例子
8.2 电路交换
8.3 分组交换
9 计算机网络的性能
9.1 速率
9.2 带宽
9.3 延迟/时延
9.4 时延带宽积
1 计算机网络的结构
1.1 网路边缘
主机、应用(软件、网站)
1.2 接入网络
1.3 网络核心
转发设备,路由器、交换机。关键功能就是路由+转发达到数据交换。
2 Internet的结构
2.1 简介
大体结构:一级ISP,下面连接二级ISP、三级ISP.....,再下面连接区域ISP,区域ISP连接接入网络
2.2 IXP
互联网交换处理器。互联网交换中心(Internet Exchange Point)是不同电信运营商之间为连通各自网络而建立的集中交换平台,互联网交换中心在国外简称IX或IXP,一般由第三方中立运营,是互联网的重要基础设施
3 数据交换
网络核心进行数据交换是怎么进行的呢?
4 电路交换
4.1 简介
比较典型的电路交换就是打电话
它是不能被第三方共享的。
比如使用电话拨号,对方接起,那么就建立起了一个电路,在这个起点,这个电路不会有第三方进来,直到挂断,释放连接,电路拆除。
现在有一个带宽为1Mbps的链路,有一个接入网络连接了路由器,有N个用户在使用。
假如每个用户活动时需要100kbs, 电路交换首先需要建立电路,且电路在拆除前它占用的带宽是不能共享的。也就是说同一时间,最多只能够被10位用户使用。
4.2 电路交换之中的共享问题的解决
如下图,当很多电话同时在通信的时候,会建立多条电路,多条电路中,有共同用到的一段线路,也就是中继线,中继线依靠多路复用CDM来实现共享
4.3 码分多路复用CDM
1)它们使用相同频率的载波
2)为每个用户分配一个唯一的m bit码片序列,其中0用-1表示,1用+1表示如(-1-1-1+1+1+1-1 )
3)利用各自的码片序列编码数据 编码信号=原始数据*码片序列
4)为了保证各自的编码信号不相互影响,各自的码片序号需要相互正交
5)解析信号
多个用户同一时刻发送的数据通过码片序列编码后,做一个叠加,得到一个叠加向量P
接收方收到信号P,如想获取用户A的数据,就用A的码片序列解码,可能有3中结果,解析到1,解析到-1,这两种都是解析到了数据,若解析为0,表示在这一刻,该用户没有发送数据。
6)示意图
用户1和用户2在同时发送数据,经过编码叠加得到P,P通过信号通道到达接受端,接受端获取P,此时,如果想获取用户1的数据,就是要用户1的码片序列对P进行解码,就可以得到用户1发送的数据,如果要获取用户2的数据,就是要用户2的码片序列对P进行解码,可以得到用户2的数据。美妙的数学。
5 报文交换
5.1 什么是报文
报文就是一份数据整体,它是把一个数据整体发送。
它是共享链路的,且是时间上的分配共享
6 分组交换
6.1 什么是分组
就是把报文拆分开来,分成多个小的数据包,还会在每个小的数据包加上头部,里面添加了一些信息。
分组交换就存在了拆分和重组的过程,那么相当于报文交换,就产生了额外的开销,但是这是十分值得的。
6.2 它是共享链路的
它最大的特点是按需共享链路,且是时间上的分配共享,当A需要的时候,带宽被A占用,当B需要的时候,带宽被B占用
6.3 存储转发
报文交换和分组交换都是采用存储-转发的模式。都是从源发送到中间节点(如路由器),在路由器暂存,然后根据路由转发。
那么数据太大的话,报文交换局限性不就很大?
7 报文转发和分组转发比较
7.1 传输延迟的概念
一份数据是长度L,传输速率为R,那么传输延迟就是L/R
7.2 报文交换和分组交换
7.2.1 报文交换
报文长度为M bits,链路带宽为R bits,那么传输延迟为M/R
7.2.2 分组交换
报文被拆分为多个分组
每个分组的长度为L
每个分组的传输延迟为L/R(忽略添加的头部信息)
7.2.3 例子(只比较传输,忽略分组转发的分组和重组的消耗)
M=7.5M,链路带宽是1.5M,分组分成了5000分,每个分组的长度为1500 bits
1) 报文交换需要的时间和空间
如上图,从源主机传输到目的主机,中间有两个节点,报文交换需要15s
而且,报文交换的中间节点的存储至少得有7.5M才可以
2)分组交换
如上图,从源主机传输到目的主机,中间有两个节点,报文交换需要5.002s。为什么会少这么多呢,因为分组,在传输的过程中是并行传输的。
而且,报文交换的中间节点的存储至少需要有1500bits才可以
3)分组交换耗时小结
跳步数:从原主机到目标主机经过的过程数,h=n+1
那么分组交换传输一份报文需要的时间T=M/R+(h-1)L/R=M/R + nL/R
报文交换也是现在网络数据交换的手段
8 分组交换和电路交换比较
8.1 例子
现在有一个带宽为2Mbps的链路,有一个接入网络连接了路由器,有N个用户在使用。
假如每个用户活动时需要100kbs,平均活动时间为10%
8.2 电路交换
电路交换首先需要建立电路,且电路在拆除前它占用的带宽是不能共享的。也就是说,同一时间,它最多只能有10个用户同时使用。
8.3 分组交换
分组交换的共享是时间上的共享,同一时刻只有一位用户占用了链路,所以分组交换是时间上的分配。只要把时间分配好,就没什么问题。如现在有35个用户在使用,大于10个用户同时使用的概率<0.0004
分组交换优点:
资源使用率更高
简单,无须呼叫建立
分组交换缺点:
可能产生拥塞,需要协议来保证可靠数据传输
9 计算机网络的性能
9.1 速率
速率也叫数据率、数据传输率、比特率,它是指单位时间(s)传输信息量(bit)
9.2 带宽
在通信领域,带宽值得是信号具有的频带宽度,即最高频率和最低频率之差,单位是赫兹
在计算机领域,带宽是指数字信道所能传输的"最高数据率"
9.3 延迟/时延
1)分组交换为什么会发生丢包
中间节点(如路由器),它的存储空间是有限的,当分组的数据包到达中间节点的速率大于它的转发速率,最后导致它存储的数据包占满了它的空间,无法继续接收下一个数据包,而却又数据包发送过来,很多中间节点的做法是丢弃新来的数据包,也就是丢包
2)四种分组延迟
节点处理延迟
节点处理延迟:数据包到达中间节点,中间节点对数据包进行差错检查,确定输出链路。当然,这个消耗的时间是极少的
排队延迟
中间节点正在传输其它数据包,所以它需要等待输出链路可用
传输延迟
传输数据包的需要时间 L/R(数据包的长度/带宽)
传播延迟
从传出点到达目的地的传输需要时间。
以寄快递来对比这四个延迟
1)我把快递送到快递点
2)快递点工作人员检查物品,核对我的身份证,确定我的寄出的地点和接收人,这个过程好比节点处理延迟
3)工作人员把快递包好了,放好
4)分发快递的工作人员正在处理前面的快递,所以我的快递只能等待前面的快递分发完成,这个过程好比排队延迟
5)前面的快递分发完成了,轮到我的快递分发了,把快递分发出库,放到运输车上的过程好比传输延迟
6)运输车将快递运输到目的地,这个过程好比传播延迟
9.4 时延带宽积
时延带宽积 = 传播时延 * 带宽
传播时延单位s,带宽单位bits,所以时延带宽积的单位就是bit。
所以时延带宽积可以理解为以比特为单位的链路长度(链路容纳的bit数),好比水管能容纳的水的量
9.5 丢包率
丢包率 = 丢包书/已分发分组数
9.6 吞吐量/率
表示在发送端与接收端之间传输数据的速率
即时吞吐量:某个时刻的速率
平均吞吐量:一段时间内的平均速率
如图,发送端到接受端,发送端一段链路的速率是Rs,接受端的一段链路速率为Rc,那么吞吐量取决于小的速率。
再看这个图,发送端带宽Rc,接收端带宽Rs,中间节点带宽R/10,那么吞吐量取决于最小的额那个。而实际情况中,通常是取决于Rc或者Rs。