# 计算机网络
SW(停止等待)、GBN(流水线、后退N帧协议)、SR(选择重传)、RTT(往返时间)
# 第一章综述
# 1.4 分组交换的时延、丢包和吞吐量(计算)
# 第二章应用层
# 本章出现英文:http、smtp、web、DNS、P2P、RTT、RRs
# 2.1 应用层原理
应用层协议,http,smtp,web,DNS,POP3
# 2.2 web和http
- http应用层协议(基于TCP),定义了报文的结构和交换方法。分为持久连接和非持久连接。由html以及引用对象组成。URL方法
<URL’s access method>://<host>:<port>/<path>往返时间RTT:总时间=2RTT+文件传输时间 - http报文格式:有GET,POST.HEAD,PUT,DELETE
- Web缓存能节约资源,cookie识别用户
- http/1,0和http/1.1(非持续链接和持续连接)
# 2.4 DNS服务
主机名转换为IP地址的目录服务。DNS运行在端到端系统上,且使用UDP协议(53号端口)进行报文传输,因此DNS是应用层协议。分为递归查询和迭代查询
DNS相当于一个数据库传输,把你输入的域名转化为ip,再传送回来,传送回来的这个为TCP协议
DNS其他作用:①提供网站别名②提供邮件别名③负载均衡
DNS工作原理:
集中式设计的缺点:①单点故障(DNS崩溃则整个互联网崩溃)②通信流量(对服务器要求太高)③远距离会带来延时④需要一直更新一直维护。
设置一层层的dns服务器,不同的服务器存储了不同的ip与域名的映射,主要分为三级:
根服务器-顶级服务器(TLD)-权威服务器,还有一种本地服务器,存储在本地,每次要查询dns的时候是本地dns服务器发送接收。DNS记录报文RR格式:(name,value,type,ttl),其中type有四种

# 2.7 套接字编程
# 第三章运输层(TCP与UDP)
# 3.2多路复用与多路分解
FTP TELNET SMTP DNS TFTP HTTP SNMP SNMP(trap) 21 23 25 53 69 80 161 162
UDP的校验和
rdt是什么,rdt3.0流水线可靠协议
TCP报头:2244+43
TCP三次握手、四次挥手:
SYN ACK ack seq 同步位 确认位 确认号(等于序号加一) 序号
# 3.6 拥塞控制
滑动窗口协议
慢启动 拥塞控制 快重传(快恢复) 乘法增大的过程 ①加法增大的过程②直接降为1的过程原因:到达阈值或者传输超时 原因:收到三个重复的ack报文
# 3.7 TCP拥塞控制--P193 T38、39、40
# 第四章网络层-数据平面
# 4.1 概述
- 数据平面:实际的物理层的数据运输
- 控制平面:数据根据算法如何在网络中运输
# 4.2 路由器工作原理
- 基于目的地址转发:最长前缀路由,优先发送与路由表中匹配度最高的ip。前缀指ip地址网络部分。
- 交换的三种方式:①经内存交换(依赖于内存带宽)②经总线交换(依赖于总线带宽)③经内联网络交换(克服总带宽限制)
- 输出端口交付太过于繁忙,实行调度原则(优先级调度:优先级高就先发送;RR循环调度;WFQ调度)
# 4.3 ipv4和ipv6(子网划分ppt中的题)
网络层协议:
IP DHCP ICMP RIP/OSPF/BGP 编制规则、数据报格式、分组处理 动态主机配置协议 错误报告、路由指令 路径选择 ip报文格式:4-4-8-16位
生存时间TTL,指经过的路由器的最大值 8位
协议,表明此数据报携带的协议 8位
首部校验和:检验数据报的手部 16位
地址分类:
A B C D E 0 10 110 1110 1111
ip分片重组:
- 分片:固定首部为20字节
- 偏移:偏移量/8(因为一个字节=8bit)
子网划分
公共部分由
1定义,前几个1就是前几位
分类寻址浪费较大,因此采用无分类寻址。
DHCP作用
从ISP配IP地址
主机每次连接到网络时都能接收到相同的IP地址。
为某主机分配一个临时IP地址,虽然该主机每次连接到同一个网络。
DHCP还允许主机得知其他信息,如子网掩码、第一跳路由器(通常称为默认网关)的地址和本地DNS服务器的地址。
| discover | offer | request | ack |
|---|---|---|---|
| 广播UDP端口68—>67 | 广播 | 广播 | 广播 |
租用期:0.5T,0.875T
*(网络地址转换)NAT
发送数据报: 将每个外出报文的源IP地址、端口号替换为NAT IP地址以及新的端口号远程客户机/服务器将以NAT的IP地址以及新的端口号做为目的地址进行响应。
在NAT转换表中保存每一个地址转换对,即(源IP地址、端口号) (NAT IP地址、新的端口)。
接收数据报:根据NAT转换表将每个进入报文的NAT IP地址和端口号替换为相应的源IP地址以及端口号。
三种NAT,静态NAT对应静态全球ip地址、动态NAT一个全球地址对应多个动态NAT、端口NAT一个本地地址端口对应一个全球端口。
- 私有地址:10.0.0.0--10.255.255.255、172.16.0.0-172.31.255.255、192.168.0.0--192.168.255.255
- 子网内子网的数量就是主机数量,主机数即一个网络地址、一个广播地址,剩下的就是可分配地址。
# 4.4 通用转发和SDN体系
远程控制器掌握各主机和整个网络的状态;为每一个分组计算出最佳路由;远程控制器为每一个路由生成正确的转发表
核心思想:把网络的控制层面和数据层面分离,使控制层面利用软件来控制数据层面的许多设备。
Openflow协议:控制层面与数据层面之间的通信接口,控制器通过openflow协议直接控制物理层设备
SDN通用转发:①进行匹配:对各层首部中的字段进行匹配②进行动作:简单转发、负载均衡、重写ip首部、防火墙(丢弃分组)。此种设备称为“分组交换机”或者“交换机”。此种转发表称为流表。SDN远程控制器通过openflow协议来管理openflow交换机中的流表
# 4.5 中间盒
在源主机和目的主机之间的数据路径上,执行除了IP路由器的正常标准功能之外的其他功能的任何中间设备。
目前主要分为三种:①NAT转换②安全服务③服务增强,对某个东西(http请求等)负载平衡。
# 第五章网络层-控制平面
# 5.2 路由算法(RIP计算题)
找到一条从源路由器到目的路由器的开销最少的路径。
分类
- 全局式
- 分散式
- 静态式
- 动态式
- 负载敏感路由算法
- 负载迟钝算法
分布式 基于距离向量的路由选择协议,要求每个路由器都要维护从他自己到其他的距离记录
即距离向量。距离(跳数):直接连接为1;不直接连接就是路由器个数加1;跳数为16则不可达
RIP(route information protoco路由信息协议)距离算法:更新路由表——先泛洪广播,收到相邻的路由器的表单;如果一开始为空,碰到目的地址符合的就录入;如果不为空,下一跳一样的就一定更新;不一样的再判断距离再更新。
RIP使用UDP报文,端口为520,位置在应用层,特点:网络出现故障时,需要很长时间才能把这个消息传播到所有路由器(好消息传播得快,坏消息传播得慢)
# 5.3 OSPF
- 全称:开放式最短路径优先。基于链路状态的动态路由协议。(RIP基于距离向量)
- 划分主干路由器和自制路由器
- 相对于rip来说有很多优点,比如速度快(rip收敛速度慢),不限制跳数,多路径(rip只能单路径)
# 5.4 BGP
自治系统AS
内部网关IGP:RIP和OSPF
外部网关EGP:BGP
BGP-4(TCP端口179)基于路径向量,用于不同自治系统之间交换路由信息的协议。选出比较好而非最好的路由。
- eBGP用于外界与内部进行交换
- iBGP:用于内部与内部进行交换(与rip和ospf的区别在于该协议交换的是自治系统外的路由信息)
- 即-iBGP不能在内部互传ip前缀,e-BGP可以在内部与外部互传
BGP路由的结构【前缀,AS路径, 下一跳】
BGP的路由选择:①本地偏好值大的②AS跳数最小的③分组在AS内转发次数最少④BGPid最小的路由
BGP四种报文:
- OPEN打开,等待tcp连接,端口179
- UPDATE通告新路径
- KEEPALIVE没有更新的情况下保持活跃
- NOTIFICATION报告错误,或者关闭

