一.TCP
1.TCP传输控制协议的
-
tcp是面向连接的,可靠的
-
tcp提供全双工服务,即数据可在同一时间双向传。
二.TCP数据段
是由tcp头部+上层数据段组成
-
源端口号:属于客户端(发送请求),随机。
-
目标端口号:属于服务端(接收请求),一般固定。
-
序列号seq:表示本报文段所发送数据的第一个字节的编号,是随机的,可自设的。
-
确认号ack:(只有确认接收到了发送方发送的数据,才会有确认号)接收方在下一次传输中期望收到的序列号 (相当于接收方给传输方的暗号,)。
-
序列号和确认号 用于确保设备之间的通信
三.TCP连接过程称3次握手
1.控制位
同步位 SYN=1 请求建立连接
确认位 ACK=1 同意连接
断开位 FIN=1 断开连接
序列号 Seq
确认号 ack
2. 三次握手
PC1想和PC2进行连接
连接步骤如下
第一步:PC1会发送一个建立连接的请求报文
1.自动生成报文序号:Seq=x
2.同步位:请求建立连接SYN=1
第二步:PC2接收消息,需要回复一个报文.
1.自动生成报文序号:Seq=y
2.ack确认号 我希望你下次发送x+1序号的报文给你
3.控制位 SNY=1. ACK=1 请求建立连接Pc2同意连接
第三步:pc2连接的报文后
1.会发送x+1的报文序号
2.会告诉对方 希望你下次发送 ack=y+1的报文序号给我
3.最后将ACK封装进去
四.TCP特性
1.工作在传输层
2.面向连接协议
3.全双工协议
4.半关闭
5.错误检查
6.将数据打包成段,排序
7.确认机制
8.数据恢复,重传
9.流量控制,滑动窗口
五. UDP特性
1.工作在传输层
2.提供不可靠的网络访问
3.非面向连接协议
4.有限的错误检查
5.传输性能高
6.无数据恢复特性