IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算机网络复习 -> 正文阅读

[网络协议]计算机网络复习

目录

计算机网络复习

我复习 我复习,我复习不完了.jpg

README

一些说明:

  1. 使用参考书籍(课本):谢希仁.计算机网络[M].北京:电子工业出版社,2017.
  2. 内容范围:前六章
  3. 还得靠自己多思考,文章仅供参考。
  4. 复习结合例题,例题取自老师在课本画出的例题以及老师课程中测试过的例题

总体导图

原图链接戳这里: 计网概述脑图.
导图

题型分析

2021年考试题型:

  1. 计算与编码 5题(30分) 前三章:概述、物理层、数据链路层
  2. 问答题 4题(20分)应用层
  3. 分析题 4题(20分)网络层 运输层
  4. 综合题 3题(30分)网络层 运输层

第一章 概述

内容

时延计算

例题

注:例题若为引用书上的例题括号内会有编号,故编号默认对应书上编号,之后不再说明

(1-17) 收发之间两端的传输距离为1000km,信号在媒体上的传播速率为2.5×108 m/s。计算下面两种情况的发送时延和传播时延:
(1)数据长度为108 bit,数据发送速率为100 kbit/s
(2)数据长度为105 bit,数据发送速率为1 Gbit/s
从以上计算结构可得出什么结论?

【分析】利用公式进行计算
发 送 时 延 = 数 据 帧 长 度 ( b i t ) 发 送 速 率 ( b i t / s ) 发送时延= \frac{数据帧长度(bit)}{发送速率(bit/s)} =(bit/s)(bit)?
传 播 时 延 = 信 道 长 度 ( m ) 电 磁 波 在 信 道 上 的 传 播 速 度 ( m / s ) 传播时延=\frac{信道长度(m)}{电磁波在信道上的传播速度(m/s)} =(m/s)(m)?

要传送的报文共 x (bit)。从源点到终点共经过 k 段链路,每段链路的传播时延为d (s),数据率为 b (b/s)。在分组交换时分组长度为p(bit),且各结点的排队等待时间可忽略不计。分组交换的时延为多少?

【分析】
总时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延
此题不考虑排队时延,故考虑发送时延、传播时延和处理时延,共经过 k 段链路,每段链路的传播时延为d,故传播时延为 kd ,对每一个分组,k 段链路有 (k-1) 个结点,处理时延 (k-1)×(p/d),k段链路每一段传播时延p/d,故最后的总时延为kd(链路时延)+(p/b)(每组的发送时延)× (x/p)(组数)+ (p/b) × (k-1)(处理时延)
【参考解答】分组交换的时延 = kd + (p/b) × (x/p) + (p/b) × (k-1)

第二章 物理层

内容

码分复用计算

例题

(2-16) 共有四个站进行码分多址CDMA通信。四个站的码片序列为:
A: (-1 -1 -1 +1 +1 -1 +1 +1) B: (-1 -1 +1 -1 +1 +1 +1 -1)
C: (-1 +1 -1 +1 +1 +1 -1 -1) D: (-1 +1 -1 -1 -1 -1 +1 -1)
现收到的码片序列为(-1 +1 -3 +1 -1 -3 +1 +1)。问哪个站发送数据了?发送数据的站发送的1还是0?

【分析】接收站使用它的码片向量S与接收到的未知信号进行求内积运算,得到的就是发送的信号。发送1,内积结果+1,发送0,内积结果-1,未发送,内积结果0
【参考解答】
S·A =(+1-1+3+1-1+3+1+1)/8 = 1,故A发送了1
S·B =(+1-1-3-1-1-3+1-1)/8 = -1,故B发送了0
S·C =(+1+1+3+1-1-3-1-1)/8 = 0,故C未发送数据
S·D =(+1+1+3-1+1+3+1-1)/8 = 1,故D发送了1

第三章 数据链路层

内容

  1. 透明传输
    PPP协议字节填充:
    (1)0x7E → (0x7D, 0x5E)
    (2)0x7D → (0x7D, 0x5D)
    (3)数值小于0x20的字符,前面加0x7D并进行转换,例0x03 → (0x7D, 0x23)

  2. 差错检测
    冗余码计算

  3. 二进制指数退避算法
    (1)争用期2τ,对于10Mbit/s比特网是512比特时间
    (2)k = Min(重传次数, 10), r = random(0, 1, 2, 3, … , (2k-1))
    (3)重传推后的时间为r倍的争用期
    (4)重传16次仍不能到达时,丢弃该帧

  4. 扩展的以太网
    使用集线器将独立的以太网互连后,这时的最大吞吐量为一个系的吞吐量;而使用以太网交换机后,最大吞吐量为各个系之和

  5. 以太网交换机的自学习功能
    交换机收到帧后,先查找交换表,没有信息就先把源地址和接口写入交换表,若没有查到应从哪个接口转发这个帧,就向除了该接口外的所有接口广播该帧,若查到了就定向转发到那个接口。

例题

(3-07) 要发送的数据是1101011011。采用CRC的生成多项式是P(X) = X4 + X + 1。试求应添加在数据后面的余数。
要发送的数据在传输过程中最后一个1变成了0,问接受端能否发现?

【分析】多项式可知除数为10011,求冗余码,先假设为0000(位数比除数少一位),用待发送的数据除以除数,得到的余数即为冗余码

(3-09) 一个PPP帧的数据部分(用十六进制写出)是7D 5E FE 27 7D 5D 65 7D 5E,试问它真正的数据是什么(用十六进制写出)?

【解析】参考上文PPP协议字节填充,反向思考
【参考解答】7E FE 2E 7D 7D 65 7E

(3-25) 假定站点A和点B在同一个10Mb/s以太网网段上。这两个站点之间的传播时延为225比特时间。现假定站点A和B在t = 0时同时发送了数据帧。当t = 255比特时间,A和B同时检测到发生了碰撞,并且在t = 255 + 48 = 273比特时间完成了干扰信号的传输。A和B在CSMA/CD算法中选择不同的r值退避。假定A和B选择的随机数分别是rA = 0和rB = 1。试问:
(1)A和B各在什么时间开始重传其数据帧?
(2)A重传的数据帧在什么时间到达B?
(3)A重传的数据会不会和B重传的数据再次发生碰撞?
(4)B会不会在预定的重传时间停止发送数据?

【解析】CSMA/CD协议要点:

  • 准备发送:网络层得到的数据加上首部和尾部。发送前要先检测信道
  • 检测信道:若检测到信道忙,则不停地检测,一直等待信道空闲;若信道空闲,并在96比特时间内信道保持空闲(保证了帧间最小时间间隔),就发送这个帧
    • 发送成功:在争用期内一直未检测到碰撞,这个帧发送成功,回到(1)
    • 发送失败:在争用期内检测到碰撞,这时立即停止发送数据,并按规定发送认为干扰信号。适配器接着就执行指数退避算法。

(3-33) 在图 3-31中,以太网交换机有6个接口,分别接到5台主机和一个路由器。在下面表中的“动作”一栏中,表示先后发送了4个帧。假定在开始时,以太网交换 机的交换表是空的。试把该表中其他的栏目都填写
3.33

动作交换表状态向哪些接口转发帧说明
A发送帧给D
D发送帧给A
E发送帧给A
A发送帧给E

【解析】参考“以太网交换机的自学习功能”

第四章 网络层

内容

  1. 分类的IP地址
    A类、B类、C类、D类(多播地址)、E类(保留为今后使用)
  2. IP地址与硬件地址
  • IP地址放在IP数据报的首部,硬件地址放在MAC帧的首部
  • 在IP层抽象的互联网只能看到IP数据报
  • 在局域网的链路层,只能看见MAC帧
  1. IP数据报格式
    首部20字节的固定长度+40字节的可变部分,最后有填充字段保证一定是4字节的整数倍
  2. 构造超网
  • CIDR地址块分配
  • 最长前缀匹配
  1. 距离向量算法:
  • 地址X相邻路由器发来的信息下一跳地址改为X
  • 查看原路由表目的网络,没有的(不同)添加
  • 查看原路由表下一跳地址,是X的用新的覆盖
  • 对比距离,更小则进行更新,相同不变
  1. RIP协议与OSPE比较
比较RIPOSPF
交换对象仅和相邻路由器交换信息向本自治系统所有路由器发送信息
交换内容交换的信息是当前本路由器知道的全部信息,即路由表发送的信息是与本路由器相邻的所有路由器的链路状态
交换时间按固定时间间隔交换信息只有链路状态变化时才发送信息
  1. IP多播
    局域网硬件多播
    多播路由选择协议

例题

(4-10) 试辨认以下IP地址的网络类别:
(1)128.26.199.3
(2)21.12.240.17
(3)183.194.76.253
(4)192.12.69.248
(5)89.3.0.1
(6)200.3.6.2

【解析】参考“分类的IP地址”

(4-20) 某路由器建立了如下路由表,现共收到5个分组,其目的地址分别如下,试分别计算其下一跳
(1) 128.96.39.10
(2) 128.96.40.12
(3) 128.96.40.151
(4) 192.4.153.17
(5) 192.4.153.90

