xref: /linux/net/openvswitch/Kconfig (revision 9cbd5a8abca904441e36861e3a92961bec41d13f)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Open vSwitch
4#
5
6config OPENVSWITCH
7	tristate "Open vSwitch"
8	depends on INET
9	depends on !NF_CONNTRACK || \
10		   (NF_CONNTRACK && ((!NF_DEFRAG_IPV6 || NF_DEFRAG_IPV6) && \
11				     (!NF_NAT || NF_NAT) && \
12				     (!NETFILTER_CONNCOUNT || NETFILTER_CONNCOUNT)))
13	select LIBCRC32C
14	select MPLS
15	select NET_MPLS_GSO
16	select DST_CACHE
17	select NET_NSH
18	select NF_NAT_OVS if NF_NAT
19	help
20	  Open vSwitch is a multilayer Ethernet switch targeted at virtualized
21	  environments.  In addition to supporting a variety of features
22	  expected in a traditional hardware switch, it enables fine-grained
23	  programmatic extension and flow-based control of the network.  This
24	  control is useful in a wide variety of applications but is
25	  particularly important in multi-server virtualization deployments,
26	  which are often characterized by highly dynamic endpoints and the
27	  need to maintain logical abstractions for multiple tenants.
28
29	  The Open vSwitch datapath provides an in-kernel fast path for packet
30	  forwarding.  It is complemented by a userspace daemon, ovs-vswitchd,
31	  which is able to accept configuration from a variety of sources and
32	  translate it into packet processing rules.
33
34	  See http://openvswitch.org for more information and userspace
35	  utilities.
36
37	  To compile this code as a module, choose M here: the module will be
38	  called openvswitch.
39
40	  If unsure, say N.
41
42config OPENVSWITCH_GRE
43	tristate "Open vSwitch GRE tunneling support"
44	depends on OPENVSWITCH
45	depends on NET_IPGRE
46	default OPENVSWITCH
47	help
48	  If you say Y here, then the Open vSwitch will be able create GRE
49	  vport.
50
51	  Say N to exclude this support and reduce the binary size.
52
53	  If unsure, say Y.
54
55config OPENVSWITCH_VXLAN
56	tristate "Open vSwitch VXLAN tunneling support"
57	depends on OPENVSWITCH
58	depends on VXLAN
59	default OPENVSWITCH
60	help
61	  If you say Y here, then the Open vSwitch will be able create vxlan vport.
62
63	  Say N to exclude this support and reduce the binary size.
64
65	  If unsure, say Y.
66
67config OPENVSWITCH_GENEVE
68	tristate "Open vSwitch Geneve tunneling support"
69	depends on OPENVSWITCH
70	depends on GENEVE
71	default OPENVSWITCH
72	help
73	  If you say Y here, then the Open vSwitch will be able create geneve vport.
74
75	  Say N to exclude this support and reduce the binary size.
76