Skip to content
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

fix(vmess): add h2c support for h2 and grpc transport #209

Merged
merged 2 commits into from
Dec 7, 2023

Conversation

greenhat616
Copy link
Collaborator

  • grpc with h2c: test ok as expect
  • h2 with h2c: small page can read as expect
  • huge page, like: https://www.aliyun.com or https://cloud.tencent.com could read really small - seems can't finish in a minute.
  • I haven't tested it in h2 with tls

It seems buffer is really small?
image
image
image

@ibigbug
Copy link
Member

ibigbug commented Dec 7, 2023

to claifiry - h2c is just HTTP/2 without TLS right?

@greenhat616
Copy link
Collaborator Author

to claifiry - h2c is just HTTP/2 without TLS right?

Yes, It is.

ref: https://httpd.apache.org/docs/2.4/howto/http2.html

h2c is HTTP/2 over TCP.

@ibigbug
Copy link
Member

ibigbug commented Dec 7, 2023

so the possible setups could be

  • vmess/trojan over h2c
  • vmess/trojan over grpc over h2c

?

@greenhat616
Copy link
Collaborator Author

greenhat616 commented Dec 7, 2023

so the possible setups could be

  • vmess/trojan over h2c
  • vmess/trojan over grpc over h2c

?

Yes.
ref: https://www.v2ray.com/chapter_02/transport/h2.html

V2Ray 4.20 中对服务端的TLS配置的强制条件移除,为了在特殊用途的分流部署环境中,由外部网关组件完成TLS层对话,V2Ray作为后端应用,网关和V2Ray间使用称为h2c的明文http/2进行通讯。

It also defined in grpc: https://xtls.github.io/config/transports/grpc.html

@ibigbug ibigbug enabled auto-merge (squash) December 7, 2023 14:15
@ibigbug
Copy link
Member

ibigbug commented Dec 7, 2023

thank you!

@ibigbug ibigbug merged commit eeb2da3 into Watfaq:master Dec 7, 2023
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants