我正在努力解决以下问题:
假设一台计算机具有中低 CPU/RAM 功能,并且网络连接非常差。差在这里意味着 10-15 kb/s。我想做些事情来提高这台机器的可用性。如果解决方案适用于 HTTP(s) 协议,我会非常高兴,但如果它适用于 TCP/IP 层,那显然会是一个加分项。我们正在讨论 EDGE 技术,据我所知,调制解调器不使用基于硬件的加速。目前我有以下 3 个想法:(
如果您有完全不同的想法,请与我分享)
- 使用某种代理
- 使用 VPN
- Opera Turbo
选项 1:
我有一台带宽大、24 小时可用的服务器。我认为,一定存在一个现成的解决方案(可能是代理),在这种情况下可能会有所帮助。通过远程计算机路由流量,并对文本(可能还有图像)进行强力压缩,这将是一个微不足道但非常有用的帮助。但是我找不到这样的代理。
问题:您知道这样的代理吗?或者任何其他类似的程序?
选项 2:
我隐约记得,VPN 可以在加密之前使用压缩。我的想法是在客户端可以连接的远程服务器上使用面向带宽的 VPN(高压缩率、低加密率)。
问:如果这是一个完全愚蠢的想法,请纠正我。如果它可行,请给我提示,我该如何实现它。
选项 3:
我从我的一位同事那里得到了这个提示。它只适用于 HTTP,但没问题。我现在无法尝试,但这似乎是一个非常简单有效的解决方案。
问:这真的有效吗?有没有类似这种独立于浏览器的解决方案?
附加信息:
- Windows XP
- 目前我正在使用 Firefox
- 安全并不是一个重要的方面
答案1
您的问题更加深刻:GPRS 和 EDGE 是 TCP 连接的艰难基础,因为传输介质的不可靠性以及数据包不断变化且往返时间极长。传输速度会非常慢,这并不是因为 EDGE 速度慢,而是因为内部 TCP 计数器会反复超时,重新传输会被多次触发,从而填满狭窄的链路并减少传输窗口。之前已经有一些科学研究处理过这个主题。其中一项努力导致了一篇剑桥大学论文(这是一篇有趣的文章)以及 GPRSWeb 代理软件的实现,该软件尚未向公众发布。如果您需要有关此主题的更多信息,您可能需要联系作者或教职员工。
Opera Turbo 确实使用了上述论文中描述的一些技术,而且效果很好,但如果你正在寻找一个与浏览器无关的解决方案,请查看Ziproxy:
Ziproxy 是一个转发(非缓存)压缩 HTTP 代理服务器。基本上,它通过将图像转换为低质量的 JPEG 或 JPEG 2000 来压缩图像,并压缩(gzip)HTML 和其他文本类数据。它还提供其他功能,例如:HTML/JS/CSS 优化、抢占式主机名解析、透明代理、IP ToS 标记(QoS)、广告拦截器、详细日志记录等。
但它不能解决 GPRS 协议特定的问题。
我不会使用启用了压缩的 VPN 链接 - 它可能不会帮助您解决问题,因为传输的数据大多数时候已经被压缩:大多数网站管理员都使用 GZIP 压缩 HTML 和 CSS,并且图像数据也被压缩,并且无法使用无损方法重新压缩 - 例如,无需调整大小和/或转码。
答案2
一种选择是使用具有压缩功能的VPN。
http://openvpn.net是一个非常不错的选择,如果我没记错的话,它使用 lzo 作为压缩,我相信你可以获得高达 20% 的速度(这可能因很多因素而异)。
压缩会使吞吐量突发并稍微增加延迟,在某些情况下您可能需要调整窗口配置。
它确实有适用于 Windows 和 Linux 的客户端版本,您可以将其设置为服务器、服务和/或仅从 Windows 启动,并将其设为默认网关。
编辑:
根据该解决方案的用途,您甚至可以在 VPN 服务器上设置一个带有缓存解决方案 + 压缩的 squid。