# 5.6 ICMP
存在类型字段和代码字段
处于网路层,用于错误报告和回送请求/回答
类型 代码 描述 0 0 对ping回答 3 1 目的主机不可达 3 2 目的协议不可达 3 3 目的端口不可达 8 0 ping 11 0 生存期
# 第六章链路层和局域网
传输:SW、GBN、SR
# 6.1 链路层概述
将数据报封装成帧,增加首部和尾部
相邻节点之间可靠交付
- 流量控制
- 差错检测
- 差错纠正(接收方检测和纠正,不用重传)
- 双工/半双工,半双工指不能同时传
- 以太网最小帧长度为64字节
- 选择重传协议:
# 6.2 CRC差错计算(多项式来算)
- CRC--循环冗余校验,特点:检错能力强,开销小,优于奇偶校验、算术和校验等方式
- 运作原理:发送数据时携带一个校验码,校验码由数据计算得,数据发给接收方后再计算,校验码一样说明没问题。
- 计算步骤:①原数据后面添0,0的数量就是生成多项式的最高次幂②生成多项式换成二进制写到除数上③最后除得的余数贴在原数据后面,一起发送
# 6.3 多链路访问CSMA/CD(重点)
两种链路:PPP链路(点到点链路)和广播链路
信道划分协议:时分多路访问TDMA(区分时分多路复用TDM)、频分多路访问FDMA、码分多址CDMA
TDM和FDM分别为结点分配时隙和频率,而CDMA为每个结点分配不同的编码。然后,每个结点使用其唯一的编码码片对其发送的数据位进行编码。
随机接入协议:CSMA,CSMA/CD,CSMA/CA
载波侦听多路访问CSMA:结点在传输前监听信道如果信道空闲,传送整个帧;如果信道忙,推迟传送。
- 非持续:监听到信道忙,就不监听,根据算法随机延迟一个时间再监听;监听没有忙就发送
- 1-持续:如果忙就持续监听,最后将数据送出;如果冲突就延迟随机时间
- P-持续:如果忙就持续监听,空闲以后以概率P发送数据,1-P延迟一段时间T
CSMA/CD计算
- 最短帧长计算:最短帧长=争用期(碰撞窗口)X数据传输速率(争用期=2Xt)(t=s/v或者是帧长/传输速率)
- 时延计算:时延=争用期X随机数r
- 二进制退回算法:最大值为10
# 6.4 交换式局域网
- ARP即插即用:【ip,MAC,TTL】,A广播,B单播把地址发送给A。
- 既是网络层又是传输层协议。
- 吉比特以太网IEEE 802.3z,10BASE-T,100BASE-T,1000BASE-T,前面代表速率,后面base代表基带传输,T代表双绞线,cx代表同轴电缆,"F"代表光纤,与此同时,单模光纤LX.LR,多模光纤SX,SR
- 曼彻斯特编码:
- 交换机:不需要学习,存储、转发以太网帧
- 虚拟局域网:802.1Q