zoukankan      html  css  js  c++  java
  • 调用 close 函数,设置了 SO_LINGER 为 true

    调用 close 函数,设置了 SO_LINGER 为 true
    如果设置 SO_LINGER 为 true,linger 设置为 0,当调用 socket.close() 时, close 函数会立即返回,同时丢弃缓冲区内所有数据并立即发送 RST 包重置连接。在 SO_LINGER 那一节有详细介绍这个参数的含义。
    
    node2:/root/test#cat t3.py 
    import socket
    import time
    import struct
    s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    s.setsockopt(socket.SOL_SOCKET, socket.SO_LINGER,struct.pack('ii', 1, 0))
    
    s.connect(("192.168.137.2",8080))
    s.close()
    node2:/root/test#vim t3.py ^C
    node2:/root/test#python t3.py 
    
    node2:/tmp/newcx#tcpdump -S -i eth1 '((tcp) and  (port 8080) )'
    tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
    listening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes
    11:10:34.122923 IP node2.42450 > node1.webcache: Flags [S], seq 2263623020, win 14600, options [mss 1460,sackOK,TS val 282075817 ecr 0,nop,wscale 7], length 0
    11:10:34.123171 IP node1.webcache > node2.42450: Flags [S.], seq 3165131511, ack 2263623021, win 14480, options [mss 1460,sackOK,TS val 4294825801 ecr 282075817,nop,wscale 6], length 0
    11:10:34.123185 IP node2.42450 > node1.webcache: Flags [.], ack 3165131512, win 115, options [nop,nop,TS val 282075817 ecr 4294825801], length 0
    11:10:34.123448 IP node2.42450 > node1.webcache: Flags [R.], seq 2263623021, ack 3165131512, win 115, options [nop,nop,TS val 282075818 ecr 4294825801], length 0
    
  • 相关阅读:
    一点优化小知识
    网站结构优化之一
    [JOISC 2016 Day 3] 电报
    [HDU 6157] The Karting
    [JOISC 2015 Day2] Keys
    Educational Codeforces Round 107 (Rated for Div. 2)
    [JOISC 2020 Day4] 治疗计划
    CF1131G Most Dangerous Shark
    [APIO2016] 划艇
    [ICPC World Finals 2018] 绿宝石之岛
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13348485.html
Copyright © 2011-2022 走看看