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

User Story Edge Cloud Family #265

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

User Story Edge Cloud Family #265

wants to merge 2 commits into from

Conversation

crissancas
Copy link
Collaborator

@crissancas crissancas commented Jun 13, 2024

This contribution intends to provide an overview about how to use the four APIs(SED,TI,AED,EAM).

What type of PR is this?

  • documentation

What this PR does / why we need it:

to provide an overview about how to use the four APIs(SED,TI,AED,EAM)

Which issue(s) this PR fixes:

Fixes #206

Special notes for reviewers:

Changelog input

 release-note

Additional documentation

This contribution intends to provide an overview about how to use the four APIs(SED,TI,AED,EAM).
Copy link

github-actions bot commented Jun 13, 2024

🦙 MegaLinter status: ✅ SUCCESS

Descriptor Linter Files Fixed Errors Elapsed time
✅ ACTION actionlint 2 0 0.03s
✅ JSON eslint-plugin-jsonc 1 0 0 1.3s
✅ JSON jsonlint 1 0 0.18s
✅ JSON prettier 1 1 0 0.96s
✅ JSON v8r 1 0 2.21s
✅ OPENAPI spectral 3 0 6.07s
✅ REPOSITORY git_diff yes no 0.55s
✅ REPOSITORY secretlint yes no 4.51s
✅ YAML yamllint 3 0 0.72s

See detailed report in MegaLinter reports

MegaLinter is graciously provided by OX Security

@crissancas crissancas changed the title Add files via upload User Story Edge Cloud Family Jun 13, 2024
|Application Endpoint Discovery(AED) |The Application Discovery API extends beyond the capabilities of the Simple Edge Discovery API by not only locating the nearest Edge Cloud Zone but also directly linking to the application endpoints within those zones. |
|Edge Application Management(EAM)|Edge Application Management API allows API consumers to manage the Life Cycle of an Application and to Discover Edge Cloud Zones.
|Simple Edge Discovery(SED)|The Simple Edge Discovery API returns the name of the closest operator Edge Cloud Zone to a particular user device.
|Traffic Influence(TI)|The TI API provides the capability to establish the best routing, in terms of latency, in a specific geographical area, between the user Device, e.g. the user’s smartphone, and the optimal EAS instance nearby.
Copy link
Collaborator

Choose a reason for hiding this comment

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

I will suggest to use word "optimal" in place of "best" as it will be difficult to ascertain the best edge.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Good appreciation, fixed.

|----|----|----|
|Summary|Edge Service Providers offers an Edge platform that exposes computing and networking services in a given territory with several levels of abstraction being the Edge Cloud Zone the lowest one. Edge Service Providers offers a service through EdgeCloud APIs that permits application providers to deploy instances of an application in one or several Edge Cloud Zones, and to Applications Users the posibility to chose the most appropriate Edge Cloud Zone available at a given moment| M |
|Pre-conditions|The AP has a resource usage agreement with the Operator| M |
|Begins when|The user client request access to the application| M |
Copy link
Collaborator

Choose a reason for hiding this comment

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

I think the statement "user client request access to the application" needs to be rephrased as it is not clear what exactly it is trying to do in terms of API invocation.
Also in the next line i.e., Step 1, it says AP invokes discovery while on line 41 it is about user client so a connection seems to be broken.

Also i think there should be step for onboarding application too which will be referred in other steps.

|Begins when|The user client request access to the application| M |
|Step 1|The AP invokes Application Endpoint Discovery to request an Endpoint of the closest Edge Cloud Zone for this user(MSISDN)| M |
|Step 2|The Application Endpoint Discovery returns to the EP an Endpoint with the closest Edge Cloud Zone for this user(MSISDN) | M|
|Step 3|The AP instantiates the App in the Edge Cloud Zone determinated by the SED API| M|
Copy link
Collaborator

Choose a reason for hiding this comment

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

In my opinion the sequence could be for example,
Step 1 - SED
Step 2 - App Onboarding
Step 3 - App Instantiation
Step 4 - App End Point Discovery

