产品背景知识:网关

网关简介

网关是现代分布式系统中不可或缺的组件,负责连接不同网络、服务或系统,实现流量管理、安全防护、协议转换等功能。根据流量方向的不同,网关处理的流量主要分为南北向流量(North-South Traffic)和东西向流量(East-West Traffic)。此外,随着应用架构的演进,网关的功能也在不断扩展,从传统的流量网关到现代的云原生网关,逐步实现了更高层次的集成与优化。

一、流量

(一)南北向流量(North-South Traffic)

南北向流量通常指的是数据中心与外部用户或设备之间的通信流量。这种流量跨越了网络边界,例如防火墙、负载均衡器等安全设备。南北向流量的特点是对延迟和安全性敏感,因此需要通过负载均衡、CDN、防火墙等技术进行优化。

  • 方向
    • 入向(南行):外部用户访问数据中心,例如用户通过浏览器访问网站。
    • 出向(北行):数据中心向外部发送数据,例如服务器响应用户的请求。
  • 特点
    • 流量跨越网络边界,需要经过防火墙、负载均衡器等设备。
    • 对延迟和安全性敏感,需要优化用户体验并保障数据安全。
    • 常见的优化技术包括全球负载均衡(Global Load Balancing)、Web应用防火墙(WAF)、SSL卸载等。
  • 应用场景
    • Web服务:例如用户访问网站或应用程序。
    • API接口:外部系统通过API调用内部服务。
    • 用户下载/上传:例如文件上传、视频流等。

(二)东西向流量(East-West Traffic)

东西向流量指的是数据中心内部服务器、服务之间的通信流量。这种流量通常是横向的,例如微服务之间的调用、数据库同步等。东西向流量的特点是规模大、对带宽和实时性要求高,因此依赖于内部网络架构(如SDN、Overlay网络)进行优化。

  • 方向:数据中心内部组件之间的交互,例如微服务通信、数据库同步。
  • 特点
    • 流量规模大,通常占数据中心总流量的70%以上。
    • 对带宽和低延迟要求高,依赖内部网络架构(如SDN、Overlay网络)。
    • 需要高效的流量管理技术,例如服务网格(Service Mesh)、分布式存储网络等。
  • 应用场景
    • 分布式系统:例如微服务架构中的服务间通信。
    • 容器集群:例如Kubernetes集群中的Pod间通信。
    • 数据库复制:例如主从数据库之间的数据同步。

(三)核心区别

维度南北向流量东西向流量
流向数据中心与外部数据中心内部
关键设备防火墙、负载均衡、CDN交换机、SDN、服务网格
优化重点延迟、安全、用户体验带宽、低延迟、服务协同
典型场景用户访问Web、API调用微服务通信、数据同步

(四)技术方案

  • 南北向流量
    • 全局负载均衡(如DNS轮询、 GSLB)。
    • Web应用防火墙(WAF)。
    • SSL卸载(SSL Offloading)。
    • CDN加速。
  • 东西向流量
    • 软件定义网络(SDN)。
    • 服务网格(如Istio、Linkerd)。
    • 分布式存储网络(如Ceph、GlusterFS)。

(五)总结

南北向流量关注的是内外互通与用户体验,需要保障安全性和延迟。
东西向流量侧重于内部高效协同,需要优化带宽和实时性。
两者共同保障了现代分布式系统的性能与可靠性。

二、传统网关

传统网关通常分为两大类:流量网关与业务网关。

请添加图片描述

(一)流量网关

流量网关主要提供全局性的、与后端业务无关的策略配置。其功能包括:

  • 负载均衡:将流量分发到多个后端服务器,提高系统可用性和性能。
  • 安全防护:例如防火墙、IPS/IDS、WAF等,保护系统免受外部攻击。
  • 协议转换:例如HTTP到TCP/UDP的转换,支持不同协议的通信。
  • 流量监控:实时监控流量状态,提供日志记录和告警功能。

(二)业务网关

业务网关主要提供独立业务域级别的、与后端业务紧耦合的策略配置。其功能包括:

  • 统一访问入口:降低服务受攻击面,简化外部访问路径。
  • 跨域解决方案:处理跨域请求(CORS),简化开发流程。
  • 统一日志与监控:便于统一管理和分析日志。
  • 权限认证支持:增强安全性,例如OAuth、JWT等认证方式。
  • 微服务限流:保护微服务免受过载或雪崩效应的影响。

