Skip to content

Commit

Permalink
Merge branch 'main' into update-tempo-cluster
Browse files Browse the repository at this point in the history
  • Loading branch information
michaeldmitry authored Dec 2, 2024
2 parents 1c35980 + a04d3b8 commit d4f553d
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 6 deletions.
34 changes: 33 additions & 1 deletion docs/json_schemas/fiveg_rfsim/v0/provider.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,42 @@
],
"title": "Rfsim Address",
"type": "string"
},
"sst": {
"description": "Slice/Service Type",
"examples": [
1,
2,
3,
4
],
"maximum": 255,
"minimum": 0,
"title": "Sst",
"type": "integer"
},
"sd": {
"anyOf": [
{
"maximum": 16777215,
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Slice Differentiator",
"examples": [
1
],
"title": "Sd"
}
},
"required": [
"rfsim_address"
"rfsim_address",
"sst"
],
"title": "FivegRFSIMProviderAppData",
"type": "object"
Expand Down
14 changes: 10 additions & 4 deletions interfaces/fiveg_rfsim/v0/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@

Within 5G RAN (Radio Access Network) architecture, the OAI DU charm can be started to act as both the DU and the RU through its RF simulator functionality.

The OAI UE charm requires RF simulator address in order to connect. Hence, the provider of this interface would be a OAI DU charm and the requirer of this interface would be the OAI UE charm.
The OAI UE charm requires RF simulator address and the network information(SST, SD) in order to connect. Hence, the provider of this interface would be a OAI DU charm and the requirer of this interface would be the OAI UE charm.

This relation interface describes the expected behavior of charms claiming to be able to provide or consume information on connectivity over the fiveg_rfsim interface.

## Direction

```mermaid
flowchart TD
Provider -- rfsim_address --> Requirer
Provider -- rfsim_address, sst, sd --> Requirer
```

As with all Juju relations, the `fiveg_rfsim` interface consists of two parties: a Provider and a Requirer.
Expand All @@ -23,11 +23,15 @@ Both the Requirer and the Provider need to adhere to criteria to be considered c

### Provider

- Is expected to provide the DU's `rfsim` service ip.
Is expected to provide following information:

- The DU's `rfsim` service ip
- Network Slice/Service Type (SST)
- Slice Differentiator (SD)

### Requirer

- Is expected to use the `rfsim` service address passed by the provider.
- Is expected to use the `rfsim` service address and the network information(SST, SD) passed by the provider.

## Relation Data

Expand All @@ -39,6 +43,8 @@ Both the Requirer and the Provider need to adhere to criteria to be considered c
provider:
app: {
"rfsim_address": "192.168.70.130",
"sst": 1,
"sd": 1,
}
unit: {}
requirer:
Expand Down
19 changes: 18 additions & 1 deletion interfaces/fiveg_rfsim/v0/schema.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,14 @@
unit: <empty>
app: {
"rfsim_address": "192.168.70.130",
"sst": 1,
"sd": 1,
}
RequirerSchema:
unit: <empty>
app: <empty>
"""
from typing import Optional

from pydantic import BaseModel, Field

Expand All @@ -23,11 +26,25 @@ class FivegRFSIMProviderAppData(BaseModel):
description="RF simulator service ip",
examples=["192.168.70.130"]
)
sst: int = Field(
description="Slice/Service Type",
examples=[1, 2, 3, 4],
ge=0,
le=255,
)
sd: Optional[int] = Field(
description="Slice Differentiator",
default=None,
examples=[1],
ge=0,
le=16777215,
)


class ProviderSchema(DataBagSchema):
"""Provider schema for the fiveg_rfsim interface."""
app: FivegRFSIMProviderAppData


class RequirerSchema(DataBagSchema):
"""Requirer schema for the fiveg_rfsim interface."""
"""Requirer schema for the fiveg_rfsim interface."""

0 comments on commit d4f553d

Please sign in to comment.