2017-01-14 6 views

答えて

1

このような遅延のしきい値とプロトコルについては言及していませんでした。私はあなたの最善の策は、クライアント/サーバーのping/pongサーバーをセットアップすることだと思います。

ここで(片道と往復)、待ち時間をテストするためのいくつかの簡単なzeromqのPythonコード(Request/Reply pattern)がある

server.py

import zmq,time,sys 

ctx =zmq.Context() 
socket = ctx.socket(zmq.REP) 
socket.bind('tcp://*:9999') 

while True: 
    msg = socket.recv() 
    print "client->server msg took",time.time()-float(msg) 
    socket.send(msg) 

client.py

import zmq,time,sys                               

ctx =zmq.Context()                               
socket = ctx.socket(zmq.REQ)                            
socket.connect('tcp://localhost:9999')                          
for i in xrange(10):                              
    socket.send(str(time.time()))                           
    msg = socket.recv()                              
    print "message id",i,"RT",time.time()-float(msg)  

あなたはすることができますそれらの両方を同時に実行して、待ち時間の統計情報を表示します。 これはあなたが探しているものですか?

+0

ありがとうございました。実際には、プラットフォームは、ThingspeakやXivelyのようなIOTプラットフォームであり、httpやmqttリクエストでAPI経由でセンサーからのメッセージを受信します。あなたが知っているように、センサーは(配置後に)プラットフォームにデータを連続的に送信します。 RTTの平均はプラットフォームを評価する上で非常に重要であるためです。 – user7364359

+0

また、私はプラットフォームにデータを転送するための完全なコードを持っているだけでどのように私は送信されているすべてのメッセージのRTTを計算する必要があります探しています。 – user7364359

関連する問題