(三)微服务网关

随着应用架构从单体架构演进到分布式微服务架构,业务网关也有了新的叫法——微服务网关。微服务网关的核心作用在于:

  • 统一访问入口:将外部请求统一接入,降低服务暴露的风险。
  • 服务发现与路由:根据请求内容动态路由到目标服务。
  • 流量控制:通过限流、熔断等机制保护后端服务。
  • 安全防护:集成WAF、身份认证、授权等安全功能。
  • 日志与监控:提供统一的日志收集和监控能力,便于问题排查。

(四)传统网关的优缺点

  • 优点
    • 功能明确,分工清晰(流量网关与业务网关分离)。
    • 适用于单体架构或简单分布式架构。
    • 配置灵活,支持多种协议和策略。
  • 缺点
    • 网关数量多,运维复杂。
    • 功能耦合性高,难以扩展。
    • 对微服务架构的支持不足,难以满足复杂场景需求。

三、新网关——云原生网关

在容器和Kubernetes(K8s)主导的云原生时代,Ingress成为K8s生态中的网关标准,赋予了网关新的使命,使得流量网关、微服务网关和安全网关的集成成为可能。云原生网关通过与容器编排平台的深度集成,实现了更高的灵活性和扩展性。

请添加图片描述

(一)Ingress与Kubernetes

Ingress是Kubernetes中用于管理外部访问集群内服务的API资源,其核心功能包括:

  • 流量路由:根据域名、路径等规则将流量路由到目标服务。
  • 负载均衡:支持多种负载均衡算法(如轮询、加权轮询、IP哈希等)。
  • SSL/TLS管理:支持SSL证书的自动颁发与管理(如通过Cert-Manager)。
  • 安全防护:集成WAF、身份认证等安全功能。

(二)Higress 网关

Higress是一款高性能、高集成的云原生网关,其核心目标是简化网关的运维复杂度并提升性能。Higress通过内置WAF模块,实现了流量网关、微服务网关和安全网关的三合一能力。

  • 核心功能
    • WAF防护:内置WAF模块,提供实时的攻击检测与防护。
    • 流量分发:支持多种流量分发策略,例如基于路径、域名、权重等。
    • 微服务治理:支持限流、熔断、重试等微服务治理功能。
    • 可观测性:提供详细的流量日志、指标和tracing能力。
    • 灰度发布:支持A/B测试、金丝雀发布等灰度发布策略。
  • 优势
    • 高集成性:将流量网关、微服务网关和安全网关的功能集成到一个组件中。
    • 高性能:通过优化协议栈和硬件加速,提升处理能力。
    • 易用性:与Kubernetes深度集成,支持declarative的配置方式。
    • 可观测性:提供丰富的监控和日志能力,便于问题排查。

(三)云原生网关的优势

  • 统一入口:将流量网关、微服务网关和安全网关的功能集成,减少网关数量。
  • 弹性扩展:支持水平扩展,满足高并发场景的需求。
  • 自动化运维:与Kubernetes深度集成,支持自动化部署、扩缩容和升级。
  • 高性能:通过优化协议栈和硬件加速,提升处理能力。
  • 安全性:内置WAF、身份认证等安全功能,保障数据安全。

(四)云原生网关的未来发展趋势

  • 智能化:通过AI/ML技术实现流量预测、异常检测等智能化功能。
  • 边缘化:支持边缘计算场景,实现本地化的流量处理。
  • 多云支持:支持多云和混合云场景,实现统一的流量管理。
  • 可观测性增强:提供更丰富的监控和日志能力,提升运维效率。

四、总结

  • 传统网关:分为流量网关和业务网关,分别处理全局策略和业务域策略。适用于单体架构或简单分布式架构。
  • 微服务网关:在分布式架构中提供统一入口、跨域、日志、认证和限流功能,适用于微服务架构。
  • 云原生网关:如Higress,将流量网关、微服务网关和安全网关集成,简化运维并提升性能。适用于容器化和Kubernetes主导的云原生架构。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值