← Documents Documentation/networking/net_cachelines/netns_ipv4_sysctl.rst GitHub 원문 ↗

Linux 6.18.37 · Networking

netns_ipv4 struct fast path usage breakdown

Namespace별 IPv4 routing과 TCP·UDP sysctl field의 fast-path 접근 분석입니다.

Source pathDocumentation/networking/net_cachelines/netns_ipv4_sysctl.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약·해설

netns_ipv4_sysctl.rst:1-162

Routing·ICMP에서 TCP recovery와 memory, UDP·multicast tail까지 namespace configuration 151개 field를 TX/RX hotness와 참조 function별로 정리했습니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 .. SPDX-License-Identifier: GPL-2.0
2 .. Copyright (C) 2023 Google LLC
3
4 ===========================================
5 netns_ipv4 struct fast path usage breakdown
6 ===========================================
7
8 =============================== ============================================ =================== =================== =================================================
9 Type Name fastpath_tx_access fastpath_rx_access comment
10 =============================== ============================================ =================== =================== =================================================
11 struct_inet_timewait_death_row tcp_death_row
12 struct_udp_table* udp_table
13 struct_ctl_table_header* forw_hdr
14 struct_ctl_table_header* frags_hdr
15 struct_ctl_table_header* ipv4_hdr
16 struct_ctl_table_header* route_hdr
17 struct_ctl_table_header* xfrm4_hdr
18 struct_ipv4_devconf* devconf_all
19 struct_ipv4_devconf* devconf_dflt
20 struct_ip_ra_chain ra_chain
21 struct_mutex ra_mutex
22 struct_fib_rules_ops* rules_ops
23 struct_fib_table fib_main
24 struct_fib_table fib_default
25 unsigned_int fib_rules_require_fldissect
26 bool fib_has_custom_rules
27 bool fib_has_custom_local_routes
28 bool fib_offload_disabled
29 atomic_t fib_num_tclassid_users
30 struct_hlist_head* fib_table_hash
31 struct_sock* fibnl
32 struct_sock* mc_autojoin_sk
33 struct_inet_peer_base* peers
34 struct_fqdir* fqdir
35 u8 sysctl_icmp_echo_ignore_all
36 u8 sysctl_icmp_echo_enable_probe
37 u8 sysctl_icmp_echo_ignore_broadcasts
38 u8 sysctl_icmp_ignore_bogus_error_responses
39 u8 sysctl_icmp_errors_use_inbound_ifaddr
40 int sysctl_icmp_ratelimit
41 int sysctl_icmp_ratemask
42 u32 ip_rt_min_pmtu
43 int ip_rt_mtu_expires
44 int ip_rt_min_advmss
45 struct_local_ports ip_local_ports
46 u8 sysctl_tcp_ecn
47 u8 sysctl_tcp_ecn_fallback
48 u8 sysctl_ip_default_ttl ip4_dst_hoplimit/ip_select_ttl
49 u8 sysctl_ip_no_pmtu_disc
50 u8 sysctl_ip_fwd_use_pmtu read_mostly ip_dst_mtu_maybe_forward/ip_skb_dst_mtu
51 u8 sysctl_ip_fwd_update_priority ip_forward
52 u8 sysctl_ip_nonlocal_bind
53 u8 sysctl_ip_autobind_reuse
54 u8 sysctl_ip_dynaddr
55 u8 sysctl_ip_early_demux read_mostly ip(6)_rcv_finish_core
56 u8 sysctl_raw_l3mdev_accept
57 u8 sysctl_tcp_early_demux read_mostly ip(6)_rcv_finish_core
58 u8 sysctl_udp_early_demux
59 u8 sysctl_nexthop_compat_mode
60 u8 sysctl_fwmark_reflect
61 u8 sysctl_tcp_fwmark_accept
62 u8 sysctl_tcp_l3mdev_accept read_mostly __inet6_lookup_established/inet_request_bound_dev_if
63 u8 sysctl_tcp_mtu_probing
64 int sysctl_tcp_mtu_probe_floor
65 int sysctl_tcp_base_mss
66 int sysctl_tcp_min_snd_mss read_mostly __tcp_mtu_to_mss(tcp_write_xmit)
67 int sysctl_tcp_probe_threshold tcp_mtu_probe(tcp_write_xmit)
68 u32 sysctl_tcp_probe_interval tcp_mtu_check_reprobe(tcp_write_xmit)
69 int sysctl_tcp_keepalive_time
70 int sysctl_tcp_keepalive_intvl
71 u8 sysctl_tcp_keepalive_probes
72 u8 sysctl_tcp_syn_retries
73 u8 sysctl_tcp_synack_retries
74 u8 sysctl_tcp_syncookies generated_on_syn
75 u8 sysctl_tcp_migrate_req reuseport
76 u8 sysctl_tcp_comp_sack_nr __tcp_ack_snd_check
77 int sysctl_tcp_reordering read_mostly tcp_may_raise_cwnd/tcp_cong_control
78 u8 sysctl_tcp_retries1
79 u8 sysctl_tcp_retries2
80 u8 sysctl_tcp_orphan_retries
81 u8 sysctl_tcp_tw_reuse timewait_sock_ops
82 unsigned_int sysctl_tcp_tw_reuse_delay timewait_sock_ops
83 int sysctl_tcp_fin_timeout TCP_LAST_ACK/tcp_rcv_state_process
84 unsigned_int sysctl_tcp_notsent_lowat read_mostly tcp_notsent_lowat/tcp_stream_memory_free
85 u8 sysctl_tcp_sack tcp_syn_options
86 u8 sysctl_tcp_window_scaling tcp_syn_options,tcp_parse_options
87 u8 sysctl_tcp_timestamps
88 u8 sysctl_tcp_early_retrans read_mostly tcp_schedule_loss_probe(tcp_write_xmit)
89 u32 sysctl_tcp_rto_max_ms
90 u8 sysctl_tcp_recovery tcp_fastretrans_alert
91 u8 sysctl_tcp_thin_linear_timeouts tcp_retrans_timer(on_thin_streams)
92 u8 sysctl_tcp_slow_start_after_idle unlikely(tcp_cwnd_validate-network-not-starved)
93 u8 sysctl_tcp_retrans_collapse
94 u8 sysctl_tcp_stdurg unlikely(tcp_check_urg)
95 u8 sysctl_tcp_rfc1337
96 u8 sysctl_tcp_abort_on_overflow
97 u8 sysctl_tcp_fack
98 int sysctl_tcp_max_reordering tcp_check_sack_reordering
99 int sysctl_tcp_adv_win_scale tcp_init_buffer_space
100 u8 sysctl_tcp_dsack partial_packet_or_retrans_in_tcp_data_queue
101 u8 sysctl_tcp_app_win tcp_win_from_space
102 u8 sysctl_tcp_frto tcp_enter_loss
103 u8 sysctl_tcp_nometrics_save TCP_LAST_ACK/tcp_update_metrics
104 u8 sysctl_tcp_no_ssthresh_metrics_save TCP_LAST_ACK/tcp_(update/init)_metrics
105 u8 sysctl_tcp_moderate_rcvbuf read_mostly read_mostly tcp_tso_should_defer(tx);tcp_rcv_space_adjust(rx)
106 u8 sysctl_tcp_tso_win_divisor read_mostly tcp_tso_should_defer(tcp_write_xmit)
107 u8 sysctl_tcp_workaround_signed_windows tcp_select_window
108 int sysctl_tcp_limit_output_bytes read_mostly tcp_small_queue_check(tcp_write_xmit)
109 int sysctl_tcp_challenge_ack_limit
110 int sysctl_tcp_min_rtt_wlen read_mostly tcp_ack_update_rtt
111 u8 sysctl_tcp_min_tso_segs unlikely(icsk_ca_ops-written)
112 u8 sysctl_tcp_tso_rtt_log read_mostly tcp_tso_autosize
113 u8 sysctl_tcp_autocorking read_mostly tcp_push/tcp_should_autocork
114 u8 sysctl_tcp_reflect_tos tcp_v(4/6)_send_synack
115 int sysctl_tcp_invalid_ratelimit
116 int sysctl_tcp_pacing_ss_ratio default_cong_cont(tcp_update_pacing_rate)
117 int sysctl_tcp_pacing_ca_ratio default_cong_cont(tcp_update_pacing_rate)
118 int sysctl_tcp_wmem[3] read_mostly tcp_wmem_schedule(sendmsg/sendpage)
119 int sysctl_tcp_rmem[3] read_mostly __tcp_grow_window(tx),tcp_rcv_space_adjust(rx)
120 unsigned_int sysctl_tcp_child_ehash_entries
121 unsigned_long sysctl_tcp_comp_sack_delay_ns __tcp_ack_snd_check
122 unsigned_long sysctl_tcp_comp_sack_slack_ns __tcp_ack_snd_check
123 int sysctl_max_syn_backlog
124 int sysctl_tcp_fastopen
125 struct_tcp_congestion_ops tcp_congestion_control init_cc
126 struct_tcp_fastopen_context tcp_fastopen_ctx
127 unsigned_int sysctl_tcp_fastopen_blackhole_timeout
128 atomic_t tfo_active_disable_times
129 unsigned_long tfo_active_disable_stamp
130 u32 tcp_challenge_timestamp
131 u32 tcp_challenge_count
132 u8 sysctl_tcp_plb_enabled
133 u8 sysctl_tcp_plb_idle_rehash_rounds
134 u8 sysctl_tcp_plb_rehash_rounds
135 u8 sysctl_tcp_plb_suspend_rto_sec
136 int sysctl_tcp_plb_cong_thresh
137 int sysctl_udp_wmem_min
138 int sysctl_udp_rmem_min
139 u8 sysctl_fib_notify_on_flag_change
140 u8 sysctl_udp_l3mdev_accept
141 u8 sysctl_igmp_llm_reports
142 int sysctl_igmp_max_memberships
143 int sysctl_igmp_max_msf
144 int sysctl_igmp_qrv
145 struct_ping_group_range ping_group_range
146 atomic_t dev_addr_genid
147 unsigned_int sysctl_udp_child_hash_entries
148 unsigned_long* sysctl_local_reserved_ports
149 int sysctl_ip_prot_sock
150 struct_mr_table* mrt
151 struct_list_head mr_tables
152 struct_fib_rules_ops* mr_rules_ops
153 u32 sysctl_fib_multipath_hash_fields
154 u8 sysctl_fib_multipath_use_neigh
155 u8 sysctl_fib_multipath_hash_policy
156 struct_fib_notifier_ops* notifier_ops
157 unsigned_int fib_seq
158 struct_fib_notifier_ops* ipmr_notifier_ops
159 unsigned_int ipmr_seq
160 atomic_t rt_genid
161 siphash_key_t ip_id_key
162 =============================== ============================================ =================== =================== =================================================
163

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

