Please login or register. December 18, 2017, 05:13:57 AM

Author Topic: ATTCP - AIX Test TCP program  (Read 5229 times)

0 Members and 1 Guest are viewing this topic.

Michael

  • Administrator
  • Hero Member
  • *****
  • Posts: 1056
  • Karma: +0/-0
ATTCP - AIX Test TCP program
« on: May 26, 2014, 09:29:28 PM »
Q. What is ATTCP?

A. Another TCP Tester

Quick link: latest version is: aixtools.attcp.0.6.6.0.I
Wiki page: http://www.aixtools.net/index.php/attcp

ATTCP is a network exerciser and, especially, bandwidth measurement tool developed specifically for AIX (perhaps ATTCP also stands for AIX TTCP  ;) and testing high-speed networks - e.g., 10GBit and faster.

Please post comments, feedback, requests, etc.. for ATTCP in this thread!

update: new version 14 April 2017
« Last Edit: April 19, 2017, 09:44:31 AM by Michael »

hepdz

  • New Member
  • *
  • Posts: 4
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #1 on: January 16, 2016, 09:56:25 AM »
Dear

I download the attcp soft and  follow the installntion step for attcp soft,but when I execute the lslpp command,the result as follow:

# lslpp -l aixtools.attcp.rte
  Fileset                      Level  State      Description         
  ----------------------------------------------------------------------------
Path: /usr/lib/objrepos
  aixtools.attcp.rte         0.6.4.0  COMMITTED  1550 1214 1751

is different to your as bellow:
root@inlp02:[/home/root]lslpp -L aixtools.attcp.rte
  Fileset                      Level  State  Type  Description (Uninstaller)
  ----------------------------------------------------------------------------
  aixtools.attcp.rte         0.6.1.0    C     F    attcp 0.6.1.0 2014.May.26
                                                   13.27 CUT

i think the attcp soft can not to use,could you help to send attcp soft to me? thx...

Michael

  • Administrator
  • Hero Member
  • *****
  • Posts: 1056
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #2 on: January 16, 2016, 01:18:37 PM »
Hi, Thanks for your interest. Helps me focus on where to improve.

The wiki page: http://www.aixtools.net/index.php/attcp

has 0.6.4.0 as the latest version, so your lslpp output is correct.

Code: [Select]
2404F3ABCCB8B11BCFBD876DC1673A3D aixtools.attcp.0.6.4.0.aix537.I
Short history of versions:
Code: [Select]
michael@x071:[/data/aixtools/tools]ls -l *attcp*
-rwxrwxr-- 2 michael httpd 45568 Dec  4  2013 aixtools.attcp.0.5.1.0.I
-rwxrwxr-- 2 michael httpd 48640 Dec  9  2013 aixtools.attcp.0.5.2.0.I
-rw-r--r-- 2 michael httpd 50176 May 23  2014 aixtools.attcp.0.6.0.0.I
-rw-r--r-- 2 michael httpd 48128 May 26  2014 aixtools.attcp.0.6.1.0.I
-rw-r--r-- 1 michael httpd 48128 Jun  3  2014 aixtools.attcp.0.6.2.0.I
-rw-r--r-- 1 michael httpd 45056 Dec 14 17:51 aixtools.attcp.0.6.4.0.aix537.I

FYI the 'Description' the AIX builddate (1550 == 2015 week 50); followed by Date: 1214 == December 14, and the time 1751 is 5:51pm, or 17:51.

As too many people 'did not like that' I am changing it in newer packages.

hepdz

  • New Member
  • *
  • Posts: 4
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #3 on: January 17, 2016, 08:23:01 AM »
hi,thanks for your kindly reply,but I can't execute the command and report errno=79,the detail information as bellow:
# lslpp -l aixtools.attcp.rte
  Fileset                      Level  State      Description         
  ----------------------------------------------------------------------------
Path: /usr/lib/objrepos
  aixtools.attcp.rte         0.6.4.0  COMMITTED  1550 1214 1751
# lslpp -l|grep attcp
  aixtools.attcp.man.en_US   0.6.4.0  COMMITTED  man pages
  aixtools.attcp.rte         0.6.4.0  COMMITTED  1550 1214 1751
  aixtools.attcp.share       0.6.4.0  COMMITTED  universal pages
#
#
# speedto
ksh: speedto:  not found.
# /opt/bin/speedto
/opt/bin/speedto: performing a 10 second write
Usage: attcp -x [-options] [-h] host ## transmit (xmit)
       attcp -r [-options] [-c host] ## read from network
