可以压缩SQL Server网络流量吗?

Phi*_*rie 15 .net sql-server compression networking

我有一个.NET客户端需要通过WAN连接到远程SQL Server,是否可以压缩客户端和服务器之间的SQL流量?

我使用的是.NET 3.5和SQL Server 2005及更高版本.

t0m*_*13b 8

在这里查看connectionstrings.com的SQL Server 2008,数据库提供程序没有某种压缩方案......您可能需要在不同的端口上编写一个包装器,通过使用前端压缩数据,发送通过该端口的数据,从那里压缩它,将其发送到远程端点,解压缩,然后将其转发到服务器所在的真实tcp/ip端口.

通常SQL Server位于端口1433 ...

既然一张图片胜过千言万语......

+--------+                                             +--------+
| CLIENT |                                             | SERVER |
+--------+                                             +--------+
  Port 1234                                          Port 1433 <+--+
     |                                                             |
     |                                                             |
     +={Module}=    <=>    TX/RX    <=>   ={Module}=  -+-----------+

模块将在两端压缩/解压缩...

说实话,听起来会有工作因为防火墙的漏洞必须被打孔以允许压缩数据进出......扔进NAT/SNAT会让事情变得复杂......

看看我在Codeproject上写的这篇文章,该代码充当流量重定向器,可以很容易地修改为使用压缩/解压缩方案.

  • 哇...我希望sqlserver的一些人选择这个并创建一个sqlserver插件服务来接收/发送压缩数据,b)更新他们的驱动程序以发送/接收......对我来说似乎是低悬的果实...... . (2认同)

Joe*_*ord 7

正如其他人所说,SQL Server TDS协议没有内置压缩功能.值得一提的是,默认情况下也没有加密.要启用加密,您必须使用证书并在连接字符串中指定它.

解决这两个问题的最简单方法是打开启用加密和压缩的VPN隧道.简单的Microsoft PPTP解决了这两个问题,并且易于设置.