ABCDEFGHIJKL
1
TypeFeatureDescriptionApplication scenariosPb on the Istiopriorityissuestatusassignee
2
Load balanceoriginal_dst
Forward the request based on the real destination address of the connection
In the Istio transparent hijacking scenario, if no matching listener found via the original_dst filter, it will directly forward the request by original_dst _lb
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/api/v2/cluster.pb.go
p0https://github.com/mosn/mosn/issues/982Done
3
WRRweight round robinLoad balancing according to machine weight
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/api/v2/cluster.pb.go
3/30/2020https://github.com/mosn/mosn/pull/1161Done
4
least req
Choose the machine with the lowest number of requests to forward
Load balancing according to the number of machine requests
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/api/v2/cluster.pb.go
p2https://github.com/mosn/mosn/issues/1054Done
5
Maglev
Consistent hash based on the request info
Keep the session
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/api/v2/cluster.pb.go
p2https://github.com/mosn/mosn/pull/1118Done
6
ProtocolWebSocket
Implement Websocket protocol upgrade
Websocket proxy forwardingp3
7
gRPCgRPC protocolgRPC protocolp3
8
UDP/QUICsupport UDP/QUICproxy forwards the UDP/QUIC requestp3https://github.com/mosn/mosn/issues/1062WIP
9
xDSxDS adapterAdapt to Pilot's xDS APIManage MOSN by Istiop0
https://github.com/mosn/mosn/tree/feature-istio_adapter
Done
10
Service governanceFault Injection
Injecting an delay or abort fault
Simulate the application of exception scenarios, can inject timeout, request abort, etc
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/config/filter/http/fault/v2/fault.pb.go
p0https://github.com/mosn/mosn/pull/1063Done
11
limit reqlimit requestlimiting protection
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/api/v2/ratelimit/ratelimit.pb.go
p1https://github.com/mosn/mosn/pull/1111Done
12
Passive health check
If the number of errors exceeds the threshold within the specified time range, and the machine will be considered unavailable within the specified time range
Passive health check, disable abnormal service
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/api/v2/cluster/outlier_detection.pb.go
p0https://github.com/mosn/mosn/issues/1055Done
13
Circuit Breaking
Limits on the maximum number of connections or requests or retries for cluster
Services to protect
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/api/v2/cluster/circuit_breaker.pb.go
p1https://github.com/mosn/mosn/issues/395Done
14
External Authorization
External Authorization
Request authentication based on external authentication service (that is, MOSN provides a registration framework for authentication service and supports multiple external authentication services)
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/config/filter/http/ext_authz/v2/ext_authz.pb.go
p2https://github.com/mosn/mosn/issues/1056
15
TraceingService observabilityService observabilityp1https://github.com/mosn/mosn/issues/1027Done
16
Traffic mirrortraffic mirrortraffic mirror
https://istio.io/latest/zh/docs/tasks/traffic-management/mirroring/
p1Done
17
Enhance rewrite
regex_rewrite
host_rewrite
Rewrite the request's uri and host etc.
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/api/v2/route/route_components.pb.go
p1https://github.com/mosn/mosn/issues/1191Done
18
Framework extensionlistener filter
Optimize the listener filter framework
Support listener filter registrationp1https://github.com/mosn/mosn/pull/1014Done
19
Strict DNS cluster type
Support STRICT_DNS type Cluster, load balancing through all A records of domain
Service discovery by DNS
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/api/v2/cluster.pb.go
p1https://github.com/mosn/mosn/pull/1149Done
20
Logical DNS cluster type
Dynamic resolve domain and using only one A record
Forward proxy by domain
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/api/v2/cluster.pb.go
p1https://github.com/mosn/mosn/pull/1005Done
21
Programmable capabilityLuaSupport LuaSupport Lua
https://github.com/envoyproxy/go-control-plane/blob/v0.9.4/envoy/config/filter/http/lua/v2/lua.pb.go
p2TBD
22
WasmSupport WasmSupport Wasmp2WIP
23
othersgzip filterSupport gzip response bodyGzipp2https://github.com/mosn/mosn/pull/1151Done
24
pilot-agent probe
Support serverinfo apiPilot agent health checkp0https://github.com/mosn/mosn/issues/1057Done
25
istio.stats filter
Metrics support custom Lables
Metrics support custom Lablesp1https://github.com/mosn/mosn/pull/1209Done
26
parameter extension
Parameter extensionCompatible with pilot starting mosnp0https://github.com/mosn/mosn/issues/1023Done
27
Istioimage build

Make proxyv2 image building operations universal

Build proxyv2 image for multiple data planes
p1https://github.com/istio/istio/issues/24457Done
28
test framework
Modify istio test framework, make one test cases could run any data plane.
One test framework could testing multiple data planesp1https://github.com/istio/istio/issues/24463WIP
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100