|
@@ -0,0 +1,36 @@
|
|
|
+Source code for "TEEMS: Trusted Execution Environment based
|
|
|
+Metadata-protected Messaging System"
|
|
|
+
|
|
|
+This code produced the data reported in Section 6 of our paper.
|
|
|
+
|
|
|
+You will need:
|
|
|
+
|
|
|
+- A machine with one or more SGX2-enabled processors
|
|
|
+- The SGX SDK (https://github.com/intel/linux-sgx) installed (we used
|
|
|
+ version 2.22)
|
|
|
+- The "numactl" program installed (even if you don't have a NUMA
|
|
|
+ machine)
|
|
|
+
|
|
|
+The code is designed to run on a single machine with two 40-core
|
|
|
+processors (Intel 8380). We allocate 36 cores on each processor for the
|
|
|
+servers, and the last 4 cores on each processor for the clients.
|
|
|
+
|
|
|
+If you have a different configuration, change the cores assigned to
|
|
|
+clients by setting "prefix" in Client/clientlaunch and the -t option to
|
|
|
+clientlaunch in run_experiments.py. Change the cores assigned to
|
|
|
+servers in the gen_manifest.py program. Change the maximum number of
|
|
|
+servers for a given number of cores in the M_MAX dictionary in
|
|
|
+run_experiments.py.
|
|
|
+
|
|
|
+Decide what experiments you want to run:
|
|
|
+
|
|
|
+- Set the numbers of users (N), the numbers of servers (M), and the
|
|
|
+ numbers of cores per server (T) in run_experiments.py.
|
|
|
+- Set whether you want to test the private or public channel by setting
|
|
|
+ "private_routing:" in gen_manifest.py to True or False respectively.
|
|
|
+
|
|
|
+Build and run the code, and collect the output:
|
|
|
+
|
|
|
+- make
|
|
|
+- ./run_experiments.py
|
|
|
+- ./logs_to_csv.py Experiments_test results.csv
|