计算机网络考研辨析(后续整理入笔记)

考完研补充题目图片进来。

方老师课程还有一些细节不够到位,不影响学习,但是初期如果想得多了,会有一些迷惑,后续要把这些补进去文章里,让文章更加好。

这里做出细化,尤其是针对数字,计算,保证无误。

体系结构

OSI模型会考,相比于5层模型,在应用层和传输层之间,多了表示层和会话层。

  1. 高三层=资源子网
    • 应用层是应用程序的所在
    • 表示层用于统一不同系统之间数据格式的差异
    • 会话层用于建立进程之间的通信(会话)
  2. 传输层,承上启下,TCP,UDP
  3. 低三层=通信子网

注意流量控制,在笔记里,我是把流量控制放在传输层了,但是实际上传输层,网络层,链路层都可以进行流量控制,区别在于:

  1. 传输层,端到端流量控制
  2. 网络层,整个网络
  3. 链路层,相邻结点之间

物理层

速率辨析

计算题型二:

注意奈氏准则,香农定理,以及波特率。

波特率(调制速率)是码元传输速率,因此实际速率=码元大小×波特率

实际上奈氏准则公式里的2W就是带宽为W前提下的波特率,反过来算波特率也别忘了码元。

交换方式辨析

三+1种交换的区别:

  1. 电路交换:一条路走到黑
  2. 报文交换:电路交换灵活版,一段路走到黑,但是可以分开几段走
  3. 分组交换,不仅分开几段走,数据报也要切分成分组
    • 数据报交换,最基本的分组交换(注意区分报文交换≠数据报交换)
    • 虚电路交换
      • 流程类似电路交换,先建立连接,之后分配一个虚电路号
      • 具有电路交换的顺序性,但是其他方面和分组一致,发送是很灵活的,不用分配带宽(20年真题),且不会占用(可交叉)

三种交换模式的时间计算

数据报交换,假设忽略节点处理时间以及传播时延,只关注发送的时间,那么要按照流水线的思路分析。

假设有n段,那么总时间T=第一个节点发送完全部分组+其余n-1个节点逐级转发完最后一个分组的时间

以10年真题看,首先确定有1000个分组,每一个分组有1000B。第一个节点发送要80s,而之后还要转发3-1=2级,因此还要有2×0.08ms的时间,选C

如果用报文交换呢?每一级都要消耗全部分组的时间,也就是说要3×80s

如果用电路交换呢?已经建立好链接的前提下,就是一级的时间即80s

总的来说,电路交换是最快的,报文交换比电路交换灵活点,但是损耗太大了,而分组交换相当于细分程度很高的流水线,可以逼近电路交换的速度,同时兼顾完美的灵活性。

再论2013年真题,直接用上述思路,报文交换是800×2,而分组交换是800+1

编码调制辨析

  1. RZ(归零)
  2. NRZ(不归零)
  3. NRZI(NRZ invert),翻转NRZ
    • 思想像差分曼彻斯特
    • 遇到0则翻转
    • 差异有二,NRZI反转的是电平,而差分曼彻斯特是跳变方向,其次是NRZI遇0翻转,而差分曼彻斯特遇1翻转
  4. 曼彻斯特,跳变方向代表0或者1
  5. 差分曼彻斯特
    • 曼彻斯特的导数(差分)
    • 跳变方向改变代表1,不变代表0(导数为零)

具体做题的时候,先通过波形判断是R系的,还是曼彻斯特系的,之后再内部区分。

不同调制:

  1. ASK(Amplify SK),调幅
  2. FSK(Frequency SK),调频
  3. PSK(Phase SK),调相
  4. QAM,相当于ASK和PSK杂交

链路层

链路层功能

我们学的只是无确认的无连接服务,实际上链路层有三种功能,逐级递进

  1. 无确认+无连接
  2. 有确认+无连接
    • 加入重传机制,用于错误率较高的信道,比如无线
  3. 有确认+有连接
    • 这里就非常像传输层那边的可靠传输了,但是仅仅实现了停等协议

可靠传输到底在哪一层?

实际上可靠传输是很复杂的,因此实际中都是在传输层实现,正好和TCP一起,方老师是这样讲的,但是在408考纲里面,可靠传输极限情况下可以放在链路层,因此考出来的话,实际上链路+网络+传输,都可以可靠传输。

可靠传输分类:

  1. ARQ,使用确认+重传机制确保可靠
    • 非连续ARQ:停等
    • 连续ARQ
      • GBN
      • SR

具体的讲解仍然是放在传输层里面。

介质访问控制(MAC)

在这里插入图片描述

分类:

  1. 信道划分控制:
    • 是一种集中控制的思路,用户服从整体
    • 具体来说就是复用,在后面加个A就是xx多址复用
      • FDM(Frequency)
      • TDM,进阶版是STDM(Static TDM),时隙不固定
      • WDM(Wawe)
      • CDM(Code),码分复用
    • 重点是CDMA,14年真题考了,得学一下细节
  2. 随机访问控制
    • 本质是争用,用户平等,不受控
      • ALOHA
      • CSMA
      • CSMA/CD
      • CSMA/CA
信道划分控制之——CDMA

题型1:CDMA细节(14年真题)

王道考研CDMA

一个bit用一个码片表示,下图长度为8

乍一看浪费了8倍的空间,别急,还有一个要求,就是多个站点之间的码片要正交,结合线性代数的知识可以知道,8维向量,正交的向量个数最多是8个,也就是说,极限情况下可以同时让8个站点使用8个正交的码片。

这个情况下是不存在浪费的,8bit的融合数据里面能包含8×1个bit

好了,继续分析码片的性质,1对应原始码片,要表示0,就把码片01翻转,此时有趣的现象来了,这操作相当于码片对应的向量前面给负号,并不改变正交性。

在这里插入图片描述

发送过程很简单:

  1. 发送端,把向量线性叠加
  2. 接收端,用向量乘以接收到的叠加数据,就可以提取出我要的信号

为什么呢?根源在于所有码片是正交的,那么叠加后的数据乘以某个码片,只有对应码片才能有结果,其他码片的内积都是0,所以实际上叠8个都是可以的

所以CDMA,效果好,抗干扰,保密性好,且不浪费,优点突出。

在这里插入图片描述

举例14年真题

首先审好题,C收到A发的数据,也就是说要用A的码片去解析

随机访问控制

ALOHA,很老,简陋

ALOHA采用ack机制,如果发送方没有收到ack,代表冲突了,则经过随机事件后重发

时隙ALOHA将时间对齐,规定发送帧必须在时间片开头发送,这样可以降低碰撞率

在这里插入图片描述

CSMA整个系列的都可以一起讲,最开始讲一下CSMA/CD,之后的进行简化就可以。

CSMA是弱化版CSMA/CD协议,有三种,区分一下:

  1. 坚持和非坚持的区别在于,信道忙的时候是否要暂停监控
  2. 坚持内部,1和p的区别在于信道空闲的时候立即发送的概率

在这里插入图片描述

上图只列出两种情况,其实还有一种冲突的情况,就是争用期内发生碰撞,此时这几个协议都会暂停一段时间再监听,注意,这个冲突是通过监听实现的,而不是ack

CSMA/CA,CA是Avoid,CD是Detect,区别在于CD只能检测,而CA只能避免:

  1. CD,手法简陋,重点在发送过程的检测
  2. CA,有详细的预约机制和确认机制
    • 通过RTS(Request)和CTS(Clear)进行握手,实际上是建立了两个站点之间的链接,保证发送过程不被打扰。
    • 发送过程是停等协议的过程,有ack机制
    • 弱化检测,因此广泛用于无线网络(反正无线网络在发送过程中也很难检测)

在这里插入图片描述

11年真题:在随机访问控制里面,ALOHA是用ack的,CSMA全系里面,只有CSMA/CA用ack

20年真题:CA的监听是通过RTS实现的,在第一个RTS被回复之前,前面所有RTS消耗的时间就是监听消耗的时间,是最长的。这道题图里给的RTS是被回复的第一个RTS,前面其实还有RTS,只不过被隐藏在IFS1里面了,因此IFS1就是最长的。

轮询访问控制

前两种MAC方式,都是平等的,但是轮询需要有一个主机,控制整个系统。

缺点在于,轮询过程本身有消耗,其次主机万一坏了就尴尬了(单点故障)

在这里插入图片描述

令牌传递协议是轮询的优化,去除了主机控制,用令牌去代替。

注意,令牌环网是逻辑环网,实际上还是星形的物理拓扑。

发送过程就是令牌在不断转圈:

  1. 如果不发送,就不断地传下去
  2. 如果发送
    • 修改占用位
    • 附加数据
    • 此时仍然是转圈,其他非目标节点接收到令牌后,发现不是给自己的,就继续传下去,直到目标节点,接受了数据,继续把令牌传下去

说白了,令牌永远都在按顺序转,只是把发送数据和商量的过程藏在了转的过程里。

虽然去掉了主机,但是仍然会有单点故障,让环路断掉,好在可以用备用机顶替。

在这里插入图片描述

扩展以太网

线缆区分看后缀(19真题)

BASE5:同轴电缆(数字后缀)
BASE-T:双绞线
BASE-F:光纤

以太网协议区分:

  1. IEEE 802.3
    • 有线以太网,和V2并称,一般混起来用
  2. IEEE 802.11
    • 无线局域网,注意4个地址,在不同情况下代表含义不同
    • 第一种情况是两个终端,两个基站转发,记忆方法是按目的-源,基站-终端来记
      • 1,RA,Receive,目的AP基站
      • 2,TA,Trans,源AP基站
      • 3,DA,Destination,目的终端
      • 4,SA,Source,源终端
    • 第二种情况是两个终端,一个基站转发,又要分两种情况,此时不区分AP和终端,怎么记呢?前两个地址代表方向,<目的站,源站>,最后一个用剩下的终端填就行
      • 发送端,基站,S,D,从S发到基站
      • 接收端,D,基站,S,从基站发到D

以17年真题为例,首先确定是一个基站,然后确定<目的站,源站,剩余>,即<AP,S,D>,所以B

在这里插入图片描述

交换机

交换机两点:

  1. 自学习
  2. 无目标则广播(本端口不播)

以14年为例,首先无目标,则广播23端口
此时自学习,记录a1-1端口,因此ack有目标不需要广播

16年同理,因为自学习机制,H2会被记录,因此H4反馈ack的时候,交换机端口上只有H2所在端口会转发ack,但是注意H4在到达交换机之前,还经过一个Hub,这里无条件广播的。

网络层

传输层

可靠传输

ACK是标记,用于表示是否是反馈,而ack是确认号

ack到底是多一位还是正好,实际上普遍是ack多一位,比如收到了100,那么就ack(101),这样比较方便,发送方直接把窗口起始位置调成ack的值就可以,非常直观。后面你看到方老师给的图,基本都是这样。

注意区分,题目给出“收到x号帧的确认”,这是一种文字性描述,代表已经收到了x,但是如果是“ack=x”,那么实际上只代表收到了x-1

题型1:传输过程分析,11,12年真题,这个简单

题型2:窗口大小限制(17年真题)

首先明确帧号(数据下标)默认从0开始,比如2bit编号,数据号就是0,1,2,3,而窗口大小,确实就是长度,从1开始

GBN和SR是统一看的,凡是采用窗口协议,nbit编码,那么两方窗口之和≤ 2 n 2^n 2n

GBN协议中,接收至少=1,那么发送端窗口尺寸最大 2 n − 1 2^n-1 2n1

考虑SR协议,两方窗口要相等才最好,因此单方窗口最大是 2 n − 1 2^{n-1} 2n1,最佳也应该是这个值。

举个极端的例子证明为什么窗口总和最大为 2 n 2^n 2n,以n=3举例,如果窗口大小为8(危险),那么最多同时发0-7,那么接下来0号帧就会有歧义:

  1. 如果确认帧正常,下一个0代表有效帧
  2. 确认帧丢失,那么0代表重传的帧

关键是接收方无法确定确认帧是否丢失,所以窗口大小要让出一个来,不可以是 2 n 2^n 2n

17年真题直接秒了

题型3:信道利用率(超高频考点,基本每年)

本质上,是单个周期内,发送数据的时间占比(剩余的时间就是空闲时间)

停等协议最好计算,一个周期=发送一个帧+RTT

GBN协议和SR本质上是流水线,因此需要让流水线跑满才能保证信道利用率最大(反之,退化为停等)

此时就要考虑传播时延,你要保证在一帧的整个周期内,数据帧发送是不间断的,即一个窗口的传输时间≥周期,左右同乘数据率,则一个窗口的数据量≥一个周期内的最大数据传送量

以13年举例。

首先,桢长度不确定,取最小的极限情况,原因是如果帧更大,那么发送的数据量绝对满足流水线要求,但是反过来就不一定了,帧变小会导致窗口的数据量缩水,不见得可以满足。

之后计算一个周期发送的帧数量为10.4,也就是说窗口大小至少要有11,对应4bit编码

在看14年,先算一帧周期,0.08ms+2×50ms,约等于100ms,此时一个窗口的数据量为8Mb<10Mb的周期极限数据量,就知道跑不满流水线,此时效率为80%,因此实际速率是80Mb/s

15年,本质一样,你先算极限情况下一个周期可以发多少帧,单帧62.5ms,一个周期有9个帧,然后用效率卡一下是7.2个帧,也就是说至少8个帧,注意陷阱,GBN窗口大小限制 2 n − 1 2^n-1 2n1,所以最后是4bit编码

16题更简单,停等,设未知数套公式,信道利用率=传输时间/一帧周期

18年把确认帧改为1000B,因此周期公式要变长一点,所以周期是2000ms,但是注意,ACK虽然也是传输时延,但是并不是数据的传输时延,因此真正的数据发送时间只有800ms,结果为40%

UDP

报头计算,伪首部之类

TCP

到底是面向字节传输还是数据报传输

拥塞控制

关于ssthresh,cwnd在慢开始过程中是指数增长的,但是ssthresh并不是指数级,比如ss=12,但是cwnd原来是8,下一轮到底是从16开始进入拥塞避免还是从12呢?

很显然,是12,符合直觉,所以拥塞避免算法的开端一定是ssthresh。

关于下调,无论是拥塞还是3ACK,都代表ssthresh不合理,通通要腰斩。区别仅在于cwnd,拥塞下调的彻底,直接归1,慢开始,而3ACK要跳过慢开始,直接拥塞避免,因此从ssthresh开始,即cwnd=ssthresh(下调后的)

TCP建立和断开

我们默认都是消耗序号的。

三次握手比较简单,四次挥手有一点细节。

就是断开连接的通知,FIN=1,而响应则FIN=0.
其次就是,被动方第一次是响应,第二次是断开,细节在于这两次实际上可以理解为一次通知分开了,为什么呢?一来,他们的ACK=1,二来他们的ack值相等,都是u+1,所以本质上算是一次的,只不过这里分开了,更加灵活。

应用层

http协议

不同版本的交互流程

1.0

建立,发送,断开

1.1

建立,发送多个(可能是流水线),断开

2.0

加密+1.1

两个服务器

本地域名服务器和代理服务器的区别,代理服务器是针对URL资源的,比如你的b站视频,网页,而本地域名服务器是针对<域名,IP>的键值对的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/250385.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv7原创改进:一种新颖的跨通道交互的高效率通道注意力EMCA,ECA注意力改进版

💡💡💡本文原创自研创新改进:基于ECA注意力,提出了一种新颖的EMCA注意力(跨通道交互的高效率通道注意力),保持高效轻量级的同时,提升多尺度提取能力 强烈推荐,适合直接使用,paper创新级别 💡💡💡 在多个数据集验证涨点,尤其对存在多个尺度的数据集涨点明…

视频监控管理平台/智能监测/检测系统EasyCVR中HLS流无法播放的解决方案

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快&#xff0c;可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等&#xff0c;以及支持厂家私有协议与SDK接入&#xff0c;包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安…

使用Go实现一个百行聊天服务器

前段时间, redis作者不是整了个c语言版本的聊天服务器嘛, 地址, 代码量拢共不过百行. 于是, 心血来潮下, 我也整了个Go语言版本. 简单来说就是实现了一个聊天室的功能. 将所有注释空行都去掉, 刚好100行实现. 废话不多说, 先上代码: package mainimport ("fmt"&quo…

基于SSM的实践项目管理系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

冗余备份组网——HSRP和GLBP协议

目录 HSRP&#xff08;思科私有协议&#xff09; HSRP基本概念 HSRP工作过程 HSRP的状态 HSRP的可靠性 HSRP相关配置 GLBP协议 HSRP&#xff08;思科私有协议&#xff09; HSRP基本概念 HSRP&#xff08;Host Standby Router Protocol&#xff09;为主机备份路由协议 …

Chapter 7 - 3. Congestion Management in Ethernet Storage Networks以太网存储网络的拥塞管理

Pause Threshold for Long Distance Links长途链路的暂停阈值 This section uses the following basic concepts: 本节使用以下基本概念: Bit Time (BT): It is the time taken to transmit one bit. It is the reciprocal of the bit rate. For example, BT of a 10 GbE po…

Linux系统编程(二):标准 I/O 库(下)

参考引用 UNIX 环境高级编程 (第3版)嵌入式Linux C应用编程-正点原子 1. 标准 I/O 库简介 标准 I/O 库是指&#xff1a;标准 C 库中用于文件 I/O 操作&#xff08;如&#xff1a;读、写文件等&#xff09;相关的一系列库函数的集合 标准 I/O 库函数相关的函数定义都在头文件 &…

强化学习--免模型预测与控制

免模型预测与控制 强化学习 免模型预测与控制免模型预测蒙特卡洛估计时序差分估计时序产分与蒙特卡洛的比较免模型控制Q-learning 免模型预测 蒙特卡洛估计 蒙特卡洛估计方法在强化学习中是免模型预测价值函数的方式之一&#xff0c;本质是一种统计模拟方法&#xff0c;它的发…

FIFO的Verilog设计(三)——最小深度计算

文章目录 前言一、FIFO的最小深度写速度快于读速度写速度等于或慢于读速度 二、 举例说明1. FIFO写时钟为100MHz&#xff0c;读时钟为80Mhz情况一&#xff1a;一共需要传输2000个数据&#xff0c;求FIFO的最小深度情况二&#xff1a;100个时钟写入80个数据&#xff0c;1个时钟读…

【VMware安装及虚拟机配置】

1. 下载VMware 进入 VMware Workstation 17 Pro下载链接 下拉到如下位置&#xff0c;点击DOWNLOAD 2. 安装VMware 参考&#xff1a;虚拟机VMware下载与安装教程 本次安装是vmware 17&#xff0c;安装步骤差不多&#xff0c;只参考第二部分即可。 3. 激活VMware 密钥&…

12345、ABCDE项目符号列表文字视频怎么制作?重点内容介绍PR标题模板项目工程文件

Premiere模板&#xff0c;包含10个要点标题12345、ABCDE项目符号列表文字模板PR项目工程文件。可以根据自己的需要定制颜色。在视频的开头、中间和结尾使用。包括视频教程。 适用软件&#xff1a;Premiere Pro 2019 | 分辨率&#xff1a;19201080 (HD) | 文件大小&#xff1a;9…

十九)Stable Diffusion使用教程:ai室内设计案例

