`
littcai
  • 浏览: 247981 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
社区版块
存档分类
最新评论

TCP状态转移要点

阅读更多

    TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于假死状态,连接本身占用的资源不会被释放。网络服务器程序要同时管理大量连接,所以很有必要保证无用连接完全断开,否则大量僵死的连接会浪费许多服务器资源。在众多TCP状态中,最值得注意的状态有两个:CLOSE_WAIT和TIME_WAIT。  

1、LISTENING状态
  FTP服务启动后首先处于侦听(LISTENING)状态。
2、ESTABLISHED状态
  ESTABLISHED的意思是建立连接。表示两台机器正在通信。
3、CLOSE_WAIT
    对方主动关闭连接或者网络异常导致连接中断,这时我方的状态会变成CLOSE_WAIT 此时我方要调用close()来使得连接正确关闭
4、TIME_WAIT
    我方主动调用close()断开连接,收到对方确认后状态变为TIME_WAIT。TCP协议规定TIME_WAIT状态会一直持续2MSL(即两倍的分段最大生存期),以此来确保旧的连接状态不会对新连接产生影响。处于TIME_WAIT状态的连接占用的资源不会被内核释放,所以作为服务器,在可能的情况下,尽量不要主动断开连接,以减少TIME_WAIT状态造成的资源浪费。
    目前有一种避免TIME_WAIT资源浪费的方法,就是关闭socket的LINGER选项。但这种做法是TCP协议不推荐使用的,在某些情况下这个操作可能会带来错误。

分享到:
评论

相关推荐

    网络工程师应掌握的50个路由器知识要点

    以下是对"网络工程师应掌握的50个路由器知识要点"的详细解读: 1. **路由器基本概念**:了解路由器的定义,它是网络层设备,负责不同网络之间的数据包转发。 2. **OSI模型与TCP/IP模型**:理解这两者在网络中的...

    opencapwap1.5源码

    2. **状态迁移**:CAPWAP接入点的状态机管理是核心部分,通过状态转移函数实现不同状态下的行为,如从DISCOVERY状态到ASSOCIATED状态的转换。 3. **错误处理**:源码中应包含错误检测和恢复机制,如超时重试、错误...

    通信网复习及部分作业

    - **状态转移图、系统方程和稳态方程:** - 描述系统在不同状态之间的转移。 - 通过方程求解系统状态的概率分布。 - **平均队列长Ls、排队数Lq、逗留时间S、排队等待时间W:** - **平均队列长Ls:** 平均在系统...

    编程语言JavaHTTPGETPOST知识点.pdf

    REST代表“代表性状态转移”(Representational State Transfer),它是一种软件架构风格,用于设计网络应用程序。RESTful Web Services是遵循REST架构风格的Web服务,其核心思想是将网络上的所有内容视为资源,并...

    Visual C++游戏开发经典案例详解 源代码

    开发者可能需要使用二维数组表示地图,设计玩家和箱子的状态转移规则,以及解决谜题的算法。 5. **贪吃蛇**:贪吃蛇游戏需要处理蛇的移动、食物生成、碰撞检测和游戏结束条件。涉及的知识点包括动态更新游戏状态,...

    基于Java的实例源码-多播通讯框架 JGroups.zip

    2. **API使用**:研究源码中如何使用JGroups的API创建通道(Channel)、发送和接收消息,以及进行状态转移等操作。 3. **示例程序**:分析示例代码,了解如何初始化和管理JGroups集群,以及如何在实际应用中集成...

    keepalived-1.2.18 Linux版本亲测可用 .zip

    当主服务器失效时,VRRP协议会根据优先级将VIP转移到备份服务器,同时keepalived会监控并记录状态变化,确保在主服务器恢复后能够正确回切。 七、安全与优化 为了提高安全性,可以设置防火墙规则限制VRRP协议的...

    web性能优化(服务器优化).pdf

    在TCP层,优化包括调整TCP的拥塞控制机制,调整TIME_WAIT状态时长,使用TCP_NODELAY等技术减少延迟。 三、Web性能优化技术 1. 缓存优化 缓存技术是提升Web性能的关键技术之一。浏览器端缓存(如使用Cache-Control头...

    SQL 2005 镜像部署

    ### SQL Server 2005 镜像部署关键技术知识点 #### 1. SQL Server 2005 镜像技术概述 SQL Server 2005 镜像技术是...通过本文档提供的详细步骤和技术要点,可以帮助IT人员更好地理解和实现SQL Server 2005的镜像部署。

    Brocade Partner ADX Training_Basic Configuration

    Brocade Partner ADX Training_Basic Configuration 的主要内容覆盖了ServerIron系列产品的核心功能和技术要点,包括第四层至第七层解决方案的基本配置方法、实际应用场景示例以及高可用性设计等方面。通过该培训,...

    虚拟机服务器群集windows2003+存储+配置指南

    2. **iSCSI或光纤通道**:选择合适的协议连接到共享存储,iSCSI适用于TCP/IP网络,而光纤通道提供更高的带宽和更低的延迟。 3. **LUN(逻辑单元号)管理**:合理规划和分配LUN,每个虚拟机应有自己的独立LUN。 4. ...

    DHCP 手把手文档

    为了确保服务的连续性和可靠性,DHCP支持故障转移协议,该协议定义了如何在两台或多台DHCP服务器之间同步状态信息和进行故障检测。 ### 结论 通过以上内容可以看出,DHCP不仅极大地简化了网络管理的工作,还提高了...

    tomcat集群配置文件

    例如,你可以使用Apache Portable Runtime (APR)的`mod_lb_module`进行负载均衡,或者使用JGroups实现基于TCP的通信。 2. **context.xml**:这个文件通常用于配置全局的Context信息,如数据源。在集群环境中,确保...

    2010文都计算机统考讲义

    - TCP/IP协议族:深入研究TCP和UDP协议,以及IP地址、子网掩码、路由选择等基础知识。 - 网络安全:了解加密技术、身份认证和网络安全策略。 - 互联网应用:分析HTTP、FTP、DNS等常见网络应用协议的工作机制。 3...

    ORACLE RAC 在 LINUX 上的部署

    在Linux环境下部署Oracle RAC,需要掌握一系列的技术要点,包括操作系统配置、网络规划、存储解决方案以及Oracle Grid Infrastructure安装与配置。 首先,**操作系统准备**至关重要。Linux系统应选择Oracle认证的...

    美河制作.六个月成为网络专家.可用性管理.存储系统高可用性

    2. **监控与报警**:实时监控系统状态,一旦发现异常,立即触发报警,以便快速响应。 3. **故障转移和冗余设计**:通过构建备份系统和热备件,确保单点故障不会导致整个系统崩溃。 4. **容量规划**:预测和规划...

    电梯与自动化仓储的对接.pdf

    电梯是自动化仓储系统中实现楼层间货物快速转移的重要工具。它连接了不同高度的存储层,使得机器人或输送带能够将货物送至指定位置。通过精确控制和高效调度,电梯能够确保仓储系统的流畅运行,减少等待时间,提高...

    VB WEB远程控制

    Web服务通常使用SOAP(简单对象访问协议)或REST(表述性状态转移)等标准来交换数据,使得不同平台和系统间的互操作成为可能。在VB中,可以利用ASP.NET或者XML Web Services来创建和消费这些服务。 文件...

    keepalived 详细配置文件

    - `protocol TCP`:协议类型为TCP。 - `real_server 192.168.1.12 80`:定义真实服务器的IP地址和端口,并可配置健康检查参数。 综上所述,通过详细的配置步骤和示例,可以清楚地了解如何使用LVS与Keepalived构建...

Global site tag (gtag.js) - Google Analytics