awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
openvswitch avatar

openvswitch/ovs

0
View on GitHub↗
3,904 stars·1,994 forks·C·apache-2.0·11 views

Ovs

Open vSwitch is a software-defined network switch and high-performance data plane engine. It functions as a virtual layer 2 switch and network orchestrator, implementing the OpenFlow protocol to decouple the control plane from the data plane for programmable network forwarding.

The project distinguishes itself through a userspace-kernel datapath split and the use of poll-mode drivers for kernel-bypass acceleration. It provides a network tunneling gateway to extend virtual networks across physical hosts and utilizes a transactional, schema-based configuration database with state replication for high availability.

Its capability surface includes comprehensive network forwarding with support for link aggregation, VLAN segmentation, and packet header manipulation. It incorporates security primitives such as firewall rule implementation, connection state tracking, and IPsec tunnel encryption. Additionally, it offers traffic engineering tools for quality of service enforcement and observability features including sFlow monitoring and packet path tracing.

The system is managed via a command-line interface for switch configuration and network topology simulation.

Features

  • Software-Defined Networking Services - Provides a software-defined networking platform to programmatically define and update network forwarding rules.
  • OpenFlow Virtual Switches - Implements a software-defined network switch using the OpenFlow protocol to decouple control and data planes.
  • Layer 2 Tunnels - Encapsulates Ethernet frames to extend virtual layer 2 networks across physical layer 3 boundaries.
  • OpenFlow Control Protocols - Implements the OpenFlow protocol to decouple the control plane from the data plane for programmable network forwarding.
  • Network Traffic Routing - Directs data across virtual networks using a protocol supporting multiple tables and tag matching.
  • Overlay Networks - Connects virtual machines across physical hosts using encapsulated tunnels to create a unified logical overlay network.
  • Forwarding Controllers - Exposes network forwarding functions to programmatic control via standardized management interfaces.
  • Packet Processing Frameworks - Provides a programmable framework for routing packets through a sequence of tables and actions for complex header manipulation.
  • Pipeline-Based Packet Routing - Directs packets to specific ports, controllers, or queues using a pipeline of processing actions.
  • SDN Data Planes - Provides a high-performance packet processing engine with hardware offloading and kernel-bypass capabilities.
  • Traffic Tunnels - Encapsulates network data streams within transport protocols to extend virtual networks across physical servers.
  • Tunneling Gateways - Functions as a network tunneling gateway to extend virtual networks across physical hosts via VXLAN and GRE.
  • Virtual Layer 2 Switches - Functions as a virtualized switching platform managing VLANs and packet forwarding for virtual machines and containers.
  • Virtual Local Area Networks - Implements virtual local area networks to isolate traffic and prevent interference between virtual machines.
  • Datapath Splits - Separates the high-level control plane in userspace from the fast-path packet forwarding performed in the kernel.
  • Virtual Network Management - Manages virtual network interfaces, bonds physical links, and implements VLAN segmentation for virtualized environments.
  • Switch Configuration Management - Provides a command-line interface for controlling switch processes, loading kernel modules, and managing system settings.
  • Schema-Based Data Models - Uses a schema-based system within its transactional database to manage switch settings and enforce structural integrity.
  • Database Replication - Synchronizes configuration data across multiple servers to ensure high availability of the switch state.
  • Configuration Transaction Engines - Utilizes a transactional, schema-based configuration database to ensure consistency across switch clusters.
  • Poll-Mode Drivers - Uses poll-mode drivers to bypass the kernel network stack, achieving higher throughput and lower latency.
  • Transactional Configuration Storage - Implements a transactional database for persistent storage of switch settings, accessible via C and Python bindings.
  • Hardware Switching Offload - Provides interfaces to extend software-defined networking capabilities to physical hardware-level switching.
  • Network Diagnostics - Traces packet paths and samples flows to analyze behavior and debug connectivity issues in virtual networks.
  • Network Traffic Management - Manages bandwidth and prioritizes specific data flows using quality of service policies and rate limiting.
  • Network Interface Bonding - Implements standard bonding protocols to combine multiple physical interfaces into a single logical link.
  • Network Task Offloads - Offloads checksum calculations and segment processing from the CPU to network hardware.
  • Hardware-Accelerated Packet Forwarding - Offloads packet matching and forwarding rules to physical NIC hardware for line-rate performance.
  • Packet Manipulation Toolkits - Modifies, strips, or adds network layer fields to packets during the switching process.
  • Connection State Management - Tracks the state and history of network connections to manage packet flow based on session state.
  • Traffic Rate Limiters - Enforces bandwidth policies to cap the maximum data rate for specific network ports or flows.
  • Virtual Machine Connectivity - Establishes secure private tunnels to connect remote virtual machines across different physical hosts.
  • Access Control Lists - Implements access control lists to filter network traffic based on specific permit or deny criteria.
  • Traffic Isolation - Implements network-level traffic isolation to segregate virtual machine communication and ensure tenant privacy.
  • Encrypted Tunneling - Secures data transmission between switches using encryption protocols to ensure authenticity and privacy.
  • Firewalls - Implements firewalling actions and connection tracking to secure network data flows.
  • Secure Tunneling - Encrypts tunnel data using IPsec to ensure privacy and integrity for traffic between switches.
  • Traffic Shaping and Prioritization - Configures quality of service policies and policing to manage bandwidth and prioritize critical traffic.
  • Network Traffic Analysis - Analyzes packet flow using sampling and tracing tools to diagnose network behavior.
  • sFlow Monitoring - Supports network packet sampling and flow data export via sFlow for real-time traffic analysis.
  • Packet Path Tracing - Tracks individual packet movements through the switch to diagnose forwarding logic and connectivity issues.

Star history

Star history chart for openvswitch/ovsStar history chart for openvswitch/ovs

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Ovs

Similar open-source projects, ranked by how many features they share with Ovs.
  • systemsapproach/bookSystemsApproach avatar

    SystemsApproach/book

    3,298View on GitHub↗

    This project is a comprehensive computer networking textbook and instructional resource. It serves as a technical guide for the design and implementation of network layers, protocols, and hardware architecture, covering the spectrum from physical links to application-layer protocols. The content provides a detailed study of standards for congestion control, reliable data delivery, and internetwork routing. It includes specialized technical material on network security, public-key infrastructure, and the operation of modern cloud infrastructure and data centers. The material covers a broad ra

    Python
    View on GitHub↗3,298
  • ntop/n2nntop avatar

    ntop/n2n

    6,954View on GitHub↗

    n2n is a peer-to-peer VPN that creates an encrypted mesh network by establishing layer 2 overlay networks. It uses UDP tunneling to connect remote computers into a shared virtual local area network, allowing devices to communicate as if they were on the same physical Ethernet switch. The system utilizes a centralized signaling registry and federated coordination nodes to facilitate peer discovery and node registration. It implements NAT traversal through UDP hole punching and UPnP port mapping, while using supernode relay routing to ensure connectivity when symmetric NATs prevent direct peer-

    Cpeer-to-peervpn
    View on GitHub↗6,954
  • lxc/incuslxc avatar

    lxc/incus

    4,893View on GitHub↗

    Incus is a unified orchestration platform for managing system containers, OCI application containers, and virtual machines through a single control plane. It brings together cluster infrastructure management, secure multi-tenancy, software-defined networking, and pluggable storage backend orchestration into one cohesive system exposed via a full REST API and command-line interface. What distinguishes Incus is its ability to run multiple instance types side by side—full Linux system containers, OCI application containers, and QEMU virtual machines—all managed with consistent tooling. Networkin

    Gocloudcontainershacktoberfest
    View on GitHub↗4,893
  • justsenger/exhypervJustsenger avatar

    Justsenger/ExHyperV

    4,285View on GitHub↗

    ExHyperV is a suite of administrative tools designed for managing advanced Hyper-V configurations, specifically focusing on GPU partitioning, device passthrough, and virtual network switches. It provides a graphical interface to configure virtual machine resources and optimize hypervisor settings. The project is distinguished by its ability to share physical graphics card resources across multiple virtual machines using paravirtualization and partitioning. It also provides specialized utilities for assigning PCIe devices and USB peripherals directly to guest machines for exclusive access. Th

    C#
    View on GitHub↗4,285
See all 30 alternatives to Ovs→

Frequently asked questions

What does openvswitch/ovs do?

Open vSwitch is a software-defined network switch and high-performance data plane engine. It functions as a virtual layer 2 switch and network orchestrator, implementing the OpenFlow protocol to decouple the control plane from the data plane for programmable network forwarding.

What are the main features of openvswitch/ovs?

The main features of openvswitch/ovs are: Software-Defined Networking Services, OpenFlow Virtual Switches, Layer 2 Tunnels, OpenFlow Control Protocols, Network Traffic Routing, Overlay Networks, Forwarding Controllers, Packet Processing Frameworks.

What are some open-source alternatives to openvswitch/ovs?

Open-source alternatives to openvswitch/ovs include: systemsapproach/book — This project is a comprehensive computer networking textbook and instructional resource. It serves as a technical… ntop/n2n — n2n is a peer-to-peer VPN that creates an encrypted mesh network by establishing layer 2 overlay networks. It uses UDP… lxc/incus — Incus is a unified orchestration platform for managing system containers, OCI application containers, and virtual… justsenger/exhyperv — ExHyperV is a suite of administrative tools designed for managing advanced Hyper-V configurations, specifically… qiuyuzhou/shadowsocksx-ng — ShadowsocksX-NG is a macOS application that functions as a Shadowsocks proxy client to establish encrypted tunnels for… ginuerzh/gost — gost is a multi-protocol proxy tunnel and secure tunneling server designed to route network traffic through encrypted…