QoS em Redes IP

Disciplina TE723 - Comunicação de Dados
Prof. Eduardo Parente Ribeiro
nov/2002


O termo QoS ("Quality of Service" - qualidade de serviço) como o nome implica  traduz a idéia de que o serviço de comunicação de dados seja obtido/fornecido com a qualidade esperada. Esta qualidade que inicialmente é um conceito subjetivo pode ser medida em parametros bem definidos como atraso, largura de banda, perda de pacote, variação do atraso ("jitter") e outros.
 

Mecanismos

Numa primeira visão do problema, a melhor maneira de fornecer o serviço com qualidade ou QoS é possuri uma infraestrutura adequanda, isto é  com  a largura de banda capaz de atender a todas as aplicações. Muitas vezes isto não acontece devido ao compartamento do trafego de dados em geral que é extremamente variável. portanto em situações de congestionamento os pacotes podem experimentar atrasos longos ao permanecerem mais tempo nas filas dos roteadores, ou podem ser até descartados quando as filas estão cheias. Então o mecanismo básico que se utiliza para prover QoS mesmo numa situação de congestionamento é tratar os pacotes de forma diferenciada, ou seja, dar prioridade aos mais importantes e um tratamento comum aos menos importantes. Por exemplo, é melhor perder um pacote que faz parte de uma mensagem de email, pois a conexão TCP se encarregará de transmiti-lo do que perder um pacote de uma comunicação de voz (VoIP), onde o destinatário perceberá a interrupção na comunicação. É logico que o provimento de QoS está atrelado as esta discriminação que pode ser feita com relação aos pacotes, pois se todos os pacotes tivessem o mesmo requerimento (por exemplo todos carregando trafego de voz), não seria possível acomodar todos num canal limitado numa situação de congestionamento. A única saída seria mudar o pricipio de operação da rede de "sem conexão" para "com conexão" e apenas aceitar novas conexões se a rede tiver capacidade para atende-las (como numa ligação telefonica).
Como o protocolo IP é "sem conexão", vamos listar os principais mecanismos  para se implementar o provimento de QoS:
 

Classificação

O primeiro passo é a classificação do pacote. Existem várias formas de fazer a diferenciacão.
a. O pacote pode ja vir classificado com a classe especificada no cabeçalho do pacote. Isto pode ter sido feito pela propia aplicação que gerou o pacote ou por outro classificador.
b. Classificar baseado no endereço IP de origem ou destino. Assim pode se dar maior ou menor importancia ao pacote dependendo de sua origem ou destino.
c. Classificação baseada em outros campos do cabeçalho. Ex. Campo protocolo (TCP, UDP, ICMP...)
c. Classificação baseada no tipo de aplicação. Isto requer algum mecanismo de camada superior a 3 pois esta informação nao trafega no cabeçalho da camada 3. Geralmente pode se inferir a aplicação pelas portas TCP ou UDP da camada 4 e assim determinar se o pacote transporta email, ftp, voz etc.
 

Filas e Escalonadores (Queues and Schedulers)

Uma rede sem nenhum QoS sempre implementa algum tipo de fila simples, para poder lidar com uma situação de congestionamento temporário, de pico. Este mecanismo mais simples é uma fila FIFO (First in - First out) os FCFS (First come - First Served).
FIFO - Sem QoS. Os pacotes são atendidos (encaminhados para a saída desejada) na medida em que vão chegado. Se a fila estiver cheia, os pacotes que chagarem são automaticamente descartados (descarte de cauda ou "tail drop").
Outros tipos de filas podem dar atendimento diferenciado aos pacotes, fornecendo assim diferentes níveis de QoS.
PQ - Priority Queue

Figura 1 - Priority Queue - Fila com Prioridade. (Fonte Cisco, QoS)

CQ - Custom Queue , ou WRR (weighted round robin)

Figura - Custom Queue. Fonte: Cisco
 