Namespace routing·ICMP·초기 IP sysctl

1-60

`netns_ipv4` 표는 network namespace별 IPv4 routing 자료와 protocol sysctl이 TX/RX fast path에서 어떻게 사용되는지 정리합니다. FIB table과 rule, peer와 fragment queue, ICMP 설정, route PMTU와 local port range, TCP ECN 및 IP forwarding 설정이 앞부분에 위치합니다.

`sysctl_ip_default_ttl`은 `ip4_dst_hoplimit`과 `ip_select_ttl`에서 참조됩니다. TX hot field인 `sysctl_ip_fwd_use_pmtu`는 forwarding MTU 선택에, RX hot field인 `sysctl_ip_early_demux`와 `sysctl_tcp_early_demux`는 IPv4·IPv6 receive finish core에서 early demultiplexing에 사용됩니다.

각 field type, symbol, access classification과 function 이름은 원문 표 순서 그대로 유지합니다.

netns_ipv4 routing·초기 sysctl
TypeNameTX fast pathRX fast path참조 function·설명
struct_inet_timewait_death_rowtcp_death_row
struct_udp_table*udp_table
struct_ctl_table_header*forw_hdr
struct_ctl_table_header*frags_hdr
struct_ctl_table_header*ipv4_hdr
struct_ctl_table_header*route_hdr
struct_ctl_table_header*xfrm4_hdr
struct_ipv4_devconf*devconf_all
struct_ipv4_devconf*devconf_dflt
struct_ip_ra_chainra_chain
struct_mutexra_mutex
struct_fib_rules_ops*rules_ops
struct_fib_tablefib_main
struct_fib_tablefib_default
unsigned_intfib_rules_require_fldissect
boolfib_has_custom_rules
boolfib_has_custom_local_routes
boolfib_offload_disabled
atomic_tfib_num_tclassid_users
struct_hlist_head*fib_table_hash
struct_sock*fibnl
struct_sock*mc_autojoin_sk
struct_inet_peer_base*peers
struct_fqdir*fqdir
u8sysctl_icmp_echo_ignore_all
u8sysctl_icmp_echo_enable_probe
u8sysctl_icmp_echo_ignore_broadcasts
u8sysctl_icmp_ignore_bogus_error_responses
u8sysctl_icmp_errors_use_inbound_ifaddr
intsysctl_icmp_ratelimit
intsysctl_icmp_ratemask
u32ip_rt_min_pmtu
intip_rt_mtu_expires
intip_rt_min_advmss
struct_local_portsip_local_ports
u8sysctl_tcp_ecn
u8sysctl_tcp_ecn_fallback
u8sysctl_ip_default_ttlip4_dst_hoplimit/ip_select_ttl
u8sysctl_ip_no_pmtu_disc
u8sysctl_ip_fwd_use_pmturead_mostly (주로 읽기)ip_dst_mtu_maybe_forward/ip_skb_dst_mtu
u8sysctl_ip_fwd_update_priorityip_forward
u8sysctl_ip_nonlocal_bind
u8sysctl_ip_autobind_reuse
u8sysctl_ip_dynaddr
u8sysctl_ip_early_demuxread_mostly (주로 읽기)ip(6)_rcv_finish_core
u8sysctl_raw_l3mdev_accept
u8sysctl_tcp_early_demuxread_mostly (주로 읽기)ip(6)_rcv_finish_core
u8sysctl_udp_early_demux
u8sysctl_nexthop_compat_mode
u8sysctl_fwmark_reflect

원문 11~60행을 구조화했습니다.

.. SPDX-License-Identifier: GPL-2.0
.. Copyright (C) 2023 Google LLC

===========================================
netns_ipv4 struct fast path usage breakdown
===========================================

=============================== ============================================ =================== =================== =================================================
Type                            Name                                         fastpath_tx_access  fastpath_rx_access  comment
=============================== ============================================ =================== =================== =================================================
struct_inet_timewait_death_row  tcp_death_row
struct_udp_table*               udp_table
struct_ctl_table_header*        forw_hdr
struct_ctl_table_header*        frags_hdr
struct_ctl_table_header*        ipv4_hdr
struct_ctl_table_header*        route_hdr
struct_ctl_table_header*        xfrm4_hdr
struct_ipv4_devconf*            devconf_all
struct_ipv4_devconf*            devconf_dflt
struct_ip_ra_chain              ra_chain
struct_mutex                    ra_mutex
struct_fib_rules_ops*           rules_ops
struct_fib_table                fib_main
struct_fib_table                fib_default
unsigned_int                    fib_rules_require_fldissect
bool                            fib_has_custom_rules
bool                            fib_has_custom_local_routes
bool                            fib_offload_disabled
atomic_t                        fib_num_tclassid_users
struct_hlist_head*              fib_table_hash
struct_sock*                    fibnl
struct_sock*                    mc_autojoin_sk
struct_inet_peer_base*          peers
struct_fqdir*                   fqdir
u8                              sysctl_icmp_echo_ignore_all
u8                              sysctl_icmp_echo_enable_probe
u8                              sysctl_icmp_echo_ignore_broadcasts
u8                              sysctl_icmp_ignore_bogus_error_responses
u8                              sysctl_icmp_errors_use_inbound_ifaddr
int                             sysctl_icmp_ratelimit
int                             sysctl_icmp_ratemask
u32                             ip_rt_min_pmtu
int                             ip_rt_mtu_expires
int                             ip_rt_min_advmss
struct_local_ports              ip_local_ports
u8                              sysctl_tcp_ecn
u8                              sysctl_tcp_ecn_fallback
u8                              sysctl_ip_default_ttl                                                                ip4_dst_hoplimit/ip_select_ttl
u8                              sysctl_ip_no_pmtu_disc
u8                              sysctl_ip_fwd_use_pmtu                       read_mostly                             ip_dst_mtu_maybe_forward/ip_skb_dst_mtu
u8                              sysctl_ip_fwd_update_priority                                                        ip_forward
u8                              sysctl_ip_nonlocal_bind
u8                              sysctl_ip_autobind_reuse
u8                              sysctl_ip_dynaddr
u8                              sysctl_ip_early_demux                                            read_mostly         ip(6)_rcv_finish_core
u8                              sysctl_raw_l3mdev_accept
u8                              sysctl_tcp_early_demux                                           read_mostly         ip(6)_rcv_finish_core
u8                              sysctl_udp_early_demux
u8                              sysctl_nexthop_compat_mode
u8                              sysctl_fwmark_reflect

