You are here: Home / Projects / Software Defined Network / QNet / Testing / NauLinux_QNet_7.3_testing

NauLinux_QNet_7.3_testing

by Elena Korytko last modified Dec 02, 2017 12:49 PM

Тестирование дистрибутива NauLinux QNet 7.3

Конфигурирование виртуальной модели сетевой инфраструктуры

Запустить подготовительный скрипт:

# /usr/share/mininet-qnet/prepare_vm.sh

В ходе выполнения скрипта:

  • Будут установлены программные пакеты mininet, python-ryu, stunnel.
  • Будет активирован и запущен openvswitch.
  • Будут созданы окружения chroot для stunnel.

Запустить ryu:

# ryu-manager --verbose ryu.app.ofctl_rest ryu.app.qcrypt

Запустить mininet-qnet:

# python /usr/share/mininet-qnet/mininet-qnet.py

Всем хостам в виртуальной сети будут присвоены IP-адреса в диапазоне 10.0.0.0/24.

Для каждого хоста будет запущен sshd.

В соответствии с конфигурацией, указанной в https://github.com/itmo-infocom/qnet/blob/master/doc/network.png, запустятся stunnel, netcat и qcrypt.

Будет запущен интерфейс командной строки mininet (выход из интерфейса командной строки прервет работу mininet и остановит все запущенные на хосте процессы).

 

Запуск тестового приложения

Проверить работу mininet-qnet, запустив тестовый скрипт:

# /usr/share/mininet-qnet/test.sh

 

Сообщения оператору

Сообщение 1

При запуске теста без кодирования каналов. Тест прошел успешно:

Flow tables clearing
{"status": 4, "result": "DELETE", "channel": "1"}{"status": 4, "result": "DELETE", "channel": "2"}Uncrypted channels
{"status": 3, "result": {"iport": 1, "dl": "00:00:00:00:00:03", "oport": 2, "tp": "1000", "nw": "10.0.0.3"}, "channel": "1"}{"status": 3, "result": {"iport": 1, "dl": "00:00:00:00:00:05", "oport": 2, "tp": "1000", "nw": "10.0.0.5"}, "channel": "2"}{"status": 5, "result": 32512, "channel": "1"}
root@10.0.0.1's password: 

STATUS=OK
channel 1: transparent, channel 2: transparent

Сообщение 2

При запуске теста с кодированием по квантовым каналам. Тест прошел успешно:

Quantum crypted channels
{"status": 1, "result": {"qaddr": ["127.0.0.1", "192.168.122.152"], "dl": "00:00:00:00:00:03", "key_poins": ["127.0.0.1:77", "http://localhost/cgi-bin/t", "127.0.0.1:78"], "tp": "1002", "iport": 1, "nw": "10.0.0.3", "oport": 2}, "channel": "1"}{"status": 1, "result": {"iport": 1, "dl": "00:00:00:00:00:05", "oport": 2, "tp": "1002", "nw": "10.0.0.5"}, "channel": "2"}{"status": 5, "result": 32512, "channel": "1"}
root@10.0.0.1's password: 

STATUS=OK
channel 1: qcrypt, channel 2: qcrypt

Сообщение 3

При запуске теста с кодированием по SSL-каналам. Тест прошел успешно:

SSL crypted channels
{"status": 0, "result": {"iport": 1, "dl": "00:00:00:00:00:03", "oport": 2, "tp": "1001", "nw": "10.0.0.3"}, "channel": "1"}{"status": 0, "result": {"iport": 1, "dl": "00:00:00:00:00:05", "oport": 2, "tp": "1001", "nw": "10.0.0.5"}, "channel": "2"}{"status": 5, "result": 32512, "channel": "1"}
root@10.0.0.1's password: 

STATUS=OK
channel 1: scrypt, channel 2: scrypt

Сообщение 4

При запуске теста без кодирования по первому сегменту и с кодированием по SSL по второму сегменту. Тест прошел успешно:

Mix...
Transparent -- SSL
{"status": 3, "result": {"iport": 1, "dl": "00:00:00:00:00:03", "oport": 2, "tp": "1000", "nw": "10.0.0.3"}, "channel": "1"}{"status": 0, "result": {"iport": 1, "dl": "00:00:00:00:00:05", "oport": 2, "tp": "1001", "nw": "10.0.0.5"}, "channel": "2"}{"status": 5, "result": 32512, "channel": "1"}
root@10.0.0.1's password:

STATUS=OK
channel 1: transparent, channel 2: scrypt

Сообщение 5

