tor_multipath_voip/jupyter/rawtor.ipynb

1021 lines
397 KiB
Plaintext
Raw Normal View History

2021-03-16 12:36:46 +00:00
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"── \u001b[1mAttaching packages\u001b[22m ─────────────────────────────────────── tidyverse 1.3.0 ──\n",
"\n",
"\u001b[32m✔\u001b[39m \u001b[34mggplot2\u001b[39m 3.2.1 \u001b[32m✔\u001b[39m \u001b[34mpurrr \u001b[39m 0.3.3\n",
"\u001b[32m✔\u001b[39m \u001b[34mtibble \u001b[39m 2.1.3 \u001b[32m✔\u001b[39m \u001b[34mdplyr \u001b[39m 0.8.4\n",
"\u001b[32m✔\u001b[39m \u001b[34mtidyr \u001b[39m 1.0.2 \u001b[32m✔\u001b[39m \u001b[34mstringr\u001b[39m 1.4.0\n",
"\u001b[32m✔\u001b[39m \u001b[34mreadr \u001b[39m 1.3.1 \u001b[32m✔\u001b[39m \u001b[34mforcats\u001b[39m 0.4.0\n",
"\n",
"── \u001b[1mConflicts\u001b[22m ────────────────────────────────────────── tidyverse_conflicts() ──\n",
"\u001b[31m✖\u001b[39m \u001b[34mdplyr\u001b[39m::\u001b[32mfilter()\u001b[39m masks \u001b[34mstats\u001b[39m::filter()\n",
"\u001b[31m✖\u001b[39m \u001b[34mdplyr\u001b[39m::\u001b[32mlag()\u001b[39m masks \u001b[34mstats\u001b[39m::lag()\n",
"\n"
]
}
],
"source": [
"library(tidyverse)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Parsed with column specification:\n",
"cols(\n",
" run = \u001b[32mcol_double()\u001b[39m,\n",
" measure = \u001b[31mcol_character()\u001b[39m,\n",
" owd = \u001b[32mcol_double()\u001b[39m\n",
")\n",
"\n"
]
}
],
"source": [
"torvoipsimple <- read_csv(\"./process-cli.csv\")"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\ni7fUD
"text/plain": [
"plot without title"
]
},
"metadata": {
"image/png": {
"height": 420,
"width": 420
},
"text/plain": {
"height": 420,
"width": 420
}
},
"output_type": "display_data"
}
],
"source": [
"ggplot(torvoipsimple %>% filter(measure == 'q50' | measure == 'avg' | measure == 'max' | measure == 'q99'), aes(x=owd, group=measure, color=measure)) +\n",
" stat_ecdf(pad=FALSE) + \n",
" coord_cartesian(xlim=c(0,800)) + \n",
" annotate(\"rect\", xmin = 0, xmax = 400, ymin = 0, ymax = Inf, alpha = 0.2, fill='green') +\n",
" annotate(\"rect\", xmin = 400, xmax = Inf, ymin = 0, ymax = Inf, alpha = 0.2, fill='red') +\n",
" theme_minimal() +\n",
" ggsave(\"torsimple.pdf\", width=24, height=12,units=\"cm\")"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Parsed with column specification:\n",
"cols(\n",
" u1 = \u001b[32mcol_double()\u001b[39m,\n",
" u2 = \u001b[32mcol_double()\u001b[39m,\n",
" u3 = \u001b[32mcol_double()\u001b[39m,\n",
" `Call Duration` = \u001b[32mcol_double()\u001b[39m\n",
")\n",
"\n"
]
},
{
"data": {
"text/html": [
"117627"
],
"text/latex": [
"117627"
],
"text/markdown": [
"117627"
],
"text/plain": [
"[1] 117627"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"amr122 <- read_csv(\"./donarv4/amr122.csv\") %>% sample_frac(0.1)\n",
"amr122$u1 %>% length"
]
},
{
"cell_type": "code",
"execution_count": 217,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table>\n",
"<caption>A tibble: 1 x 1</caption>\n",
"<thead>\n",
"\t<tr><th scope=col>n</th></tr>\n",
"\t<tr><th scope=col>&lt;dbl&gt;</th></tr>\n",
"</thead>\n",
"<tbody>\n",
"\t<tr><td>201.6349</td></tr>\n",
"</tbody>\n",
"</table>\n"
],
"text/latex": [
"A tibble: 1 x 1\n",
"\\begin{tabular}{l}\n",
" n\\\\\n",
" <dbl>\\\\\n",
"\\hline\n",
"\t 201.6349\\\\\n",
"\\end{tabular}\n"
],
"text/markdown": [
"\n",
"A tibble: 1 x 1\n",
"\n",
"| n &lt;dbl&gt; |\n",
"|---|\n",
"| 201.6349 |\n",
"\n"
],
"text/plain": [
" n \n",
"1 201.6349"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"amr122 %>% summarise(n=mean(`Call Duration`))"
]
},
{
"cell_type": "code",
"execution_count": 218,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAIAAAByhViMAAAACXBIWXMAABJ0AAASdAHeZh94\nAAAgAElEQVR4nOzdeUBVdf7/8TeICK6ASrIvgoIIqKig4jpq6c+wsbQ0MXMjs8XUkpoaJ7Mx\nx6RSMfdJUzPLLTMtzRV3QEERUSBBlhQFXFgF7u+PO8PXMTM1Lh849/n463LOgfu6jSMvP5/z\n+RwTnU4nAAAAqP1MVQcAAABA1aDYAQAAaATFDgAAQCPMDPrTz58/v3HjxpSUlCtXrvTr1+/V\nV1+982x0dPSXX36ZkZHRpEmTvn37Dh8+3MTE5P6nTpw4sXLlypKSEk9Pz9dff71+/fr66z//\n/PN69eqNGTPGoB8HAACgJjPsiF1xcbGdnV1oaKidnd1dp5KSkmbNmtWmTZuIiIiRI0du2rRp\n7dq19z9VWlo6b968V155ZcWKFTqdbsOGDfrr4+Pj4+PjR44cadDPAgAAUMMZdsTOz8/Pz89P\nRDZt2nTXqU2bNjk4OISFhYmIi4tLdnb21q1bhw4dWq9evd87de3atZKSEh8fH/1Pjo2NFZHi\n4uKFCxdOmTLF3NzcoJ8FAACghlN2j11iYmKHDh0qv+zQoUNxcXFqaup9TjVr1szS0jImJqa8\nvDw2Ntbd3V1EVqxYERQU5OXlVf0fAQAAoEYx7Ijd79HpdPn5+dbW1pVH9K9zc3Pvc8rb23v6\n9OmrVq1avHhx27Ztn3nmmVOnTiUkJMydO3fx4sWxsbG2traTJk26c9o3Li5uyZIllV9Onjy5\nVatW1fEJAQAAqp2aYvfI/P39IyIi9K8LCwsjIyOnTp26Y8eOS5cuRUZGfv/99xEREXPnzq28\nPjc39/jx45VfPvnkkz/99JOLi0t15wYAADA8NVOxJiYmVlZWeXl5lUf0r21sbO5z6q4fsmLF\nim7dunl5eZ06dap3795169bt27dvUlJSUVFR5TW9e/eO/i9vb+/z58/fvn3bsJ8NAABAEWX3\n2Hl7e+tXP+jFxsZaWFjob5u7z6k7DyYmJo4YMUJEKioq9JuhmJqaiggPSQMAAMbJsMWutLQ0\nNTU1NTW1tLT01q1bqampv/zyi/7UkCFDMjMzlyxZkpaWtnfv3s2bN4eEhNSrV+/+p/QKCwsX\nLVo0efJk/UpYHx+fqKgonU534MABNze3ys3tAAAAjIqJQce3UlNTJ0+efOcRU1PTLVu26F+f\nOHFizZo1ly5d0u9CPGLEiMoNiu9zSkTmz5/fuHHj0aNH678sKipasGBBQkKCtbX15MmTXV1d\n7xkmNDR0zZo1Fy5c8PDwqOoP+htRURISIpMny9//bvD3AgAAEBFDF7sapVqL3b590ru3hIfL\n7NkGfy8AAAAR4VmxAAAAmkGxAwAA0AiKHQAAgEZQ7AAAADSCYgcAAKARteyRYrVGQIBER0uL\nFqpzAAAAI0KxM4xGjSQgQHUIAABgXJiKBQAA0AiKHQAAgEZQ7AAAADSCYgcAAKARFDsAAACN\noNgZRkKCDBsm69apzgEAAIwI250YRk6OfPONtGypOgcAADAijNgBAABoBMUOAABAIyh2AAAA\nGkGxAwAA0AiKHQAAgEawKtYwWrWSJUukXTvVOQAAgBGh2BmGvb1MmKA6BAAAMC5MxQIAAGgE\nxQ4AAEAjKHYAAAAaQbEDAADQCIodAACARlDsDCM9XebMkf37VecAAABGhGJnGKmpEh4uO3eq\nzgEAAIwIxQ4AAEAjKHYAAAAaQbEDAADQCIodAACARlDsAAAANIJiZxjNm8vQoeLrqzoHAAAw\nImaqA2iUj49s2KA6BAAAMC6M2AEAAGgExQ4AAEAjKHYAAAAaQbEDAADQCIodAACARlDsDCMv\nT3bvluRk1TkAAIARodgZRlyc9OsnK1aozgEAAIwIxQ4AAEAjKHYAAAAaQbEDAADQCIodAACA\nRlDsAAAANIJiZxiWluLuLjY2qnMAAAAjYqY6gEYFBkpKiuoQAABAU4qKigoLC5s2bfp7F1Ds\nAAAAaopbt25duXLl119/zczMvHjx4uXLl69evZqbm5uVlXXx4sUbN244OTml/P7gEcUOAACg\n+ly5cuXOrpaVlZWdnZ2dnZ2ZmZmenl5WVnbP77K0tGzcuHGrVq06dOhwnx9OsQMAAKhKt27d\nunz58uXLlzMyMi5dupSenp6dna0fhLtPdatfv76Dg0OLFi2cnZ0dHR2tra3t7Ozs7e0fe+wx\nJycnKysrc3PzP3xrih0AAMBDy8zMvHTpUl5e3tmzZ/Py8i5fvpyVlZWVlZWWlnbjxo3y8vLf\nfkuDBg0cHR1btGjh5OTk4uLSpEmTFi1a2NvbOzo6Ojk5WVtb//lUFDsAAIB7yM3N1c+QXrp0\nKSMjIysrKyMjIzs7Oy0t7fr16/esbiLi4ODQqlWrZs2aOTo6Ojg4NG/e3M7OztHR0d3dvUqq\n2/1R7AAAgPG6fv26vrElJCRkZmZevnxZP2GakZFRXFx8z2+xsbHx8vKyt7d3cXGxt7fXT5g6\nODjY2Ng4OjrWrVu3mj/CnSh2hrFvn/TuLeHhMnu26igAABi1kpKSa9eunTt3Li8vLysr69df\nf83Oztbf+paZmVlQUPDbb7GwsLCxsXFwcHBxcXFwcLCzs7Ozs3NwcHB1dbW3t7e0tKz+T/GA\nKHYAAKDWKysrS09PT0tLy8zM1K8zzcjIuHjxYmpqam5u7j2/pW7dura2toGBgQ4ODvb29vpR\nN1dXV0dHRysrq3r16lXzR6gSFDsAAFBrpKenX7p0SX/rm367kIyMDH2f++3FZmZmVlZWAQEB\njo6O+glTOzs7a2trJycnJyenJk2a1K9fv/o/gkFR7AAAQM1y69atyq3dzpw5k5GRoa9xmZmZ\nN27c+O311tbWfn5++jlTe3v7li1b2tnZOTs729nZWVlZVX9+hSh2AABAjYKCAv2qBf1+bxkZ\nGefPn7948eLvrTn19PTs0KGDvb29k5OTq6urnZ1dy5YtnZ2dGzduXP3hayaKHQAAMLgzZ85k\n/ldCQkJaWtrFixd//fXX317ZpEmT1q1bu7q6enl5Vd795ujo6OrqampqWv3JaxeKHQAAqBpF\nRUVXrlyprG6//PJLampqVlZWenr6by+uW7duu3bt9Lu+6Z+1oC9zDRs2rP7kmkGxM4zgYMnN\nFQsL1TkAAKh6Op0uPz//4sWLSUlJ+n1Dzp07l5CQcO3atdLS0rsubtiwYZs2bezt7T08PNzd\n3T09PR0cHPRDcUrCaxvFzjDMzMTwu0sDAGBo+tvgkpOTL126dPr06crp1Ozs7LuurFevnrOz\ns4eHh4eHh4ODg6Ojo7Ozs4+Pj5WVVZ06dZSEN0IUOwAAICKSm5ublpZ29uzZlJSUlJSUjIyM\n+Pj4/Pz83z603t7evlOnTk5OTq1bt3Z3d9c/hsHJyUntQxcgFDsAAIxQbm5uRkZGYmLimTNn\nLl68eOHChbS0tN8uZahfv767u7ufn5/+Uadubm765ahNmjRREht/iGIHAIDGJSQkJCcnJycn\nnzt3Tt/krl27dvv27TuvsbOz69y5s/4hWr6+vq1bt/bw8HjsscdUZcajodgBAKARRUVF6enp\np0+fTkpKSktLu3TpUmJiYlpa2l2X1a1b19fX19vb28XFxcXFpVWrVn5+ftbW1iYmJkpiowpR\n7AAAqJWysrLOnz+fkZFx+vTpM2fOpKampqWlFRUV3XmNpaVly5YtW7Vq5e7u7u3t7enp6enp\n6ebmpiozDI1iZxgxMRIWJqNHyyuvqI4CAKj1rl+/fvbs2YsXL/7yyy/nz58/c+ZMQkJCcXHx\nXZe5uLh4eHj4+fk5Ozu3bdvW1dXVxcWFBQ1GhWJnGDdvSkyM9OunOgcAoJa5fft2Tk5OQkKC\nfkb1/PnzycnJGRkZd11mZWXVtm1bX19fT09P/bKGTp06MZcKih0AAMoUFhamp6dfuHBB3+QS\nExMvX
"text/plain": [
"plot without title"
]
},
"metadata": {
"image/png": {
"height": 420,
"width": 420
},
"text/plain": {
"height": 420,
"width": 420
}
},
"output_type": "display_data"
}
],
"source": [
"\n",
"ggplot(amr122, aes(x=`Call Duration`)) +\n",
" stat_ecdf(pad=FALSE) +\n",
" coord_cartesian(xlim=c(1,600)) +\n",
" scale_x_continuous(expand = c(0, 0)) + \n",
" scale_y_continuous(expand = c(0, 0), labels = scales::percent_format()) + \n",
" geom_vline(xintercept=30, color=\"red\", linetype= \"dashed\") +\n",
" theme_classic() +\n",
" xlab(\"Call Duration (s)\") +\n",
" ggsave(\"./donarv4/cd.pdf\", width=12, height=6,units=\"cm\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Parsed with column specification:\n",
"cols(\n",
" u1 = \u001b[32mcol_double()\u001b[39m,\n",
" u2 = \u001b[32mcol_double()\u001b[39m,\n",
" u3 = \u001b[32mcol_double()\u001b[39m,\n",
" `Call Duration` = \u001b[32mcol_double()\u001b[39m\n",
")\n",
"\n"
]
}
],
"source": [
"g729 <- read_csv(\"./donarv4/g729.csv\") %>% sample_frac(0.1)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"cds <- bind_rows(g729 %>% mutate(codec='g729'), amr122 %>% mutate(codec='amr122')) \n",
"glimpse(cds)"
]
},
{
"cell_type": "code",
"execution_count": 221,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
" u1 u2 u3 Call Duration \n",
" Min. : 0.00 Min. : 0.000 Min. : 0.00 Min. : 1.0 \n",
" 1st Qu.:81.00 1st Qu.: 0.000 1st Qu.: 30.00 1st Qu.: 60.0 \n",
" Median :82.00 Median : 0.000 Median : 60.00 Median : 68.0 \n",
" Mean :80.08 Mean : 7.301 Mean : 54.57 Mean : 201.6 \n",
" 3rd Qu.:82.00 3rd Qu.: 9.000 3rd Qu.: 80.00 3rd Qu.: 179.0 \n",
" Max. :93.00 Max. :100.000 Max. :100.00 Max. :23073.0 \n",
" codec \n",
" Length:1176266 \n",
" Class :character \n",
" Mode :character \n",
" \n",
" \n",
" "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"cds %>% filter(codec == 'amr122') %>% summary"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"cds$codec <- factor(cds$codec, levels=c(\"g729\", \"amr122\"))\n",
"ggplot(cds, aes(x=`Call Duration`, group=codec, linetype=codec)) +\n",
" stat_ecdf(pad=FALSE) +\n",
" scale_color_grey() +\n",
" coord_cartesian(xlim=c(1,600)) +\n",
" scale_x_continuous(expand = c(0, 0)) + \n",
" scale_y_continuous(expand = c(0, 0), labels = scales::percent_format()) + \n",
" theme_classic() +\n",
" ylab(\"% of calls\") +\n",
" xlab(\"Call Duration (s)\") +\n",
" labs(color=\"State of the art\", linetype=\"Codec\") +\n",
" ggsave(\"./donarv4/cd2.pdf\", width=12, height=6,units=\"cm\")"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Parsed with column specification:\n",
"cols(\n",
" xp = \u001b[31mcol_character()\u001b[39m,\n",
" uuid = \u001b[31mcol_character()\u001b[39m,\n",
" metric = \u001b[31mcol_character()\u001b[39m,\n",
" value = \u001b[32mcol_double()\u001b[39m\n",
")\n",
"\n"
]
}
],
"source": [
"aggr <- read_csv(\"./donarv4/aggr.csv\")"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table>\n",
"<caption>A tibble: 6 x 4</caption>\n",
"<thead>\n",
"\t<tr><th scope=col>xp</th><th scope=col>uuid</th><th scope=col>metric</th><th scope=col>value</th></tr>\n",
"\t<tr><th scope=col>&lt;chr&gt;</th><th scope=col>&lt;chr&gt;</th><th scope=col>&lt;chr&gt;</th><th scope=col>&lt;dbl&gt;</th></tr>\n",
"</thead>\n",
"<tbody>\n",
"\t<tr><td>analysis-1w</td><td>674dd498-e87f-47ae-9722-12e9fb144e0c</td><td>count</td><td> 200</td></tr>\n",
"\t<tr><td>analysis-1w</td><td>63ddf652-acd4-4968-a314-76dbe9cb85b8</td><td>count</td><td>6710</td></tr>\n",
"\t<tr><td>analysis-1w</td><td>a21758aa-17b6-4535-9b56-5a9ef1e4fd24</td><td>count</td><td>7413</td></tr>\n",
"\t<tr><td>analysis-1w</td><td>bca56cbc-04be-44d8-b88b-1605ff604984</td><td>count</td><td>7493</td></tr>\n",
"\t<tr><td>analysis-1w</td><td>40810b30-95c0-46b0-b783-83e5e92e608e</td><td>count</td><td>7495</td></tr>\n",
"\t<tr><td>analysis-1w</td><td>75bf90e4-7bf7-4aed-a1d8-af5ebc971f29</td><td>count</td><td>7495</td></tr>\n",
"</tbody>\n",
"</table>\n"
],
"text/latex": [
"A tibble: 6 x 4\n",
"\\begin{tabular}{llll}\n",
" xp & uuid & metric & value\\\\\n",
" <chr> & <chr> & <chr> & <dbl>\\\\\n",
"\\hline\n",
"\t analysis-1w & 674dd498-e87f-47ae-9722-12e9fb144e0c & count & 200\\\\\n",
"\t analysis-1w & 63ddf652-acd4-4968-a314-76dbe9cb85b8 & count & 6710\\\\\n",
"\t analysis-1w & a21758aa-17b6-4535-9b56-5a9ef1e4fd24 & count & 7413\\\\\n",
"\t analysis-1w & bca56cbc-04be-44d8-b88b-1605ff604984 & count & 7493\\\\\n",
"\t analysis-1w & 40810b30-95c0-46b0-b783-83e5e92e608e & count & 7495\\\\\n",
"\t analysis-1w & 75bf90e4-7bf7-4aed-a1d8-af5ebc971f29 & count & 7495\\\\\n",
"\\end{tabular}\n"
],
"text/markdown": [
"\n",
"A tibble: 6 x 4\n",
"\n",
"| xp &lt;chr&gt; | uuid &lt;chr&gt; | metric &lt;chr&gt; | value &lt;dbl&gt; |\n",
"|---|---|---|---|\n",
"| analysis-1w | 674dd498-e87f-47ae-9722-12e9fb144e0c | count | 200 |\n",
"| analysis-1w | 63ddf652-acd4-4968-a314-76dbe9cb85b8 | count | 6710 |\n",
"| analysis-1w | a21758aa-17b6-4535-9b56-5a9ef1e4fd24 | count | 7413 |\n",
"| analysis-1w | bca56cbc-04be-44d8-b88b-1605ff604984 | count | 7493 |\n",
"| analysis-1w | 40810b30-95c0-46b0-b783-83e5e92e608e | count | 7495 |\n",
"| analysis-1w | 75bf90e4-7bf7-4aed-a1d8-af5ebc971f29 | count | 7495 |\n",
"\n"
],
"text/plain": [
" xp uuid metric value\n",
"1 analysis-1w 674dd498-e87f-47ae-9722-12e9fb144e0c count 200 \n",
"2 analysis-1w 63ddf652-acd4-4968-a314-76dbe9cb85b8 count 6710 \n",
"3 analysis-1w a21758aa-17b6-4535-9b56-5a9ef1e4fd24 count 7413 \n",
"4 analysis-1w bca56cbc-04be-44d8-b88b-1605ff604984 count 7493 \n",
"5 analysis-1w 40810b30-95c0-46b0-b783-83e5e92e608e count 7495 \n",
"6 analysis-1w 75bf90e4-7bf7-4aed-a1d8-af5ebc971f29 count 7495 "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"aggr %>% filter(metric == 'count') %>% arrange(value) %>% head"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Parsed with column specification:\n",
"cols(\n",
" strat = \u001b[31mcol_character()\u001b[39m,\n",
" conf = \u001b[31mcol_character()\u001b[39m,\n",
" uuid = \u001b[31mcol_character()\u001b[39m,\n",
" metric = \u001b[31mcol_character()\u001b[39m,\n",
" value = \u001b[32mcol_double()\u001b[39m,\n",
" call_duration = \u001b[31mcol_character()\u001b[39m\n",
")\n",
"\n"
]
}
],
"source": [
"longrun <- read_csv(\"./bundle.csv\") %>% mutate(value = value / 1000)\n",
"longrun$conf <- factor(longrun$conf, levels=c(\"Default\", \"2 hops\", \"1 way anon.\"))\n",
"longrun$strat <- factor(longrun$strat, levels=c(\"Donar Alternate\", \"Donar Double Send\", \"Torfone\", \"Simple\"))"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table>\n",
"<caption>A grouped_df: 24 x 4</caption>\n",
"<thead>\n",
"\t<tr><th scope=col>call_duration</th><th scope=col>conf</th><th scope=col>strat</th><th scope=col>ok</th></tr>\n",
"\t<tr><th scope=col>&lt;chr&gt;</th><th scope=col>&lt;fct&gt;</th><th scope=col>&lt;fct&gt;</th><th scope=col>&lt;dbl&gt;</th></tr>\n",
"</thead>\n",
"<tbody>\n",
"\t<tr><td>5 min </td><td>Default </td><td>Donar Alternate </td><td>0.45882353</td></tr>\n",
"\t<tr><td>5 min </td><td>Default </td><td>Donar Double Send</td><td>0.86842105</td></tr>\n",
"\t<tr><td>5 min </td><td>Default </td><td>Torfone </td><td>0.43010753</td></tr>\n",
"\t<tr><td>5 min </td><td>Default </td><td>Simple </td><td>0.08849558</td></tr>\n",
"\t<tr><td>5 min </td><td>2 hops </td><td>Donar Alternate </td><td>0.85057471</td></tr>\n",
"\t<tr><td>5 min </td><td>2 hops </td><td>Donar Double Send</td><td>0.91578947</td></tr>\n",
"\t<tr><td>5 min </td><td>2 hops </td><td>Torfone </td><td>0.34905660</td></tr>\n",
"\t<tr><td>5 min </td><td>2 hops </td><td>Simple </td><td>0.44347826</td></tr>\n",
"\t<tr><td>5 min </td><td>1 way anon.</td><td>Donar Alternate </td><td>0.65476190</td></tr>\n",
"\t<tr><td>5 min </td><td>1 way anon.</td><td>Donar Double Send</td><td>0.98809524</td></tr>\n",
"\t<tr><td>5 min </td><td>1 way anon.</td><td>Torfone </td><td>0.35135135</td></tr>\n",
"\t<tr><td>5 min </td><td>1 way anon.</td><td>Simple </td><td>0.07017544</td></tr>\n",
"\t<tr><td>90 min</td><td>Default </td><td>Donar Alternate </td><td>0.57647059</td></tr>\n",
"\t<tr><td>90 min</td><td>Default </td><td>Donar Double Send</td><td>0.86842105</td></tr>\n",
"\t<tr><td>90 min</td><td>Default </td><td>Torfone </td><td>0.31182796</td></tr>\n",
"\t<tr><td>90 min</td><td>Default </td><td>Simple </td><td>0.02654867</td></tr>\n",
"\t<tr><td>90 min</td><td>2 hops </td><td>Donar Alternate </td><td>0.87356322</td></tr>\n",
"\t<tr><td>90 min</td><td>2 hops </td><td>Donar Double Send</td><td>0.94736842</td></tr>\n",
"\t<tr><td>90 min</td><td>2 hops </td><td>Torfone </td><td>0.25471698</td></tr>\n",
"\t<tr><td>90 min</td><td>2 hops </td><td>Simple </td><td>0.22608696</td></tr>\n",
"\t<tr><td>90 min</td><td>1 way anon.</td><td>Donar Alternate </td><td>0.77380952</td></tr>\n",
"\t<tr><td>90 min</td><td>1 way anon.</td><td>Donar Double Send</td><td>0.96428571</td></tr>\n",
"\t<tr><td>90 min</td><td>1 way anon.</td><td>Torfone </td><td>0.22972973</td></tr>\n",
"\t<tr><td>90 min</td><td>1 way anon.</td><td>Simple </td><td>0.01754386</td></tr>\n",
"</tbody>\n",
"</table>\n"
],
"text/latex": [
"A grouped\\_df: 24 x 4\n",
"\\begin{tabular}{llll}\n",
" call\\_duration & conf & strat & ok\\\\\n",
" <chr> & <fct> & <fct> & <dbl>\\\\\n",
"\\hline\n",
"\t 5 min & Default & Donar Alternate & 0.45882353\\\\\n",
"\t 5 min & Default & Donar Double Send & 0.86842105\\\\\n",
"\t 5 min & Default & Torfone & 0.43010753\\\\\n",
"\t 5 min & Default & Simple & 0.08849558\\\\\n",
"\t 5 min & 2 hops & Donar Alternate & 0.85057471\\\\\n",
"\t 5 min & 2 hops & Donar Double Send & 0.91578947\\\\\n",
"\t 5 min & 2 hops & Torfone & 0.34905660\\\\\n",
"\t 5 min & 2 hops & Simple & 0.44347826\\\\\n",
"\t 5 min & 1 way anon. & Donar Alternate & 0.65476190\\\\\n",
"\t 5 min & 1 way anon. & Donar Double Send & 0.98809524\\\\\n",
"\t 5 min & 1 way anon. & Torfone & 0.35135135\\\\\n",
"\t 5 min & 1 way anon. & Simple & 0.07017544\\\\\n",
"\t 90 min & Default & Donar Alternate & 0.57647059\\\\\n",
"\t 90 min & Default & Donar Double Send & 0.86842105\\\\\n",
"\t 90 min & Default & Torfone & 0.31182796\\\\\n",
"\t 90 min & Default & Simple & 0.02654867\\\\\n",
"\t 90 min & 2 hops & Donar Alternate & 0.87356322\\\\\n",
"\t 90 min & 2 hops & Donar Double Send & 0.94736842\\\\\n",
"\t 90 min & 2 hops & Torfone & 0.25471698\\\\\n",
"\t 90 min & 2 hops & Simple & 0.22608696\\\\\n",
"\t 90 min & 1 way anon. & Donar Alternate & 0.77380952\\\\\n",
"\t 90 min & 1 way anon. & Donar Double Send & 0.96428571\\\\\n",
"\t 90 min & 1 way anon. & Torfone & 0.22972973\\\\\n",
"\t 90 min & 1 way anon. & Simple & 0.01754386\\\\\n",
"\\end{tabular}\n"
],
"text/markdown": [
"\n",
"A grouped_df: 24 x 4\n",
"\n",
"| call_duration &lt;chr&gt; | conf &lt;fct&gt; | strat &lt;fct&gt; | ok &lt;dbl&gt; |\n",
"|---|---|---|---|\n",
"| 5 min | Default | Donar Alternate | 0.45882353 |\n",
"| 5 min | Default | Donar Double Send | 0.86842105 |\n",
"| 5 min | Default | Torfone | 0.43010753 |\n",
"| 5 min | Default | Simple | 0.08849558 |\n",
"| 5 min | 2 hops | Donar Alternate | 0.85057471 |\n",
"| 5 min | 2 hops | Donar Double Send | 0.91578947 |\n",
"| 5 min | 2 hops | Torfone | 0.34905660 |\n",
"| 5 min | 2 hops | Simple | 0.44347826 |\n",
"| 5 min | 1 way anon. | Donar Alternate | 0.65476190 |\n",
"| 5 min | 1 way anon. | Donar Double Send | 0.98809524 |\n",
"| 5 min | 1 way anon. | Torfone | 0.35135135 |\n",
"| 5 min | 1 way anon. | Simple | 0.07017544 |\n",
"| 90 min | Default | Donar Alternate | 0.57647059 |\n",
"| 90 min | Default | Donar Double Send | 0.86842105 |\n",
"| 90 min | Default | Torfone | 0.31182796 |\n",
"| 90 min | Default | Simple | 0.02654867 |\n",
"| 90 min | 2 hops | Donar Alternate | 0.87356322 |\n",
"| 90 min | 2 hops | Donar Double Send | 0.94736842 |\n",
"| 90 min | 2 hops | Torfone | 0.25471698 |\n",
"| 90 min | 2 hops | Simple | 0.22608696 |\n",
"| 90 min | 1 way anon. | Donar Alternate | 0.77380952 |\n",
"| 90 min | 1 way anon. | Donar Double Send | 0.96428571 |\n",
"| 90 min | 1 way anon. | Torfone | 0.22972973 |\n",
"| 90 min | 1 way anon. | Simple | 0.01754386 |\n",
"\n"
],
"text/plain": [
" call_duration conf strat ok \n",
"1 5 min Default Donar Alternate 0.45882353\n",
"2 5 min Default Donar Double Send 0.86842105\n",
"3 5 min Default Torfone 0.43010753\n",
"4 5 min Default Simple 0.08849558\n",
"5 5 min 2 hops Donar Alternate 0.85057471\n",
"6 5 min 2 hops Donar Double Send 0.91578947\n",
"7 5 min 2 hops Torfone 0.34905660\n",
"8 5 min 2 hops Simple 0.44347826\n",
"9 5 min 1 way anon. Donar Alternate 0.65476190\n",
"10 5 min 1 way anon. Donar Double Send 0.98809524\n",
"11 5 min 1 way anon. Torfone 0.35135135\n",
"12 5 min 1 way anon. Simple 0.07017544\n",
"13 90 min Default Donar Alternate 0.57647059\n",
"14 90 min Default Donar Double Send 0.86842105\n",
"15 90 min Default Torfone 0.31182796\n",
"16 90 min Default Simple 0.02654867\n",
"17 90 min 2 hops Donar Alternate 0.87356322\n",
"18 90 min 2 hops Donar Double Send 0.94736842\n",
"19 90 min 2 hops Torfone 0.25471698\n",
"20 90 min 2 hops Simple 0.22608696\n",
"21 90 min 1 way anon. Donar Alternate 0.77380952\n",
"22 90 min 1 way anon. Donar Double Send 0.96428571\n",
"23 90 min 1 way anon. Torfone 0.22972973\n",
"24 90 min 1 way anon. Simple 0.01754386"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"longrun %>% filter(metric == 'q99') %>% group_by(call_duration, conf, strat) %>% summarise(ok=sum((value < 360)) / n())"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAMAAADKOT/pAAADAFBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJyco\nKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6\nOjo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tM\nTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1e\nXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29w\ncHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGC\ngoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OU\nlJSVlZWWlpaXl5eYmJiZmZmampqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWm\npqanp6eoqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4\nuLi5ubm6urq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnK\nysrLy8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc\n3Nzd3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u\n7u7v7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7////i\nsF19AAAACXBIWXMAABJ0AAASdAHeZh94AAAgAElEQVR4nOydB3gURRuAv4TQCXAgoAEEIkV6\nOfQHBBEMNgzFGOkIAgcoggh4AiogLaAoHUKXIhoQRRDFIyBIMx5SpMMRepVQ0ggJN//M7vXb\n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\n37gEC
"text/plain": [
"plot without title"
]
},
"metadata": {
"image/png": {
"height": 420,
"width": 420
},
"text/plain": {
"height": 420,
"width": 420
}
},
"output_type": "display_data"
}
],
"source": [
"qos <- data.frame(delay = c(360, 160), metric = c(\"Max One Way Delay\",\"Ideal One Way Delay\"))\n",
"ggplot(longrun %>% filter(metric == 'q99'), aes(x=value, group=strat, linetype=strat)) +\n",
" geom_vline(aes(xintercept=delay, color=metric), data=qos) +\n",
" stat_ecdf(pad=FALSE) +\n",
" scale_x_continuous(expand = c(0, 0)) +\n",
" scale_y_continuous(expand = c(0, 0), labels=scales::percent) +\n",
" scale_colour_manual(values = c(\"#cccccc\", \"#888888\")) +\n",
" coord_cartesian(xlim=c(0,750)) +\n",
" guides(linetype = guide_legend(nrow=2)) +\n",
" ylab(\"% of calls\") +\n",
" xlab(\"99th Quantile One Way Delay (ms)\") +\n",
" labs(color=\"QoS\", linetype=\"Algorithm\") +\n",
" facet_grid(conf ~ call_duration, scales = \"free\", switch=\"both\") +\n",
" theme_classic() +\n",
" theme(legend.position=\"top\", legend.box=\"vertical\", legend.margin=margin(), strip.placement=\"outside\") + \n",
" ggsave(\"./eval1.pdf\", width=12, height=14,units=\"cm\")"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAIAAAByhViMAAAACXBIWXMAABJ0AAASdAHeZh94\nAAAgAElEQVR4nOzde1wU5eLH8WcWWO43EVHxgigIKFBa/jSs1IOmWdYxzbxmaWmaec/Kysry\nHFNJj/fS0sTSUtJzTDM1y7yVioYXFM073lJBwAWW3Z3fH3vaQwi4KMvAw+f9On/szjw7892t\nk19n5plRVFUVAAAAqPp0WgcAAABA+aDYAQAASIJiBwAAIAmKHQAAgCQodgAAAJKg2AEAAEiC\nYgcAACAJih0AAIAkKHYAAACSoNgBAABIgmIHAAAgCYodAACAJCh2AAAAkqDYAQAASIJiBwAA\nIAmKHSCPzZs3K4qyZMmSYt9WLVU6PABohWIHVBZGo/GTTz7p2LFjYGCgXq+vWbNmfHz8ggUL\n8vLyHLTHvXv3Kn/S6XS+vr5hYWE9evRYtmyZ43Z6q7S0tHfeeSclJaXC9ggAsnLWOgAAIYQ4\nf/78448/fuDAgbCwsN69e9epUycrK2v37t3Dhg37+uuvt2zZ4rhdt2rVqmfPnkKImzdvnj17\ndvPmzatXr37//fdXrVoVHR3tuP3apKWlvfvuu02aNImJibEt7NChQ25urouLSwUEkMbAgQOv\nXr26bt06rYNUdvxQkBjFDtBeQUGBtdVNmTJlwoQJOt3/DqUfOXJk3rx5Dt17dHT0uHHjbG8t\nFsucOXNGjRr1yCOPHDp0qEaNGne8ZYPB4OHhcWef1el0bm5ud7zrym/OnDkjRowovGTTpk3x\n8fF3s822bdvm5OTcXS5t5OfnT506NTEx8ezZs/Xr1x8xYsQrr7xiW/vtt99OnDjx6NGjgYGB\nzz///KRJkwr/f+QOVN0fCrg9FYDWFi1aJITo27dv6cMyMzMnTpzYqlWrgIAAvV7fqFGjsWPH\nZmdn2wZs2rRJCPHZZ58V+/ZWe/bsEUIMGjTo1lWjR48WQrz99tvWtx999JEQYs+ePYXHPPHE\nE56enra3X3/9tRBi5cqV77zzTpMmTVxcXCZMmHDb2JMmTSryH6WHH3642PAZGRljxowJCQnR\n6/W1atXq06fP8ePHi+x91apV//znP8PCwvR6ff369d9//32LxVL6r6qV2bNnBwQE7C+k8D/K\n6uall17y9/dfsWJFWlra8uXLfXx8/vWvf1lX7dq1y8nJafjw4SkpKUuXLnV3d584caK2aYHK\njGIHaO+RRx4RQuzevbv0YQcPHgwMDHzppZc++uijuXPn9urVS1GUBx980NZdyrHYnThxQgjR\nokUL61v7i11ISEhcXNxXX321bdu2Xbt23Tb2qVOnpkyZIoR44403tm7dunXr1v37998aPicn\nx3peuG/fvnPnzh01apSrq6u/v//Ro0cL7z00NLRz584bNmzYtWvXoEGDhBDz588v/VfVyuzZ\ns4OCguwZ+dRTT/Xq1evDDz+sW7eup6dn7969b968uXr16sjISA8Pj/j4+PPnz1tHPvvss127\ndrV96umnn540aVL9+vV9fX27du2anp7uqC9zd8xms4eHx3vvvWdb8uabbwYFBZlMJlVVu3fv\nHhkZWXiVp6fnzZs3b92O9D8UYA9OxQLaO3jwoKIoLVu2LH1YWFhYenq67bKzYcOGxcTETJw4\nccuWLXd5Cu9WjRs39vb2PnbsWFk/qNfrf/zxR2fn//23pfTYISEh1sYWGRnZrl27kjY7Y8aM\ngwcPfvDBB2+88YZ1SZcuXR555JGRI0d+9913tmE1atRYv369oihCiFatWm3btu1f//rX0KFD\n7Umu3shUz5wq6/ctyttH16ixnWOvX79eu3Zto9EYERExZsyYHj16lDRy48aNer3+P//5z8WL\nF/v16/fUU0/l5uZ+8sknTk5OgwYNeuWVV1avXn3rp9asWRMdHZ2WlpaXl9e1a9cRI0YUO6wk\na69eN6oW+8cXq2uNGh5OtzltajabCwoKCp+19/Lyunz58rFjx6Kionbs2NGnTx/bqs6dO7//\n/vv79++Pi4u7dVOa/FBApUKxA7SXlZXl4eFRuAwVy9XV1fa6oKDAbDb//e9/nzhx4u7du8u9\n2AkhfHx80tPTzWazk5OT/Z967rnninyRcom9evVqLy+vMWPG2JZ06tSpTZs2mzZtysrK8vHx\nsS7s37+/tdUJIXQ63X333bd69WqLxWLPJVnq2dMFyz+zM09JdE2j7Cx2UVFR8+bNa968eW5u\n7hdffNGzZ8+PPvpo1KhRxQ729/f/7LPPrP8g+vbtO3/+/AsXLgQFBQkhxowZYz1vfqvw8PA3\n33xTCOHm5jZ8+HA7C67N88eOXy8wlekjtzrb5j4PJ9fSx7i4uHTq1Gnu3LmdOnVq3rz5b7/9\nNnfuXCFEenp6RETE5cuXa9eubRtsfX3hwoViN6XJDwVUKhQ7QHs+Pj4XL140mUy37XZLliz5\n+OOPf/vtN4PBYFt4/fp1R6TKysry9PQsU6sTQjRq1OjWhXcf++TJk40bNy4ynSI6OnrXrl2n\nT5+2TaetX79+4QE+Pj5GozE7O9vX1/e2u1CC6zt3f8b+SMVvxM/PzpEdOnTo0KGD9XX79u1v\n3LgxderUkordPffcY/sHERwcHBwcbC0rQoi6detmZ2cXO08lIiLC9rpWrVolDStJQuNG+Za7\nPWLnf7t/pa0WL1780ksv3XPPPYqiBAQE9O/ff8aMGaX8u2er70Vo8kMBlQrFDtBedHT0hQsX\nkpOTW7VqVcqwhISEsWPHPv7444sWLapbt66rq+u1a9cee+wxy13/6XurEydOZGdnt2jRwvq2\n2D9HTaZiDucUPj5XjrFVVS3pz/LCih2jqqo9u1BqBDj93wP2RypfDzzwwNdff200GvV6/a1r\nCy9UFKXIWyFEsT/mrcWoTL/5s7Vr2T/4LgUFBSUlJRmNxitXrtSpU+eTTz4RQjRp0kSn0wUF\nBV26dMk20vq6Tp06xW5Hkx8KqFQodoD2evbsuXHjxjlz5nz++eelDFu8eHGjRo3Wrl1rqy8/\n//yzgyJZz4U9/vjj1rfWm54UOcZmnWBxW7eNbU9ja9y48YkTJ/Ly8goftDt06JBOpwsJCbEn\nRiW3Y8eOoKCgYltd9aHX6+vVq2c2m+fNm3ffffc1aNBACBEXF/fdd98lJCRYx3z33Xeenp73\n3nuvpkmByosnTwDa69+//z333LNs2bLp06cXObx07Ngx2+k5nU6nqqrZbLa+NZvN1vmk5cti\nscyePXvWrFl16tQZOXKkdWHTpk2FEIWnKSQlJdk5teK2sb29vcXtzsx27949Jydn5syZtiWb\nN2/euXNnfHy87QK7quXFF1/8/PPPd+zYsXnz5sGDB69atarw3QSrmx9++GHevHk7duz45ptv\nOnbs+Pvvv9tu3zh+/Pi0tLSXX3754MGDy5YtmzFjxqhRozhPCpSEI3aA9qzz+B577LHx48d/\n+umnXbp0qV27dlZW1i+//LJlyxbbXNEePXq88847Xbp0efrpp7Ozs1esWGHnScbSHTx4cPr0\n6UKI3NzcM2fObN68+cyZM2FhYatXr/b397eOadWqVevWrWfNmpWdnd28efOUlJS1a9dGR0ef\nPHnyttu/bezY2Fg3N7fZs2fr9Xo/P79atWrZLj6zGTdu3KpVq15//fXDhw8/8MADx48fnz9/\nvr+//6xZs+7+F9CEu7v75MmT09PT3dzcmjZtumLFil69emkdSjNOTk7z588/fvy4q6tr27Zt\nt2/fbjsm17p16zVr1rz55puffPJJYGDguHHj3nnnHU3DApWbhrdaAVBYXl7ewoULO3ToEBAQ\n4Ozs7O/v365duzlz5hgMBuuAgoKC999/v3Hjxta7744ePfrUqVNCiJEjR1oH3Nl97KwURfHy\n8mrcuPFTTz21dOnS3NzcIoPPnj375JNPenl5eXp6duzYMSUlpdj72H3zzTdFPnjb2KqqJiUl\nxcbGW
"text/plain": [
"plot without title"
]
},
"metadata": {
"image/png": {
"height": 420,
"width": 420
},
"text/plain": {
"height": 420,
"width": 420
}
},
"output_type": "display_data"
}
],
"source": [
"qos <- data.frame(delay = c(360), metric = c(\"Max Delay\"))\n",
"ggplot(longrun %>% filter(metric == 'q99' & conf == '2 hops' & strat == 'Simple'), aes(x=value, group=call_duration, color=call_duration)) +\n",
" geom_vline(aes(xintercept=delay, linetype=metric),color='purple', data=qos) +\n",
" stat_ecdf(pad=FALSE) +\n",
" scale_x_continuous(expand = c(0, 0)) +\n",
" scale_y_continuous(expand = c(0, 0), labels=scales::percent) +\n",
" coord_cartesian(xlim=c(0,750)) +\n",
" guides(linetype = guide_legend(nrow=1)) +\n",
" ylab(\"% of calls\") +\n",
" xlab(\"99th-perc Delay (ms)\") +\n",
" labs(linetype=\"QoS\", color=\"Call Duration\") +\n",
" theme_classic() +\n",
" theme(legend.position=\"top\", legend.box=\"vertical\", legend.margin=margin()) + \n",
" ggsave(\"./x2.pdf\", width=10, height=10,units=\"cm\")"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Parsed with column specification:\n",
"cols(\n",
" link = \u001b[31mcol_character()\u001b[39m,\n",
" anon = \u001b[31mcol_character()\u001b[39m,\n",
" uuid = \u001b[31mcol_character()\u001b[39m,\n",
" metric = \u001b[31mcol_character()\u001b[39m,\n",
" value = \u001b[32mcol_double()\u001b[39m,\n",
" call_duration = \u001b[31mcol_character()\u001b[39m\n",
")\n",
"\n"
]
}
],
"source": [
"torlinkscmp <- read_csv(\"./donarv4/torlinkscmp2.csv\") %>% mutate(value = value / 1000)\n",
"torlinkscmp$call_duration <- factor(torlinkscmp$call_duration, levels=c(\"90 min\", \"5 min\", \"30 sec\"))\n"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAMAAADKOT/pAAADAFBMVEUAAAABAQECAgIDAwME\nBAQFBQUGBgYHBwcICAgJCQkKCgoLCwsMDAwNDQ0ODg4PDw8QEBARERESEhITExMUFBQVFRUW\nFhYXFxcYGBgZGRkaGhobGxscHBwdHR0eHh4fHx8gICAhISEiIiIjIyMkJCQlJSUmJiYnJyco\nKCgpKSkqKiorKyssLCwtLS0uLi4vLy8wMDAxMTEyMjIzMzM0NDQ1NTU2NjY3Nzc4ODg5OTk6\nOjo7Ozs8PDw9PT0+Pj4/Pz9AQEBBQUFCQkJDQ0NERERFRUVGRkZHR0dISEhJSUlKSkpLS0tM\nTExNTU1OTk5PT09QUFBRUVFSUlJTU1NUVFRVVVVWVlZXV1dYWFhZWVlaWlpbW1tcXFxdXV1e\nXl5fX19gYGBhYWFiYmJjY2NkZGRlZWVmZmZnZ2doaGhpaWlqampra2tsbGxtbW1ubm5vb29w\ncHBxcXFycnJzc3N0dHR1dXV2dnZ3d3d4eHh5eXl6enp7e3t8fHx9fX1+fn5/f3+AgICBgYGC\ngoKDg4OEhISFhYWGhoaHh4eIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+QkJCRkZGSkpKTk5OU\nlJSVlZWWlpaXl5eYmJiZmZmampqbm5ucnJydnZ2enp6fn5+goKChoaGioqKjo6OkpKSlpaWm\npqanp6eoqKipqamqqqqrq6usrKytra2urq6vr6+wsLCxsbGysrKzs7O0tLS1tbW2tra3t7e4\nuLi5ubm6urq7u7u8vLy9vb2+vr6/v7/AwMDBwcHCwsLDw8PExMTFxcXGxsbHx8fIyMjJycnK\nysrLy8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbX19fY2NjZ2dna2trb29vc\n3Nzd3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTl5eXm5ubn5+fo6Ojp6enq6urr6+vs7Ozt7e3u\n7u7v7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+/v7////i\nsF19AAAACXBIWXMAABJ0AAASdAHeZh94AAAgAElEQVR4nOydC5xMZf/Af9b9WptKkbCSKJea\n7jelLb35b5QmSUTY6EIkGyq8wkg3dytaomhJifRq3Cmlcb/TWPdcF2tZu+w+/+ecMzNnrs+c\n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\n9fmTh
"text/plain": [
"plot without title"
]
},
"metadata": {
"image/png": {
"height": 420,
"width": 420
},
"text/plain": {
"height": 420,
"width": 420
}
},
"output_type": "display_data"
}
],
"source": [
"# todo: replot but grouped by link type instead!\n",
"ggplot(torlinkscmp %>% filter(metric == 'q99'), aes(x=value, group=call_duration, linetype=call_duration)) +\n",
" geom_vline(aes(xintercept=delay, color=metric), data=qos) +\n",
" scale_colour_manual(values = c(\"#cccccc\", \"#888888\")) +\n",
" stat_ecdf(pad=FALSE) +\n",
" facet_grid(link ~ anon, scales = \"free\", switch=\"both\") +\n",
" theme_classic() +\n",
" xlab(\"99th Quantile One Way Delay (ms)\") +\n",
" ylab(\"% of calls\") +\n",
" labs(color=\"QoS\", linetype=\"Call duration\") +\n",
" scale_x_continuous(expand = c(0, 0)) +\n",
" scale_y_continuous(expand = c(0, 0), labels=scales::percent) +\n",
" coord_cartesian(xlim=c(0,750)) +\n",
" theme(legend.position=\"top\", legend.box=\"vertical\", legend.margin=margin(), strip.placement=\"outside\") + \n",
" ggsave(\"./donarv4/eval2.pdf\", width=12, height=10, units=\"cm\")"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table>\n",
"<caption>A grouped_df: 12 x 4</caption>\n",
"<thead>\n",
"\t<tr><th scope=col>call_duration</th><th scope=col>link</th><th scope=col>anon</th><th scope=col>ok</th></tr>\n",
"\t<tr><th scope=col>&lt;fct&gt;</th><th scope=col>&lt;chr&gt;</th><th scope=col>&lt;chr&gt;</th><th scope=col>&lt;dbl&gt;</th></tr>\n",
"</thead>\n",
"<tbody>\n",
"\t<tr><td>90 min</td><td>Exit </td><td>1 way anon.</td><td>0.49532710</td></tr>\n",
"\t<tr><td>90 min</td><td>Exit </td><td>2 way anon.</td><td>0.17808219</td></tr>\n",
"\t<tr><td>90 min</td><td>Onion Service</td><td>1 way anon.</td><td>0.04587156</td></tr>\n",
"\t<tr><td>90 min</td><td>Onion Service</td><td>2 way anon.</td><td>0.06194690</td></tr>\n",
"\t<tr><td>5 min </td><td>Exit </td><td>1 way anon.</td><td>0.63551402</td></tr>\n",
"\t<tr><td>5 min </td><td>Exit </td><td>2 way anon.</td><td>0.27397260</td></tr>\n",
"\t<tr><td>5 min </td><td>Onion Service</td><td>1 way anon.</td><td>0.15596330</td></tr>\n",
"\t<tr><td>5 min </td><td>Onion Service</td><td>2 way anon.</td><td>0.18584071</td></tr>\n",
"\t<tr><td>30 sec</td><td>Exit </td><td>1 way anon.</td><td>0.80373832</td></tr>\n",
"\t<tr><td>30 sec</td><td>Exit </td><td>2 way anon.</td><td>0.42465753</td></tr>\n",
"\t<tr><td>30 sec</td><td>Onion Service</td><td>1 way anon.</td><td>0.20183486</td></tr>\n",
"\t<tr><td>30 sec</td><td>Onion Service</td><td>2 way anon.</td><td>0.27433628</td></tr>\n",
"</tbody>\n",
"</table>\n"
],
"text/latex": [
"A grouped\\_df: 12 x 4\n",
"\\begin{tabular}{llll}\n",
" call\\_duration & link & anon & ok\\\\\n",
" <fct> & <chr> & <chr> & <dbl>\\\\\n",
"\\hline\n",
"\t 90 min & Exit & 1 way anon. & 0.49532710\\\\\n",
"\t 90 min & Exit & 2 way anon. & 0.17808219\\\\\n",
"\t 90 min & Onion Service & 1 way anon. & 0.04587156\\\\\n",
"\t 90 min & Onion Service & 2 way anon. & 0.06194690\\\\\n",
"\t 5 min & Exit & 1 way anon. & 0.63551402\\\\\n",
"\t 5 min & Exit & 2 way anon. & 0.27397260\\\\\n",
"\t 5 min & Onion Service & 1 way anon. & 0.15596330\\\\\n",
"\t 5 min & Onion Service & 2 way anon. & 0.18584071\\\\\n",
"\t 30 sec & Exit & 1 way anon. & 0.80373832\\\\\n",
"\t 30 sec & Exit & 2 way anon. & 0.42465753\\\\\n",
"\t 30 sec & Onion Service & 1 way anon. & 0.20183486\\\\\n",
"\t 30 sec & Onion Service & 2 way anon. & 0.27433628\\\\\n",
"\\end{tabular}\n"
],
"text/markdown": [
"\n",
"A grouped_df: 12 x 4\n",
"\n",
"| call_duration &lt;fct&gt; | link &lt;chr&gt; | anon &lt;chr&gt; | ok &lt;dbl&gt; |\n",
"|---|---|---|---|\n",
"| 90 min | Exit | 1 way anon. | 0.49532710 |\n",
"| 90 min | Exit | 2 way anon. | 0.17808219 |\n",
"| 90 min | Onion Service | 1 way anon. | 0.04587156 |\n",
"| 90 min | Onion Service | 2 way anon. | 0.06194690 |\n",
"| 5 min | Exit | 1 way anon. | 0.63551402 |\n",
"| 5 min | Exit | 2 way anon. | 0.27397260 |\n",
"| 5 min | Onion Service | 1 way anon. | 0.15596330 |\n",
"| 5 min | Onion Service | 2 way anon. | 0.18584071 |\n",
"| 30 sec | Exit | 1 way anon. | 0.80373832 |\n",
"| 30 sec | Exit | 2 way anon. | 0.42465753 |\n",
"| 30 sec | Onion Service | 1 way anon. | 0.20183486 |\n",
"| 30 sec | Onion Service | 2 way anon. | 0.27433628 |\n",
"\n"
],
"text/plain": [
" call_duration link anon ok \n",
"1 90 min Exit 1 way anon. 0.49532710\n",
"2 90 min Exit 2 way anon. 0.17808219\n",
"3 90 min Onion Service 1 way anon. 0.04587156\n",
"4 90 min Onion Service 2 way anon. 0.06194690\n",
"5 5 min Exit 1 way anon. 0.63551402\n",
"6 5 min Exit 2 way anon. 0.27397260\n",
"7 5 min Onion Service 1 way anon. 0.15596330\n",
"8 5 min Onion Service 2 way anon. 0.18584071\n",
"9 30 sec Exit 1 way anon. 0.80373832\n",
"10 30 sec Exit 2 way anon. 0.42465753\n",
"11 30 sec Onion Service 1 way anon. 0.20183486\n",
"12 30 sec Onion Service 2 way anon. 0.27433628"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"torlinkscmp %>% filter(metric == 'q99') %>% group_by(call_duration, link, anon) %>% summarise(ok=sum((value < 360)) / n())"
]
},
{
"cell_type": "code",
"execution_count": 129,
"metadata": {},
"outputs": [],
"source": [
"torlinkscmp %>% filter(metric == 'count' & ((value > 134.980 & call_duration == '90 min') | (value > 7.480 & call_duration == '5 min')| (value > 0.720 & call_duration == '30 sec'))) %>% select(uuid) -> no_break "
]
},
{
"cell_type": "code",
"execution_count": 134,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
" uuid \n",
" Length:1200 \n",
" Class :character \n",
" Mode :character "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
" link uuid metric value \n",
" Length:1259 Length:1259 Length:1259 Min. : 0.189 \n",
" Class :character Class :character Class :character 1st Qu.: 0.750 \n",
" Mode :character Mode :character Mode :character Median : 7.500 \n",
" Mean : 44.281 \n",
" 3rd Qu.:134.995 \n",
" Max. :135.000 \n",
" call_duration \n",
" Length:1259 \n",
" Class :character \n",
" Mode :character \n",
" \n",
" \n",
" "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"no_break %>% summary\n",
"torlinkscmp %>% filter(metric == 'count') %>% summary"
]
},
{
"cell_type": "code",
"execution_count": 144,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\nAAAAk
"text/plain": [
"plot without title"
]
},
"metadata": {
"image/png": {
"height": 420,
"width": 420
},
"text/plain": {
"height": 420,
"width": 420
}
},
"output_type": "display_data"
}
],
"source": [
"ggplot(torlinkscmp %>% filter(metric == 'count' & call_duration == '90 min'), aes(x=value, group=link, color=link)) +\n",
" stat_ecdf(pad=FALSE) + \n",
" coord_cartesian(ylim=c(0,0.16)) +\n",
" theme_classic()"
]
},
{
"cell_type": "code",
"execution_count": 153,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Parsed with column specification:\n",
"cols(\n",
" algo = \u001b[31mcol_character()\u001b[39m,\n",
" uuid = \u001b[31mcol_character()\u001b[39m,\n",
" metric = \u001b[31mcol_character()\u001b[39m,\n",
" value = \u001b[32mcol_double()\u001b[39m\n",
")\n",
"\n"
]
}
],
"source": [
"min90 <- read_csv(\"./donarv4/135000.csv\")\n"
]
},
{
"cell_type": "code",
"execution_count": 154,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\ndY+ae
"text/plain": [
"plot without title"
]
},
"metadata": {
"image/png": {
"height": 420,
"width": 420
},
"text/plain": {
"height": 420,
"width": 420
}
},
"output_type": "display_data"
}
],
"source": [
"ggplot(min90 %>% filter(metric == 'q99') %>% mutate(value = value / 1000), aes(x=value, group=algo, linetype=algo, color=algo)) + stat_ecdf(pad=FALSE) + coord_cartesian(xlim=c(0,800)) + theme_classic()"
]
},
{
"cell_type": "code",
"execution_count": 170,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Parsed with column specification:\n",
"cols(\n",
" algo = \u001b[31mcol_character()\u001b[39m,\n",
" uuid = \u001b[31mcol_character()\u001b[39m,\n",
" metric = \u001b[31mcol_character()\u001b[39m,\n",
" value = \u001b[32mcol_double()\u001b[39m\n",
")\n",
"\n"
]
},
{
"data": {
"image/png": "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\n+m/xK
"text/plain": [
"plot without title"
]
},
"metadata": {
"image/png": {
"height": 420,
"width": 420
},
"text/plain": {
"height": 420,
"width": 420
}
},
"output_type": "display_data"
}
],
"source": [
"e7501 <- read_csv(\"./donarv4/130001.csv\")\n",
"ggplot(e7501 %>% filter(metric == 'med') %>% mutate(value = value / 1000), aes(x=value, group=algo, linetype=algo, color=algo)) + stat_ecdf(pad=FALSE) + coord_cartesian(xlim=c(0,800)) + theme_classic()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "R",
"language": "R",
"name": "ir"
},
"language_info": {
"codemirror_mode": "r",
"file_extension": ".r",
"mimetype": "text/x-r-source",
"name": "R",
"pygments_lexer": "r",
"version": "3.6.2"
}
},
"nbformat": 4,
"nbformat_minor": 4
}