jpwkeeper
10/8/2004 11:12:00 AM
I'm having trouble with .NET Remoting when multiple networks are in a
system.
I have 7 PCs, each running the same 2 networks. The networks have a
different subnet. All remoting traffic is on one of the networks (the
other is dedicated for a SAN).
Each system us running a remoting application that kind of acts as a
peice of network shared memory, passing status information back and
forth. The amount of information moving around is not too terribly
much, maybe 10s of KBytes per second or so.
Now, on a single network system this works like a champ, using around
15% of the CPU. On a dual network system, the CPU jumps to over 50%,
almost all of which is Kernel time.
The rub here is that, while running the dual network, if I unplug one
of the cables, the application drops back to 15% of the CPU without
losing any functionality. If I plug the cable back in, bringing me
back to dual networks, the CPU stays at 15% and does not climb back.
This is 100% reproducable.
I downloaded the Numega profiler (the community edition), and
discovered something very odd. I have two calls that are being used
by the remote system. It appears that, every time either of those two
calls are received, the system performs a GetHostByName call when
running dual networks. In 40 seconds, it was called over 1,000 times.
When running a single network in the same 40 seconds, it was called 5
times, at least two of which were actually in my code during startup.
I have seen reference to multiple NIC cards being a potential problem
with remoting. Any help would be appreciated.
mailto:jpwkeeper@gmail.com