Discussion:
[omniORB] Multiple ports in OmniOrb 2.6
Duncan Grisby
2007-11-02 17:08:53 UTC
Permalink
On Tuesday 30 October, Jeff Wambolt wrote:

> I am going to describe what it is we are wanting to do...
> On ONE machine.
>
> We want to run 2 instances of our service, each one connecting to the
> SAME server (specified with *clientTransportRule*),
> BUT we want multiple endPoints... one for each our our processes.

Why? What effect do you think that will have?

[...]
> In short, we have a certain type and volume of "callback" data traffic
> that we don't want "mixing" with other traffic.
> We want to, in a programmatic or pre-config way, separate these 2.

Why? TCP port numbers are not things with a limited capacity for
sending data. A TCP connection is characterised by the endpoint details
of both ends. It makes precisely no difference if two clients are
connected to a single server port than if the two clients are connected
to two different server ports. There is no "mixing" of traffic just
because it happens to be sharing a port number.

Cheers,

Duncan.


--
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --
Shawn LaMaster
2007-11-02 17:44:05 UTC
Permalink
Duncan,
The reason for doing this is that the host we are connecting to -
the Chicago Board of Options Exchange (CBOE) - only allows one port
connection on their end per session/application/login. We want to
establish two (or more) from one machine. We would like to have
market data (bids,asks,trade prices, etc) coming through on one
instance of our service, and the actual trading to go through on
another separate instance of our service - but from the same server -
one OmniOrb. This is a limitation they impose on their end that we
have no control over - one port per session. This is why we are
asking how to do this. Thanks for your help.
Shawn
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

> On Tuesday 30 October, Jeff Wambolt wrote:
>
> > I am going to describe what it is we are wanting to do...
> > On ONE machine.
> >
> > We want to run 2 instances of our service, each one connecting to the
> > SAME server (specified with *clientTransportRule*),
> > BUT we want multiple endPoints... one for each our our processes.
>
> Why? What effect do you think that will have?
>
> [...]
> > In short, we have a certain type and volume of "callback" data traffic
> > that we don't want "mixing" with other traffic.
> > We want to, in a programmatic or pre-config way, separate these 2.
>
> Why? TCP port numbers are not things with a limited capacity for
> sending data. A TCP connection is characterised by the endpoint details
> of both ends. It makes precisely no difference if two clients are
> connected to a single server port than if the two clients are connected
> to two different server ports. There is no "mixing" of traffic just
> because it happens to be sharing a port number.
>
> Cheers,
>
> Duncan.
> --
> -- Duncan Grisby --
> -- ***@grisby.org --
> -- http://www.grisby.org --


Shawn LaMaster
PRIME Analytics, LLC
www.prime-analytics.com
www.eprotrader.com
520.320.7557
520.400.3775 [cell]
Shawn LaMaster
2007-11-02 17:54:15 UTC
Permalink
As a follow up - we may actually want to point each session to
different servers at CBOE, but again, we still need to configure the
one OmniOrb on our end for multiple ip/port sessions.


Shawn LaMaster
PRIME Analytics, LLC
www.prime-analytics.com
www.eprotrader.com
520.320.7557
520.400.3775 [cell]
Duncan Grisby
2007-11-05 18:55:04 UTC
Permalink
On Friday 2 November, "Shawn LaMaster" wrote:

> The reason for doing this is that the host we are connecting to -
> the Chicago Board of Options Exchange (CBOE) - only allows one port
> connection on their end per session/application/login. We want to
> establish two (or more) from one machine. We would like to have
> market data (bids,asks,trade prices, etc) coming through on one
> instance of our service, and the actual trading to go through on
> another separate instance of our service - but from the same server -
> one OmniOrb. This is a limitation they impose on their end that we
> have no control over - one port per session. This is why we are
> asking how to do this. Thanks for your help.

What a bizarre requirement. Would they have the same requirement if the
server was a web server, or would they allow everyone to connect to port
80 (or other fixed port) like every other web server on the planet?

The only sensible way to support that requirement is to have two
separate server processes, one listening on each port. They could
actually both be facades for the real server if you need to have one
single server.

Any other solution would rely on making sure all clients know which port
to choose out of a multi-profile IOR, which is a very fragile approach.

Cheers,

Duncan.

--
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --
Loading...