传输层的协议
一、TCP协议
1、TCP含义
TCP协议是传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议
2、TCP 协议的报文格式:
源端口号:为发送方进程对应的端口号
目标端口号:对应的是接收端的进程,根据这个端口确定数据送给那个应用程序的进程
序列号 :TCP每个方向的编号都是相互独立的,当字节都被编上号后,TCP给每个报文指派一个序号
确认号:对发送端的确认信息
首部长度:确定首部数据结构的字节长度,一般是20字节,最大可达到60字节
保留:扩展功能,待使用
控制位:6个控制位 URG ACK PSH RST SYN FIN
URG:紧急指针有效位
ACK:ACK=1 有效
PSH:标志位=1 时要求接收方尽快将数据送达到应用层
RST:RST=1 通知重新建立TCP连接
SYN:同步序号位 ,建立连接时 SYN=1
FIN:发送端完成任务后,需要断开时 FIN=1
窗口大小 会根据网络的带宽
校验和 : 校验是否完整
紧急指针:当URG=1 才有效
选项:在TCP首部可以有多达40字节的可选信息
3、常见端口与协议
二、UDP协议
1、UDP协议含义:
Internet 协议集支持一个无连接的传输协议,该协议称为用户数据报协议(UDP,User Datagram Protocol)。UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。
2、报文格式
源端口号:用来标识数据发送端的进程
目标端口号:用来标识数据接收端的进程
UDP长度:用来指出UDP的总长度,为首部加上数据
UDP校验和:用来完成对UDP数据的加错校验,是UDP协议提供的唯一的可靠机制
3、UDP常见协议与端口
4、TCP和UDP的区别
TCP与UDP基本区别
1.基于连接与无连接
2.TCP要求系统资源较多,UDP较少;
3.UDP程序结构较简单
4.流模式(TCP)与数据报模式(UDP);
5.TCP保证数据正确性,UDP可能丢包
6.TCP保证数据顺序,UDP不保证
三、TCP的三次握手和四次挥手
1、TCP建立连接的三次握手: