Updated faketcp方案和常见的udp over tcp、udp in tcp方案的对比 (markdown)

wangyu- 2018-02-22 02:09:26 +08:00
parent 6d7373cd32
commit 98aa6538d3

@ -1,4 +1,4 @@
#### udp over tcp、udp in tcp方案
### udp over tcp、udp in tcp方案
udp over tcp、udp in tcp说的是一回事儿是把udp协议封装到tcp协议里发送。 常见的有tcp模式的openvpn还有$$R的tcp in udp模式。 这种方式是把udp数据包打包封装后用tcp协议来发送。 本质上是发送时把udp转换成tcp然后在接收方恢复出来。
@ -10,11 +10,11 @@ udp in tcp方案的常见特点
2. 如果带宽充足udp in tcp方案也会工作得很好如果udp数据发送的数据一但超过了tcp的带宽连接就会卡住一段时间有时候会造成超过10秒的时间无法发送数据。可靠传输、拥塞控制造成的副作用
#### faketcp方案
### faketcp方案
用raw socket给udp协议直接加上伪造的tcp包头把udp伪装成tcp本质上还是udp不需要经过系统的tcp协议栈所以不会引入上述的问题。但是伪装成tcp的udp流量可以骗过运营商的防火墙获得更好的速度。
#### 如何自己验证
### 如何自己验证
在一条有一定丢包的网络上同时建立一条tcp和udp的openvpn连接。
@ -22,7 +22,7 @@ udp in tcp方案的常见特点
2. 通过iperf3测速可以发现tcp的openvpn速度要低很多而且波动大。 如果用ipef3 -P10 10个线程去压经过几秒以后tcp模式的openvpn速度会跌到0而且10秒内都无法恢复而且tcp模式的openvpn可能会直接掉线。
#### 回答一些常见误解
### 回答一些常见误解
Q : 既然OpenVPN本身就支持TCP模式那么使用udp2raw +OpenVPN(udp模式)还有什么用直接使用OpenVPN(tcp模式)不就可以了吗?