首页 新闻 搜索 专区 学院

这样的方案可不可行,会涉及到那些方面,会有多大的代码量?

0
悬赏园豆:20 [已解决问题] 解决于 2012-08-14 14:09

  小生最近做了一个涉及监控的项目,使用的是大华的监控方案。

  并没有做太多的开发工作,只是做了一个网站,并内嵌了大华的Web服务页面(就是通过iframe链接到DVR中的网站),当然我的网站和大华的网站都是经过路由映射的,并使用了花生壳的域名服务。这些都是在一个局域网中,并且增加了一个无线路由器,使用电信的无线3G网卡。

  路由器中的端口映射如下:

    192.168.0.2:8090 -> 映射大华的Web服务页面,即DVR中的网站

    192.168.0.2:37777 -> 映射大华的TCP数据传输端口

    192.168.0.2:37778 -> 映射大华的UDP数据传输端口

    192.168.0.10:80 -> 映射本人开发的网站端口

    192.168.0.10:38001 -> 映射本人开发的一个浏览器插件的TCP端口(主要用于实时数据的传输)

    192.168.0.10:38002 -> 映射本人开发的一个浏览器插件的另一个TCP端口

  以上所有这些都是开发部署好,并可正常访问运行的。

  小生想问的问题是以下的东西:

  现在老大提出了一个新的方案,本人才疏学浅,听得莫名奇妙,先大概说一下,可能不甚清楚,请教各位大侠替小生分析分析:

  老大说不使用路由器了,并且增加一个新的服务器(这个服务器在无锡,而我的网站与大华的监控设备在江西)。老大说写一个程序在服务器中,此程序的主要作用是对各种数据请求进行转发,比如,对服务器的1端口请求转发到上面的192.168.0.2:8090,然后将192.168.0.2:8090返回的数据再转发出去;对服务器的2端口请求转发到上面的192.168.0.2:37777,然后将192.168.0.2:37777返回的数据再转发出去,依次类推。他的意思是说此服务器作为一个中转站,所有对网站与监控的数据请求都必须经过此服务器进行如此这般。

  小生思量一二,发现此问题高深莫测。还请各位大侠发表一二观点,以解小生困惑!

  拜谢!

TigerSpringLiu的主页 TigerSpringLiu | 初学一级 | 园豆:196
提问于:2012-08-13 10:18
< >
分享
最佳答案
0

软件路由与硬件路由的区别。

收获园豆:20
Launcher | 高人七级 |园豆:45045 | 2012-08-13 10:53

您好,谢谢您的关注。能说说一些思路吗?

因为我想着这些涉及到Http、Tcp、Udp三方面的协议问题,我的编程是不是还要自己定义协议,大华也没有相关数据接口,可能我的理解也不是很明白,实在不知如何下手呢。

TigerSpringLiu | 园豆:196 (初学一级) | 2012-08-13 11:00

@TigerSpringLiu: 不用自己定协议,硬件路由器事实上就是单片机+软件实现,只是在做路由的时候是通过IP包来判断的。你现在要做的是软件路由(PC+软件),你也可以通过IP包来判断(比较困难),但你也能使用更简单的TCP,HTTP协议来判断。比如你在新服务器上监听HTTP 8090端口(映射到大华的Web服务页面——http://wwww.xxx.xxx:80/xxxx/xxxx),收到客户端请求后,你建立一个到大华WEB服务页面的HTTP连接,然后把客户端的请求原封不动的发送给大华WEB服务页面,得到响应后,再把大华的处理结果返回给客户端,以下是同步处理的伪码:

Response HandleRequest(Request req)

{

   Response rp = SyncSend("大华Web服务页面",req);

   return rp;

}

Launcher | 园豆:45045 (高人七级) | 2012-08-13 11:13

@程序猿.码农: 这样的开发大概需要多长时间(当然是对于我这种理解程度的),您有没有相关的资料可以提供一下下呢,示例程序,链接也可以。拜谢!!

TigerSpringLiu | 园豆:196 (初学一级) | 2012-08-13 11:34

@TigerSpringLiu: 这真不好说,估计1-2个月时间吧,HTTP的相对简单,TCP/UDP稍微复杂点(如果采用跟HTTP一样的基于消息的路由也不复杂)。示例的话,我能想到的就是WCF的基于消息的路由实现。

Launcher | 园豆:45045 (高人七级) | 2012-08-13 11:43

@程序猿.码农: 多谢指点!这样的开发周期肯定不行呢。

网上查了一下,有些软路由什么的:http://bbs.routerclub.com/forum.php,这些可以直接拿来用吗?

TigerSpringLiu | 园豆:196 (初学一级) | 2012-08-13 12:17

@TigerSpringLiu: 没使用过,不过你可以自己快速测试下。

Launcher | 园豆:45045 (高人七级) | 2012-08-13 13:02
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册