xref: /linux/net/openvswitch/Kconfig (revision b2d0f5d5dc53532e6f07bc546a476a55ebdfe0f3)
1ccb1352eSJesse Gross#
2ccb1352eSJesse Gross# Open vSwitch
3ccb1352eSJesse Gross#
4ccb1352eSJesse Gross
5ccb1352eSJesse Grossconfig OPENVSWITCH
6ccb1352eSJesse Gross	tristate "Open vSwitch"
78cd4313aSPravin B Shelar	depends on INET
838c089d1SJoe Stringer	depends on !NF_CONNTRACK || \
905752523SJarno Rajahalme		   (NF_CONNTRACK && ((!NF_DEFRAG_IPV6 || NF_DEFRAG_IPV6) && \
1099b7248eSArnd Bergmann				     (!NF_NAT || NF_NAT) && \
1199b7248eSArnd Bergmann				     (!NF_NAT_IPV4 || NF_NAT_IPV4) && \
1299b7248eSArnd Bergmann				     (!NF_NAT_IPV6 || NF_NAT_IPV6)))
13a175a723SJoe Stringer	select LIBCRC32C
147d5f41f2SEric W. Biederman	select MPLS
158cd4313aSPravin B Shelar	select NET_MPLS_GSO
16d71785ffSPaolo Abeni	select DST_CACHE
17*b2d0f5d5SYi Yang	select NET_NSH
18ccb1352eSJesse Gross	---help---
19ccb1352eSJesse Gross	  Open vSwitch is a multilayer Ethernet switch targeted at virtualized
20ccb1352eSJesse Gross	  environments.  In addition to supporting a variety of features
21ccb1352eSJesse Gross	  expected in a traditional hardware switch, it enables fine-grained
22ccb1352eSJesse Gross	  programmatic extension and flow-based control of the network.  This
23ccb1352eSJesse Gross	  control is useful in a wide variety of applications but is
24ccb1352eSJesse Gross	  particularly important in multi-server virtualization deployments,
25ccb1352eSJesse Gross	  which are often characterized by highly dynamic endpoints and the
26ccb1352eSJesse Gross	  need to maintain logical abstractions for multiple tenants.
27ccb1352eSJesse Gross
28ccb1352eSJesse Gross	  The Open vSwitch datapath provides an in-kernel fast path for packet
29ccb1352eSJesse Gross	  forwarding.  It is complemented by a userspace daemon, ovs-vswitchd,
30ccb1352eSJesse Gross	  which is able to accept configuration from a variety of sources and
31ccb1352eSJesse Gross	  translate it into packet processing rules.
32ccb1352eSJesse Gross
33ccb1352eSJesse Gross	  See http://openvswitch.org for more information and userspace
34ccb1352eSJesse Gross	  utilities.
35ccb1352eSJesse Gross
36ccb1352eSJesse Gross	  To compile this code as a module, choose M here: the module will be
37ccb1352eSJesse Gross	  called openvswitch.
38ccb1352eSJesse Gross
39ccb1352eSJesse Gross	  If unsure, say N.
40fb825a55SPravin B Shelar
41fb825a55SPravin B Shelarconfig OPENVSWITCH_GRE
4262b9c8d0SThomas Graf	tristate "Open vSwitch GRE tunneling support"
43fb825a55SPravin B Shelar	depends on OPENVSWITCH
44b2acd1dcSPravin B Shelar	depends on NET_IPGRE
4562b9c8d0SThomas Graf	default OPENVSWITCH
46fb825a55SPravin B Shelar	---help---
47fb825a55SPravin B Shelar	  If you say Y here, then the Open vSwitch will be able create GRE
48fb825a55SPravin B Shelar	  vport.
49fb825a55SPravin B Shelar
50fb825a55SPravin B Shelar	  Say N to exclude this support and reduce the binary size.
51fb825a55SPravin B Shelar
52fb825a55SPravin B Shelar	  If unsure, say Y.
5358264848SPravin B Shelar
54dcc38c03SThomas Grafconfig OPENVSWITCH_VXLAN
55dcc38c03SThomas Graf	tristate "Open vSwitch VXLAN tunneling support"
56dcc38c03SThomas Graf	depends on OPENVSWITCH
57dcc38c03SThomas Graf	depends on VXLAN
58dcc38c03SThomas Graf	default OPENVSWITCH
59dcc38c03SThomas Graf	---help---
60dcc38c03SThomas Graf	  If you say Y here, then the Open vSwitch will be able create vxlan vport.
61dcc38c03SThomas Graf
62dcc38c03SThomas Graf	  Say N to exclude this support and reduce the binary size.
63dcc38c03SThomas Graf
64dcc38c03SThomas Graf	  If unsure, say Y.
65dcc38c03SThomas Graf
66f5796684SJesse Grossconfig OPENVSWITCH_GENEVE
6762b9c8d0SThomas Graf	tristate "Open vSwitch Geneve tunneling support"
68f5796684SJesse Gross	depends on OPENVSWITCH
696b001e68SPravin B Shelar	depends on GENEVE
7062b9c8d0SThomas Graf	default OPENVSWITCH
71f5796684SJesse Gross	---help---
72f5796684SJesse Gross	  If you say Y here, then the Open vSwitch will be able create geneve vport.
73f5796684SJesse Gross
74f5796684SJesse Gross	  Say N to exclude this support and reduce the binary size.
75