(OK) MIMP

来源:互联网 发布:通信网络集成资质取消 编辑:程序博客网 时间:2024/06/04 19:06
节点1:服务器     mptcp-kmsg-server.txt
节点5:客户端     mptcp-kmsg-client.txt
节点5:客户端 可以正常发送 (112.26.0.5, 112.26.0.1) 数据包,
              但是,不能发送 (112.26.[1-4].5, 112.26.[1-4].1) 数据包。
下面是 内核输出信息,分析这些信息,找原因。


---------------------------------------------------------------------------
112.26.0.1 (16783984)
112.26.1.1 (16849520)
112.26.2.1 (16915056)
112.26.3.1 (16980592)
112.26.4.1 (17046128)

112.26.0.5 (83892848)
112.26.1.5 (83958384)
112.26.2.5 (84023920)
112.26.3.5 (84089456)
112.26.4.5 (84154992)
---------------------------------------------------------------------------
#    Neighbor Cache Entry States.

#define NUD_INCOMPLETE    0x01
#define NUD_REACHABLE    0x02
#define NUD_STALE    0x04
#define NUD_DELAY    0x08
#define NUD_PROBE    0x10
#define NUD_FAILED    0x20

/* Dummy states */
#define NUD_NOARP    0x40
#define NUD_PERMANENT    0x80
#define NUD_NONE    0x00
---------------------------------------------------------------------------

####################################################################################
# 第一次发送数据包 112.26.0.5 (83892848) --> 112.26.0.1 (16783984)
# 状态 (neigh->nud_state) 由 0 变 1 再变 2
#-----------------------------------------------------------------------------------

<6>[  184.275390] mptcp: ip_output: --- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  184.275407] mptcp: ip_finish_output2: 111--- src_addr:83892848  dst_addr:16783984
<6>[  184.275415] mptcp: ip_finish_output2: 222--- src_addr:83892848  dst_addr:16783984 (state:0)
<6>[  184.275418] mptcp: dst_neigh_output: --- 111 (state:0)
<6>[  184.275421] mptcp: dst_neigh_output: --- 333 (state:0) call n->output(n, skb)
<6>[  184.275425] mptcp: neigh_resolve_output: --- 111 src_addr:83892848  dst_addr:16783984 (state:0)
<6>[  184.275428] mptcp: neigh_event_send: --- 222 (state:0) call __neigh_event_send()
<6>[  184.275431] mptcp: __neigh_event_send: - 11 src_addr:83892848  dst_addr:16783984 (state:0)
<6>[  184.275434] mptcp: __neigh_event_send: - 22-1 src_addr:83892848  dst_addr:16783984 (state:0)
<6>[  184.275438] mptcp: __neigh_event_send: - 22-2 src_addr:83892848  dst_addr:16783984 (state:0)
<6>[  184.275441] mptcp: __neigh_event_send: - 22-5 src_addr:83892848  dst_addr:16783984 (state:1)
<6>[  184.275445] mptcp: __neigh_event_send: - 33 src_addr:83892848  dst_addr:16783984 (state:1) (return rc=1)
<6>[  184.275455] mptcp: __dev_queue_xmit: - 1 src_addr:443610840  dst_addr:1280
<6>[  184.275459] mptcp: __dev_queue_xmit: - 2 src_addr:443610840  dst_addr:1280
<6>[  184.275566] mptcp: __dev_queue_xmit: - 8 src_addr:443610840  dst_addr:1280 (out, return 0)
<6>[  184.275590] mptcp: neigh_resolve_output: --- 444 src_addr:83892848  dst_addr:16783984 (state:1) (return 0)
<6>[  184.323037] mptcp: dst_neigh_output: --- 111 (state:40)
<6>[  184.323045] mptcp: dst_neigh_output: --- 222 (state:40) call neigh_hh_output(hh, skb)
<6>[  184.323049] mptcp: __dev_queue_xmit: - 1 src_addr:0  dst_addr:4280745994
<6>[  184.323052] mptcp: __dev_queue_xmit: - 2 src_addr:0  dst_addr:4280745994
<6>[  184.323177] mptcp: __dev_queue_xmit: - 8 src_addr:0  dst_addr:4280745994 (out, return 0)
<6>[  185.277918] mptcp: __dev_queue_xmit: - 1 src_addr:443610840  dst_addr:1280
<6>[  185.277962] mptcp: __dev_queue_xmit: - 2 src_addr:443610840  dst_addr:1280
<6>[  185.278086] mptcp: __dev_queue_xmit: - 8 src_addr:443610840  dst_addr:1280 (out, return 0)
<6>[  185.299543] mptcp: neigh_resolve_output: --- 111 src_addr:83892848  dst_addr:16783984 (state:2)
<6>[  185.299577] mptcp: neigh_event_send: --- 111 (state:2)
<6>[  185.299597] mptcp: neigh_resolve_output: --- 222 src_addr:83892848  dst_addr:16783984 (state:2)
<6>[  185.299617] mptcp: __dev_queue_xmit: - 1 src_addr:83892848  dst_addr:16783984
<6>[  185.299662] mptcp: __dev_queue_xmit: - 2 src_addr:83892848  dst_addr:16783984
<6>[  185.299754] mptcp: __dev_queue_xmit: - 8 src_addr:83892848  dst_addr:16783984 (out, return 0)
<6>[  185.299776] mptcp: neigh_resolve_output: --- 444 src_addr:83892848  dst_addr:16783984 (state:2) (return 0)
<6>[  185.513966] mptcp: __dev_queue_xmit: - 1 src_addr:443610840  dst_addr:525568
<6>[  185.514036] mptcp: __dev_queue_xmit: - 2 src_addr:443610840  dst_addr:525568
<6>[  185.514126] mptcp: __dev_queue_xmit: - 8 src_addr:443610840  dst_addr:525568 (out, return 0)
<6>[  185.600558] mptcp: mptcp_add_sock: token 0x3b8cc3c4 pi 1, src_addr:112.26.0.5:53318 dst_addr:112.26.0.1:33521, cnt_subflows now 1
<6>[  185.600594] mptcp: tcp_send_ack(): call tcp_transmit_skb()

