数据平面

概况

proxy监听三个端口:

  • private socket: 默认4140端口
  • public socket: 默认4143端口
  • control socket: 默认4190端口

proxy需要访问控制平面:

  • proxy api:默认端口为8086

业务流程

对于每个proxy,有inbound和outbound两个主要流程用于处理业务流量:

  • outbound流程

    outbound流程指服务实例通过proxy将请求发送到另外一个实例,即服务对外发送请求。

    此时proxy会通过private socket来接受请求,instance和private socket之间可以走tcp或者unix socket。

    private listener会将请求路由给内部具备服务发现功能的负载均衡器,然后发送给目标实例对应的proxy。

  • inbound流程

    inbound流程指服务实例通过proxy接收请求。

    此时proxy会通过public socket来接受请求,一般走TCP,有可能通过TLS加密。然后public listerner会将请求转发到本地的服务实例,一般走tcp或者unix socket。

控制流程

另外每个proxy都需要和控制平面交互:

  • TAP

    TAP通过访问proxy的control socket将代理规则下发到proxy。通讯协议是gRPC。

  • Proxy API

    proxy访问控制平面的proxy api。

    TBD: 访问proxy api的具体内容是?