{"id":50415943,"url":"https://github.com/niloysh/sdn-traffic-routing","last_synced_at":"2026-06-16T22:00:35.466Z","repository":{"id":132383163,"uuid":"161124865","full_name":"niloysh/sdn-traffic-routing","owner":"niloysh","description":"Sway: Traffic-Aware QoS Routing in Software-Defined IoT","archived":false,"fork":false,"pushed_at":"2018-12-10T15:53:03.000Z","size":1381,"stargazers_count":13,"open_issues_count":0,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-10-20T22:04:38.457Z","etag":null,"topics":["mininet","pox-controller","sdn"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/niloysh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-12-10T06:01:28.000Z","updated_at":"2023-10-20T22:04:38.941Z","dependencies_parsed_at":"2023-07-02T07:45:37.805Z","dependency_job_id":null,"html_url":"https://github.com/niloysh/sdn-traffic-routing","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"purl":"pkg:github/niloysh/sdn-traffic-routing","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/niloysh%2Fsdn-traffic-routing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/niloysh%2Fsdn-traffic-routing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/niloysh%2Fsdn-traffic-routing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/niloysh%2Fsdn-traffic-routing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/niloysh","download_url":"https://codeload.github.com/niloysh/sdn-traffic-routing/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/niloysh%2Fsdn-traffic-routing/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34425024,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-16T02:00:06.860Z","response_time":126,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["mininet","pox-controller","sdn"],"created_at":"2026-05-31T06:00:23.623Z","updated_at":"2026-06-16T22:00:35.454Z","avatar_url":"https://github.com/niloysh.png","language":"Python","funding_links":[],"categories":["Protocols"],"sub_categories":["Others"],"readme":"### Sway: Traffic-Aware QoS Routing in Software-Defined IoT\n===========================================================\n\nThis directory contains some starter code for the POX + Mininet setup used in Sway.\n\n#### Installation/ Usage :\n - Step 1: Clone this repository to your home directory.\n - Step 2: You should have two directories, namely `pox` and `mininet`.\n - Step 3: The `pox/ext/sway` contains the code for a simple reactive forwarding module built on top of the POX SDN controller.\n - Step 4: To launch the reactive forwarding application, simply `cd` into the `pox` directory and run `$ ./pox.py sway.startup`\n - Step 5: The mininet directory contains a simple custom topology. To launch it, `cd` into the mininet directory and run `$ sudo python topology.py`\n\n#### Adding Functionality :\n\nFrom here on, you can add various functionality according to your requirements. I have intentionally kept the code simple so that it is easier to understand and modify. Some ideas for enhancements are:\n\n - The [fnss](https://fnss.github.io/) library can be utilized to read in various network topologies from  sources such as [CAIDA](http://www.caida.org/research/topology/#Datasets) and [Internet Topology Zoo](http://www.topology-zoo.org/).\n - Since `mininet/topology.py` and `sway/reactive_fwd` utilizes the [networkx](https://networkx.github.io/documentation/stable/index.html) library, you can utilize various algorithms present, such as Dijkstra, Bellman-Ford, K-shortest paths, etc.\n - The [OpenNetMon](https://github.com/TUDelftNAS/SDN-OpenNetMon) module can be utilized to measure link delay, bandwidth etc. for QoS applications.\n\n\n#### Citation : \nIf you use the code in this repository in your research work or project, please consider citing the following publication.\n\nN. Saha, S. Bera, S. Misra, \"[Sway: Traffic-Aware QoS Routing in Software-Defined IoT](https://niloysh.github.io/assets/Sway.pdf), in *IEEE Trans. on Emerging Topics in Computing*, 2018. Doi: 10.1109/TETC.2018.2847296\n\n```\n@ARTICLE{8385144, \nauthor={N. Saha and S. Bera and S. Misra}, \njournal={IEEE Transactions on Emerging Topics in Computing}, \ntitle={Sway: Traffic-Aware QoS Routing in Software-Defined IoT}, \nyear={2018}, \nvolume={}, \nnumber={}, \npages={1-1}, \nkeywords={Computer architecture;Delays;Internet of Things;Quality of service;Routing;Wireless communication;Internet of Things;Quality-of-Service;Routing;Software-Defined Networking}, \ndoi={10.1109/TETC.2018.2847296}, \nISSN={}, \nmonth={},}\n```\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fniloysh%2Fsdn-traffic-routing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fniloysh%2Fsdn-traffic-routing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fniloysh%2Fsdn-traffic-routing/lists"}