"BadImageFormatException" when installing the x86 Setups

Apr 10, 2013 at 9:33 PM
Edited Apr 10, 2013 at 9:34 PM
Hi Keith,
First of all, thank you very much for making this great tool available, and for your continued work on it. I'm really looking forward to trying to use your new Rx version 3.0 in a project I'm working on.

I've been trying to install the 3.0 x86 Setup (both Release and Debug) and always get the following error:
BadImageFormatException
__Error 1001. Exception occurred while initializing the installation: System.BadImageFormatException: Could not load file or assembly 'file:///C:\Program Files\Microsoft...\WspEventRouter.exe' or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded..__
I've tried it on both Windows XP as well as Windows 7 32-bit. I've also successfully rebuilt/recompiled the source code with VS2010, but I still get the same error from the setup projects contained within the solution. I really think the error is occurring when it attempts to install the service, but I can't be sure about that.

Any suggestions?

Thank you,
Todd
Coordinator
Apr 11, 2013 at 1:54 AM
I guess it show I never use 32 bit any more. I don't even have a 32 bit machine to test with at work. I wonder if I install the 32 bit on my 64 bit server, if it will work? I can take a look at it next week.
Apr 15, 2013 at 5:31 AM
Thanks Keith - no need to mess with it.

I'm in the opposite boat - we're still using 32-bit on all our client systems, but I was finally able to just create a new setup project duplicating your existing setup project (including the custom actions to install the service) and the new setup project seems to work fine.

I believe the issue was probably this:
http://msdn.microsoft.com/en-us/library/kz0ke5xt(v=vs.100).aspx#sectionToggle9

Thanks,
Todd
Apr 16, 2013 at 4:22 PM
Hey keithh,

