Quick start with OSIMS
First download and install the FSToolkit. Please see here how to install it.
Go to the preferences of Eclipse and under FSToolkit, Patras Platforms for Experimentation account, enable it and out the credentials that you initially used when you created a P2E account.
Restart Eclipse. Create a new FSDL project, from File->New
Open the .FSDL file by double clicking it. Use the following fsdl code to provision the IMS Core resources and create a couple of IMSSubscriber accounts. Don't forget to reserve your resources first by using this form:
RequestedFederationScenario myScenario import "http://nam.ece.upatras.gr/fstoolkit/utils/ppereg/MmQ1Y/ctranoris.brokerdsl"; RequestServices{ Service "OSIMSCoreAccess.p2e" as myOSIMSCoreAccess67 settings{//Service for creating an SSH account to all servers of OSIMS Setting "username" : username = "ctran" //username used for ssh access Setting "password" : password = "pass" //password used for ssh access Setting "CoreReset" : corereset = "false" //if true recreates the OSIMS IMSCore server and resets it to the initial state. All user modifications are lost. } Service "OSIMSCreateSubscriberAccount.p2e" as myOSIMSCreateSubscriberAccount88 settings{//Service for creating a subscriber account on OSIMS Setting "username" : username = "+30693698" //username used for OSIMS subscriber Setting "password" : password = "1234" //password used for OSIMS subscriber } Service "OSIMSCreateSubscriberAccount.p2e" as myThirdIMSAccount settings{ Setting "username" : username = "ctran01" Setting "password" : password = "12345" } }
Don't forget to change the values according to your needs.
Select from the Eclipse toolbar or from the FSToolkit menu the Submit Scenario. Follow the wizard and press finish to start the provisioning of the resources.
Do your experiment. Access with ssh the machines, go to the HSS console or create new accounts.
Don't forget for each experiment to SHUT DOWN (by right click the scenario name) from the FS Operation view of eclipse (see upper right corner of Eclipse). To change values of your experiment go back to the FS Definition view and then follow again the submmission wizard
Check this video tutorials to learn more about OSIMS
#1.OSIMS Introduction, Core SSH Access and Subscriber creation
This 10 minutes introductory video demonstrates how to reserve and use the OSIMS testbed. The FSToolkit is used to manage and control the experiment. In the end we get full ssh access to the OSIMS core and an IMS Subscriber account, which we use to connect an IMS Client
Watch the video here in HD
#2.Videoconferencing with an Android IMS Client on the OSIMS testbed
This 15 minutes video demonstrates a reservation of resources on OSIMS, the creation of a few IMS subscribers with a scenario on FSToolkit, shell access to the Core server and a video call between the two clients
Watch the video here in HD
An experimentation scenario sample definition
Use the following to provision the IMS Core resources and create a couple of IMSSubscriber accounts. Don't forget to reserve your resources first by using this form:RequestedFederationScenario myScenario import "http://nam.ece.upatras.gr/fstoolkit/utils/ppereg/MmQ1Y/ctranoris.brokerdsl"; RequestServices{ Service "OSIMSCoreAccess.p2e" as myOSIMSCoreAccess67 settings{//Service for creating an SSH account to all servers of OSIMS Setting "username" : username = "ctran" //username used for ssh access Setting "password" : password = "pass" //password used for ssh access Setting "CoreReset" : corereset = "false" //if true recreates the OSIMS IMSCore server and resets it to the initial state. All user modifications are lost. } Service "OSIMSCreateSubscriberAccount.p2e" as myOSIMSCreateSubscriberAccount88 settings{//Service for creating a subscriber account on OSIMS Setting "username" : username = "+30693698" //username used for OSIMS subscriber Setting "password" : password = "1234" //password used for OSIMS subscriber } Service "OSIMSCreateSubscriberAccount.p2e" as myThirdIMSAccount settings{ Setting "username" : username = "ctran01" Setting "password" : password = "12345" } }
#3.Experimenting with WebRTC
Video calls between Android IMS Client and HTML5 browsers, Internet Explorer 9 with WebRTC extensions and Google Chrome canary with native WebRTC support
This 20 minutes video demonstrates how to reserve resources on the OSIMS testbed, define the experiment with our tools, create subscriber accounts and make video calls between a mobile phone using the IMSDroid IM client and HTML5 browsers Internet Explorer 9 with WebRTC extensions and Google Chrome canary with native WebRTC support. We display how the webrtc2sip gateway is used in our OSIMS testbed and how you can test your own html5 pages with SIP extensions
Watch the video here in HD
FSToolkit scenario used in WebRTC tutorial
RequestedFederationScenario myScenario import "http://nam.ece.upatras.gr/fstoolkit/utils/ppereg/MmQ1Y/ctranoris.brokerdsl"; RequestServices{ Service "OSIMSWebRTC2SIPGateway.p2e" as myOSIMSWebRTC2SIPGateway53 settings{//Service for enabling/disabling WebRTC2SIP gateway of OSIMS Setting "enable" : enable = "true" //if true enables the WebRTC2SIP gateway } Service "OSIMSCreateSubscriberAccount.p2e" as myOSIMSCreateSubscriberAccount28 settings{//Service for creating a subscriber account on OSIMS Setting "username" : username = "ctran01" //username used for OSIMS subscriber Setting "password" : password = "12345" //password used for OSIMS subscriber } Service "OSIMSCreateSubscriberAccount.p2e" as myOSIMSCreateSubscriberAccount3 settings{//Service for creating a subscriber account on OSIMS Setting "username" : username = "+30693698" //username used for OSIMS subscriber Setting "password" : password = "1234" //password used for OSIMS subscriber } Service "OSIMSCoreAccess.p2e" as myOSIMSCoreAccess75 settings{//Service for creating an SSH account to all servers of OSIMS Setting "username" : username = "ctran" //username used for ssh access Setting "password" : password = "pass" //password used for ssh access Setting "CoreReset" : corereset = "true" //if true recreates the OSIMS IMSCore server and resets it to the initial state. All user modifications are lost. } }
#4.Experimenting with IMS, Policies and Openflow controler and switch
Video calls between Android IMS Client and Windows IMS client, while monitoring flows in the Floodlight Openflow controller and the policy components
This video demonstrates how to reserve resources on the OSIMS testbed, define the experiment with our tools, and while making a call, monitoring flows in the Floodlight openflow controller. You can modify if you wish the source code of both the policies components or also the code of the Floodlight controler in order to experiment with your own algorithms
Watch the video here in HD
FSToolkit scenario used in the Policies/Floodlight tutorial
RequestedFederationScenario myScenario import "http://nam.ece.upatras.gr/fstoolkit/utils/ppereg/MmQ1Y/ctranoris.brokerdsl"; RequestServices{ Service "OSIMSOpenFlowSwitchAccess.p2e" as myOSIMSOpenFlowSwitchAccess20 settings{//Enable access to OSIMS openflow switch Setting "enable" : enable = "true" //if true enables access to the OSIMS openflow switch } Service "OSIMSFloodlightAccess.p2e" as myOSIMSFloodlightAccess31 settings{//Enable OSIMS OpenFlow controller Floodlight Setting "enable" : enable = "true" //if true enables the Floodlight controller } Service "OSIMSCoreAccess.p2e" as myOSIMSCoreAccess settings{//Service for creating an SSH account to all servers of OSIMS Setting "username" : username = "ctran" //username used for ssh access Setting "password" : password = "1234" //password used for ssh access Setting "CoreReset" : corereset = "true" //if true recreates the OSIMS IMSCore server and resets it to the initial state. All user modifications are lost. } }