POX: A Python-Based Platform for Software-Defined Networking

This repository profile is provided by osrepos.com, an open source repository discovery platform.

POX: A Python-Based Platform for Software-Defined Networking

Summary

POX is a versatile networking software platform written in Python, initially designed as an OpenFlow controller. It can also function as an OpenFlow switch and is useful for developing general networking software. Supporting OpenFlow 1.0 and various operating systems, POX provides a flexible environment for network experimentation and development.

Repository Information

Analyzed by OSRepos on April 3, 2026

Topics

Click on any tag to explore related repositories

Use at your own risk

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.

Introduction

POX is a networking software platform developed in Python, offering a flexible environment for network experimentation and development. It began as an OpenFlow controller but has evolved to also function as an OpenFlow switch, making it suitable for a wide range of networking software applications. POX officially requires Python 3 (versions like "gar" and later), with "fangtooth" being the last version to support Python 2. It runs across Linux, Mac OS, and Windows, and even on other platforms like Android, FreeBSD, and Haiku, requiring only a Python interpreter.

Installation

Getting started with POX is straightforward. You can boot POX by running pox.py from its directory. The script intelligently attempts to find an appropriate Python 3 interpreter, prioritizing a PyPy installation within the POX directory for potential performance gains. Otherwise, it looks for python3 or falls back to python. You can also explicitly invoke your desired Python interpreter, for example, python3 pox.py.

Examples

POX components are essentially Python modules following specific POX conventions. They are located in standard Python paths, plus the pox and ext directories. To run a component, simply specify its name on the command line:

./pox.py forwarding.l2_learning

Components can also accept options. For instance, to run POX as an OpenFlow controller and specify its address and port, you can pass these as options to the openflow._01 component:

./pox.py openflow.of_01 --address=10.1.1.1 --port=6634

Why Use POX?

POX stands out as a powerful tool for anyone involved in Software-Defined Networking (SDN) or general network programming. Its Python-based nature makes it accessible and easy to extend. The platform's ability to act as both an OpenFlow controller and a switch, coupled with its support for OpenFlow 1.0 and Open vSwitch/Nicira extensions, provides a robust foundation for building and testing network protocols and applications. Its cross-platform compatibility further enhances its utility for diverse development environments.

Links

For more detailed information and to explore the project further, please refer to the official resources:

Related repositories

Similar repositories that may be relevant next.

webassets: Asset Management for Python Web Development

webassets: Asset Management for Python Web Development

July 26, 2026

webassets is a robust library designed for asset management in Python web development. It simplifies the process of merging and compressing JavaScript and CSS files, enhancing application performance. This tool is essential for developers looking to optimize their frontend assets efficiently.

PythonWeb DevelopmentAsset Management
requests-html: Pythonic HTML Parsing with JavaScript Support

requests-html: Pythonic HTML Parsing with JavaScript Support

July 25, 2026

requests-html is a Python library designed to simplify HTML parsing and web scraping. It extends the familiar Requests experience with powerful parsing capabilities, including full JavaScript support via Chromium, CSS selectors, and XPath. This makes it an ideal tool for developers needing to interact with dynamic web content.

PythonWeb ScrapingHTML Parsing
Grab: A Powerful Python Web Scraping Framework

Grab: A Powerful Python Web Scraping Framework

July 24, 2026

Grab is a robust Python web scraping framework designed to simplify complex data extraction tasks. It provides comprehensive tools for handling network requests, processing scraped content, and managing asynchronous operations through its powerful Spider component. Developers can leverage features like automatic cookie support, HTTP/SOCKS proxies, and XPath queries for efficient web data collection.

PythonWeb ScrapingFramework
Awesome Django: A Curated List of Essential Django Resources and Packages

Awesome Django: A Curated List of Essential Django Resources and Packages

July 24, 2026

Awesome Django is a comprehensive curated list of outstanding Django apps, projects, and resources. It focuses on mature, well-maintained packages with good documentation and active user bases. This repository serves as an invaluable guide for developers looking for high-quality tools and examples within the Django ecosystem.

DjangoAwesome ListPython

Source repository

Open the original repository on GitHub.

7 counted GitHub visits

View on GitHub
OS
OSRepos

Analysis and discovery of open source repositories. Find interesting projects and follow their updates.

Monitor your website with YourWebsiteScore

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of third-party repository code is at your own risk. Always review source code, dependencies, licenses, and security implications before running anything.

© 2025 OSRepos. Built with Nuxt 3 and lots of ❤️