/linux-6.8/Documentation/networking/ |
D | tcp_ao.rst | 4 TCP Authentication Option Linux implementation (RFC5925) 7 TCP Authentication Option (TCP-AO) provides a TCP extension aimed at verifying 8 segments between trusted peers. It adds a new TCP header option with 10 of a TCP segment using a hashing function with a password known to both peers. 11 The intent of TCP-AO is to deprecate TCP-MD5 providing better security, 17 .. table:: Short and Limited Comparison of TCP-AO and TCP-MD5 20 | | TCP-MD5 | TCP-AO | 31 | | |TCP header permitted. | 34 |TCP connection | | | 45 |traffic-crossing | |includes TCP ports. | [all …]
|
D | kcm.rst | 8 interface over TCP for generic application protocols. With KCM an application 9 can efficiently send and receive application protocol messages over TCP using 31 | TCP sock | | TCP sock | | TCP sock | | TCP sock | | TCP sock | 46 written on a KCM socket are sent atomically on an appropriate TCP socket. 47 Similarly, in the receive path, messages are constructed on each TCP socket 50 TCP sockets & Psocks 53 TCP sockets may be bound to a KCM multiplexor. A Psock structure is allocated 54 for each bound TCP socket, this structure holds the state for constructing 60 Each multiplexor assumes that all attached TCP connections are to the same 73 Messages are sent over a TCP stream with some application protocol message [all …]
|
D | snmp_counter.rst | 32 The number of packets delivers to the upper layer protocols. E.g. TCP, UDP, 249 General TCP counters 257 The number of packets received by the TCP layer. As mentioned in 259 error, invalid TCP header and so on. Only one error won't be included: 263 packets would be delivered to the TCP layer, but the TCP layer will discard 274 The number of packets sent by the TCP layer. As mentioned in RFC1213, 286 It means the TCP layer sends a SYN, and come into the SYN-SENT 296 It means the TCP layer receives a SYN, replies a SYN+ACK, come into 301 When packets are received by the TCP layer and are not be read by the 302 application, the TCP layer will try to merge them. This counter [all …]
|
D | tls-offload.rst | 10 Linux kernel provides TLS connection offload infrastructure. Once a TCP 29 * Full TCP NIC offload mode (``TLS_HW_RECORD``) - mode of operation where 31 with its own TCP handling, it is not usable in production environments 43 mode) and then hands the modified scatter list to the TCP layer. From this 44 point on the TCP stack proceeds as normal. 56 :c:type:`struct sk_buff <sk_buff>`. The packets reach the TCP stack and 101 which TCP sequence number corresponds to the beginning of the record with 112 number, simplifying TCP sequence number matching. 124 so the initial records' TCP sequence number may be anywhere inside the segment. 135 * expected TCP sequence number [all …]
|
/linux-6.8/net/ipv4/ |
D | Kconfig | 269 bool "IP: TCP syncookie support" 271 Normal TCP/IP networking is open to an attack known as "SYN 278 say Y here, the TCP/IP stack will use a cryptographic challenge 281 is no need for the legitimate users to change their TCP/IP software; 384 bool "IP: ESP in TCP encapsulation (RFC 8229)" 391 TCP/IPv4 sockets. 428 Support for INET (TCP, DCCP, etc) socket monitoring interface used by 470 bool "TCP: advanced congestion control" 472 Support for selection of various TCP congestion control 486 BIC-TCP is a sender-side only change that ensures a linear RTT [all …]
|
D | tcp_lp.c | 3 * TCP Low Priority (TCP-LP) 5 * TCP Low Priority is a distributed algorithm whose goal is to utilize only 7 * bandwidth as targeted by TCP. 11 * the original TCP-LP implementation: 26 * http://www.ece.rice.edu/~akuzma/Doc/akuzma/TCP-LP.pdf 28 * http://www-ece.rice.edu/networks/TCP-LP/ 34 * http://tcp-lp-mod.sourceforge.net/ 38 #include <net/tcp.h> 50 * TCP-LP's state flags. 62 * @flag: TCP-LP state flag [all …]
|
D | tcp_westwood.c | 3 * TCP Westwood+: end-to-end bandwidth estimation for TCP 5 * Angelo Dell'Aera: author of the first version of TCP Westwood+ in Linux 2.4 11 * "TCP Westwood: bandwidth estimation for TCP" Proc. ACM Mobicom 2001 14 * "Performance evaluation of New Reno, Vegas, Westwood+ TCP" ACM Computer 18 * "Linux 2.4 Implementation of Westwood+ TCP with Rate-Halving : 29 #include <net/tcp.h> 31 /* TCP Westwood structure */ 46 /* TCP Westwood functions and constants */ 52 * This function initializes fields used in TCP Westwood+, 212 * TCP Westwood [all …]
|
/linux-6.8/net/netfilter/ |
D | nf_conntrack_proto_tcp.c | 12 #include <linux/tcp.h> 19 #include <net/tcp.h> 91 /* What TCP flags are set from RST/SYN/FIN/ACK. */ 102 * The TCP state transition table needs a few words... 271 seq_printf(s, "%s ", tcp_conntrack_names[ct->proto.tcp.state]); in tcp_print_conntrack() 284 /* TCP connection tracking based on 'Real Stateful TCP Packet Filtering 515 struct ip_ct_tcp *state = &ct->proto.tcp; in tcp_in_window() 581 * RFC 793: "if a TCP is reinitialized ... then it need in tcp_in_window() 586 * syn(-ack) reply, it might differ in seq, ack or tcp options. in tcp_in_window() 605 * Broken TCP stacks, that set ACK in RST packets as well in tcp_in_window() [all …]
|
D | nft_synproxy.c | 4 #include <net/tcp.h> 24 const struct tcphdr *tcp, in nft_synproxy_tcp_options() argument 30 if (tcp->ece && tcp->cwr) in nft_synproxy_tcp_options() 47 const struct tcphdr *tcp, in nft_synproxy_eval_v4() argument 56 if (tcp->syn) { in nft_synproxy_eval_v4() 58 nft_synproxy_tcp_options(opts, tcp, snet, &info, priv); in nft_synproxy_eval_v4() 59 synproxy_send_client_synack(net, skb, tcp, opts); in nft_synproxy_eval_v4() 62 } else if (tcp->ack) { in nft_synproxy_eval_v4() 64 if (synproxy_recv_client_ack(net, skb, tcp, opts, in nft_synproxy_eval_v4() 65 ntohl(tcp->seq))) { in nft_synproxy_eval_v4() [all …]
|
D | nfnetlink_osf.c | 14 #include <linux/tcp.h> 17 #include <net/tcp.h> 171 const struct tcphdr *tcp; in nf_osf_hdr_ctx_init() local 173 tcp = skb_header_pointer(skb, ip_hdrlen(skb), sizeof(struct tcphdr), _tcph); in nf_osf_hdr_ctx_init() 174 if (!tcp) in nf_osf_hdr_ctx_init() 177 if (!tcp->syn) in nf_osf_hdr_ctx_init() 182 ctx->window = ntohs(tcp->window); in nf_osf_hdr_ctx_init() 184 if (tcp->doff * 4 > sizeof(struct tcphdr)) { in nf_osf_hdr_ctx_init() 185 ctx->optsize = tcp->doff * 4 - sizeof(struct tcphdr); in nf_osf_hdr_ctx_init() 193 return tcp; in nf_osf_hdr_ctx_init() [all …]
|
/linux-6.8/tools/testing/selftests/bpf/prog_tests/ |
D | flow_dissector.c | 47 struct tcphdr tcp; member 54 struct tcphdr tcp; member 62 struct tcphdr tcp; member 68 struct tcphdr tcp; member 80 struct tcphdr tcp; member 90 struct tcphdr tcp; member 119 .tcp.doff = 5, 120 .tcp.source = 80, 121 .tcp.dest = 8080, 140 .tcp.doff = 5, [all …]
|
D | cls_redirect.c | 10 #include <netinet/tcp.h> 172 TCP, enumerator 214 type = "TCP"; in test_str() 241 { TCP, ACCEPT, UNKNOWN_CONN, NO_HOPS, SYN }, 242 { TCP, ACCEPT, UNKNOWN_CONN, NO_HOPS, ACK }, 243 { TCP, FORWARD, UNKNOWN_CONN, ONE_HOP, ACK }, 244 { TCP, ACCEPT, KNOWN_CONN, ONE_HOP, ACK }, 283 struct tcphdr tcp; in build_input() local 335 case TCP: in build_input() 336 tcp = (struct tcphdr){ in build_input() [all …]
|
/linux-6.8/tools/testing/selftests/net/tcp_ao/ |
D | unsigned-md5.c | 134 try_accept("TCP-AO established: add TCP-MD5 key", (*port)++, NULL, 0, in server_add_fail_tests() 137 try_accept("TCP-MD5 established: add TCP-AO key", (*port)++, &addr_any, in server_add_fail_tests() 139 try_accept("non-signed established: add TCP-AO key", (*port)++, NULL, 0, in server_add_fail_tests() 221 try_accept("AO+MD5 server: client with both [TCP-MD5] and TCP-AO keys", in server_fn() 224 try_accept("AO+MD5 server: client with both TCP-MD5 and [TCP-AO] keys", in server_fn() 516 try_to_add("TCP-AO established: add TCP-MD5 key", in client_add_fail_tests() 520 try_to_add("TCP-MD5 established: add TCP-AO key", in client_add_fail_tests() 524 try_to_add("non-signed established: add TCP-AO key", in client_add_fail_tests() 529 try_to_add("TCP-AO key intersects with existing TCP-MD5 key", in client_add_fail_tests() 533 try_to_add("TCP-MD5 key intersects with existing TCP-AO key", in client_add_fail_tests() [all …]
|
/linux-6.8/tools/testing/selftests/bpf/progs/ |
D | xdp_synproxy_kern.c | 369 struct tcphdr *tcp; member 395 hdr->tcp = (void *)hdr->ipv4 + hdr->ipv4->ihl * 4; in tcp_dissect() 412 hdr->tcp = (void *)hdr->ipv6 + sizeof(*hdr->ipv6); in tcp_dissect() 419 if (hdr->tcp + 1 > data_end) in tcp_dissect() 421 hdr->tcp_len = hdr->tcp->doff * 4; in tcp_dissect() 422 if (hdr->tcp_len < sizeof(*hdr->tcp)) in tcp_dissect() 439 /* TCP doesn't normally use fragments, and XDP can't reassemble in tcp_lookup() 447 tup.ipv4.sport = hdr->tcp->source; in tcp_lookup() 448 tup.ipv4.dport = hdr->tcp->dest; in tcp_lookup() 453 tup.ipv6.sport = hdr->tcp->source; in tcp_lookup() [all …]
|
D | test_pkt_access.c | 12 #include <linux/tcp.h> 89 struct tcphdr *tcp = NULL; in test_pkt_write_access_subprog() local 94 tcp = data + off; in test_pkt_write_access_subprog() 95 if (tcp + 1 > data_end) in test_pkt_write_access_subprog() 98 tcp->check++; in test_pkt_write_access_subprog() 108 struct tcphdr *tcp = NULL; in test_pkt_access() local 122 tcp = (struct tcphdr *)((void *)(iph) + ihl_len); in test_pkt_access() 130 tcp = (struct tcphdr *)((void *)(ip6h) + ihl_len); in test_pkt_access() 139 if (tcp) { in test_pkt_access() 140 if (test_pkt_write_access_subprog(skb, (void *)tcp - data)) in test_pkt_access() [all …]
|
D | test_migrate_reuseport.c | 19 #include <linux/tcp.h> 50 struct tcphdr *tcp = NULL; in drop_ack() local 65 tcp = (struct tcphdr *)((void *)ip + ip->ihl * 4); in drop_ack() 77 tcp = (struct tcphdr *)(ipv6 + 1); in drop_ack() 84 if (tcp + 1 > data_end) in drop_ack() 87 if (tcp->dest != server_port) in drop_ack() 90 if (!tcp->syn && tcp->ack) in drop_ack()
|
/linux-6.8/include/net/ |
D | slhc_vj.h | 4 * Definitions for tcp compression routines. 43 * The first octet contains the packet type (top 3 bits), TCP 44 * 'push' bit, and flags that indicate which of the 4 TCP sequence 46 * conversation number that associates a saved IP/TCP header with 47 * the compressed packet. The next two octets are the TCP checksum 54 * in the following order): TCP urgent pointer, window, 69 * three possible types: IP (not proto TCP or tcp with one of the 70 * control flags set); uncompressed TCP (a normal IP/TCP packet but 73 * TCP (described above). 75 * LSB of 4-bit field is TCP "PUSH" bit (a worthless anachronism) and [all …]
|
D | dropreason-core.h | 112 /** @SKB_DROP_REASON_TCP_CSUM: TCP checksum error */ 154 * @SKB_DROP_REASON_TCP_AUTH_HDR: TCP-MD5 or TCP-AO hashes are met 174 * @SKB_DROP_REASON_TCP_AONOTFOUND: no TCP-AO hash and one was expected, 179 * @SKB_DROP_REASON_TCP_AOUNEXPECTED: TCP-AO hash is present and it 184 * @SKB_DROP_REASON_TCP_AOKEYNOTFOUND: TCP-AO key is unknown, 189 * @SKB_DROP_REASON_TCP_AOFAILURE: TCP-AO hash is wrong, 198 /** @SKB_DROP_REASON_TCP_FLAGS: TCP flags invalid */ 201 * @SKB_DROP_REASON_TCP_ZEROWINDOW: TCP receive window size is zero, 206 * @SKB_DROP_REASON_TCP_OLD_DATA: the TCP data reveived is already 212 * @SKB_DROP_REASON_TCP_OVERWINDOW: the TCP data is out of window, [all …]
|
/linux-6.8/drivers/net/ethernet/mellanox/mlx5/core/en/tc/ |
D | ct_fs_smfs.c | 47 mlx5_ct_fs_smfs_fill_mask(struct mlx5_ct_fs *fs, struct mlx5_flow_spec *spec, bool ipv4, bool tcp, in mlx5_ct_fs_smfs_fill_mask() argument 76 if (likely(tcp)) { in mlx5_ct_fs_smfs_fill_mask() 91 bool tcp, bool gre, u32 priority) in mlx5_ct_fs_smfs_matcher_create() argument 100 mlx5_ct_fs_smfs_fill_mask(fs, spec, ipv4, tcp, gre); in mlx5_ct_fs_smfs_matcher_create() 112 mlx5_ct_fs_smfs_matcher_get(struct mlx5_ct_fs *fs, bool nat, bool ipv4, bool tcp, bool gre) in mlx5_ct_fs_smfs_matcher_get() argument 123 smfs_matcher = &matchers->smfs_matchers[ipv4 * 3 + tcp * 2 + gre]; in mlx5_ct_fs_smfs_matcher_get() 149 dr_matcher = mlx5_ct_fs_smfs_matcher_create(fs, tbl, ipv4, tcp, gre, prio); in mlx5_ct_fs_smfs_matcher_get() 152 "ct_fs_smfs: failed to create matcher (nat %d, ipv4 %d, tcp %d, gre %d), err: %ld\n", in mlx5_ct_fs_smfs_matcher_get() 153 nat, ipv4, tcp, gre, PTR_ERR(dr_matcher)); in mlx5_ct_fs_smfs_matcher_get() 230 DISS_BIT(PORTS) | DISS_BIT(TCP); in mlx5_tc_ct_valid_used_dissector_keys() [all …]
|
/linux-6.8/include/linux/ |
D | nvme-tcp.h | 3 * NVMe over Fabrics TCP protocol header. 62 * struct nvme_tcp_hdr - nvme tcp pdu common header 79 * struct nvme_tcp_icreq_pdu - nvme tcp initialize connection request pdu 97 * struct nvme_tcp_icresp_pdu - nvme tcp initialize connection response pdu 115 * struct nvme_tcp_term_pdu - nvme tcp terminate connection pdu 130 * struct nvme_tcp_cmd_pdu - nvme tcp command capsule pdu 141 * struct nvme_tcp_rsp_pdu - nvme tcp response capsule pdu 144 * @hdr: nvme-tcp generic header 153 * struct nvme_tcp_r2t_pdu - nvme tcp ready-to-transfer pdu 171 * struct nvme_tcp_data_pdu - nvme tcp data pdu
|
/linux-6.8/net/rds/ |
D | tcp_send.c | 35 #include <net/tcp.h> 39 #include "tcp.h" 96 rdsdebug("rm %p tcp nxt %u ack_seq %llu\n", in rds_tcp_xmit() 126 rdsdebug("tcp sendpage %p:%u:%u ret %d\n", (void *)sg_page(&rm->data.op_sg[sg]), in rds_tcp_xmit() 152 pr_warn("RDS/tcp: send to %pI6c on cp [%d]" in rds_tcp_xmit() 166 * rm->m_ack_seq is set to the tcp sequence number that corresponds to the 169 * unacked byte of the TCP sequence space. We have to do very careful 197 rdsdebug("tcp una %u\n", rds_tcp_snd_una(tc)); in rds_tcp_write_space() 211 * write_space is only called when data leaves tcp's send queue if in rds_tcp_write_space() 213 * data in tcp's send queue because we use write_space to parse the in rds_tcp_write_space() [all …]
|
/linux-6.8/include/net/netfilter/ |
D | nf_tproxy.h | 4 #include <net/tcp.h> 38 * nf_tproxy_handle_time_wait4 - handle IPv4 TCP TIME_WAIT reopen redirections 41 * @lport: TCP port to redirect to or zero. 42 * @sk: The TIME_WAIT TCP socket found by the lookup. 52 * no such listener is found, or NULL if the TCP header is incomplete. 94 * nf_tproxy_handle_time_wait6 - handle IPv6 TCP TIME_WAIT reopen redirections 100 * @lport: TCP port to redirect to or zero. 101 * @sk: The TIME_WAIT TCP socket found by the lookup. 111 * no such listener is found, or NULL if the TCP header is incomplete.
|
/linux-6.8/tools/testing/selftests/netfilter/ |
D | conntrack_tcp_unreplied.sh | 4 # Check that UNREPLIED tcp conntrack will eventually timeout. 97 ct state new tcp flags syn ip daddr 10.99.99.99 tcp dport 80 counter name "connreq" accept 98 ct state new ct status dnat tcp dport 8080 counter name "redir" accept 121 ip daddr 10.99.99.99 tcp dport 80 redirect to :8080 130 count=$(ip netns exec $ns2 conntrack -L -p tcp --dport 80 2>/dev/null | wc -l) 132 echo "ERROR: $ns2 did not pick up tcp connection from peer" 142 count=$(ip netns exec $ns2 conntrack -L -p tcp --reply-port-src 8080 2>/dev/null | wc -l) 164 echo "ERROR: no tcp connection was redirected"
|
/linux-6.8/include/linux/qed/ |
D | nvmetcp_common.h | 8 #include <linux/nvme-tcp.h> 75 NVMETCP_EVENT_TYPE_ASYN_ABORT_RCVD, /* TCP RST packet receive (A-syn EQE) */ 76 NVMETCP_EVENT_TYPE_ASYN_CLOSE_RCVD, /* TCP FIN packet receive (A-syn EQE) */ 77 NVMETCP_EVENT_TYPE_ASYN_SYN_RCVD, /* TCP SYN+ACK packet receive (A-syn EQE) */ 78 NVMETCP_EVENT_TYPE_ASYN_MAX_RT_TIME, /* TCP max retransmit time (A-syn EQE) */ 79 NVMETCP_EVENT_TYPE_ASYN_MAX_RT_CNT, /* TCP max retransmit count (A-syn EQE) */ 80 NVMETCP_EVENT_TYPE_ASYN_MAX_KA_PROBES_CNT, /* TCP ka probes count (A-syn EQE) */ 81 NVMETCP_EVENT_TYPE_ASYN_FIN_WAIT2, /* TCP fin wait 2 (A-syn EQE) */ 83 NVMETCP_EVENT_TYPE_TCP_CONN_ERROR, /* NVMeTCP error - tcp error (A-syn EQE) */ 93 /* NVMe TCP connection offload params passed by driver to FW in NVMeTCP offload ramrod */ [all …]
|
/linux-6.8/net/mptcp/ |
D | Kconfig | 3 bool "MPTCP: Multipath TCP" 9 Multipath TCP (MPTCP) connections send and receive data over multiple 11 uses the TCP protocol, and TCP options carry header information for 21 bool "MPTCP: IPv6 support for Multipath TCP"
|