2016-02-16 84 views
-2

我希望有人能指出我在正確的方向。我是Python編程的新手,我試圖在Python中創建一個簡單的TCP路由器。它需要做的就是接收來自多個設備的數據,並將該數據轉發給應用程序,並反向接收來自應用程序的數據併發送到該特定設備。試圖創建一個簡單的異步Python TCP路由器

我已經看到了我需要在這個答案中實現的概念https://stackoverflow.com/a/8808582但我完全不知道從哪裏開始。

我曾經看過像Crossbar.io和Autobahn這樣的圖書館,但都似乎是我想要做的事情的矯枉過正。

我很感激,如果有人可以指向正確的方向或教程,因爲我不知道從哪裏開始。

回答

0

我寫了一個Python庫,旨在使異步TCP儘可能地簡單。您可以用五行代碼編寫回顯服務器。 Here的網站。 Here是GitHub的頁面。和here's the PyPI page

如果你要安裝它,只需運行

pip install simpletcp

你不應該,這是書面,只保證與Python 3

這裏工作是一個(異步的例子)回聲服務器:

from simpletcp.tcpserver import TCPServer 

def echo(ip, queue, data): 
    queue.put(data) 

server = TCPServer("localhost", 5000, echo) 
server.run() 

這裏的一個客戶端將數據發送到服務器的一個示例:

from simpletcp.clientsocket import ClientSocket 

s1 = ClientSocket("localhost", 5000, single_use=False) 
response = s1.send("Hello, World!")