《计算机网络》 期末复习

本文概述了计算机网络的基础知识,包括OSI与TCP/IP协议栈、分层模型的作用,以及各层的主要功能。讨论了编码技术如曼彻斯特编码,数据链路层的帧组装、差错控制,流量控制策略如滑动窗口协议。还涉及了介质访问控制方法如CSMA/CD,以及PPP、HDLC协议。此外,简述了网络层的报文交换、路由算法,传输层的TCP与UDP,以及应用层的DNS、SMTP、POP3等协议。
摘要由CSDN通过智能技术生成

计算机网络

注:这是一份临近考试自己复习、所总结的东西,方面自己查阅。
一下内容有王道考研课件截图、本人学校课堂习题、以及同学们分享的笔记。


物理层

OSI与TCP/IP协议栈

协议
网络中对等实体数据交换而建立的规则、约定 
接口
上层使用下层服务的入口 
服务

下层为相邻上层提供的功能调用

分层概念

为什么要分层?

发起通信的计算机 必须将数据链路激活  
告诉网络如何识别目的主机 
能够检测网络连接是否正常 
确保差错与流量控制 
OSI与TCP/IP
OSI参考模型       TCP/IP参考模型     TCP/IP协议栈 
  ----------------------------------------------------------
  应用层 
  表示层               应用层          HTTP/FTP/DNS 
  会话层 
  ----------------------------------------------------------
  传输层               传输层          TCP UDP
  ----------------------------------------------------------
  网络层               网络层            IP
  ----------------------------------------------------------
 数据链路层           网络接口层      Ethernet STM Frame Relay 
  物理层 
  ----------------------------------------------------------

TCP/IP 参考模型各层的主要功能

  • 应用层 使用网络服务应用进程、与用户交互
  • 传输层 TCP可靠传输 UDP不可靠传输 与 拥塞控制等
  • 网络层 IP数据报的传输 路由规划等
  • 网络接口层 数据成帧 透明传输 差错控制

编码技术

单极性不归零

高1 低0

在这里插入图片描述

曼彻斯特编码

高->低 1 低->高 0

在这里插入图片描述

差分曼彻斯特编码

同 1 异 0

在这里插入图片描述

香农与奈氏

奈氏准则

适用条件:理想情况下无噪声干扰、避免码间串扰、码元传输速率限制

在这里插入图片描述

V 为 一个码元携带的比特位数

香农定理

适用条件:理想情况下有噪声干扰、避免码间串扰、码元传输速率限制

在这里插入图片描述

在这里插入图片描述

奈式准则与香农定理 例题

在这里插入图片描述


数据链路层

装配成帧(透明传输)

字符计数法

在这里插入图片描述

字节填充法

在数据中遇到帧头帧尾 在前面夹ESC````
遇到ESC在前面加ESC
esc键的ascii码十进制表示为27

在这里插入图片描述

比特填充法

帧头帧尾 01111110
数据遇到5个1就在后面加一个0

在这里插入图片描述

违规编码法

利用曼切斯特、差分曼切斯特编码特性、表示非法编码作为帧头 帧尾

差错控制

检错编码
  • 奇偶校验
举例:   010101
奇校验 `0`010101 (加0为奇)
偶校验 `1`010101 (补1为偶)
  • CRC校验
例如 : 传输数据为 1101 0110 11 生成多项式为 10011  多项式   4   3 2 1  0 (x^n + ....)
解: 生成多项式最高位 2^4 则阶r=4                           1  0 0 1  1
* 在传输数据后面追加[r]个零  
计算:同为0 异为1  异或运算 

               1100 00 1010   
        /-------------------
10011  /  1101 0110 11 0000 
          1001 1
        --------------------
          0100 11
           100 11
        --------------------
                 10 11 0
                 10 01 1
        --------------------
                    10 100
                    10 011
        --------------------
                       1110 (FCS 帧检验序列) 
校验方法 
接收方在 传输的数据后追加FCS,使用生成多项式进行同样的操作 
如果余数为 0 则帧检验无误
               
               
纠错编码
  • 海明码校验
海明不等式  
        2^r >= k+r+1  

距离: 传输数据 D=101101 
则海明校验码长度为 2^r >= 6+r+1  min(r)=4 

二进制位 0001   0010    0011    0100    0101    0110    0111    1000    1001    1010 
数据位   1      2       3       4       5       6       7       8       9       10 
代码    P1      P2     D1       P3     D2      D3       D4      P4      D5      D6
实际值                  1               0       1       1               0       1  

如何求 P1 P2 P3 P4 呢?
看P1 即2^0 找0位与其相同的数据位 同为 0  |  异为 1 
即 P1⊕D1⊕D2⊕D4⊕D5=0
   0   1   0   1  0 =0 
依次求出 P1 P2 P3 P4 

接收方怎样纠错?  
例如 
P1⊕D1⊕D2⊕D4⊕D5=1
P2⊕D1⊕D3⊕D4⊕D6=0
P3⊕D2⊕D3⊕D4=1
P4⊕D5⊕D6=0   

二进制: 1010 B = 5 D 
则 说明 D5 有错

流量控制 (滑动窗口)

  • 目的
解决的问题 接受速度与发送速度匹配问题 
减少传输出错与资源浪费 
  • 简单停止等待协议
发送方每发送一帧就等待接收方的确认、即发送就等待确认 
具有超时重传特性 : 即超过RTT 没有接收到确认 则再次重传 
缺点 : 发送方浪费太多时间、大部分时间都花在了RTT时间上了,信道利用率太低 
  • 计算信道利用率与信道吞吐率
    信道利用率 = (L/C)/T
    L: T时间内发送比特数量
    C: 发送方数据传输率
    T: 发送周期
注意事项: 关于T的计算与(L/C)的计算 三种协议有所不同 
关于 L/C的计算 通常 (L/C) = 帧长/发送速率 
退后N与选择重传协议需要与其发送窗口大小相乘  需要会计算算窗口大小 

T的计算 (L/C)+2t t为传播延时 
如果使用了捎带确认 
则T =(L/C)*2+2t

信道吞吐率= 信道利用率*发送方的发送速率

  • 退后N帧协议
    窗口大小 <=2^n -1 n为序号个数

  • 选择重传协议
    窗口大小 <=2^(n-1) n为序号个数

  • 例题
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 计算退回N 需要多少个序号
    在这里插入图片描述

介质访问控制 多路复用

  1. 静态划分
    1.1 频分多路复用
    多个节点之间使用不同的频率 互不干扰
    1.2 时分多用
    每个节点只能在自己能发的时间片内发送
    1.3 波分多路复用
    每个信道采用不同的波长
    1.4 码分多路复用(重点)
每个站点有自己的芯片序列 
例如 
站点一 -1 1 -1 -1  1 -1 (1为1 -1为0)
站点二  1 1  1  1  1 -1 
站点发送1 则发送芯片序列 发送0 则发送芯片序列的反码 
两向量正交 

站点一 发送 0 
站点二 发送 1
则 1 -1 1 1 -1  1
   1  1 1 1  1 -1
   相加
   2  0 2 2  0  0 

解码  -1:发送了0    1:发送了1    0:没有发送
站点一  [2 0 2 2 0 0]*[-1 1 -1 -1 1 -1] =(-2-2-2)/6=-6/6=-1 => 0(即发送了0)
站点二 同理
动态划分
ALOHA协议

想发就发、出错超时重传

CSMA协议 >载波监听

先听再发、出错超时重传

CSMA/CD协议 >载波监听 冲突检测

先听再发、边传边听即进行碰撞检测、出错后根据情况重传
(最小帧长 / 数据传输速率) >= 2T
最小帧长 = 2T * 数据传输率

发生碰撞则 什么时机再进行发送

r=[0,1,3,…,2^k - 1] max( k )=10
回避时间 r*2T max( r )=16

注:以太网最小帧长为64B
例题:计算最小帧长

例1、在1km长电缆、建立1GB/s的网络、电缆信号速度为200000km/s 
求最小帧长?
答:
最小帧长 >= 数据传输率 * 2T 
(1GB/s)*2*(1km/200000km/s)  

例2、帧传播速度 10Mb/s 距离2.5km 信号传播速率 2*10^8 m/s  
求最短帧长 
答: 
最短帧长 >= 数据传输率 * 2T 
(10Mb/s)*2*(2.5km/(2*10^8 m/s)) 
CSMA/CA协议 >载波监听 冲突避免

使用于无线局域网络
先检测就没有人在发 没有则发送 自己要发的信号 得到接受方确认 然后就可以发了
为什么要有CSMA/CA?

对于无线局域网而言 
		无法做到360度 全面检测    
		隐蔽站:当A C 同时检测不到信号、都认为信道空闲、同时向B发送数据就会造成冲突     
CSMA/CA工作原理 
1、发送方检测信道是否空闲 
2、如果空闲则发送RTS 
3、接收方收到RTS、发送CTS 
4、发送方接收到CTS后、开始发送数据帧  
轮询介质访问控制
  • 轮询协议
    主节点依次询问 其他节点要不要发 当被询问才能发
  • 令牌协议
    通过特定硬件 传递令牌 拥有令牌才能发送

MAC帧协议 (直接去看协议分析题目)

  • 通常指以太网MAC帧 采用CSMA/CD介质访问控制 曼彻斯特编码
    最小帧长:64B
    MAC帧格式
      6           6        2          46~1500          4        字节
|  目的地址  |  源地址  |  类型  |  数据(IP数据报)  |  FCS  |  
  • 无线局域网MAC帧格式 802.11
    MAC帧头
     2            2           6      6         6          2          6
|  帧控制  |  生存周期ID  |  地址1  |地址2  |  地址3  |  序列控制  |  地址4  | 
地址1:AP1
地址2:AP2
地址3:目标mac地址
地址4:源mac地址 

PPP协议

协议 (Point-to-Point Protocol)
拨号基本都是PPP协议 仅支持全双工链路

协议不需要满足的需求
纠错 流量控制 序号 不支持多点线路

协议三个组成部分

  1. 将IP数据报封装到串行链路
  2. 链路控制协议LCP:建立并维护数据链路连接
  3. 网络控制协议NCP:PPP支持多种网络层协议、每个网络层都要一个NCP配置。

HDLC协议

目标:简答

网桥

网桥、交换机、路由器 可以隔离 冲突域

网桥帧转发 算法 Hash表映射

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


网络层

报文交换与分组交换

分组交换效率更高 
例
源报文10000bit 链路传输速率 10000bps 
分组 每组10bit 

经过两个交换设备 

报文交换
10000bit/1000bps=10s  
10s*3=30s 

分组交换
10bit/1000bps=0.01s 
10+0.01s*2=10.02s 

数据报方式与虚电路方式

数据报方式 为 网络层 提供无连接服务 
不同的分组、可能经过的传输路径不同、不事先分配固定路径 

虚电路方式 为 网络层 提供连接服务 
为分组的传输分配路径、然后使用确定好的路径、系列分组传输路径相同、传输结束后拆除连接。

路由算法与路由协议

静态路由与动态路由 
动态路由
OSPF (链路状态路由算法)
RIP  (距离向量路由算法) 
RIP
  • 仅和相邻路由器交换信息
  • 路由器交换的信息是自己的路由表
  • 固定时间交换一次、如果长时间没有接收到则认为相邻节点挂了、更新自己的路由表

距离向量题要会算
目标 距离 下一跳

  • 距离向量路由算法 例题

在这里插入图片描述

在这里插入图片描述

OSPF协议 (必须掌握 迪彻斯卡拉 单源最短路径算法)

广度优先进行扩散
重点掌握最短路径算法
算法:每一步都选距离起点最近的节点、并检查此节点到没有走过的与其相邻的节点是否可以利用、优化相邻节点的距离。

  • 例题
    在这里插入图片描述

在这里插入图片描述

BGP协议 (期末大概率不考)

每个网络有自己BGP发言人、有发言人向其他路由进行传递消息

IP数据报 格式 (直接看协议分析题)

0         4           8            16   19   24    31
|  版本   |  首部长度  |  分区服务   |      总长度      |
|  标识                           |标志   |   片偏移  |
|     生存时间         | 协议       |   首部检验和      |
|                    源地址                          |
|                    目标地址                        |
|                                     可选字段| 填充  |
数据部分

标志位  X DF MF   DF 0/1 禁止分片/允许分片 
MF 0/1  后面没有分片了(最后一片)/ 后面还有 

偏移量:此片的第一位相对于整体数据开始的差 即偏移量 

IP划分

重点记住 A B C类网络号的长度 以及开头的0 、10、110

在这里插入图片描述

重点记住在子网划分时 子网络号不能全为0 或者 全为1

在这里插入图片描述

期末考试考试几率不大 如果有选择题可能容易考察

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

NAT网络地址转换

因为IP公网IP地址有限 则 连接内网和外网、
私有IP发送数据要找个代理(共有IP)用其IP地址将数据与外面公网进行收发
通过子网划分的配和 同一个公网IP地址可以 供多个子网进行使用

子网划分

网络号 | 主机号        |
网络号 |子网号 | 主机号 | 
子网号是否可以全零全一看情况 
主机号不能全零或者全一
子网掩码

子网掩码就是配和IP地址计算出 子网地址的
子网最大数量与什么有关系 IP地址的从右向左数 到非零为止的位数 可以进行子网的划分

以知IP地址为 144.14.72.24 子网掩码为 255.255.192.0 
求 网络地址 
128   64    32   16    8   4   2   1 
--------------------|----------------
 1    1     1    1     1   1   1   1 

IP地址 144.14.72.24/18
        1 0 0 1 0 0 0 0 . 0 0 0 0 1 1 1 0 . 0 1 0 0 1 0 0 0 . 0 0 0 1 1 0 0 0
子网掩码 255.255.192.0 
        1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0
与运算-------------------------------------------------------------------------
        1 0 0 1 0 0 0 0 . 0 0 0 0 1 1 1 0 . 0 1 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0 
结果     144             .    14           .  64             .  0  

子网号为 : 144.14.64.0
  • 例题 (IP/子网掩码 求下一跳问题)

在这里插入图片描述

  • 例题 (设计题、子网划分)
    重点:
    1. A B C类IP地址的网络号位数 8 16 24
    2. 子网号不能全为0 或者 全为 1
    3. 子网主机号 不能全为0 或者 全为 1

在这里插入图片描述

ARP协议(可能靠简答题)

简略回答:ARP是一种高速缓存技术、将MAC地址与网络IP地址形成映射、 保存到自己本机、解决更好的解决下一跳走哪里的问题

在这里插入图片描述

传输层

知识点

端口号
  端口号为16bit 共有65536个端口号 
  0~1023 熟知端口号 
  1024~49151 没有熟知进程使用 
  49152~65535 动态选择的端口号 
TCP UDP
TCP:可靠传输  可以分段  
UDP:不可靠传输 不可以分段  
TCP 报文 (主要用于报文分析题目 不要盲目死记)

在这里插入图片描述

在这里插入图片描述

TCP 三次握手与四次挥手
三次握手
第一步: 客户端发送连接请求报文段,无应用层数据 
        SYN=1 seq=x(随机) 并
第二步: 服务端为TCP连接分配缓存和变量、并向客户端响应 确认报文段、允许连接,无应用层数据 
        ACK=1 SYN=1 seq=y(随机) ack=x+1
第三步: 客户端为TCP连接分配缓存和变良,向服务端响应确认、可以携带应用层数据 
        ACK=1 seq=x+1 ack=y+1 
四次挥手 连接释放
第一步:客户端发送连接释放请求 
        FIN=1 seq=u 
第二步: 服务器响应确认报文 
        ACK=1 seq=v ack=u+1 
第三步: 服务端发完数据,就发出连接释放报文、主动关闭TCP连接 
        FIN=1 ACK=1 seq=w ack=u+1
第四步: 客户端回送一个确认报文段,再等到时间等待计时器设置的2MSL(最长报文段寿命)后,
        连接彻底关闭 
        ACK=1 seq=u+1 ack=w+1 
TCP流量控制

在这里插入图片描述

拥塞控制算法

作用 : 试探网络传输能力

慢开始 拥塞避免

在这里插入图片描述

快重传 快恢复

在这里插入图片描述

例题 (拥塞算法)

在这里插入图片描述

报文分析 (记住就完了)

在这里插入图片描述

来自己练一下下面这个

在这里插入图片描述

应用层

知识点

  • 域名与DNS解析
  • 邮件STMP 与 POP3
    STMP发邮件 25端口
    POP3协议收邮件 110端口
  • FTP
    TCP控制连接请求 21端口
    文件传输 20端口
  • HTTP协议 (请求报文与响应报文)

在这里插入图片描述

应用层综合题目

在这里插入图片描述

当我们感觉有压力时、是因为我们想变得更优秀、这时间好事! 没比较和别人比、毕竟自己快乐才重要是吧。 祝君好运!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

高万禄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值