I had the same problem as cfwcad with a 32-bit machine and I created a new setup project and I was able to install WspEventRouter without any problem but it seems I cant get it to run. I'm getting the following error:
Unhandled Exception: System.Resources.MissingManifestResourceException: Could not find any resources appropriate for the specified culture or the neutral culture.  Make sure "Microsoft.WebSolutionsPlatform.Router.WspEventRouter.resources" was correctly embedded or linked into assembly "WspEventRouter" at compile time,
or that all the satellite assemblies required are loadable and fully signed.
   at System.Resources.ManifestBasedResourceGroveler.HandleResourceStreamMissing(String fileName)
   at System.Resources.ManifestBasedResourceGroveler.GrovelForResourceSet(CultureInfo culture, Dictionary`2 localResourceSets, Boolean tryParents, Boolean createIfNotExists, StackCrawlMark& stackMark)
   at System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo requestedCulture, Boolean createIfNotExists, Boolean tryParents, StackCrawlMark& stackMark)
   at System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo culture, Boolean createIfNotExists, Boolean tryParents)
   at System.Resources.ResourceManager.GetString(String name, CultureInfo culture)
   at System.Resources.ResourceManager.GetString(String name)
   at Microsoft.WebSolutionsPlatform.Router.Router..ctor() in D:\Development\SWSOS Brasil\Web Based Publisher Subscriber\Project\v3.0\Router\Router.cs:line 253

   at Microsoft.WebSolutionsPlatform.Router.Program.Main(String[] args) in D:\De
velopment\SW SOS Brasil\Web Based Publisher Subscriber\Project\v3.0\Router\Progr
am.cs:line 18
It seems I get this error even in a 64-bit machine. If I download your setups (from codeplex), everything works fine. If I compile a setup project, install it I start getting this error. Do you have any ideia of what this could be?
Apr 16, 2013 at 6:32 PM
Yes sir, I also spoke too soon! Even though I was able to create a new setup and install it successfully, the service does not run. I'm getting the same error as above.

Thanks
Coordinator
Apr 16, 2013 at 7:00 PM
I just uploaded a new x86 msi, can you try it and see if it works? This is a build on my dev server. If it works then I'll update all the msi's soon with my newer bits.
Apr 16, 2013 at 7:49 PM
keithh wrote:
I just uploaded a new x86 msi, can you try it and see if it works? This is a build on my dev server. If it works then I'll update all the msi's soon with my newer bits.
Yes, that installed successfully for me and the service started fine.

Thank you!!
Coordinator
Apr 16, 2013 at 8:06 PM
Thanks.

BTW, I simply changed the LanchCondition value for .Net Framework from "any" to "4.0". Seems like a bug to me.
Apr 18, 2013 at 10:02 AM
Thanks Keithh, it works now. I have changed the launch conditions and it seems that it was the problem indeed.

Do you have a working config file? I'm using the config below but my Node doesnt seem to connect to the Hub. Both Hub and Node have the same config file.
In version 2.0, on the clientRoleInfo we would put the on the tag parentRouter name="172.16.20.32". Do I need to do the same on 3.0 in the nodeRoleSettings (I've tried it but couldnt connect)?

A netstat wields the following result
netstat -an |findstr 1300
TCP 172.16.20.124:1056 172.16.20.32:1300 TIME_WAIT
TCP 172.16.20.124:1057 172.16.20.32:1300 TIME_WAIT
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
        <section name="eventRouterSettings" type="Microsoft.WebSolutionsPlatform.Configuration.EventRouterSettings"/>
        <section name="hubRoleSettings" type="Microsoft.WebSolutionsPlatform.Configuration.HubRoleSettings"/>
        <section name="nodeRoleSettings" type="Microsoft.WebSolutionsPlatform.Configuration.HubRoleSettings"/>
        <section name="groupSettings" type="Microsoft.WebSolutionsPlatform.Configuration.GroupSettings"/>
        <section name="logSettings" type="Microsoft.WebSolutionsPlatform.Configuration.LogSettings"/>
    </configSections>

    <eventRouterSettings role="Hub" group="XPTO" autoConfig="true" bootstrapUrl="http://172.16.20.32/GetConfig" mgmtGuid="DA761E42-69DD-45b0-BDE7-C500A6A0DA0E" cmdGuid="345CF9E9-F206-4572-8451-0F519C739A7E" publish="true"/>

    <hubRoleSettings>
      <subscriptionManagement refreshIncrement="3"  expirationIncrement="10"/>
        <localPublish eventQueueName="WspEventQueue" eventQueueSize="102400000" averageEventSize="10240"/>
        <outputCommunicationQueues maxQueueSize="200000000" maxTimeout="600"/>
        <thisRouter nic="" port="1300" bufferSize="1024000" timeout="5000" />
        <peerRouter numConnections="2" port="1300" bufferSize="1024000" timeout="5000" />
    </hubRoleSettings>

    <nodeRoleSettings>
      <subscriptionManagement refreshIncrement="3"  expirationIncrement="10"/>
        <localPublish eventQueueName="WspEventQueue" eventQueueSize="10240000" averageEventSize="10240"/>
        <outputCommunicationQueues maxQueueSize="200000000" maxTimeout="600"/>
        <parentRouter numConnections="1" port="1300" bufferSize="1024000" timeout="5000" />
    </nodeRoleSettings>

    <groupSettings>
      <group name="XPTO" useGroup="">
        <hub name="HubName"/>
      </group>

      <group name="Grp2" useGroup="XPTO">
      </group>

      <group name="default" useGroup="XPTO">
      </group>
    </groupSettings>

    <logSettings>

    </logSettings>

</configuration>
Coordinator
Apr 18, 2013 at 1:02 PM
Each server that you have its role as "Hub" needs to be listed as a hub in the groupSettings section of the config file. So if your config file is for the server, 172.16.20.32, then your hub entry in the config file should be:
<hub name="172.16.20.32"/>
Apr 18, 2013 at 2:22 PM
So I listed my hub as you said, and now on the node machine, and now i get the following error in the event router
The description for Event ID (0) in Source (WspEventRouter) was not found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You can use the / AUXSOURCE = flag to retrieve this description; see Help and Support for details. The following information is part of the event: Hub entry [172.16.20.32] can not be resolved by DNS. Exception: The name request is valid and was located in the database but does not have the correct associated data to be resolved.
Do I need to do anything to the config file so it uses the IP and not a DNS name?
Apr 18, 2013 at 2:43 PM
I just remembered having the same issue with 2.0. At the time I changed the code to use GetHostAddresses instead of GetHostEntry. I'll go and change it
Apr 18, 2013 at 3:11 PM
Edited Apr 18, 2013 at 3:19 PM
So i changed the code, recompiled and I'm getting the same errors as before:

On the 64-bit machine I'm getting the System.Resources.MissingManifestResourceException and on the 32-bit machine the Error 1001. Exception occurred while initializing the installation: System.BadImageFormatException.

I changed the LaunchConditions to .Net Framework 4.0 but I get the errors above (I said previously that changing the LauchConditions worked but it could be that I installed your version instead of mine by mistake).


Edit: For the 32-bit machine, I change the LauchConditions to .NET Framework 4 Client Profile and it installed but now I'm getting the same Error as the 64-bit machine System.Resources.MissingManifestResourceException
Coordinator
Apr 18, 2013 at 4:23 PM
IP addresses should work fine with v3.0. Send me the config file from each server.
Apr 18, 2013 at 4:42 PM
Edited Apr 18, 2013 at 4:55 PM
Hub Config File: (64-bit)
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
        <section name="eventRouterSettings" type="Microsoft.WebSolutionsPlatform.Configuration.EventRouterSettings"/>
        <section name="hubRoleSettings" type="Microsoft.WebSolutionsPlatform.Configuration.HubRoleSettings"/>
        <section name="nodeRoleSettings" type="Microsoft.WebSolutionsPlatform.Configuration.HubRoleSettings"/>
        <section name="groupSettings" type="Microsoft.WebSolutionsPlatform.Configuration.GroupSettings"/>
        <section name="logSettings" type="Microsoft.WebSolutionsPlatform.Configuration.LogSettings"/>
    </configSections>

    <eventRouterSettings role="Hub" group="Version3" autoConfig="true" bootstrapUrl="http://172.16.20.32/GetConfig" mgmtGuid="DA761E42-69DD-45b0-BDE7-C500A6A0DA0E" cmdGuid="345CF9E9-F206-4572-8451-0F519C739A7E" publish="true"/>

    <hubRoleSettings>
      <subscriptionManagement refreshIncrement="3"  expirationIncrement="10"/>
        <localPublish eventQueueName="WspEventQueue" eventQueueSize="102400000" averageEventSize="10240"/>
        <outputCommunicationQueues maxQueueSize="200000000" maxTimeout="600"/>
        <thisRouter nic="" port="1300" bufferSize="1024000" timeout="5000" />
        <peerRouter numConnections="2" port="1300" bufferSize="1024000" timeout="5000" />
    </hubRoleSettings>

    <nodeRoleSettings>
      <subscriptionManagement refreshIncrement="3"  expirationIncrement="10"/>
        <localPublish eventQueueName="WspEventQueue" eventQueueSize="10240000" averageEventSize="10240"/>
        <outputCommunicationQueues maxQueueSize="200000000" maxTimeout="600"/>
        <parentRouter numConnections="1" port="1300" bufferSize="1024000" timeout="5000" />
    </nodeRoleSettings>

    <groupSettings>
      <group name="Version3">
        <hub name="172.16.20.32"/>
      </group>
    </groupSettings>

    <logSettings />

</configuration>
Node Config File: (32-bit)
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
        <section name="eventRouterSettings" type="Microsoft.WebSolutionsPlatform.Configuration.EventRouterSettings"/>
        <section name="hubRoleSettings" type="Microsoft.WebSolutionsPlatform.Configuration.HubRoleSettings"/>
        <section name="nodeRoleSettings" type="Microsoft.WebSolutionsPlatform.Configuration.HubRoleSettings"/>
        <section name="groupSettings" type="Microsoft.WebSolutionsPlatform.Configuration.GroupSettings"/>
        <section name="logSettings" type="Microsoft.WebSolutionsPlatform.Configuration.LogSettings"/>
    </configSections>

    <eventRouterSettings role="Node" group="Version3" autoConfig="true" bootstrapUrl="http://172.16.20.32/GetConfig" mgmtGuid="DA761E42-69DD-45b0-BDE7-C500A6A0DA0E" cmdGuid="345CF9E9-F206-4572-8451-0F519C739A7E" publish="false"/>

    <hubRoleSettings>
        <subscriptionManagement refreshIncrement="3"  expirationIncrement="10"/>
        <localPublish eventQueueName="WspEventQueue" eventQueueSize="102400000" averageEventSize="10240"/>
        <outputCommunicationQueues maxQueueSize="200000000" maxTimeout="600"/>
        <thisRouter nic="" port="1300" bufferSize="1024000" timeout="5000" />
        <peerRouter numConnections="2" port="1300" bufferSize="1024000" timeout="5000" />
    </hubRoleSettings>

    <nodeRoleSettings>
        <subscriptionManagement refreshIncrement="3"  expirationIncrement="10"/>
        <localPublish eventQueueName="WspEventQueue" eventQueueSize="10240000" averageEventSize="10240"/>
        <outputCommunicationQueues maxQueueSize="200000000" maxTimeout="600"/>
        <parentRouter numConnections="1" port="1300" bufferSize="1024000" timeout="5000" />
    </nodeRoleSettings>

    <groupSettings>
        <group name="Version3">
            <hub name="172.16.20.32"/>
        </group>
    </groupSettings>

    <logSettings />

</configuration>
Coordinator
Apr 18, 2013 at 4:58 PM
The config files look correct. We have been using a mixture of IP addresses and host names for the hubs and things have been working. Did you verify the firewall isn't blocking the connection?
Apr 18, 2013 at 5:13 PM
I disabled all firewalls.

When I start the Node wspevent router, I'm still getting the error: Hub entry [172.16.20.32] cannot be resolved by DNS.

I edited the Hosts file, and added a line with
172.16.20.32         rfazendeiro
and the error disappears but doing a Netstat I get the following
Hub Netstat:
netstat -an |findstr 1300
  TCP    0.0.0.0:1300           0.0.0.0:0              LISTENING
Node Netstat:
netstat -an |findstr 1300
  TCP    172.16.20.124:1037     172.16.20.32:1300      TIME_WAIT
After a while, on the node server, the netstat command comes up empty (like he wasnt able to connect so wont try anymore).


One thing tho, I was able to get one time a connection (with the Hosts file entry) and the hub indicated it as connected. I then restarted both wspevent routers and never again was able to connect.
netstat -an |findstr 1300
  TCP    172.16.20.124:1036     172.16.20.32:1300      ESTABLISHED
  TCP    172.16.20.124:1037     172.16.20.32:1300      TIME_WAIT
Apr 18, 2013 at 5:30 PM
Edited Apr 18, 2013 at 5:31 PM
OMG......

Finally was able to establish a connection! The problem was skype ! it was taking the port 80 and IIS default website was stopped.

Anyhow, I need to have the HOSTS file with the entry I said on the previous post or I'll get the DSN error.

Edit: on version 2.0 WspEventRouter always had 2 connections for each server. In 3.0 there seems to be only 1 connection. Is this ok?
Coordinator
Apr 18, 2013 at 5:36 PM
If you provide an IP address, it shouldn't be trying to do a dns lookup unless IPAddress.TryParse does a dns lookup. Even if it tries a dns lookup, I would expect things to work fine unless the TryParse is failing when provided an IP address. Here is the code:
        private static Socket ConnectSocket(string server, int port)
        {
            Socket socket;
            IPHostEntry hostEntry = null;
            IPAddress addressIn = null;

            if (IPAddress.TryParse(server, out addressIn) == true)
            {
                try
                {
                    IPEndPoint ipe = new IPEndPoint(addressIn, port);

                    socket = new Socket(ipe.AddressFamily, SocketType.Stream, ProtocolType.Tcp);

                    socket.Connect(ipe);

                    if (socket.Connected)
                    {
                        return socket;
                    }
                }
                catch
                {
                    // Intentionally left empty, just loop to next.
                }
            }
            else
            {
                // Get host related information.
                hostEntry = Dns.GetHostEntry(server);

                // Loop through the AddressList to obtain the supported AddressFamily. This is to avoid
                // an exception that occurs when the host IP Address is not compatible with the address family
                // (typical in the IPv6 case).
                foreach (IPAddress address in hostEntry.AddressList)
                {
                    // Only use IPv4
                    if (address.AddressFamily == AddressFamily.InterNetworkV6)
                    {
                        continue;
                    }

                    try
                    {
                        IPEndPoint ipe = new IPEndPoint(address, port);

                        socket = new Socket(ipe.AddressFamily, SocketType.Stream, ProtocolType.Tcp);

                        socket.Connect(ipe);

                        if (socket.Connected)
                        {
                            return socket;
                        }
                    }
                    catch
                    {
                        // Intentionally left empty, just loop to next.
                    }
                }
            }

            return null;
        }
Apr 18, 2013 at 5:46 PM
Edited Apr 18, 2013 at 5:49 PM
Yea I saw that the code was diferent from 2.0.

The problem is I cant run it in debug mode because of the error System.Resources.MissingManifestResourceException

Edit: I get the Error
{"Could not find any resources appropriate for the specified culture or the neutral culture.  Make sure \"Microsoft.WebSolutionsPlatform.Router.WspEventRouter.resources\" was correctly embedded or linked into assembly \"WspEventRouter\" at compile time, or that all the satellite assemblies required are loadable and fully signed."}
at Router.cs Line 268
Coordinator
Apr 18, 2013 at 6:26 PM
If you install the debug build on the Node, you should be able to attach to the process to debug. Then if you stop and restart the Hub you should be able to have a breakpoint on the method on the Node. Does this not work for you?
Apr 19, 2013 at 10:28 AM
Edited Apr 19, 2013 at 10:29 AM
Well the Node server doesnt have VS 2010 installed. Would have to setup remote debugging.

Something is happening but I dont know what. So as I said, finally I was able to establish a connection. I then stopped WspEventRouter on the Node server, re-run it and I'm no longer able to connect :S

So I restarted the machine, started the service again and got this from spamming netstat (the number after the TIME_WAIT is the PID)
netstat -ano |findstr 1300
  TCP    172.16.20.124:1040     172.16.20.32:1300      ESTABLISHED     2464

netstat -ano |findstr 1300
  TCP    172.16.20.124:1040     172.16.20.32:1300      TIME_WAIT       0

netstat -ano |findstr 1300
  TCP    172.16.20.124:1040     172.16.20.32:1300      TIME_WAIT       0

netstat -ano |findstr 1300
  TCP    172.16.20.124:1040     172.16.20.32:1300      TIME_WAIT       0

netstat -ano |findstr 1300
  TCP    172.16.20.124:1040     172.16.20.32:1300      TIME_WAIT       0
  TCP    172.16.20.124:1041     172.16.20.32:1300      TIME_WAIT       0

netstat -ano |findstr 1300
  TCP    172.16.20.124:1040     172.16.20.32:1300      TIME_WAIT       0
  TCP    172.16.20.124:1041     172.16.20.32:1300      TIME_WAIT       0
After a while, like a minute or so, netstat again comes up blank. Restarting WspEventRouter, and spamming netstat it always returns:
netstat -ano |findstr 1300
  TCP    172.16.20.124:1042     172.16.20.32:1300      TIME_WAIT       0
So, After this, restarted the node server again and voila...connection established
netstat -ano |findstr 1300
  TCP    0.0.0.0:1300           0.0.0.0:0              LISTENING       8384
  TCP    172.16.20.32:1300      172.16.20.124:1032     ESTABLISHED     8384
Coordinator
Apr 19, 2013 at 1:30 PM
I've never seen your behavior before. I don't even recall seeing a TIME_WAIT state of a tcp connection. If there is a tcp connection issue, I normally see a SYN_SENT state. The normal reasons I get the connection issues are either the firewall is blocking or the network routers are configured to block unknown traffic and I have to go to the networking team to have them open port 1300 traffic. I'm not sure I can provide any help for debugging your issue.
Apr 19, 2013 at 4:04 PM
I decided to try and install WspEventRouter on a colleague's laptop since it's 64-bit and everything went fine. I even ran a little subscriber snippet and it was receiving everything my machine was publishing.

I run the same snippet on the 32-bit machine with the connection established, and I get the error on the Event Viewer:
Application: WSPEventRouterV3Subscriber.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.TypeLoadException
Stack:
   at WSPEventRouterV3Subscriber.Subscriber.Treat_SOSChangeMessage(Byte[])
   at WSPEventRouterV3Subscriber.Subscriber.SubscriptionCallback(System.Guid, Microsoft.WebSolutionsPlatform.PubSubManager.WspEvent)
   at Microsoft.WebSolutionsPlatform.PubSubManager.SubscriptionManager.CallSubscriptionCallback(System.Object)
   at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(System.Object)
   at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
   at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

Para mais informações, consulte o 'Centro de ajuda e suporte' em http://go.microsoft.com/fwlink/events.asp.
So maybe it's a problem with the 32-bit machines?
Apr 19, 2013 at 4:50 PM
I went to another colleague's laptop, this time a 64-bit machine with a 32-bit windows 7 and installed WspEventRouterx86Release as a node and had no problem establishing connection.

Running the snippet, an error occured saying it could not load Microsoft.WebSolutionsPlatform.Event.Event type.
System.TypeLoadException: Could not load type 'Microsoft.WebSolutionsPlatform.Event.Event' from assembly 'WspEvent, Version=3.0.0.0, Culture=neutral, PublicKeyToken=d8f84176f389054b'.
   at WSPEventRouterV3Subscriber.Form1.button1_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Coordinator
Apr 19, 2013 at 5:28 PM
It will take me, maybe a week, to build out a 32 bit server to create and test a build on. I need to fit it in with all my other stuff.
Coordinator
Apr 27, 2013 at 3:26 PM
I uploaded some new x86 install files. It runs fine on my x86 home machine. Let me know if you have any issues.
Apr 29, 2013 at 8:58 AM
Hei Keihh,

First of all, thank you for looking into this. Your support is as always, fantastic.

As for the matter in hand, the problem continues. Restarted the PC and this is what I get. Connection establish, followed by some TIME_WAIT, followed by blank.

On the bright side, I just got confirmation that they are going to upgrade the 32-bit Servers to 64-bit soon. So maybe this wont be a problem by the time I have this wrapped up.
netstat -ano |findstr 1300
  TCP    172.16.20.124:1031     172.16.20.32:1300      ESTABLISHED     3512

netstat -ano |findstr 1300
  TCP    172.16.20.124:1031     172.16.20.32:1300      TIME_WAIT       0

netstat -ano |findstr 1300
  TCP    172.16.20.124:1031     172.16.20.32:1300      TIME_WAIT       0
  TCP    172.16.20.124:1032     172.16.20.32:1300      TIME_WAIT       0
  TCP    172.16.20.124:1033     172.16.20.32:1300      TIME_WAIT       0

netstat -ano |findstr 1300
Coordinator
Apr 29, 2013 at 12:57 PM
Like I said previously, I have never seen your behavior nor have I ever seen TIME_WAIT for any tcp connections. I think this is something you're going to have to debug. The code on codeplex should build fine for you now. Something appears to be closing the connections outside of Wsp. It could be some network router/load balancer, a security application, or something similar.