socket转发程序求助

NINO 2011-11-14 07:09:38
客户那边要的比较急,自己慢慢折腾怕时间来不及,所以来CSDN求助。

情况大致是这样:内网有两台服务器,A服务器为开放公网接口的中转服务器,B服务器为与A服务器同一个内网的系统服务器。
客户端为百来台PDA,通过GPRS网络连接A服务器进行数据交互。
现需要在A服务器上做个中转程序,要求如下:
1、将PDA发送过来的数据请求原封不动转发给B服务器
2、将B服务器返回的信息原封不动转发给第一步中发出请求的PDA
3、保证数据收发的稳定性

在下知道发这个帖子估计要挨很多老鸟的骂了,不劳而获什么的最讨厌了,
但实在因为太急而对这块又不是很熟,所以哪位高人有没有该功能的工具推荐下,或者给些类似的源码,我自己去整合,不胜感激。
...全文
269 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lijianli9 2011-11-15
  • 打赏
  • 举报
回复
转发的时候client1 发送过来一定要带有自己的标识,比如pda1,然后a保存client1,pda1,socket形成一个map关系,然后b接受到pda1的信息后,要保存这些标识,并返回给a,a通过map找到对应的socket,然后返回给client1
gameslq 2011-11-15
  • 打赏
  • 举报
回复
[Quote=引用楼主 suekid 的回复:]
客户那边要的比较急,自己慢慢折腾怕时间来不及,所以来CSDN求助。

情况大致是这样:内网有两台服务器,A服务器为开放公网接口的中转服务器,B服务器为与A服务器同一个内网的系统服务器。
客户端为百来台PDA,通过GPRS网络连接A服务器进行数据交互。
现需要在A服务器上做个中转程序,要求如下:
1、将PDA发送过来的数据请求原封不动转发给B服务器
2、将B服务器返回的信息原封不动转发给……
[/Quote]
问题其实就是客户想通过外网安全的访问B服务器
简单、安全、可靠的方案是在外网出口路由器设置端口映射,映射80,8080端口到服务器B就可以
相比较写程序开发周期短、安全有效,剩下的工作就是说服客户接受无程序方案了。
Yofoo 2011-11-15
  • 打赏
  • 举报
回复
我自己写过一个程序, 同时只能支持一个连接, 是否可以?
看起来简单, 实现起来比较麻烦的
贾囧雷 2011-11-15
  • 打赏
  • 举报
回复
立即返给A?如果B在返给A的时候中间出现问题,返回失败?这时候A在发送的话,B在返回,如何鉴别呢?
百来台PDA,数据量应该不算太大。容错性未知
NINO 2011-11-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 yby4769250 的回复:]

介个,不难,自己写出来也不要多久,不过,感觉A服务器很浪费,被当做路由器或者交换机用了,呵呵。
业务逻辑看起来也挺简单的:
client --> A //客户端连接A服务器,发送数据
A --> B //A服务器原封不动转发数据
A <-- B //B服务器把结果原封不动返回给A服务器
client <-- A /……
[/Quote]

差不多就是这个意思,我主要想知道有没有现成的工具,实在不行,就只能自己写一个了。。
NINO 2011-11-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 hnwyllmm 的回复:]

如果是转发数据,肯定可以知道A要将信息发送给B,但是B返回信息时是如何知道这个信息要返回给A呢?
楼主能不能说明呢?
感觉2楼的想法不太好,楼主说过要对付百来个PDA,这百来个PDA不知道会配成多少对
程序内部应该维护客户端信息,还要知道某个信息是谁发送给谁的
我的想法很简单,一个接收数据的线程,一个发送数据的线程(当然,接收和发送线程也不一定就一个)
数据结构:客户端信息链表,接收数……
[/Quote]

A有发信息给B,B每次都必须立即返回信息给A
羽飞 2011-11-14
  • 打赏
  • 举报
回复
如果是转发数据,肯定可以知道A要将信息发送给B,但是B返回信息时是如何知道这个信息要返回给A呢?
楼主能不能说明呢?
感觉2楼的想法不太好,楼主说过要对付百来个PDA,这百来个PDA不知道会配成多少对
程序内部应该维护客户端信息,还要知道某个信息是谁发送给谁的
我的想法很简单,一个接收数据的线程,一个发送数据的线程(当然,接收和发送线程也不一定就一个)
数据结构:客户端信息链表,接收数据链表,发送数据链表
至于线程同步,就不用说了
yby4769250 2011-11-14
  • 打赏
  • 举报
回复
介个,不难,自己写出来也不要多久,不过,感觉A服务器很浪费,被当做路由器或者交换机用了,呵呵。
业务逻辑看起来也挺简单的:
client --> A //客户端连接A服务器,发送数据
A --> B //A服务器原封不动转发数据
A <-- B //B服务器把结果原封不动返回给A服务器
client <-- A //A把结果返回给客户端
如果用最简单的逻辑的话,也就是两个socket对加两个线程,一个线程处理client <--> A,另一个线程处理
A <--> B,两线程按照业务逻辑同步
NINO 2011-11-14
  • 打赏
  • 举报
回复
求助呀求助。。。
内容概要:本文围绕“基于超局部模型与自抗扰ESO观测器的无模型预测电流控制改进策略”展开研究,提出一种结合超局部模型(ULM)与扩张状态观测器(ESO)的无模型预测电流控制(MFPCC)改进方法,旨在提升永磁同步电机(PMSM)电流环的动态响应性能与抗干扰能力。该策略利用超局部模型对系统行为进行局部逼近,避免依赖精确数学模型,同时引入自抗扰控制中的ESO实时观测并补偿系统内外部扰动,有效抑制参数摄动、负载变化及模型不确定性带来的影响。研究通过Simulink搭建完整的控制系统仿真模型,对传统MFPCC与所提改进策略进行对比分析,验证了新方法在电流跟踪精度、响应速度和鲁棒性方面的优越性。; 适合人群:具备电机控制、现代控制理论及Simulink仿真基础的电气工程、自动化及相关专业的研究生、科研人员及工程技术人员。; 使用场景及目标:①用于高性能电机驱动系统中电流环控制器的设计与优化;②为无模型控制与自抗扰控制的融合应用提供技术参考;③支撑相关课题的仿真验证、论文复现与创新方法研究。; 阅读建议:建议读者结合Simulink仿真模型深入理解控制结构与参数整定过程,重点关注ESO的观测性能与扰动补偿机制,并可通过改变负载条件、参数偏差等工况进行鲁棒性测试,进一步掌握该改进策略的核心优势与适用边界。

18,357

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