2010-01-30 21:34:55
和前面一样,被动连接方也进入tcp_v4_hnd_req函数处理,不过由于前面受到SYN时已经建立了连接请求(假设SYNCOOKIES没启用),
inet_csk_search_req函数返回建立的连接请求结构request_sock。
流程进入tcp_check_req处理
该函数的前面部分进行各种检查,然后通过后调用icsk_af_ops的syn_recv_sock操作符也即tcp_v4_syn_recv_sock函数,它的主要作用是
从request_sock中构造新的sock结构,并赋值相应的成员。
再看看tcp_create_openreq_child函数
从tcp_check_req返回后,流程进入tcp_child_process
随后再次进入tcp_recv_state_process