use strict; use warnings; use IO::Socket::INET; my $addr = '127.0.0.1'; my $port = 43600; my $data = {}; while (1) {   my $port_request = IO::Socket::INET->new( PeerAddr => $addr                                           , PeerPort => $port                                           , Proto    => 'tcp'                                           , Type     => SOCK_STREAM                                           ) or die "can't connect to $addr:$port";   print $port_request "1\n";   my $new_port = <$port_request>;   close $port_request;   print $new_port; # just a info for tests   chomp $new_port;   my $new_client = IO::Socket::INET->new( PeerAddr => $addr                                         , PeerPort => $new_port                                         , Proto    => "tcp"                                         , Type     => SOCK_STREAM                                         ) or die "can't connect to $addr:$port";   print $new_client "1\n";   close $new_client;   sleep(1); }