{ "info": { "author": "Hiroaki Kawai", "author_email": "hiroaki.kawai@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "twink\n=====\n`twink` is a python openflow library.\n\n`twink` uses plain openflow binary message instead of forcing \nyou mastering a bundled complicated openflow protocol classes. \nYou may use whatever openflow message parsing, building libraries. \n`twink` supports all openflow versions (1.0--1.4).\n\n`twink.threading` provides a `threading`-based server implementation. \nYou can get started with python standard libraries.\n\n`twink.gevent` has a gevent based openflow server, so for example, \nyou can create an openflow controller server with websocket support.\n\n`twink.ovs` offers you ovs-ofctl based openflow message creation.\n\n`twink.ext` provides utility functionalities.\n\nFor convenience, twink has `ofp4` openflow 1.3 message parser/builder\nas `twink.ofp4`, and `twink.ofp5` for openflow 1.4.\n\nparallel and concurrency\n------------------------\n`twink.gevent` or `twink.threading` enables openflow message parallel handling.\nWhile processing some openflow message with ovs-ofctl and suspend the process \nwaiting for reply, another openflow message can be handled in another handler.\nIf you use `threading` based controller, be sure using mutex.\n\nserver or client\n----------------\nIt does not matter because Openflow protocol is symmetric in syntax.\nNot only creating server-controller or client-switch, `twink` helps \ncreating server-switch and client-controller, which are not standard style.\nYou can use this library even in python interactive mode.\n`twink` is useful in debugging openflow protocol.\nThe most import part in creating server, is writing a handler function,\nwhich symbol is `func(openflow_message, channel_instance)` and \npassed to Channel class as `handle` member.\n\nLICENSE\n-------\nThis software is licensed under Apache software license 2.0\nhttp://www.apache.org/licenses/LICENSE-2.0", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/hkwi/twink/", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "twink", "package_url": "https://pypi.org/project/twink/", "platform": "", "project_url": "https://pypi.org/project/twink/", "project_urls": { "Homepage": "https://github.com/hkwi/twink/" }, "release_url": "https://pypi.org/project/twink/0.3/", "requires_dist": null, "requires_python": "", "summary": "Openflow library", "version": "0.3" }, "last_serial": 4386080, "releases": { "0.1": [], "0.2": [ { "comment_text": "", "digests": { "md5": "e4bd3a74bd057c8c508b773a0b3b564a", "sha256": "4070ae1b5ee623d7a5f4eac91c68773c1259fe3e5422f873721f20140a4f0d93" }, "downloads": -1, "filename": "twink-0.2.tar.gz", "has_sig": false, "md5_digest": "e4bd3a74bd057c8c508b773a0b3b564a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50567, "upload_time": "2015-06-05T09:51:03", "url": "https://files.pythonhosted.org/packages/0d/74/ab2ece497a8eba5247b54827c70a8fcdff88c5d638684ecd0e6b384fbb85/twink-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "8fc2bc948a53d46de5d04ca80cd3a939", "sha256": "8912989a83c1cd9cf1bd8054c0d13ad05871cf5dd40609bdee9f0292223016ce" }, "downloads": -1, "filename": "twink-0.3.tar.gz", "has_sig": false, "md5_digest": "8fc2bc948a53d46de5d04ca80cd3a939", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52318, "upload_time": "2018-10-17T11:52:03", "url": "https://files.pythonhosted.org/packages/32/a2/58965a3c31f83e15047a610d67a47b0858b729795a62c30bead0fb7c07b3/twink-0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8fc2bc948a53d46de5d04ca80cd3a939", "sha256": "8912989a83c1cd9cf1bd8054c0d13ad05871cf5dd40609bdee9f0292223016ce" }, "downloads": -1, "filename": "twink-0.3.tar.gz", "has_sig": false, "md5_digest": "8fc2bc948a53d46de5d04ca80cd3a939", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52318, "upload_time": "2018-10-17T11:52:03", "url": "https://files.pythonhosted.org/packages/32/a2/58965a3c31f83e15047a610d67a47b0858b729795a62c30bead0fb7c07b3/twink-0.3.tar.gz" } ] }