FQ (Fair Queue), WFQ (Weighted Fair Queue)

Figura - Weighted Fair Queu. Fonte Cisco
 
 

Moldagem (formatação) de Trafego ("Traffic Shapping")


Figura - (a) Balde furado com água. (b) Balde furado para pacotes. Fonte: Tanenbaum.
 
 


Figura - Balde de Fichas (Token Bucket). (a) Antes (b) Depois.  Fonte: Tanenbaum
 

Figura - (a) Entrada. (b) Saída de um balde furado. (c)-(e) Saída de um balde de fichas com capacidades de 250KB, 500KB, 750KB. (f) Saída de um balde de fichas de 500KB alimentando um balde furado de 10MB/s.

Congestionamento


Figura - Fonte: [3]
 

Sinalização

RSVP - ReSource reserVation Protocol
Protocolo de Reserva de Recursos

Figura - Mensagem RSVP


Figura - RSVP em Máquinas do Usuário e Roteadores. Fonte: Schmidt, Newsgeneration.

Modelos
IntServ


 Figura - Modelo de Referencia do IntServ para roteadores - Fonte: [2], Ap. RFC1633

DiffServ

Figura - Exemplo de Domínio DiffServ. Fonte (trab. Favaro,2001).


Figura - Campo DSCP, parte do antigo TOS. Fonte [4].

REFERENCIAS

[1] Cisco Systems Inc., Internetworking Technology Handbook, Cap. 49 - QoS, Disponível em http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/index.htm, Acessado em nov/02.
[2] Portugal, L.B., Modelos e Mecanismos de Qualidade de Serviço em Redes IP, Dissertação de Mestrado, PPGEE/UFPR, 2002.
[3] Tanembaum A., Computer Networks, 1995.
[4] Paul Izzo, Traffic Engineering a QoS Enabled Path in a Packet Network, Tenor Netoworks.

Marko Vitez, Queueing Disciplines, Resumo de disciplinas de filas, Disponível em http://stelvio.univ.trieste.it/~vitez/Queuing.htm, Acessado em nov/02.
 

Principais RFC's relativas a QoS, IntServ, DiffServ, RSVP
Number Title Author or Ed. Date Format More Info (Obs&Upd) Status
RFC3086 Definition of Differentiated Services Per Domain Behaviors and Rules for their Specification K. Nichols, B. Carpenter April 2001 ASCII   INFORMATIONAL
RFC2998 A Framework for Integrated Services Operation over Diffserv Networks Y. Bernet, P. Ford, R. Yavatkar, F. Baker, L. Zhang, M. Speer, R. Braden, B. Davie, J. Wroclawski, E. Felstaine November 2000 ASCII   INFORMATIONAL
RFC2990 Next Steps for the IP QoS Architecture G. Huston November 2000 ASCII   INFORMATIONAL
RFC2748 The COPS (Common Open Policy Service) Protocol D. Durham, Ed., J. Boyle, R. Cohen, S. Herzog, R. Rajan, A. Sastry January 2000 ASCII   PROPOSED STANDARD
RFC2676 QoS Routing Mechanisms and OSPF Extensions G. Apostolopoulos, S. Kama, D. Williams, R. Guerin, A. Orda, T. Przygienda August 1999 ASCII   EXPERIMENTAL
RFC2475 An Architecture for Differentiated Services S. Blake,  D. Black,  M. Carlson, E. Davies,  Z. Wang, W. Weiss December 1998 ASCII INFORMATIONAL
RFC2386 A Framework for QoS-based Routing in the Internet E. Crawley, R. Nair, B. Rajagopalan, H. Sandick August 1998 ASCII   INFORMATIONAL
RFC2216 Network Element Service Specification Template S. Shenker, J. Wroclawski September 1997 ASCII   INFORMATIONAL
RFC2215 General Characterization Parameters for Integrated Service Network Elements S. Shenker, J. Wroclawski September 1997 ASCII   PROPOSED STANDARD
RFC2212 Specification of Guaranteed Quality of Service S. Shenker, C. Partridge, R. Guerin September 1997 ASCII   PROPOSED STANDARD
RFC2211 Specification of the Controlled-Load Network Element Service J. Wroclawski September 1997 ASCII   PROPOSED STANDARD
RFC2210 The Use of RSVP with IETF Integrated Services J. Wroclawski September 1997 ASCII   PROPOSED STANDARD
RFC2209 Resource ReSerVation Protocol (RSVP) -- Version 1 Message Processing Rules R. Braden, L. Zhang September 1997 ASCII   INFORMATIONAL
RFC2205 Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification R. Braden, Ed., L. Zhang, S. Berson, S. Herzog, S. Jamin September 1997 ASCII Updated by RFC2750 PROPOSED STANDARD
RFC1633 Integrated Services in the Internet Architecture: an Overview R. Braden, D. Clark, S. Shenker June 1994 ASCII   INFORMATIONAL

