Using TOP with NonStop TCP/IP
TOP is a great GUI for just about everything you need to do on your NonStop system. One of the most helpful features is the ability to easily look at data communications information, especially as it pertains to CLIM IP, or “CIP”.
Let’s suppose that you want to see who is using TCP/IP on your NonStop system, and what programs are listening for incoming connections on a particular IP address, and which IP ports they’re using. Seems simple, right? But even if you do this on a frequent basis and can recall all of the SCF commands involved, it can be a tedious and time-consuming task:
It is easy using TOP
Sign on to TOP and select your system. The system’s components appear in a familiar, Windows-Explorer-style interface.
Navigate to “Comms”, “TCP/IP”, “IP CIP”
TOP now shows the available IP CLIMs. Select one and click on its “Interfaces”. You now see the CLIM’s interface information, including which providers are using them and which IP addresses are being served:
Now click on “Providers”. Top shows information on all the providers:
Next, right-click on a provider and select “Sockets” from the pull-down menu. TOP provides information for all of the current active sockets for that provider:
Sort it however you want by clicking on a column heading. For example, by Foreign IP Address, to see who has an active session:
Total time to do this with TOP: about 1 minute, and you don’t need to know any command syntax. Information from the TOP display can also be easily copied and pasted into your favorite spreadsheet. It’s EASY!
Doing it the long way using SCF
Now, the tedious way to do the same thing using SCF:
TACL> SCF
1-> assume process $ZZCIP
2-> status clim *
CIP Status CLIM
Name Config State Trace
NCLIM000 Yes STARTED OFF
NCLIM001 Yes STARTED OFF
SCLIM000 Yes STARTED OFF
SCLIM001 Yes STARTED OFF
SCLIM002 Yes STARTED OFF
Note that the command returns both IP CLIMs and Storage CLIMs. So, pick an IP CLIM and look at the detailed status. There’s a LOT of information:
3-> status clim NCLIM000, detail
CIP Detailed Status CLIM \PAPEX.$ZZCIP.NCLIM000
Mode...................... IP
Multiprov................. ON
CLIM HW Config Status..... Configured
State..................... STARTED
Trace Status.............. OFF
Last Restart Time......... 11 Oct 2018, 13:58:22.000
CLIM Hostname............. NCLIM000
CIP SW Version............ T0853L03_01AUG2018_28AUG2018_DBF
Network SW Version........ T0691L03_01AUG2018_DBF_CLIM_G24
Storage SW Version........ T0830L03_01AUG2018_21AUG2018_DBF
Number of Socket Servers.. 1
Linux Version:
Linux 3.16.56-clim-4-amd64 #1 SMP Debian 3.16.56-clim-4 (2018-07-19)
Fabric Status:
CIPMON Mgmt Data
ZCM00 XY-1 XY-1
ZCM01 XY-1 XY-1
ZCM02 XY-1 XY-1
ZCM03 XY-1 XY-1
CLIM Maintenance Interface Status & IP Addresses:
lo Sts:UP Lkp:-- IPv4: 127.0.0.1
IPv6: ::1
eth0 Sts:UP Lkp:UP IPv4: 154.78.41.0
IPv6: fe80::32e1:71ff:fe6a:6e90
Maintenance Provider Interface Status & IP Addresses:
lo Sts:UP Lkp:-- IPv4: 127.0.0.1
IPv6: ::1
eth0:0 Sts:UP Lkp:UP IPv4: 154.78.43.9
Data Provider ZB018 Interface Status & IP Addresses:
Flg Name Status LkP Master / IP Family & Address
lo UP --
v4: 127.0.0.2
IPv4: 127.0.0.1
IPv6: ::1
eth1 UP UP
IPv4: 43.4.5.243
IPv6: fe80::32e1:71ff:fe6a:6e91
Data Provider ZB02D Interface Status & IP Addresses:
Flg Name Status LkP Master / IP Family & Address
lo UP --
IPv4: 127.0.0.2
IPv4: 127.0.0.1
IPv6: ::1
eth2 UP UP
IPv4: 43.4.5.254
IPv6: fe80::32e1:71ff:fe6a:6e92
Data Provider ZB03C Interface Status & IP Addresses:
Flg Name Status LkP Master / IP Family & Address
lo UP --
IPv4: 127.0.0.2
IPv4: 127.0.0.1
IPv6: ::1
eth3 UP UP
IPv4: 43.4.5.222
IPv6: fe80::32e1:71ff:fe6a:6e93
Data Provider ZTC0 Interface Status & IP Addresses:
Flg Name Status LkP Master / IP Family & Address
lo UP --
IPv4: 127.0.0.2
IPv4: 127.0.0.1
IPv6: ::1
Interface Failover Configuration and Status:
Flg Name Failover/(Assoc) Fovr Current Provider
NCLIM000.eth3 -- NCLIM000.eth3 ZB03C
NCLIM000.eth1 -- NCLIM000.eth1 ZB018
NCLIM000.eth2 -- NCLIM000.eth2 ZB02D
Now you have the information needed to find out which IP addresses are associated with which interface on that CLIM. But who is using those addresses?
Next, find all of the CIPSAM processes – These are called “Providers” in CIP, and are the processes that your program accesses when it wants a connection. Each provider is associated with one or more CLIMs, and there may be more than one provider for a given CLIM:
4-> status provider *
CIP Status PROVIDER
Name Status TPStatus Trace
ZB018 STARTED Started OFF
ZB01C STARTED Started OFF
ZB02D STARTED Started OFF
ZB02E STARTED Started OFF
ZB03C STARTED Started OFF
ZB03D STARTED Started OFF
ZTC0 STARTED Stopped OFF
ZTC1 STARTED Stopped OFF
ZTCP0 STARTED Started OFF
ZTCP1 STARTED Started OFF
Well that wasn’t too hard. Next, find out which provider is associated with the IP address you’re interested in:
5-> status provider zb018,detail
CIP Detailed Status PROVIDER \TICX.$ZZCIP.ZB018
State.................... STARTED
TPStatus................. Started
Type..................... IPDATA
Family................... INET
Current Access........... ( 0, 1, 2, 3 )
Trace Status............. OFF
Interface Status & IP Addresses:
Name Current Status LkP Fovr Index
lo UP -- -- 0x0000000001
IPv4: 127.0.0.1
IPv6: ::1
NCLIM000.lo UP -- -- 0x0000000001
IPv4: 127.0.0.2
NCLIM000.eth1 NCLIM000.eth1 UP UP -- 0x0000000007
IPv4: 43.4.5.243
IPv6: fe80::32e1:71ff:fe6a:6e91
Interfaces Failover Configuration and Status:
F Home Sts LkP Failover/(Assoc)Sts LkP Current Fovr
NCLIM000.eth1 UP UP -- -- NCLIM000.eth1 --
You might need to look at all the providers to find the one you’re looking for. But great, now we know which CLIM, interface and IP address is driven by this provider. Now, enter another command to find all of the listeners and established sessions through the provider for that interface:
6->listopens provider zb018 ,detail
CIP Detailed Listopens PROVIDER \TICX.$ZZCIP.ZB018
Opener:\TICX.$TN11 Ppid: 0,514 Bpid: 0,0
Plfn:2 Blfn:0
Proto:TCP State:LISTEN SendQ:0 RecvQ:0
Provider:ZB018 CLIM:NCLIM000 CLIM-FD:62
Lport:8015 Laddr:0.0.0.0
FPort:0 Faddr:0.0.0.0
Opener:\TICX.$TN10 Ppid: 0,513 Bpid: 0,0
Plfn:2 Blfn:0
Proto:TCP State:LISTEN SendQ:0 RecvQ:0
Provider:ZB018 CLIM:NCLIM000 CLIM-FD:67
Lport:7031 Laddr:0.0.0.0
FPort:0 Faddr:0.0.0.0
Opener:\TICX.$TN16 Ppid: 0,519 Bpid: 0,0
Plfn:2 Blfn:0
Proto:TCP State:LISTEN SendQ:0 RecvQ:0
Provider:ZB018 CLIM:NCLIM000 CLIM-FD:69
Lport:7030 Laddr:0.0.0.0
FPort:0 Faddr:0.0.0.0
Opener:\TICX.$MOMI Ppid: 0,1022 Bpid: 0,0
Plfn:44 Blfn:0
Proto:TCP State:0x00180 SendQ:0 RecvQ:0
Provider:ZB018 CLIM:NCLIM000 CLIM-FD:1691
Lport:0 Laddr:0.0.0.0
FPort:0 Faddr:0.0.0.0
Opener:\TICX.$MOMI Ppid: 0,1022 Bpid: 0,0
Plfn:42 Blfn:0
Proto:TCP State:0x00180 SendQ:0 RecvQ:0
Provider:ZB018 CLIM:NCLIM000 CLIM-FD:624
Lport:0 Laddr:0.0.0.0
FPort:0 Faddr:0.0.0.0
Opener:\TICX.$MOMI Ppid: 0,1022 Bpid: 0,0
Plfn:43 Blfn:0
Proto:TCP State:0x00180 SendQ:0 RecvQ:0
Provider:ZB018 CLIM:NCLIM000 CLIM-FD:1607
Lport:0 Laddr:0.0.0.0
FPort:0 Faddr:0.0.0.0
Opener:\TICX.$MOMI Ppid: 0,1022 Bpid: 0,0
Plfn:47 Blfn:0
Proto:TCP State:ESTAB SendQ:6620 RecvQ:0
Provider:ZB018 CLIM:NCLIM000 CLIM-FD:1039
Lport:2010 Laddr:43.4.5.243
FPort:1380 Faddr:10.1.33.28
Opener:\TICX.$TN16 Ppid: 0,519 Bpid: 0,0
Plfn:11 Blfn:0
Proto:TCP State:ESTAB SendQ:91 RecvQ:0
Provider:ZB018 CLIM:NCLIM000 CLIM-FD:126
Lport:1030 Laddr:43.4.5.243
FPort:63368 Faddr:10.5.20.80
Opener:\TICX.$TN11 Ppid: 0,514 Bpid: 0,0
Plfn:32 Blfn:0
Proto:TCP State:ESTAB SendQ:91 RecvQ:0
Provider:ZB018 CLIM:NCLIM000 CLIM-FD:141
Lport:1025 Laddr:43.4.5.243
FPort:63494 Faddr:10.45.20.46
Opener:\TICX.$MOMI Ppid: 0,1022 Bpid: 0,0
Plfn:27 Blfn:0
Proto:TCP State:LISTEN SendQ:0 RecvQ:0
Provider:ZB018 CLIM:NCLIM000 CLIM-FD:102
Lport:2010 Laddr:43.4.5.243
FPort:0 Faddr:0.0.0.0
Opener:\TICX.$TN11 Ppid: 0,514 Bpid: 0,0
Plfn:21 Blfn:0
More text? ([Y],N)
There may be a LOT of listeners and sessions, appearing in no particular order in the SCF output and, as you can see, it’s not very easy to read. So next you copy the output from your screen (or log it to a file and copy that) into a spreadsheet, separate it into useful columns of information, and sort it to find what you’re looking for.
That all will probably take you about 15 to 20 minutes if you know the commands by heart or maybe an hour or more if, like me, you have to read through the SCF manuals looking for them.
1 minute versus 15-20 minutes. Which way would you prefer?
You can use TOP to facilitate many other NonStop operations. Contact us to see all the ways it can help you.
Read more TOP Blogs
Matt’s career spans the corporate transitions of what is now HPE NonStop. He started at Tandem in 1982 as a system engineer, and saw the company evolve from Tandem to Compaq, and finally to HP/HPE – from where he retired with the title of Master System Architect. Throughout the course of these changes, Matt’s job was focused on pre-and post-sales technical support for software and systems.
TIC Software, a New York-based company specializing in software and services that integrate NonStop with the latest technologies, including Web Services, .NET and Java. Prior to founding TIC in 1983, Phil worked for Tandem Computer in technical support and software development.
TIC Software partners with comForte to offer a suite of innovative security, modernization, and connectivity solutions for NonStop systems users. comForte develops, markets, and supports proven and innovative modernization, middleware, connectivity, and security solutions for users of HP NonStop systems.
Comments