Getting started with VR-EXP
The easiest way to get started on VR-EXP is to download the pre-configured virtual machine.
-
Download and install the Virtual Box virtualisation system. https://www.virtualbox.org/
-
Download the Virtual Machine (approx. 6GB). https://drive.google.com/file/d/18E2iGYxb7epfJpOWOuwfhW23xSUDSOoA/view?usp=sharing
-
After the download is complete, import the vrexp.ova file into your system by using the option VirtualBox -> “Import Appliance”.
-
(Optional) If you want to access the virtual machine via SSH, it will be necessary to add a Host Only interface (VirtualBox preferences). Next, run the following command: ssh vrexp@192.168.56.101 Login credentials: Username: vrexp Password: vrexp
-
Using VR-EXP:
Quick test: Usage: vrexp <video_id> <segment_count> <tilling scheme - vertical split (lines) - horizontal split (columns)>
Example (as root):
vrexp localhost v1 60 id0001 /usr/local/src/viewport_traces/per_user/user_1/video_1.txt 90 4 8 0 1 1 2
Output file: /home/vrexp/videologs/id0001.log Tile-based VR videos directory: /var/www/html/ Head track traces: /usr/local/src/viewport_traces/
(Optional) Automated execution with enforced network performance:
a. Define the experiment parameters in the following files:
- run.sh
- Topo.py
- Topology.txt
If you want to perform a simple test, the provided example files should be ok.
b. (Optional) - To enforce controlled network performance conditions, run the SDN controller: cd /usr/local/src nohup sudo ryu-manager Controller.py &
c. (Optional) - Simulate a network topology.
d. Run apache2 on the mininet CDN node:
e. (Optional) - For automated execution, use the sample script /usr/local/bin/run.sh (the script run.sh is responsible for both varying the network conditions and executing the VR-EXP)
f. For a standalone execution using mininet:
/home/mininet/mininet/util/m u001 /usr/local/bin/vrexp 10.0.0.251 v1 60 id0001 /usr/local/src/viewport_traces/per_user/user_1/video_1.txt 90 4 12 30 6 1 2
Extra: If you need to recompile VR-EXP, you will need the following libs:
pthread.h stdio.h stdlib.h unistd.h string.h curl.h errno.h stdio.h math.h
To compile the source code: