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

TOMOYO Linux Cross Reference
Linux/net/sched/Kconfig

Version: ~ [ linux-6.4-rc3 ] ~ [ linux-6.3.4 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.30 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.113 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.180 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.243 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.283 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.315 ] ~ [ 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.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 #
  2 # Traffic control configuration.
  3 # 
  4 config NET_SCH_CBQ
  5         tristate "CBQ packet scheduler"
  6         depends on NET_SCHED
  7         ---help---
  8           Say Y here if you want to use the Class-Based Queueing (CBQ) packet
  9           scheduling algorithm for some of your network devices.  This
 10           algorithm classifies the waiting packets into a tree-like hierarchy
 11           of classes; the leaves of this tree are in turn scheduled by
 12           separate algorithms (called "disciplines" in this context).
 13 
 14           See the top of <file:net/sched/sch_cbq.c> for references about the
 15           CBQ algorithm.
 16 
 17           CBQ is a commonly used scheduler, so if you're unsure, you should
 18           say Y here. Then say Y to all the queueing algorithms below that you
 19           want to use as CBQ disciplines.  Then say Y to "Packet classifier
 20           API" and say Y to all the classifiers you want to use; a classifier
 21           is a routine that allows you to sort your outgoing traffic into
 22           classes based on a certain criterion.
 23 
 24           To compile this code as a module, choose M here: the
 25           module will be called sch_cbq.
 26 
 27 config NET_SCH_HTB
 28         tristate "HTB packet scheduler"
 29         depends on NET_SCHED
 30         ---help---
 31           Say Y here if you want to use the Hierarchical Token Buckets (HTB)
 32           packet scheduling algorithm for some of your network devices. See
 33           URL http://luxik.cdi.cz/~devik/qos/htb/ for complete manual and
 34           in-depth articles.
 35 
 36           HTB is very similar to the CBQ regarding its goals however is has 
 37           different properties and different algorithm.
 38 
 39           To compile this code as a module, choose M here: the
 40           module will be called sch_htb.
 41 
 42 config NET_SCH_CSZ
 43         tristate "CSZ packet scheduler"
 44         depends on NET_SCHED
 45         ---help---
 46           Say Y here if you want to use the Clark-Shenker-Zhang (CSZ) packet
 47           scheduling algorithm for some of your network devices.  At the
 48           moment, this is the only algorithm that can guarantee service for
 49           real-time applications (see the top of <file:net/sched/sch_csz.c>
 50           for details and references about the algorithm).
 51 
 52           Note: this scheduler is currently broken.
 53 
 54           To compile this code as a module, choose M here: the
 55           module will be called sch_csz.
 56 
 57 #tristate '  H-PFQ packet scheduler' CONFIG_NET_SCH_HPFQ
 58 #tristate '  H-FSC packet scheduler' CONFIG_NET_SCH_HFCS
 59 config NET_SCH_ATM
 60         tristate "ATM pseudo-scheduler"
 61         depends on NET_SCHED && ATM
 62         ---help---
 63           Say Y here if you want to use the ATM pseudo-scheduler.  This
 64           provides a framework for invoking classifiers (aka "filters"), which
 65           in turn select classes of this queuing discipline.  Each class maps
 66           the flow(s) it is handling to a given virtual circuit (see the top of
 67           <file:net/sched/sch_atm.c>).
 68 
 69           To compile this code as a module, choose M here: the
 70           module will be called sch_atm.
 71 
 72 config NET_SCH_PRIO
 73         tristate "The simplest PRIO pseudoscheduler"
 74         depends on NET_SCHED
 75         help
 76           Say Y here if you want to use an n-band priority queue packet
 77           "scheduler" for some of your network devices or as a leaf discipline
 78           for the CBQ scheduling algorithm. If unsure, say Y.
 79 
 80           To compile this code as a module, choose M here: the
 81           module will be called sch_prio.
 82 
 83 config NET_SCH_RED
 84         tristate "RED queue"
 85         depends on NET_SCHED
 86         help
 87           Say Y here if you want to use the Random Early Detection (RED)
 88           packet scheduling algorithm for some of your network devices (see
 89           the top of <file:net/sched/sch_red.c> for details and references
 90           about the algorithm).
 91 
 92           To compile this code as a module, choose M here: the
 93           module will be called sch_red.
 94 
 95 config NET_SCH_SFQ
 96         tristate "SFQ queue"
 97         depends on NET_SCHED
 98         ---help---
 99           Say Y here if you want to use the Stochastic Fairness Queueing (SFQ)
100           packet scheduling algorithm for some of your network devices or as a
101           leaf discipline for the CBQ scheduling algorithm (see the top of
102           <file:net/sched/sch_sfq.c> for details and references about the SFQ
103           algorithm).
104 
105           To compile this code as a module, choose M here: the
106           module will be called sch_sfq.
107 
108 config NET_SCH_TEQL
109         tristate "TEQL queue"
110         depends on NET_SCHED
111         ---help---
112           Say Y here if you want to use the True Link Equalizer (TLE) packet
113           scheduling algorithm for some of your network devices or as a leaf
114           discipline for the CBQ scheduling algorithm. This queueing
115           discipline allows the combination of several physical devices into
116           one virtual device. (see the top of <file:net/sched/sch_teql.c> for
117           details).
118 
119           To compile this code as a module, choose M here: the
120           module will be called sch_teql.
121 
122 config NET_SCH_TBF
123         tristate "TBF queue"
124         depends on NET_SCHED
125         help
126           Say Y here if you want to use the Simple Token Bucket Filter (TBF)
127           packet scheduling algorithm for some of your network devices or as a
128           leaf discipline for the CBQ scheduling algorithm (see the top of
129           <file:net/sched/sch_tbf.c> for a description of the TBF algorithm).
130 
131           To compile this code as a module, choose M here: the
132           module will be called sch_tbf.
133 
134 config NET_SCH_GRED
135         tristate "GRED queue"
136         depends on NET_SCHED
137         help
138           Say Y here if you want to use the Generic Random Early Detection
139           (RED) packet scheduling algorithm for some of your network devices
140           (see the top of <file:net/sched/sch_red.c> for details and
141           references about the algorithm).
142 
143           To compile this code as a module, choose M here: the
144           module will be called sch_gred.
145 
146 config NET_SCH_DSMARK
147         tristate "Diffserv field marker"
148         depends on NET_SCHED
149         help
150           Say Y if you want to schedule packets according to the
151           Differentiated Services architecture proposed in RFC 2475.
152           Technical information on this method, with pointers to associated
153           RFCs, is available at <http://www.gta.ufrj.br/diffserv/>.
154 
155           To compile this code as a module, choose M here: the
156           module will be called sch_dsmark.
157 
158 config NET_SCH_INGRESS
159         tristate "Ingress Qdisc"
160         depends on NET_SCHED && NETFILTER
161         help
162           If you say Y here, you will be able to police incoming bandwidth
163           and drop packets when this bandwidth exceeds your desired rate.
164           If unsure, say Y.
165 
166           To compile this code as a module, choose M here: the
167           module will be called cls_ingress.
168 
169 config NET_QOS
170         bool "QoS support"
171         depends on NET_SCHED
172         ---help---
173           Say Y here if you want to include Quality Of Service scheduling
174           features, which means that you will be able to request certain
175           rate-of-flow limits for your network devices.
176 
177           This Quality of Service (QoS) support will enable you to use
178           Differentiated Services (diffserv) and Resource Reservation Protocol
179           (RSVP) on your Linux router if you also say Y to "Packet classifier
180           API" and to some classifiers below. Documentation and software is at
181           <http://diffserv.sourceforge.net/>.
182 
183           Note that the answer to this question won't directly affect the
184           kernel: saying N will just cause the configurator to skip all
185           the questions about QoS support.
186 
187 config NET_ESTIMATOR
188         bool "Rate estimator"
189         depends on NET_QOS
190         help
191           In order for Quality of Service scheduling to work, the current
192           rate-of-flow for a network device has to be estimated; if you say Y
193           here, the kernel will do just that.
194 
195 config NET_CLS
196         bool "Packet classifier API"
197         depends on NET_SCHED
198         ---help---
199           The CBQ scheduling algorithm requires that network packets which are
200           scheduled to be sent out over a network device be classified
201           according to some criterion. If you say Y here, you will get a
202           choice of several different packet classifiers with the following
203           questions.
204 
205           This will enable you to use Differentiated Services (diffserv) and
206           Resource Reservation Protocol (RSVP) on your Linux router.
207           Documentation and software is at
208           <http://diffserv.sourceforge.net/>.
209 
210 config NET_CLS_TCINDEX
211         tristate "TC index classifier"
212         depends on NET_CLS
213         help
214           If you say Y here, you will be able to classify outgoing packets
215           according to the tc_index field of the skb. You will want this
216           feature if you want to implement Differentiated Services using
217           sch_dsmark. If unsure, say Y.
218 
219           To compile this code as a module, choose M here: the
220           module will be called cls_tcindex.
221 
222 config NET_CLS_ROUTE4
223         tristate "Routing table based classifier"
224         depends on NET_CLS
225         help
226           If you say Y here, you will be able to classify outgoing packets
227           according to the route table entry they matched. If unsure, say Y.
228 
229           To compile this code as a module, choose M here: the
230           module will be called cls_route.
231 
232 config NET_CLS_ROUTE
233         bool
234         depends on NET_CLS_ROUTE4
235         default y
236 
237 config NET_CLS_FW
238         tristate "Firewall based classifier"
239         depends on NET_CLS
240         help
241           If you say Y here, you will be able to classify outgoing packets
242           according to firewall criteria you specified.
243 
244           To compile this code as a module, choose M here: the
245           module will be called cls_fw.
246 
247 config NET_CLS_U32
248         tristate "U32 classifier"
249         depends on NET_CLS
250         help
251           If you say Y here, you will be able to classify outgoing packets
252           according to their destination address. If unsure, say Y.
253 
254           To compile this code as a module, choose M here: the
255           module will be called cls_u32.
256 
257 config NET_CLS_RSVP
258         tristate "Special RSVP classifier"
259         depends on NET_CLS && NET_QOS
260         ---help---
261           The Resource Reservation Protocol (RSVP) permits end systems to
262           request a minimum and maximum data flow rate for a connection; this
263           is important for real time data such as streaming sound or video.
264 
265           Say Y here if you want to be able to classify outgoing packets based
266           on their RSVP requests.
267 
268           To compile this code as a module, choose M here: the
269           module will be called cls_rsvp.
270 
271 config NET_CLS_RSVP6
272         tristate "Special RSVP classifier for IPv6"
273         depends on NET_CLS && NET_QOS
274         ---help---
275           The Resource Reservation Protocol (RSVP) permits end systems to
276           request a minimum and maximum data flow rate for a connection; this
277           is important for real time data such as streaming sound or video.
278 
279           Say Y here if you want to be able to classify outgoing packets based
280           on their RSVP requests and you are using the new Internet Protocol
281           IPv6 as opposed to the older and more common IPv4.
282 
283           To compile this code as a module, choose M here: the
284           module will be called cls_rsvp6.
285 
286 config NET_CLS_POLICE
287         bool "Traffic policing (needed for in/egress)"
288         depends on NET_CLS && NET_QOS
289         help
290           Say Y to support traffic policing (bandwidth limits).  Needed for
291           ingress and egress rate limiting.
292 

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

kernel.org | git.kernel.org | LWN.net | Project Home | Wiki (Japanese) | Wiki (English) | 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.

osdn.jp