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

Architecture documentation - master branch #98

Draft
wants to merge 24 commits into
base: master
Choose a base branch
from

Conversation

nieznanysprawiciel
Copy link
Contributor

No description provided.

dopiera and others added 24 commits September 18, 2024 18:44
The architecture is now:
* components
* deployment
* flows
…flows

Split technical view into three categories
* Bullet points; Defining property description

* Describe typical content of the Offer

* Checkpoint: Publishing Offers; negotiating (not complete)

* Negotiating: describe Agreement conclusion

* Example negotiations based on chosen-platform property

* Describe Resource allocation and Activity creation/destruction

* Add DebitNotes -> Invoice mermaid

* Describe termination; potential reasons

* Update DebitNotes description: DebitNotes payments triggering

* Describe sending Invoice and acceptance semantic

* Describe monitoring payments confirmation

* Improve bullet points grammar

* Simplified sequence diagram for activity from Provider perspective

* Sequence diagram for negotiations

* Apply simple and obvious review comments

* Move diagrams to chapters with more detailed description

* Refined simplified negotiations: get rid of yagna daemons

* Link topics; Review fixes

* Rework payments description (work in progress)

* Rework payments descritpion in 5th chapter

* Don't mention REST API and market module in chapter about publishing Offer

* Remove mentioning of Golem protocol

* Gramatically fix chapter about resources

* Remove market protocol reference from termination description

* Rephrase Activity chapter; mention where are Activity starting parameters comming from

* Describe payments confirmation

* Replace Golem Node with Core Network :(

* APply review fixes
* Add DebitNotes -> Invoice mermaid

* Describe termination; potential reasons

* Update DebitNotes description: DebitNotes payments triggering

* Describe sending Invoice and acceptance semantic

* Describe monitoring payments confirmation

* Simplified sequence diagram for activity from Provider perspective

* Sequence diagram for negotiations

* Apply simple and obvious review comments

* Move diagrams to chapters with more detailed description

* Refined simplified negotiations: get rid of yagna daemons

* Link topics; Review fixes

* Rework payments description (work in progress)

* Rework payments descritpion in 5th chapter

* Remove market protocol reference from termination description

* Describe payments confirmation

* Replace Golem Node with Core Network :(

* Offer/Demand specification copy introduction from previous docs

* Property naming, types etc

* Properties examples; flattened vs nested form

* Value-less properties

* Add constraints basic description

* Describe constraints operators

* Demand/Offer matching

* Pros and cons of using constraints against postponing decision to negotiations

* Add example of constraint expression different operators

* Market protocols; Describe subnet (work in progress)

* Represent Offer/Demnad as table isntead of mermaid

* Decribe negotiable properties

* Mention mid-agreement payments and link to specification

* Describe capabilities based approach; GPU as an example

* ExeUnit progress events as an example of capability based approach

* Problem with capabilities based approach

* Backward compatiblity of negotiation protocols

* Add payment procotol as an example of solving compatiblity issues

* Describe potential problems with protocol clashes

* Add links; Fixes after first reading

* Description: How to determine market protocol specification conformance

* Describe: where are specifications

* Post-revase fixes

* Apply review changes - part 1

* Review fixes: Language requirements

* Language introduction

* Reverse changes outside of this PR scope

* Another round of review fixes
* Introduction chapter to Net module

* Mermaid visualalizing net interactions

* Describe network addressing and translation

* Describe broadcasting

* Describe how identities are handled

* Improve chapter about network identitfication; add link to identity

* Describe different net channels

* List channels prefixes; other review fixes

* Describe net responsiblities

* Rephrase channels to transport types

* New round of review fixes

* Remove old version

* Improved description of transfer transport type

* Remove opaque
Add Payment Components to architecture snapshot
* Offers propagation: basic assumptions; Bullet points for further work

* Mermaids for Offer propagation

* Attempt to fix flowchart arrows

* Improve broadcasting mermaids descriptions

* Describe requirements for neighborhood functions

* Subchapters about hybrid/central net difference in context of market; Description of broadcast triggers

* Describe mechanism reducing garbase on market

* Apply spliest review fixes

* Chnage wording of broadcasts part 1

* Chnage fragment about global and local broadcast

* Add paragraph about storing Offers

* Remove invalidated neighborhood

* Chnage broadcast naming semantic
* Describe network addressing and translation

* Describe broadcasting

* Describe how identities are handled

* Improve chapter about network identitfication; add link to identity

* Introduction to hybrid net

* Describe relay server

* Diagram: connecting to relay server

* Describe Challenge and Public IP check

* IP check: add alternative: timeout when packet is drpped

* Describe p2p connections between Nodes

* Describe p2p handshake

* Describe Forwarding network traffic and virtual TCP

* Describe how different channels are implemented in Hybrid Net

* Describe broadcasts to neighborhood

* Apply trivial review comments

* Raw description of neighborhood

* Improve neighborhood chapter

* Apply trivial review fixes

* Describe Node idenitification; Start describing encryption

* Apply distinctions between connection and session; Broadcastign terminology

* Describe key dervation and symmetric encryption

* Remove triling spaces

* Rephrase broadcasting description; add example

* Explicite mention that transport types use underying session

* Introduction word to neighhood concept

* Apply correct broadcast naming semantic

* Remove duplicates after rebase

* Make transfer transport type description more precise
The description only lists the large ones.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants