Version 1 (modified by 15 years ago) ( diff ) | ,
---|
Slice Manager API Specification (User Exposed)
The API specification is classified based on functionality. Each category of APIs has both:
- getters – responsible for reporting based on specified control information, and
- setters – responsible for setting the specified control information.
The slice manager API are further classified into
- VM control functions and
- Client control functions.
SLICE (VM) Control Functions
These set of functions are responsible for managing context isolation of multiple slices through the use of virtual machines.
createSLICE(used_id, passwd, image_type)
This function is invoked from a gateway machine by the slice user to instantiate its slice for experimentation.
- Uses the slice user_id and passwd to create a new SLICE.
- image_type is an integer which specifies the distribution to be loaded on the disk of the virtual machine.
image_type = 1 loads a Debian disk image image_type = 2 loads a Ubuntu disk image image_type = 3 loads a Fedora disk image
- Return the IP of the SLICE to which the user can log into (when successful)
- Failure returns “nok”, success returns SLICEID.
destroySLICE(user_id, passwd, IP)
- Destroy instance of the SLICE for which IP is assigned
- SLICE is destroyed only after authentication of the used_id and passwd.
- Returns status “ok” if command was executed correctly, “nok” otherwise.
startSLICE( SLICEID, user_id, passwd, IP)
This functionality can be invoked after the the createSLICE() call is made.
- Start instance of the SLICE for which IP is assigned
- SLICE instance is started only if the instance is owned by the issuing user.
- Returns status “ok” if command was executed correctly, “nok” otherwise.
stopSLICE( SLICEID, user_id, passwd, IP)
- Stop instance of the SLICE for which IP is assigned
- SLICE instance is stopped only if the instance is owned by the issuing user.
- Returns status “ok” if command was executed correctly, “nok” otherwise.
setSLICEParams(SLICEID, used_id, passwd)
- Allows the user to set all controllable parameters for creation of SLICE.
- Features include the amount of disk space per SLICE template, percentage of CPU resources.
- Number of parameters supported as a part of this API may vary with underlying virtualization technology.
- Successful setting returns “ok”, “nok” otherwise.
Client Control Functions
These set of functions allow the datapath controller to determine which WiMAX clients can associate with the BTS and vice-versa. These API are internal and are based on the input provided by the slice user.
addClient(MSID, SliceID)
- This API is called by the user to add a client with MAC address MSID to the slice SliceID.
- Successful execution of this function returns “ok” from the grid service, “no” otherwise
deleteClient(MSID, SliceID)==
- Used to remove client with MAC address MSID from the slice with identifier as Slice ID.
- Successful execution of this function returns “ok” from the grid service, “no” otherwise