But please correct if I am missing something.

|Step 2|The Application Endpoint Discovery returns to the EP an Endpoint with the closest Edge Cloud Zone for this user(MSISDN) | M|
|Step 3|The AP instantiates the App in the Edge Cloud Zone determinated by the SED API| M|
|Step 4|Once the App is istantiated the ESP returns the information about the Edge Cloud Zone where the App is instantiated| M|
|Step 5|The AP provides the user client the corresponding URL to connected| M|
Copy link
Collaborator

Choose a reason for hiding this comment

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

We should specify to some extent how AP can provide the user client the URL which I suppose is obtained from Application Endpoint Discovery Response. But some hint or examples should be given on how it can be done programmatically.

|Step 3|The AP instantiates the App in the Edge Cloud Zone determinated by the SED API| M|
|Step 4|Once the App is istantiated the ESP returns the information about the Edge Cloud Zone where the App is instantiated| M|
|Step 5|The AP provides the user client the corresponding URL to connected| M|
|Step 6|The UE connects to the provided URL and start using the application| M|
Copy link
Collaborator

Choose a reason for hiding this comment

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

May be UE here points to user client. If so we may put the right term for consistency

|Step 4|Once the App is istantiated the ESP returns the information about the Edge Cloud Zone where the App is instantiated| M|
|Step 5|The AP provides the user client the corresponding URL to connected| M|
|Step 6|The UE connects to the provided URL and start using the application| M|
|Step 7|The AP invokes traffic influence API to activate the appropriate routing at the Edge of the mobile network toward the local ESP Instance for the Premium Users| M|
Copy link
Collaborator

Choose a reason for hiding this comment

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

As we are using both AP and user client we need to who can invoke which API. Here whether AP which may be an application too or the user client on UE may invoke the TI API. So just trying to understand if both AP and user client in mix are not creating slight confusion. Or at the beginning we should write who is AP and who is user client and what is there communication to be expected in this page.

|Step 1|The Operator authorizes the request (terminates with a notification to the AP if it is not valid)| M |
|Step 2|The Operator validates the request (terminates with a notification to the AP if content is not valid)| M|
|Step 3|The Operator stores the app information and returns an Id for reference (terminates with a notification to the AP if error)| M |
|Step 4|The Edge Application Management API instantiate the application in an specific Edge Cloud Zone or serverals | M |
Copy link
Collaborator

Choose a reason for hiding this comment

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

I think we should mention who (the actor) initiates the Edge Application Management API.

|Step 4|The Edge Application Management API instantiate the application in an specific Edge Cloud Zone or serverals | M |
|Step 5|The Operator validates the request and if AppId and parameters provided are valid, returns an object including references to one instance Id per Edge Cloud Zone with an instantiation status "instantiating" and starts deploying app instance in EdgeCloud Zones that meet the input criteria| M |
|Step 6|The AP may request updated information of existing app instances of a given app. Possible status for app instantiation includes "ready" also information for endpoint info is provided for the app instance| O |
|Step 7|The Operator response to the AP and starts the termination of the app instance, moving its status to terminating| M|
Copy link
Collaborator

Choose a reason for hiding this comment

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

Not clear why Operator started the termination? Is anything missing here?

|Step 5|The Operator validates the request and if AppId and parameters provided are valid, returns an object including references to one instance Id per Edge Cloud Zone with an instantiation status "instantiating" and starts deploying app instance in EdgeCloud Zones that meet the input criteria| M |
|Step 6|The AP may request updated information of existing app instances of a given app. Possible status for app instantiation includes "ready" also information for endpoint info is provided for the app instance| O |
|Step 7|The Operator response to the AP and starts the termination of the app instance, moving its status to terminating| M|
|Step 8|An User Client solicitates access to the Application | M|
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can we mention what it means by "User Client solicitates access to the Application" in terms of APIs?