目的网络子网掩码下一跳
128.96.39.0255.255.255.128接口m0
128.96.39.128255.255.255.128接口m1
128.96.40.0255.255.255.128R2
192.153.0255.255.255.192R3
*(默认)-R4

【分析】参考“使用子网时分组的转发”:将收到的目的地址与各子网掩码相与,计算出目的网络地址,按照如下顺序判断交付给谁:直接交付、特定路由、路由表中的路由、默认路由、出错

(4-21) 某单位分配到一个B类IP地址,其net-id为 129.250.0.0。该单位有4000台机器,平均分布在16个不同的地点。如选用子网掩码为255.255.255.0,试给每一地点分配一个子网号码,并计算出每个地点主机号码的最小值和最大值。

【分析】参考“划分子网”

(相似例题) 9.某单位分配到一个地址块135.24.18.128/25。现在需要进一步划分4个一样大的子网。试问:
(1)每个子网的前缀有多长?
(2)每一个子网中有多少个地址?
(3)每一个子网的地址块是什么?
(4)每一个子网可分配给主机使用的最小地址和最大地址是什么?

【分析】参考“划分子网”

(4-41改编扩展) 假定网络中采用RIP协议的路由器B的路由表有如下的项目

目的网络距离下一跳路由器
N17A
N22C
N68F
N84E
N94F

现在B收到从C发来的路由信息如下
(1)比较分析RIP路由协议和OSPF路由协议优缺点
(2)试求出路由器B更新后的路由表

目的网络距离
N24
N38
N64
N83
N95

【分析】
(1)参考上文内容“RIP协议与OSPE比较”。
(2)参考“距离向量算法”
【参考解答】

目的网络距离下一跳路由器说明
N17A新表无N1的信息,不变
N25C两表都有N2,且下一跳相同,则更新距离,并更新下一跳路由器
N39C原表中无N3,而新表有,则添加
N65C两表都有N6,但下一跳不同,比较距离,距离短则更新覆盖
N84E两表都有N8,但下一跳不同,比较距离,距离一样,则不变
N94F两表都有N9,下一跳不同,比较距离,距离更大,则不变

第五章 运输层

内容

  1. 两个主要协议UDP和TCP
比较用户数据报协议 UDP传输控制协议 TCP
面向连接
数据单元用户数据报(面向报文)TCP报文段(面向字节)

2.协议端口号

  • 服务器使用端口号
    • 熟知端口号(系统端口号):0~1023
    • 登记端口号:1024~49151
  • 客户端使用端口号
    • 短暂端口号:49152~65535

附一些常用端口号

应用程序FTPTELNETSMTPDNSTFTPHTTPSNMP
熟知端口号212325536980161
  1. TCP协议解决三大问题之一:可靠传输
  • 原理
    • 停止等待协议
    • 连续ARQ协议
  • 实现
    • 以字节为单位的滑动窗口,累积确认

    • 超时重传时间的选择
      (1)加权平均往返时间 RTTS 的计算:

      • 第一次RTTs就取所测量到的RTT样本值
      • 之后新的RTTS = (1 - α) × 旧的RTTS + α × 新的RTT样本

      (2)RTT偏差的加权平均值 RTTD的计算:

      • 第一次RTTD取测量值的一半
      • 之后新的RTTD = (1 - β) × 旧的RTTD + β × | RTTS - 新的RTT样本 |
        其中α推荐值为0.128,β推荐值为0.25

      (3)超时重传时间 RTO 的计算:
      RTO = RTTS + 4 × RTTD

    • 选择确认SACK

  1. TCP协议解决三大问题之二:流量控制

  2. TCP协议解决三大问题之三:拥塞控制

比较流量控制拥塞控制
解决问题(端到端的控制)让发送方的发送速率不要太快,让接收方来得及接受(全网所有节点协调工作)防止过多的数据注入到网络中,使网络中的路由器或链路不致过载
  • 慢开始

    • 当超时时,执行慢开始算法
    • 设置门限值 ssthresh = max(cwnd / 2,2)
    • 设置拥塞窗口 cwnd = 1
    • 使用慢开始算法后,每经过一个传输轮次 ,拥塞窗口 cwnd 就加倍
  • 拥塞避免

    • 使用拥塞避免算法后,每经过一个传输轮次 ,拥塞窗口 cwnd 就加一
  • 快重传

  • 快恢复

    • 当发送端收到连续三个重复的确认时,执行快恢复算法
    • 设置门限值 ssthresh = 当前拥塞窗口 cwnd / 2
    • 设置拥塞窗口 cwnd = 慢开始门限 ssthresh

    拥塞控制流程图

超时
cwnd >= ssthresh
三个重复ACK
超时
三个重复ACK
连接建立
cwnd = 1, 指数规律增大
ssthresh = cwnd/2 , cwnd = 1
cwnd按线性规律增大
ssthresh = cwnd/2, cwnd = ssthresh
连接终止
  1. TCP的运输连接管理
    三次握手
客户A 服务器B 主动打开 被动打开 SYN = 1,seq = x SYN = 1,ACK = 1 ,seq = y,ack = x+1 ACK = 1,seq = x+1,ack = y+1 数据传送 客户A 服务器B

例题

(5-13) 一个UDP用户数据报的数据字段为8192字节。在链路层要使用以太网来传送,试问应当划分为几个IP数据报片?说明每一个IP数据报片的数据字段长度和偏移字段的值。

【分析】参考“UDP数据报格式”
UDP数据报长度 = 首部8字节 + 数据部分长度。
因为数据字段为8192字节,所以UDP数据报长度 = 8192 + 8 = 8200 字节
又因以太网的最大传输单元MTU = 1500,所以要划分IP数据报,而每个IP数据报的首部占20字节,所以数据部分最大占1480字节(IP数据报数据部分为UDP整个数据报,即首部 + 数据)
【参考解答】
8200 / 1480 = 5 … 800
故划分为 6 个IP数据报片,前 5 个数据部分长度都是 1480 字节,第 6 个为 800 字节
每一个IP数据报片情况如下表:

序号数据报字段长度偏移字段
第一个14801480 × 0 / 8 = 0
第二个14801480 × 1 / 8 = 185
第三个14801480 × 2 / 8 = 370
第四个14801480 × 3 / 8 = 555
第五个14801480 × 4 / 8 = 740
第六个8001480 × 5 / 8 = 925

(5-23)主机A向主机B连续发送了两个TCP报文段,其序号分别为70和100。试问:
(1)第一个报文段携带了多少个字节的数据?
(2)主机B收到第一个报文段后发回的确认中的确认号应当是多少?
(3)如果主机B收到第二个报文段后发回的确认中的确认号是180,试问A发送的第二个报文段中的数据有多少字节?
(4)如果A发送的第一个报文段丢失了,但第二个报文段到达了B。B在第二个报文段到达后向A发送确认。试问这个确认号应为多少?

【分析】参考“TCP协议格式”
【参考解答】
(1)30(70~99)
(2)100
(3)80(100~179)
(4)70

(5-33) 假定TCP在开始建立连接时,发送方设定超时重传时间RTO = 6秒
(1)当发送方收到对方的连接确认报文段时,检测出RTT样本值为1.5秒,试计算现在的RTO值;
(2)当发送方发送数据报文段并收到确认时,检测出RTT样本值为2.5秒,试计算现在的RTO值;

【分析】参考“超时重传时间的选择”,公式在上文不再赘述
【参考解答】
(1)RTTS = 1.5 s,RTTD = 0.75 s
RTO = 1.5 + 0.75 × 4 = 4.5 s
(2)RTTS = (1 - 0.125) × 1.5 + 0.125 × 2.5 = 13/8 s
RTTD = (1 - 0.25 ) × 0.75 + 0.25 × |1.5 - 2.5| = 0.78125
RTO = 13/8 + 4 × 0.78125 = 4.75 s

(5-39) TCP 的拥塞窗口cwnd大小与传输轮次n的关系如下所示:
(1)试画出如图5-25所示的拥塞窗口与传输轮次的关系曲线。
(2)指明TCP工作在慢开始阶段的时间间隔。
(3)指明TCP工作在拥塞避免阶段的时间间隔。
(4)在第16轮次和第22轮次之后发送方是通过收到三个重复的确认还是通过超市检测到丢失了报文段?
(5)在第1轮次,第18轮次和第24轮次发送时,门限ssthresh分别被设置为多大?
(6)在第几轮次发送出第70个报文段?
(7)假定在第26轮次之后收到了三个重复的确认,因而检测出了报文段的丢失,那么拥塞窗口cwnd和门限ssthresh应设置为多大?

cwnd1248163233343536373839
n12345678910111213
cwnd4041422122232425261248
n14151617181920212223242526

【分析】参考“拥塞控制”

第六章 应用层

内容

域名系统DNS

  • 域名服务器
    (1)根域名服务器
    (2)顶级域名服务器
    (3)权限域名服务器
    (4)本地域名服务器
  • 域名解析过程
    主机向本机域名服务器的查询一般都是采用递归查询
    本地域名服务器向根域名服务器的查询通常是采用迭代查询

