##// END OF EJS Templates
Multicast scripts...
Fiorella Quino -
r193:f81af9a7bdfb
parent child
Show More
@@ -0,0 +1,55
1 """
2 This script should run in the absmodule.
3 """
4 import socket
5 import struct
6 import sys
7
8 multicast_group = '224.3.29.71'
9 server_address = ('',10000)
10
11 mod = ('192.168.1.63', 5500) #This IP should be modificated according to its absmodule
12 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
13 s.connect(mod)
14
15 # Create the socket
16 sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
17
18 # Bind to the server address
19 sock.bind(server_address)
20
21 #Tell the operating system to add the socket to the multicast group
22 #on all interfaces.
23 group = socket.inet_aton(multicast_group)
24 mreq = struct.pack('4sL', group, socket.INADDR_ANY)
25 sock.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq)
26 #Receive/respond loop
27
28 while True:
29
30 print >>sys.stderr, '\nwaiting to receive message'
31 data, address = sock.recvfrom(1024)
32 if data != '':
33 message = data
34 #try:
35 s.sendto(message,mod)
36 rx_text = s.recv(1024)
37 s.close()
38 s = None
39 print >>sys.stderr, 'Respond from TCP server: %s' % rx_text
40 try:
41 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
42 s.connect(mod)
43 except:
44 print '\nProblem with creating socket repeater!!...\n'
45 s.close()
46 s = None
47 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
48 s.connect(mod)
49 break
50
51 print >>sys.stderr, 'received %s bytes from %s' % (len(data), address)
52 print >>sys.stderr, data
53
54 #print >>sys.stderr, 'sending acknowledgement to', address
55 #sock.sendto('ack', address)break
@@ -0,0 +1,19
1 """
2 This script should run in SIR. It creates a multicast server.
3 This server connects SIR client to a absmodule socket. SIR client socket sends SIR data to multicast server. This server sends the data to a
4 absmodule socket repeater that re-sends the configuration to Tcp Control Module (C server running in absmodule).
5 """
6
7 import socket
8 import struct
9 import sys
10
11 #-------Socket Server----------
12 sock_server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
13 sock_server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
14 sock_server.bind(('',4242))
15 mreq = struct.pack("=4sl", socket.inet_aton("224.3.29.71"),socket.INADDR_ANY)
16 sock_server.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq)
17
18 while True:
19 print sock_server.recv(1024)
General Comments 0
You need to be logged in to leave comments. Login now