一个基于Udp协议的简单的Client<=>Server程序。
时间:2006-01-07 来源:robotspiders
程序在win2000中测试通过.
Perl版本:ActiveState ActivePerl 5.6
Author: robotspiders
Mail: [email protected]
Os: windows2000
Server:
use strict;
use warnings; #############module############
use Socket;
use IO::Handle;
#############module############
#服务端的端口
my $port = 8000;
#服务端的ip地址
my $ip = 192.168.0.249;
#建立socketaddr_in类型的数据结构
my $server_ip_port = sockaddr_in($port,$ip);
#建立套接字
socket(SERVER,PF_INET,SOCK_DGRAM,getprotobyname('udp'));
#进行连接
bind(SERVER,$server_ip_port); my $buffer;
my $client;
while(1){
$client=recv(SERVER,$buffer,100,0);
#$buffer=chomp($buffer);
print " ...接受到的数据是: $buffer";
print"输入数据: ";
$buffer=<STDIN>;
send(SERVER,$buffer,0,$client);
}
Client: #客户端程序udp协议
use strict;
use warnings; #import Socket libary;
use Socket;
my $port=8000;
my $host='192.168.0.249';
my $packhost=inet_aton($host);
my $severaddress=sockaddr_in($port,$packhost);
my $proto=getprotobyname('udp');
my $data;
socket(CLIENT,PF_INET,SOCK_DGRAM,$proto);
while(1){
print"输入数据: ";
$data = <STDIN>;
send(CLIENT,$data,0,$severaddress);
print" ...要发送的数据是: $data ";
recv(CLIENT,$data,100,0);
print" ...接受到的的数据是: $data ";
}
use warnings; #############module############
use Socket;
use IO::Handle;
#############module############
#服务端的端口
my $port = 8000;
#服务端的ip地址
my $ip = 192.168.0.249;
#建立socketaddr_in类型的数据结构
my $server_ip_port = sockaddr_in($port,$ip);
#建立套接字
socket(SERVER,PF_INET,SOCK_DGRAM,getprotobyname('udp'));
#进行连接
bind(SERVER,$server_ip_port); my $buffer;
my $client;
while(1){
$client=recv(SERVER,$buffer,100,0);
#$buffer=chomp($buffer);
print " ...接受到的数据是: $buffer";
print"输入数据: ";
$buffer=<STDIN>;
send(SERVER,$buffer,0,$client);
}
Client: #客户端程序udp协议
use strict;
use warnings; #import Socket libary;
use Socket;
my $port=8000;
my $host='192.168.0.249';
my $packhost=inet_aton($host);
my $severaddress=sockaddr_in($port,$packhost);
my $proto=getprotobyname('udp');
my $data;
socket(CLIENT,PF_INET,SOCK_DGRAM,$proto);
while(1){
print"输入数据: ";
$data = <STDIN>;
send(CLIENT,$data,0,$severaddress);
print" ...要发送的数据是: $data ";
recv(CLIENT,$data,100,0);
print" ...接受到的的数据是: $data ";
}
相关阅读 更多 +
排行榜 更多 +