Unverified Commit 992e5a7d authored by Kevin Di Lallo's avatar Kevin Di Lallo Committed by GitHub
Browse files

Update overview-wais.md

parent b8815b41
Loading
Loading
Loading
Loading
+19 −10
Original line number Diff line number Diff line
@@ -27,16 +27,25 @@ This service provides the following capabilities:
  - Based on OpenAPI Specification (OAS) 3.0

## AdvantEDGE Integration
- WAIS is implemented as a single sandbox pod within AdvantEDGE, providing service for all applications running as part of that sandbox
WAIS is implemented as a single sandbox pod within AdvantEDGE, providing service for all applications running as part of that sandbox

- 3 components:
WAIS components:
- Northbound Interface (NBI) & Core - (tightly coupled) implements the WAIS API & internal service logic
- Southbound Interface (SBI) - (decoupled from NBI/Core) implements glue logic between AdvantEDGE & the NBI/Core

- Threads:
    - Main thread      - (NBI/Core) Handles requests to the WAIS API (server) from users (i.e. scenario pods)
    - NBI event thread - (NBI/Core) Handles event channel from SBI (for WAIS subscriptions)
    - SBI event thread - (SBI) Handle events from AdvantEDGE (scenario updates, mobility events, etc.) & updates Loc. Service database)

  - _Main thread:_ (NBI/Core) Handles requests to the WAIS API (server) from users (i.e. scenario pods)
  - _NBI event thread:_ (NBI/Core) Handles event channel from SBI (for WAIS subscriptions)
  - _SBI event thread:_ (SBI) Handle events from AdvantEDGE (scenario updates, mobility events, etc.) & updates Loc. Service database)
- Supports hot-restart
  - User / app subscriptions with and without a duration parameter survive WAIS pod restarts

### WebSocket Support
WAIS implements the [ETSI MEC009](https://www.etsi.org/deliver/etsi_gs/MEC/001_099/009/03.01.01_60/gs_MEC009v030101p.pdf) _REST-based subscribe/notify with Websocket
fallback_ pattern.

This pattern requires sending a test notification to the notification endpoint URI in the subscription request to determine
if it is directly reachable or not. On success, standard REST-based notification methods continue; on failure (and upon client request),
WAIS creates a WebSocket subscription endpoint where the client may connect to receive notifications.

_**NOTE:**_ WebSockets are required when client applications subscribing for notifications are behind a NAT/firewall.