计算机通信网课程复习笔记

前言


通过一整个学期的学习,我对于计算机通信网架构和基本思想有了比较宏观的理解。而在放假之前,我将试图整理一些细微、高频的知识点以应对即将到来的考试

一、概述

1.1 曼彻斯特编码(Manchester Encoding)

  • 逻辑1由高-低信号序列表示,逻辑0由低-高信号序列表示,在每一位的"中间"必有一跳变。

1.2 差分曼彻斯特编码(Differential Manchester Encoding)

  • 数据的表示在于每一位开始处是否有电平转换,有电平转换表示0,无电平转换表示1

在这里插入图片描述

1.3 关于速率

  • 电信号在固体介质中的传播速率一般认为是固定的,即2/3c=2*10^8 m/s
  • 区分数据传输速率和信号传播速率之间的差别

1.4 分流与复用

  • 分流:用多个网络通信来实现一个传输层的通信,提高传输层的通信速度
  • 复用:多个传输层的通信复用到一个网络通信上,可降低费用
    在这里插入图片描述

1.5 服务接口模型

在这里插入图片描述

1.6 服务与协议的关系

  • 某层实体在具体考虑服务与协议时,涉及
    • “我”向上提供什么样的服务
    • “我”使用什么样的协议与对等实体虚通信
    • “我”将利用什么样的下层服务

二、物理层

2.1 奈奎斯特定理——有限带宽无噪声信道

  • 最大数据传输速率=2Hlog2V
    • H:铜线宽度
    • 2:最大码元传输速率是最高频率(带宽)2倍的关系
    • V:信号电平级数量
    • log2V:一个信号变化可以表示多少位数据变化
    • 比特率=波特率*每个符号所含比特数

可以用提高编码效率的方式,在有限带宽中多传数据——加大数据传输速率


2.2 香农定理——随机噪声信道

  • 最大传输速率=Hlog2(1+S/N)
  • H:铜线带宽
  • S/N:信噪比(dB)

提高编码效率不是最终的解决方案,在噪声影响下,最大速率是路的尽头


三、数据链路层

3.1 汉明码

对于发送方

  • 给定码长m,纠正单位错需要r位纠错码,且r满足
    (m+r+1)<=2r
    在这里插入图片描述
    • 第1个位置,变成第0001个位置;
    • 第2个位置,变成第0010个位置;
    • 第3个位置,变成第0011个位置;
    • 第4个位置,变成第0100个位置;
    • 依此类推

规定凡是位置符合XXX1,归到 P1;XX1X,归到 P2;X1XX,归到 P3;1XXX,归到 P4;组分好了,就可以把校验码的值也就确定下来了(依旧采用偶校验 )

对于接收方

  • 分组,分好P1,P2,P3……然后分别对每个组校验,没有错的令它为0,有错的令它为1
  • 把各个分组P从大到小排列起来,标志排成了一串一零串。这个数就是出错的数据的位置。

3.2 循环冗余校验(CRC)

发送端生成

  • 设原始码串M(x)= 10101011
  • 生成多项式G(x)= 10011=x^4+x+1
  • 首先,在数据位后加多项式最高幂次个0,变成:101010110000,作为被除数
    • 比如这里的多项式最高次项为x^4,那就在数据位后加四个0
  • 然后,将生成多项式G(x)=10011 作为除数,对应位做异或

image

  • 最后得到的余数:1010,即是校验位码串的值
  • 那么整个最终发送的CRC码串为:10101011 1010

接收端校验

  • 假设收到的码串变成了 10001011 1010,与上文对比,第10位(右边为低位)发生了错误
  • 现在尝试用接收端收到的CRC码串与生成式G(x)=10011 进行异或

image

  • 得到余数为 1010(2) = 10(10) ,即第10位发生错误,只需要反转第10位的值,便可获得正确的值
    在这里插入图片描述

3.3 校验和

在这里插入图片描述

3.4 停等协议与滑动窗口协议

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

3.5 数据链路层的成帧方法与最小帧长

3.5.1 成帧方法

字符计数法 用一个帧的第一字节来说明帧的总长度(总长度包含这个帧头)
在这里插入图片描述

  • 看这张图,白色为帧头,指明了长度,比如第一帧长度为5,后面就跟了4个字节,第二帧的长度为5,后面也跟了4字节,之后是两个8字节长度的,所以各自跟了7字节的正文部分。
    • 但是很显然,如果头这一个字节出了问题,影响的就不仅仅是这一帧了,其他的都会出问题。比如:

在这里插入图片描述

  • 第二个帧头出了问题,那么就会出现大问题:后面的全部帧都会出错,连锁反应。所以这种方法不太常用

字符填充的首尾界定法

  • (在帧的头之前和尾之后加一个特殊的字符,只要读到这个字符帧就开始了,再次读到就认为这个帧结束了),如下图所示:
    在这里插入图片描述
  • 这种方法能够避免上面字符计数法的头出错问题,但是他也有问题:
    • 如果正文里面出现了flag特殊字符怎么办
      • 解决办法是在正文里面flag字符前面加上转义字符esc,这样读到flag之前如果没有转义字符esc,那么认为帧结束,如果有esc那么认为他就是普通的数据就行。
    • 那么 正文里面如果有esc字符呢
      • 就在esc前面再加一个esc就行了,这两个的处理是一样的。如下图:

在这里插入图片描述
比特填充的字符界定法

  • 当正文读取的时候一旦出现了5个连续的1,那么在后面填充一个0,避免出现6个1造成帧提前结束。如下图所示:
    在这里插入图片描述
  • 收端接收到之后,每读到5个连续的1之后,就把后面的0去掉一个,这样就得到了原文的数据了

