Essa é uma revisão anterior do documento!


A medição de velocidade atualmente possui uma limitação de velocidade para cada modelo. Como nossa medição é feita direto no roteador, o impacto de rodar um software para medir acaba reduzindo o resultado máximo da medição. Medições convencionais como o Speedtest e Fast.com podem passar dos limites aqui homologados, pois o software roda em um dispositivo conectado na rede, não no roteador. Confira abaixo a lista de velocidades máximas homologadas para nossa medição:

  • Greatek GWR-1200AC: 200 Mbps
  • Intelbras Action RG1200AC: 200 Mbps
  • Multilaser RE708: 200 Mbps
  • TP-Link Archer C5: 300 Mbps
  • TP-Link WDR3600: 150 Mbps
  • TP-Link WDR4300: 150 Mbps
  • TP-Link WR2543: 120 Mbps
  • Demais modelos: 100 Mbps

Os seguintes modelos não são compatíveis atualmente com a medição de velocidade:

  • Greatek GRW-300
  • Multilaser RE172

Sistemas operacionais testados: CentOS 7, Ubuntu 16.04 e 18.04

Requisitos de hardware: Placa de rede gigabit. É recomendado que nenhum outro serviço que utilize a rede esteja rodando na máquina.

Atenção! Verifique se o link de rede para o servidor está configurado para gigabit tanto no downlink quanto no uplink!

  1. Atualizar lista de repositórios através do comando:
    (Ubuntu) sudo apt-get update
    (CentOS) sudo yum check-update
  2. Instalar o Nginx (versão 1.10.3 ou superior)
    1. (Somente para CentOS) Insira o comando:
      sudo yum install epel-release
    2. Insira o seguinte comando:
      (Ubuntu) sudo apt-get install nginx
      (CentOS) sudo yum install nginx
  3. Abra o arquivo de configuração do Nginx com o comando:
    nano /etc/nginx/nginx.conf
    1. Se você já possui um serviço configurado no Nginx, edite o seu arquivo atual para incluir as configurações abaixo.
      1. Lembramos que por motivos de performance de rede, não recomendamos que outros serviços estejam configurados na mesma máquina.
  4. Configure o Nginx para receber requisições HTTP editando o arquivo aberto:
    user nginx;
    worker_processes auto;
    pid /run/nginx.pid;
    
    events {
      worker_connections 1024;
    }
    
    http {
      sendfile on;
      tcp_nopush on;
      tcp_nodelay on;
      keepalive_timeout 65;
      types_hash_max_size 2048;
      server_names_hash_bucket_size 64;
    
      include /etc/nginx/mime.types;
      default_type application/octet-stream;
    
      access_log /var/log/nginx/access.log;
      error_log /var/log/nginx/error.log;
    
      limit_req_zone $request_uri zone=measure:1m rate=3r/m;
    
      include /etc/nginx/conf.d/*.conf;
      include /etc/nginx/sites-enabled/*;
    }
  5. Configure os arquivos do Nginx para incluir a configuração do servidor de medição com os comandos:
    sudo mkdir /etc/nginx/sites-available
    sudo mkdir /etc/nginx/sites-enabled
    sudo touch /etc/nginx/sites-available/measure
    sudo ln -s /etc/nginx/sites-available/measure /etc/nginx/sites-enabled/measure
  6. Abra o arquivo de configuração do servidor com o comando:
    nano /etc/nginx/sites-available/measure
  7. Configure o servidor para realizar medições editando o arquivo aberto:
    server {
      listen 80;
      autoindex on;
      location /measure {
        alias /etc/nginx/flash-measure-data/;
        sendfile_max_chunk 1m;
        limit_req zone=measure burst=2 nodelay;
      }
      location / {
        return 403;
      }
    }
    1. Você pode substituir o valor da variável “listen” por outra porta que não seja a 80.
      1. Se você alterar a porta utilizada, lembre-se de configurar o seu firewall para que seus roteadores consigam acessar o servidor!
      2. Não se esqueça de inserir um ; no final da linha caso altere a porta! Exemplo:
        listen 25752;
  8. Gere os arquivos de medição que serão utilizados através dos comandos:
    sudo mkdir /etc/nginx/flash-measure-data
    for i in $(seq 1 3); do sudo dd if=/dev/urandom of=/etc/nginx/flash-measure-data/file$i.bin bs=1M count=50; done
  9. (Somente para CentOS) Habilite o serviço Nginx através do comando:
    sudo systemctl enable nginx
  10. Carregue o serviço Nginx através do comando:
    (Ubuntu) sudo service nginx start
    (CentOS) sudo systemctl start nginx
  11. Teste se o servidor está funcionando acessando em qualquer navegador:
    http://<<ip do servidor>>/measure
    1. Se você alterou a porta do serviço no passo 7, não se esqueça de incluir a porta na URL:
      http://<<ip do servidor>>:<<porta configurada>>/measure
    2. Você deverá ver uma listagem de arquivos contendo 3 arquivos de 50MB cada: file1.bin, file2.bin, file3.bin
  1. Faça login no Flashman com o usuário admin para configurar o serviço de medição
  2. Vá em configurações, digite o IP e a porta do servidor configurado acima e salve
  3. Escolha um roteador que esteja com o Flashbox atualizado (versão 0.24.0 ou superior) e clique em Opções, e então em Medição de Velocidade
  4. Aperte o botão para começar a medição e aguarde o resultado
    1. Em caso de erro recorrente, certifique-se de que o roteador consegue acessar o servidor de medição
    2. Se você configurou uma porta diferente da 80 no passo 7 anteriormente, verifique se a regra apropriada está no seu firewall