什么是 ALG?

ALG 即应用程序层网关 (Application Layer Gateway),它是管理 SIP(Session Initiation Protocol,会话发起协议)和 FTP(File Transfer Protocol,文件传输协议)等特定应用程序协议的软件组件。ALG 相当于 Internet 与可理解应用程序协议的应用程序服务器之间的中介。ALG 显示为端点服务器,用于控制是允许还是拒绝流向应用程序服务器的流量。其方法是截取并分析指定流量,分配资源,以及定义动态政策以允许流量通过网关。

Application Layer Gateway Diagram

ALG 具有以下功能:

  • 允许客户端应用程序使用动态 TCP/UDP 端口与服务器应用程序使用的已知端口通信,即使防火墙配置允许流量仅通过有限数量的端口亦如此。如果没有 ALG,端口可能会受到拦截,或者网络管理员需要在防火墙中打开大量端口,这样会使网络变得不安全而且使这些端口容易受到攻击。
  • 识别应用程序特定的命令并通过命令提供安全的控制。
  • 可转换在应用程序负载中找到的网络层地址信息。
  • 同步主机之间的多个流或会话。