{"id":25429962,"url":"https://github.com/davidyslu/simple_pox","last_synced_at":"2025-05-14T10:35:33.147Z","repository":{"id":93934493,"uuid":"113124552","full_name":"davidyslu/Simple_POX","owner":"davidyslu","description":"Simple SDN on POX controller","archived":false,"fork":false,"pushed_at":"2017-12-05T03:33:02.000Z","size":1,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-05-14T10:33:10.242Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/davidyslu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-12-05T03:01:26.000Z","updated_at":"2024-04-27T17:41:17.000Z","dependencies_parsed_at":"2023-03-16T13:15:40.865Z","dependency_job_id":null,"html_url":"https://github.com/davidyslu/Simple_POX","commit_stats":null,"previous_names":["davidyslu/simple_pox"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davidyslu%2FSimple_POX","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davidyslu%2FSimple_POX/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davidyslu%2FSimple_POX/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davidyslu%2FSimple_POX/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/davidyslu","download_url":"https://codeload.github.com/davidyslu/Simple_POX/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254121174,"owners_count":22018117,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-17T02:32:51.645Z","updated_at":"2025-05-14T10:35:33.113Z","avatar_url":"https://github.com/davidyslu.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Simple SDN on Mininet and POX controller\n\n[![License: IEEE](https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg)](http://creativecommons.org/licenses/by-nc-sa/4.0/)\n\nThis respository is to build a simple SDN topology on Mininet with POX controller.\n\n## Environment Setup\n\n* Using your own Ubuntu Machine or VM\n* Install Needed Tools\n    ```bash\n    $ sudo apt-get update\n    $ sudo apt-get install -y git vim-nox python-setuptools python-all-dev flex bison traceroute\n    ```\n* Install **Mininet**\n    ```bash\n    $ cd ~\n    $ git clone git://github.com/mininet/mininet\n    $ cd mininet\n    $ ./util/install.sh -fnv\n    ```\n* Install **POX**\n    ```bash\n    $ cd ~\n    $ git clone http://github.com/noxrepo/pox\n    ```\n* Install **ltprotocol**\n    ```\n    $ cd ~\n    $ git clone git://github.com/dound/ltprotocol.git\n    $ cd ltprotocol\n    $ sudo python setup.py install\n    ```\n\n## Execution\n\n* Clone this repository. If you have already installed the POX controller, just move the `simple_controller.py` under the `./pox/ext` into your POX folder `./pox/ext`.\n    ```\n    $ git clone https://github.com/yungshenglu/Simple_POX_SDN\n    ```\n* Run the `simple_controller` on POX and don't close this terminal.\n    ```\n    $ cd ./pox\n    $ ./pox.py simple_controller\n    ```\n* Open another terminal and run the `simple.py` on Mininet.\n    ```\n    # Change the directory into the program simple.py\n    # Change the mode of simple.py (Optional)\n    $ sudo chmod +x simple.py\n    $ sudo ./simple.py\n    ```\n* After running the `simple.py`, it will return some messages on the terminal.\n    ```bash\n    *** Creating network\n    *** Adding hosts:h1 h2\n    *** Adding switches:s1 s2\n    *** Adding links:\n    (1.00Mbit 10ms delay 0.00000% loss) (1.00Mbit 10ms delay 0.00000% loss) (h1, s1) (1.00Mbit 10ms delay 0.00000% loss)\n    (1.00Mbit 10ms delay 0.00000% loss) (s1, s2) (1.00Mbit 10ms delay 0.00000% loss) (1.00Mbit 10ms delay 0.00000% loss)\n    (s2, h2)\n    *** Configuring hosts\n    h1 h2\n    Unable to contact the remote controller at 127.0.0.1:6633\n    *** Starting controller\n    c0\n    *** Starting 2 switches\n    s1 s2 ...(1.00Mbit 10ms delay 0.00000% loss) (1.00Mbit 10ms delay 0.00000% loss) (1.00Mbit 10ms delay 0.00000% loss)\n    (1.00Mbit 10ms delay 0.00000% loss)\n    Dumping host connections\n    h1 h1-eth0:s1-eth1\n    h2 h2-eth0:s2-eth2\n    *** Starting CLI:\n    mininet\u003e \n    ```\n* Ping the host h2 on h1\n    ```bash\n    # Ping with setting up the number of ICMP echo requests to send\n    mininet\u003e h1 ping -c 10 h2\n    # Ping with setting up rhw TTL value\n    mininet\u003e h1 ping -i -0.1 h2\n    ```\n* If success, it will return the following results.\n    ```bash\n    ING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.\n    64 bytes from 10.0.0.2: icmp_seq=9 ttl=64 time=81.3 ms\n    64 bytes from 10.0.0.2: icmp_seq=12 ttl=64 time=80.5 ms\n    64 bytes from 10.0.0.2: icmp_seq=14 ttl=64 time=80.7 ms\n    ...\n    ```\n\n## TODO\n\n(Update soon...)\n\n## Author\n\n* [Yung-Sheng Lu](https://github.com/yungshenglu)\n\n---\n[![License: IEEE](https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg)](http://creativecommons.org/licenses/by-nc-sa/4.0/)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavidyslu%2Fsimple_pox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdavidyslu%2Fsimple_pox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavidyslu%2Fsimple_pox/lists"}