链路层
点对点通信
物理链路、逻辑链路
链路打开的过程、咨询配置LCP、网络层NCP配置
广播信道
MAC以太网帧硬件地址
源mac地址目的mac地址,报文头部长8字节
mac地址出厂就有的
数据部分最大传输单元MTU1500
超时重传数据过长不好
适配器、网桥、交换机
网络适配器网卡
网桥进行转发和过滤
交换机进行,多通道工作,有许多网桥对进行连接同时工作
Ip网络层
虚拟互联网概念
IP层向上透明,不负责差错检验,只尽最大努力交付的,无连接的
ICMP网际控制协议,有控制报文,提交差错报告的过程
ARP地址解析,RARP逆向地址解析
中间设备集合
物理层-转发器
链路层-网桥交换机
IP层-路由器
运输层应用层-网关
IP地址和物理地址ARP
主机号和网络号的分配,后面主机号2的指数幂-2
I级8/24(0)
II级16/16(10)
III级24/8(110)
ARP地址解析
在局域网上进行问询,不用管ip
有的话就应答,MAC传输过程中变,IP地址不变
进行缓存,超过20分钟清楚缓存
MAC转换到传出去的路由就行
IP报文
ipv4/ipv6,首部长度,数据长度
ipv6
128位,头部不一样有伪首部,然后是数据部分,不进行检验了
十六进制来表示,中间有0压缩
由于MTU可能分片,分片标志,片位移
跳数检验和,首部检验和
目的地址
源地址
IP分级和子网掩码CIRD直接进行分码
在二级子网的划分中演变成三级的划分有三级子网
使用子网掩码与有多少个11111,与目的网络进行按位与,获得网络号
不进行三级或者两级的划分,只进行前面多少位的按位与就可以
路由选择协议,选择的过程
路由表中的信息,目的地址,下一跳的地址,子网掩码
在子网中如果有多个子网掩码的过程需要用最长前缀匹配
主机中也有路由表,有路由表没有转发给默认路由
默认路由中求得网络号,然后转发给下一个的地址,没有就上网找
运输层
运输层的逻辑通信
只有ip层是真的传输,运输层是一个逻辑通信
socket套接字和端口
计算机进程通信,应用进程的通信和运输的实体交互是由端口实现的
由源端口到目的端口的
UDP
无连接的,尽最大努力交付的,不可靠的通信
支持一对一,一对多的,面向报文的头部开销小
UDP报文8字节头部
源端口,目的端口直接上报文最后加首部检验和
TCP
有连接的,面向字节流的,可靠的通信,有流量,拥塞
TCP报文40字节头部
源端口目的端口
序列号
确认号
选项加接收发送窗口
可靠传输的实现
连续的ARQ
连续进行确认的,对按序到达的最后一个进行确认
Tcp特殊的
滑动窗口
分别为接收缓冲区和发送缓冲区
发送缓冲区分为已经发出的未确认的,未发送的
接收缓冲区分为,已经接收未进行处理的,和未按序收到的
收到确认之后,发送的窗口不断向前滑动
接收处理之后也不断向前进行滑动
流量控制
不断进行向前滑动
在接收方会回复窗口大小
发送需要小于接收方窗口的大小(最后小于拥塞窗口)
拥塞控制
拥塞避免
一次回复多个确认,一次回复增加一个发送窗口
连接管理
建立连接
三次握手
客户端向syn=1
服务器是syn=1ack=1回复
客户端回ack=1
为什么要三次握手:防止超时的syn连接到来占用客户端资源
关闭连接
四次挥手
客户端fin=1
服务器ack=1收到
服务器不发了ack=1fin=1
客户端ack=1收到
为什么要time-wait 防止没有收到最后一个ack服务器超时重传
状态机
三次握手
客户端
close-sendsyn
sendsyn-esh
服务器
close-recesyn
recsyn-esh
四次挥手
客户端
FIN WAIT_I-FIN WAIT_II
FIN WAIT_II-TIMEWAIT
TIMERwait大约两分钟,两个小时关闭连接10次10s
服务器
CLOSE-WAIT - LASK ACK
LASK ACK - CLOSE