####################################################################################
# 第二次以后,发送数据包 112.26.0.5 (83892848) --> 112.26.0.1 (16783984)
# 状态 (neigh->nud_state) 都为 2
#-----------------------------------------------------------------------------------


# 第 2 次发送数据包

<6>[  185.600598] mptcp: tcp_transmit_skb: 11
<6>[  185.600607] mptcp: ip_local_out: ----- src_addr:112.26.0.5 dst_addr:112.26.0.1 (sk)
<6>[  185.600610] mptcp: ip_local_out: ----- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.600620] mptcp: ip_output: --- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.600626] mptcp: ip_finish_output2: 111--- src_addr:83892848  dst_addr:16783984
<6>[  185.600631] mptcp: ip_finish_output2: 222--- src_addr:83892848  dst_addr:16783984 (state:2)
<6>[  185.600633] mptcp: dst_neigh_output: --- 111 (state:2)
<6>[  185.600636] mptcp: dst_neigh_output: --- 222 (state:2) call neigh_hh_output(hh, skb)
<6>[  185.600640] mptcp: __dev_queue_xmit: - 1 src_addr:83892848  dst_addr:16783984
<6>[  185.600644] mptcp: __dev_queue_xmit: - 2 src_addr:83892848  dst_addr:16783984
<6>[  185.600682] mptcp: __dev_queue_xmit: - 8 src_addr:83892848  dst_addr:16783984 (out, return 0)
<6>[  185.600685] mptcp: tcp_transmit_skb: 22 -- err: 0
<6>[  185.600689] mptcp: tcp_transmit_skb: 22 -- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.600693] mptcp: tcp_transmit_skb: 22 -- src_addr:112.26.0.5:53318 dst_addr:112.26.0.1:33521 -- len(94) - data_len(0) (sk)
<6>[  185.600696] mptcp: tcp_transmit_skb: 22 -- src_addr:112.26.0.5:53318 dst_addr:112.26.0.1:33521 -- len(94) - data_len(0) (tp)
<6>[  185.600703] mptcp: full_mesh_new_session: i = 124
<6>[  185.600706] mptcp: full_mesh_new_session: locaddr0 = 0.0.0.0
<6>[  185.600709] mptcp: full_mesh_new_session: locaddr1 = 112.26.0.5
<6>[  185.600712] mptcp: full_mesh_new_session: locaddr2 = 112.26.1.5
<6>[  185.600714] mptcp: full_mesh_new_session: locaddr3 = 112.26.2.5
<6>[  185.600717] mptcp: full_mesh_new_session: locaddr4 = 112.26.3.5
<6>[  185.600720] mptcp: full_mesh_new_session: locaddr5 = 112.26.4.5
<6>[  185.600723] mptcp: full_mesh_new_session: locaddr6 = 112.26.0.5
<6>[  185.600726] mptcp: full_mesh_new_session: locaddr7 = 0.0.0.0
<6>[  185.600732] mptcp: tcp_send_ack(): call tcp_transmit_skb()



# 第 3 次发送数据包

<6>[  185.600734] mptcp: tcp_transmit_skb: 11
<6>[  185.600739] mptcp: ip_local_out: ----- src_addr:112.26.0.5 dst_addr:112.26.0.1 (sk)
<6>[  185.600742] mptcp: ip_local_out: ----- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.600749] mptcp: ip_output: --- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.600753] mptcp: ip_finish_output2: 111--- src_addr:83892848  dst_addr:16783984
<6>[  185.600757] mptcp: ip_finish_output2: 222--- src_addr:83892848  dst_addr:16783984 (state:2)
<6>[  185.600760] mptcp: dst_neigh_output: --- 111 (state:2)
<6>[  185.600763] mptcp: dst_neigh_output: --- 222 (state:2) call neigh_hh_output(hh, skb)
<6>[  185.600766] mptcp: __dev_queue_xmit: - 1 src_addr:83892848  dst_addr:16783984
<6>[  185.600769] mptcp: __dev_queue_xmit: - 2 src_addr:83892848  dst_addr:16783984
<6>[  185.600793] mptcp: __dev_queue_xmit: - 8 src_addr:83892848  dst_addr:16783984 (out, return 0)
<6>[  185.600796] mptcp: tcp_transmit_skb: 22 -- err: 0
<6>[  185.600799] mptcp: tcp_transmit_skb: 22 -- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.600803] mptcp: tcp_transmit_skb: 22 -- src_addr:112.26.0.5:53318 dst_addr:112.26.0.1:33521 -- len(82) - data_len(0) (sk)
<6>[  185.600804] mptcp: tcp_transmit_skb: 22 -- src_addr:112.26.0.5:53318 dst_addr:112.26.0.1:33521 -- len(82) - data_len(0) (tp)
<6>[  185.600897] mptcp: tcp_send_ack(): call tcp_transmit_skb()



# 第 4 次发送数据包

<6>[  185.600900] mptcp: tcp_transmit_skb: 11
<6>[  185.600907] mptcp: ip_local_out: ----- src_addr:112.26.0.5 dst_addr:112.26.0.1 (sk)
<6>[  185.600910] mptcp: ip_local_out: ----- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.600919] mptcp: ip_output: --- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.600925] mptcp: ip_finish_output2: 111--- src_addr:83892848  dst_addr:16783984
<6>[  185.600932] mptcp: ip_finish_output2: 222--- src_addr:83892848  dst_addr:16783984 (state:2)
<6>[  185.600938] mptcp: dst_neigh_output: --- 111 (state:2)
<6>[  185.600941] mptcp: dst_neigh_output: --- 222 (state:2) call neigh_hh_output(hh, skb)
<6>[  185.600945] mptcp: __dev_queue_xmit: - 1 src_addr:83892848  dst_addr:16783984
<6>[  185.600949] mptcp: __dev_queue_xmit: - 2 src_addr:83892848  dst_addr:16783984
<6>[  185.600977] mptcp: __dev_queue_xmit: - 8 src_addr:83892848  dst_addr:16783984 (out, return 0)
<6>[  185.600981] mptcp: tcp_transmit_skb: 22 -- err: 0
<6>[  185.600985] mptcp: tcp_transmit_skb: 22 -- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.600989] mptcp: tcp_transmit_skb: 22 -- src_addr:112.26.0.5:53318 dst_addr:112.26.0.1:33521 -- len(82) - data_len(0) (sk)
<6>[  185.600993] mptcp: tcp_transmit_skb: 22 -- src_addr:112.26.0.5:53318 dst_addr:112.26.0.1:33521 -- len(82) - data_len(0) (tp)
<6>[  185.600998] mptcp: tcp_send_ack(): call tcp_transmit_skb()


# 第 5 次发送数据包

<6>[  185.601001] mptcp: tcp_transmit_skb: 11
<6>[  185.601005] mptcp: ip_local_out: ----- src_addr:112.26.0.5 dst_addr:112.26.0.1 (sk)
<6>[  185.601008] mptcp: ip_local_out: ----- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.601014] mptcp: ip_output: --- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.601018] mptcp: ip_finish_output2: 111--- src_addr:83892848  dst_addr:16783984
<6>[  185.601021] mptcp: ip_finish_output2: 222--- src_addr:83892848  dst_addr:16783984 (state:2)
<6>[  185.601024] mptcp: dst_neigh_output: --- 111 (state:2)
<6>[  185.601027] mptcp: dst_neigh_output: --- 222 (state:2) call neigh_hh_output(hh, skb)
<6>[  185.601031] mptcp: __dev_queue_xmit: - 1 src_addr:83892848  dst_addr:16783984
<6>[  185.601034] mptcp: __dev_queue_xmit: - 2 src_addr:83892848  dst_addr:16783984
<6>[  185.601053] mptcp: __dev_queue_xmit: - 8 src_addr:83892848  dst_addr:16783984 (out, return 0)
<6>[  185.601056] mptcp: tcp_transmit_skb: 22 -- err: 0
<6>[  185.601059] mptcp: tcp_transmit_skb: 22 -- src_addr:83892848  dst_addr:16783984 (skb)
<6>[  185.601063] mptcp: tcp_transmit_skb: 22 -- src_addr:112.26.0.5:53318 dst_addr:112.26.0.1:33521 -- len(82) - data_len(0) (sk)
<6>[  185.601067] mptcp: tcp_transmit_skb: 22 -- src_addr:112.26.0.5:53318 dst_addr:112.26.0.1:33521 -- len(82) - data_len(0) (tp)
<6>[  185.601072] mptcp: tcp_send_ack(): call tcp_transmit_skb()