xe2vherd
V2EX  ›  问与答

tcp 是可靠连接,为什么有时候网络上下载的压缩文件会无法解压

  •  1
     
  •   xe2vherd · Aug 16, 2018 · 3400 views
    This topic created in 2857 days ago, the information mentioned may be changed or developed.
    16 replies    2018-08-17 09:55:31 +08:00
    znood
        1
    znood  
       Aug 16, 2018 via iPhone   ❤️ 1
    下载文件又不是一个 tcp 请求,可能是服务端或者下载工具的问题
    hahasong
        2
    hahasong  
       Aug 16, 2018 via iPhone   ❤️ 1
    下载工具的校验和填充逻辑 bug
    kurtrossel
        3
    kurtrossel  
       Aug 16, 2018
    不知道从什么版本开始,新版 WinRAR 做出来的压缩包用旧版解压会报错

    升级 WinRAR 到最新版可解

    我猜你可能遇到的是这问题

    并非污染或者劫持所致,我也困惑了很久......
    quickma
        4
    quickma  
       Aug 16, 2018
    多看书,计算机网络。
    DevNet
        5
    DevNet  
       Aug 16, 2018   ❤️ 1
    这么说吧,四层的 TCP 是有可靠的重传机制,但是 7 层的应用是有超时时间的,不可能一直等待 TCP 重传。毕竟三层的 IP 层面实现的是尽力而为的转发,链路质量差的时候谁也没办法。
    yksoft1
        6
    yksoft1  
       Aug 16, 2018   ❤️ 1
    你换个内存条看看
    nfroot
        7
    nfroot  
       Aug 16, 2018   ❤️ 1
    @kurtrossel Winrar5.5 开始默认设置就是 rar5 格式了。所以我给大家都装 5.4 然后禁止升级,哈哈哈
    night98
        8
    night98  
       Aug 16, 2018 via Android
    劫持,校验出错,非 http 下载,等等等等
    stephenyin
        9
    stephenyin  
       Aug 16, 2018
    大多数下载其实并不用 tcp, 用 tcp 的下载不会太快.
    kokutou
        10
    kokutou  
       Aug 16, 2018 via Android
    因为百度网盘客户端做的太垃圾了。

    再就是上面说的 WinRAR5 的问题。
    zpf124
        11
    zpf124  
       Aug 16, 2018   ❤️ 1
    最简单能想到的容易出错的情况是 多线程下载和 p2p 传输。

    当年迅雷 百度云 下载出错了一点都不奇怪。
    首先 多线程的情况下,每个线程的 tcp 连接都是对的,但网络不稳定没准某个线程的链接就断开了,而它对应的线程数据还不一定都写到硬盘里了,没准写一半时间太长这个没有网络的线程就被 kill 了。

    p2p 就更容易, 万一 这么多个源里,有一个人那他自己的文件本身就是错的, 你收到的了之后 tcp 只能验证和他一样,但一样那也是错的。
    paparika
        12
    paparika  
       Aug 16, 2018
    难道不是数据源头(存储器)的问题?
    lychnis
        13
    lychnis  
       Aug 16, 2018
    这根 tcp 啥关系...
    mrzx
        14
    mrzx  
       Aug 16, 2018   ❤️ 1
    楼上有个人说对了。
    可能只是 RAR 换压缩算法了。

    最新的 winrar 默认用 v5 版本的新压缩方法,老式 winrar 版本老的根本无法顺利解压,直接报错。
    Hk4Fun
        15
    Hk4Fun  
       Aug 16, 2018 via Android
    上次用 idm 下载百度云一个 4.3G 的压缩文件就是这样
    flynaj
        16
    flynaj  
       Aug 17, 2018 via Android
    可能源数据就是错的,迅雷下载的经常这样
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2846 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 93ms · UTC 14:13 · PVG 22:13 · LAX 07:13 · JFK 10:13
    ♥ Do have faith in what you're doing.