~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/net/sched/Kconfig

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /net/sched/Kconfig (Version linux-6.12-rc7) and /net/sched/Kconfig (Version linux-5.5.19)


  1 # SPDX-License-Identifier: GPL-2.0-only             1 # SPDX-License-Identifier: GPL-2.0-only
  2 #                                                   2 #
  3 # Traffic control configuration.                    3 # Traffic control configuration.
  4 #                                                   4 #
  5                                                     5 
  6 menuconfig NET_SCHED                                6 menuconfig NET_SCHED
  7         bool "QoS and/or fair queueing"             7         bool "QoS and/or fair queueing"
  8         select NET_SCH_FIFO                         8         select NET_SCH_FIFO
  9         help                                   !!   9         ---help---
 10           When the kernel has several packets      10           When the kernel has several packets to send out over a network
 11           device, it has to decide which ones      11           device, it has to decide which ones to send first, which ones to
 12           delay, and which ones to drop. This      12           delay, and which ones to drop. This is the job of the queueing
 13           disciplines, several different algor     13           disciplines, several different algorithms for how to do this
 14           "fairly" have been proposed.             14           "fairly" have been proposed.
 15                                                    15 
 16           If you say N here, you will get the      16           If you say N here, you will get the standard packet scheduler, which
 17           is a FIFO (first come, first served)     17           is a FIFO (first come, first served). If you say Y here, you will be
 18           able to choose from among several al     18           able to choose from among several alternative algorithms which can
 19           then be attached to different networ     19           then be attached to different network devices. This is useful for
 20           example if some of your network devi     20           example if some of your network devices are real time devices that
 21           need a certain minimum data flow rat     21           need a certain minimum data flow rate, or if you need to limit the
 22           maximum data flow rate for traffic w     22           maximum data flow rate for traffic which matches specified criteria.
 23           This code is considered to be experi     23           This code is considered to be experimental.
 24                                                    24 
 25           To administer these schedulers, you'     25           To administer these schedulers, you'll need the user-level utilities
 26           from the package iproute2+tc at          26           from the package iproute2+tc at
 27           <https://www.kernel.org/pub/linux/ut     27           <https://www.kernel.org/pub/linux/utils/net/iproute2/>.  That package
 28           also contains some documentation; fo     28           also contains some documentation; for more, check out
 29           <http://www.linuxfoundation.org/coll     29           <http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2>.
 30                                                    30 
 31           This Quality of Service (QoS) suppor     31           This Quality of Service (QoS) support will enable you to use
 32           Differentiated Services (diffserv) a     32           Differentiated Services (diffserv) and Resource Reservation Protocol
 33           (RSVP) on your Linux router if you a     33           (RSVP) on your Linux router if you also say Y to the corresponding
 34           classifiers below.  Documentation an     34           classifiers below.  Documentation and software is at
 35           <http://diffserv.sourceforge.net/>.      35           <http://diffserv.sourceforge.net/>.
 36                                                    36 
 37           If you say Y here and to "/proc file     37           If you say Y here and to "/proc file system" below, you will be able
 38           to read status information about pac     38           to read status information about packet schedulers from the file
 39           /proc/net/psched.                        39           /proc/net/psched.
 40                                                    40 
 41           The available schedulers are listed      41           The available schedulers are listed in the following questions; you
 42           can say Y to as many as you like. If     42           can say Y to as many as you like. If unsure, say N now.
 43                                                    43 
 44 if NET_SCHED                                       44 if NET_SCHED
 45                                                    45 
 46 comment "Queueing/Scheduling"                      46 comment "Queueing/Scheduling"
 47                                                    47 
                                                   >>  48 config NET_SCH_CBQ
                                                   >>  49         tristate "Class Based Queueing (CBQ)"
                                                   >>  50         ---help---
                                                   >>  51           Say Y here if you want to use the Class-Based Queueing (CBQ) packet
                                                   >>  52           scheduling algorithm. This algorithm classifies the waiting packets
                                                   >>  53           into a tree-like hierarchy of classes; the leaves of this tree are
                                                   >>  54           in turn scheduled by separate algorithms.
                                                   >>  55 
                                                   >>  56           See the top of <file:net/sched/sch_cbq.c> for more details.
                                                   >>  57 
                                                   >>  58           CBQ is a commonly used scheduler, so if you're unsure, you should
                                                   >>  59           say Y here. Then say Y to all the queueing algorithms below that you
                                                   >>  60           want to use as leaf disciplines.
                                                   >>  61 
                                                   >>  62           To compile this code as a module, choose M here: the
                                                   >>  63           module will be called sch_cbq.
                                                   >>  64 
 48 config NET_SCH_HTB                                 65 config NET_SCH_HTB
 49         tristate "Hierarchical Token Bucket (H     66         tristate "Hierarchical Token Bucket (HTB)"
 50         help                                   !!  67         ---help---
 51           Say Y here if you want to use the Hi     68           Say Y here if you want to use the Hierarchical Token Buckets (HTB)
 52           packet scheduling algorithm. See         69           packet scheduling algorithm. See
 53           <http://luxik.cdi.cz/~devik/qos/htb/     70           <http://luxik.cdi.cz/~devik/qos/htb/> for complete manual and
 54           in-depth articles.                       71           in-depth articles.
 55                                                    72 
 56           HTB is very similar to CBQ regarding     73           HTB is very similar to CBQ regarding its goals however is has
 57           different properties and different a     74           different properties and different algorithm.
 58                                                    75 
 59           To compile this code as a module, ch     76           To compile this code as a module, choose M here: the
 60           module will be called sch_htb.           77           module will be called sch_htb.
 61                                                    78 
 62 config NET_SCH_HFSC                                79 config NET_SCH_HFSC
 63         tristate "Hierarchical Fair Service Cu     80         tristate "Hierarchical Fair Service Curve (HFSC)"
 64         help                                   !!  81         ---help---
 65           Say Y here if you want to use the Hi     82           Say Y here if you want to use the Hierarchical Fair Service Curve
 66           (HFSC) packet scheduling algorithm.      83           (HFSC) packet scheduling algorithm.
 67                                                    84 
 68           To compile this code as a module, ch     85           To compile this code as a module, choose M here: the
 69           module will be called sch_hfsc.          86           module will be called sch_hfsc.
 70                                                    87 
                                                   >>  88 config NET_SCH_ATM
                                                   >>  89         tristate "ATM Virtual Circuits (ATM)"
                                                   >>  90         depends on ATM
                                                   >>  91         ---help---
                                                   >>  92           Say Y here if you want to use the ATM pseudo-scheduler.  This
                                                   >>  93           provides a framework for invoking classifiers, which in turn
                                                   >>  94           select classes of this queuing discipline.  Each class maps
                                                   >>  95           the flow(s) it is handling to a given virtual circuit.
                                                   >>  96 
                                                   >>  97           See the top of <file:net/sched/sch_atm.c> for more details.
                                                   >>  98 
                                                   >>  99           To compile this code as a module, choose M here: the
                                                   >> 100           module will be called sch_atm.
                                                   >> 101 
 71 config NET_SCH_PRIO                               102 config NET_SCH_PRIO
 72         tristate "Multi Band Priority Queueing    103         tristate "Multi Band Priority Queueing (PRIO)"
 73         help                                   !! 104         ---help---
 74           Say Y here if you want to use an n-b    105           Say Y here if you want to use an n-band priority queue packet
 75           scheduler.                              106           scheduler.
 76                                                   107 
 77           To compile this code as a module, ch    108           To compile this code as a module, choose M here: the
 78           module will be called sch_prio.         109           module will be called sch_prio.
 79                                                   110 
 80 config NET_SCH_MULTIQ                             111 config NET_SCH_MULTIQ
 81         tristate "Hardware Multiqueue-aware Mu    112         tristate "Hardware Multiqueue-aware Multi Band Queuing (MULTIQ)"
 82         help                                   !! 113         ---help---
 83           Say Y here if you want to use an n-b    114           Say Y here if you want to use an n-band queue packet scheduler
 84           to support devices that have multipl    115           to support devices that have multiple hardware transmit queues.
 85                                                   116 
 86           To compile this code as a module, ch    117           To compile this code as a module, choose M here: the
 87           module will be called sch_multiq.       118           module will be called sch_multiq.
 88                                                   119 
 89 config NET_SCH_RED                                120 config NET_SCH_RED
 90         tristate "Random Early Detection (RED)    121         tristate "Random Early Detection (RED)"
 91         help                                   !! 122         ---help---
 92           Say Y here if you want to use the Ra    123           Say Y here if you want to use the Random Early Detection (RED)
 93           packet scheduling algorithm.            124           packet scheduling algorithm.
 94                                                   125 
 95           See the top of <file:net/sched/sch_r    126           See the top of <file:net/sched/sch_red.c> for more details.
 96                                                   127 
 97           To compile this code as a module, ch    128           To compile this code as a module, choose M here: the
 98           module will be called sch_red.          129           module will be called sch_red.
 99                                                   130 
100 config NET_SCH_SFB                                131 config NET_SCH_SFB
101         tristate "Stochastic Fair Blue (SFB)"     132         tristate "Stochastic Fair Blue (SFB)"
102         help                                   !! 133         ---help---
103           Say Y here if you want to use the St    134           Say Y here if you want to use the Stochastic Fair Blue (SFB)
104           packet scheduling algorithm.            135           packet scheduling algorithm.
105                                                   136 
106           See the top of <file:net/sched/sch_s    137           See the top of <file:net/sched/sch_sfb.c> for more details.
107                                                   138 
108           To compile this code as a module, ch    139           To compile this code as a module, choose M here: the
109           module will be called sch_sfb.          140           module will be called sch_sfb.
110                                                   141 
111 config NET_SCH_SFQ                                142 config NET_SCH_SFQ
112         tristate "Stochastic Fairness Queueing    143         tristate "Stochastic Fairness Queueing (SFQ)"
113         help                                   !! 144         ---help---
114           Say Y here if you want to use the St    145           Say Y here if you want to use the Stochastic Fairness Queueing (SFQ)
115           packet scheduling algorithm.            146           packet scheduling algorithm.
116                                                   147 
117           See the top of <file:net/sched/sch_s    148           See the top of <file:net/sched/sch_sfq.c> for more details.
118                                                   149 
119           To compile this code as a module, ch    150           To compile this code as a module, choose M here: the
120           module will be called sch_sfq.          151           module will be called sch_sfq.
121                                                   152 
122 config NET_SCH_TEQL                               153 config NET_SCH_TEQL
123         tristate "True Link Equalizer (TEQL)"     154         tristate "True Link Equalizer (TEQL)"
124         help                                   !! 155         ---help---
125           Say Y here if you want to use the Tr    156           Say Y here if you want to use the True Link Equalizer (TLE) packet
126           scheduling algorithm. This queueing     157           scheduling algorithm. This queueing discipline allows the combination
127           of several physical devices into one    158           of several physical devices into one virtual device.
128                                                   159 
129           See the top of <file:net/sched/sch_t    160           See the top of <file:net/sched/sch_teql.c> for more details.
130                                                   161 
131           To compile this code as a module, ch    162           To compile this code as a module, choose M here: the
132           module will be called sch_teql.         163           module will be called sch_teql.
133                                                   164 
134 config NET_SCH_TBF                                165 config NET_SCH_TBF
135         tristate "Token Bucket Filter (TBF)"      166         tristate "Token Bucket Filter (TBF)"
136         help                                   !! 167         ---help---
137           Say Y here if you want to use the To    168           Say Y here if you want to use the Token Bucket Filter (TBF) packet
138           scheduling algorithm.                   169           scheduling algorithm.
139                                                   170 
140           See the top of <file:net/sched/sch_t    171           See the top of <file:net/sched/sch_tbf.c> for more details.
141                                                   172 
142           To compile this code as a module, ch    173           To compile this code as a module, choose M here: the
143           module will be called sch_tbf.          174           module will be called sch_tbf.
144                                                   175 
145 config NET_SCH_CBS                                176 config NET_SCH_CBS
146         tristate "Credit Based Shaper (CBS)"      177         tristate "Credit Based Shaper (CBS)"
147         help                                   !! 178         ---help---
148           Say Y here if you want to use the Cr    179           Say Y here if you want to use the Credit Based Shaper (CBS) packet
149           scheduling algorithm.                   180           scheduling algorithm.
150                                                   181 
151           See the top of <file:net/sched/sch_c    182           See the top of <file:net/sched/sch_cbs.c> for more details.
152                                                   183 
153           To compile this code as a module, ch    184           To compile this code as a module, choose M here: the
154           module will be called sch_cbs.          185           module will be called sch_cbs.
155                                                   186 
156 config NET_SCH_ETF                                187 config NET_SCH_ETF
157         tristate "Earliest TxTime First (ETF)"    188         tristate "Earliest TxTime First (ETF)"
158         help                                      189         help
159           Say Y here if you want to use the Ea    190           Say Y here if you want to use the Earliest TxTime First (ETF) packet
160           scheduling algorithm.                   191           scheduling algorithm.
161                                                   192 
162           See the top of <file:net/sched/sch_e    193           See the top of <file:net/sched/sch_etf.c> for more details.
163                                                   194 
164           To compile this code as a module, ch    195           To compile this code as a module, choose M here: the
165           module will be called sch_etf.          196           module will be called sch_etf.
166                                                   197 
167 config NET_SCH_MQPRIO_LIB                      << 
168         tristate                               << 
169         help                                   << 
170           Common library for manipulating mqpr << 
171                                                << 
172 config NET_SCH_TAPRIO                             198 config NET_SCH_TAPRIO
173         tristate "Time Aware Priority (taprio)    199         tristate "Time Aware Priority (taprio) Scheduler"
174         select NET_SCH_MQPRIO_LIB              << 
175         help                                      200         help
176           Say Y here if you want to use the Ti    201           Say Y here if you want to use the Time Aware Priority (taprio) packet
177           scheduling algorithm.                   202           scheduling algorithm.
178                                                   203 
179           See the top of <file:net/sched/sch_t    204           See the top of <file:net/sched/sch_taprio.c> for more details.
180                                                   205 
181           To compile this code as a module, ch    206           To compile this code as a module, choose M here: the
182           module will be called sch_taprio.       207           module will be called sch_taprio.
183                                                   208 
184 config NET_SCH_GRED                               209 config NET_SCH_GRED
185         tristate "Generic Random Early Detecti    210         tristate "Generic Random Early Detection (GRED)"
186         help                                   !! 211         ---help---
187           Say Y here if you want to use the Ge    212           Say Y here if you want to use the Generic Random Early Detection
188           (GRED) packet scheduling algorithm f    213           (GRED) packet scheduling algorithm for some of your network devices
189           (see the top of <file:net/sched/sch_    214           (see the top of <file:net/sched/sch_red.c> for details and
190           references about the algorithm).        215           references about the algorithm).
191                                                   216 
192           To compile this code as a module, ch    217           To compile this code as a module, choose M here: the
193           module will be called sch_gred.         218           module will be called sch_gred.
194                                                   219 
                                                   >> 220 config NET_SCH_DSMARK
                                                   >> 221         tristate "Differentiated Services marker (DSMARK)"
                                                   >> 222         ---help---
                                                   >> 223           Say Y if you want to schedule packets according to the
                                                   >> 224           Differentiated Services architecture proposed in RFC 2475.
                                                   >> 225           Technical information on this method, with pointers to associated
                                                   >> 226           RFCs, is available at <http://www.gta.ufrj.br/diffserv/>.
                                                   >> 227 
                                                   >> 228           To compile this code as a module, choose M here: the
                                                   >> 229           module will be called sch_dsmark.
                                                   >> 230 
195 config NET_SCH_NETEM                              231 config NET_SCH_NETEM
196         tristate "Network emulator (NETEM)"       232         tristate "Network emulator (NETEM)"
197         help                                   !! 233         ---help---
198           Say Y if you want to emulate network    234           Say Y if you want to emulate network delay, loss, and packet
199           re-ordering. This is often useful to    235           re-ordering. This is often useful to simulate networks when
200           testing applications or protocols.      236           testing applications or protocols.
201                                                   237 
202           To compile this driver as a module,     238           To compile this driver as a module, choose M here: the module
203           will be called sch_netem.               239           will be called sch_netem.
204                                                   240 
205           If unsure, say N.                       241           If unsure, say N.
206                                                   242 
207 config NET_SCH_DRR                                243 config NET_SCH_DRR
208         tristate "Deficit Round Robin schedule    244         tristate "Deficit Round Robin scheduler (DRR)"
209         help                                      245         help
210           Say Y here if you want to use the De    246           Say Y here if you want to use the Deficit Round Robin (DRR) packet
211           scheduling algorithm.                   247           scheduling algorithm.
212                                                   248 
213           To compile this driver as a module,     249           To compile this driver as a module, choose M here: the module
214           will be called sch_drr.                 250           will be called sch_drr.
215                                                   251 
216           If unsure, say N.                       252           If unsure, say N.
217                                                   253 
218 config NET_SCH_MQPRIO                             254 config NET_SCH_MQPRIO
219         tristate "Multi-queue priority schedul    255         tristate "Multi-queue priority scheduler (MQPRIO)"
220         select NET_SCH_MQPRIO_LIB              << 
221         help                                      256         help
222           Say Y here if you want to use the Mu    257           Say Y here if you want to use the Multi-queue Priority scheduler.
223           This scheduler allows QOS to be offl    258           This scheduler allows QOS to be offloaded on NICs that have support
224           for offloading QOS schedulers.          259           for offloading QOS schedulers.
225                                                   260 
226           To compile this driver as a module,     261           To compile this driver as a module, choose M here: the module will
227           be called sch_mqprio.                   262           be called sch_mqprio.
228                                                   263 
229           If unsure, say N.                       264           If unsure, say N.
230                                                   265 
231 config NET_SCH_SKBPRIO                            266 config NET_SCH_SKBPRIO
232         tristate "SKB priority queue scheduler    267         tristate "SKB priority queue scheduler (SKBPRIO)"
233         help                                      268         help
234           Say Y here if you want to use the SK    269           Say Y here if you want to use the SKB priority queue
235           scheduler. This schedules packets ac    270           scheduler. This schedules packets according to skb->priority,
236           which is useful for request packets     271           which is useful for request packets in DoS mitigation systems such
237           as Gatekeeper.                          272           as Gatekeeper.
238                                                   273 
239           To compile this driver as a module,     274           To compile this driver as a module, choose M here: the module will
240           be called sch_skbprio.                  275           be called sch_skbprio.
241                                                   276 
242           If unsure, say N.                       277           If unsure, say N.
243                                                   278 
244 config NET_SCH_CHOKE                              279 config NET_SCH_CHOKE
245         tristate "CHOose and Keep responsive f    280         tristate "CHOose and Keep responsive flow scheduler (CHOKE)"
246         help                                      281         help
247           Say Y here if you want to use the CH    282           Say Y here if you want to use the CHOKe packet scheduler (CHOose
248           and Keep for responsive flows, CHOos    283           and Keep for responsive flows, CHOose and Kill for unresponsive
249           flows). This is a variation of RED w !! 284           flows). This is a variation of RED which trys to penalize flows
250           that monopolize the queue.              285           that monopolize the queue.
251                                                   286 
252           To compile this code as a module, ch    287           To compile this code as a module, choose M here: the
253           module will be called sch_choke.        288           module will be called sch_choke.
254                                                   289 
255 config NET_SCH_QFQ                                290 config NET_SCH_QFQ
256         tristate "Quick Fair Queueing schedule    291         tristate "Quick Fair Queueing scheduler (QFQ)"
257         help                                      292         help
258           Say Y here if you want to use the Qu    293           Say Y here if you want to use the Quick Fair Queueing Scheduler (QFQ)
259           packet scheduling algorithm.            294           packet scheduling algorithm.
260                                                   295 
261           To compile this driver as a module,     296           To compile this driver as a module, choose M here: the module
262           will be called sch_qfq.                 297           will be called sch_qfq.
263                                                   298 
264           If unsure, say N.                       299           If unsure, say N.
265                                                   300 
266 config NET_SCH_CODEL                              301 config NET_SCH_CODEL
267         tristate "Controlled Delay AQM (CODEL)    302         tristate "Controlled Delay AQM (CODEL)"
268         help                                      303         help
269           Say Y here if you want to use the Co    304           Say Y here if you want to use the Controlled Delay (CODEL)
270           packet scheduling algorithm.            305           packet scheduling algorithm.
271                                                   306 
272           To compile this driver as a module,     307           To compile this driver as a module, choose M here: the module
273           will be called sch_codel.               308           will be called sch_codel.
274                                                   309 
275           If unsure, say N.                       310           If unsure, say N.
276                                                   311 
277 config NET_SCH_FQ_CODEL                           312 config NET_SCH_FQ_CODEL
278         tristate "Fair Queue Controlled Delay     313         tristate "Fair Queue Controlled Delay AQM (FQ_CODEL)"
279         help                                      314         help
280           Say Y here if you want to use the FQ    315           Say Y here if you want to use the FQ Controlled Delay (FQ_CODEL)
281           packet scheduling algorithm.            316           packet scheduling algorithm.
282                                                   317 
283           To compile this driver as a module,     318           To compile this driver as a module, choose M here: the module
284           will be called sch_fq_codel.            319           will be called sch_fq_codel.
285                                                   320 
286           If unsure, say N.                       321           If unsure, say N.
287                                                   322 
288 config NET_SCH_CAKE                               323 config NET_SCH_CAKE
289         tristate "Common Applications Kept Enh    324         tristate "Common Applications Kept Enhanced (CAKE)"
290         help                                      325         help
291           Say Y here if you want to use the Co    326           Say Y here if you want to use the Common Applications Kept Enhanced
292           (CAKE) queue management algorithm.      327           (CAKE) queue management algorithm.
293                                                   328 
294           To compile this driver as a module,     329           To compile this driver as a module, choose M here: the module
295           will be called sch_cake.                330           will be called sch_cake.
296                                                   331 
297           If unsure, say N.                       332           If unsure, say N.
298                                                   333 
299 config NET_SCH_FQ                                 334 config NET_SCH_FQ
300         tristate "Fair Queue"                     335         tristate "Fair Queue"
301         help                                      336         help
302           Say Y here if you want to use the FQ    337           Say Y here if you want to use the FQ packet scheduling algorithm.
303                                                   338 
304           FQ does flow separation, and is able    339           FQ does flow separation, and is able to respect pacing requirements
305           set by TCP stack into sk->sk_pacing_ !! 340           set by TCP stack into sk->sk_pacing_rate (for localy generated
306           traffic)                                341           traffic)
307                                                   342 
308           To compile this driver as a module,     343           To compile this driver as a module, choose M here: the module
309           will be called sch_fq.                  344           will be called sch_fq.
310                                                   345 
311           If unsure, say N.                       346           If unsure, say N.
312                                                   347 
313 config NET_SCH_HHF                                348 config NET_SCH_HHF
314         tristate "Heavy-Hitter Filter (HHF)"      349         tristate "Heavy-Hitter Filter (HHF)"
315         help                                      350         help
316           Say Y here if you want to use the He    351           Say Y here if you want to use the Heavy-Hitter Filter (HHF)
317           packet scheduling algorithm.            352           packet scheduling algorithm.
318                                                   353 
319           To compile this driver as a module,     354           To compile this driver as a module, choose M here: the module
320           will be called sch_hhf.                 355           will be called sch_hhf.
321                                                   356 
322 config NET_SCH_PIE                                357 config NET_SCH_PIE
323         tristate "Proportional Integral contro    358         tristate "Proportional Integral controller Enhanced (PIE) scheduler"
324         help                                      359         help
325           Say Y here if you want to use the Pr    360           Say Y here if you want to use the Proportional Integral controller
326           Enhanced scheduler packet scheduling    361           Enhanced scheduler packet scheduling algorithm.
327           For more information, please see htt    362           For more information, please see https://tools.ietf.org/html/rfc8033
328                                                   363 
329           To compile this driver as a module,     364           To compile this driver as a module, choose M here: the module
330           will be called sch_pie.                 365           will be called sch_pie.
331                                                   366 
332           If unsure, say N.                       367           If unsure, say N.
333                                                   368 
334 config NET_SCH_FQ_PIE                          << 
335         depends on NET_SCH_PIE                 << 
336         tristate "Flow Queue Proportional Inte << 
337         help                                   << 
338           Say Y here if you want to use the Fl << 
339           controller Enhanced (FQ-PIE) packet  << 
340           For more information, please see htt << 
341                                                << 
342           To compile this driver as a module,  << 
343           will be called sch_fq_pie.           << 
344                                                << 
345           If unsure, say N.                    << 
346                                                << 
347 config NET_SCH_INGRESS                            369 config NET_SCH_INGRESS
348         tristate "Ingress/classifier-action Qd    370         tristate "Ingress/classifier-action Qdisc"
349         depends on NET_CLS_ACT                    371         depends on NET_CLS_ACT
350         select NET_XGRESS                      !! 372         select NET_INGRESS
351         help                                   !! 373         select NET_EGRESS
                                                   >> 374         ---help---