|Step 6|The AP may request updated information of existing app instances of a given app. Possible status for app instantiation includes "ready" also information for endpoint info is provided for the app instance| O |
|Step 7|The Operator response to the AP and starts the termination of the app instance, moving its status to terminating| M|
|Step 8|An User Client solicitates access to the Application | M|
|Step 9|The Operator invokes SED API to request information of the closest Edge Cloud zone currently available | M |
Copy link
Collaborator

Choose a reason for hiding this comment

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

Does Operator need to invoke SED API in this step?

|Step 7|The Operator response to the AP and starts the termination of the app instance, moving its status to terminating| M|
|Step 8|An User Client solicitates access to the Application | M|
|Step 9|The Operator invokes SED API to request information of the closest Edge Cloud zone currently available | M |
|Step 10|The SED API returns the closest Edge Cloud Zone to the OP | M |
Copy link
Collaborator

Choose a reason for hiding this comment

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

Is it that the AP get the closest edge cloud zone and not the OP?

|Step 8|An User Client solicitates access to the Application | M|
|Step 9|The Operator invokes SED API to request information of the closest Edge Cloud zone currently available | M |
|Step 10|The SED API returns the closest Edge Cloud Zone to the OP | M |
|Step 11|The AP provides the URL with the closest Edge Cloud Zone to the UC | M |
Copy link
Collaborator

@gunjald gunjald Jun 13, 2024

Choose a reason for hiding this comment

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

Isnt it that the AP still needs to retrieve the application endpoint URL by using Application Endpoint Discovery API and SED will not be available in the SED response? Is a step AED is missing prior to Step 11?
Also keeping in mind the next step we can say that the URL points to the EAS where user client will connect next.

|Step 10|The SED API returns the closest Edge Cloud Zone to the OP | M |
|Step 11|The AP provides the URL with the closest Edge Cloud Zone to the UC | M |
|Step 12|The UC connects to the provided EAS and start using the application| M|
|Step 13|The AP invokes traffic influence API to activate the appropriate routing at the Edge of the mobile network toward the local EAS Instance for the Premium Users| M|
Copy link
Collaborator

Choose a reason for hiding this comment

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

May be we can add more here to say from AED result UC can get the endpoint information to prepare and invoke TI API.
This will set up the connection between the AED and TI API as a guidance on how application writer can get information for preparing contents of different APIs.

|Step 11|The AP provides the URL with the closest Edge Cloud Zone to the UC | M |
|Step 12|The UC connects to the provided EAS and start using the application| M|
|Step 13|The AP invokes traffic influence API to activate the appropriate routing at the Edge of the mobile network toward the local EAS Instance for the Premium Users| M|
|Step 14|The traffic flow is routed from the selected UPF to the requested ESP Instance for the selected users| M|
Copy link
Collaborator

Choose a reason for hiding this comment

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

We may say that the traffic flow as mentioned in the TI API towards the EAS is routed

|Step 12|The UC connects to the provided EAS and start using the application| M|
|Step 13|The AP invokes traffic influence API to activate the appropriate routing at the Edge of the mobile network toward the local EAS Instance for the Premium Users| M|
|Step 14|The traffic flow is routed from the selected UPF to the requested ESP Instance for the selected users| M|
|Ends when|The UE connects to the ESP| M |
Copy link
Collaborator

Choose a reason for hiding this comment

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

Should we say ESP or EAS?

@javierlozallu javierlozallu added the documentation Indicating issues with API documentation or supplementary documents label Jun 21, 2024
Copy link
Collaborator

@Kevsy Kevsy left a comment

Choose a reason for hiding this comment

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

The diagram flows including SED say:

"GET /AP invokes Simple Edge Discovery to get the closest Edge Cloud Zone for this MSISDN"

...but MSISDN is only one of the identifiers to obtain closest Edge Cloud Zone. Suggest change to:

"GET /AP invokes Simple Edge Discovery to get the closest Edge Cloud Zone for this device"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Indicating issues with API documentation or supplementary documents
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants