TCP通信过程小结
来源:互联网 发布:学数据库有什么用知乎 编辑:程序博客网 时间:2024/05/13 14:45
1 预备知识
要了解TCP通信,必须得对TCP报文格式熟悉,下图是TCP报文格式,简单说下跟TCP连接三次握手和TCP断开三次握手及半关闭的四向握手有关的几个字段,
分别是:SYN、ACK、FIN以及序号和确认号字段。
以下假设客户端A想跟服务器B通信
2 TCP连接三次握手
step1 A发出一个TCP报文,其中置SYN=1,并随机初始化一个数给序号字段,假设是x;
step2 B收到请求后回复一个报文,置SYN=1,ACK=1,确认号为x+1,序号也是一个随机值,假设为y;
step3 A收到报文后回复B,置ACK=1,序号仍为x,确认号为y+1.
3 TCP断开三次握手
step1 A发出一个TCP报文,置FIN=1,假设此时的序号为x,确认号为y;
step2 B回复A,置FIN=1,ACK=1,序号为y,确认号为x+1;
step3 A回复B,置ACK=1,序号为x,确认号为y+1
4 TCP半关闭的四次握手
step1 A发出一个TCP报文,置FIN=1,假设此时的序号为x,确认号为y;
step2 B回复A,置ACK=1,序号为y-1,确认号为x+1;
...(B给A发数据阶段)
step3 B发出报文给A,置FIN=1,序号假设为z,确认号为x+1;
step4 A回复B,置ACK=1,序号为x,确认号为z+1
0 0
- TCP通信过程小结
- TCP通信方式小结
- TCP通信过程
- TCP通信过程(一)
- tcpdump 分析 TCP 通信过程
- linux TCP网络通信过程
- TCP通信过程大讨论
- linux TCP数据包重传过程----小结
- linux TCP数据包重传过程----小结
- 简单socket通信过程(TCP)
- Python UDP和TCP的通信过程
- Qt 下的Tcp和Udp通信小结
- 网络编程 UDP通信的过程 TCP通信过程 多线程文件上传
- TCP小结
- TCP小结
- TCP小结
- java TCP 通信涉及类和执行过程
- silverlight+WCF的net.tcp双工通信实例过程
- PHP正则表达式
- android pull解析xml案例
- 【数据库】SQL server 评估期已过。有关如何升级的测试版软件的信息,请访问..
- Java连接Mysql数据库警告:Establishing SSL connection without server's identity verification is not recommend
- AI制作牙膏笔刷文字
- TCP通信过程小结
- Java笔记
- Linux设备驱动第三版快速参考摘录
- 归并排序法详解
- Android中的享元模式
- 【项目 2 - 就拿胖子说事】
- 钱币兑换问题
- poj2488
- github 本地仓库与远程仓库的交互