1).LISTEN:首先服务端需要打开一个socket进行监听,状态为LISTEN. /* The socket is listening for incoming connections. 侦听来自远方TCP端口的连接请求 */ 2).SYN_SENT:客户端通过应用程序调用connect进行active open.于是客户端tcp发送一个SYN以请求建立一个连接.之后状态置为SYN_SENT. /*The socket is actively attempting to establish…
TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP.SMTP.TCP.UDP.IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议. 1.OSI参考模型 ========================================== 物理层 作用:定义一些电器,机械,过程和规范,如集线器: PDU(协议数据单元):bit/比特 设备:集线器HUB; 注意:没有寻址的概念: ===================…
三次握手四次挥手的原理   TCP是面向连接的,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接.在TCP/IP协议中,TCP 协议提供可靠的连接服务,连接是通过三次握手进行初始化的.三次握手的目的是同步连接双方的序列号和确认号 并交换 TCP窗口大小信息. 1.第一次握手:建立连接.客户端发送连接请求报文段,将SYN位置为1,Sequence Number为x;然后,客户端进入SYN_SEND状态,等待服务器的确认; 2.第二次握手:服务器收到SYN报文段.服务器收到客户端的SY…
TCP协议的三次握手, 四次挥手 三次握手过程 1, 服务器时刻准备接受客户端进程的连接请求, 此时服务器就进入了LISTEN(监听)状态; 2, 客户端进程然后向服务器发出连接请求报文, 之后客户端进程进入了 SYN-SENT(同步已发送状态)状态; 3, 服务器收到请求报文后, 如果同意连接, 则发出确认报文, 此时, 服务器进程进入了SYN-RCVD(同步收到)状态; 4, 客户端进程收到确认后, 还要向服务器给出确认. 此时, 客户端进入ESTABLISHED(已建立连接)状态; 5, …
Python进阶----网络通信基础 ,OSI七层协议() ,UDP和TCP的区别 , TCP/IP协议(三次握手,四次挥手) 一丶CS/BS 架构 C/S: 客户端/服务器    定义:       这里的客户端一般泛指客户端应用程序EXE,程序需要先安装后,才能运行在用户的电脑上对用户的电脑操作系统环境依赖较大    比如:       qq.微信.网盘.优酷这一类是属于需要安装的桌面应用 ​    优点:       安全性高,个性化设置,功能全面,响应速度快    缺点:       开…
1.应用层: 应用层功能:规定应用程序的数据格式. 例:TCP协议可以为各种各样的程序传递数据,比如Email.WWW.FTP等等.那么,必须有不同协议规定电子邮件.网页.FTP数据的格式,这些应用程序协议就构成了"应用层". 2.传输层: 传输层功能:建立端口到端口的通信 补充:端口范围0-65535,0-1023为系统占用端口 tcp协议: 可靠传输,TCP数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP…
转载 http://www.cnblogs.com/zmlctt/p/3690998.html 相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需要控制这个过程.但是对于理解TCP底层运作机制,相当有帮助. 而且对于有网络协议工程师之类笔试,几乎是必考的内容.企业对这个问题热情之高,出乎我的意料:-).有时上午面试前强调这个问题,并重复讲一次,下午几乎每一个人都被问到这个问题. 因此在这里详细解释一下这两个过程. TCP三次握手 所谓三次握手…
相对应socket开发者,TCP创建过程和连接拆除过程是由TCP/IP协议栈自动创建的,因此开发者并不需要控制这个过程,但是对于理解TCP底层运作机制,相当有帮助 TCP三次握手 所谓三次握手,是指建立一个TCP连接时,需要客户端和服务器总共发送三个包 三次握手的目的是连接服务器指定的端口,建立TCP连接,并同步连接双方的序列号和确认号并交换TCP窗口大小的信息,在socket编程中,客户端执行connect()时,将触发三次握手 第一次握手: 客户端发送一个TCP的SYN标志位置1的包指明客户…
如果对网络工程基础不牢,建议通读<细说OSI七层协议模型及OSI参考模型中的数据封装过程?> 下面就是TCP/IP(Transmission Control Protoco/Internet Protocol )协议头部的格式,是理解其它内容的基础,就关键字段做一些说明 Source Port和Destination Port:分别占用16位,表示源端口号和目的端口号:用于区别主机中的不同进程,而IP地址是用来区分不同的主机的,源端口号和目的端口号配合上IP首部中的源IP地址和目的IP地址就能…
本文通过图来梳理TCP-IP协议相关知识.TCP通信过程包括三个步骤:建立TCP连接通道,传输数据,断开TCP连接通道.如图所示,给出了TCP通信过程的示意图. TCP 三次握手四次挥手 主要包括三部分:建立连接.传输数据.断开连接. 1)建立TCP连接很简单,通过三次握手便可建立连接. 2)建立好连接后,开始传输数据.TCP数据传输牵涉到的概念很多:超时重传.快速重传.流量控制.拥塞控制等等. 3)断开连接的过程也很简单,通过四次握手完成断开连接的过程. 三次握手建立连接: 第一次握手:客户端…