352           Say Y here if you want to use classi    375           Say Y here if you want to use classifiers for incoming and/or outgoing
353           packets. This qdisc doesn't do anyth    376           packets. This qdisc doesn't do anything else besides running classifiers,
354           which can also have actions attached    377           which can also have actions attached to them. In case of outgoing packets,
355           classifiers that this qdisc holds ar    378           classifiers that this qdisc holds are executed in the transmit path
356           before real enqueuing to an egress q    379           before real enqueuing to an egress qdisc happens.
357                                                   380 
358           If unsure, say Y.                       381           If unsure, say Y.
359                                                   382 
360           To compile this code as a module, ch    383           To compile this code as a module, choose M here: the module will be
361           called sch_ingress with alias of sch    384           called sch_ingress with alias of sch_clsact.
362                                                   385 
363 config NET_SCH_PLUG                               386 config NET_SCH_PLUG
364         tristate "Plug network traffic until r    387         tristate "Plug network traffic until release (PLUG)"
365         help                                   !! 388         ---help---
366                                                   389 
367           This queuing discipline allows users    390           This queuing discipline allows userspace to plug/unplug a network
368           output queue, using the netlink inte    391           output queue, using the netlink interface.  When it receives an
369           enqueue command it inserts a plug in    392           enqueue command it inserts a plug into the outbound queue that
370           causes following packets to enqueue     393           causes following packets to enqueue until a dequeue command arrives
371           over netlink, causing the plug to be    394           over netlink, causing the plug to be removed and resuming the normal
372           packet flow.                            395           packet flow.
373                                                   396 
374           This module also provides a generic     397           This module also provides a generic "network output buffering"
375           functionality (aka output commit), w    398           functionality (aka output commit), wherein upon arrival of a dequeue
376           command, only packets up to the firs    399           command, only packets up to the first plug are released for delivery.
377           The Remus HA project uses this modul    400           The Remus HA project uses this module to enable speculative execution
378           of virtual machines by allowing the     401           of virtual machines by allowing the generated network output to be rolled
379           back if needed.                         402           back if needed.
380                                                   403 
381           For more information, please refer t    404           For more information, please refer to <http://wiki.xenproject.org/wiki/Remus>
382                                                   405 
383           Say Y here if you are using this ker    406           Say Y here if you are using this kernel for Xen dom0 and
384           want to protect Xen guests with Remu    407           want to protect Xen guests with Remus.
385                                                   408 
386           To compile this code as a module, ch    409           To compile this code as a module, choose M here: the
387           module will be called sch_plug.         410           module will be called sch_plug.
388                                                   411 
389 config NET_SCH_ETS                             << 
390         tristate "Enhanced transmission select << 
391         help                                   << 
392           The Enhanced Transmission Selection  << 
393           queuing discipline that merges funct << 
394           qdiscs in one scheduler. ETS makes i << 
395           strict and bandwidth-sharing bands t << 
396           selection described in 802.1Qaz.     << 
397                                                << 
398           Say Y here if you want to use the ET << 
399           algorithm.                           << 
400                                                << 
401           To compile this driver as a module,  << 
402           will be called sch_ets.              << 
403                                                << 
404           If unsure, say N.                    << 
405                                                << 
406 menuconfig NET_SCH_DEFAULT                        412 menuconfig NET_SCH_DEFAULT
407         bool "Allow override default queue dis    413         bool "Allow override default queue discipline"
408         help                                   !! 414         ---help---
409           Support for selection of default que    415           Support for selection of default queuing discipline.
410                                                   416 
411           Nearly all users can safely say no h    417           Nearly all users can safely say no here, and the default
412           of pfifo_fast will be used. Many dis    418           of pfifo_fast will be used. Many distributions already set
413           the default value via /proc/sys/net/    419           the default value via /proc/sys/net/core/default_qdisc.
414                                                   420 
415           If unsure, say N.                       421           If unsure, say N.
416                                                   422 
417 if NET_SCH_DEFAULT                                423 if NET_SCH_DEFAULT
418                                                   424 
419 choice                                            425 choice
420         prompt "Default queuing discipline"       426         prompt "Default queuing discipline"
421         default DEFAULT_PFIFO_FAST                427         default DEFAULT_PFIFO_FAST
422         help                                      428         help
423           Select the queueing discipline that     429           Select the queueing discipline that will be used by default
424           for all network devices.                430           for all network devices.
425                                                   431 
426         config DEFAULT_FQ                         432         config DEFAULT_FQ
427                 bool "Fair Queue" if NET_SCH_F    433                 bool "Fair Queue" if NET_SCH_FQ
428                                                   434 
429         config DEFAULT_CODEL                      435         config DEFAULT_CODEL
430                 bool "Controlled Delay" if NET    436                 bool "Controlled Delay" if NET_SCH_CODEL
431                                                   437 
432         config DEFAULT_FQ_CODEL                   438         config DEFAULT_FQ_CODEL
433                 bool "Fair Queue Controlled De    439                 bool "Fair Queue Controlled Delay" if NET_SCH_FQ_CODEL
434                                                   440 
435         config DEFAULT_FQ_PIE                  << 
436                 bool "Flow Queue Proportional  << 
437                                                << 
438         config DEFAULT_SFQ                        441         config DEFAULT_SFQ
439                 bool "Stochastic Fair Queue" i    442                 bool "Stochastic Fair Queue" if NET_SCH_SFQ
440                                                   443 
441         config DEFAULT_PFIFO_FAST                 444         config DEFAULT_PFIFO_FAST
442                 bool "Priority FIFO Fast"         445                 bool "Priority FIFO Fast"
443 endchoice                                         446 endchoice
444                                                   447 
445 config DEFAULT_NET_SCH                            448 config DEFAULT_NET_SCH
446         string                                    449         string
447         default "pfifo_fast" if DEFAULT_PFIFO_    450         default "pfifo_fast" if DEFAULT_PFIFO_FAST
448         default "fq" if DEFAULT_FQ                451         default "fq" if DEFAULT_FQ
449         default "fq_codel" if DEFAULT_FQ_CODEL    452         default "fq_codel" if DEFAULT_FQ_CODEL
450         default "fq_pie" if DEFAULT_FQ_PIE     << 
451         default "sfq" if DEFAULT_SFQ              453         default "sfq" if DEFAULT_SFQ
452         default "pfifo_fast"                      454         default "pfifo_fast"
453 endif                                             455 endif
454                                                   456 
455 comment "Classification"                          457 comment "Classification"
456                                                   458 
457 config NET_CLS                                    459 config NET_CLS
458         bool                                      460         bool
459                                                   461 
460 config NET_CLS_BASIC                              462 config NET_CLS_BASIC
461         tristate "Elementary classification (B    463         tristate "Elementary classification (BASIC)"
462         select NET_CLS                            464         select NET_CLS
463         help                                   !! 465         ---help---
464           Say Y here if you want to be able to    466           Say Y here if you want to be able to classify packets using
465           only extended matches and actions.      467           only extended matches and actions.
466                                                   468 
467           To compile this code as a module, ch    469           To compile this code as a module, choose M here: the
468           module will be called cls_basic.        470           module will be called cls_basic.
469                                                   471 
                                                   >> 472 config NET_CLS_TCINDEX
                                                   >> 473         tristate "Traffic-Control Index (TCINDEX)"
                                                   >> 474         select NET_CLS
                                                   >> 475         ---help---
                                                   >> 476           Say Y here if you want to be able to classify packets based on
                                                   >> 477           traffic control indices. You will want this feature if you want
                                                   >> 478           to implement Differentiated Services together with DSMARK.
                                                   >> 479 
                                                   >> 480           To compile this code as a module, choose M here: the
                                                   >> 481           module will be called cls_tcindex.
                                                   >> 482 
470 config NET_CLS_ROUTE4                             483 config NET_CLS_ROUTE4
471         tristate "Routing decision (ROUTE)"       484         tristate "Routing decision (ROUTE)"
472         depends on INET                           485         depends on INET
473         select IP_ROUTE_CLASSID                   486         select IP_ROUTE_CLASSID
474         select NET_CLS                            487         select NET_CLS
475         help                                   !! 488         ---help---
476           If you say Y here, you will be able     489           If you say Y here, you will be able to classify packets
477           according to the route table entry t    490           according to the route table entry they matched.
478                                                   491 
479           To compile this code as a module, ch    492           To compile this code as a module, choose M here: the
480           module will be called cls_route.        493           module will be called cls_route.
481                                                   494 
482 config NET_CLS_FW                                 495 config NET_CLS_FW
483         tristate "Netfilter mark (FW)"            496         tristate "Netfilter mark (FW)"
484         select NET_CLS                            497         select NET_CLS
485         help                                   !! 498         ---help---
486           If you say Y here, you will be able     499           If you say Y here, you will be able to classify packets
487           according to netfilter/firewall mark    500           according to netfilter/firewall marks.
488                                                   501 
489           To compile this code as a module, ch    502           To compile this code as a module, choose M here: the
490           module will be called cls_fw.           503           module will be called cls_fw.
491                                                   504 
492 config NET_CLS_U32                                505 config NET_CLS_U32
493         tristate "Universal 32bit comparisons     506         tristate "Universal 32bit comparisons w/ hashing (U32)"
494         select NET_CLS                            507         select NET_CLS
495         help                                   !! 508         ---help---
496           Say Y here to be able to classify pa    509           Say Y here to be able to classify packets using a universal
497           32bit pieces based comparison scheme    510           32bit pieces based comparison scheme.
498                                                   511 
499           To compile this code as a module, ch    512           To compile this code as a module, choose M here: the
500           module will be called cls_u32.          513           module will be called cls_u32.
501                                                   514 
502 config CLS_U32_PERF                               515 config CLS_U32_PERF
503         bool "Performance counters support"       516         bool "Performance counters support"
504         depends on NET_CLS_U32                    517         depends on NET_CLS_U32
505         help                                   !! 518         ---help---
506           Say Y here to make u32 gather additi    519           Say Y here to make u32 gather additional statistics useful for
507           fine tuning u32 classifiers.            520           fine tuning u32 classifiers.
508                                                   521 
509 config CLS_U32_MARK                               522 config CLS_U32_MARK
510         bool "Netfilter marks support"            523         bool "Netfilter marks support"
511         depends on NET_CLS_U32                    524         depends on NET_CLS_U32
512         help                                   !! 525         ---help---
513           Say Y here to be able to use netfilt    526           Say Y here to be able to use netfilter marks as u32 key.
514                                                   527 
                                                   >> 528 config NET_CLS_RSVP
                                                   >> 529         tristate "IPv4 Resource Reservation Protocol (RSVP)"
                                                   >> 530         select NET_CLS
                                                   >> 531         ---help---
                                                   >> 532           The Resource Reservation Protocol (RSVP) permits end systems to
                                                   >> 533           request a minimum and maximum data flow rate for a connection; this
                                                   >> 534           is important for real time data such as streaming sound or video.
                                                   >> 535 
                                                   >> 536           Say Y here if you want to be able to classify outgoing packets based
                                                   >> 537           on their RSVP requests.
                                                   >> 538 
                                                   >> 539           To compile this code as a module, choose M here: the
                                                   >> 540           module will be called cls_rsvp.
                                                   >> 541 
                                                   >> 542 config NET_CLS_RSVP6
                                                   >> 543         tristate "IPv6 Resource Reservation Protocol (RSVP6)"
                                                   >> 544         select NET_CLS
                                                   >> 545         ---help---
                                                   >> 546           The Resource Reservation Protocol (RSVP) permits end systems to
                                                   >> 547           request a minimum and maximum data flow rate for a connection; this
                                                   >> 548           is important for real time data such as streaming sound or video.
                                                   >> 549 
                                                   >> 550           Say Y here if you want to be able to classify outgoing packets based
                                                   >> 551           on their RSVP requests and you are using the IPv6 protocol.
                                                   >> 552 
                                                   >> 553           To compile this code as a module, choose M here: the
                                                   >> 554           module will be called cls_rsvp6.
                                                   >> 555 
