153b95375SMauro Carvalho Chehab================================ 253b95375SMauro Carvalho ChehabDocumentation for /proc/sys/net/ 353b95375SMauro Carvalho Chehab================================ 4760df93eSShen Feng 553b95375SMauro Carvalho ChehabCopyright 6760df93eSShen Feng 753b95375SMauro Carvalho ChehabCopyright (c) 1999 853b95375SMauro Carvalho Chehab 953b95375SMauro Carvalho Chehab - Terrehon Bowden <terrehon@pacbell.net> 1053b95375SMauro Carvalho Chehab - Bodo Bauer <bb@ricochet.net> 1153b95375SMauro Carvalho Chehab 1253b95375SMauro Carvalho ChehabCopyright (c) 2000 1353b95375SMauro Carvalho Chehab 1453b95375SMauro Carvalho Chehab - Jorge Nerin <comandante@zaralinux.com> 1553b95375SMauro Carvalho Chehab 1653b95375SMauro Carvalho ChehabCopyright (c) 2009 1753b95375SMauro Carvalho Chehab 1853b95375SMauro Carvalho Chehab - Shen Feng <shen@cn.fujitsu.com> 1953b95375SMauro Carvalho Chehab 2053b95375SMauro Carvalho ChehabFor general info and legal blurb, please look in index.rst. 2153b95375SMauro Carvalho Chehab 2253b95375SMauro Carvalho Chehab------------------------------------------------------------------------------ 23760df93eSShen Feng 24760df93eSShen FengThis file contains the documentation for the sysctl files in 25faa5273cSPaul Gortmaker/proc/sys/net 26760df93eSShen Feng 27760df93eSShen FengThe interface to the networking parts of the kernel is located in 28760df93eSShen Feng/proc/sys/net. The following table shows all possible subdirectories. You may 29760df93eSShen Fengsee only some of them, depending on your kernel's configuration. 30760df93eSShen Feng 31760df93eSShen Feng 32760df93eSShen FengTable : Subdirectories in /proc/sys/net 3353b95375SMauro Carvalho Chehab 3453b95375SMauro Carvalho Chehab ========= =================== = ========== ================== 35760df93eSShen Feng Directory Content Directory Content 3653b95375SMauro Carvalho Chehab ========= =================== = ========== ================== 37760df93eSShen Feng core General parameter appletalk Appletalk protocol 38760df93eSShen Feng unix Unix domain sockets netrom NET/ROM 39760df93eSShen Feng 802 E802 protocol ax25 AX25 40760df93eSShen Feng ethernet Ethernet protocol rose X.25 PLP layer 41760df93eSShen Feng ipv4 IP version 4 x25 X.25 protocol 42760df93eSShen Feng bridge Bridging decnet DEC net 43cc79dd1bSYing Xue ipv6 IP version 6 tipc TIPC 4453b95375SMauro Carvalho Chehab ========= =================== = ========== ================== 45760df93eSShen Feng 46760df93eSShen Feng1. /proc/sys/net/core - Network core options 4753b95375SMauro Carvalho Chehab============================================ 48760df93eSShen Feng 490a14842fSEric Dumazetbpf_jit_enable 500a14842fSEric Dumazet-------------- 510a14842fSEric Dumazet 522110ba58SDaniel BorkmannThis enables the BPF Just in Time (JIT) compiler. BPF is a flexible 532110ba58SDaniel Borkmannand efficient infrastructure allowing to execute bytecode at various 542110ba58SDaniel Borkmannhook points. It is used in a number of Linux kernel subsystems such 552110ba58SDaniel Borkmannas networking (e.g. XDP, tc), tracing (e.g. kprobes, uprobes, tracepoints) 562110ba58SDaniel Borkmannand security (e.g. seccomp). LLVM has a BPF back end that can compile 572110ba58SDaniel Borkmannrestricted C into a sequence of BPF instructions. After program load 582110ba58SDaniel Borkmannthrough bpf(2) and passing a verifier in the kernel, a JIT will then 592110ba58SDaniel Borkmanntranslate these BPF proglets into native CPU instructions. There are 602110ba58SDaniel Borkmanntwo flavors of JITs, the newer eBPF JIT currently supported on: 6153b95375SMauro Carvalho Chehab 62014cd0a3SMichael Ellerman - x86_64 6303f5781bSWang YanQing - x86_32 64014cd0a3SMichael Ellerman - arm64 65d2aaa3dcSShubham Bansal - arm32 66014cd0a3SMichael Ellerman - ppc64 6751c66ad8SChristophe Leroy - ppc32 68014cd0a3SMichael Ellerman - sparc64 69014cd0a3SMichael Ellerman - mips64 70d4dd2d75SDaniel Borkmann - s390x 7106b74152SLuke Nelson - riscv64 7206b74152SLuke Nelson - riscv32 73014cd0a3SMichael Ellerman 742110ba58SDaniel BorkmannAnd the older cBPF JIT supported on the following archs: 7553b95375SMauro Carvalho Chehab 76014cd0a3SMichael Ellerman - mips 77014cd0a3SMichael Ellerman - sparc 78014cd0a3SMichael Ellerman 792110ba58SDaniel BorkmanneBPF JITs are a superset of cBPF JITs, meaning the kernel will 802110ba58SDaniel Borkmannmigrate cBPF instructions into eBPF instructions and then JIT 812110ba58SDaniel Borkmanncompile them transparently. Older cBPF JITs can only translate 822110ba58SDaniel Borkmanntcpdump filters, seccomp rules, etc, but not mentioned eBPF 832110ba58SDaniel Borkmannprograms loaded through bpf(2). 84014cd0a3SMichael Ellerman 850a14842fSEric DumazetValues: 8653b95375SMauro Carvalho Chehab 8753b95375SMauro Carvalho Chehab - 0 - disable the JIT (default value) 8853b95375SMauro Carvalho Chehab - 1 - enable the JIT 8953b95375SMauro Carvalho Chehab - 2 - enable the JIT and ask the compiler to emit traces on kernel log. 900a14842fSEric Dumazet 914f3446bbSDaniel Borkmannbpf_jit_harden 924f3446bbSDaniel Borkmann-------------- 934f3446bbSDaniel Borkmann 942110ba58SDaniel BorkmannThis enables hardening for the BPF JIT compiler. Supported are eBPF 952110ba58SDaniel BorkmannJIT backends. Enabling hardening trades off performance, but can 962110ba58SDaniel Borkmannmitigate JIT spraying. 9753b95375SMauro Carvalho Chehab 984f3446bbSDaniel BorkmannValues: 9953b95375SMauro Carvalho Chehab 10053b95375SMauro Carvalho Chehab - 0 - disable JIT hardening (default value) 10153b95375SMauro Carvalho Chehab - 1 - enable JIT hardening for unprivileged users only 10253b95375SMauro Carvalho Chehab - 2 - enable JIT hardening for all users 1034f3446bbSDaniel Borkmann 10474451e66SDaniel Borkmannbpf_jit_kallsyms 10574451e66SDaniel Borkmann---------------- 10674451e66SDaniel Borkmann 1072110ba58SDaniel BorkmannWhen BPF JIT compiler is enabled, then compiled images are unknown 1082110ba58SDaniel Borkmannaddresses to the kernel, meaning they neither show up in traces nor 1092110ba58SDaniel Borkmannin /proc/kallsyms. This enables export of these addresses, which can 1102110ba58SDaniel Borkmannbe used for debugging/tracing. If bpf_jit_harden is enabled, this 1112110ba58SDaniel Borkmannfeature is disabled. 11253b95375SMauro Carvalho Chehab 11374451e66SDaniel BorkmannValues : 11453b95375SMauro Carvalho Chehab 11553b95375SMauro Carvalho Chehab - 0 - disable JIT kallsyms export (default value) 11653b95375SMauro Carvalho Chehab - 1 - enable JIT kallsyms export for privileged users only 11774451e66SDaniel Borkmann 118ede95a63SDaniel Borkmannbpf_jit_limit 119ede95a63SDaniel Borkmann------------- 120ede95a63SDaniel Borkmann 121ede95a63SDaniel BorkmannThis enforces a global limit for memory allocations to the BPF JIT 122ede95a63SDaniel Borkmanncompiler in order to reject unprivileged JIT requests once it has 123ede95a63SDaniel Borkmannbeen surpassed. bpf_jit_limit contains the value of the global limit 124ede95a63SDaniel Borkmannin bytes. 125ede95a63SDaniel Borkmann 126c60f6aa8SShan Weidev_weight 12753b95375SMauro Carvalho Chehab---------- 128c60f6aa8SShan Wei 129c60f6aa8SShan WeiThe maximum number of packets that kernel can handle on a NAPI interrupt, 13097bbf662SMichael Chanit's a Per-CPU variable. For drivers that support LRO or GRO_HW, a hardware 13197bbf662SMichael Chanaggregated packet is counted as one packet in this context. 13297bbf662SMichael Chan 133c60f6aa8SShan WeiDefault: 64 134c60f6aa8SShan Wei 1353d48b53fSMatthias Tafelmeierdev_weight_rx_bias 13653b95375SMauro Carvalho Chehab------------------ 1373d48b53fSMatthias Tafelmeier 1383d48b53fSMatthias TafelmeierRPS (e.g. RFS, aRFS) processing is competing with the registered NAPI poll function 1393d48b53fSMatthias Tafelmeierof the driver for the per softirq cycle netdev_budget. This parameter influences 1403d48b53fSMatthias Tafelmeierthe proportion of the configured netdev_budget that is spent on RPS based packet 1413d48b53fSMatthias Tafelmeierprocessing during RX softirq cycles. It is further meant for making current 1423d48b53fSMatthias Tafelmeierdev_weight adaptable for asymmetric CPU needs on RX/TX side of the network stack. 1433d48b53fSMatthias Tafelmeier(see dev_weight_tx_bias) It is effective on a per CPU basis. Determination is based 1443d48b53fSMatthias Tafelmeieron dev_weight and is calculated multiplicative (dev_weight * dev_weight_rx_bias). 14553b95375SMauro Carvalho Chehab 1463d48b53fSMatthias TafelmeierDefault: 1 1473d48b53fSMatthias Tafelmeier 1483d48b53fSMatthias Tafelmeierdev_weight_tx_bias 14953b95375SMauro Carvalho Chehab------------------ 1503d48b53fSMatthias Tafelmeier 1513d48b53fSMatthias TafelmeierScales the maximum number of packets that can be processed during a TX softirq cycle. 1523d48b53fSMatthias TafelmeierEffective on a per CPU basis. Allows scaling of current dev_weight for asymmetric 1533d48b53fSMatthias Tafelmeiernet stack processing needs. Be careful to avoid making TX softirq processing a CPU hog. 15453b95375SMauro Carvalho Chehab 1553d48b53fSMatthias TafelmeierCalculation is based on dev_weight (dev_weight * dev_weight_tx_bias). 15653b95375SMauro Carvalho Chehab 1573d48b53fSMatthias TafelmeierDefault: 1 1583d48b53fSMatthias Tafelmeier 1596da7c8fcSstephen hemmingerdefault_qdisc 16053b95375SMauro Carvalho Chehab------------- 1616da7c8fcSstephen hemminger 1626da7c8fcSstephen hemmingerThe default queuing discipline to use for network devices. This allows 1632e64126bSPhil Sutteroverriding the default of pfifo_fast with an alternative. Since the default 1642e64126bSPhil Sutterqueuing discipline is created without additional parameters so is best suited 1652e64126bSPhil Sutterto queuing disciplines that work well without configuration like stochastic 1662e64126bSPhil Sutterfair queue (sfq), CoDel (codel) or fair queue CoDel (fq_codel). Don't use 1672e64126bSPhil Sutterqueuing disciplines like Hierarchical Token Bucket or Deficit Round Robin 1682e64126bSPhil Sutterwhich require setting up classes and bandwidths. Note that physical multiqueue 1692e64126bSPhil Sutterinterfaces still use mq as root qdisc, which in turn uses this default for its 1702e64126bSPhil Sutterleaves. Virtual devices (like e.g. lo or veth) ignore this setting and instead 1712e64126bSPhil Sutterdefault to noqueue. 17253b95375SMauro Carvalho Chehab 1736da7c8fcSstephen hemmingerDefault: pfifo_fast 1746da7c8fcSstephen hemminger 17564b0dc51SEliezer Tamirbusy_read 17653b95375SMauro Carvalho Chehab--------- 17753b95375SMauro Carvalho Chehab 178e0d1095aSCong WangLow latency busy poll timeout for socket reads. (needs CONFIG_NET_RX_BUSY_POLL) 179cbf55001SEliezer TamirApproximate time in us to busy loop waiting for packets on the device queue. 18064b0dc51SEliezer TamirThis sets the default value of the SO_BUSY_POLL socket option. 18164b0dc51SEliezer TamirCan be set or overridden per socket by setting socket option SO_BUSY_POLL, 18264b0dc51SEliezer Tamirwhich is the preferred method of enabling. If you need to enable the feature 18364b0dc51SEliezer Tamirglobally via sysctl, a value of 50 is recommended. 18453b95375SMauro Carvalho Chehab 185cbf55001SEliezer TamirWill increase power usage. 18653b95375SMauro Carvalho Chehab 1872d48d67fSEliezer TamirDefault: 0 (off) 1882d48d67fSEliezer Tamir 18964b0dc51SEliezer Tamirbusy_poll 19006021292SEliezer Tamir---------------- 191e0d1095aSCong WangLow latency busy poll timeout for poll and select. (needs CONFIG_NET_RX_BUSY_POLL) 192cbf55001SEliezer TamirApproximate time in us to busy loop waiting for events. 1932d48d67fSEliezer TamirRecommended value depends on the number of sockets you poll on. 1942d48d67fSEliezer TamirFor several sockets 50, for several hundreds 100. 1952d48d67fSEliezer TamirFor more than that you probably want to use epoll. 19664b0dc51SEliezer TamirNote that only sockets with SO_BUSY_POLL set will be busy polled, 19764b0dc51SEliezer Tamirso you want to either selectively set SO_BUSY_POLL on those sockets or set 19864b0dc51SEliezer Tamirsysctl.net.busy_read globally. 19953b95375SMauro Carvalho Chehab 200cbf55001SEliezer TamirWill increase power usage. 20153b95375SMauro Carvalho Chehab 20206021292SEliezer TamirDefault: 0 (off) 20306021292SEliezer Tamir 204760df93eSShen Fengrmem_default 205760df93eSShen Feng------------ 206760df93eSShen Feng 207760df93eSShen FengThe default setting of the socket receive buffer in bytes. 208760df93eSShen Feng 209760df93eSShen Fengrmem_max 210760df93eSShen Feng-------- 211760df93eSShen Feng 212760df93eSShen FengThe maximum receive socket buffer size in bytes. 213760df93eSShen Feng 214b245be1fSWillem de Bruijntstamp_allow_data 215b245be1fSWillem de Bruijn----------------- 216b245be1fSWillem de BruijnAllow processes to receive tx timestamps looped together with the original 217b245be1fSWillem de Bruijnpacket contents. If disabled, transmit timestamp requests from unprivileged 218b245be1fSWillem de Bruijnprocesses are dropped unless socket option SOF_TIMESTAMPING_OPT_TSONLY is set. 21953b95375SMauro Carvalho Chehab 220b245be1fSWillem de BruijnDefault: 1 (on) 221b245be1fSWillem de Bruijn 222b245be1fSWillem de Bruijn 223760df93eSShen Fengwmem_default 224760df93eSShen Feng------------ 225760df93eSShen Feng 226760df93eSShen FengThe default setting (in bytes) of the socket send buffer. 227760df93eSShen Feng 228760df93eSShen Fengwmem_max 229760df93eSShen Feng-------- 230760df93eSShen Feng 231760df93eSShen FengThe maximum send socket buffer size in bytes. 232760df93eSShen Feng 233760df93eSShen Fengmessage_burst and message_cost 234760df93eSShen Feng------------------------------ 235760df93eSShen Feng 236760df93eSShen FengThese parameters are used to limit the warning messages written to the kernel 237760df93eSShen Fenglog from the networking code. They enforce a rate limit to make a 238760df93eSShen Fengdenial-of-service attack impossible. A higher message_cost factor, results in 239760df93eSShen Fengfewer messages that will be written. Message_burst controls when messages will 240760df93eSShen Fengbe dropped. The default settings limit warning messages to one every five 241760df93eSShen Fengseconds. 242760df93eSShen Feng 243760df93eSShen Fengwarnings 244760df93eSShen Feng-------- 245760df93eSShen Feng 246ba7a46f1SJoe PerchesThis sysctl is now unused. 247ba7a46f1SJoe Perches 248ba7a46f1SJoe PerchesThis was used to control console messages from the networking stack that 249ba7a46f1SJoe Perchesoccur because of problems on the network like duplicate address or bad 250ba7a46f1SJoe Percheschecksums. 251ba7a46f1SJoe Perches 252ba7a46f1SJoe PerchesThese messages are now emitted at KERN_DEBUG and can generally be enabled 253ba7a46f1SJoe Perchesand controlled by the dynamic_debug facility. 254760df93eSShen Feng 255760df93eSShen Fengnetdev_budget 256760df93eSShen Feng------------- 257760df93eSShen Feng 258760df93eSShen FengMaximum number of packets taken from all interfaces in one polling cycle (NAPI 259760df93eSShen Fengpoll). In one polling cycle interfaces which are registered to polling are 2607acf8a1eSMatthew Whiteheadprobed in a round-robin manner. Also, a polling cycle may not exceed 2617acf8a1eSMatthew Whiteheadnetdev_budget_usecs microseconds, even if netdev_budget has not been 2627acf8a1eSMatthew Whiteheadexhausted. 2637acf8a1eSMatthew Whitehead 2647acf8a1eSMatthew Whiteheadnetdev_budget_usecs 2657acf8a1eSMatthew Whitehead--------------------- 2667acf8a1eSMatthew Whitehead 2677acf8a1eSMatthew WhiteheadMaximum number of microseconds in one NAPI polling cycle. Polling 2687acf8a1eSMatthew Whiteheadwill exit when either netdev_budget_usecs have elapsed during the 2697acf8a1eSMatthew Whiteheadpoll cycle or the number of packets processed reaches netdev_budget. 270760df93eSShen Feng 271760df93eSShen Fengnetdev_max_backlog 272760df93eSShen Feng------------------ 273760df93eSShen Feng 274760df93eSShen FengMaximum number of packets, queued on the INPUT side, when the interface 275760df93eSShen Fengreceives packets faster than kernel can process them. 276760df93eSShen Feng 277960fb622SEric Dumazetnetdev_rss_key 278960fb622SEric Dumazet-------------- 279960fb622SEric Dumazet 280960fb622SEric DumazetRSS (Receive Side Scaling) enabled drivers use a 40 bytes host key that is 281960fb622SEric Dumazetrandomly generated. 282960fb622SEric DumazetSome user space might need to gather its content even if drivers do not 283960fb622SEric Dumazetprovide ethtool -x support yet. 284960fb622SEric Dumazet 28553b95375SMauro Carvalho Chehab:: 28653b95375SMauro Carvalho Chehab 287960fb622SEric Dumazet myhost:~# cat /proc/sys/net/core/netdev_rss_key 288960fb622SEric Dumazet 84:50:f4:00:a8:15:d1:a7:e9:7f:1d:60:35:c7:47:25:42:97:74:ca:56:bb:b6:a1:d8: ... (52 bytes total) 289960fb622SEric Dumazet 290960fb622SEric DumazetFile contains nul bytes if no driver ever called netdev_rss_key_fill() function. 29153b95375SMauro Carvalho Chehab 292960fb622SEric DumazetNote: 293960fb622SEric Dumazet /proc/sys/net/core/netdev_rss_key contains 52 bytes of key, 294960fb622SEric Dumazet but most drivers only use 40 bytes of it. 295960fb622SEric Dumazet 29653b95375SMauro Carvalho Chehab:: 29753b95375SMauro Carvalho Chehab 298960fb622SEric Dumazet myhost:~# ethtool -x eth0 299960fb622SEric Dumazet RX flow hash indirection table for eth0 with 8 RX ring(s): 300960fb622SEric Dumazet 0: 0 1 2 3 4 5 6 7 301960fb622SEric Dumazet RSS hash key: 302960fb622SEric Dumazet 84:50:f4:00:a8:15:d1:a7:e9:7f:1d:60:35:c7:47:25:42:97:74:ca:56:bb:b6:a1:d8:43:e3:c9:0c:fd:17:55:c2:3a:4d:69:ed:f1:42:89 3032644ccefSMauro Carvalho Chehab 3043b098e2dSEric Dumazetnetdev_tstamp_prequeue 3053b098e2dSEric Dumazet---------------------- 3063b098e2dSEric Dumazet 3073b098e2dSEric DumazetIf set to 0, RX packet timestamps can be sampled after RPS processing, when 3083b098e2dSEric Dumazetthe target CPU processes packets. It might give some delay on timestamps, but 3093b098e2dSEric Dumazetpermit to distribute the load on several cpus. 3103b098e2dSEric Dumazet 3113b098e2dSEric DumazetIf set to 1 (default), timestamps are sampled as soon as possible, before 3123b098e2dSEric Dumazetqueueing. 3133b098e2dSEric Dumazet 3145aa3afe1SDmitry Vyukovnetdev_unregister_timeout_secs 3155aa3afe1SDmitry Vyukov------------------------------ 3165aa3afe1SDmitry Vyukov 3175aa3afe1SDmitry VyukovUnregister network device timeout in seconds. 3185aa3afe1SDmitry VyukovThis option controls the timeout (in seconds) used to issue a warning while 3195aa3afe1SDmitry Vyukovwaiting for a network device refcount to drop to 0 during device 3205aa3afe1SDmitry Vyukovunregistration. A lower value may be useful during bisection to detect 3215aa3afe1SDmitry Vyukova leaked reference faster. A larger value may be useful to prevent false 3225aa3afe1SDmitry Vyukovwarnings on slow/loaded systems. 3236c996e19SDmitry VyukovDefault value is 10, minimum 1, maximum 3600. 3245aa3afe1SDmitry Vyukov 325760df93eSShen Fengoptmem_max 326760df93eSShen Feng---------- 327760df93eSShen Feng 328760df93eSShen FengMaximum ancillary buffer size allowed per socket. Ancillary data is a sequence 329760df93eSShen Fengof struct cmsghdr structures with appended data. 330760df93eSShen Feng 33179134e6cSEric Dumazetfb_tunnels_only_for_init_net 33279134e6cSEric Dumazet---------------------------- 33379134e6cSEric Dumazet 33479134e6cSEric DumazetControls if fallback tunnels (like tunl0, gre0, gretap0, erspan0, 335316cdaa1SMahesh Bandewarsit0, ip6tnl0, ip6gre0) are automatically created. There are 3 possibilities 336316cdaa1SMahesh Bandewar(a) value = 0; respective fallback tunnels are created when module is 337316cdaa1SMahesh Bandewarloaded in every net namespaces (backward compatible behavior). 338316cdaa1SMahesh Bandewar(b) value = 1; [kcmd value: initns] respective fallback tunnels are 339316cdaa1SMahesh Bandewarcreated only in init net namespace and every other net namespace will 340316cdaa1SMahesh Bandewarnot have them. 341316cdaa1SMahesh Bandewar(c) value = 2; [kcmd value: none] fallback tunnels are not created 342316cdaa1SMahesh Bandewarwhen a module is loaded in any of the net namespace. Setting value to 343316cdaa1SMahesh Bandewar"2" is pointless after boot if these modules are built-in, so there is 344316cdaa1SMahesh Bandewara kernel command-line option that can change this default. Please refer to 345316cdaa1SMahesh BandewarDocumentation/admin-guide/kernel-parameters.txt for additional details. 346316cdaa1SMahesh Bandewar 347316cdaa1SMahesh BandewarNot creating fallback tunnels gives control to userspace to create 348316cdaa1SMahesh Bandewarwhatever is needed only and avoid creating devices which are redundant. 34979134e6cSEric Dumazet 35079134e6cSEric DumazetDefault : 0 (for compatibility reasons) 35179134e6cSEric Dumazet 352856c395cSCong Wangdevconf_inherit_init_net 35353b95375SMauro Carvalho Chehab------------------------ 354856c395cSCong Wang 355856c395cSCong WangControls if a new network namespace should inherit all current 356856c395cSCong Wangsettings under /proc/sys/net/{ipv4,ipv6}/conf/{all,default}/. By 357856c395cSCong Wangdefault, we keep the current behavior: for IPv4 we inherit all current 358856c395cSCong Wangsettings from init_net and for IPv6 we reset all settings to default. 359856c395cSCong Wang 360856c395cSCong WangIf set to 1, both IPv4 and IPv6 settings are forced to inherit from 361856c395cSCong Wangcurrent ones in init_net. If set to 2, both IPv4 and IPv6 settings are 3629efd6a3cSNicolas Dichtelforced to reset to their default values. If set to 3, both IPv4 and IPv6 3639efd6a3cSNicolas Dichtelsettings are forced to inherit from current ones in the netns where this 3649efd6a3cSNicolas Dichtelnew netns has been created. 365856c395cSCong Wang 366856c395cSCong WangDefault : 0 (for compatibility reasons) 367856c395cSCong Wang 3682127324aSAkhmat Karakotovtxrehash 3692127324aSAkhmat Karakotov-------- 3702127324aSAkhmat Karakotov 3712127324aSAkhmat KarakotovControls default hash rethink behaviour on listening socket when SO_TXREHASH 3722127324aSAkhmat Karakotovoption is set to SOCK_TXREHASH_DEFAULT (i. e. not overridden by setsockopt). 3732127324aSAkhmat Karakotov 3742127324aSAkhmat KarakotovIf set to 1 (default), hash rethink is performed on listening socket. 3752127324aSAkhmat KarakotovIf set to 0, hash rethink is not performed. 3762127324aSAkhmat Karakotov 377760df93eSShen Feng2. /proc/sys/net/unix - Parameters for Unix domain sockets 37853b95375SMauro Carvalho Chehab---------------------------------------------------------- 379760df93eSShen Feng 38045dad7bdSLi XiaodongThere is only one file in this directory. 38145dad7bdSLi Xiaodongunix_dgram_qlen limits the max number of datagrams queued in Unix domain 382ca8b9950SLi Zefansocket's buffer. It will not take effect unless PF_UNIX flag is specified. 383760df93eSShen Feng 384760df93eSShen Feng 385760df93eSShen Feng3. /proc/sys/net/ipv4 - IPV4 settings 38653b95375SMauro Carvalho Chehab------------------------------------- 38782a07bf3SMauro Carvalho ChehabPlease see: Documentation/networking/ip-sysctl.rst and 38882a07bf3SMauro Carvalho ChehabDocumentation/admin-guide/sysctl/net.rst for descriptions of these entries. 389760df93eSShen Feng 390760df93eSShen Feng 391760df93eSShen Feng4. Appletalk 39253b95375SMauro Carvalho Chehab------------ 393760df93eSShen Feng 394760df93eSShen FengThe /proc/sys/net/appletalk directory holds the Appletalk configuration data 395760df93eSShen Fengwhen Appletalk is loaded. The configurable parameters are: 396760df93eSShen Feng 397760df93eSShen Fengaarp-expiry-time 398760df93eSShen Feng---------------- 399760df93eSShen Feng 400760df93eSShen FengThe amount of time we keep an ARP entry before expiring it. Used to age out 401760df93eSShen Fengold hosts. 402760df93eSShen Feng 403760df93eSShen Fengaarp-resolve-time 404760df93eSShen Feng----------------- 405760df93eSShen Feng 406760df93eSShen FengThe amount of time we will spend trying to resolve an Appletalk address. 407760df93eSShen Feng 408760df93eSShen Fengaarp-retransmit-limit 409760df93eSShen Feng--------------------- 410760df93eSShen Feng 411760df93eSShen FengThe number of times we will retransmit a query before giving up. 412760df93eSShen Feng 413760df93eSShen Fengaarp-tick-time 414760df93eSShen Feng-------------- 415760df93eSShen Feng 416760df93eSShen FengControls the rate at which expires are checked. 417760df93eSShen Feng 418760df93eSShen FengThe directory /proc/net/appletalk holds the list of active Appletalk sockets 419760df93eSShen Fengon a machine. 420760df93eSShen Feng 421760df93eSShen FengThe fields indicate the DDP type, the local address (in network:node format) 422760df93eSShen Fengthe remote address, the size of the transmit pending queue, the size of the 423760df93eSShen Fengreceived queue (bytes waiting for applications to read) the state and the uid 424760df93eSShen Fengowning the socket. 425760df93eSShen Feng 426760df93eSShen Feng/proc/net/atalk_iface lists all the interfaces configured for appletalk.It 427760df93eSShen Fengshows the name of the interface, its Appletalk address, the network range on 428760df93eSShen Fengthat address (or network number for phase 1 networks), and the status of the 429760df93eSShen Fenginterface. 430760df93eSShen Feng 431760df93eSShen Feng/proc/net/atalk_route lists each known network route. It lists the target 432760df93eSShen Feng(network) that the route leads to, the router (may be directly connected), the 433760df93eSShen Fengroute flags, and the device the route is using. 434760df93eSShen Feng 4357e7c076eSStephen Hemminger5. TIPC 43653b95375SMauro Carvalho Chehab------- 437cc79dd1bSYing Xue 438a5325ae5SErik Hugnetipc_rmem 43953b95375SMauro Carvalho Chehab--------- 440a5325ae5SErik Hugne 441cc79dd1bSYing XueThe TIPC protocol now has a tunable for the receive memory, similar to the 442cc79dd1bSYing Xuetcp_rmem - i.e. a vector of 3 INTEGERs: (min, default, max) 443cc79dd1bSYing Xue 44453b95375SMauro Carvalho Chehab:: 44553b95375SMauro Carvalho Chehab 446cc79dd1bSYing Xue # cat /proc/sys/net/tipc/tipc_rmem 447cc79dd1bSYing Xue 4252725 34021800 68043600 448cc79dd1bSYing Xue # 449cc79dd1bSYing Xue 450cc79dd1bSYing XueThe max value is set to CONN_OVERLOAD_LIMIT, and the default and min values 451cc79dd1bSYing Xueare scaled (shifted) versions of that same value. Note that the min value 452cc79dd1bSYing Xueis not at this point in time used in any meaningful way, but the triplet is 453cc79dd1bSYing Xuepreserved in order to be consistent with things like tcp_rmem. 454a5325ae5SErik Hugne 455a5325ae5SErik Hugnenamed_timeout 45653b95375SMauro Carvalho Chehab------------- 457a5325ae5SErik Hugne 458a5325ae5SErik HugneTIPC name table updates are distributed asynchronously in a cluster, without 459a5325ae5SErik Hugneany form of transaction handling. This means that different race scenarios are 460a5325ae5SErik Hugnepossible. One such is that a name withdrawal sent out by one node and received 461a5325ae5SErik Hugneby another node may arrive after a second, overlapping name publication already 462a5325ae5SErik Hugnehas been accepted from a third node, although the conflicting updates 463a5325ae5SErik Hugneoriginally may have been issued in the correct sequential order. 464a5325ae5SErik HugneIf named_timeout is nonzero, failed topology updates will be placed on a defer 465a5325ae5SErik Hugnequeue until another event arrives that clears the error, or until the timeout 466a5325ae5SErik Hugneexpires. Value is in milliseconds. 467