-
Notifications
You must be signed in to change notification settings - Fork 45
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
Simple edge discovery: spelling and linting #223
Merged
Merged
Changes from all commits
Commits
Show all changes
3 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,50 +1,60 @@ | ||
# Edge Discovery APIs | ||
|
||
## Simple Discovery API | ||
This API allows a client application to discover the closest MEC platform to the UE hosting the client application. 'Closest' means 'shorteset network path' as that will give the shortest propogation distance, which is a major factor in latency. | ||
|
||
This API allows a client application to discover the closest MEC platform to the UE hosting the client application. 'Closest' means 'shortest network path' as that will give the shortest propagation distance, which is a major factor in latency. | ||
|
||
## MEC Experience Management and Exposure API | ||
|
||
This API allows a developer to: | ||
|
||
- discover available MEC platforms, ranked by proximity to a UE. | ||
- read the state (availability and capabilities) of an operator's various MEC platforms. | ||
- register a service profile (a description of the developer's edge service) with the MEC operator | ||
- register the deployed service endpoints with the MEC operator, which allows the closest service endpoint to be discovered at runtime | ||
- register a service profile (a description of the developer's edge service) with the MEC operator. | ||
- register the deployed service endpoints with the MEC operator, which allows the closest service endpoint to be discovered at runtime. | ||
|
||
The API will also support the following capabilities: | ||
- events(such as change of status of a MEC platform or another event which could affect their service) | ||
The API will also support the following capabilities: | ||
|
||
- events(such as change of status of a MEC platform or another event which could affect their service). | ||
- subscription to notification of events. | ||
|
||
# Mapping to the list of intents | ||
## Mapping to the list of intents | ||
|
||
These APIs fulfil the ['discovery' intents](https://github.com/camaraproject/EdgeCloud/blob/main/documentation/SupportingDocuments/Harmonisation%20of%20APIs/describing%20and%20harmonising%20the%20Edge%20APIs.md) | ||
|
||
*Simple Edge Discovery* fulfils a single intent, "4. I can discover the closest MEC platform to a specific terminal (closest in terms of shortest network path)" | ||
*Simple Edge Discovery* fulfils a single intent, "4. I can discover the closest MEC platform to a specific terminal (closest in terms of shortest network path)" | ||
|
||
*MEC Exposure and Experience Management* is a more comprehensive discovery API and fulfils the following intents: | ||
|
||
### Developer intents | ||
#### Provisioning intents | ||
1. “I can retrieve a list of the operator’s MECs and their status, ordering the results by location and filtering by status (active/inactive/unknown)” | ||
2. "I can discover the capabilities/resources available at an operator’s MEC: CPU, Memory, Storage, GPU" | ||
3. "I can discover the geographical regions covered by the operators MECs" | ||
4. "I can discover the closest MEC platform to a specific terminal (closest in terms of shortest network path)" | ||
|
||
16. “I can ask the operator to provide the details of all the onboarded applications” | ||
17. "I can ask the operator to inform about the application instance details e.g., communication endpoints, resource consumed etc" | ||
#### Provisioning intents | ||
|
||
1. "I can retrieve a list of the operator’s MECs and their status, ordering the results by location and filtering by status (active/inactive/unknown)" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We have terms with alternate words e.g. here it says MECs but the API says MEC Platforms |
||
2. "I can discover the capabilities/resources available at an operator’s MEC: CPU, Memory, Storage, GPU" | ||
3. "I can discover the geographical regions covered by the operators MECs" | ||
4. "I can discover the closest MEC platform to a specific terminal (closest in terms of shortest network path)" | ||
|
||
16. "I can ask the operator to provide the details of all the on-boarded applications" | ||
17. "I can ask the operator to inform about the application instance details e.g., communication endpoints, resource consumed etc" | ||
|
||
#### Runtime intents | ||
19. "I can discover the closest MEC platform to a particular terminal (closest in terms of shortest network path)" | ||
20. "I can discover the optimal MEC platform for my application and a particular terminal, taking into account connectivity, shortest network path, cost, network load etc." (`A`) | ||
21. "I can discover the optimal application service endpoint for a specific terminal, taking into account mobility events, connectivity, shortest network path, cost, network load, MEC platform load etc." | ||
#### Runtime intents | ||
|
||
19. "I can discover the closest MEC platform to a particular terminal (closest in terms of shortest network path)" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Here we have MEC platform while at line 33 it is MECs |
||
20. "I can discover the optimal MEC platform for my application and a particular terminal, taking into account connectivity, shortest network path, cost, network load etc." (`A`) | ||
21. "I can discover the optimal application service endpoint for a specific terminal, taking into account mobility events, connectivity, shortest network path, cost, network load, MEC platform load etc." | ||
|
||
### Operator intents | ||
|
||
#### Provisioning intents | ||
23. “I can publish an (ordered, filtered) list of my MECs, their coverage, capabilities and status” _(aligns with 1,2,3 in the developer intents)_ | ||
24. “I can map an application’s requirements to the best MEC for hosting it, based on application demands for CPU,Memory,Storage,GPU,bandwith,Network forecast, mobility” _(aligns with 4,5,8,9)_ | ||
#### Runtime intents | ||
25. “I can inform the developer of any event which changes which MEC is optimal for their application and connected terminals” _(aligns with 6)_ | ||
|
||
## Notes: | ||
23. "I can publish an (ordered, filtered) list of my MECs, their coverage, capabilities and status" *(aligns with 1,2,3 in the developer intents)* | ||
24. "I can map an application’s requirements to the best MEC for hosting it, based on application demands for CPU, Memory, Storage, GPU, bandwidth, Network forecast, mobility" *(aligns with 4,5,8,9)* | ||
|
||
#### Runtime intents | ||
|
||
25. "I can inform the developer of any event which changes which MEC is optimal for their application and connected terminals" *(aligns with 6)* | ||
|
||
## Notes | ||
|
||
`A` this may not be the closest MEC, rather the 'best MEC for this job' which accounts for current MEC or network load, MEC copmute power and features etc. | ||
`A` this may not be the closest MEC, rather the 'best MEC for this job' which accounts for current MEC or network load, MEC compute power and features etc. |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should it be "platforms"? Plural as the API returns the array of platforms.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, Simple Edge Discovery returns only the closest platform. For convenience this is returned as an array with one member, to allow easier portability of parsing code to the other Edge Cloud API that will return multiple platforms.