TCP协议详解

TCP协议特点:面向连接、字节流、可靠传输。

**面向连接:**使用TCP协议通信的双方必须先建立连接,然后才能开始数据的读写。双方都必须为该链接分配必要的内河资源,以管理连接的状态和连接上数据的传输。TCP连接是全双工的,双方的数据读写可以通过一个连接进行。完成数据交换之后,通信双方都必须断开连接以释放系统资源。

**字节流:**发送端可以逐个字节地向数据流(发送缓冲区)中写入数据,接收端也可以逐个字节地将他们读出(从接收缓冲区)。基于流的数据没有边界(长度)限制。当发送端应用程序连续执行多次写操作时,TCP模块先将这些数据放入TCP发送缓冲区中。当TCP模块真正开始发送数据时,发送缓冲区中这些等待发送的数据可能被封装成一个或多个TCP报文段发出。应用程序执行的读写操作次数和TCP模块发送/接收的报文段个数之间没有固定的数量关系。

**可靠传输:**1.应答机制:发送端发送的每个TCP报文段都必须得到接收方的应答,才认为该报文段传输成功。2.超时重传机制:发送端在发送出一个TCP报文段之后启动定时器,如果定时时间内未收到应答,将重发该报文段。3.接收端的TCP协议程序会对接收到的TCP报文段排序、去重,交给上层(应用层)应用程序。

TCP连接建立过程(四次握手):

相关推荐
hakesashou3 分钟前
Python中常用的函数介绍
java·网络·python
C++忠实粉丝15 分钟前
计算机网络socket编程(4)_TCP socket API 详解
网络·数据结构·c++·网络协议·tcp/ip·计算机网络·算法
九州ip动态15 分钟前
做网络推广及游戏注册为什么要换IP
网络·tcp/ip·游戏
Estar.Lee20 分钟前
时间操作[取当前北京时间]免费API接口教程
android·网络·后端·网络协议·tcp/ip
蝶开三月21 分钟前
php:使用socket函数创建WebSocket服务
网络·websocket·网络协议·php·socket
G丶AEOM35 分钟前
SSL/TLS,SSL,TLS分别是什么
网络·网络协议·网络安全
儒道易行38 分钟前
【DVWA】RCE远程命令执行实战
网络·安全·网络安全
Koi慢热2 小时前
路由基础(全)
linux·网络·网络协议·安全
hzyyyyyyyu3 小时前
内网安全隧道搭建-ngrok-frp-nps-sapp
服务器·网络·安全