如果客户端仅发送了1个SYN数据包,而不重试并重新发送它,那意味着什么?

时间:2019-04-01 16:53:42

标签: networking tcp

我正在研究一个测试公共/免费代理的项目。它们在大多数情况下太慢且脱机,通常客户端(我的程序)尝试发送SYN数据包,如果服务器未响应,则在这些时间范围内反复尝试〜(1 second, 3.5 seconds, 7 seconds, 15 seconds, 30 seconds)直到我放弃并超时。(reference)。就像这张照片一样

enter image description here

但是,我注意到对于某些代理,我的程序仅发送了1个SYN数据包,并且没有像第一张图片一样尝试重新传输数据包,例如此代理

enter image description here

这是从Wireshark复制的数据包数据

Frame 181: 74 bytes on wire (592 bits), 74 bytes captured (592 bits) on interface 0
Ethernet II, Src: IntelCor_0e:56:34 (18:3d:a2:0e:56:34), Dst: HuaweiTe_b4:03:f3 (58:d7:59:b4:03:f3)
Internet Protocol Version 4, Src: 192.168.1.4, Dst: 94.190.190.254
Transmission Control Protocol, Src Port: 39710, Dst Port: 46269, Seq: 0, Len: 0
    Source Port: 39710
    Destination Port: 46269
    [Stream index: 180]
    [TCP Segment Len: 0]
    Sequence number: 0    (relative sequence number)
    [Next sequence number: 0    (relative sequence number)]
    Acknowledgment number: 0
    1010 .... = Header Length: 40 bytes (10)
    Flags: 0x002 (SYN)
    Window size value: 64240
    [Calculated window size: 64240]
    Checksum: 0x656c [unverified]
    [Checksum Status: Unverified]
    Urgent pointer: 0
    Options: (20 bytes), Maximum segment size, SACK permitted, Timestamps, No-Operation (NOP), Window scale
    [Timestamps]
        [Time since first frame in this TCP stream: 0.000000000 seconds]
        [Time since previous frame in this TCP stream: 0.000000000 seconds]

这是我尝试解决traffic session as .pcapng file的一部分this problem

为什么我的程序没有尝试像图1一样再次重新发送相同的数据包,在TCP中正常吗?

请注意,我是Wireshark和网络领域的新手。

0 个答案:

没有答案