1. overview
IP地址是两个较远节点之间交互,mac地址是相邻节点之间交互。
传输层叫做段(segment),在网络层叫做数据报(datagram),在链路层叫做帧(frame)。
传输层
而TCP在不可靠的IP层上提供了一个可靠的运输层(参见TCP三次握手),为了提供这种可靠的服务,TCP采用了超时重传,发送和接收的端到端的确认分组等机制。
TCP 传输控制协议 面向连接(类似打电话) 可靠服在通信之前要先建立连接 需要同时在线
UDP 用户数据报协议 非面向连接(类似发快递)不可靠 不稳定 但速度更快
SYN(synchronous):请求建立TCP连接
FIN:断开TCP连接
RST:重置TCP连接
ACK:确认、反馈连接情况
PSH:将数据立刻送到应用层进行处理的命令
URG:判断紧急指针是否有效的命令
窗口大小(Windows):接收方能够继续接收的字节数【控制发送的速度】
校验和(Checksum):baokuo TCP报头和数据在内的校验和【判断数据传输是否出错】
紧急指针(Urgent Pointer):当前序列号到紧急位置的偏移量
网络层
网络层IP提供的是一种不可靠的服务。IP包的封装和路径的选择
数据链路层
为上层提供可靠的数据帧透明传输
链路管理、帧同步、寻址、流量控制、差错控制
把得到 0和1 二进制序列当作一个以太网帧。把以太网帧头、帧尾去掉,得到中间的载荷再往上把数据包交给网络层
物理层
物理层在接受到上层以太网的数据帧后,就把数据包所拼接的字符串 0和1 这样的二进制数据转换为光信号/电信号等信号进行传输了。
数据拆分
TCP分段产生原因是MSS,IP分片产生的原因是网络层的MTU
对于以太网,MSS为1460字节,而MUT往往会大于MSS
故采用TCP协议进行数据传输,是不会造成IP分片的。若数据过大,只会在传输层进行数据分段,到了IP层就不用分片。
而我们常提到的IP分片是由于UDP传输协议造成的,因为UDP传输协议并未限定传输数据报的大小