# 计算机网络

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有四种

    image-20231224173958732

# 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报告错误,或者关闭

image-20231227183736216

# 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

# 第七章物理层

# 数据信号等等