![知识共享许可协议](https://csdnimg.cn/release/phoenix/images/creativecommons/80x15.png)
概述
英语:Transmission Control Protocol,缩写为TCP
TCP是传输控制协议;是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC793定义
建立与释放连接的特点:三次握手、四次挥手
TCP具有校验机制、可靠、数据传输稳定
TCP链接、传输流程
TCP能做什么
聊天消息传输、推送
单人语音、视频聊天等
几乎UDP能做的都能做,但需要考虑复杂性、性能问题
限制:无法进行广播,多播等操作
TCP核心API
socket():创建一个Socket
刚创建的Socket可以是无状态的 在后续进行响应信息的绑定操作
bind():绑定一个Socket到一个本地地址和端口上
connect():连接到远程套接字
accept):接受一个新的连接
这个是服务器端独有的
write():把数据写入到Socket输出流
read():从Socket输入流读取数据
流程
客户端:
服务器端:
Socket与进程的关系
TCP连接可靠性
三次握手:
三次握手 数据随机是必要的
四次挥手:
ACK都是回送命令
U是随机值 V也是随机值
TCP传输可靠性
滑动窗口协议
具体内容 参考【计算机网络】谢希仁笔记 运输层