I guess my additional input would be you should be migrating from HP-UX 9 and 10 to HP-UX 11i :) Apart from that...
The HP-UX 9 and 10 TCP/IP stacks were based on BSD networking code. HP-UX 10.20 had an HP value-add called Inbound Packet Scheduling (IPS) that increased MP scaling when the number of CPUs was > the number of NICs. In HP-UX 11 (circa 1998 or so) that became TOPS for Thread Optimized Packet Scheduling. I do not believe that Solaris 9 has such a thing.
As for port numbers, as already pointed-out, "well known" portnumbers will remain the same - telnet, ftp, etc will still be at the same port numbers. I suspect the anonymous or ephemeral port number space will be different. On HP-UX 9 and 10 that was from (IIRC) 1025 to 5000. On Solaris 9 I believe it may be > 32768. So long as your code is properly written to have an _unsigned_ short for port numbers you should be OK.
Another consideration since we are talking about things networking - if you are porting to Solaris x86 as opposed to Solaris SPARC (One presumes that all the main action for Solaris in the future iwll be in the x86 space) you need to keep in mind that Solaris x86 is _little-endian_ whereas HP-UX * are _big-endian_ and port numbers and IP addresses and such must be presented in network (aka big-endian) order to socket calls. That means your code needs to have apropriate hton* and ntoh* calls in it or it will start to fail in strange-looking ways when you start to run it on a little-endian system such as Solaris x86.
there is no rest for the wicked yet the virtuous have no pillows