Chinaunix首页 | 论坛 | 博客
  • 博客访问: 199653
  • 博文数量: 51
  • 博客积分: 1435
  • 博客等级: 上尉
  • 技术积分: 590
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-05 18:33
文章分类

全部博文(51)

文章存档

2012年(17)

2011年(34)

分类: 系统运维

2011-04-08 21:37:32

转自网络,学习MARK。
位码:SYN(建立联机)ACK(确认)PUSH(传送)FIN(结束)RST(reset)URG(紧急)
顺序号码Sequence number,Acknowledge number确认号码
第一次握手:主机A发送位码为syn=1,随机产生seq number=1234567的数据包发生到服务器,主机B由syn=1知道A要联机。
第二次握手:主机B收到请求后要确认联机信息,向A发送ACK number=(1234567+1)ACK=1 SYN=1,随机产生seq number=7654321的包
第三次握手:主机收到信息后检查ack number是否正确以及ACK是否为1,若正确则主机A在发送ack number=7654321+1 ack=1,主机B收到后确认ack值及ack=1,则连接建立成功。

主机A与B开始传送数据。
四次分手:
TCP连接是全双工的,因此每个方向都必须单独进行关闭。首先进行关闭的一方执行主动关闭,而另一方执行被动关闭。
第一次握手:主机A发送一个FIN,seq number=123用来关闭A到B端的数据传送
第二次握手:主机B收到FIN后发回一个ACK =123+1
第三次握手:主机B发送一个FIN seq number=321给A
第四次握手:主机A收到后发送ACK number=321+1报文

结束

阅读(1450) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~