changkun / changkun/occamy

Redesign protocol instructions

Open
#3 0 comments 0 reactions 1 assignee Claimed by @changkun View on GitHub
enhancement NeedsInvestigation
Dominant language
Go
Stars
319
Forks
52
PR merge metrics
No merged PRs in 30d

Description

**Is your feature request related to a problem? Please describe.**
The Guacamole protocol was designed for long connection over TCP. `sync` and `nop` instructions intend to pause the connection without breakfast. Nevertheless, during the connection IO, tons of `sync` and `nop` meaningless communication are made between client and server, which slows the server performance. Besides, Occamy involves WebSocket as a default option implicitly keep the connection alive. Therefore the only necessary instructions are control and renderer instructions.

**Describe the solution you'd like**
We would like to propose removing all unnecessary instructions and only kept the control and renderer instructions. This proposal requires large reimplementation of `libguac`, it is unclear
that this level of refactoring involves how many of `cgo` calls, which may slow the server due to Go runtime. An investigation is required absolutely.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.