今天我们聊聊如何通过SD进行室内设计装修。 方式一:controlnet的seg模型 基础起手式: 选择常用算法,抽卡: 抽到喜欢的图片之后,拖到controlnet里: 选择seg的ade20k预处理器,点击爆炸按钮,得到seg语义分割图,下载下来: 根据语义分割表里的颜色值,到PS里进行修改: 语…

【linux】图形界面Debian的root用户登陆

图形界面Debian默认不允许以root用户登录。这是出于安全考虑&#xff0c;以防止用户使用root权限执行可能损害系统的操作。 如果需要使用root用户&#xff0c;可以通过以下步骤进行登录&#xff1a; 打开终端&#xff0c;使用su命令切换到root用户。修改/etc/gdm3/daemon.con…

基础IO --- 下

目录 1. 理解文件系统中inode的概念 1.1. 了解磁盘 1.1.1. 认识磁盘 1.1.2. 磁盘的物理结构 1.1.3. 简单了解磁盘如何读写数据的 1.1.4. 磁头和盘面没有物理上的接触 1.1.5. 扇区的了解 1.1.6. 如何在物理上找到一个具体的扇区 1.2. 站在OS的角度看待磁盘 1.2.1. …

对自己的博客网站进行DOS攻击

对自己的博客网站进行DOS攻击 先说明一点,别对别人的网站进行ddos/dos攻击(dos攻击一般短时间攻击不下来),这是违法的,很多都有自动报警机制,本篇博客仅用于学习,请勿用于非法用途 安装kaili Linux 进入KALI官网,下载iso镜像文件 vmware新建虚拟机,选择自定义 点击下一步 …

一文搞懂OSI参考模型与TCP/IP

OSI参考模型与TCP/IP 1. OSI参考模型1.1 概念1.2 数据传输过程 2. TCP/IP2.1 概念2.2 数据传输过程 3. 对应关系4. 例子4.1 发送数据包4.2 传输数据包4.3 接收数据包 1. OSI参考模型 1.1 概念 OSI模型&#xff08;Open System Interconnection Reference Model&#xff09;&a…

SpringCloud+Consul快速开发示例

简介 本章通过最新的springcloud版本与官方最新consul开源版服务&#xff0c;进行演示&#xff0c;如何快速搭建开发环境和注册与发现服务中心&#xff1b; 本文假设已知具备SpringCloud的基础开发能力&#xff0c;以及提前了解consul服务的使用&#xff0c;因此本文不会详细…

化学方程式小程序

brief introduction 相信大家上中学时都会被化学方程式折腾得死去活来&#xff0c;尤其是配平&#xff0c;怎么也算不对数字。于是我写出了这款近200行的自动配平程序&#xff0c;这是不是你们黑暗化学中的一丝光亮呢&#xff1f; usage 正常化学式输入&#xff0c;每一种物…

【Vue】elementUI表格,导出Excel

系列文章 【Vue】vue增加导航标签 本文链接&#xff1a;https://blog.csdn.net/youcheng_ge/article/details/134965353 【Vue】Element开发笔记 本文链接&#xff1a;https://blog.csdn.net/youcheng_ge/article/details/133947977 【Vue】vue&#xff0c;在Windows IIS平台…

windows下redis 设置开机自启动

1&#xff0c;在redis的目录下执行&#xff08;执行后就作为windows服务了&#xff09; redis-server --service-install redis.windows.conf 2&#xff0c;安装好后需要手动启动redis redis-server --service-start 3&#xff0c;停止服务 redis-server --service-stop