内网 外网
______________________________________________
ClientA- 网闸 Server
ClinetB | TCP通道 / | \
ClientC- |不支持UDP 外网ClientA
------------------->| 外网ClientB
UDP协议 | 外网ClientC
|<-----------------UDP协议
见上图,为解决内网ClientA与外网ClientA之间的通讯,由于中间网闸设备不支持UDP协议,所以需要把UDP协议封装成TCP协议,在网闸两端分别开发UDPTOTCP中转服务.ClientA-----UDP->服务程序->TCP->网 闸->TCP->服务程序->UDP->server or client
从外到内仍遵循该过程.本网以内的Client无需中转.异网之间走服务程序中转.
现在存在地问题就是
ClientA->UDP->服务程序->TCP->网 闸->TCP->服务程序->UDP->Server,这时Server无法得知真实发给他UDP信息的ClientA的地址和端口.因为在Server看来,发给他UDP包的是服务程序.
不知道哪位大侠有好的解决办法没有.也就是说UDP在TCP发送过程中能不能保留他的源地址和端口.我不想在发送的包中记录这样的信息.谢谢.如果解决500分奉送~
______________________________________________
ClientA- 网闸 Server
ClinetB | TCP通道 / | \
ClientC- |不支持UDP 外网ClientA
------------------->| 外网ClientB
UDP协议 | 外网ClientC
|<-----------------UDP协议
见上图,为解决内网ClientA与外网ClientA之间的通讯,由于中间网闸设备不支持UDP协议,所以需要把UDP协议封装成TCP协议,在网闸两端分别开发UDPTOTCP中转服务.ClientA-----UDP->服务程序->TCP->网 闸->TCP->服务程序->UDP->server or client
从外到内仍遵循该过程.本网以内的Client无需中转.异网之间走服务程序中转.
现在存在地问题就是
ClientA->UDP->服务程序->TCP->网 闸->TCP->服务程序->UDP->Server,这时Server无法得知真实发给他UDP信息的ClientA的地址和端口.因为在Server看来,发给他UDP包的是服务程序.
不知道哪位大侠有好的解决办法没有.也就是说UDP在TCP发送过程中能不能保留他的源地址和端口.我不想在发送的包中记录这样的信息.谢谢.如果解决500分奉送~
解决方案 »
- 自定义函数里 CreateForm 的怪事
- ADOQuery 如呵快速定位 记录顺序为 4,28,400, 的记录
- 关于多次INSERT的效率问题,请进来看看!
- 哪里可以下载能使用的InstallShield Express Custom Edition for Delphi
- (再再再续)刚才想散分,不过不能给超过100分。想开多个贴,结果只开了一个,然后荣誉分只有81分了……(10分钟后结贴)
- 招聘;
- updata 的问题
- 寻北京海淀delphi兼职!
- 有谁做过档案管理系统?希望大家讨论关于档案借阅的有关处理。(来的都是客,全在分数上,参与讨论者有分)
- 使用“move(buffer^,pchar(@rbuf^),bufferlength);”报错:pointer type required
- 在没有安装sql server2000上运行delphi写的程序错误
- 如何取得函数的地址
我的意思是内网外网都有clientA 和ClientB
http://www.ppcn.net/n1306c2.aspx