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

Wasm rfc 0001#2

Open
MikeCamel wants to merge 29 commits into
enarx-archive:mainfrom
MikeCamel:WASM-RFC-0001
Open

Wasm rfc 0001#2
MikeCamel wants to merge 29 commits into
enarx-archive:mainfrom
MikeCamel:WASM-RFC-0001

Conversation

@MikeCamel

Copy link
Copy Markdown
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

@steveej steveej left a comment

Copy link
Copy Markdown

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!

Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001
Comment thread rfc#0001 Outdated
Comment thread rfc#0001
Comment thread rfc#0001 Outdated
MikeCamel and others added 6 commits February 10, 2020 16:38
Minor wording change from Stefan.

Co-Authored-By: Stefan Junker <steveeJ@users.noreply.github.com>
Minor typo fix.

Co-Authored-By: Stefan Junker <steveeJ@users.noreply.github.com>

@lkatalin lkatalin left a comment

Copy link
Copy Markdown
Contributor

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.

Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
MikeCamel and others added 11 commits February 13, 2020 13:32
remove "it"

Co-Authored-By: Lily Sturmann <lkatalin@users.noreply.github.com>
Disambiguation.

Co-Authored-By: Lily Sturmann <lkatalin@users.noreply.github.com>
Disambiguation.

Co-Authored-By: Lily Sturmann <lkatalin@users.noreply.github.com>
Disambiguation.

Co-Authored-By: Lily Sturmann <lkatalin@users.noreply.github.com>
Disambiguation.

Co-Authored-By: Lily Sturmann <lkatalin@users.noreply.github.com>
Disambiguation.

Co-Authored-By: Lily Sturmann <lkatalin@users.noreply.github.com>
Disambiguation.

Co-Authored-By: Lily Sturmann <lkatalin@users.noreply.github.com>
Typo.

Co-Authored-By: Lily Sturmann <lkatalin@users.noreply.github.com>
Disambiguation.

Co-Authored-By: Lily Sturmann <lkatalin@users.noreply.github.com>
Disambiguation.

Co-Authored-By: Lily Sturmann <lkatalin@users.noreply.github.com>
@lkatalin lkatalin mentioned this pull request Feb 13, 2020
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001
Comment thread rfc#0001
Comment thread rfc#0001 Outdated
Comment thread rfc#0001
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
Comment thread rfc#0001 Outdated
@MikeCamel

Copy link
Copy Markdown
Contributor Author

Could you please update this RFC to address the comments so that we can do another round of review?

Done.

@lkatalin lkatalin left a comment

Copy link
Copy Markdown
Contributor

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.

Comment thread rfc#0001.md

## Motivation

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

Copy link
Copy Markdown
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 thread rfc#0001.md
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
Copy Markdown
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 thread rfc#0001.md
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
Copy Markdown
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 thread rfc#0001.md
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
Copy Markdown
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.

Comment thread rfc#0001.md
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
Copy Markdown
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 thread rfc#0001.md
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
Copy Markdown
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.

10 participants