计算机网络复习笔记

计算机网络复习笔记

概述

计算机网络由若干节点和连接这些节点的链路组成
而不同的网络之间可以通过路由器相连,组成互连网
ARPANET(单个网络)->NSFNET(三级结构互联网,主干网,地区网,校园网)->多层次ISP结构互联网

互联网组成
边缘部分:互联网的所有主机
核心部分:大量网络和连接这些网络的路由器组成。为边缘部分提供服务

通讯方式:C/S和P2P

速率:bit/s=b/s=bps,进制为10的次方。
带宽与吞吐量的单位都是bps。
发送延时=数据帧长度/发送速率
传播延时=信道长度/传播速率
总延时=发送延时+传播延时+处理延时+排队延时
延时带宽积=传播延时×带宽

延时D,网络利用率U(%),网络空闲时延时D0
D=D0/(1-U)

网络层次


物理层:提供物理传输介质
数据链路层:进行物理地址寻址,数据的成帧后在不可靠的物理介质提供可靠传输、流量控制、检错重发
网络层:对子网数据进行路由转发
传输层:提供复用和分用的功能。复用指多个进程可同时使用运输层服务,分用指运输层把数据分发给对于进程
应用层:为应用程序提供访问网络的接口

物理层

单工通信/单向通信:只能一方向其中一方发送信息
半双工通信/双向交替通信:双方都能发送/接收信息,但不能同时发送/接收信息,需交替进行
全双工通信/双向同时通信:双方都可以同时发送/接收信息

网络层

网络层只提供不可靠,无连接、无次序的数据报服务

网际协议ip

地址解析协议ARP
网际控制报文协议ICMP
网际组管协议IGMP
逆地址解析协议RARP(已淘汰)

虚拟互联网络

物理层:转发器(仅将网络扩大)
数据链路层:网桥/桥接器(仅将网络扩大)
网络层:路由器
网络层以上:网关

ip地址分类

类别 开始 结束 私有
特殊 0.0.0.0 本网络
A 1 126 10
特殊 127.0.0.1 回环地址
B 128.1 191.255 172
C 192.0.1 223.255.255 192

划分子网

ip=网络号+主机号
ip=网络号+子网号+主机号
需划分n个子网,n的二进制有m位,则需向主机号借m位。例如n={4,5,6,7}都是需要借3位都是11100000=224、所以子网掩码借位不超过8位的话。

子网数 2进制 10进制 子网ip数
0-1 00000000 0 2^8-2
2-3 10000000 128 2^7-2
4-7 11000000 192 2^6-2
8-15 11100000 224 2^5-2
16-31 11110000 240 2^4-2
32-63 11111000 248 2^3-2
64-127 11111100 252 2^2-2
128-255 11111110 254 2^1-2

ip数据报

这玩意儿有点复杂,需要背下来吗?

ip层转发分组流程

路由器在路由表找到下一跳路由后,会由数据链路层将下一跳路由器的ip通过ARP转换为MAC并封装在帧里。下一跳路由器拿到帧后拆帧在继续如上操作

ARP

源主机会先查询自己的ARP列表是否有对应关系,如果没有则广播ARP数据表表明自己ip,MAC和要找的ip
收到后会检查找的是不是自己,非目标主机会忽略,目标主机会更新源主机的ARP信息,并响应自己是目标主机
源主机收到响应后刷新ARP,并继续操作

ICMP

用来传递差错报文。ping程序通过发送一份ICMP回送请求报文,等待ICMP回送应答。是应用层直接使用网络层而不经运输层的例子。

运输层

UDP

UDP只提供不可靠、无连接、无次序、无拥塞控制、面向报文的用户数据报服务
UDP只是在ip数据报上加了复用和分用,以及差错检测的功能
UDP数据报=UDP首部+数据。UDP首部=源端口号+目标端口号+数据报长度+校验值(ip不知道在哪了)
UDP主要使用在询问应答服务,例如DNS,DHCP。还有TFTP等

TCP

TCP是面向连接、提供可靠交付、全双工,面向字节流的

等待停止协议

A向B发送数据,然后等待确认
B收到数据,发送确认
确认丢失
A重发数据
B收到重复编号的数据,丢弃并重发确认
确认迟到
A重发数据
B收到重复编号的数据,丢弃并重发确认
A收到确认

连续ARQ协议/滑动窗口协议

A收到B的确认报文,得知窗口20,确认号31,即期望收到31,构建相对应的窗口
A的滑动窗口里的分组都可以一口气发送
B采用累积确认方式发送确认
A接收到B确认收到n个
A的滑动窗口后移n个分组
窗口头边缘:不动(没收到新确认),后移(收到新确认)
窗口尾边缘:不动(B发来窗口缩小与B收到的数据恰好),后移(窗口缩小<收到数据/收到确认),前移(TCP标准强烈不赞成,容易导致发送方错误)

超时重传

懒得写了,大体就是往返时间的前后两次的加权平均加上几倍的往返时间差

流量控制

通过B的窗口大小控制A的发送速度。避免A等非0窗口通知(但丢失了),B等数据,A有个定时器

拥塞控制

慢开始(指数增长):当拥塞窗口cwnd<慢开始门限ssthresh时,每成功一个传输轮次,拥塞窗口cwnd=×2,
拥塞避免(线性增长):否则cwnd=+1。但发送超时时,ssthresh=cwnd/2,cwnd=1,回到慢开始
快重传:B收到任何一个报文都立即返回确认号,让A尽早直到报文丢失,并可以不回去慢开始直接重传
快恢复:快重传虽然不回去慢重传,但是也要ssthresh=cwnd/2,cwnd=ssthresh,回去拥塞避免

TCP的三次握手和四次分手

见别的文章

应用层

mb,不复习了,不写了(offer要紧,offer要紧)

感想:计算机网络真是一本读不薄的书。。。

参考文献:

计算机网络面试知识点总结

[Network] 计算机网络基础知识总结

计算机网络常考知识点总结

面试带你飞:这是一份全面的 计算机网络基础 总结攻略

计算机网络基础常考面试题精华总结


计算机网络复习笔记
https://cellargalaxy.github.io/posts/协议/5.计算机网络复习笔记/
作者
cellargalaxy
发布于
2018年9月16日
许可协议