107 | | == |
| 111 | === High Numbered port Test === |
| 112 | |
| 113 | Start a fresh NOX controller instance on sb9 and enable packet dumps |
| 114 | {{{ |
| 115 | root@console:/root/nox/build/src# ./nox_core -i ptcp:6635 switch packetdump |
| 116 | }}} |
| 117 | |
| 118 | Attempt to connect to a high numbered port on a different node (using the Ip of the data interface): |
| 119 | {{{ |
| 120 | root@node1-1:~# telnet 192.168.1.2 10001 |
| 121 | Trying 192.168.1.2... |
| 122 | telnet: Unable to connect to remote host: Connection refused |
| 123 | }}} |
| 124 | |
| 125 | If the traffic is split properly, your controller should register event similar to this: |
| 126 | |
| 127 | {{{ |
| 128 | [(Giga-Byte Technology Co.,LTD.):84:9b:30>(Giga-Byte Technology Co.,LTD.):83:a0:5c:IP]([v:4hl:5l:60t:64]TCP cs:8a65[192.168.1.1>192.168.1.2]){44653>10001} seq:3830918239 ack:0 f:0x2 |
| 129 | [(Giga-Byte Technology Co.,LTD.):83:a0:5c>(Giga-Byte Technology Co.,LTD.):84:9b:30:IP]([v:4hl:5l:40t:64]TCP cs:b76c[192.168.1.2>192.168.1.1]){10001>44653} seq:0 ack:3830918240 f:0x14 |
| 130 | }}} |
| 131 | |
| 132 | == The experimental Traffic == |
| 133 | |
| 134 | '''''FIXME:This process will probably be Scripted.''''' |
| 135 | |
| 136 | Our experiment setup is as follows (refer to diagram above): |
| 137 | |
| 138 | Node1-1: Tracker 192.168.1.1:6969 |
| 139 | Node1-2: Seeder 192.168.1.2:10001-10005 |
| 140 | Node1-3: First downloader 192.168.1.3:10001-10005 |
| 141 | Node1-4: Second downloader (starts 1 Minute later to pull from multiple sources) 192.168.1.4:10001-10005 |
| 142 | |
| 143 | A torrent file and data file were created on node1-1 |
| 144 | {{{ |
| 145 | root@node1-1:~# dd if=/dev/zero of=./data.mp3 bs=100MB count=1 |
| 146 | root@node1-1:~# btmakemetafile data.mp3 http://192.168.1.1:6969/announce |
| 147 | root@node1-1:~# scp data.mp3 root@node1-2: |
| 148 | root@node1-1:~# scp data.mp3.torrent root@node1-2: |
| 149 | root@node1-1:~# scp data.mp3.torrent root@node1-3: |
| 150 | root@node1-1:~# scp data.mp3.torrent root@node1-4: |
| 151 | }}} |
| 152 | |
| 153 | We then start the tracker on node1-1 and when the process is running we see: |
| 154 | {{{ |
| 155 | root@node1-1:~# bttrack --port 6969 --dfile tracker.log |
| 156 | 192.168.1.4 - - [14/Mar/2010:19:44:46] "GET /announce?info_hash=%7Es%D0%B1%03%E5%02%BA%B6c_%7D%D6%DB%E1%A9%F5%CD%BC%DE&peer_id=M3-4-2--7f9e2d5669d8&port=10001&key=8a1ab764&uploaded=0&downloaded=0&left=1000000000&compact=1&event=started HTTP/1.1" 200 33 "-" "Python-urllib/2.6" |
| 157 | 192.168.1.4 - - [14/Mar/2010:19:44:47] "GET /announce?info_hash=%7Es%D0%B1%03%E5%02%BA%B6c_%7D%D6%DB%E1%A9%F5%CD%BC%DE&peer_id=M3-4-2--7f9e2d5669d8&port=10001&key=8a1ab764&uploaded=0&downloaded=0&left=1000000000&compact=1&event=stopped HTTP/1.1" 200 33 "-" "Python-urllib/2.6" |
| 158 | ... |
| 159 | }}} |
| 160 | |
| 161 | The seeders and downloaders on the respective nodes output: |
| 162 | {{{ |
| 163 | root@node1-2:~# btdownloadheadless --minport 10001 --maxport 10005 data.mp3.torrent |
| 164 | |
| 165 | saving: data.mp3 (953.7 M) |
| 166 | percent done: 0.0 |
| 167 | time left: checking existing file |
| 168 | download to: /root/data.mp3 |
| 169 | |
| 170 | saving: data.mp3 (953.7 M) |
| 171 | percent done: 0.2 |
| 172 | time left: checking existing file |
| 173 | download to: /root/data.mp3 |
| 174 | ... |
| 175 | }}} |
| 176 | |
| 177 | {{{ |
| 178 | root@node1-4:~# btdownloadheadless --minport 10001 --maxport 10005 data.mp3.torrent |
| 179 | saving: data.mp3 (953.7 M) |
| 180 | percent done: 0.0 |
| 181 | time left: |
| 182 | download to: /root/data.mp3 |
| 183 | download rate: 0.00 K/s |
| 184 | upload rate: 0.00 K/s |
| 185 | download total: 0.0 M |
| 186 | upload total: 0.0 M |
| 187 | |
| 188 | saving: data.mp3 (953.7 M) |
| 189 | percent done: 9.5 |
| 190 | time left: 5 min 55 sec |
| 191 | download to: /root/data.mp3 |
| 192 | download rate: 2497.60 K/s |
| 193 | upload rate: 665.95 K/s |
| 194 | download total: 91.5 M |
| 195 | upload total: 19.8 M |
| 196 | ... |
| 197 | }}} |
| 198 | root@node1-3:~# btdownloadheadless --minport 10001 --maxport 10005 data.mp3.torrent |
| 199 | saving: data.mp3 (953.7 M) |
| 200 | percent done: 1.9 |
| 201 | time left: 6 min 57 sec |
| 202 | download to: /root/data.mp3 |
| 203 | download rate: 2556.24 K/s |
| 204 | upload rate: 223.78 K/s |
| 205 | download total: 18.8 M |
| 206 | upload total: 2.5 M |
| 207 | ... |
| 208 | {{{ |
| 209 | |
| 210 | Finally on the Nox controller we should see events like this: |
| 211 | {{{ |
| 212 | NOX 0.8.0~full~beta (nox_core), compiled Mar 14 2010 16:21:17 |
| 213 | Compiled with OpenFlow 0x97 (exp) |
| 214 | [(Giga-Byte Technology Co.,LTD.):84:9b:30>(Giga-Byte Technology Co.,LTD.):83:a0:5c:IP]([v:4hl:5l:60t:64]TCP cs:8a65[192.168.1.1>192.168.1.2]){44653>10001} seq:3830918239 ack:0 f:0x2 |
| 215 | [(Giga-Byte Technology Co.,LTD.):83:a0:5c>(Giga-Byte Technology Co.,LTD.):84:9b:30:IP]([v:4hl:5l:40t:64]TCP cs:b76c[192.168.1.2>192.168.1.1]){10001>44653} seq:0 ack:3830918240 f:0x14 |
| 216 | [(Giga-Byte Technology Co.,LTD.):84:9b:30>(Giga-Byte Technology Co.,LTD.):85:9b:64:IP]([v:4hl:5l:60t:64]TCP cs:8d0d[192.168.1.1>192.168.1.4]){45508>10001} seq:1710024440 ack:0 f:0x2 |
| 217 | ... |
| 218 | }}} |
| 219 | |
| 220 | |