计算机网络脉络梳理
主要指TCP/IP 协议栈,大部分隐藏于操作系统内核(数据链路层,网络层,传输层),封装于操作系统内部,但是要了解原理
数据链路层
网络层:IP
传输层:TCP,UDP
平时用户空间接触到只有应用层协议:FTP,HTTP,DNS,HTTPS
工作中接触的以应用层为主
数据链路层
- 以太网帧的格式
- MTU的概念
- ARP协议 和RARP协议(ARP报文格式,ARP缓存原理)
网络层
IP协议:
-
掌握IP首部标识:如16位分片标识、DF不分片标志、MF更多分片标志、13位片位移,8位生存空间TTL,16位的首部检验等等
-
掌握IP分片:避免IP分片
-
路由表
-
掌握ICMP协议:报文格式、报文的两大分类:查询+差错
2钟报文格式 + 5钟差错控
传输层
UDP协议:
- 特点 + 首部各个字段
TCP协议:
-
特点 + 首部各个字段
-
TCP连接控制:三次握手、四次挥手、同时打开、同时关闭、半关闭
-
TCP流量控制机制:滑动窗口、慢启动、拥塞避免、快速重传、快速恢复
-
TCP超时重传机制:各种定时器
(学的过程中多问为什么?比如为什么是三次握手、四次挥手)
应用层
DNS协议:
- DNS协议的名字空间、DNS指针查询(反向查找或逆向解析)基本原理、DNS缓存
FTP协议:
- 两条连接:控制连接 + 数据连接
- 两种工作模式:PASV + PORT
- 各种FTP的指令 和 响应码
- FTP断点续传、匿名FTP
HTTP协议:
- 报文格式:请求报文、响应报文、请求头各种字段、响应头各种字段
- http状态码
HTTPS协议:
- https协议的详细握手过程
- 摘要算法、数字签名、数字证书的原理和过程