При запуске теста с кодированием по SSL по первому сегменту и без кодирования по второму сегменту. Тест прошел успешно:

SSL -- Transparent
{"status": 0, "result": {"iport": 1, "dl": "00:00:00:00:00:03", "oport": 2, "tp": "1001", "nw": "10.0.0.3"}, "channel": "1"}{"status": 3, "result": {"iport": 1, "dl": "00:00:00:00:00:05", "oport": 2, "tp": "1000", "nw": "10.0.0.5"}, "channel": "2"}{"status": 5, "result": 32512, "channel": "1"}
root@10.0.0.1's password: 

STATUS=OK
channel 1: scrypt, channel 2: transparent

Сообщение 6

При запуске теста без кодирования по первому сегменту и с кодированием по квантовому каналу по второму сегменту. Тест прошел успешно:

Transparent -- Quantum
{"status": 3, "result": {"iport": 1, "dl": "00:00:00:00:00:03", "oport": 2, "tp": "1000", "nw": "10.0.0.3"}, "channel": "1"}{"status": 1, "result": {"iport": 1, "dl": "00:00:00:00:00:05", "oport": 2, "tp": "1002", "nw": "10.0.0.5"}, "channel": "2"}{"status": 5, "result": 32512, "channel": "1"}
root@10.0.0.1's password: 

STATUS=OK
channel 1: transparent, channel 2: qcrypt

Сообщение 7

При запуске теста с кодированием по квантовому каналу по первому сегменту и без кодирования по второму сегменту. Тест прошел успешно:

Quantum -- Transparent
{"status": 1, "result": {"qaddr": ["127.0.0.1", "192.168.122.152"], "dl": "00:00:00:00:00:03", "key_poins": ["127.0.0.1:77", "http://localhost/cgi-bin/t", "127.0.0.1:78"], "tp": "1002", "iport": 1, "nw": "10.0.0.3", "oport": 2}, "channel": "1"}{"status": 3, "result": {"iport": 1, "dl": "00:00:00:00:00:05", "oport": 2, "tp": "1000", "nw": "10.0.0.5"}, "channel": "2"}{"status": 5, "result": 32512, "channel": "1"}
root@10.0.0.1's password: 

STATUS=OK
channel 1: qcrypt, channel 2: transparent

Сообщение 8

При запуске теста с кодированием по SSL по первому сегменту и с кодированием по квантовому каналу по второму сегменту. Тест прошел успешно:

SSL -- Quantum
{"status": 0, "result": {"iport": 1, "dl": "00:00:00:00:00:03", "oport": 2, "tp": "1001", "nw": "10.0.0.3"}, "channel": "1"}{"status": 1, "result": {"iport": 1, "dl": "00:00:00:00:00:05", "oport": 2, "tp": "1002", "nw": "10.0.0.5"}, "channel": "2"}{"status": 5, "result": 32512, "channel": "1"}
root@10.0.0.1's password: 

STATUS=OK
channel 1: scrypt, channel 2: qcrypt

Сообщение 9

При запуске теста с кодированием по квантовому каналу по первому сегменту и с кодированием по SSL по второму сегменту. Тест прошел успешно:

Quantum -- SSL
{"status": 1, "result": {"qaddr": ["127.0.0.1", "192.168.122.152"], "dl": "00:00:00:00:00:03", "key_poins": ["127.0.0.1:77", "http://localhost/cgi-bin/t", "127.0.0.1:78"], "tp": "1002", "iport": 1, "nw": "10.0.0.3", "oport": 2}, "channel": "1"}{"status": 0, "result": {"iport": 1, "dl": "00:00:00:00:00:05", "oport": 2, "tp": "1001", "nw": "10.0.0.5"}, "channel": "2"}{"status": 5, "result": 32512, "channel": "1"}
root@10.0.0.1's password: 

STATUS=OK
channel 1: qcrypt, channel 2: scrypt

Сообщение 10

При остановленном ПКС-контроллере ryu:

Flow tables clearing
curl: (7) Failed connect to localhost:8080; В соединении отказано
curl: (7) Failed connect to localhost:8080; В соединении отказано
Uncrypted channels
curl: (7) Failed connect to localhost:8080; В соединении отказано
curl: (7) Failed connect to localhost:8080; В соединении отказано
curl: (7) Failed connect to localhost:8080; В соединении отказано

Сообщение 11

Если при запуске скрипта /usr/share/mininet-qnet/test.sh появляется сообщение

STATUS=BAD
channel 1: scrypt, channel 2: scrypt

это означает, что тест прошел неуспешно. В сообщении указывается, какие каналы использовались в данном тесте.