TCP 연결·복구·buffer sysctl

61-110

중간 영역은 `tcp_l3mdev_accept`, MTU probing, keepalive와 SYN retry, syncookie, request migration, reordering, TIME_WAIT reuse, FIN timeout, SACK·window scaling·timestamp 및 loss recovery 정책을 모읍니다.

TX fast path는 `sysctl_tcp_min_snd_mss`, `sysctl_tcp_notsent_lowat`, `sysctl_tcp_early_retrans`, `sysctl_tcp_tso_win_divisor`, output byte limit과 minimum RTT window를 자주 읽습니다. RX는 `sysctl_tcp_reordering`을 congestion control에서 주로 읽습니다. `sysctl_tcp_moderate_rcvbuf`는 TX defer와 RX receive-space 조정 양쪽에서 사용됩니다.

Function column은 option negotiation, retransmission, cwnd, receive buffer와 queue pressure 같은 실제 code path를 symbol 단위로 연결합니다.

netns_ipv4 TCP sysctl
TypeNameTX fast pathRX fast path참조 function·설명
u8sysctl_tcp_fwmark_accept
u8sysctl_tcp_l3mdev_acceptread_mostly (주로 읽기)__inet6_lookup_established/inet_request_bound_dev_if
u8sysctl_tcp_mtu_probing
intsysctl_tcp_mtu_probe_floor
intsysctl_tcp_base_mss
intsysctl_tcp_min_snd_mssread_mostly (주로 읽기)__tcp_mtu_to_mss(tcp_write_xmit)
intsysctl_tcp_probe_thresholdtcp_mtu_probe(tcp_write_xmit)
u32sysctl_tcp_probe_intervaltcp_mtu_check_reprobe(tcp_write_xmit)
intsysctl_tcp_keepalive_time
intsysctl_tcp_keepalive_intvl
u8sysctl_tcp_keepalive_probes
u8sysctl_tcp_syn_retries
u8sysctl_tcp_synack_retries
u8sysctl_tcp_syncookiesgenerated_on_syn
u8sysctl_tcp_migrate_reqreuseport
u8sysctl_tcp_comp_sack_nr__tcp_ack_snd_check
intsysctl_tcp_reorderingread_mostly (주로 읽기)tcp_may_raise_cwnd/tcp_cong_control
u8sysctl_tcp_retries1
u8sysctl_tcp_retries2
u8sysctl_tcp_orphan_retries
u8sysctl_tcp_tw_reusetimewait_sock_ops
unsigned_intsysctl_tcp_tw_reuse_delaytimewait_sock_ops
intsysctl_tcp_fin_timeoutTCP_LAST_ACK/tcp_rcv_state_process
unsigned_intsysctl_tcp_notsent_lowatread_mostly (주로 읽기)tcp_notsent_lowat/tcp_stream_memory_free
u8sysctl_tcp_sacktcp_syn_options
u8sysctl_tcp_window_scalingtcp_syn_options,tcp_parse_options
u8sysctl_tcp_timestamps
u8sysctl_tcp_early_retransread_mostly (주로 읽기)tcp_schedule_loss_probe(tcp_write_xmit)
u32sysctl_tcp_rto_max_ms
u8sysctl_tcp_recoverytcp_fastretrans_alert
u8sysctl_tcp_thin_linear_timeoutstcp_retrans_timer(on_thin_streams)
u8sysctl_tcp_slow_start_after_idleunlikely(tcp_cwnd_validate-network-not-starved)
u8sysctl_tcp_retrans_collapse
u8sysctl_tcp_stdurgunlikely(tcp_check_urg)
u8sysctl_tcp_rfc1337
u8sysctl_tcp_abort_on_overflow
u8sysctl_tcp_fack
intsysctl_tcp_max_reorderingtcp_check_sack_reordering
intsysctl_tcp_adv_win_scaletcp_init_buffer_space
u8sysctl_tcp_dsackpartial_packet_or_retrans_in_tcp_data_queue
u8sysctl_tcp_app_wintcp_win_from_space
u8sysctl_tcp_frtotcp_enter_loss
u8sysctl_tcp_nometrics_saveTCP_LAST_ACK/tcp_update_metrics
u8sysctl_tcp_no_ssthresh_metrics_saveTCP_LAST_ACK/tcp_(update/init)_metrics
u8sysctl_tcp_moderate_rcvbufread_mostly (주로 읽기)read_mostly (주로 읽기)tcp_tso_should_defer(tx);tcp_rcv_space_adjust(rx)
u8sysctl_tcp_tso_win_divisorread_mostly (주로 읽기)tcp_tso_should_defer(tcp_write_xmit)
u8sysctl_tcp_workaround_signed_windowstcp_select_window
intsysctl_tcp_limit_output_bytesread_mostly (주로 읽기)tcp_small_queue_check(tcp_write_xmit)
intsysctl_tcp_challenge_ack_limit
intsysctl_tcp_min_rtt_wlenread_mostly (주로 읽기)tcp_ack_update_rtt

원문 61~110행을 구조화했습니다.

u8                              sysctl_tcp_fwmark_accept
u8                              sysctl_tcp_l3mdev_accept                                         read_mostly         __inet6_lookup_established/inet_request_bound_dev_if
u8                              sysctl_tcp_mtu_probing
int                             sysctl_tcp_mtu_probe_floor
int                             sysctl_tcp_base_mss
int                             sysctl_tcp_min_snd_mss                       read_mostly                             __tcp_mtu_to_mss(tcp_write_xmit)
int                             sysctl_tcp_probe_threshold                                                           tcp_mtu_probe(tcp_write_xmit)
u32                             sysctl_tcp_probe_interval                                                            tcp_mtu_check_reprobe(tcp_write_xmit)
int                             sysctl_tcp_keepalive_time
int                             sysctl_tcp_keepalive_intvl
u8                              sysctl_tcp_keepalive_probes
u8                              sysctl_tcp_syn_retries
u8                              sysctl_tcp_synack_retries
u8                              sysctl_tcp_syncookies                                                                generated_on_syn
u8                              sysctl_tcp_migrate_req                                                               reuseport
u8                              sysctl_tcp_comp_sack_nr                                                              __tcp_ack_snd_check
int                             sysctl_tcp_reordering                                            read_mostly         tcp_may_raise_cwnd/tcp_cong_control
u8                              sysctl_tcp_retries1
u8                              sysctl_tcp_retries2
u8                              sysctl_tcp_orphan_retries
u8                              sysctl_tcp_tw_reuse                                                                  timewait_sock_ops
unsigned_int                    sysctl_tcp_tw_reuse_delay                                                            timewait_sock_ops
int                             sysctl_tcp_fin_timeout                                                               TCP_LAST_ACK/tcp_rcv_state_process
unsigned_int                    sysctl_tcp_notsent_lowat                     read_mostly                             tcp_notsent_lowat/tcp_stream_memory_free
u8                              sysctl_tcp_sack                                                                      tcp_syn_options
u8                              sysctl_tcp_window_scaling                                                            tcp_syn_options,tcp_parse_options
u8                              sysctl_tcp_timestamps
u8                              sysctl_tcp_early_retrans                     read_mostly                             tcp_schedule_loss_probe(tcp_write_xmit)
u32                             sysctl_tcp_rto_max_ms
u8                              sysctl_tcp_recovery                                                                  tcp_fastretrans_alert
u8                              sysctl_tcp_thin_linear_timeouts                                                      tcp_retrans_timer(on_thin_streams)
u8                              sysctl_tcp_slow_start_after_idle                                                     unlikely(tcp_cwnd_validate-network-not-starved)
u8                              sysctl_tcp_retrans_collapse
u8                              sysctl_tcp_stdurg                                                                    unlikely(tcp_check_urg)
u8                              sysctl_tcp_rfc1337
u8                              sysctl_tcp_abort_on_overflow
u8                              sysctl_tcp_fack
int                             sysctl_tcp_max_reordering                                                            tcp_check_sack_reordering
int                             sysctl_tcp_adv_win_scale                                                             tcp_init_buffer_space
u8                              sysctl_tcp_dsack                                                                     partial_packet_or_retrans_in_tcp_data_queue
u8                              sysctl_tcp_app_win                                                                   tcp_win_from_space
u8                              sysctl_tcp_frto                                                                      tcp_enter_loss
u8                              sysctl_tcp_nometrics_save                                                            TCP_LAST_ACK/tcp_update_metrics
u8                              sysctl_tcp_no_ssthresh_metrics_save                                                  TCP_LAST_ACK/tcp_(update/init)_metrics
u8                              sysctl_tcp_moderate_rcvbuf                   read_mostly         read_mostly         tcp_tso_should_defer(tx);tcp_rcv_space_adjust(rx)
u8                              sysctl_tcp_tso_win_divisor                   read_mostly                             tcp_tso_should_defer(tcp_write_xmit)
u8                              sysctl_tcp_workaround_signed_windows                                                 tcp_select_window
int                             sysctl_tcp_limit_output_bytes                read_mostly                             tcp_small_queue_check(tcp_write_xmit)
int                             sysctl_tcp_challenge_ack_limit
int                             sysctl_tcp_min_rtt_wlen                      read_mostly                             tcp_ack_update_rtt

TCP memory·Fast Open·UDP·multicast tail

111-162

후반부에는 TSO 자동 조정과 autocorking, pacing ratio, TCP send/receive memory 배열, SYN backlog, Fast Open context와 blackhole state, PLB, UDP memory, IGMP, reserved port, multicast routing 및 FIB multipath hash 설정이 있습니다.

`sysctl_tcp_wmem`은 `sendmsg`와 `sendpage`의 TX memory scheduling에서 주로 읽고 `sysctl_tcp_rmem`은 receive window 성장과 조정에서 읽힙니다. `sysctl_tcp_tso_rtt_log`, `sysctl_tcp_autocorking`도 TX hot configuration으로 표시됩니다.

Namespace별 generation ID, notifier와 route sequence, IP ID용 siphash key까지 포함해 원문 struct tail을 빠짐없이 표로 보존합니다.

netns_ipv4 memory·routing tail
TypeNameTX fast pathRX fast path참조 function·설명
u8sysctl_tcp_min_tso_segsunlikely(icsk_ca_ops-written)
u8sysctl_tcp_tso_rtt_logread_mostly (주로 읽기)tcp_tso_autosize
u8sysctl_tcp_autocorkingread_mostly (주로 읽기)tcp_push/tcp_should_autocork
u8sysctl_tcp_reflect_tostcp_v(4/6)_send_synack
intsysctl_tcp_invalid_ratelimit
intsysctl_tcp_pacing_ss_ratiodefault_cong_cont(tcp_update_pacing_rate)
intsysctl_tcp_pacing_ca_ratiodefault_cong_cont(tcp_update_pacing_rate)
intsysctl_tcp_wmem[3]read_mostly (주로 읽기)tcp_wmem_schedule(sendmsg/sendpage)
intsysctl_tcp_rmem[3]read_mostly (주로 읽기)__tcp_grow_window(tx),tcp_rcv_space_adjust(rx)
unsigned_intsysctl_tcp_child_ehash_entries
unsigned_longsysctl_tcp_comp_sack_delay_ns__tcp_ack_snd_check
unsigned_longsysctl_tcp_comp_sack_slack_ns__tcp_ack_snd_check
intsysctl_max_syn_backlog
intsysctl_tcp_fastopen
struct_tcp_congestion_opstcp_congestion_controlinit_cc
struct_tcp_fastopen_contexttcp_fastopen_ctx
unsigned_intsysctl_tcp_fastopen_blackhole_timeout
atomic_ttfo_active_disable_times
unsigned_longtfo_active_disable_stamp
u32tcp_challenge_timestamp
u32tcp_challenge_count
u8sysctl_tcp_plb_enabled
u8sysctl_tcp_plb_idle_rehash_rounds
u8sysctl_tcp_plb_rehash_rounds
u8sysctl_tcp_plb_suspend_rto_sec
intsysctl_tcp_plb_cong_thresh
intsysctl_udp_wmem_min
intsysctl_udp_rmem_min
u8sysctl_fib_notify_on_flag_change
u8sysctl_udp_l3mdev_accept
u8sysctl_igmp_llm_reports
intsysctl_igmp_max_memberships
intsysctl_igmp_max_msf
intsysctl_igmp_qrv
struct_ping_group_rangeping_group_range
atomic_tdev_addr_genid
unsigned_intsysctl_udp_child_hash_entries
unsigned_long*sysctl_local_reserved_ports
intsysctl_ip_prot_sock
struct_mr_table*mrt
struct_list_headmr_tables
struct_fib_rules_ops*mr_rules_ops
u32sysctl_fib_multipath_hash_fields
u8sysctl_fib_multipath_use_neigh
u8sysctl_fib_multipath_hash_policy
struct_fib_notifier_ops*notifier_ops
unsigned_intfib_seq
struct_fib_notifier_ops*ipmr_notifier_ops
unsigned_intipmr_seq
atomic_trt_genid
siphash_key_tip_id_key

원문 111~161행을 구조화했습니다.

u8                              sysctl_tcp_min_tso_segs                                                              unlikely(icsk_ca_ops-written)
u8                              sysctl_tcp_tso_rtt_log                       read_mostly                             tcp_tso_autosize
u8                              sysctl_tcp_autocorking                       read_mostly                             tcp_push/tcp_should_autocork
u8                              sysctl_tcp_reflect_tos                                                               tcp_v(4/6)_send_synack
int                             sysctl_tcp_invalid_ratelimit
int                             sysctl_tcp_pacing_ss_ratio                                                           default_cong_cont(tcp_update_pacing_rate)
int                             sysctl_tcp_pacing_ca_ratio                                                           default_cong_cont(tcp_update_pacing_rate)
int                             sysctl_tcp_wmem[3]                           read_mostly                             tcp_wmem_schedule(sendmsg/sendpage)
int                             sysctl_tcp_rmem[3]                                               read_mostly         __tcp_grow_window(tx),tcp_rcv_space_adjust(rx)
unsigned_int                    sysctl_tcp_child_ehash_entries
unsigned_long                   sysctl_tcp_comp_sack_delay_ns                                                        __tcp_ack_snd_check
unsigned_long                   sysctl_tcp_comp_sack_slack_ns                                                        __tcp_ack_snd_check
int                             sysctl_max_syn_backlog
int                             sysctl_tcp_fastopen
struct_tcp_congestion_ops       tcp_congestion_control                                                               init_cc
struct_tcp_fastopen_context     tcp_fastopen_ctx
unsigned_int                    sysctl_tcp_fastopen_blackhole_timeout
atomic_t                        tfo_active_disable_times
unsigned_long                   tfo_active_disable_stamp
u32                             tcp_challenge_timestamp
u32                             tcp_challenge_count
u8                              sysctl_tcp_plb_enabled
u8                              sysctl_tcp_plb_idle_rehash_rounds
u8                              sysctl_tcp_plb_rehash_rounds
u8                              sysctl_tcp_plb_suspend_rto_sec
int                             sysctl_tcp_plb_cong_thresh
int                             sysctl_udp_wmem_min
int                             sysctl_udp_rmem_min
u8                              sysctl_fib_notify_on_flag_change
u8                              sysctl_udp_l3mdev_accept
u8                              sysctl_igmp_llm_reports
int                             sysctl_igmp_max_memberships
int                             sysctl_igmp_max_msf
int                             sysctl_igmp_qrv
struct_ping_group_range         ping_group_range
atomic_t                        dev_addr_genid
unsigned_int                    sysctl_udp_child_hash_entries
unsigned_long*                  sysctl_local_reserved_ports
int                             sysctl_ip_prot_sock
struct_mr_table*                mrt
struct_list_head                mr_tables
struct_fib_rules_ops*           mr_rules_ops
u32                             sysctl_fib_multipath_hash_fields
u8                              sysctl_fib_multipath_use_neigh
u8                              sysctl_fib_multipath_hash_policy
struct_fib_notifier_ops*        notifier_ops
unsigned_int                    fib_seq
struct_fib_notifier_ops*        ipmr_notifier_ops
unsigned_int                    ipmr_seq
atomic_t                        rt_genid
siphash_key_t                   ip_id_key
=============================== ============================================ =================== =================== =================================================