--|proxy|--|mux|--|demux|--|proxy|-- -- -- -- machineA satellite link machineB
172.16.1.224 172.16.1.218
问候,
我已按上述设置。我正在尝试创建'mux'。基本上,它从代理读取流量并将其拆分以通过4线传输。 'demux'读取4条线路并将流量转发到代理。
我在Perl中有一个基本的客户端/服务器设置。但我不知道如何从代理到'mux'获得流量?
这是我的代码:
server.pl - 在172.16.1.218上运行
use IO::Socket;
$| = 1;
$socket = new IO::Socket::INET (
LocalHost => '172.16.1.218',
LocalPort => '5000',
Proto => 'tcp',
Listen => 5,
Reuse => 1
);
die "Coudn't open socket" unless $socket;
print "\nTCPServer Waiting for client on port 5000";
while(1)
{
$client_socket = "";
$client_socket = $socket->accept();
$peer_address = $client_socket->peerhost();
$peer_port = $client_socket->peerport();
#print "\n I got a connection from ( $peer_address , $peer_port ) ";
while (1){
$send_data = <STDIN>;
$client_socket->send($send_data);
$client_socket->recv($recieved_data,10);
print $recieved_data;#."\n";
#$client_socket->autoflush();
}
}
和
client.pl
use IO::Socket;
$socket = new IO::Socket::INET (
PeerAddr => '172.16.1.224',
PeerPort => 5000,
Proto => 'tcp',
)
or die "Couldn't connect to Server\n";
while (1) {
$socket->recv($recv_data,10);
print $recv_data."\n";
$send_data = <STDIN>;
$socket->send($send_data);
}
我只是有点卡住了,不胜感激。
非常感谢,
答案 0 :(得分:2)
这似乎是一个典型的聊天服务器,因此我建议您在Google上搜索“perl聊天服务器”。这里有一些可以提供帮助的源代码: