#include <senf/Ext/NetEmu/WLAN/nl80211-new.h>
Public Attributes | |
__u32 | start |
__u32 | offset |
__u32 | len |
DOC: TCP connection wakeup
Some devices can establish a TCP connection in order to be woken up by a packet coming in from outside their network segment, or behind NAT. If configured, the device will establish a TCP connection to the given service, and periodically send data to that service. The first data packet is usually transmitted after SYN/ACK, also ACKing the SYN/ACK. The data packets can optionally include a (little endian) sequence number (in the TCP payload!) that is generated by the device, and, also optionally, a token from a list of tokens. This serves as a keep-alive with the service, and for NATed connections, etc.
During this keep-alive period, the server doesn't send any data to the client. When receiving data, it is compared against the wakeup pattern (and mask) and if it matches, the host is woken up. Similarly, if the connection breaks or cannot be established to start with, the host is also woken up.
Developer's note: ARP offload is required for this, otherwise TCP response packets might not go through correctly. struct nl80211_wowlan_tcp_data_seq - WoWLAN TCP data sequence : starting value : offset of sequence number in packet : length of the sequence value to write, 1 through 4
Note: don't confuse with the TCP sequence number(s), this is for the keepalive packet payload. The actual value is written into the packet in little endian.
Definition at line 4130 of file nl80211-new.h.
__u32 nl80211_wowlan_tcp_data_seq::len |
Definition at line 4131 of file nl80211-new.h.
__u32 nl80211_wowlan_tcp_data_seq::offset |
Definition at line 4131 of file nl80211-new.h.
__u32 nl80211_wowlan_tcp_data_seq::start |
Definition at line 4131 of file nl80211-new.h.