`
jianwwpro
  • 浏览: 29703 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

TCP基础及TCP的连接状态

 
阅读更多
TCP是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议,在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能。TCP(Transmission Control Protocol) 即传输控制协议,是一个工业标准的协议集,它是为广域网(WANs)设计的。它是由ARPANET网的研究机构发展起来的。


一、TCP的连接状态

         TCP的连接状态分为12种:ESTABLISHED、SYS_SENT、SYN_RECV、FIN_WAIT1、FIN_WAIT2、TIME_WAIT、CLOSED、CLOSE_WAIT、LAST_ACK、LISTEN、CLOSEING、UNKNOWN。

  很多地方都没把第12种加上去,其实它也属于TCP的连接状态。



二、TCP建立连接(TCP的三次握手)

1.首先Client端会向Server发送一个带有syn标志的请求,然后等待Server的响应;

2.Server接到Client端的请求后立即回应Client端带有syn·ack标志的回应包(netfilter中的state已记录ESTABLSHED)。

3.Client收到回应后,再向Server发出一个带有 ack标志的包。此时建立完成,可进行正常通信。此时连接状态成为TCP的ESTABLSHED。



三、TCP终止连接

1.Client端先向Server发出带有fin标志的结束请求封包。

2.Server端接到请求后回应Client端带有ack的回应封包,紧接着再发出带有fin的结束请求封包。

3.Client端收到请求后也回应带有ack的回应封包。至此TCP连接中断。



  • 大小: 26.1 KB
分享到:
评论

相关推荐

    labview tcp 检查连接状态.png

    labview tcp 检查连接状态.png labview tcp 检查连接状态.png

    tcp连接状态详解 描述了tcp协议常用的命令

    TCP 连接状态详解 TCP 连接状态是指在 TCP 协议中,连接的不同阶段所对应的状态。这些状态包括 LISTEN、SYN-SENT、SYN-RECEIVED、ESTABLISHED、FIN-WAIT-1、FIN-WAIT-2、CLOSE-WAIT、CLOSING、LAST-ACK、TIME-WAIT...

    TCP中长连接短连接

    长连接,也称为持久连接,指的是客户端(Client)与服务器端(Server)在完成连接建立后,保持连接状态不立即断开,以便于进行多次的数据交互。TCP的三次握手建立连接后,双方可以在连接保持期间反复发送数据,减少...

    C#连接ModbusTCP连接示例

    总的来说,"C#连接ModbusTCP连接示例"涵盖了网络通信、设备控制和用户界面设计等多个方面,对于理解和实践工业自动化系统的开发具有重要意义。无论是WinForm还是WPF,掌握这些技能都将使你在面对类似项目时更加...

    TCP长短连接简单Demo

    TCP连接分为长连接和短连接,这两种连接方式各有其特点和适用场景。本Demo是用C++语言在VS2017环境下编写的,旨在帮助开发者理解TCP长连接和短连接的实现。 首先,我们要理解TCP连接的基本概念。TCP是一种面向连接...

    Window下杀掉TCP连接

    2. **命令提示符**:使用`netstat`命令可以查看当前的TCP连接状态。输入`netstat -ano`可以看到所有活动连接,包括PID(进程ID)。找到目标连接,然后使用`taskkill`命令结束对应进程,如`taskkill /F /PID 进程ID`...

    设计模式:状态模式TCPConnection案例

    在TCP连接中,状态模式的应用尤为常见,因为TCP连接在不同的阶段会有不同的行为,比如建立连接、数据传输、断开连接等。下面我们将详细探讨这个模式以及如何在TCP连接的案例中应用。 首先,我们来理解状态模式的...

    TCPView查看TCP连接

    1. **查看连接状态**:TCPView会列出所有活动的TCP连接,包括本地IP地址、远程IP地址、本地端口、远程端口以及连接状态(如ESTABLISHED、LISTENING等)。这对于识别占用大量带宽或者异常的连接非常有帮助。 2. **...

    TCP有限状态机

    #### 三、TCP状态及转换 ##### 1. 客户端TCP状态迁移 - **CLOSED**:初始状态,没有任何连接状态。 - **SYN_SENT**:在客户端发送连接请求(SYN)后,进入此状态,等待接收服务器的响应。 - **ESTABLISHED**:在...

    TCP/UDP连接状态查看

    2. **TCP连接状态**:TCP连接有多种状态,包括LISTEN(监听)、SYN_SENT(同步已发送)、SYN_RECV(同步已接收)、ESTABLISHED(已建立)、FIN_WAIT1/2(等待关闭)、CLOSE_WAIT(等待关闭)、CLOSING(正在关闭)、...

    tcp 连接数设置,以及查看电脑的连接数

    在Windows系统中,你可以使用命令行工具“netstat”来查看当前的TCP连接状态。打开命令提示符并输入`netstat -ano`,这将显示所有活动的TCP连接,包括本地和远程地址,以及对应的进程ID。此外,你还可以通过操作系统...

    labview TCP发送报文,TCP调试助手,断线自动连接

    1. **TCP通信基础**:LabVIEW提供了丰富的TCP/IP函数库,如`TCP Open.vi`用于建立连接,`TCP Write.vi`用于发送数据,`TCP Read.vi`用于接收数据,以及`TCP Close.vi`用于关闭连接。理解这些函数的工作原理是进行TCP...

    TCP和UDP连接

    通过使用TCPView,用户可以查看每个连接的详细信息,包括本地和远程IP地址、端口号、连接状态(如ESTABLISHED、LISTENING等)以及进程ID。这有助于诊断网络问题,找出占用特定端口的程序,或者检查是否有恶意软件...

    详解TCP协议建立连接全过程状态变迁图.doc

    首先,TCP连接的建立始于客户端,它通过发送一个SYN(同步序列编号)段向服务器发起连接请求。此时,客户端进入SYN_SENT状态,表示已发送SYN但尚未收到确认。 服务器接收到SYN后,会回应一个SYN+ACK(同步+确认)段...

    C#取本机TCP及UDP连接列表的代码

    1. `GetExtendedTcpTable`: 这个函数返回一个包含所有活动TCP连接的表格,包括连接的状态(如监听、已建立、关闭等)和连接的详细信息。 2. `GetExtendedUdpTable`: 类似地,这个函数用于获取UDP连接的表格,包含每...

    tcp连接出现close_wait状态?_tcp_close_

    1. **TCP连接状态机** TCP连接有多种状态,包括LISTEN、SYN_SENT、SYN_RECEIVED、ESTABLISHED、CLOSE_WAIT、FIN_WAIT_1、FIN_WAIT_2、TIME_WAIT等。每个状态都代表了连接的不同生命周期阶段。Close_Wait是服务器端...

    获取TCP的连接信息

    Windows操作系统提供了一组API函数,使得程序员能够查询系统中当前活动的TCP连接信息,包括连接的端口号、进程ID以及连接状态等。 首先,要获取TCP连接信息,我们需要了解以下几个关键的Windows API函数: 1. **...

    TCPView监视和管理tcp连接工具

    TCPView是一款由微软系统工具开发团队出品的小巧而强大的网络监控工具,主要用于实时监测和管理计算机上的TCP连接状态。这款工具对于系统管理员、开发者以及普通用户来说都非常实用,可以帮助他们了解系统的网络活动...

    TCP状态机详细描述

    通过对TCP状态机的学习,我们不仅可以深入了解TCP连接的建立和关闭过程,还能够更好地处理网络编程中遇到的各种问题。希望本文能够帮助读者深入理解TCP状态机的工作机制,为进一步学习网络协议打下坚实的基础。

Global site tag (gtag.js) - Google Analytics