Version 5 (modified by 15 years ago) ( diff ) | ,
---|
Table of Contents
- API Classification and Usage
- Accessing the WiMAX Base Station
- Slice Manager API Specification (User Exposed)
- Radio Management API (User Exposed)
- System Administrator API Specification (Internal)
- SM – Datapath API (Internal)
- RM – Datapath API (Internal)
- BSFB – Datapath API (Internal)
Radio Management API (User Exposed)
These API define the calls that can be made by the system user for controlling radio-related features of the WiMAX system. These API are further classified based on the functionality they provide.
Custom Service Class Suport
These APIs will allow the user to create user-defined service flow types apart from the 5 standard service flows supported as a part of the current model.
reateServiceFlow(SlideID, direction, priority, classifier-ips, classifier-ports, service_type, service_params)
- Direction – Uplink or downlink for the class.
- Priority – priority of the service class
- Classifier-ips TLV - Source/Destination IP classifiers for flow classification
- Classifier-ports TLV – Source/Destination port classifiers for flow classification.
- Service_type - One of the five types – BE/UGS/rtPS/nrtPS/ertPS
- Service params is the TLV for each service type
- Return type: Service type id - STID (integer) > 6. 1-5 are reserved for the default service flow types.
- Note that the service type is created by the Radio management grid service for
a specific slice ID and hence it will be specific to that slice.
createServiceClass(SlideID,STIDs{})
- SliceID identifies the requesting slice.
- STIDs are the service type ids.
- Success returns the Service class ID (SCID), which can be used in install or remove.
installServiceClass(SlideID,SCID)
- SliceID identifies the requesting slice.
- Installs all the service flows that are part of the service class SCID.
- Success results in end – to – end datapath setup between wireless clients and virtual machine slice.
uninstallServiceClass(SlideID,SCID)
- SliceID identifies the requesting slice.
- Un-installs all the service flows that are part of the service class SCID.
- Success returns ok and nok otherwise.
deleteServiceClass(SlideID, SCID)
- Deletes the service class corresponding to the specification in the request.
- Returns success if the service class could be successfully deleted (none of the
flows are actively using these service classifiers).
deleteServiceFlow(SlideID, STID)
- Results in deletion of service flow type identified by STID if any such flow type exists.
- Success results in “ok” and “nok” otherwise.
Slice Radio Control
setMinimalMcs(SliceID, MSID, SCID, mcs)
- Used to set the minimal modulation and coding scheme (MCS) to be used for
that service class. An auto rate provision will select a better MCS based on the observed CINR conditions.
- The user can chose one among available MCSs as an option for that class.
- We are still exploring the possibility of setting this per class per MSID. As per our
current understanding, this is difficult.
setFixedMcs(SliceID, MSID, SCID, mcs)
- Used to set a fixed MCS for a particular service class.
- This disables the automatic MCS adjustment using measured CINR.
- If possible we wish to set this mcs value per MSID.
setRadioResource(SliceID, MSID, RR)
- Information provided by this function should be consulted during initial ranging and connection setup.
- RR – Radio resource uplink + downlink (set in % - 0 to 100)
setBandwithUlDlRatio(bandwidth UL_DL_ratio)
- Set supported bandwidth: 10M, 7.5M, 5M Hz
- Based on RR allocation in set_radio_resource(), this routine allows the user to set
the uplink-downlink ratio as a fraction of the RR.
- UL_DL_ratio is used as a key to select one among standard UL_DL ratio supported by the BS. All MS has to use the same ul_dl_ratio
Slice Radio Monitoring
getAllClientsInfo( SLICEID )
- Returns the number of WiMAX clients associated with a particular SLICEID.
- Return value ranges between 0 and maximum number of clients that can be owned by a slice on success, “nok” otherwise
getClientInfo(SLICE ID, MSID)
- Returns detailed information about a single client in the network.
- Information for individual MAC address includes the amount of disk quota, disk space used, and the CPU quota (reserved and used).
- Returns XML with appropriate parameters on success, “nok” otherwise
getSliceResource(SLICEID)
- This mechanism allows every slice to monitor its current usage, and the limits
- Values returned may vary based on the virtualization technology used - (disk space, CPU).
- Returns XML with appropriate parameters on success, “nok” otherwise