图解 TCP IP 协议:三次握手、四次挥手
更多内容: http://blog.yuhai.win
参考地址:
1、http://mp.weixin.qq.com/s?__biz=MzAwNjMxMTA5Mw==&mid=2651340249&idx=1&sn=ad3bde6844f04049c5408334d09da871&scene=0#wechat_redirect
2、http://www.cricode.com/3568.html
1、TCP 的通信过程如下图:
TCP 的传输过程主要包括
a、 建立连接
b、 传输数据
c、 断开连接
2、 SYN(synchronous)是TCP/IP建立连接时使用的握手信息。在客户机与服务器之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息,服务器使用SYN+ACK应答表示接收到了这个信息,最后客户机再以ACK消息响应。
3、ACK(Acknowledgement),即确认字符,在数据通信中,接收站发给发送站的一种传输类控制字符,表示发来的数据已确认接收无误。
4、三次握手建立连接
a、第一次握手:客户端发送SYN包(seq=x)到服务器,并进入SYN_SEND 状态,等待服务器确认
b、第二次握手: 服务器接收到SYN包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(seq=y),即SYN+ACK包,此时服务器进入SYN_RECV状态
c、第三次握手:客户端接收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器端进入ESTABLISHED状态,完成三次握手。
5、四次挥手断开连接
a、主动关闭发送一个FIN,用来关闭主动发到被动方的数据传送,也就是主动关闭方告诉被动关闭方,我已经不会再给你发数据了,但此时主动关闭方还可以接收数据。
b、第二次挥手 被动关闭方收到FIN包后,发送一个ACk给对方,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号)
c、第三次挥手: 被主动关闭方发送一个FIN,用来关闭被动关闭方到主动关闭方的数据传输,也就是告诉主动关闭方,我的数据也发送完了,不会再给你发数据了。
d、第四次挥手 主动关闭收到FIN后,发送一个ACk给被动关闭方,确认序号为收到序号+1,至此完成四次挥手
图解 TCP IP 协议:三次握手、四次挥手相关推荐
- Python进阶----网络通信基础 ,OSI七层协议() ,UDP和TCP的区别 , TCP/IP协议(三次握手,四次挥手)...
Python进阶----网络通信基础 ,OSI七层协议() ,UDP和TCP的区别 , TCP/IP协议(三次握手,四次挥手) 一丶CS/BS 架构 C/S: 客户端/服务器 定义: 这里 ...
- python网络通信效率_Python进阶----网络通信基础 ,OSI七层协议() ,UDP和TCP的区别 , TCP/IP协议(三次握手,四次挥手)...
Python进阶----网络通信基础 ,OSI七层协议() ,UDP和TCP的区别 , TCP/IP协议(三次握手,四次挥手) 一丶CS/BS 架构 C/S: 客户端/服务器 定义: 这里的客户端一般 ...
- TCP/IP协议 - 三次握手四次挥手(入门易懂版)
握手通俗理解为两个人见面Say Hai,客户端和服务端建立连接 挥手就可以理解为两个人结束会面,要Say Goodbai,客户端和服务端断开连接 要了解什么是三握四挥,必须要了解一个重要的知识点:什么 ...
- 【干货】TCP/IP协议三次握手四次挥手
TCP是一种面向连接的.可靠的.基于字节流的传输层通信协议,在发送数据前,通信双方必须在彼此间建立一条连接.所谓的"连接",其实是客户端和服务端保存的一份关于对方的信息,如ip地址 ...
- 【网络工程】浅显易懂TCP/IP协议 三次握手 四次挥手
目录 什么是三次握手? 如何进行三次握手 什么是四次挥手? 如何进行四次挥手 什么是三次握手? 为什么要三次握手?是为了保证建立一个安全可靠的链接 如何进行三次握手 第一次握手是由客户端发起,向服务端 ...
- Linux网络编程(网络七层协议,TCP/IP,三次握手四次挥手,TCP/UDP的区别)
1.OSI 7层网络模型 1.网络七层协议 (1)OSI定义了网络互连的七层框架(物理层.数据链路层.网络层.传输层.会话层.表示层.应用层),即ISO开放互连系统参考模型. (2)各层功能定义 这里 ...
- go tcp客户端自动重连_阿里面试: HTTP、HTTPS、TCP/IP、三次握手四次挥手过程?(附全网最具深度讲解)
前言 这段时间面试官都挺忙的,频频出现在博客文章标题,虽然我不是特别想蹭热度,但是实在想不到好的标题了-.-,蹭蹭就蹭蹭 :) 事实上我在阿里面试的时候确实被问到了这个问题,HTTP.HTTPS.TC ...
- TCP/IP协议三次握手与四次握手流程解析
原文链接地址:http://www.2cto.com/net/201310/251896.html TCP/IP协议三次握手与四次握手流程解析 TCP/IP协议的详细信息参看<TCP/IP协议详 ...
- 白话解说TCP/IP协议三次握手和四次挥手
白话解说TCP/IP协议三次握手和四次挥手 1.背景 和女朋友异地恋一年多,为了保持感情我提议每天晚上视频聊天一次. 从好上开始,到现在,一年多也算坚持下来了. 1.1.问题 有时候聊天的过程中,我的 ...
- TCP为什么需要三次握手四次挥手
TCP为什么需要三次握手四次挥手 三次握手 TCP是通过程序实现的,可靠的,面向连接的协议.而程序是严谨的,每一次建立连接都会进行"三次握手"这样的步骤. 建立连接的目的是为了可靠 ...
最新文章
- 在LINUX中部署NIS服务器
- 通过jquery获取td下的input标签的值,并且改变onclick的参数值
- Spring入门(一)之简介
- React开发(177):opentab没有menu会报错
- 安卓开发语言php,go语言支持安卓开发吗
- python中acosh_acosh()函数以及C ++中的示例
- android重复拉起app首页_Android进程管理:Framework层概念
- Python验证码的生成
- 解决办法:为什么我的DLL中加载后找不到指定的函数
- mysql客户端介绍
- matlab中的语言,matlab语言学习MATLAB语言基础.pdf
- 考计算机初级难不难,初级程序员好考吗_考试难不难_上学吧
- 【可靠性测试】之容错性测试---测试检查点罗列
- 2.jQuery常见API
- golang:模拟http post请求
- Windows系统文件详解
- 这个七夕,送你一份程序员教科书级别的告白指南
- PCFG句法分析之CYK算法
- 百度云加速zblog和WordPress规则自定义
- 工具 网络游戏封包基础