Common options:
        -x      source a pattern to network
        -r      read as datasink (discard) all data from network
        -c host "collect call": initiate connection with host then receive data
        -h host set hostname to connect with
        -l ##   length of bufs read from or written to network (default 8192)
        -n ##   number of source bufs written to network (default 20480, or 20k)
        -i ##   "interval": number of seconds to run the test: rather than # of buffers (see -n)
                using defaults only - 20k * 8k (or 160M) bytes is transferred per thread
        -t ##   number of threads (default is 1)
        -p ##   port number to send to or listen at (default 49149)
        -u      use UDP instead of TCP
        -d      don't buffer TCP writes (sets TCP_NODELAY socket option)
        -D      set SO_DEBUG socket option
        -s ##   set socket buffer size (if supported)
        -f X    format for rate: b,B = {bit,byte}; k,K = kilo{bit,byte};
                m,M = mega; g,G = giga; r,R = raw {bit,byte}
        -q      "quiet": only print the measured throughput, emit no other chatty output.
        -v[vvv] verbose: print more statistics
Options specific to -r:
        -B      process full blocks as specified by -l (concate reads until "blocksize" is reached
        -T      "touch": access each byte as it's read
# /opt/bin/speedto localhost
/opt/bin/speedto: performing a 10 second write
attcp-t: connect: Connection refused
errno=79

# /opt/bin/speedto localhost -v
/opt/bin/speedto: performing a 10 second write
attcp-t: connect: Connection refused
errno=79

Michael

  • Administrator
  • Hero Member
  • *****
  • Posts: 1056
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #4 on: January 17, 2016, 11:45:57 AM »
Thanks for reporting this 'packaging' bug.

A easy way to check is to look in /etc/services, e.g.,

Code: [Select]
root@x069:[/mnt/tools]tail /etc/services
com-bardac-dw   48556/udp               # com-bardac-dw
#                               48557-48618             # Unassigned
iqobject                48619/tcp               # iqobject
iqobject                48619/udp               # iqobject
#                               48620-49150             # Unassigned
#                               49151                   # IANA Reserved
sco_printer             70000/tcp       sco_spooler     # For System V print IPC
sco_s5_port             70001/tcp       lpNet_s5_port   # For future use
ipsec_sk_master         1011/udp       
ipsec_sk_engine_s               4001/udp 
     

I know something is missing - namely the service names I use, as well as an entry in /etc/inetd.conf

The command is supposed to run automatically when it is installed, but it seems to be missing. I shall repackage asap - but here is the script - so you can run in asap:
Code: [Select]
#!/usr/bin/ksh
# install services into /etc/services and /etc/inetd.conf
# Copyright Michael Felt and AIXTOOLS, 2013-2016

# $Date: 2016-01-17 11:44:03 +0000 (Sun, 17 Jan 2016) $
# $Revision: 178 $
# $Author: michael $
# $Id: ttcp_inetd.ksh 178 2016-01-17 11:44:03Z michael $

grep 49149 /etc/services
if [[ $? -ne 0 ]]
then
        echo "ttcp     49149/tcp # ttcp port holder" >>/etc/services
        echo "ttcp     49149/udp # ttcp port holder" >>/etc/services
fi

grep 49150 /etc/services
if [[ $? -ne 0 ]]
then
        echo "ttcpr     49150/tcp # ttcp_reader or sink" >>/etc/services
        echo "ttcpr     49150/udp # ttcp_reader or sink" >>/etc/services
        echo "ttcpr     stream  tcp    nowait  nobody    /opt/bin/ttcpr     ttcpr" >>/etc/inetd.conf
fi

grep 49151 /etc/services
if [[ $? -ne 0 ]]
then
        echo "ttcps     49151/tcp # ttcp_sender faucet" >>/etc/services
        echo "ttcps     49151/udp # ttcp_sender faucet" >>/etc/services
        echo "ttcps     stream  tcp    nowait  nobody    /opt/bin/ttcps     ttcps" >>/etc/inetd.conf
fi
refresh -s inetd

And, I know to source of the problem - my first attempt to use autotools to manage the build process.

Michael

  • Administrator
  • Hero Member
  • *****
  • Posts: 1056
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #5 on: January 17, 2016, 09:37:56 PM »
Repackaged as version 0.6.4.1 with the update to /etc/services and /etc/inetd.conf automated (also removed when uninstalled).

CHANGED the port numbers used to be both an unassigned number and below (tcp|udp)_ephemeral_low

See http://www.aixtools.net/index.php/attcp and/or http://download.aixtools.net/performance/aixtools.attcp.0.6.4.1.aix537.I

Michael

  • Administrator
  • Hero Member
  • *****
  • Posts: 1056
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #6 on: April 14, 2017, 02:39:57 PM »
Made several updates this last week - at a customer who wanted to test their network throughput - so I was motivated.

The major changes: clean up the messages - but especially, better messages to syslog.

Syslog messages are now sent to "uucp.info" with ".info" being the standard messages. A few messages may also go to the .debug flow, but, for now, only .info is being used. Note: I choose uucp as that seems to be unused these days (and I am already logging httpd messages on user.* and mail.*, auth.*, daemon.* are also actively used by other applications.


michael@x071.home.local:[/data/prj/aixtools/attcp/attcp-0.6.5]tail -f /var/log/syslog/uucp.log &
Apr 14 14:37:12 x071 uucp:info attcp[13172868]: tcp=>localhost.32765 TIMED: buflen=8192, time=10 sec
Apr 14 14:37:22 x071 uucp:info attcp[13172868]:   573.70       5737    10.00   21.3     734341     8192    0.01   73433.8

michael@x071.home.local:[/data/prj/aixtools/attcp/attcp-0.6.5]speedto localhost
573.70 MB


hepdz

  • New Member
  • *
  • Posts: 4
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #7 on: April 16, 2017, 09:58:41 AM »
hi,
thx for your kindly reply,but I can't download the new version aixtools.attcp.0.6.5.0.I, could you give me the download link,thx...

Michael

  • Administrator
  • Hero Member
  • *****
  • Posts: 1056
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #8 on: April 16, 2017, 03:06:48 PM »
Thanks for the message. Link is working now (my mistake).

hepdz

  • New Member
  • *
  • Posts: 4
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #9 on: April 18, 2017, 05:47:45 AM »
hi,the same problem as bellow:

# /opt/bin/speedto localhost
err:attcp-t: connect: Connection refused
errno=79
# lslpp -l |grep attcp
  aixtools.attcp.man.en_US   0.6.5.0  COMMITTED  aixtools attcp man pages
  aixtools.attcp.rte         0.6.5.0  COMMITTED  aixtools attcp 14-Apr-2017
  aixtools.attcp.share       0.6.5.0  COMMITTED  aixtools attcp universal files

Michael

  • Administrator
  • Hero Member
  • *****
  • Posts: 1056
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #10 on: April 18, 2017, 02:55:31 PM »
If you ever used attcp before - you may have some old port numbers in your /etc/services.
If you do, the easiest resolution will be to uninstall attcp, and then remove all the ttcp lines you find in /etc/services.

FYI: the old port numbers were 55000, 55001 and 55002 (iirc). ttcp (from 1980's) used port # 5500, and I just added a digit - originally, as port 5500 is now officially assigned to something else by IANA.

Some 'debug' info:

Code: [Select]
michael@x071.home.local:[/home/michael]grep ttcp /etc/services /etc/inetd.con>
/etc/services:ttcpr     32765/tcp # ttcp_reader or sink
/etc/services:ttcpr     32765/udp # ttcp_reader or sink
/etc/services:ttcps     32766/tcp # ttcp_sender faucet
/etc/services:ttcps     32766/udp # ttcp_sender faucet
/etc/services:ttcp      32767/tcp # ttcp port holder
/etc/services:ttcp      32767/udp # ttcp port holder
/etc/inetd.conf:ttcpr     stream  tcp    nowait  nobody    /opt/bin/ttcpr     ttcpr
/etc/inetd.conf:ttcps     stream  tcp    nowait  nobody    /opt/bin/ttcps     ttcps
/opt/bin/speedto:/opt/bin/attcp -p 32765 -f M -x -i 10 -h $*
michael@x071.home.local:[/home/michael]lssrc -s inetd -l | grep ttcp
michael@x071.home.local:[/home/michael]lssrc -s inetd -l
0513-019 System Resource Controller requires that you be running as
root or be part of the group system for local requests.
michael@x071.home.local:[/home/michael]su
root's Password:
michael@x071.home.local:[/home/michael]lssrc -s inetd -l | grep ttcp
 ttcps        /opt/bin/ttcps           ttcps                    active
 ttcpr        /opt/bin/ttcpr           ttcpr                    active
michael@x071.home.local:[/home/michael]

p.s. I am debugging version 0.6.6 which will have 'multi-threaded' connections - to help saturate the line.

Michael

  • Administrator
  • Hero Member
  • *****
  • Posts: 1056
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #11 on: April 18, 2017, 07:27:14 PM »
The version 0.6.6 is almost ready: e.g., 16 threads:

Code: [Select]
michael@x071.home.local:[/home/michael]netstat -t | grep ttcp
Active Internet connections
Proto Recv-Q Send-Q  Local Address          Foreign Address        (state)
tcp4       0  11973  x071.39629             x064.ttcpr             ESTABLISHED
tcp4       0  10286  x071.39630             x064.ttcpr             ESTABLISHED
tcp4       0  17518  x071.39631             x064.ttcpr             ESTABLISHED
tcp4       0      0  x071.39632             x064.ttcpr             ESTABLISHED
tcp4       0  14230  x071.39633             x064.ttcpr             ESTABLISHED
tcp4       0  15898  x071.39634             x064.ttcpr             ESTABLISHED
tcp4       0      0  x071.39635             x064.ttcpr             ESTABLISHED
tcp4       0  46073  x071.39636             x064.ttcpr             ESTABLISHED
tcp4       0  18009  x071.39637             x064.ttcpr             ESTABLISHED
tcp4       0  44447  x071.39638             x064.ttcpr             ESTABLISHED
tcp4       0   4769  x071.39639             x064.ttcpr             ESTABLISHED
tcp4       0   4261  x071.39640             x064.ttcpr             ESTABLISHED
tcp4       0  65535  x071.39641             x064.ttcpr             ESTABLISHED
tcp4       0  61807  x071.39642             x064.ttcpr             ESTABLISHED
tcp4       0      0  x071.39643             x064.ttcpr             ESTABLISHED
tcp4       0   2760  x071.39644             x064.ttcpr             ESTABLISHED


p.s. I cheated, a bit, to get the header columns inserted

Michael

  • Administrator
  • Hero Member
  • *****
  • Posts: 1056
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #12 on: April 19, 2017, 09:31:51 AM »
Version 0.6.6 is ready for some test drives.

Note the rather "simple" calculation of busy% - just like time, the physc total is of all processors, while busy% is (physc / real_time) * 100%

Code: [Select]
root@x065:[/data/prj/aixtools/attcp/attcp-0.6.6]time speedfrom x072 -t4 -v
ATTCP Summary
  MB/Sec      MByte  seconds    physc  %busy      Calls   B/call ms/call  call/sec
========   ========  =======  =======  =====  =========   ====== =======  ========
  817.85       8178    10.00    12.61  126.1    1056433     8117    0.01  105641.7

real    0m10.04s
user    0m2.88s
sys     0m9.73s
root@x065:[/data/prj/aixtools/attcp/attcp-0.6.6]

Test Run on something faster than POWER6 - looks nicer!

Code: [Select]
# /opt/bin/speedfrom localhost -t1 -v -b 64k
ATTCP Summary
  MB/Sec      MByte  seconds    physc  %busy      Calls   B/call ms/call  call/sec
========   ========  =======  =======  =====  =========   ====== =======  ========
 6989.38       8192     1.17     0.65   55.7     131222    65461    0.01  111958.1

{D-ca-aix1:root}/ # /opt/bin/speedfrom localhost -t4 -v -b 64k
ATTCP Summary
  MB/Sec      MByte  seconds    physc  %busy      Calls   B/call ms/call  call/sec
========   ========  =======  =======  =====  =========   ====== =======  ========
14673.03      32768     2.23     2.14   95.7     536184    64082    0.00  240093.9

« Last Edit: April 19, 2017, 12:56:57 PM by Michael »

Michael

  • Administrator
  • Hero Member
  • *****
  • Posts: 1056
  • Karma: +0/-0
Re: ATTCP - AIX Test TCP program
« Reply #13 on: April 19, 2017, 02:20:40 PM »
hi,the same problem as bellow:

# /opt/bin/speedto localhost
err:attcp-t: connect: Connection refused
errno=79
# lslpp -l |grep attcp
  aixtools.attcp.man.en_US   0.6.5.0  COMMITTED  aixtools attcp man pages
  aixtools.attcp.rte         0.6.5.0  COMMITTED  aixtools attcp 14-Apr-2017
  aixtools.attcp.share       0.6.5.0  COMMITTED  aixtools attcp universal files

My previous answer was not correct - the packaging for version 0.6.5 was missing the scripts to insert the lines needed in /etc/services and /etc/inetd.conf.

attcp-0.6.6 with MD5 1E92D34C38F52442023EF4FCF8FFE72E has the scripts (note: I had a previous package with a different MD5 value that was also missing the scripts).