Skip to content
This repository has been archived by the owner on Nov 10, 2022. It is now read-only.

Wasm rfc 0001 #2

Open
wants to merge 29 commits into
base: main
Choose a base branch
from
Open

Conversation

MikeCamel
Copy link
Contributor

Initial draft of workload loading RFC.
Created two new issues based on the work: #227, #228.

Added line breaks: what are the kids using as default line length these days?

Addresses issue #140.

@MikeCamel MikeCamel added documentation Improvements or additions to documentation enhancement New feature or request labels Feb 10, 2020
Copy link

@steveej steveej left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for taking the time to write this up!

rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
Copy link
Contributor

@lkatalin lkatalin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggested a number of somewhat nitpicky changes here. Feel free to disregard anything I may have misunderstood. Most of the changes requested center around:

  • Eliminating the use of "it" as a pronoun. The description is very technical and I think it should be painfully clear which components are doing what. Actually, most of these changes are about establishing painful clarity in all sentences.
  • Being more detailed about where the WPEK comes from, which components are privvy to it, etc. There are some details omitted that would raise questions to an outside reader, IMO. The reader should know exactly what this key is so they understand why the channel is secure.

rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
MikeCamel and others added 11 commits February 13, 2020 13:32
remove "it"

Co-Authored-By: Lily Sturmann <[email protected]>
Disambiguation.

Co-Authored-By: Lily Sturmann <[email protected]>
Disambiguation.

Co-Authored-By: Lily Sturmann <[email protected]>
Disambiguation.

Co-Authored-By: Lily Sturmann <[email protected]>
Disambiguation.

Co-Authored-By: Lily Sturmann <[email protected]>
Disambiguation.

Co-Authored-By: Lily Sturmann <[email protected]>
Disambiguation.

Co-Authored-By: Lily Sturmann <[email protected]>
Typo.

Co-Authored-By: Lily Sturmann <[email protected]>
Disambiguation.

Co-Authored-By: Lily Sturmann <[email protected]>
Disambiguation.

Co-Authored-By: Lily Sturmann <[email protected]>
@lkatalin lkatalin mentioned this pull request Feb 13, 2020
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
rfc#0001 Outdated Show resolved Hide resolved
Copy link
Contributor

@lkatalin lkatalin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I actually think this is pretty close. There are a few formatting errors and I had a question about one of the rejected proposals.


## Motivation

Once a Keep is prepared with shim, Wasm runtime, etc., the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Once a Keep is prepared with shim, Wasm runtime, etc., the
Once a Keep is prepared with shim and Wasm runtime, the

The "etc." leaves me feeling confused about what else is in there.

Comment on lines +23 to +24
A Keep is the fundamental runtime component of Enarx: a TEE instance
+ Enarx runtime pieces, including WebAssembly and WASI layers. In
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is rendered strangely in markdown. "Enarx runtime pieces" becomes a bullet point.

Comment on lines +81 to +83
If a port has been pre-established, between the Enarx Client Agent and
the Keep, then the Keep MUST listen on this port,
and MAY also listen on the well-known port.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why would the Keep listen on both ports?

Comment on lines +98 to +99
This RFC arose from this issue: [Workload (WASM binary) loading
- connection termination](https://github.com/enarx/enarx/issues/140)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This also renders strangely in markdown.

sends to Keep via a listening agent in the Keep. Keep decrypts, loads
and runs. This maintains the host agent's status as a proxy between
other components, and doesn't make further assumptions about routing
which is made by 2.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's "2"?

Comment on lines +122 to +125
- the host agent should act as an untrusted proxy wherever possible,
and not include process logic.
- maintaining multiple versions of host agents is complex from
a deployment point of view.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't actually understand why process logic is required for the host agent to be a proxy in this way, or why multiple versions of the host agent would be necessary with this design.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants