408计算机网络考点回顾总结
一、计算机网络的体系结构和各部分联系
1.1 MAC帧、IP数据报、TCP报文的联系
1.1.1 MAC帧
- MAC帧首部+尾部 = 18B,数据部分为 46B~1500B
- 单位为字节
- 源地址和目的地址:6B
- 总长度64B - 1518B:控制部分18B(头部尾部)+ 数据部分(46B - 1500B)
1.1.2 IP数据报
-
网络层向上提供无连接,尽最大努力交付的数据报服务
一总八片首四 -
首部长度:4bit,单位为4B,表明整个首部的长度。20B–60B
-
总长度:首部+数据,单位为,表明整个IP数据报的长度
-
片偏移:指出该片在原分组的相对位置,以8B为单位(除了最后一个分片,每个分片的大小都是8的倍数)
-
源地址和目的地址:分别表示发送方的IP地址和接收方的IP地址,分别为4B
-
标志:
- 中间位:DF(Dont Fragment) = 1,禁止分片; DF = 0,允许分片
- 最低位:MF(More Fragment)= 1,后面还有分片;MF = 0,最后一个分片 / 没分片
1.1.3 IP数据报分片
分片的原因,数据链路层的MTU严格限制IP数据报的长度,若大于该长度,则无法传输,因此,需要分片。
例子:数据部分为3800B,设最长分片不超过1420B
- A:首部为20B,因此,最长分片的最大数据部分为1420 - 20 = 1400B
- B:3800 = 1400 + 1400 + 1000
- 第一个分片:0 - 1399;片偏移量:0(由于是第一个); 总长度:数据部分1400B + 首部20B = 1420B; DF = 0(允许分片); MF = 1(不是最后一个分片),标识为12345
- 第二个分片:1400 - 2799;片偏移量:175(1400/8B = 175); 总长度:数据部分1400B + 首部20B = 1420B; DF = 0(允许分片); MF = 1(不是最后一个分片),标识为12345
- 第三个分片:2800 - 3799;片偏移量:175(2800/8B = 350); 总长度:数据部分1000B + 首部20B = 1020B; DF = 0(允许分片); MF = 0(是最后一个分片),标识为12345
1.1.4 TCP报文段
- 2B(源)+2B(目的)+4B(序)+4B(确)+4B(书)+2B(窗)+2B+2B+NB+4B+数据
- 前20字节是固定的
1.2 各层设备
1.2.1 各设备的功能和区别
1.2.2 重要表:【交换机、ARP表和路由器】
重要表 | |
---|---|
转发表(MAC-MAC) | 新源地址进来增加新地址表项,新目的地址广播,旧目的地址单播 若路由表中转发mac地址没有,则从除了已知不是接口的所有接口都将转发该数据(不是接收方收到后将该数据丢弃) |
ARP表(IP-MAC) | 1.检查ARP缓存是否有该IP地址和MAC地址的映射 2.若无则广播,目的地址为FF-FF-FF-FF 的ARP请求分组 3.目的主机(本网络)或者默认网关(其他网络)将会单播返回一个带有其IP地址和MAC地址的ARP响应分组 4.源主机收到后写入ARP缓存 |
路由表(IP-IP) | 静态路由和动态路由 动态路由:RIP、OSPF协议 1.网络ID和子网掩码(或者网络前缀) 2.接口:从自己的哪个接口转发出去 3.网关:不与自己直接相连的网络,下一跳地址 |
1.3 各层次的协议
层次 | |
---|---|
数据链路层 | PPP、HDLC、CSMA |
网络层 | ARP、ICMP、IP、OSPF |
传输层 | TCP、UDP |
应用层 | DCHP、RIP、BGP、DNS、FTP、POP3、SMTP、HTTP、MIME |
1.4 端到端和点到点的区别?
点对点通信是终端(主机)之间通信
端对端通信是(主机上的应用程序)之间的通信。即一个针对终端节点,一个针对应用进程
第一个端到端的层次:传输层
1.5 冲突域和广播域?
- 一个站点向另一个站点发出信号,除目的站点外,有多少站点能收到这个信息,这些站点就构成一个冲突域
- 广播所能覆盖的范围就叫做广播域了,二层的交换机是转发广播的,所以不能分割广播域,而路由器一般不转发广播,所以可以分割或定义广播域。
二、物理层
物理媒体上为数据端设备透明的传输原始比特流
2.1 以太网和曼彻斯特编码
- (RZ)归零编码
- 按时间基准;高1低0(或者相反)
- (NRZ)非归零码
- 高1低0
- (NRZI)非归零反相编码
- 与前一个相同为1
- 电平翻转为0
- 曼彻斯特编码
- 前半个高后半个低为1
- 前半个低后半个高为0
- 差分曼彻斯特编码
- 前半个码元与上一个码元相同为1
- 前半个码元与上一个码元相反为0
2.2 波特率和比特率:
- 每秒传输多少个波特
- 比特率:(b/s)
2.3 奈奎斯特定理和香农定理
奈奎斯特定理
- 限制码元传输的速率B(不考虑噪声)
香农定理
-
在带宽受限且有噪声的信道中,信息传输速率有上限值
-
信噪比:10log10(S/N)
-
如果两个条件求都可以,那么取小的那一个。
2.4 电路交换、报文交换、分组交换
电路交换
- 发送端和接收端必须建立一条专有的物理通信路径,这条路径在传输期间一直被占有,直到通信结束后才释放
报文交换
- 无需建立专有线路,传输单位为报文(带有目的地址和源地址),采用存储转发的方式
分组交换
- 与报文交换基本相同,区别在于限制传输数据的长度,过大则划分为多个分组
2.5 物理层接口特性
- 机械特性:针对物理连接的特性。引脚数量、引线数目
- 电气特性:电压范围、传输速率和距离限制(出现数字)
- 功能特性:某一电平表示何种意义(不出现数字)
- 过程特性:工作规程和时序
2.6 物理层设备
中继器:
- 数字再生
- 中继器两端的网段一定要使用同一个协议
集线器:
- 多端口中继器,互联两个物理层不同的网段,连起来的网段仍然是同一个局域网
- 半双工通信,不具备信号的定向传送能力(广播)
- 可以互联两个物理层不同的网段
三、数据链路层
成帧;差错控制;流量控制;传输管理
3.1 零比特填充法(组帧)
- F(帧开始和帧结束):01111110
- 遇到5个1加入一个0
3.2 滑动窗口机制
3.2.1 GBN(后退N帧协议)【累计确认】【按序接收】
- 接收窗口为1
- 发送窗口最大为(2 ^ n) - 1
- 满足1<=Wt<=(2 ^ n) - 1
- 累计确认;返回确认帧ACKn即表示n号数据及其之前的所有数据都已经收到
- 按序接收,若不是则直接丢弃
3.2.2 SR(选择重传协议)【选择重传】【逐一确认】
- 发送窗口 (= 接收窗口 = 2 ^ ( n - 1)
- 满足1<=Wt<=(2 ^ n) - 1*
发送方:
- 逐一确认,最小序号确认则向前推进到前移动到未确认的最小序号处
- 仅重传出错帧按序接收
接收方:
- 若收到的是比下界更小的帧,则返回该帧的确认帧(可能是上一次传送的确认帧丢失,重新告诉发送方该帧已经接收)
- 若在上下界之间的帧则缓存,直到之前都接收再移动
- 若收到的是比上界更大的帧,则直接丢弃
信道利用率:(L/C)/T
3.3 随机访问介质访问控制
3.3.1 CSMA
3.3.2 CSMA/CD
- 先听后发,边听边发,冲突停发,随机重发
- 争用期:最多两倍总线到端时延,故最小长度为64B
- 最小帧长=总线传播时延 * 数据传输速率 * 2
- 二进制指数退避:
- 当重传次数k <= 10 时,选择 k 和10 的最小值;当k > 10时,选择k = 10
- 从0,1,2,3…2^k - 1中随机选择一个数n,重传时间为n倍的基本退避时间,即2τn
- 重传到16次时,抛弃该帧,并向高层报错
- 适用于总线型或半双工网络环境
3.3.3 CSMA/CA
- 无线局域网必用,发送前侦听,边发送边侦听,冲突不停发,
- 过程:
- 发送数据前,先检测信道是否空闲
- 空闲则发送RTS
- 接收方收到RTS后,返回CTS
- 发送方接收到CTS后,预约信道
- 接收方接收到数据后,用CRC进行确认,正确则返回ACK帧(类似于握手)
- 发送方收到ACK帧后,开始下一个数据帧的传输,若一段时间未收到ACK帧,则重新传输(采用二进制指数退避算法确定随机延迟时间)
- 适用无线局域网
3.4 局域网
- IEEE 802.3 CSMA/CD 以太网
- IEEE 802.11 CSMA/CA 无线局域网
3.4.1 以太网和MAC帧
以太网:
- 以太网共享一条总线,采用广播的方式
- 提供无连接(发送方和接收方无需建立连接)
- 不可靠服务(发送方无须编号,接收方无须确认,差错帧直接丢弃,差错纠正由上层进行)
- 尽最大可能交付服务
3.5 数据链路层设备(参考第一章总结)
四、网络层【重点】
路由选择和分组转发;异构网络互联;拥塞控制
4.1 子网划分和CIDR
4.1.1 子网划分
- 网络号全1,主机号全0
- 子网掩码与Ip地址逐位相与,得到子网网络地址
4.1.2 CIDR
- IP地址后加上 /网络前缀的位数
- 构成超网:将多个子网聚合成一个较大的子网。
- 最长前缀匹配:查找路由表时,若有多个结果(逐位相与),应选择具有最长网络前缀的路由(前缀越长,地址块越小,路由越具体)
4.2 路由转发【路由表】
- 静态路由算法:手动配置路由信息。适用于变化不大的小型网络。
缺点:不能及时适应网络状态的变化,不适用大型网络
- 动态路由算法:路由器间彼此交换信息,按照路由算法优化出路由信息。可以适应不断变化的网络,适用大型网络
- 自治系统内使用内部网关协议(IGP):RIP、OSPF
- 自治系统间使用外部网关协议(EGP):BGP
4.2.1 RIP协议【内部网关协议】【重要】
- 应用层协议,基于广播UDP,选择跳数最少
- RIP基于距离向量
- 16不可达
- 仅和相邻路由器交换信息
交换过程:
- 路由表数据<目的网络><距离><下一跳的路由器地址>
4.2.2 最短路径算法OSPF协议【内部网关协议】【不太重要】
- 洪泛法(路由器向自己相邻的路由器发送信息,相邻的路由器收到信息后,又向自己相邻的路由器发送该信息)
4.2.3 边界网关协议BGP【外部网关协议】【不太重要】
应用层协议,基于TCP,交换网络可达性信息
从一个网络到另一个网络使用。
4.3 ARP协议
IP—>MAC
ARP协议的过程:
- 若是本网络主机
- 有则读取
- 无则广播ARP请求分组目的MAC地址为FF-FF-FF-FF的帧,有且只有目的主机会回应,存入缓存读取
- 若不是本网络主机
- 先根据IP和子网掩码判断是否是本网络主机,不是则通过本主机的默认网关(路由器)
- 默认网关不知道则发一个包含(接收方IP地址为默认网关,MAC地址为FF-FF-FF-FF),默认网关会返回其IP和MAC
- 在通过这个网关去查询其他网络,如此往复。
4.3 ICMP 协议(考的较少)
ICMP报文作为IP数据报的数据部分加上首部组成IP数据报
- 终点不可达:没有交付数据
- 源点抑制:网络内产生拥塞
- 时间超过:收到TTL为0的数据报
- 参数问题:首部字段出问题
- 路由问题:更改最佳路由路径(重定向)
4.4 DCHP 协议
- 应用层协议,C/S方式,基于UDP
过程:
- 客户机广播 “DCHP发现” 消息,试图找到网络中的DCHP服务器来获得一个IP地址
- DCHP服务器收到**“DCHP发现"消息后,向网络中广播"DCHP提供”**
- 客户机收到后向网络中广播**“DCHP请求”**
- DCHP服务器收到后广播**“DCHP确认”**,将IP分配给DCHP客户机。
4.5 网络层设备频【路由器】(参考第一章总结)
五、传输层
5.1 UDP
- 无连接,最大努力交付,即不可靠(由应用层保证可靠交付)
- 面向报文(应用层给UDP什么样的报文,UDP就传输什么样的报文)
- 无拥塞控制,适合实时应用
- UDP首部8B,TCP首部20B
5.2 TCP
- 面向连接(点对点连接)
- 提供可靠服务,即无差错、不丢失、不重复、按序到达(可靠有序,不丢不重)
- 全双工通信(发送方和接收方可以互换)
- TCP面向字节(将应用程序交付的数据仅视为一段无结构的字节流)
5.2.1 TCP报文段(参考第一章总结)
5.3 TCP连接管理
5.3.1 TCP的连接(三次握手)
- C:SYN = 1, seq = x(随机)【客户端发送请求连接报文】
- S:SYN = 1, ACK = 1, seq = y(随机), ack = x+1,
- C:SYN= 0, ACK = 1, seq = x+1, ack = y+1
5.3.2 TCP的释放(四次握手)
- C:FIN = 1, seq = x【客户端发送连接释放报文】
- S:ACK = 1, seq = y, ack = x+1
- S:FIN =1, ACK =1, seq=w, ack = x=1
- C:ACK =1,seq=x+1,ack=w+1
5.4 慢开始和拥塞部分、快重传和快恢复
- 接收窗口
- 拥塞窗口
- 发送窗口
- 发送窗口= min{接收窗口,拥塞窗口}
5.4.1 慢开始
5.4.2 快重传和快恢复
六、应用层
6.1 DNS(域名系统)
访问顺序:1-4-2-3
- 本地域名服务器(1)
- 权限域名服务器(4)
- 顶级域名服务器(3)
- 根域名服务器(2)
递归查询
- 本地域名服务器–>根域名服务器–>顶级域名服务器–>权限域名服务器
递归与的方式
本地域名服务器(由其向其他各处查询)
- 根域名服务器
- 顶级域名服务器
- 权限域名服务器
6.2 FTP(文件传输协议)
- 采用C/S,使用两个并行的TCP连接
- 控制连接: 端口号21,会话期间一直保持打开状态
- 数据连接: 端口号20,收到传输请求后创建,传输完毕后关闭(是否使用20端口和传输模式有关)
6.3 电子邮件(E-mail)
6.3.1 SMTP协议【发】
- 采用C/S,TCP连接,端口号25
- 采用 “推” 的方式用于用户代理向邮箱服务器及邮件服务器之间发送邮件
6.3.2 PP协议【读】
- TCP连接,端口号110,基于C/S
- 采用 “拉” 的方式从邮件服务器中读取邮件
6.4 万维网和HTTP
6.4.1 HTTP的特点
//TODO