文件传送协议FTP

  • 基于TCP的FTP
  • 基于UDP的TFTP

万维网WWW

  • 统一资源定位符URL:包含了协议、服务、存取路径等
  • HTTP使用了面向连接的TCP协议,但是HTTP本身是无连接的
  • 代理服务器把最近的一些请求和响应暂存在本地磁盘中
    一个邮件服务器既可以作为客户,也可以作为服务器
  • HTTP报文结构:请求报文、响应报文
    区别在开始行,请求报文开始行第一个是“方法”字段,响应报文开始行第一个方法是“版本”字段
  • 简单邮件传送协议SMTP
  • 邮件读取协议POP3和IMAP
  • 动态主机配置协议DCHP

DCHP协议工作过程:
(1)DHCP 服务器被动打开 UDP 端口67,等待客户端发来的报文。
(2)DHCP 客户从 UDP 端口 68 发送 DHCP 发现报文。
(3)凡收到 DHCP 发现报文的 DHCP 服务器都发出 DHCP 提供报文,因此 DHCP 客户可能收到多个 DHCP 提供报文
(4)DHCP 客户从几个 DHCP 服务器中选择其中的一个,并向所选择的 DHCP 服务器发送 DHCP 请求报文
(5)被选择的 DHCP 服务器发送确认报文DHCPACK,进入已绑定状态,并可开始使用得到的临时 IP 地址。DHCP 客户现在要根据服务器提供的租用期 T 设置两个计时器 T1 和 T2,它们的超时时间分别是 0.5T 和 0.875T。当超时时间到就要请求更新租用期
(6)租用期过了一半(T1 时间到),DHCP 发送请求报文 DHCPREQUEST 要求更新租用期。
DHCP 服务器若同意,则发回确认报文DHCPACK。DHCP 客户得到了新的租用期,重新设置计时器
DHCP 服务器若不同意,则发回否认报文DHCPNACK。这时 DHCP 客户必须立即停止使用原来的 IP 地址,而必须回到步骤2 重新申请 IP 地址
若DHCP服务器不响应该步骤的请求报文DHCPREQUEST,则在租用期过了 87.5% 时,DHCP 客户必须回到步骤6 重新发送请求报文 DHCPREQUEST
(7)DHCP 客户可随时提前终止服务器所提供的租用期,这时只需向 DHCP 服务器发送释放报文 DHCPRELEASE 即可

例题

请简述用户点击 “http://www.tsinghua.edu.cn/chn/yxsz/index.html” 后所发生的事件

【参考解答】
(1) 浏览器分析超链指向页面的 URL
(2) 浏览器向 DNS 请求解析 www.tsinghua.edu.cn 的 IP 地址
(3) 域名系统 DNS 解析出清华大学服务器的 IP 地址
(4) 浏览器与服务器建立 TCP 连接
(5) 浏览器发出取文件命令:GET /chn/yxsz/index.htm
(6) 服务器给出响应,把文件 index.htm 发给浏览器
(7) TCP 连接释放
(8) 浏览器显示“清华大学院系设置”文件 index.htm 中的所有文本

试述邮局协议和POP的工作过程。在电子邮件中,为什么需要使用POP和SMTP这两个协议?IMAP与POP有何区别?

【参考解答】

  • 工作过程:
    (1)发件人调用 PC 中的用户代理撰写和编辑要发送的邮件。
    (2)发件人的用户代理作为客户与发送方邮件服务器建立 TCP 连接,然后把邮件用 SMTP 协议发给发送方邮件服务器,SMTP 服务器把邮件临时存放在邮件缓存队列中,等待发送。
    (3)发送方邮件服务器的 SMTP 客户与接收方邮件服务器的 SMTP 服务器建立 TCP 连接,然后就把邮件缓存队列中的邮件依次发送出去。
    (4)运行在接收方邮件服务器中的SMTP服务器进程收到邮件后,把邮件放入收件人的用户邮箱中,等待收件人进行读取。
    (5)收件人在收信时,就运行 PC 机中的用户代理,作为客户使用 POP3(或 IMAP)协议读取发送给自己的邮件
  • 原因:
    使用SMTP协议是为了用户能够从发信人的用户代理向源邮件服务器以及源邮件服务器向目的邮件服务器发送邮件,使用POP协议则是为了用户能够读取邮箱服务器上的邮件。
  • 区别:
    (从操作位置和操作内容考虑)
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-07-13 17:51:11  更:2021-07-13 17:53:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/27 13:32:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计