Artigos sobre QoS do NewsGeneration - Publicação da RNP

Considerações acerca do estabelecimento de QoS no RNP2
Cybelle Suemi Oda Oyama
Sidney Cunha de Lucena
Este artigo apresenta aspectos relacionados à implantação de serviços diferenciados no backbone da RNP, tais como escolha da arquitetura, opções de implementação, exemplos de configuração e dificuldades enfrentadas.

Estudo experimental de videoconferência pessoal em inter-redes IP com QoS
José Luiz A. da Fonseca
Michael A. Stanton
Os autores apresentam um estudo experimental do uso da tecnologia DiffServ para proteger o tráfego de videoconferências do congestionamento causado por tráfego de melhor esforço.

Netplus - um ambiente para gerência de QoS baseado na web
Lisandro Zambenedetti Granville
Márcio Bartz Ceccon
Liane Margarida Rockenbach Tarouco
Maria Janilce Bosquiroli Almeida
O artigo apresenta o NetPlus, um ambiente desenvolvido com tecnologia web para gerência de redes com grande número de dispositivos e com serviços que oferecem QoS.

Estudo de QoS IP sobre redes ATM
Gustavo Bittencourt Figueiredo
Daniel Macêdo Batista
Mercia Eliane Bittencourt Figueredo
Os autores apresentam um estudo sobre a viabilidade do uso de QoS IP na infra-estrutura ATM da Rede Metropolitana de Alta Velocidade de Salvador .

O Protocolo RSVP e o Desempenho de Aplicações Multimídia - Parte 2
Ana Luísa P. Schmidt
Na segunda parte deste artigo, retoma-se a questão da obtenção da qualidade de serviço para aplicações de tempo real.

Qualidade de Serviço em VoIP - Parte 2
Adailton J. S. Silva
Este artigo continua a apresentação dos protocolos, técnicas e mecanismos que estão em estudo para prover o serviço de voz sobre IP.

Perspectivas sobre Qualidade de Serviço nos Protocolos da Internet - Estudo de Caso: Aplicações de Vídeo Sob Demanda
Aline C. Viana
Anibal S. Jukemura
Daniela A. Xavier
Kleber V. Cardoso

O Controlador de Banda
Ana Paula S. dos Santos
Este artigo trata de um componente criado para dar maior controle dos recursos disponíveis dentro de domínios que oferecem Qualidade de Serviço, o controlador de banda.

O Protocolo RSVP e o Desempenho de Aplicações Multimídia
Ana Luísa P. Schmidt
Resultado de uma tese de mestrado, este artigo apresenta um resumo da proposta de estudo e configuração de um ambiente com Qualidade de Serviço, bem como uma revisão do protocolo RSVP.

Qualidade de Serviço na Internet
Ana Paula S. dos Santos
A autora deste artigo trata de um tema bastante atual e que está sendo exaustivamente discutido nos meios acadêmicos: a possibilidade de se ter qualidade de serviço na Internet.