-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
extension: added generic proxy network filter #22826
Conversation
Signed-off-by: wbpcode <comems@msn.com>
Signed-off-by: wbpcode <comems@msn.com>
Signed-off-by: wbpcode <comems@msn.com>
Signed-off-by: wbpcode <wbphub@live.com>
Signed-off-by: wbpcode <wbphub@live.com>
Signed-off-by: wbpcode <wbphub@live.com>
Signed-off-by: wbpcode <comems@msn.com>
Signed-off-by: wbpcode <comems@msn.com>
Signed-off-by: wbpcode <wbphub@live.com>
Signed-off-by: wbpcode <wbphub@live.com>
…protocol-impl-2022
CC @envoyproxy/api-shepherds: Your approval is needed for changes made to |
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm api
@wbpcode mark this ready for review when it's no longer WIP and you can request reviewer yourself :) |
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
/retest |
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
cc @mattklein123 Hi, this PR is ready for review. Could you take a look when you have free time? Thanks. |
Because it's long time after last dicussion. Here is some simple context about the extention. Why we need this extensions?Third-party RPC or private protocol support is a common requirement for users of Envoy/Mesh. However it's very complex to developed a new Envoy extension to proxy a third-party RPC or private protocol for now. About this extensionThe design of this extension is come from many others contribution. The initial idea of implement generic proxy in the Envoy is come from @zhaohuabing (aeraki-mesh). The xds matcher based route table is come from @htuch. The async codec API is come from @rojkov. And now, we finally have a implementation for the Envoy community. (The aeraki-mesh will keep their extension because by this way they can add new features more quickly and freely. So we renamed this extension to simple Next step of this extension?
|
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
…protocol-impl-2022
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
…protocol-impl-2022
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
@wbpcode this is too much code for me to reasonably review. I'm not sure the best way of moving this forward. I think rewriting Dubbo to use this would give me a lot more confidence. How would you suggest incrementally moving this forward? |
@mattklein123 As I originally planned, after this PR is merged, I would first move dubbo decoder/encoder of current dubbo proxy to With luck, Dubbo will then be able to use the new extension as a proxy |
Yeah, this is a super big PR that hard to review. 🤣 But this extension still be marked as WIP, so we still have chance to correct it in the future if there are something wrong. IMO, the core should be the message API and codec API, you can check these code in the |
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
…protocol-impl-2022
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
Signed-off-by: wbpcode <wangbaiping@corp.netease.com>
This extension was moved to contrib as our offline discussion. @mattklein123 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. I'm OK merging this into contrib. Once Dubbo has been rewritten to use this and vetted in production I think we can deprecate/remove the existing Dubbo filter and move this all into core. Thank you!
Commit Message: extension: added generic proxy framework
Additional Description:
This is very long story. Please check #18209 for more detailed discussions and background.
And there is the design proposol https://docs.google.com/document/d/1y_ALyjGp_H1_TRrrRxZxnqENISqeZI6eLn71FAFsZPk/edit#heading=h.a0godkb0g8bc
for why we want the extension.
Due to my personal reasons, I consistently did not finish the final testing of this extension, so it was delayed until now.
I picked this up finally and will complete it in this time.
It's sad the @rojkov cannot sponsor it. So I will self sponsor this extension.
Risk Level: Low. New extension.
Testing: Add.
Docs Changes: Wait.
Release Notes: Wait.
Platform Specific Features: Wait.