예제 #1
0
    def __thread_client(local_ip_address, local_port, remote_ip_address, remote_port, message_count):
        socket = TcpSocket()
        socket.bind(local_ip_address, local_port)

        print(f"Client TCP Echo: opening connection to {remote_ip_address}, port {remote_port}")
        if socket.connect(remote_ip_address=remote_ip_address, remote_port=remote_port):
            print(f"Client TCP Echo: Connection to {remote_ip_address}, port {remote_port} has been established")
        else:
            print(f"Client TCP Echo: Connection to {remote_ip_address}, port {remote_port} failed")
            return

        i = 1
        while i <= message_count:
            message = bytes(str(datetime.now()) + "\n", "utf-8")
            # message = bytes("***START***" + "1234567890" * 1000 + "***STOP***", "utf-8")
            if socket.send(message):
                print(f"Client TCP Echo: Sent data to {remote_ip_address}, port {remote_port} - {message}")
                time.sleep(1)
                i += 1
            else:
                print(f"Client TCP Echo: Peer {remote_ip_address}, port {remote_port} closed connection")
                break

        socket.close()
        print(f"Client TCP Echo: Closed connection to {remote_ip_address}, port {remote_port}")
예제 #2
0
class RemoteControl:
    def __init__(self, *addr_port):
        self.addr_port = addr_port
        self.gqrx_control = TcpSocket()

    def set_controls(
        self,
        command,
        parameter,
    ):
        return self.gqrx_control.connect(f'{command} {parameter}e6',
                                         *self.addr_port)

    def get_status(self, command):
        return self.gqrx_control.connect(f'{command}', *self.addr_port)
예제 #3
0
 def __init__(self, *addr_port):
     self.addr_port = addr_port
     self.gqrx_control = TcpSocket()
예제 #4
0
파일: receiver.py 프로젝트: jamiis/tcp
from argz import parse
import socket
from tcp_socket import TcpSocket

# parse command line arguments
arg = parse(is_receiver=True)

# create a new tcp socket
sock = TcpSocket(
    remote = [arg.remote_ip, arg.remote_port],
    port   = arg.listening_port,
    log    = arg.log_filename,
)

# receive data on socket
data = sock.recv()
# once data is done trasferring, write it to a file
open(arg.filename, 'w').write(data)
예제 #5
0
파일: sender.py 프로젝트: jamiis/tcp
import socket
from argz import parse
from tcp_socket import TcpSocket

# parse command line arguments
arg = parse(is_receiver=False)

# load data from file into python
try:
    data = open(arg.filename).read()
except IOError as err:
    print("I/O error: {0}".format(err))
    raise

# create a new tcp socket
sock = TcpSocket(
    remote = [arg.remote_ip, arg.remote_port],
    port   = arg.ack_port,
    log    = arg.log_filename,
    window = arg.window_size,
)
# send data over tcp socket
sock.sendall(data)