计算机网络:期末整理1
计算机网络考点整理笔记
物理层
数据链路层
- 链路层:同一网络内的交流。
- 帧格式
PPP帧:
总共加上8个字节的帧头帧尾。头尾都是0x7E,头部的第2、3字节没用,4、5字节代表上层协议,在尾部的6、7字节用作校验。
- 采取字节填充解决首尾的冲突,同步传输场景。(透明传输)
- 0比特填充,避免出现数据假装字母E(开始、结束符),每5个1插入一个0,异步传输场景。(透明传输)
- 最大传输长度MTU
MTU的数值一般被规定为1500。
更多的考虑的是公平、效率的问题:传输的太长丢了麻烦,传输的太短效率太低,采取一个折中的数值。随意改变MTU会产生包重组的问题,很有可能会丢包。
- 曼彻斯特编码
避免无法提取同步位,每一位都会产生电平的跳变,这样在每一个码元中就能提取到同步的信号。但是占用了更多的基带宽度。他在碰撞冲突检测的时候发挥了重要的作用。
- CRC校验
假设实际传输时每组k个比特,发送方和接收方约定好除数、n
得到的余数会放在帧中传向接受端做校验
具体做法:https://blog.csdn.net/weixin_41177059/article/details/88595174(转载自CSDN)
CRC校验能够实现无比特差错,但是不能实现无传输差错
- CSMA/CD(载波监听多点接入/碰撞检测)
CSMA/CD是用来管碰撞的协议,广播信道就意味着有冲突。
CSMA/CD判定冲突的方式是适配器的电平检测,如果电平超过了一定阈值,那么就认为有冲突。因此CSMA/CD实现的是端点检测,即发送的中途超了电平阈值,两个端点是检测不到的,只有在信号到达端点的时候,适配器还是检测到超过阈值才认为发生了冲突。
冲突的处理:规定窗口期,窗口期内没有冲突那么就没有冲突
窗口期:是两倍的单程传播时间,==单程传播时间取局域网内最坏情况,也就是最远的一对发送接收站之间的单程传播时间==,单程传播时间=单程传播距离/传播速度。
在以太网中,使用截断二进制指数退避解决冲突之后的重传问题。
- 规定以太网争用期为51.2微秒,对于10兆网络,在这个时间内能发送64字节的数据。
- 从整数集合[ 0 , 1 … 2的k次方-1] 中随机选取一个数,记为r ,其中 k = min(重传次数 , 10) 。重传的推后时间是r倍的争用期时间。
- 当重传次数超过16次时,丢弃该帧,并向高层报告。
以太网规定了传送帧的最小长度,为64KB,传送帧的长度不能比这个还小了。
太小的帧将会导致什么情况?==将会导致冲突无法检测==
因此曼彻斯特编码在冲突检测中发挥了重要作用,因为从本质上讲,是曼彻斯特编码制造了传输时的电平。
![]()
规定最小的发送间隔为:9.6微秒
这个时间用过接收端接受数据、清理缓存等等的操作。
CSMA/CD下帧的发送过程
- 查看信道是不是空闲的
- 信道空闲的话再等一个最小间隔时间(9.6微秒)
发送条件充足就发出去
- 没有冲突:发送成功
- 产生冲突:重传
- 拓展的以太网(交换机相关概念)
在物理层拓展以太网
使用集线器在物理层拓展以太网。
集线器工作在物理层,只是简单的转发0、1。集线器有多个接口,可以说是多接口的转发器。
使用集线器的以太网逻辑上仍然是总线网,还是有碰撞和冲突。
主机距离集线器最多100m,但是可以通过多个集线器的连接拓展两个主机之间的距离。
在数据链路层拓展以太网
网桥:对收到的帧进行转发和过滤。
交换机:多接口的网桥。
交换机工作在全双工模式,交换机还具有并行性。相互连通的主机独占媒体,不碰撞冲突通信。
交换机的接口有存储器,能在端口繁忙时对到来的帧缓存。
也有交换机采用直通的交换方式,这种方式时延更小。
从总线以太网到星形以太网
随着星形以太网发明,以太网星形结构成为以太网首选拓扑,星形以太网不再采用CSMA/CD,不再有冲突,采取全双工的模式。
网络层
IP地址的划分经历了 分类地址 —> 划分子网 —> 构造超网的过程
分类地址
A类地址网络号占8位,全0不能用,127用作回环地址不能用,剩下都可以。
B类地址网络号占16位,开头1、0。
C类地址网络号占24位,开头1、1、0。
主机号都要减去两个,一个是全0的,一个是全1的。
隧道技术
用于ipv4到ipv6,VPN中也用到隧道技术。
主要思想是将整个ip数据报再当做ip数据报的数据部分进行传输,接收方拿到后取出数据部分再进行处理。
ip数据报首部
记住大概那个字段是干什么的。
传输层
传输层提供的是应用程序和应用程序之间的通信。
熟悉了解UDP的头部、TCP的头部。
可靠传输的实现:
连续传输协议、重传机制、流量控制、拥塞控制。
- 从停止等待协议到连续传输协议,停止等待协议效率低,连续传输协议信道利用率高。
- 重传机制,配合连续传输协议的重传机制,一定是传输还没到的。选择性重传相关,现在使用选择性重传的比较少。
- 流量控制,点到点之间的流量控制,通过头部中控制窗口量来实现。
拥塞控制:全局吞吐量也可以认为是全局流量的控制,控制窗口的大小实现
- 慢开始:开始时窗口很小,之后每次收到确认接收报文就扩大 min( 收到确认的字节大小, RMSS ) 的大小,他只是开始的窗口很小,并不代表着他增长速度很慢。在拥塞窗口小于ssthresh时,采用慢开始,大于时采用拥塞避免。
- 拥塞避免:这个是增长的速度很慢,每一个往返时间+1。
- 当检测到超时的时候,理解将ssthresh的值置为当前窗口值的二分之一,然后开始慢开始算法。
- 快速确认回复、快重传:避免网络中的不小心丢包被认为是超时的现象,收到包之后立马发送回复。
- 快恢复:在连续收到3个一样的包之后,会被认为是丢包、或者超时了,立马重传。此时也要把ssthresh置为当前窗口的二分之一,不执行慢开始,执行的是拥塞避免。
- 主动队列管理
- 网络层帮助运输层的拥塞管理。
- 路由器设置队列门限最小值 最大值。
- 大于最大值的直接丢掉
- 小于最小值的无脑接受。
- 卡在中间的有概率p被丢掉,这个概率p是公平的,不管是TCP还是UDP都有可能被丢掉。
三次握手。