来由
由于 TCP 的特性,包括初次连接的握手、连接后窗口大小的调整、连接后分配的默认缓
存(128KB Linux),使得每一路 TCP 的开销都不小。因而如果一个应用的每次数据请求
都要开一路 TCP 连接到服务器的话,服务器的压力就会比较大,因而就产生可以将多路
请求合并到一路 TCP 上,这样就可以充分利用服务器资源,并能提高访问效率。这个技
术叫
TCP Multiplex
SSH 的应用
每一次 SSH 连接也是一个完整的 TCP 通信过程,通过在 ~/.ssh/config 里面的设置可
以针对某一路或者多路的连接进行归一化。
Host xxx
ControlPath ~/.ssh/controlmasters/%r@%h:%p
ControlMaster auto
ControlPersist 1h
Host 是要访问的主机域名(也可以是主机名),ControlPath 是 SSH 用来放置连接句柄
的位置,ControlMaster 选择默认连接模式,可以在连接前选择是否使用复用的连接,
ControlPersist 设置这个复用连接的生效时间。
ssh xxx
访问连接后退出,可以在进程列表里面发现多了一个常驻进程,比如
ssh: ~/.ssh/controlmasters/xxx:22 [mux]
而且在 ControlP