##// END OF EJS Templates
Testing frame transfer without colon.
imanay -
r91:92
parent child
Show More
@@ -1,75 +1,92
1 import socket
1 import socket
2 import string
2 import string
3 #import time
3 #import time
4
4
5 def int2bin(n):
5 def int2bin(n):
6 n_hex = "%x" %n
6 n_hex = "%x" %n
7 ln = len(n_hex)
7 ln = len(n_hex)
8 if ln == 1:
8 if ln == 1:
9 n_hex = "00000" + n_hex
9 n_hex = "00000" + n_hex
10 elif ln == 2:
10 elif ln == 2:
11 n_hex = "0000" + n_hex
11 n_hex = "0000" + n_hex
12 elif ln == 3:
12 elif ln == 3:
13 n_hex = "000" + n_hex
13 n_hex = "000" + n_hex
14 elif ln == 4:
14 elif ln == 4:
15 n_hex = "00" + n_hex
15 n_hex = "00" + n_hex
16 elif ln == 5:
16 elif ln == 5:
17 n_hex = "0" + n_hex
17 n_hex = "0" + n_hex
18
18
19 byte1 = n_hex[0:2]
19 byte1 = n_hex[0:2]
20 byte2 = n_hex[2:4]
20 byte2 = n_hex[2:4]
21 byte3 = n_hex[4:6]
21 byte3 = n_hex[4:6]
22 str_len = ""
22 str_len = ""
23 str_len += "%c" % string.atoi(byte1,16)
23 str_len += "%c" % string.atoi(byte1,16)
24 str_len += "%c" % string.atoi(byte2,16)
24 str_len += "%c" % string.atoi(byte2,16)
25 str_len += "%c" % string.atoi(byte3,16)
25 str_len += "%c" % string.atoi(byte3,16)
26
26
27 return str_len
27 return str_len
28
28
29 def int2str(n):
30 str_n = str(n)
31 l_n = len(str_n)
32 if l_n == 1:
33 str_n = "00000" + str_n
34 elif l_n == 2:
35 str_n = "0000" + str_n
36 elif l_n == 3:
37 str_n = "000" + str_n
38 elif l_n == 4:
39 str_n = "00" + str_n
40 elif l_n == 5:
41 str_n = "0" + str_n
42 return str_n
43
44
29 #ini = time.time()
45 #ini = time.time()
30 #sum = 0
46 #sum = 0
31
47
32 #for i in range(11,15):
48 #for i in range(11,15):
33 i=117
49 i=117
34 #ini1 = time.time()
50 #ini1 = time.time()
35 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
51 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
36 host = "192.168.1." + str(i)
52 host = "192.168.1." + str(i)
37 s.connect((host, 5500))
53 s.connect((host, 5500))
38
54
39 fd = open("experimento1.abs","r")
55 fd = open("experimento2.abs","r")
40 FileList = fd.readlines()
56 FileList = fd.readlines()
41 data = "".join(FileList)
57 data = "".join(FileList)
42
58
43 dfl = 0
59 dfl = 0
44 lng = int2bin(dfl)
60 #lng = int2bin(dfl)
61 lng = int2str(dfl)
45 msg = "jro" + "abs" + "src" + "cm1" + lng + "cmd" + data + "crc" #
62 msg = "jro" + "abs" + "src" + "cm1" + lng + "cmd" + data + "crc" #
46 print len(msg)
63 print len(msg)
47 print msg
64 print msg
48
65
49 lmsg = len(msg)
66 lmsg = len(msg)
50 lng = int2bin(lmsg)
67 #lng = int2bin(lmsg)
68 lng = int2str(lmsg)
51
69
52 msg = "jro" + "abs" + "src" + "cm1" + lng + "cmd" + data + "crc" #
70 msg = "jro" + "abs" + "src" + "cm1" + lng + "cmd" + data + "crc" #
53 print len(msg)
71 print len(msg)
54 print msg
72 #print msg
55
73
56 total_len = len(msg) + 3
57
74
58 s.send(mensaje)
75 s.send(msg)
59 #recibido = s.recv(512)
76 #recibido = s.recv(512)
60
77
61 print recibido
78 #print recibido
62
79
63 s.close()
80 s.close()
64
81
65
82
66 # delay = time.time() - ini1
83 # delay = time.time() - ini1
67 # sum += delay
84 # sum += delay
68 # print delay
85 # print delay
69 # time.sleep(0.1)
86 # time.sleep(0.1)
70
87
71 #print sum
88 #print sum
72
89
73
90
74
91
75 No newline at end of file
92
@@ -1,40 +1,40
1 import socket
1 import socket
2 import time
2 import time
3
3
4 host = "192.168.1.117"
4 host = "192.168.1.117"
5 s = socket.socket()
5 s = socket.socket()
6 s.bind((host, 5500))
6 s.bind((host, 5500))
7
7
8 while True:
8 while True:
9 print "waiting client..."
9 print "waiting client..."
10 s.listen(1)
10 s.listen(1)
11
11
12 sc, addr = s.accept()
12 sc, addr = s.accept()
13
13
14 all = ""
14 all = ""
15 # while True:
15
16 # recibido = sc.recv(1024)
16 # i=0 #to avoid infinit loop
17 # all = all + recibido
18 # if all[-4:] == "quit":
19 # break
20 cnt = 0;
17 cnt = 0;
18 first = 0;
21 while True:
19 while True:
22 recibido = sc.recv(1024)
20 recibido = sc.recv(1024)
23 if len(recibido) == 1024:
21 all = all + recibido
24 all = all + recibido
22 cnt = len(all)
25 else:
23 if first == 0:
26 all = recibido
24 first = 1;
27
25 lng = int(all[12:18]) # 6 bytes to get the frame size
28 cnt = cnt + len(all)
26
29 if cnt == 1024:
27 # i = i + 1
28 # if cnt == lng or i == 30:
29 if cnt == lng:
30 break
30 break
31
31
32
32
33
33
34 print "\nTotal:", all
34 print "\nSize of frame:" + str(lng)
35 print "\nLongitud:", len(all)
35 print "\nNumber of bytes received:" + str(cnt)
36
36
37 sc.close()
37 sc.close()
38 s.close()
38 s.close()
39
39
40 #print len(recibido) No newline at end of file
40 #print len(recibido)
General Comments 0
You need to be logged in to leave comments. Login now