本文介绍了如何在NAT之后实现CORBA客户端的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下界面.

interface Server {
   void subscribe(in Client client);
};

interface Client {
   void ping();
   void pong();
};

在初始化时,客户端将连接到服务器并调用subscription(this).然后服务器将在客户端上调用ping()或pong()的定时方法.但是,如果客户端位于NAT后面,则此方法将不起作用.有什么解决方法可以解决此问题?

On initialization, client will connect to server and call subscribe(this).Then server will call time to time methods ping() or pong() on client. However, this will not work if client resides behind the NAT. What are possible workarounds for this problem?

是否可以将客户端创建的TCP连接用于呼叫服务器->客户端?请指教.

Does it possible to utilize TCP connection created by client for calls server -> client?please advise.

推荐答案

查找您的ORB是否支持双向IIOP,从而解决了服务器->客户端回调的NAT/防火墙问题.

Find out if your ORB supports bi-directional IIOP, that solves the NAT/firewall issue for server->client callbacks.

以下是一些支持它的ORB:

Here are some ORBs that do support it:

OmniORB- http://omniorb.sourceforge.net/omni40/omn​​iORB/omniORB008.html#sec:bidir

Orbix- http://documentation.progress.com/输出/Iona/orbix/migration/html/InteropCx3.html

Visibroker- http://www.albany.edu/dept/csi/csi518/fall03/inprise/vbroker/doc/books/vbj/vbj45/programmers-guide/bidir.html

Visibroker - http://www.albany.edu/dept/csi/csi518/fall03/inprise/vbroker/doc/books/vbj/vbj45/programmers-guide/bidir.html

这篇关于如何在NAT之后实现CORBA客户端的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-20 05:23