diff options
author | Jesse Gross <jesse@nicira.com> | 2011-10-25 22:26:31 -0400 |
---|---|---|
committer | Jesse Gross <jesse@nicira.com> | 2011-12-03 12:35:17 -0500 |
commit | ccb1352e76cff0524e7ccb2074826a092dd13016 (patch) | |
tree | 9122ceff5d75ec64e327a9fad4ad2013744c2999 /net/openvswitch/vport-netdev.h | |
parent | 75f2811c6460ccc59d83c66059943ce9c9f81a18 (diff) |
net: Add Open vSwitch kernel components.
Open vSwitch is a multilayer Ethernet switch targeted at virtualized
environments. In addition to supporting a variety of features
expected in a traditional hardware switch, it enables fine-grained
programmatic extension and flow-based control of the network.
This control is useful in a wide variety of applications but is
particularly important in multi-server virtualization deployments,
which are often characterized by highly dynamic endpoints and the need
to maintain logical abstractions for multiple tenants.
The Open vSwitch datapath provides an in-kernel fast path for packet
forwarding. It is complemented by a userspace daemon, ovs-vswitchd,
which is able to accept configuration from a variety of sources and
translate it into packet processing rules.
See http://openvswitch.org for more information and userspace
utilities.
Signed-off-by: Jesse Gross <jesse@nicira.com>
Diffstat (limited to 'net/openvswitch/vport-netdev.h')
-rw-r--r-- | net/openvswitch/vport-netdev.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/net/openvswitch/vport-netdev.h b/net/openvswitch/vport-netdev.h new file mode 100644 index 000000000000..fd9b008a0e6e --- /dev/null +++ b/net/openvswitch/vport-netdev.h | |||
@@ -0,0 +1,42 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2007-2011 Nicira Networks. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or | ||
5 | * modify it under the terms of version 2 of the GNU General Public | ||
6 | * License as published by the Free Software Foundation. | ||
7 | * | ||
8 | * This program is distributed in the hope that it will be useful, but | ||
9 | * WITHOUT ANY WARRANTY; without even the implied warranty of | ||
10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
11 | * General Public License for more details. | ||
12 | * | ||
13 | * You should have received a copy of the GNU General Public License | ||
14 | * along with this program; if not, write to the Free Software | ||
15 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | ||
16 | * 02110-1301, USA | ||
17 | */ | ||
18 | |||
19 | #ifndef VPORT_NETDEV_H | ||
20 | #define VPORT_NETDEV_H 1 | ||
21 | |||
22 | #include <linux/netdevice.h> | ||
23 | |||
24 | #include "vport.h" | ||
25 | |||
26 | struct vport *ovs_netdev_get_vport(struct net_device *dev); | ||
27 | |||
28 | struct netdev_vport { | ||
29 | struct net_device *dev; | ||
30 | }; | ||
31 | |||
32 | static inline struct netdev_vport * | ||
33 | netdev_vport_priv(const struct vport *vport) | ||
34 | { | ||
35 | return vport_priv(vport); | ||
36 | } | ||
37 | |||
38 | const char *ovs_netdev_get_name(const struct vport *); | ||
39 | const char *ovs_netdev_get_config(const struct vport *); | ||
40 | int ovs_netdev_get_ifindex(const struct vport *); | ||
41 | |||
42 | #endif /* vport_netdev.h */ | ||