Questa nota tecnica fornisce una configurazione di esempio per configurare una coda di priorità quando si implementa il traffic shaping su Frame Relay. Vengono illustrati i meccanismi di coda a livello di circuito virtuale (VC) e di interfaccia.
In questo documento si presume la comprensione della tecnologia Frame Relay, inclusi gli identificatori DLCI (Data Link Connection Identifier) e i parametri di traffic shaping, quali CIR (Committed Information Rate) e burst. Per una panoramica della tecnologia, consultare il documento sulla configurazione del Frame Relay nella guida alla configurazione di Cisco IOS Wide-Area Networking.
Nessun requisito specifico previsto per questo documento.
Il documento può essere consultato per tutte le versioni software o hardware.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
A seconda della versione di Cisco IOS®, le interfacce Frame Relay supportano tre meccanismi per la creazione di una coda di priorità su un VC (o sottointerfaccia):
frame-relay priority-group: questa sintassi di comando utilizza il meccanismo di coda di priorità originale di Cisco.
priorità frame-relay ip rtp: questa sintassi di comando riserva una coda di priorità rigida per un set di flussi di pacchetti RTP appartenenti a un intervallo di porte di destinazione UDP.
priority: questa sintassi più recente applica una funzionalità di coda a bassa latenza e utilizza la struttura di comando dell'interfaccia della riga di comando (CLI) QoS (Modular Quality of Service).
Con tutti i comandi precedenti, è possibile configurare il meccanismo della coda di priorità all'interno di una classe di mappa Frame Relay, che supporta più comandi per la configurazione dei valori di shaping. La funzione Shaping limita la velocità di output del VC e assegna un concetto di congestione al VC. Un router inizia ad accodare i pacchetti quando il numero di pacchetti che devono essere trasmessi da un VC supera la velocità di output di quel VC. I pacchetti in eccesso vengono quindi messi in coda. È possibile applicare un metodo di coda ai pacchetti in attesa di essere trasmessi in quella coda.
In origine, le interfacce Frame Relay supportavano il meccanismo di coda con priorità 1 di Cisco, configurato con i comandi priority-list e priority-group. Per ulteriori informazioni, fare riferimento a Configurazione di Frame Relay e Frame Relay Traffic Shaping.
Per configurare una coda di priorità tradizionale su un Frame Relay VC, attenersi alla procedura seguente:
Abilitare il traffic shaping (FRTS) Frame Relay su un'interfaccia seriale con il comando frame-relay traffic-shaping. Tutti i PVC permanenti e gli SVC commutati sull'interfaccia ereditano i valori di traffic shaping predefiniti e creano una coda per VC.
R4-4K(config)# interface serial0 R4-4K(config-if)# frame-relay traffic-shaping
Configurare una classe mappa Frame Relay. Utilizzare il comando frame-relay priority-group per specificare la coda di priorità Cisco IOS legacy.
R4-4K(config)# map-class frame-relay ? WORD Static map class name R4-4K(config)# map-class frame-relay priority R4-4K(config-map-class)# frame-relay ? adaptive-shaping Adaptive traffic rate adjustment, Default = none bc Committed burst size (Bc), Default = 56000 bits be Excess burst size (Be), Default = 0 bits cir Committed Information Rate (CIR), Default = 56000 bps custom-queue-list VC custom queueing fecn-adapt Enable Traffic Shaping reflection of FECN as BECN mincir Minimum acceptable CIR, Default = 56000 bps priority-group VC priority queueing traffic-rate VC traffic rate R4-4K(config-map-class)# frame-relay priority-group ? <1-16> Priority group number
Configurare i parametri di shaping, inclusi CIR e minCIR.
R4-4K(config-map-class)# frame-relay traffic-rate ? <600-45000000> Committed Information Rate (CIR) R4-4K(config-map-class)# frame-relay traffic-rate 56000 ? <0-45000000> Peak rate (CIR + EIR)
Creare una sottointerfaccia point-to-point o multipoint e assegnare un numero DLCI.
R4-4K(config)# interface s0.20 multi R4-4K(config-subif)# frame-relay interface-dlci ? <16-1007> Define a DLCI as part of the current subinterface R4-4K(config-subif)# frame-relay interface-dlci 400
Applicare la classe mappa con priorità in coda al VC.
R4-4K(config-fr-dlci)# class ? WORD map class name R4-4K(config-fr-dlci)# class priority
Confermare le impostazioni di configurazione con il comando show traffic-shape.
R4-4K# show traffic-shape Interface Se0.20 Access Target Byte Sustain Excess Interval Increment Adapt VC List Rate Limit bits/int bits/int (ms) (bytes) Active 400 56000 875 56000 0 125 875 -
Nota: in questa configurazione viene utilizzato il comando frame relay traffic-shape per specificare un CIR. Con questo comando, il router calcola automaticamente i valori di frammentazione. Per specificare i valori di frammentazione, utilizzare i comandi elencati in Configurazione di una classe di mappa, inclusi bc out di frame relay e frame relay out.
Cisco IOS 12.0(7)T ha introdotto la funzionalità LLQ (Low Latency Queueing), che supporta la configurazione di una coda con priorità ridotta con i comandi della CLI QoS modulare. Il supporto per LLQ a livello VC Frame Relay è stato introdotto in 12.1(2)T. Fare riferimento a Accodamento a bassa latenza per il modulo funzionalità Frame Relay.
Nota: questa funzione richiede FRTS.
LLQ è considerato un soprainsieme più flessibile delle funzioni frame-relay ip rtp priority e frame-relay priority-group. Per ulteriori informazioni, fare riferimento a Low Latence Queueing for Frame Relay nel capitolo sulla panoramica della gestione della congestione delle guide alla configurazione di Cisco IOS.
Di seguito vengono illustrati i passaggi per la configurazione di LLQ per Frame Relay.
Abilitare FRTS su un'interfaccia seriale con il comando frame-relay traffic-shaping. Tutti i PVC e gli SVC sull'interfaccia ereditano i valori di traffic shaping predefiniti e creano una coda per VC.
Router(config)# interface serial0 Router(config-if)# frame-relay traffic-shaping
Configurare un criterio di servizio con i comandi class-map e policy-map. Specificare il comando priority per creare una classe di priorità rigida e specificare la quantità di larghezza di banda (in kbps o come percentuale della larghezza di banda del PVC) da assegnare alla classe.
Router(config)# class-map class-map-name Router(config-cmap)# match access-group {access-group | name access-group-name} Router(config)# policy-map policy-map Router(config-pmap)# class class-name Router(config-pmap-c)# priority bandwidth-kbps
Configurare una classe di mapping e collegare i criteri del servizio alla classe.
Nell'esempio seguente, il nome della classe map è sample e il nome del criterio del servizio di output è llq.
router(config)# map-class frame-relay sample router(config-map-class)# service-policy output llq
Applicare la classe map a un VC con il comando class nella modalità di configurazione DLCI.
router(config)# interface serial0.5 router(config-if)# frame-relay interface-dlci 100 router(config-if-dlci)# class sample
Utilizzare i comandi seguenti per confermare le impostazioni e monitorare i risultati del criterio:
show frame-relay pvc {dlci #} - Visualizza le statistiche per tutti i componenti VC, incluse le informazioni FRTS e sui criteri dei servizi, nonché la frammentazione, il numero di pacchetti in entrata e in uscita e il numero di frame con i bit BECN/FECN/DE impostati.
show policy-map interface sX/0.X dlci {#}: visualizza solo le statistiche relative ai criteri per un VC specifico.
I criteri non direttamente correlati a LLQ, ad esempio il traffic shaping, l'impostazione della precedenza IP e il policing, non sono supportati dai comandi class-map e policy-map dei VC Frame Relay. Per configurare questi criteri, è necessario utilizzare altri meccanismi di configurazione, ad esempio i comandi delle classi di mapping. Sono supportati solo i comandi mappa classi e mappa criteri seguenti:
Il comando di configurazione match class-map
I comandi di configurazione priority, bandwidth, queue-limit, random-detect e fair-queue-policy-map
Quando i comandi bandwidth e priority calcolano la quantità totale di larghezza di banda disponibile su una connessione, se l'entità è un PVC Frame Relay con forma, vengono richiamate le linee guida seguenti:
Se non è configurata una percentuale minima di informazioni vincolate accettabili (minCIR), nel calcolo viene utilizzato il valore CIR diviso per due. Questo meccanismo è stato selezionato perché molte configurazioni Frame Relay utilizzano velocità di shaping che superano la velocità della porta, quindi il CIR configurato potrebbe non essere garantito.
Se è stato configurato un valore minCIR, nel calcolo viene utilizzata l'impostazione minCIR.
Per ulteriori informazioni, vedere Come questi comandi calcolano la larghezza di banda. La quantità totale di larghezza di banda allocata per tutte le classi in una mappa dei criteri non deve superare il valore minCIR configurato per il VC meno la larghezza di banda riservata dai comandi di priorità rtp voce frame relay e ip frame relay.
Se si conosce la quantità di larghezza di banda richiesta per un sovraccarico aggiuntivo su un collegamento, in circostanze in cui è consigliabile assegnare al traffico vocale la massima larghezza di banda possibile, è possibile ignorare l'allocazione massima del 75% (per la somma della larghezza di banda allocata a tutte le classi o flussi) utilizzando il comando max-reserve-bandwidth. Se si desidera ignorare la quantità fissa di larghezza di banda, prestare attenzione e assicurarsi di lasciare una larghezza di banda sufficiente per supportare al meglio il traffico che include il sovraccarico del layer 2.
Per configurare LLQ, utilizzare i comandi della CLI QoS modulare (MQC) per creare una mappa dei criteri del traffico con più classi di traffico e una o più funzionalità QoS. Nelle versioni correnti di IOS, le interfacce Frame Relay supportano l'applicazione di una mappa dei criteri con il comando service-policy a interfacce, sottointerfacce e VC. Nella tabella seguente vengono elencate le combinazioni di criteri supportate.
Criteri di input | Criteri di output |
---|---|
Nota: un'interfaccia principale e una sottointerfaccia non sono interfacce peer e non possono supportare contemporaneamente una policy di servizio. |
|
La funzione di priorità IP Real-Time Protocol (RTP) offre un modo semplice per far corrispondere i pacchetti VoIP (Voice over IP) in base all'intervallo di numeri di porte UDP utilizzati con il protocollo RTP, che incapsula i pacchetti voce. Il traffico VoIP utilizza un intervallo di porte UDP noto, 16384-32767. Mentre le porte effettive utilizzate sono negoziate dinamicamente tra dispositivi finali o gateway, tutti i prodotti Cisco VoIP utilizzano lo stesso intervallo di porte. Dopo aver riconosciuto il traffico VoIP, il router lo posiziona in una coda di priorità rigida.
Il comando frame-relay ip rtp priority estende la funzionalità di priorità IP RTP alle classi mappa Frame Relay e consente di creare una corrispondenza su un intervallo univoco di porte UDP per PVC.
Le funzionalità di priorità LLQ per Frame Relay e IP RTP offrono funzioni complementari e possono essere configurate contemporaneamente. Se il traffico corrisponde all'intervallo specificato di porte UDP, viene classificato come voce e inserito nella coda di priorità LLQ e nella coda di priorità dell'interfaccia. Se il traffico non rientra nell'intervallo di porte RTP specificato, viene classificato in base ai criteri del servizio.
Di seguito è riportato un tipico esempio di configurazione con la classe map Frame Relay e il comando frame-relay ip rtp priority. Nella tabella seguente vengono illustrati i parametri di questo comando.
map-class frame-relay VoIPoFR frame-relay fragment 640 frame-relay ip rtp priority 16384 16383 120 no frame-relay adaptive frame-relay cir 256000 frame-relay bc 2500 frame-relay fair-queue
Parametro | Come impostare il parametro |
---|---|
16384 | Numero di porta UDP iniziale o numero di porta più basso a cui inviare i pacchetti. Per VoIP, impostare questo valore su 16384. |
16383 | Gamma di porte di destinazione UDP. Aggiungere questo valore a per ottenere il numero di porta UDP più alto. Per VoIP, impostare questo valore su 16383. |
120 | Larghezza di banda massima consentita in kbps per la coda di priorità. Configurare questo numero in base al numero di chiamate simultanee. |
Per la funzionalità di priorità IP RTP non è necessario conoscere la porta di una chiamata vocale. Al contrario, questa funzione consente di identificare un intervallo di porte il cui traffico viene inserito nella coda di priorità LLQ. Inoltre, è possibile specificare l'intero intervallo di porte vocali (da 16384 a 32767) per garantire che tutto il traffico vocale riceva un servizio con priorità assoluta. La priorità IP RTP è particolarmente utile sui collegamenti inferiori a 1,544 Mbps.
I meccanismi di coda delle priorità descritti finora in questo documento corrispondono alle intestazioni e ai contenuti dei pacchetti, e assegnano le priorità ai pacchetti all'interno di un PVC Frame Relay. Lo scopo della funzionalità PIPQ (Frame Relay PVC Interface Priority Queueing) è quello di assegnare la priorità ai PVC a livello di coda dell'interfaccia. In altre parole, quando su un'interfaccia sono configurati più PVC, questi vengono rimossi dalla coda di output di un'interfaccia prima di essere inviati sul supporto fisico.
Di seguito sono riportati i due passaggi per configurare PIPQ:
Nota: Cisco IOS 12.2(6) introduce il supporto per PIPQ su un'interfaccia principale Frame Relay.
Configurare il comando frame-relay interface-queue priority nella classe mappa Frame Relay e assegnare la priorità PVC appropriata.
Router(config)# map-class frame-relay map-class-name Router(config-map-class)# frame-relay interface-queue priority {high | medium | normal | low}
Abilitare PIPQ.
Router(config)# interface serial number Router(config-if)# encapsulation frame-relay [cisco | ietf] Router(config-if)# frame-relay interface-queue priority [high-limit medium-limit normal-limit low-limit]
Cisco IOS 12.2(2)T ha introdotto il comando set fr-de come parte della sintassi del comando per l'indicazione basata su classi. Per ulteriori informazioni, fare riferimento a Contrassegno basato su classi.
Cisco DTS ID CSCdt92898 risolve un problema con un ricaricamento del router causato da un errore del bus. Il ricaricamento si verifica quando una policy del servizio di output con LLQ viene applicata a un'interfaccia Frame Relay che trasporta pacchetti Voice over Frame Relay (VoFR). Questo bug è stato risolto in molti treni a rilascio di Cisco IOS 12.2.