一、计算机网络概述
1.1 计算机网络的分类
按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN); 按照网络使用者:公用网络、专用网络。
1.2 计算机网络的层次结构
1.3 层次结构设计的基本原则
各层之间是相互独立的; 每一层需要有足够的灵活性; 各层之间完全解耦。
1.4 计算机网络的性能指标
速率:bps=bit/s
时延:发送时延、传播时延、排队时延、处理时延
往返时间RTT:数据报文在端到端通信中的来回一次的时间。
二、物理层
中继器【Repeater,也叫放大器】:同一局域网的再生信号;两端口的网段必须同一协议;5-4-3规程:10BASE-5以太网中,最多串联4个中继器,5段中只能有3个连接主机; 集线器:同一局域网的再生、放大信号(多端口的中继器);半双工,不能隔离冲突域也不能隔离广播域。
单工通信信道:只能一个方向通信,没有反方向反馈的信道;
半双工通信信道:双方都可以发送和接受信息,但不能同时发送也不能同时接收;
全双工通信信道:双方都可以同时发送和接收。
三、数据链路层
3.1 数据链路层概述
数据链路层为网络层提供可靠的数据传输; 基本数据单位为帧; 主要的协议:以太网协议; 两个重要设备名称:网桥和交换机。
3.2 数据链路层的差错监测
奇偶校验码–局限性:当出错两位时,检测不到错误。 循环冗余检验码:根据传输或保存的数据而产生固定位数校验码。
3.3 最大传输单元MTU
3.4 以太网协议详解
局域网分类:
以太网第一个广泛部署的高速局域网 以太网数据速率快 以太网硬件价格便宜,网络造价成本低
以太网帧结构:
类型:标识上层协议(2字节) 目的地址和源地址:MAC地址(每个6字节) 数据:封装的上层协议的分组(46~1500字节) CRC:循环冗余码(4字节) 以太网最短帧:以太网帧最短64字节;以太网帧除了数据部分18字节;数据最短46字节;
MAC地址(物理地址、局域网地址)
MAC地址长度为6字节,48位; MAC地址具有唯一性,每个网络适配器对应一个MAC地址; 通常采用十六进制表示法,每个字节表示一个十六进制数,用 - 或 : 连接起来; MAC广播地址:FF-FF-FF-FF-FF-FF。
四、网络层
IP协议(Internet Protocol,因特网互联协议); ICMP协议(Internet Control Message Protocol,因特网控制报文协议); ARP协议(Address Resolution Protocol,地址解析协议); RARP协议(Reverse Address Resolution Protocol,逆地址解析协议)。
4.1 IP协议详解
IP网际协议是 Internet 网络层最核心的协议。虚拟互联网络的产生:实际的计算机网络错综复杂;物理设备通过使用IP协议,屏蔽了物理网络之间的差异;当网络中主机使用IP协议连接时,无需关注网络细节,于是形成了虚拟网络。
4.2 IP协议的转发流程
4.3 IP地址的子网划分
4.4 网络地址转换NAT技术
4.5 ARP协议与RARP协议
4.6 ICMP协议详解
Ping应用:网络故障的排查; Traceroute应用:可以探测IP数据报在网络中走过的路径。
4.7网络层的路由概述
链路状态路由选择算法LS:向所有隔壁路由发送信息收敛快;全局式路由选择算法,每个路由器计算路由时,需构建整个网络拓扑图;利用Dijkstra算法求源端到目的端网络的最短路径;Dijkstra(迪杰斯特拉)算法; 距离-向量路由选择算法DV:向所有隔壁路由发送信息收敛慢、会存在回路;基础是Bellman-Ford方程(简称B-F方程);
4.8 内部网关路由协议之RIP协议
RIP在度量路径时采用的是跳数(每个路由器维护自身到其他每个路由器的距离记录); RIP的费用定义在源路由器和目的子网之间; RIP被限制的网络直径不超过15跳; 和隔壁交换所有的信息,30主动一次(广播)。
4.9 内部网关路由协议之OSPF协议
安全; 支持多条相同费用路径; 支持区别化费用度量; 支持单播路由和多播路由; 分层路由。
4.10外部网关路由协议之BGP协议
五、传输层
传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输以及端到端的差错控制和流量控制问题; 包含的主要协议:TCP协议(Transmission Control Protocol,传输控制协议)、UDP协议(User Datagram Protocol,用户数据报协议); 重要设备:网关。
5.1 UDP协议详解
UDP是无连接协议; UDP不能保证可靠的交付数据; UDP是面向报文传输的; UDP没有拥塞控制; UDP首部开销很小。
5.2 TCP协议详解
对应用层报文进行分段和重组; 面向应用层实现复用与分解; 实现端到端的流量控制; 拥塞控制; 传输层寻址; 对收到的报文进行差错检测(首部和数据部分都检错); 实现进程间的端到端可靠数据传输控制。
TCP是面向连接的协议; TCP是面向字节流的协议; TCP的一个连接有两端,即点对点通信; TCP提供可靠的传输服务; TCP协议提供全双工通信(每条TCP连接只能一对一);
5.2.1 TCP报文段结构:
序号字段:TCP的序号是对每个应用层数据的每个字节进行编号; 确认序号字段:期望从对方接收数据的字节序号,即该序号对应的字节尚未收到。用ack_seq标识; TCP段的首部长度最短是20B ,最长为60字节。但是长度必须为4B的整数倍;
5.3 可靠传输的基本原理
基本原理:
不可靠传输信道在数据传输中可能发生的情况:比特差错、乱序、重传、丢失
基于不可靠信道实现可靠数据传输采取的措施:
差错检测:利用编码实现数据包传输过程中的比特差错检测 确认:接收方向发送方反馈接收状态 重传:发送方重新发送接收方没有正确接收的数据 序号:确保数据按序提交 计时器:解决数据丢失问题;
5.3.1TCP协议的可靠传输
5.3.2 TCP协议的流量控制
5.4 TCP协议的拥塞控制
【慢开始】拥塞窗口从1指数增长; 到达阈值时进入【拥塞避免】,变成+1增长; 【超时】,阈值变为当前cwnd的一半(不能<2); 再从【慢开始】,拥塞窗口从1指数增长。
发送方连续收到3个冗余ACK,执行【快重传】,不必等计时器超时; 执行【快恢复】,阈值变为当前cwnd的一半(不能<2),并从此新的ssthresh点进入【拥塞避免】。
5.5 TCP连接的三次握手(重要)
第一次握手:客户发送请求,此时服务器知道客户能发; 第二次握手:服务器发送确认,此时客户知道服务器能发能收; 第三次握手:客户发送确认,此时服务器知道客户能收。
5.6 TCP连接的四次挥手(重要)
最后一个报文没有确认; 确保发送方的ACK可以到达接收方; 2MSL时间内没有收到,则接收方会重发; 确保当前连接的所有报文都已经过期。
六、应用层
数据传输基本单位为报文; 包含的主要协议:FTP(文件传送协议)、Telnet(远程登录协议)、DNS(域名解析协议)、SMTP(邮件传送协议),POP3协议(邮局协议),HTTP协议(Hyper Text Transfer Protocol)。
6.1 DNS详解
【1】浏览器缓存, 【2】找本机的hosts文件, 【3】路由缓存, 【4】找DNS服务器(本地域名、顶级域名、根域名)->迭代解析、递归查询。
6.2 DHCP协议详解
6.3 HTTP协议详解
GET:请求指定的页面信息,并返回实体主体; POST:向指定资源提交数据进行处理请求; DELETE:请求服务器删除指定的页面; HEAD:请求读取URL标识的信息的首部,只返回报文头; OPETION:请求一些选项的信息; PUT:在指明的URL下存储一个文档。
6.3.1 HTTP工作的结构
6.3.2 HTTPS协议详解
↓↓↓↓点击,查看更多新闻
✋热门推荐