-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Expand file tree
/
Copy pathUDP_Heartbeat_server.py
More file actions
52 lines (47 loc) · 1.04 KB
/
UDP_Heartbeat_server.py
File metadata and controls
52 lines (47 loc) · 1.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
from socket import *
import random
import time
serverSocket = socket(AF_INET, SOCK_DGRAM)
serverPort=800
serverSocket.bind(('',serverPort))
start_time=float(time.time())
end_time=start_time
while True:
try:
serverSocket.settimeout(0.1)
message, address = serverSocket.recvfrom(1024)
message=message.decode()
rtime=float(message.split()[1])
end_time=rtime
Ping=float(time.time())-rtime
print(str(message.split()[0])+':',Ping)
except Exception as e:
if end_time==start_time:
continue
if time.time()-end_time>=1.0:
print('Heartbeat pause')
break
else:
print('Packet lost')
'''
1: 0.0010023117065429688
2: 0.0009434223175048828
3: 0.0009434223175048828
4: 0.0029366016387939453
5: 0.0029366016387939453
6: 0.004778385162353516
7: 0.004778385162353516
8: 0.00577998161315918
9: 0.00577998161315918
10: 0.006776571273803711
Packet lost
Packet lost
Packet lost
Packet lost
Packet lost
Packet lost
Packet lost
Packet lost
Packet lost
Heartbeat pause
'''