您现在的位置: 爱51代码网 >> 范文 >> 文章正文
TIME_WAIT状态下对接收到的数据包如何处理
p;   /* Check TIME-WAIT sockets first. */ 
24.    sk_nulls_for_each(sk2, node, &head->twchain) { 
25.        tw = inet_twsk(sk2); 
26. 
27. 
28.        if (INET_TW_MATCH(sk2, net, hash, acookie, 
29.                    saddr, daddr, ports, dif)) { 
30.            if (twsk_unique(sk, sk2, twp)) 
31.                goto unique; 
32.            else 
33.                goto not_unique; 
34.        } 
35.    } 
36.    tw = NULL; 
37. 
38.    /* And established part... */ 
39.    sk_nulls_for_each(sk2, node, &head->chain) { 
40.        if (INET_MATCH(sk2, net, hash, acookie, 
41.                    saddr, daddr, ports, dif)) 
42.            goto not_unique; 
43.    } 
44. 
45.unique: 
46.    ...... 
47.    return 0; 
48. 
49.not_unique: 
50.    spin_unlock(lock); 
51.    return -EADDRNOTAVAIL; 
52.} 
/* called with local bh disabled */
static int __inet_check_established(struct inet_timewait_death_row *death_row,
                    struct sock *sk, __u16 lport,
                    struct inet_timewait_sock **twp)
{
    struct inet_hashinfo *hinfo = death_row->hashinfo;
    struct inet_sock *inet = inet_sk(sk);
    __be32 daddr = inet->rcv_saddr;
    __be32 saddr = inet->daddr;
    int dif = sk->sk_bound_dev_if;
    INET_ADDR_COOKIE(acookie, saddr, daddr)
    const __portpair ports = INET_COMBINED_PORTS(inet->dport, lport);
    struct net *net = sock_net(sk);
    unsigned int hash = inet_ehashfn(net, daddr, lport, saddr, inet->dport);
    struct inet_ehash_bucket *head = inet_ehash_bucket(hinfo, has

 << 上一页  [11] [12] [13] [14] [15] 下一页

  • 上一篇文章:

  • 下一篇文章: 没有了
  • 最新文章 热点文章 相关文章
    sharepoint 2010 获取用户信息Us
    设计包含max函数的队列
    随机从数组中取出指定的不重复的
    mysql主从同步延迟方案解决的学习
    青岛科学六年级下册教材分析
    生日旅行总结
    中小板生日快乐随感
    送生日快乐桑葚乳酪小蛋糕
    写给女儿的生日快乐
    总分公司财务核算
    mysql主从同步延迟方案解决的学习
    生日旅行总结
    中小板生日快乐随感
    送生日快乐桑葚乳酪小蛋糕
    写给女儿的生日快乐
    总分公司财务核算
    恢复使用繁体字可行性研究报告
    保险受益人制度相关问题的探讨
    初中生地理读图能力培养的研究
    搞笑生日祝福
    The layout of PID & PORT i
    hadoop核心逻辑shuffle代码分
    The layout of PID & PORT i
    The layout of PID & PORT i
    The layout of PID & PORT i
    MapReduce错误任务失败处理 
    Oracle恢复内部原理(介质恢
    在 Oracle 中如何确定远程 s
    为什么RHEL 6上没有ASMLIB?
    sharepoint 2010 获取用户信
     



    设为首页 | 加入收藏 | 网站地图 | 友情链接 |