mirror of https://gitee.com/openkylin/linux.git
mptcp: add ADD_ADDR related mibs
This patch added two mibs for ADD_ADDR, MPTCP_MIB_ADDADDR for receiving of the ADD_ADDR suboption with echo-flag=0, and MPTCP_MIB_ECHOADD for receiving the ADD_ADDR suboption with echo-flag=1. Reviewed-by: Mat Martineau <mathew.j.martineau@linux.intel.com> Co-developed-by: Paolo Abeni <pabeni@redhat.com> Signed-off-by: Paolo Abeni <pabeni@redhat.com> Signed-off-by: Geliang Tang <geliangtang@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
6a6c05a8b0
commit
a877de0671
|
@ -27,6 +27,8 @@ static const struct snmp_mib mptcp_snmp_list[] = {
|
||||||
SNMP_MIB_ITEM("OFOMerge", MPTCP_MIB_OFOMERGE),
|
SNMP_MIB_ITEM("OFOMerge", MPTCP_MIB_OFOMERGE),
|
||||||
SNMP_MIB_ITEM("NoDSSInWindow", MPTCP_MIB_NODSSWINDOW),
|
SNMP_MIB_ITEM("NoDSSInWindow", MPTCP_MIB_NODSSWINDOW),
|
||||||
SNMP_MIB_ITEM("DuplicateData", MPTCP_MIB_DUPDATA),
|
SNMP_MIB_ITEM("DuplicateData", MPTCP_MIB_DUPDATA),
|
||||||
|
SNMP_MIB_ITEM("AddAddr", MPTCP_MIB_ADDADDR),
|
||||||
|
SNMP_MIB_ITEM("EchoAdd", MPTCP_MIB_ECHOADD),
|
||||||
SNMP_MIB_SENTINEL
|
SNMP_MIB_SENTINEL
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -20,6 +20,8 @@ enum linux_mptcp_mib_field {
|
||||||
MPTCP_MIB_OFOMERGE, /* Segments merged in OoO queue */
|
MPTCP_MIB_OFOMERGE, /* Segments merged in OoO queue */
|
||||||
MPTCP_MIB_NODSSWINDOW, /* Segments not in MPTCP windows */
|
MPTCP_MIB_NODSSWINDOW, /* Segments not in MPTCP windows */
|
||||||
MPTCP_MIB_DUPDATA, /* Segments discarded due to duplicate DSS */
|
MPTCP_MIB_DUPDATA, /* Segments discarded due to duplicate DSS */
|
||||||
|
MPTCP_MIB_ADDADDR, /* Received ADD_ADDR with echo-flag=0 */
|
||||||
|
MPTCP_MIB_ECHOADD, /* Received ADD_ADDR with echo-flag=1 */
|
||||||
__MPTCP_MIB_MAX
|
__MPTCP_MIB_MAX
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
#include <net/tcp.h>
|
#include <net/tcp.h>
|
||||||
#include <net/mptcp.h>
|
#include <net/mptcp.h>
|
||||||
#include "protocol.h"
|
#include "protocol.h"
|
||||||
|
#include "mib.h"
|
||||||
|
|
||||||
static bool mptcp_cap_flag_sha256(u8 flags)
|
static bool mptcp_cap_flag_sha256(u8 flags)
|
||||||
{
|
{
|
||||||
|
@ -888,8 +889,12 @@ void mptcp_incoming_options(struct sock *sk, struct sk_buff *skb,
|
||||||
addr.addr6 = mp_opt.addr6;
|
addr.addr6 = mp_opt.addr6;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
if (!mp_opt.echo)
|
if (!mp_opt.echo) {
|
||||||
mptcp_pm_add_addr_received(msk, &addr);
|
mptcp_pm_add_addr_received(msk, &addr);
|
||||||
|
MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_ADDADDR);
|
||||||
|
} else {
|
||||||
|
MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_ECHOADD);
|
||||||
|
}
|
||||||
mp_opt.add_addr = 0;
|
mp_opt.add_addr = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue