Documentation
¶
Overview ¶
Package manager is is the main coordinator for the ONOS RAN subsystem.
Index ¶
- Constants
- func NewLocations(towersParams types.TowersParams, mapLayout types.MapLayout) map[string]*Location
- func NewTowers(params types.TowersParams, mapLayout types.MapLayout) map[types.ECGI]*types.Tower
- func UeDeepCopy(original *types.Ue) *types.Ue
- type Location
- type Manager
- func (m *Manager) Close()
- func (m *Manager) CrntiToName(crnti types.Crnti, ecid *types.ECGI) (types.Imsi, error)
- func (m *Manager) DelCrnti(servingTower *types.ECGI, crnti types.Crnti) error
- func (m *Manager) GetTower(name types.ECGI) *types.Tower
- func (m *Manager) GetUe(imsi types.Imsi) (*types.Ue, error)
- func (m *Manager) NewCrnti(servingTower *types.ECGI, imsi types.Imsi) (types.Crnti, error)
- func (m *Manager) NewRoutes(mapLayoutParams types.MapLayout, params RoutesParams) (map[types.Imsi]*types.Route, error)
- func (m *Manager) NewUserEquipments(mapLayoutParams types.MapLayout, params RoutesParams) map[types.Imsi]*types.Ue
- func (m *Manager) Run(mapLayoutParams types.MapLayout, towerparams types.TowersParams, ...)
- func (m *Manager) SetNumberUes(numUes int) error
- func (m *Manager) UeAdmitted(ue *types.Ue)
- func (m *Manager) UeHandover(imsi types.Imsi, newTowerID *types.ECGI) error
- func (m *Manager) UpdateTower(tower types.ECGI, powerAdjust float32) error
- type MetricsParams
- type RoutesParams
- type TowerIf
Constants ¶
const DefaultTxPower = 10
DefaultTxPower - all base-stations start with this power level
const InvalidCrnti = "0000"
InvalidCrnti ...
const MaxCrnti = 65523
MaxCrnti - Maximum value of CRNTI
Variables ¶
This section is empty.
Functions ¶
func NewLocations ¶
NewLocations - create a new set of locations
Types ¶
type Manager ¶
type Manager struct {
MapLayout types.MapLayout
Towers map[types.ECGI]*types.Tower
TowersLock *sync.RWMutex
Locations map[string]*Location
Routes map[types.Imsi]*types.Route
UserEquipments map[types.Imsi]*types.Ue
UserEquipmentsLock *sync.RWMutex
UserEquipmentsMapLock *sync.RWMutex
Dispatcher *dispatcher.Dispatcher
UeChannel chan dispatcher.Event
RouteChannel chan dispatcher.Event
TowerChannel chan dispatcher.Event
LatencyChannel chan metrics.HOEvent
ResetMetricsChannel chan bool
TopoClient device.DeviceServiceClient
// contains filtered or unexported fields
}
Manager single point of entry for the trafficsim system.
func GetManager ¶
func GetManager() *Manager
GetManager returns the initialized and running instance of manager. Should be called only after NewManager and Run are done.
func (*Manager) Close ¶
func (m *Manager) Close()
Close kills the channels and manager related objects
func (*Manager) CrntiToName ¶
CrntiToName ...
func (*Manager) NewRoutes ¶
func (m *Manager) NewRoutes(mapLayoutParams types.MapLayout, params RoutesParams) (map[types.Imsi]*types.Route, error)
NewRoutes Create new routes, by taking two random locations and asking Google for directions to get from one to the other
func (*Manager) NewUserEquipments ¶
func (m *Manager) NewUserEquipments(mapLayoutParams types.MapLayout, params RoutesParams) map[types.Imsi]*types.Ue
NewUserEquipments - create a new set of UEs (phone, car etc)
func (*Manager) Run ¶
func (m *Manager) Run(mapLayoutParams types.MapLayout, towerparams types.TowersParams, routesParams RoutesParams, topoEndpoint string, metricsPort int, serverParams utils.ServerParams, metricsParams MetricsParams)
Run starts a synchronizer based on the devices and the northbound services.
func (*Manager) SetNumberUes ¶
SetNumberUes - change the number of active UEs
func (*Manager) UeAdmitted ¶
UeAdmitted - called when the Admission Request for the UE is processed This causes the first RadioMeasurementReport to be sent
func (*Manager) UeHandover ¶
UeHandover perform the handover on simulated UE
type MetricsParams ¶
MetricsParams for the Prometheus exporter
type RoutesParams ¶
RoutesParams :