Risoluzione dei problemi di QoS del firmware del router dd-wrt


18

Ho usato il firmware dd-wrt sul mio router e mi piace molto!

Ma - Non sono sicuro che la qualità del servizio (QoS) ci stia lavorando. L'ho impostato come segue:

  • http, porta 80 - Premium
  • bittorrent, porta 6969 - Bulk
  • https, porta 443 - Premium
  • dns, porta 53 - Premium

Secondo la documentazione QoS , questi livelli sono:

la larghezza di banda viene allocata in base alle seguenti percentuali di valori di uplink e downlink per ogni classe:

  • Esente: 100 Mbps - ignora i limiti globali.
  • Premium: 75% - 100%
  • Express: 15% - 100%
  • Standard: 10% - 100%
  • Bulk: 1,5% - 100%

Questo non sembra del tutto funzionare, però - con i torrent occupati in corso ottengo importanti pause nella mia navigazione web che fa schifo!

La documentazione di QoS fornisce alcuni passaggi per verificare il QoS ...

Quello che ti interesserà sarà il primo set di IP di origine e di destinazione, inclusi i numeri di porta. Successivamente la presenza di l7proto e il campo "mark". Le voci indicano la priorità QoS della connessione live corrente applicata su di esse in base al campo "mark". I valori "mark" corrispondono a quanto segue

  • Esente: 100
  • Premium: 10
  • Esprimere: 20
  • Standard: 30
  • Alla rinfusa: 40
  • (nessun QoS abbinato): 0

È possibile che venga visualizzato "mark = 0" per alcuni servizi l7proto anche se sono configurati nell'elenco delle regole QoS. Ciò può significare che il sistema di corrispondenza dei pattern di livello 7 non corrispondeva a un'intestazione nuova o modificata per quel protocollo. Il servizio personalizzato sulle partite portuali di solito si occuperà di questi.

Sulla porta 6969 (bittorrent) vedo una strana mescolanza di cose con mark=0e mark=40così

cat / proc / net / ip_conntrack

udp 17 105 src = 98.162.182.42 dst = 1.2.3.4 sport = 64512 dport = 6969 pacchetti = 3 byte = 290 src = 10.0.0.2 dst = 98.162.182.42 sport = 6969 dport = 64512 pacchetti = 4 byte = 202 [ASSICURATO] mark = 0 secmark = 0 use = 1
tcp 6 117 TIME_WAIT src = 98.248.173.174 dst = 1.2.3.4 sport = 51114 dport = 6969 pacchetti = 12 byte = 704 src = 10.0.0.2 dst = 98.248.173.174 sport = 6969 dport = 51114 pacchetti = 10 byte = 440 [ASSICURATO ] mark = 40 secmark = 0 use = 1
tcp 6 598 STABILITO src = 165.132.128.201 dst = 1.2.3.4 sport = 57218 dport = 6969 pacchetti = 8024 byte = 9919881 src = 10.0.0.2 dst = 165.132.128.201 sport = 6969 dport = 57218 pacchetti = 4211 byte = 239607 [ASSICURATO ] mark = 0 secmark = 0 use = 1
tcp 6 586 STABILITO src = 68.46.9.24 dst = 1.2.3.4 sport = 64688 dport = 6969 pacchetti = 6 byte = 490 src = 10.0.0.2 dst = 68.46.9.24 sport = 6969 dport = 64688 pacchetti = 8 byte = 944 [ASSICURATO ] mark = 40 secmark = 0 use = 1
udp 17 45 src = 222.254.228.38 dst = 1.2.3.4 sport = 25438 dport = 6969 pacchetti = 5 byte = 454 src = 10.0.0.2 dst = 222.254.228.38 sport = 6969 dport = 25438 pacchetti = 3 byte = 154 [ASSICURATO] mark = 0 secmark = 0 use = 1

