xref: /kernel/linux/linux-6.6/net/openvswitch/Kconfig (revision 62306a36)
162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci#
362306a36Sopenharmony_ci# Open vSwitch
462306a36Sopenharmony_ci#
562306a36Sopenharmony_ci
662306a36Sopenharmony_ciconfig OPENVSWITCH
762306a36Sopenharmony_ci	tristate "Open vSwitch"
862306a36Sopenharmony_ci	depends on INET
962306a36Sopenharmony_ci	depends on !NF_CONNTRACK || \
1062306a36Sopenharmony_ci		   (NF_CONNTRACK && ((!NF_DEFRAG_IPV6 || NF_DEFRAG_IPV6) && \
1162306a36Sopenharmony_ci				     (!NF_NAT || NF_NAT) && \
1262306a36Sopenharmony_ci				     (!NETFILTER_CONNCOUNT || NETFILTER_CONNCOUNT)))
1362306a36Sopenharmony_ci	select LIBCRC32C
1462306a36Sopenharmony_ci	select MPLS
1562306a36Sopenharmony_ci	select NET_MPLS_GSO
1662306a36Sopenharmony_ci	select DST_CACHE
1762306a36Sopenharmony_ci	select NET_NSH
1862306a36Sopenharmony_ci	select NF_CONNTRACK_OVS if NF_CONNTRACK
1962306a36Sopenharmony_ci	select NF_NAT_OVS if NF_NAT
2062306a36Sopenharmony_ci	help
2162306a36Sopenharmony_ci	  Open vSwitch is a multilayer Ethernet switch targeted at virtualized
2262306a36Sopenharmony_ci	  environments.  In addition to supporting a variety of features
2362306a36Sopenharmony_ci	  expected in a traditional hardware switch, it enables fine-grained
2462306a36Sopenharmony_ci	  programmatic extension and flow-based control of the network.  This
2562306a36Sopenharmony_ci	  control is useful in a wide variety of applications but is
2662306a36Sopenharmony_ci	  particularly important in multi-server virtualization deployments,
2762306a36Sopenharmony_ci	  which are often characterized by highly dynamic endpoints and the
2862306a36Sopenharmony_ci	  need to maintain logical abstractions for multiple tenants.
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci	  The Open vSwitch datapath provides an in-kernel fast path for packet
3162306a36Sopenharmony_ci	  forwarding.  It is complemented by a userspace daemon, ovs-vswitchd,
3262306a36Sopenharmony_ci	  which is able to accept configuration from a variety of sources and
3362306a36Sopenharmony_ci	  translate it into packet processing rules.
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci	  See http://openvswitch.org for more information and userspace
3662306a36Sopenharmony_ci	  utilities.
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci	  To compile this code as a module, choose M here: the module will be
3962306a36Sopenharmony_ci	  called openvswitch.
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci	  If unsure, say N.
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ciconfig OPENVSWITCH_GRE
4462306a36Sopenharmony_ci	tristate "Open vSwitch GRE tunneling support"
4562306a36Sopenharmony_ci	depends on OPENVSWITCH
4662306a36Sopenharmony_ci	depends on NET_IPGRE
4762306a36Sopenharmony_ci	default OPENVSWITCH
4862306a36Sopenharmony_ci	help
4962306a36Sopenharmony_ci	  If you say Y here, then the Open vSwitch will be able create GRE
5062306a36Sopenharmony_ci	  vport.
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ci	  Say N to exclude this support and reduce the binary size.
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_ci	  If unsure, say Y.
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ciconfig OPENVSWITCH_VXLAN
5762306a36Sopenharmony_ci	tristate "Open vSwitch VXLAN tunneling support"
5862306a36Sopenharmony_ci	depends on OPENVSWITCH
5962306a36Sopenharmony_ci	depends on VXLAN
6062306a36Sopenharmony_ci	default OPENVSWITCH
6162306a36Sopenharmony_ci	help
6262306a36Sopenharmony_ci	  If you say Y here, then the Open vSwitch will be able create vxlan vport.
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ci	  Say N to exclude this support and reduce the binary size.
6562306a36Sopenharmony_ci
6662306a36Sopenharmony_ci	  If unsure, say Y.
6762306a36Sopenharmony_ci
6862306a36Sopenharmony_ciconfig OPENVSWITCH_GENEVE
6962306a36Sopenharmony_ci	tristate "Open vSwitch Geneve tunneling support"
7062306a36Sopenharmony_ci	depends on OPENVSWITCH
7162306a36Sopenharmony_ci	depends on GENEVE
7262306a36Sopenharmony_ci	default OPENVSWITCH
7362306a36Sopenharmony_ci	help
7462306a36Sopenharmony_ci	  If you say Y here, then the Open vSwitch will be able create geneve vport.
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ci	  Say N to exclude this support and reduce the binary size.
77