summary: solaris network port response time

From: Carl Ma <zhu_junca_at_yahoo.ca>
Date: Sun Jul 20 2008 - 11:40:07 EDT
Hi,

Thanks for the responses from following people.
Andrew Brennan
John.Hallman
Ddelija
JayJay Florendo
Sengor

Andrew suggested port mapping and scapy.py, which doesn9t apply  in our
enviornment.
John Hallman suggested IO::Socket module using Perl script, based on which I
added time::HiRes fuction, it ends up below perl script.
Ddelija also suggested switch port mapping, which I can9t implement in our
environment.
Jay jay advise the 3time <transaction command>2 to count the round trip
time. As this program forks lots of processes, port connection is one of the
components. I can9t use this.
Sengor suggested sending snoop output to another host running
Ethereal/Wireshark. It is doable although extra management approval is
needed.:-)

I would suggest chaoreader, which is a well written perl script. It can
parse snoop/tcpdump output and create a html file with all kinds of
statistics.

So far, I am using the below script for a quick snap of port response and
waiting Sun to release new tcp provider.:-)

Thanks,

carl


#!/usr/bin/perl
use strict;
use IO::Socket;
use Time::HiRes qw( gettimeofday );
#
my ($socket, $start, $after, $delta, $status);
my @services = (
[ 'destination.net', 'IP', 'port' ],
);
#
for my $i ( 0 .. $#services ) {
  $status .= "Port ".$services[$i][2]." on ".$services[$i][0]." is ";
  $start = gettimeofday();
  $socket =
    IO::Socket::INET->new( PeerAddr => $services[$i][1],
                           PeerPort => $services[$i][2],
                           Proto    => 'tcp',
               Timeout  => 2,
                           Type     => SOCK_STREAM);

  if ($socket) {
   $after = gettimeofday();
   $delta = ($after - $start);
   $status .= "UP, port connection time is $delta ";
   close($socket);
  }

  else {
   $status .= "DOWN";
  }
   $status .= "\n";
}
Print $status
exit;

--original question--
On Mon, 30 Jun 2008, Jun Zhu wrote:

> Hello folks,
>
> I am looking for a way to monitor the network response time from local
> server(solaris 10 release  08/07) to a particular application port on
remote
> machine, which I don't have access to and it could be a host or network
> device.
>
> As this is a production server, I can't install extra utilities. So nmap or
> ethereal is out of scope. The dtrace script - tcpsnoop doesn't work on the
> latest solaris release because of  the incompatible fbt provider.
>
> I am planning to use a script to parse snoop output. By calculating the
> timestamp difference in "ether header",  it should be able to show response
> time of remote port.
>
> Someone may have this done already and could you please share some ideas?
>
> Thanks& have a good day,
>
> carl
_______________________________________________
sunmanagers mailing list
sunmanagers@sunmanagers.org
http://www.sunmanagers.org/mailman/listinfo/sunmanagers
Received on Sun Jul 20 11:42:25 2008

This archive was generated by hypermail 2.1.8 : Thu Mar 03 2016 - 06:44:11 EST