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

Customized point-to-point protocol [自定义点对点协议] #7

Closed
KangLin opened this issue Feb 7, 2021 · 3 comments
Closed

Customized point-to-point protocol [自定义点对点协议] #7

KangLin opened this issue Feb 7, 2021 · 3 comments
Labels

Comments

@KangLin
Copy link
Owner

KangLin commented Feb 7, 2021

Requirement:
Solve the problem of remote control of a host in one intranet through the Internet to control another host in another intranet.
solution:

  1. Point-to-point control
    1.1 Add a point-to-point connection channel to the original protocol
    1.1.1 Discovery of network connectivity: ICE can be used, currently there are the following two open source libraries to support, need to verify which is suitable
    1.1.1.2 ICE library:
    1.1.1.2.1 libnice: https://github.com/paullouisageneau/libjuice
    1.1.1.2.2 libdatachannel: https://github.com/paullouisageneau/libdatachannel
    1.1.2 Define the connection protocol: there is no ready-made connection protocol for remote control, you need to define it yourself.
  2. One-to-many control
    2.1 Add a point-to-point proxy service
    2.1.1 Establish a point-to-point connection channel, the same method as in 1.1.
    2.1.2 To complete the proxy agreement on the point-to-point channel, there are two ideas to determine which is appropriate:
    2.1.2.1 Existing agency agreement (SOCKES 5)
    2.1.2.2 Customized Agency Agreement

需求:
解决处于一个内网主机通过互连网控制另一个处于另一内网中主机远程控制的问题。
解决方案:

  1. 点对点控制
    1.1 在原有协议上增加点对点连接通道
    1.1.1 发现网络连通性:可使用 ICE ,目前有下面两种开源库支持,需要验证哪种合适
    1.1.1.2 ICE库:
    1.1.1.2.1 libnice:https://github.com/paullouisageneau/libjuice
    1.1.1.2.2 libdatachannel:https://github.com/paullouisageneau/libdatachannel
    1.1.2 定义建立连接协议:无现成的针对于远程控制的连接协议,需要自行定义。
  2. 一对多控制
    2.1 增加加一个点对点代理服务
    2.1.1 建立点对点连接通道,与 1.1 中的方法相同。
    2.1.2 在点对点通道上完成代理协议,有下面两种想法需要确定哪种合适:
    2.1.2.1 现有的代理协议(SOCKES 5)
    2.1.2.2 自定义代理协议
@KangLin KangLin changed the title 自定义点对点协议 Customized point-to-point protocol [自定义点对点协议] Feb 8, 2021
@KangLin
Copy link
Owner Author

KangLin commented Apr 10, 2021

  • 优点与缺点
    方法1,需要修改源码,以及原有通信层。
    方法2,如果原来程序支持SOCKET5协议,则不需要修改代码。

@KangLin
Copy link
Owner Author

KangLin commented May 19, 2021

方法2,已实现。详见:https://github.com/KangLin/RabbitProxyServer

@KangLin
Copy link
Owner Author

KangLin commented Nov 20, 2021

方法1,已实现。

@KangLin KangLin closed this as completed Nov 20, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant