mosn
mosn copied to clipboard
The Cloud-Native Network Proxy Platform
it seems currently the client has no control of the cipher suite order, with extra ciphers being appended for example: https://github.com/mosn/mosn/blob/a6f072bd2d46be6489e8a6bb8a7aedff91b6a5d4/pkg/mtls/crypto/tls/handshake_client.go#L144 is it possible for a client to set a...
### Issues associated with this PR Pipebuffer performance is low,change to Bufferchain to improve throughput
### Describe the bug when concurrent call reconnect() sometimes closeADSStreamClient() while panic on c.StreamClient.Conn.Close() sometimes will create more than 1 grpc conn,and sendThread hold grpc connection 1 while receiveThread hold...
## mosn云边互联 在边缘计算场景中,边缘节点常位于本地专有网络中,这虽然保证了边缘节点的安全,但云端的节点无法主动访问边缘节点,常用解法是在云端和边缘节点之间建立方向通道。  云端节点部署MOSN作为Server进行转发请求到边缘节点(后文统称为server),边缘端部署MOSN Client作为agent,后文统称为agent。 ### 基本流程 1. agent在启动时主动连接远端的server。 2. server listener接受到连接时,将该连接加入到对应cluster。 3. 云侧请求统一经过server出口,根据对应cluster拿到反向连接,进行转发数据。 ### 细节 agent启动时扫描静态配置文件中所有cluster文件,如果有标志需要反向通道的cluster,则立即主动建立连接而非懒加载模式。增加`ConnectAtStartup`字段表示加载cluster时即创建对应的连接。 ``` type Cluster struct { ... ConnectAtStartup bool } ``` server侧通过配置不同的listener来接受agent连接和云端fontend的连接, 接受到agent连接时,通过`ReadFilter`的`OnNewConnection`方法将连接加入到对应的cluster中的连接池map中。...
### Your question Describe your question clearly. Type Reason Age From Message ---- ------ ---- ---- ------- Warning Unhealthy 3m49s (x7643 over 4h18m) kubelet, linuxtestacb9 Readiness probe failed: Get http://10.244.116.230:15021/healthz/ready:...
### Your question Describe your question clearly. load config from : /etc/istio/proxy/envoy-rev0.json json unmarshal config failed ### Environment ``` [root@linuxtestacb9 ~]# kubectl version Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.2", GitCommit:"52c56ce7a8272c798dbc29846288d7cd9fbae032", GitTreeState:"clean",...
MOSN通过networkfilter的方式支持了grpc,详细见#1621 , 简单来说就是mosn 复用4层的能力,然后封装一个grpc server可以识别的listener和conn,复用grpc server的代码。 这里预期是可以复用mosn 热升级的能力的。 但是目前的实现并不完善 按照原来mosn http热升级的原理,在新mosn启动以后,mosn完成迁移是需要通知客户端使用类似短连接的方式来处理当前连接的(如goaway),但是目前对于grpc server的conn 并没有触发类似的行为,客户端可能还会复用旧连接,这样热升级就可能会对业务有损。 需要在mosn触发热升级时,触发旧mosn的grpc server的优雅关闭的能力,让客户端断开旧连接,建立新连接
背景介绍 ====== MOSN 在 Service Mesh 领域作为东西向 RPC 服务治理网络转发组件已经在社区很多公司都得到了一定实践,为了进一步节省研发运维等相关成本,目前业界也有很多公司在考虑把东西向和南北向数据转发面统一。MOSN 在作为东西 Sidecar 场景当前性能足以,但在作为南北向网关会有一定性能上限(比如单机百万级长连接、高并发等场景)。 解决方案(草案) ====== 为 MOSN 在 Network 层做一个高性能的网络扩展层,使其可以和高性能网络库结合使用(如Nginx、Envoy、OpenResty 等),使其底层网络具备高性能处理的同时,又能复用 MOSN Stream Filter 等能力。  如上图所示,MOSN 通过扩展一个标准的 GOHPNF(Golang On High...
### The New Feature add router match samples. ``` type RouterMatch struct { Prefix string `json:"prefix,omitempty"` // Match request's Path with Prefix Comparing Path string `json:"path,omitempty"` // Match request's Path...
我想打开cluster主动健康检查,目前mosn只支持静态cluster配置吗? 从debug看,istio下发的cds中定义的healthcheck和 mosn中cluster对象里的healthcheck是不匹配的,没有protocol,serviceName,mosn在创建cluster时,如果没有serviceName,我看也不会启动健康检查. 另外协议上的话,dubbo目前应该不支持吧.