3.5.2 最小帧长

  • 最小帧长必须大于整个网络的最大时延位(最大时延时间内可以传输的数据位)
    • 如果帧长度太小,就可能出现网络上同时有两个帧在传播,就会产生冲突(碰撞)而造成网络无法发送数据。
    • 如果数据帧太长就会出现有的工作站长时间不能发送数据,而且可能超出接受端的缓冲区大小,造成缓冲益出。

四、介质访问子层

4.1 波分多路复用

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

4.2 无线局域网(隐藏站点与暴露站点)

隐藏站点

  • A向B发送数据时,C监测不到载波,C也向B发送数据,造成冲突,即A对C隐藏
    在这里插入图片描述

暴露站点

  • B向A发送数据,C向D发送数据,本来互不干扰;但是B发送时,C检测信号,以为会发送冲突,而停止。即B暴露在C、D之间

在这里插入图片描述

均是由于监听范围无法包含所有主机造成的
解决之道(MACA)

  • 冲突避免
  • 解决隐藏站点冲突
    • A欲向B发送数据,先发送RTS(Request To Send)帧提醒B
    • B应答CTS(Clear To Send),阻止在B覆盖范围内的其他所有站点发送数据(不包括A)
    • C收到CTS后,不向B发送数据而避免了冲突(在B周围的所有站点中只有A能发送数据)

4.3 网桥技术

在这里插入图片描述在这里插入图片描述
源路由网桥有一点像电路交换,路线已经预先设定好了
在这里插入图片描述
交换机就是多端口桥,并且处于第三层(网络层 ),而网桥处于(数据链路层 )

在这里插入图片描述

五、网络层

5.1 虚电路交换

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

5.2 链路状态(LS)路由选择算法

在这里插入图片描述

上图的链路状态算法建立过程如下

  • D(v) :到算法的本次迭代,从源节点到目的节点 v 的最低开销路径的开销
  • p(v) :从源到 v 沿着当前最低开销路径前一节点 ( v 的邻居)
  • N :节点子集;如果从源到 v 的最低开销已确知,vN
    在这里插入图片描述
  • 在初始化步骤,从 u 到与其直接相连的邻居 v、x、w 的当前已知最低开销路径分别初始化为 2、1、5。不与 u 直接相连的 y、z 开销设为
  • 在之后的迭代中,观察还未加入集合 N 中的节点,并且找出在前一次迭代结束时具有最低开销的节点,计算最短开销,循环如此
  • 已经加入 N 的节点那一列在加入之后则这一列的开销不再更新维护

5.3 距离向量路由选择算法

  • 一直持续到邻居之间无更多信息要交换为止
  • 每个节点通过 Bellman-Ford 维护其各自的路由选择表

在这里插入图片描述

5.4 拥塞控制与流量控制

在这里插入图片描述

5.5 IPv4数据报分片

  • 一个链路层帧能承载的最大数据量叫作 最大传输单元(MTU) ,IP数据报通过分片的方式严格遵守限制
  • 主机通过检查标识号(identification)来确定哪些数据报实际上是同一较大数据报的片
  • 标志字段(Flag) 占3位,但目前只有2位有意义
    • 标志字段中的最低位为MF(More Fragment)
      • MF=1即表示后面“还有分片”的数据报
      • MF=0表示这已是若干数据报片中的最后一个
    • 标志字段中间的一位记为DF(Don’t Fragment),意思是“不能分片”
      • 只有当DF=0时才允许分片
  • 偏移量的意思是目前该数据报是从源数据包哪个位置开始的 ,其衡量单位是 8个字节(8Bytes)
  • 例如:一个携带5000字节的IP数据报,下一步经由 MTU 为1500字节的以太网
    • 则将IP数据报分为4个片
头部数据部分
片1头(标识号=x,标志字段=001,偏移量0)片1数据(1480字节)
片2头(标识号=x,标志字段=001,偏移量185)片2数据(1480字节)
片3头(标识号=x,标志字段=001,偏移量370)片3数据(1480字节)
片4头(标识号=x,标志字段=000,偏移量555)片4数据(1480字节)

5.6 网络互连技术

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

六、运输层

6.1 TCP拥塞控制算法

该算法包括三个主要部分:

  1. 慢启动
  2. 拥塞避免
  3. 快速恢复
  • 慢启动
    • 拥塞窗口的值以1个 MSS 开始,执行慢启动算法,接收方每确认一个报文段,拥塞窗口的值就翻倍,以指数增长 (1,2,4,8,16,…)
    • 当首次出现由超时指示的丢包事件时
      • 记录下 当前拥塞窗口的值的一半为慢启动阈值
      • 将拥塞窗口的值置为1
    • 继续重复上述第一步,当拥塞窗口出现到达或超过慢启动阈值时 ,结束慢启动并进入拥塞避免模式
    • 当检测到3个冗余ACK时,执行快速重传并进入快速恢复状态
  • 拥塞避免
    • 此时拥塞窗口每次只增加1个 MSS
    • 当出现由超时指示的丢包事件时
      • 记录下 当前拥塞窗口的值的一半为慢启动阈值
      • 将拥塞窗口的值置为1
    • 当检测到3个冗余ACK时,执行快速重传并进入快速恢复状态
      在这里插入图片描述

如果忽略掉慢启动阶段的话,TCP的拥塞控制算法呈现的是一种 “加性增,乘性减” 的状态

跳转

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值