-
Notifications
You must be signed in to change notification settings - Fork 58
[r2cn] 去中心化的 Relay 基础功能 #841
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
Labels
decentralized
enhancement
New feature or request
r2cn
r2cn-30
rust
Pull requests that update Rust code
已认领
Milestone
Comments
任务创建成功。 |
/request-assign |
认领失败:你已经存在认领中的任务了。 |
/request-assign |
认领成功:等待导师审核,请及时联系导师进行审核。 |
/intern-approve |
认领审核成功:已将该任务分配给学生。 |
/request-complete |
请求完成成功:等待导师进行完成审核。 |
/intern-done |
操作成功:任务关闭并发放积分给学生。 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
decentralized
enhancement
New feature or request
r2cn
r2cn-30
rust
Pull requests that update Rust code
已认领
Uh oh!
There was an error while loading. Please reload this page.
[任务] 去中心化的 Relay 基础功能
[任务分值] 30 分
[背景描述] 为了减少对中心化
Git
服务的依赖,同时为了提供更加开放自由的开源协作环境,使用QUIC
协议来为Mega
构建去中心化网络,以支持分布式的仓库分享和消息传递等功能。QUIC
协议是基于UDP
的可靠传输协议,具有低延迟和高安全的特点,是HTTP/3
的底层协议。Mega
将基于QUIC
协议,并采用Relay
和Client
的模型来构建去中心化网络,Client
是本地Mega
服务,Relay
是一种特殊Client
,具备Client
所有功能的同时,会拥有 节点发现 、连接管理 、消息转发 等服务,为Client
提供去中心化接入支持。[需求描述] 使用
quinn
和tokio
库来实现Relay
的功能:ID
和Connection
的对应关系数据结构;Connection
;tokio
库实现消息在线程之间传递;client
封装接口;[代码标准]
Signed-off-by
和 使用GPG
签名,即提交代码时(使用git commit
命令时)至少使用-s -S
两个参数,参考 Contributing Guide;GitHub Actions
自动化测试,提交 PR 后请关注GitHub Actions
结果;[PR 提交地址] 提交到 mega 仓库的
main
分支 `` 目录;[开发指导]
[导师及邮箱] 请申请此题目的同学使用邮件联系导师,或加入到 R2CN Discord 后在
#p-meta
频道和导师交流。[备注]
The text was updated successfully, but these errors were encountered: