Skip to content

Commit 6c75806

Browse files
edumazetkuba-moo
authored andcommitted
tcp: add LINUX_MIB_BEYOND_WINDOW
Add a new SNMP MIB : LINUX_MIB_BEYOND_WINDOW Incremented when an incoming packet is received beyond the receiver window. nstat -az | grep TcpExtBeyondWindow Signed-off-by: Eric Dumazet <[email protected]> Reviewed-by: Kuniyuki Iwashima <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Jakub Kicinski <[email protected]>
1 parent 9ca48d6 commit 6c75806

File tree

5 files changed

+5
-0
lines changed

5 files changed

+5
-0
lines changed

Documentation/networking/net_cachelines/snmp.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ unsigned_long LINUX_MIB_TIMEWAITRECYCLED
3636
unsigned_long LINUX_MIB_TIMEWAITKILLED
3737
unsigned_long LINUX_MIB_PAWSACTIVEREJECTED
3838
unsigned_long LINUX_MIB_PAWSESTABREJECTED
39+
unsigned_long LINUX_MIB_BEYOND_WINDOW
3940
unsigned_long LINUX_MIB_TSECR_REJECTED
4041
unsigned_long LINUX_MIB_PAWS_OLD_ACK
4142
unsigned_long LINUX_MIB_PAWS_TW_REJECTED

include/net/dropreason-core.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,7 @@ enum skb_drop_reason {
309309
/**
310310
* @SKB_DROP_REASON_TCP_INVALID_END_SEQUENCE:
311311
* Not acceptable END_SEQ field.
312+
* Corresponds to LINUX_MIB_BEYOND_WINDOW.
312313
*/
313314
SKB_DROP_REASON_TCP_INVALID_END_SEQUENCE,
314315
/**

include/uapi/linux/snmp.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,7 @@ enum
186186
LINUX_MIB_TIMEWAITKILLED, /* TimeWaitKilled */
187187
LINUX_MIB_PAWSACTIVEREJECTED, /* PAWSActiveRejected */
188188
LINUX_MIB_PAWSESTABREJECTED, /* PAWSEstabRejected */
189+
LINUX_MIB_BEYOND_WINDOW, /* BeyondWindow */
189190
LINUX_MIB_TSECRREJECTED, /* TSEcrRejected */
190191
LINUX_MIB_PAWS_OLD_ACK, /* PAWSOldAck */
191192
LINUX_MIB_PAWS_TW_REJECTED, /* PAWSTimewait */

net/ipv4/proc.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,7 @@ static const struct snmp_mib snmp4_net_list[] = {
189189
SNMP_MIB_ITEM("TWKilled", LINUX_MIB_TIMEWAITKILLED),
190190
SNMP_MIB_ITEM("PAWSActive", LINUX_MIB_PAWSACTIVEREJECTED),
191191
SNMP_MIB_ITEM("PAWSEstab", LINUX_MIB_PAWSESTABREJECTED),
192+
SNMP_MIB_ITEM("BeyondWindow", LINUX_MIB_BEYOND_WINDOW),
192193
SNMP_MIB_ITEM("TSEcrRejected", LINUX_MIB_TSECRREJECTED),
193194
SNMP_MIB_ITEM("PAWSOldAck", LINUX_MIB_PAWS_OLD_ACK),
194195
SNMP_MIB_ITEM("PAWSTimewait", LINUX_MIB_PAWS_TW_REJECTED),

net/ipv4/tcp_input.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5900,6 +5900,7 @@ static bool tcp_validate_incoming(struct sock *sk, struct sk_buff *skb,
59005900
if (!th->rst) {
59015901
if (th->syn)
59025902
goto syn_challenge;
5903+
NET_INC_STATS(sock_net(sk), LINUX_MIB_BEYOND_WINDOW);
59035904
if (!tcp_oow_rate_limited(sock_net(sk), skb,
59045905
LINUX_MIB_TCPACKSKIPPEDSEQ,
59055906
&tp->last_oow_ack_time))

0 commit comments

Comments
 (0)