515 config NET_CLS_FLOW                               556 config NET_CLS_FLOW
516         tristate "Flow classifier"                557         tristate "Flow classifier"
517         select NET_CLS                            558         select NET_CLS
518         help                                   !! 559         ---help---
519           If you say Y here, you will be able     560           If you say Y here, you will be able to classify packets based on
520           a configurable combination of packet    561           a configurable combination of packet keys. This is mostly useful
521           in combination with SFQ.                562           in combination with SFQ.
522                                                   563 
523           To compile this code as a module, ch    564           To compile this code as a module, choose M here: the
524           module will be called cls_flow.         565           module will be called cls_flow.
525                                                   566 
526 config NET_CLS_CGROUP                             567 config NET_CLS_CGROUP
527         tristate "Control Group Classifier"       568         tristate "Control Group Classifier"
528         select NET_CLS                            569         select NET_CLS
529         select CGROUP_NET_CLASSID                 570         select CGROUP_NET_CLASSID
530         depends on CGROUPS                        571         depends on CGROUPS
531         help                                   !! 572         ---help---
532           Say Y here if you want to classify p    573           Say Y here if you want to classify packets based on the control
533           cgroup of their process.                574           cgroup of their process.
534                                                   575 
535           To compile this code as a module, ch    576           To compile this code as a module, choose M here: the
536           module will be called cls_cgroup.       577           module will be called cls_cgroup.
537                                                   578 
538 config NET_CLS_BPF                                579 config NET_CLS_BPF
539         tristate "BPF-based classifier"           580         tristate "BPF-based classifier"
540         select NET_CLS                            581         select NET_CLS
541         help                                   !! 582         ---help---
542           If you say Y here, you will be able     583           If you say Y here, you will be able to classify packets based on
543           programmable BPF (JIT'ed) filters as    584           programmable BPF (JIT'ed) filters as an alternative to ematches.
544                                                   585 
545           To compile this code as a module, ch    586           To compile this code as a module, choose M here: the module will
546           be called cls_bpf.                      587           be called cls_bpf.
547                                                   588 
548 config NET_CLS_FLOWER                             589 config NET_CLS_FLOWER
549         tristate "Flower classifier"              590         tristate "Flower classifier"
550         select NET_CLS                            591         select NET_CLS
551         help                                   !! 592         ---help---
552           If you say Y here, you will be able     593           If you say Y here, you will be able to classify packets based on
553           a configurable combination of packet    594           a configurable combination of packet keys and masks.
554                                                   595 
555           To compile this code as a module, ch    596           To compile this code as a module, choose M here: the module will
556           be called cls_flower.                   597           be called cls_flower.
557                                                   598 
558 config NET_CLS_MATCHALL                           599 config NET_CLS_MATCHALL
559         tristate "Match-all classifier"           600         tristate "Match-all classifier"
560         select NET_CLS                            601         select NET_CLS
561         help                                   !! 602         ---help---
562           If you say Y here, you will be able     603           If you say Y here, you will be able to classify packets based on
563           nothing. Every packet will match.       604           nothing. Every packet will match.
564                                                   605 
565           To compile this code as a module, ch    606           To compile this code as a module, choose M here: the module will
566           be called cls_matchall.                 607           be called cls_matchall.
567                                                   608 
568 config NET_EMATCH                                 609 config NET_EMATCH
569         bool "Extended Matches"                   610         bool "Extended Matches"
570         select NET_CLS                            611         select NET_CLS
571         help                                   !! 612         ---help---
572           Say Y here if you want to use extend    613           Say Y here if you want to use extended matches on top of classifiers
573           and select the extended matches belo    614           and select the extended matches below.
574                                                   615 
575           Extended matches are small classific    616           Extended matches are small classification helpers not worth writing
576           a separate classifier for.              617           a separate classifier for.
577                                                   618 
578           A recent version of the iproute2 pac    619           A recent version of the iproute2 package is required to use
579           extended matches.                       620           extended matches.
580                                                   621 
581 config NET_EMATCH_STACK                           622 config NET_EMATCH_STACK
582         int "Stack size"                          623         int "Stack size"
583         depends on NET_EMATCH                     624         depends on NET_EMATCH
584         default "32"                              625         default "32"
585         help                                   !! 626         ---help---
586           Size of the local stack variable use    627           Size of the local stack variable used while evaluating the tree of
587           ematches. Limits the depth of the tr    628           ematches. Limits the depth of the tree, i.e. the number of
588           encapsulated precedences. Every leve    629           encapsulated precedences. Every level requires 4 bytes of additional
589           stack space.                            630           stack space.
590                                                   631 
591 config NET_EMATCH_CMP                             632 config NET_EMATCH_CMP
592         tristate "Simple packet data compariso    633         tristate "Simple packet data comparison"
593         depends on NET_EMATCH                     634         depends on NET_EMATCH
594         help                                   !! 635         ---help---
595           Say Y here if you want to be able to    636           Say Y here if you want to be able to classify packets based on
596           simple packet data comparisons for 8    637           simple packet data comparisons for 8, 16, and 32bit values.
597                                                   638 
598           To compile this code as a module, ch    639           To compile this code as a module, choose M here: the
599           module will be called em_cmp.           640           module will be called em_cmp.
600                                                   641 
601 config NET_EMATCH_NBYTE                           642 config NET_EMATCH_NBYTE
602         tristate "Multi byte comparison"          643         tristate "Multi byte comparison"
603         depends on NET_EMATCH                     644         depends on NET_EMATCH
604         help                                   !! 645         ---help---
605           Say Y here if you want to be able to    646           Say Y here if you want to be able to classify packets based on
606           multiple byte comparisons mainly use    647           multiple byte comparisons mainly useful for IPv6 address comparisons.
607                                                   648 
608           To compile this code as a module, ch    649           To compile this code as a module, choose M here: the
609           module will be called em_nbyte.         650           module will be called em_nbyte.
610                                                   651 
611 config NET_EMATCH_U32                             652 config NET_EMATCH_U32
612         tristate "U32 key"                        653         tristate "U32 key"
613         depends on NET_EMATCH                     654         depends on NET_EMATCH
614         help                                   !! 655         ---help---
615           Say Y here if you want to be able to    656           Say Y here if you want to be able to classify packets using
616           the famous u32 key in combination wi    657           the famous u32 key in combination with logic relations.
617                                                   658 
618           To compile this code as a module, ch    659           To compile this code as a module, choose M here: the
619           module will be called em_u32.           660           module will be called em_u32.
620                                                   661 
621 config NET_EMATCH_META                            662 config NET_EMATCH_META
622         tristate "Metadata"                       663         tristate "Metadata"
623         depends on NET_EMATCH                     664         depends on NET_EMATCH
624         help                                   !! 665         ---help---
625           Say Y here if you want to be able to    666           Say Y here if you want to be able to classify packets based on
626           metadata such as load average, netfi    667           metadata such as load average, netfilter attributes, socket
627           attributes and routing decisions.       668           attributes and routing decisions.
628                                                   669 
629           To compile this code as a module, ch    670           To compile this code as a module, choose M here: the
630           module will be called em_meta.          671           module will be called em_meta.
631                                                   672 
632 config NET_EMATCH_TEXT                            673 config NET_EMATCH_TEXT
633         tristate "Textsearch"                     674         tristate "Textsearch"
634         depends on NET_EMATCH                     675         depends on NET_EMATCH
635         select TEXTSEARCH                         676         select TEXTSEARCH
636         select TEXTSEARCH_KMP                     677         select TEXTSEARCH_KMP
637         select TEXTSEARCH_BM                      678         select TEXTSEARCH_BM
638         select TEXTSEARCH_FSM                     679         select TEXTSEARCH_FSM
639         help                                   !! 680         ---help---
640           Say Y here if you want to be able to    681           Say Y here if you want to be able to classify packets based on
641           textsearch comparisons.                 682           textsearch comparisons.
642                                                   683 
643           To compile this code as a module, ch    684           To compile this code as a module, choose M here: the
644           module will be called em_text.          685           module will be called em_text.
645                                                   686 
646 config NET_EMATCH_CANID                           687 config NET_EMATCH_CANID
647         tristate "CAN Identifier"                 688         tristate "CAN Identifier"
648         depends on NET_EMATCH && (CAN=y || CAN    689         depends on NET_EMATCH && (CAN=y || CAN=m)
649         help                                   !! 690         ---help---
650           Say Y here if you want to be able to    691           Say Y here if you want to be able to classify CAN frames based
651           on CAN Identifier.                      692           on CAN Identifier.
652                                                   693 
653           To compile this code as a module, ch    694           To compile this code as a module, choose M here: the
654           module will be called em_canid.         695           module will be called em_canid.
655                                                   696 
656 config NET_EMATCH_IPSET                           697 config NET_EMATCH_IPSET
657         tristate "IPset"                          698         tristate "IPset"
658         depends on NET_EMATCH && IP_SET           699         depends on NET_EMATCH && IP_SET
659         help                                   !! 700         ---help---
660           Say Y here if you want to be able to    701           Say Y here if you want to be able to classify packets based on
661           ipset membership.                       702           ipset membership.
662                                                   703 
663           To compile this code as a module, ch    704           To compile this code as a module, choose M here: the
664           module will be called em_ipset.         705           module will be called em_ipset.
665                                                   706 
666 config NET_EMATCH_IPT                             707 config NET_EMATCH_IPT
667         tristate "IPtables Matches"               708         tristate "IPtables Matches"
668         depends on NET_EMATCH && NETFILTER &&     709         depends on NET_EMATCH && NETFILTER && NETFILTER_XTABLES
669         help                                   !! 710         ---help---
670           Say Y here to be able to classify pa    711           Say Y here to be able to classify packets based on iptables
671           matches.                                712           matches.
672           Current supported match is "policy"     713           Current supported match is "policy" which allows packet classification
673           based on IPsec policy that was used     714           based on IPsec policy that was used during decapsulation
674                                                   715 
675           To compile this code as a module, ch    716           To compile this code as a module, choose M here: the
676           module will be called em_ipt.           717           module will be called em_ipt.
677                                                   718 
678 config NET_CLS_ACT                                719 config NET_CLS_ACT
679         bool "Actions"                            720         bool "Actions"
680         select NET_CLS                            721         select NET_CLS
681         select NET_XGRESS                      !! 722         ---help---
682         help                                   << 
683           Say Y here if you want to use traffi    723           Say Y here if you want to use traffic control actions. Actions
684           get attached to classifiers and are     724           get attached to classifiers and are invoked after a successful
685           classification. They are used to ove    725           classification. They are used to overwrite the classification
686           result, instantly drop or redirect p    726           result, instantly drop or redirect packets, etc.
687                                                   727 
688           A recent version of the iproute2 pac    728           A recent version of the iproute2 package is required to use
689           extended matches.                       729           extended matches.
690                                                   730 
691 config NET_ACT_POLICE                             731 config NET_ACT_POLICE
692         tristate "Traffic Policing"               732         tristate "Traffic Policing"
693         depends on NET_CLS_ACT                    733         depends on NET_CLS_ACT
694         help                                   !! 734         ---help---
695           Say Y here if you want to do traffic    735           Say Y here if you want to do traffic policing, i.e. strict
696           bandwidth limiting. This action repl    736           bandwidth limiting. This action replaces the existing policing
697           module.                                 737           module.
698                                                   738 
699           To compile this code as a module, ch    739           To compile this code as a module, choose M here: the
700           module will be called act_police.       740           module will be called act_police.
701                                                   741 
702 config NET_ACT_GACT                               742 config NET_ACT_GACT
703         tristate "Generic actions"                743         tristate "Generic actions"
704         depends on NET_CLS_ACT                    744         depends on NET_CLS_ACT
705         help                                   !! 745         ---help---
706           Say Y here to take generic actions s    746           Say Y here to take generic actions such as dropping and
707           accepting packets.                      747           accepting packets.
708                                                   748 
709           To compile this code as a module, ch    749           To compile this code as a module, choose M here: the
710           module will be called act_gact.         750           module will be called act_gact.
711                                                   751 
712 config GACT_PROB                                  752 config GACT_PROB
713         bool "Probability support"                753         bool "Probability support"
714         depends on NET_ACT_GACT                   754         depends on NET_ACT_GACT
715         help                                   !! 755         ---help---
716           Say Y here to use the generic action    756           Say Y here to use the generic action randomly or deterministically.
717                                                   757 
718 config NET_ACT_MIRRED                             758 config NET_ACT_MIRRED
719         tristate "Redirecting and Mirroring"      759         tristate "Redirecting and Mirroring"
720         depends on NET_CLS_ACT                    760         depends on NET_CLS_ACT
721         help                                   !! 761         ---help---
722           Say Y here to allow packets to be mi    762           Say Y here to allow packets to be mirrored or redirected to
723           other devices.                          763           other devices.
724                                                   764 
725           To compile this code as a module, ch    765           To compile this code as a module, choose M here: the
726           module will be called act_mirred.       766           module will be called act_mirred.
727                                                   767 
728 config NET_ACT_SAMPLE                             768 config NET_ACT_SAMPLE
729         tristate "Traffic Sampling"               769         tristate "Traffic Sampling"
730         depends on NET_CLS_ACT                    770         depends on NET_CLS_ACT
731         select PSAMPLE                            771         select PSAMPLE
732         help                                   !! 772         ---help---
733           Say Y here to allow packet sampling     773           Say Y here to allow packet sampling tc action. The packet sample
734           action consists of statistically cho    774           action consists of statistically choosing packets and sampling
735           them using the psample module.          775           them using the psample module.
736                                                   776 
737           To compile this code as a module, ch    777           To compile this code as a module, choose M here: the
738           module will be called act_sample.       778           module will be called act_sample.
739                                                   779 
                                                   >> 780 config NET_ACT_IPT
                                                   >> 781         tristate "IPtables targets"
                                                   >> 782         depends on NET_CLS_ACT && NETFILTER && IP_NF_IPTABLES
                                                   >> 783         ---help---
                                                   >> 784           Say Y here to be able to invoke iptables targets after successful
                                                   >> 785           classification.
                                                   >> 786 
                                                   >> 787           To compile this code as a module, choose M here: the
                                                   >> 788           module will be called act_ipt.
                                                   >> 789 
740 config NET_ACT_NAT                                790 config NET_ACT_NAT
741         tristate "Stateless NAT"                  791         tristate "Stateless NAT"
742         depends on NET_CLS_ACT                    792         depends on NET_CLS_ACT
743         help                                   !! 793         ---help---
744           Say Y here to do stateless NAT on IP    794           Say Y here to do stateless NAT on IPv4 packets.  You should use
745           netfilter for NAT unless you know wh    795           netfilter for NAT unless you know what you are doing.
746                                                   796 
747           To compile this code as a module, ch    797           To compile this code as a module, choose M here: the
748           module will be called act_nat.          798           module will be called act_nat.
749                                                   799 
750 config NET_ACT_PEDIT                              800 config NET_ACT_PEDIT
751         tristate "Packet Editing"                 801         tristate "Packet Editing"
752         depends on NET_CLS_ACT                    802         depends on NET_CLS_ACT
753         help                                   !! 803         ---help---
754           Say Y here if you want to mangle the    804           Say Y here if you want to mangle the content of packets.
755                                                   805 
756           To compile this code as a module, ch    806           To compile this code as a module, choose M here: the
757           module will be called act_pedit.        807           module will be called act_pedit.
758                                                   808 
759 config NET_ACT_SIMP                               809 config NET_ACT_SIMP
760         tristate "Simple Example (Debug)"         810         tristate "Simple Example (Debug)"
761         depends on NET_CLS_ACT                    811         depends on NET_CLS_ACT
762         help                                   !! 812         ---help---
763           Say Y here to add a simple action fo    813           Say Y here to add a simple action for demonstration purposes.
764           It is meant as an example and for de    814           It is meant as an example and for debugging purposes. It will
765           print a configured policy string fol    815           print a configured policy string followed by the packet count
766           to the console for every packet that    816           to the console for every packet that passes by.
767                                                   817 
768           If unsure, say N.                       818           If unsure, say N.
769                                                   819 
770           To compile this code as a module, ch    820           To compile this code as a module, choose M here: the
771           module will be called act_simple.       821           module will be called act_simple.
772                                                   822 
773 config NET_ACT_SKBEDIT                            823 config NET_ACT_SKBEDIT
774         tristate "SKB Editing"                    824         tristate "SKB Editing"
775         depends on NET_CLS_ACT                    825         depends on NET_CLS_ACT
776         help                                   !! 826         ---help---
777           Say Y here to change skb priority or    827           Say Y here to change skb priority or queue_mapping settings.
778                                                   828 
779           If unsure, say N.                       829           If unsure, say N.
780                                                   830 
781           To compile this code as a module, ch    831           To compile this code as a module, choose M here: the
782           module will be called act_skbedit.      832           module will be called act_skbedit.
783                                                   833 
784 config NET_ACT_CSUM                               834 config NET_ACT_CSUM
785         tristate "Checksum Updating"              835         tristate "Checksum Updating"
786         depends on NET_CLS_ACT && INET            836         depends on NET_CLS_ACT && INET
787         select LIBCRC32C                          837         select LIBCRC32C
788         help                                   !! 838         ---help---
789           Say Y here to update some common che    839           Say Y here to update some common checksum after some direct
790           packet alterations.                     840           packet alterations.
791                                                   841 
792           To compile this code as a module, ch    842           To compile this code as a module, choose M here: the
793           module will be called act_csum.         843           module will be called act_csum.
794                                                   844 
795 config NET_ACT_MPLS                               845 config NET_ACT_MPLS
796         tristate "MPLS manipulation"              846         tristate "MPLS manipulation"
797         depends on NET_CLS_ACT                    847         depends on NET_CLS_ACT
798         help                                      848         help
799           Say Y here to push or pop MPLS heade    849           Say Y here to push or pop MPLS headers.
800                                                   850 
801           If unsure, say N.                       851           If unsure, say N.
802                                                   852 
803           To compile this code as a module, ch    853           To compile this code as a module, choose M here: the
804           module will be called act_mpls.         854           module will be called act_mpls.
805                                                   855 
806 config NET_ACT_VLAN                               856 config NET_ACT_VLAN
807         tristate "Vlan manipulation"              857         tristate "Vlan manipulation"
808         depends on NET_CLS_ACT                    858         depends on NET_CLS_ACT
809         help                                   !! 859         ---help---
810           Say Y here to push or pop vlan heade    860           Say Y here to push or pop vlan headers.
811                                                   861 
812           If unsure, say N.                       862           If unsure, say N.
813                                                   863 
814           To compile this code as a module, ch    864           To compile this code as a module, choose M here: the
815           module will be called act_vlan.         865           module will be called act_vlan.
816                                                   866 
817 config NET_ACT_BPF                                867 config NET_ACT_BPF
818         tristate "BPF based action"               868         tristate "BPF based action"
819         depends on NET_CLS_ACT                    869         depends on NET_CLS_ACT
820         help                                   !! 870         ---help---
821           Say Y here to execute BPF code on pa    871           Say Y here to execute BPF code on packets. The BPF code will decide
822           if the packet should be dropped or n    872           if the packet should be dropped or not.
823                                                   873 
824           If unsure, say N.                       874           If unsure, say N.
825                                                   875 
826           To compile this code as a module, ch    876           To compile this code as a module, choose M here: the
827           module will be called act_bpf.          877           module will be called act_bpf.
828                                                   878 
829 config NET_ACT_CONNMARK                           879 config NET_ACT_CONNMARK
830         tristate "Netfilter Connection Mark Re    880         tristate "Netfilter Connection Mark Retriever"
831         depends on NET_CLS_ACT && NETFILTER    !! 881         depends on NET_CLS_ACT && NETFILTER && IP_NF_IPTABLES
832         depends on NF_CONNTRACK && NF_CONNTRAC    882         depends on NF_CONNTRACK && NF_CONNTRACK_MARK
833         help                                   !! 883         ---help---
834           Say Y here to allow retrieving of co    884           Say Y here to allow retrieving of conn mark
835                                                   885 
836           If unsure, say N.                       886           If unsure, say N.
837                                                   887 
838           To compile this code as a module, ch    888           To compile this code as a module, choose M here: the
839           module will be called act_connmark.     889           module will be called act_connmark.
840                                                   890 
841 config NET_ACT_CTINFO                             891 config NET_ACT_CTINFO
842         tristate "Netfilter Connection Mark Ac    892         tristate "Netfilter Connection Mark Actions"
843         depends on NET_CLS_ACT && NETFILTER    !! 893         depends on NET_CLS_ACT && NETFILTER && IP_NF_IPTABLES
844         depends on NF_CONNTRACK && NF_CONNTRAC    894         depends on NF_CONNTRACK && NF_CONNTRACK_MARK
845         help                                      895         help
846           Say Y here to allow transfer of a co    896           Say Y here to allow transfer of a connmark stored information.
847           Current actions transfer connmark st    897           Current actions transfer connmark stored DSCP into
848           ipv4/v6 diffserv and/or to transfer     898           ipv4/v6 diffserv and/or to transfer connmark to packet
849           mark.  Both are useful for restoring    899           mark.  Both are useful for restoring egress based marks
850           back onto ingress connections for qd    900           back onto ingress connections for qdisc priority mapping
851           purposes.                               901           purposes.
852                                                   902 
853           If unsure, say N.                       903           If unsure, say N.
854                                                   904 
855           To compile this code as a module, ch    905           To compile this code as a module, choose M here: the
856           module will be called act_ctinfo.       906           module will be called act_ctinfo.
857                                                   907 
858 config NET_ACT_SKBMOD                             908 config NET_ACT_SKBMOD
859         tristate "skb data modification action    909         tristate "skb data modification action"
860         depends on NET_CLS_ACT                    910         depends on NET_CLS_ACT
861         help                                   !! 911         ---help---
862          Say Y here to allow modification of s    912          Say Y here to allow modification of skb data
863                                                   913 
864          If unsure, say N.                        914          If unsure, say N.
865                                                   915 
866          To compile this code as a module, cho    916          To compile this code as a module, choose M here: the
867          module will be called act_skbmod.        917          module will be called act_skbmod.
868                                                   918 
869 config NET_ACT_IFE                                919 config NET_ACT_IFE
870         tristate "Inter-FE action based on IET    920         tristate "Inter-FE action based on IETF ForCES InterFE LFB"
871         depends on NET_CLS_ACT                    921         depends on NET_CLS_ACT
872         select NET_IFE                            922         select NET_IFE
873         help                                   !! 923         ---help---
874           Say Y here to allow for sourcing and    924           Say Y here to allow for sourcing and terminating metadata
875           For details refer to netdev01 paper:    925           For details refer to netdev01 paper:
876           "Distributing Linux Traffic Control     926           "Distributing Linux Traffic Control Classifier-Action Subsystem"
877            Authors: Jamal Hadi Salim and Damas    927            Authors: Jamal Hadi Salim and Damascene M. Joachimpillai
878                                                   928 
879           To compile this code as a module, ch    929           To compile this code as a module, choose M here: the
880           module will be called act_ife.          930           module will be called act_ife.
881                                                   931 
882 config NET_ACT_TUNNEL_KEY                         932 config NET_ACT_TUNNEL_KEY
883         tristate "IP tunnel metadata manipulat    933         tristate "IP tunnel metadata manipulation"
884         depends on NET_CLS_ACT                    934         depends on NET_CLS_ACT
885         help                                   !! 935         ---help---
886           Say Y here to set/release ip tunnel     936           Say Y here to set/release ip tunnel metadata.
887                                                   937 
888           If unsure, say N.                       938           If unsure, say N.
889                                                   939 
890           To compile this code as a module, ch    940           To compile this code as a module, choose M here: the
891           module will be called act_tunnel_key    941           module will be called act_tunnel_key.
892                                                   942 
893 config NET_ACT_CT                                 943 config NET_ACT_CT
894         tristate "connection tracking tc actio    944         tristate "connection tracking tc action"
895         depends on NET_CLS_ACT && NF_CONNTRACK !! 945         depends on NET_CLS_ACT && NF_CONNTRACK && NF_NAT
896         select NF_CONNTRACK_OVS                << 
897         select NF_NAT_OVS if NF_NAT            << 
898         help                                      946         help
899           Say Y here to allow sending the pack    947           Say Y here to allow sending the packets to conntrack module.
900                                                   948 
901           If unsure, say N.                       949           If unsure, say N.
902                                                   950 
903           To compile this code as a module, ch    951           To compile this code as a module, choose M here: the
904           module will be called act_ct.           952           module will be called act_ct.
905                                                << 
906 config NET_ACT_GATE                            << 
907         tristate "Frame gate entry list contro << 
908         depends on NET_CLS_ACT                 << 
909         help                                   << 
910           Say Y here to allow to control the i << 
911           specific time slot and be dropped at << 
912           the gate entry list.                 << 
913                                                << 
914           If unsure, say N.                    << 
915           To compile this code as a module, ch << 
916           module will be called act_gate.      << 
917                                                   953 
918 config NET_IFE_SKBMARK                            954 config NET_IFE_SKBMARK
919         tristate "Support to encoding decoding    955         tristate "Support to encoding decoding skb mark on IFE action"
920         depends on NET_ACT_IFE                    956         depends on NET_ACT_IFE
921                                                   957 
922 config NET_IFE_SKBPRIO                            958 config NET_IFE_SKBPRIO
923         tristate "Support to encoding decoding    959         tristate "Support to encoding decoding skb prio on IFE action"
924         depends on NET_ACT_IFE                    960         depends on NET_ACT_IFE
925                                                   961 
926 config NET_IFE_SKBTCINDEX                         962 config NET_IFE_SKBTCINDEX
927         tristate "Support to encoding decoding    963         tristate "Support to encoding decoding skb tcindex on IFE action"
928         depends on NET_ACT_IFE                    964         depends on NET_ACT_IFE
929                                                   965 
930 config NET_TC_SKB_EXT                             966 config NET_TC_SKB_EXT
931         bool "TC recirculation support"           967         bool "TC recirculation support"
932         depends on NET_CLS_ACT                    968         depends on NET_CLS_ACT
933         select SKB_EXTENSIONS                     969         select SKB_EXTENSIONS
934                                                   970 
935         help                                      971         help
936           Say Y here to allow tc chain misses     972           Say Y here to allow tc chain misses to continue in OvS datapath in
937           the correct recirc_id, and hardware     973           the correct recirc_id, and hardware chain misses to continue in
938           the correct chain in tc software dat    974           the correct chain in tc software datapath.
939                                                   975 
940           Say N here if you won't be using tc<    976           Say N here if you won't be using tc<->ovs offload or tc chains offload.
941                                                   977 
942 endif # NET_SCHED                                 978 endif # NET_SCHED
943                                                   979 
944 config NET_SCH_FIFO                               980 config NET_SCH_FIFO
945         bool                                      981         bool
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php