(file completo visibile su http://pastebin.com/AZE6EtWm )

Ho giocato con questo registro per un po 'e non riesco a vedere alcun modello!

Perché un traffico bittorrent della porta 6969 è taggato mark=0(non abbinato) dal QoS di dd-wrt mentre altri sono taggati mark=40(Bulk) ... qualche idea?


5
Dovrei rimanere bloccato con il tuo vecchio router: P ... Non penso che molte domande qui superino 15 visualizzazioni durante il fine settimana ... Pubblica un link sul tuo twitter e ne ricevi più di 150 in pochi minuti!
William Hilsum,

Questo è totalmente estraneo all'argomento della tua domanda, ma sono curioso. Che tipo di larghezza di banda ti fornisce il tuo ISP?
corvo,

1
Ho anche scoperto che il wireless sul mio router Linksys (che esegue DD-WRT v24-sp2 (23/04/10) mini) è anche instabile insieme a QoS. Hai provato versioni alternative di dd-wrt per il tuo router o ce n'è solo una?
grosso

3
Hai già aggiornato i valori di timeout TCP e UDP? Dovrebbero essere modificati dal valore predefinito in modo da non incorrere in problemi con il numero massimo di connessioni. Ciò non influirebbe tuttavia sul problema QoS.
Joe,

1
@BlueRaja sì Alla fine ho comprato l'Asus rt-n16 e ci uso il pomodoro ora
Jeff Atwood,

Risposte:


8

Anche se modella solo il traffico in uscita , potresti trovare questo eccellente script QoS ( mirror su pastebin ) sul blog di Alex Rice. È stato attraverso diversi autori e incarnazioni. Assicurarsi di impostare correttamente UPLINK e DEV. Per me il valore predefinito per DEV era errato, utilizzare $(nvram get wan_ifname)invece il commento o il valore corretto dall'esecuzione nvram get wan_iframetramite SSH.

Inoltre, anziché utilizzarlo, è possibile duplicare la sua configurazione all'interno della GUI di QoS. Vedrai che utilizza 1024: 65535 per il traffico di massa, con le altre impostazioni (80,22,3389, ecc.) Che hanno la precedenza. Lo script funziona bene per me e utilizza HFSC come raccomandato.


Inoltre, se non usi lo script, potresti riscontrare bug rilevanti per la tua versione.

Ad esempio: QoS impostato su WAN invia il traffico di uplink alla coda di downlink
Quindi si rende conto che questa patch ha esito negativo, perché: I comandi nello script rc_firewall non vengono applicati in QoS

È possibile aggirare il problema con uno script che viene eseguito dopo rc_firewall come indicato nel ticket. Personalmente ho finito per abilitare JFFS e inserire lo script con la correzione /jffs/etc/config/qos.ipup, come menzionato.

Ho trovato conveniente usare KiTTY e WinSCP . Puoi accedere a SSH nel router con KiTTY per risolvere i problemi / verificare come nel primo ticket e avviare direttamente la ricerca dei file sul router con il Start WinSCPcomando sotto l'icona in alto a sinistra di KiTTY. In caso contrario (il router non esegue SFTP per impostazione predefinita) è possibile abilitare FTP e connettersi manualmente o semplicemente aggiungere il file con i comandi Unix. Ricordarsi di impostare il proprietario eseguire l'autorizzazione per lo script.


questo è eccellente, sembra molto promettente. Mi piace dd-wrt e sembra che sia vicino al lavoro ..
Jeff Atwood

3
Dovrei menzionare i torrent e tale ti vorrà il timeout TCP fino a 10 minuti (il valore predefinito è 60!), Dovresti anche avviare QoS più velocemente.
Christopher Galpin,

Il link al sito Web di Alex Rice è inattivo. C'è un link alternativo?
Ottanta,

1
Ottanta ho aggiunto un mirror pastebin al post
Jeff Atwood,

Anche KiTTY sembra interessante (soprattutto perché può offrire l'integrazione [sperimentale] di ZModem).
Randolf Richardson,

13

Ho notato che molte persone si lamentano del fatto che QoS non funziona in DD-WRT, quindi passano a Tomato. Funziona bene con Tomato (lo uso). Tomato ha anche dei grafici molto belli, utili per regolare le impostazioni di QoS.

L'aspetto negativo di Tomato, rispetto a DD-WRT, è che ha meno funzionalità, anche se ci sono alcune build mod che aggiungono determinate cose, come l'archiviazione USB e OpenVPN. Tuttavia, come Jeff Atwood menzionato di seguito, supporta solo chipset Broadcom.

Uso la mod Teddy Bear sul mio Netgear WNR3500L. Ora uso la mod Toastman, che si basa su Teddy Bear, con più funzioni e migliori classi QoS predefinite che funzionano per la maggior parte delle persone.

Personalmente, l'unica cosa che mi manca in Tomato è il supporto VLAN e la trasmissione multi-SSID. (La mod di Toastman li ha entrambi ora, così come Captive Portal per l'SSID secondario).


Concordato. Tomato è fantastico e QOS funziona alla grande. Inoltre, è davvero facile tornare indietro se non ti piace.
MJeffryes,

2
Tomato è solo per router con chip Broadcom. Il router che ho (Buffalo WZR-HP-G300NH) utilizza Atheros.
Jeff Atwood,

Sono passato a Tomato da solo (su Asus RT-N16) non molto tempo dopo aver scritto la mia risposta e non ho guardato indietro. Uso la mod di Shibby che viene regolarmente aggiornata e include anche il progetto "TomatoAnon" opzionale per la stabilità del crowdsourcing e così via.
Christopher Galpin,

2

Ho trovato DD-WRT v24 sp2 build 15362 molto stabile sul mio Netgear WNDR3700 v1 MA nonostante un'enorme quantità di tempo impiegata nel tentativo di configurare sia QoS che TCP Vegas (controllo della congestione) nessuno dei due meccanismi sembra funzionare su questo eccellente firmware per il traffico in entrata (non ho bisogno del controllo in uscita poiché non utilizzo VOIP).

Ad esempio, indipendentemente dalle opzioni (Mac Control, Netmask, Service Control) che utilizzo nei miei tentativi di dare priorità al traffico video in entrata e di annullare la priorità al traffico bit torrent in entrata, nulla funziona. L'ho confermato con

Bottom Line: Usa DD-WRT se vuoi tutte le altre funzionalità (in particolare la trasmissione di SSID muliple) ma usa Tomato se hai un chipset applicabile (Tomato non è disponibile per il WNDR3700 basato su Atheros) e come le sue funzionalità QoS.


2
Non credo che il QoS in ingresso sia destinato a funzionare mai - ricordo di averlo letto da qualche parte. Inoltre alla fine sono passato all'Asus RT-N16 e al Tomato.
Jeff Atwood,

@Jeff Il problema con QoS è stato il motivo del passaggio?
Piotr Dobrogost,

@piotr in parte, ma l'ho risolto principalmente per la mia risposta - volevo solo provare il pomodoro, che ha almeno QoS che funziona immediatamente.
Jeff Atwood,

0

Ho notato la stessa cosa. Non riesco a trovare il post esatto ora, ma scavando nei forum uno degli sviluppatori ha dichiarato che QoS è ottimo per i caricamenti, non tanto per i download. Il ragionamento alla base è che il router ha il controllo del traffico in uscita dalla rete (uplink), ma non del traffico in entrata poiché non ha alcun controllo sul flusso di dati in entrata.

So che non sei un grande fan della navigazione nei post del forum, ma potresti voler pubblicare le tue domande lì.


corretto, e questo va bene - è il caricamento che di solito è vincolato comunque.
Jeff Atwood,

4
È lo stesso caso con Tomato. Limitare i download significherà semplicemente scartare i frame e non accelererà altre priorità, quindi non ha senso.
paradroid,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.