V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
? Ubuntu
? Fedora
? CentOS
中文资源站
? 网易开源镜像站
hzt1234h
V2EX  ?  Linux

关于 TCP 连接意外断开重连的问题

  •  
  •   hzt1234h · 2020-08-04 09:39:09 +08:00 · 2708 次点击
    这是一个创建于 1378 天前的主题,其中的信息可能已经有所发展或是发生改变。

    腾讯云最新优惠活动来了:云产品限时1折,云服务器低至88元/年 ,点击这里立即抢购:9i0i.cn/qcloud,更有2860元代金券免费领取,付款直接抵现金用,点击这里立即领取:9i0i.cn/qcloudquan

    (福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

    关于 TCP 连接意外断开,如 kill 指令将程序杀死,然后再次启动程序,能否建立连接呢?还有就是这其中会不会有什么问题,会不会接收到以前的数据

    5 条回复  ?  2020-08-04 11:23:32 +08:00
    opengps
        1
    opengps  
       2020-08-04 10:03:12 +08:00
    1,如果设计了自动重连,实际上已经是新的连接,这取决于软件设计
    2,不会收到以前数据,一个 socket 断开之后,一段时间内( 2 倍的某个值,具体叫啥记不清了)是不会重新使用该端口的
    BingoXuan
        2
    BingoXuan  
       2020-08-04 10:08:00 +08:00
    不会,当你重新启动程序之后资源就重新配置了。最简单方法是服务端记录客户端 session 。
    hzt1234h
        3
    hzt1234h  
    OP
       2020-08-04 11:04:06 +08:00
    大佬提醒我了,忘记同一个端口是不会紧连着使用的,看来 TCP 卷一又要重新看了[笑哭]
    hzt1234h
        4
    hzt1234h  
    OP
       2020-08-04 11:04:30 +08:00
    @opengps
    大佬提醒我了,忘记同一个端口是不会紧连着使用的,看来 TCP 卷一又要重新看了[笑哭]
    ChristopherWu
        5
    ChristopherWu  
       2020-08-04 11:23:32 +08:00
    TCP 只能保证一定时间内重发丢了的数据,收到了 RST 包后断开了,就没办法恢复链接了。需要上层来保证
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1586 人在线   最高记录 6547   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 23:56 · PVG 07:56 · LAX 16:56 · JFK 19:56
    Developed with CodeLauncher
    ? Do have faith in what you're doing.


    http://www.vxiaotou.com