Teleinformática - Prof : Otto
Aluno: Mauro Henrique Pinheiro Duarte
03/02/1999
 
 
 
Standard IEEE802.1p

 

 

 

 

Standard for Local and Metropolitan Area NetworksñSupplement to Media Acess Control (MAC) Bridgies: Traffic Class Expediting and Dynamic Multicast Filetring

 
 
 
 
 
 
 
 
 
 
Histórico :

Com o tempo foi se percebendo a necessidade do uso da prioridade em redes de computadores, pois acontecia de processos sem tanta importância ficarem sendo executados por um tempo muito grande ao invés de processos prioritários.

Como deixar que o usuário defina sua prioridade é inviável, pois todos se colocam com prioridade máxima, pensou-se numa estrutura em que a rede determina a prioridade de um processo através de análises.

Essa prioridade de tráfico de rede é muito importante para segurança na tranmissão, principalmente de tráficos sensíveis à latência (quantidade de dados na rede), como por exemplo voz e vídeo.

Essa prioridade surgiu com a norma IEEE802.1p ( Standard for Local and Metropolitan Area NetworksñSupplement to Media Acess Control (MAC) Bridgies: Traffic Class Expediting and Dynamic Multicast Filetring), que foi incorporada a IEEE802.1D.

É uma especificação de mecanismos para classificar o tráfico como Supporting time critical service ou multicast filtering no Controle de acesso a mídia .

Tem como objetivo dar suporte a aplicações de tempo crítico e de multicast, incluindo aplicações interativas de multimídia e outros serviços como voz por IP e vídeo conferência.

 

Interpretando o valor da prioridade :

O valor da prioridade é passado pela rede por uma estrututa chamda NDIS_PACKET associada aos pacotes transmitidos. Os drivers que atendem a norma IEEE802.1p podem incluir o valor da prioridade direto no campo apropriado do cabeçalho da camada MAC (media acess control) dos pacotes transmitidos. Para outros casos o driver deve decidir como planejar a prioridade do processo.

Para pacotes recebidos pela rede, os drivers que suportam a norma 802.1p são capazes de extrair a prioridade do usuário do cabeçalho da camada MAC e incluir no campo apropriado do NDIS_PACKET. Drivers que não suportam a IEEE802.1p devem usar um guia para decidir qual prioridade devem inserir na estrutura do NDIS_PACKET.

Obviamente para inserir essa prioridade (802.1p) um novo campo é inserido ao NDIS_PACKET . Para acessar essa prioridade o driver usa macros.

Prioridades do usuário e Classes de tráfico :

Na especificação IEEE802.1p a prioridade é estática e é definida pela rede, o que obviamente torna as redes muito mais complexas, do que quando a prioridade é dada pelo usuário.

Através do mapeamento dos processos a serem executados a rede determina o nível de prioridade de cada processo, que podem ser de 0 (baixa prioridade) até 7 (alta prioridade). É importante notar que essas prioridades são invisíveis para o usuário.

Há um algorítmo para escolha da prioridade, que é basicamente colocar os pacotes em determinadas filas de acordo com o valor da prioridade no cabeçalho do pacote no caso da 802.1p. Podem ocorrer valores de prioridades para usuários serem iguais porém internamente esses processos estão em filas diferentes.

Essa prioridade dada pela 802.1p será importante para serviços integrados que exigem QoS (Qualidade de Serviço) usando RSVP (ver anexo).

Quando mais de um serviço de prioridade é oferecido por um elemento de rede, ela suporta um Controlled-Load invés de Garanteed Service, a rede fica mais complexa e provavelmente é necessário colocar os processos de iguais prioridades em filas diferentes.

Alguns switches podem implementar uma função na entrada que mapeia a prioridade do usuário recebida para um valor interno (esta tabela de mapeamento no 802.1p é chamada de "user_priority regeneration table"). Esta tabela pode ser mapeada usando uma tabela de saída. O mesmo mapeamento deve ser utilizado num controle de admissão para pedir o uso da prioridade do usuário.

Se um fluxo de dados estiver gerando tráfico acima do previsto para a rede, a ele damos uma prioridade mais baixa less than best effort .

A prioridade é dada de acordo com a atual topologia da rede, como load conditions e outras condições. Quando um novo serviço é adicionado a rede, novos algorítmos de enfileramento serão usados e pode ocorrer um novo mapeamento nesse momento.

O modo com que se escolhe a prioridade é mais ou menos o seguinte. O cliente precisa responder a estas questões;

  1. Que classe de tráfico em adiciono ao fluxo ?
  2. O cliente deve saber como rotular os pacotes do fluxo quando colocá-los dentro da rede.

  3. Para quem perguntar ?
  4. O modelo proposto é que o cliente peça a rede qual a classe de prioridade para o tráfico corrente.

  5. Como perguntar ?
Um protocolo de pedido e resposta é preciso entre o cliente e a rede. O pedido é colocado no pedido de controle de admissão e a resposta na permissão do controle de admissão, isto é importante visto que reduz a exposição a mudanças das condições da rede se o cliente pedir permissão por um grande tempo.

 

 

 

 

 

A rede deve responder a estas perguntas :

  1. Qual classe de tráfico adiciono ao fluxo atual ?
  2. Isto é um problema difícil de se resolver no geral, mas algumas simplificações são feitas de modo a conseguir que estas classes sejam escolhidas dinâmicamente.

  3. Qual a classe de tráfico que tem os piores parametros que atendem as necessidades desse fluxo atual ?
Isto é um problema de comparação. As classes de serviços podem ser rankeadas (best effort ß controlled load ß garanteed service). Se uma classe for implementada no futuro a vazão pode ser diminuida e não podem ser simplesmente rankeadas.

É importante notarmos que se muitas pessoas usassem recursos pesados da rede, por exemplo em uma universidade para vídeo conferência, a rede ficaria inviável. É importante neste caso que demos prioridades aos usuários de modo que os usuários preferenciais consigam utilizar da rede com melhor desempenho; para isso é importante o RSVP (ver a seguir), através do qual consegue-se programar as prioridades de acordo com as reservas de bandas feitas por cada usuário da rede.

Existem várias maneiras para dar prioridades a usuários e usar limitados números de filas. Mas essa norma mostra o default para o desenvolvimento de Bridged LANs no uso de serviços integrados, que é o objetivo dessa norma.

A norma IEEE802.1p permite prioridades, mapeamento de filas e disciplinas de serviços de filas para ser manipuladas a fim de conseguir o melhor desempenho da LAN. Por outro lado é bastante interessante que os padrões (default) facilitem o uso do plug-and-play e o desenvolvimento de serviços integrados. Os padrões foram feitos de modo a suportar os serviços integrados emergentes e também não alterar as Bridges.

A caracterização do tráfico de rede pode ser muito complexa, certamente muito complexa para ser representada por um número de 0 até 7. A pragmática classificação do tráfico é para simplificar as necessidades radicalmente para preservar a alta velocidade e baixo custo de manuseio característico das Bridges.

A classificação foi feita em oito tipo de tráficos:

  1. Network Control : um pedido para manter e suportar a infraestrutura da rede.
  2. Voice : caracterizada por menos de 10 ms de atraso e máxima transmissão através da LAN.
  3. Vídeo : caracterizada por menos de 100 ms de atraso.
  4. Controlled Load : importante para aplicações comerciais sujeito a algumas formas de controle de admissão, planejando as necessidades da rede reservando bada-passante por fluxo.
  5. Excellent Effort : o melhor Best Effort que uma informação conserta organização entregaria a seus clientes mais importantes.
  6. Best Effort : tráfico de LAN como conhecemos hoje.
  7. Background : Aumenta a transferência e outras atividades que são permitidas na rede mas que não deveria afetar o uso da rede por outros usuários e aplicações.
As prioridades do usuário e classes de tráfico facilitam a administração da(o):
  1. Latência : para suportar novas aplicações.
  2. Processamento : conhecer acordo de serviços centrado na banda-passante para os tipos de tráfico de rede.
 

 

 

 

 

 

 

 

 

 

De acordo com o número de filas os tipos de tráficos são separados da seguinte maneira :  
Number of Queues
Traffic Types
1
{Best effort, Excellent effort, Background, Voice, Controlled Load, Video, Network Control}
2
{ Best effort, Excellent effort,Background}
{ Voice, Controlled Load, Video, Network Control
3
{ Best effort, Excellent effort,Background}
{ Controlled Load, Video}
{Voice, Network Control}
4
{ Background}
{ Best effort, Excellent effort}
{ Controlled Load, Video}
{ Voice, Network Control}
5
{ Background}
{ Best effort, Excellent effort}
{Controlled Load}
{Video}
{Voice, Network Control}
6
{Background}
{ Best effort}
{ Excellent effort}
{Controlled Load}
{Video}
{Voice, Network Control}
7
{Background}
{ Best effort}
{ Excellent effort}
{Controlled Load}
{Video}
{Voice
{ Network Control}
  A razão dessa divisão é separar tipos de tráficos muito diferentes; por exemplo, separam o Controlled Load (bem comportado, com controle de admissão) do tráfico de Voice que é muito sensível a latência.
Traffic Type Acronyms :
 
User-priority
Acronyms
Traffic Type
1
BK
Background
2
-
Spare
0 (default)
BE
Best effort
3
EE
Excellent effort
4
CL
Controlled Load
5
VI
Video
6
VO
Voice
7
NC
Network Control
 
 
Definiting Traffic Types :
 
Number of queues
Definiting Traffic Type
1
BE
2
BE
VO
3
BE
CL
VO
4
BK
BE
CL
VO
5
BK
BE
CL
VI
VO
6
BK
BE
EE
CL
VI
VO
7
BK
BE
EE
CL
VI
VO
NC
8
BK
-
BE
EE
CL
VI
VO
NC
  A prioridade de usuário default para transmissão por estações token ring é zero pela ISSO/IEC 10038:1993- para frames recebidos de Ethernet. Se mudarmos o default vai resultar em confusão, e provavelmente falta de operação. Ao mesmo tempo o default de tráfico hoje é Best Effort. A solução para esse dilema é continuar a usar zero para prioridade do usuário default e para Best Effort transmissão de dados e associar Background, the spare value and Excellent Effort com prioridades 1, 2 e 3 respectivamente. Isto quer dizer que valores 1 e 2 efetivamente comunicam uma prioridade menor que a 0 (zero).
RSVP - Resource Reservation Protocol :

Permite que vários pacotes sejam enviados para múltiplos grupos ou receptores, também que receptores peçam canais a hosts e otimize o uso de banda-passante enquanto ao mesmo tempo elimina congestionamento.

A diferença do RSVP com o multicast normal é que uma informação extra que é enviada aos roteadores periodicamente para que eles mantenham uma certa estrutura de dados em suas memórias.

Para melhorar a recepção e eliminar o congestionamento, cada receptor em um grupo pode enviar uma mensagem de reserva pela árvore para o remetente. Para cada pedido o roteador reserva a banda passante necessária. Se a banda separada for insuficiente há o fracasso da transmissão. Uma vez que a mensagem volta para a fonte, a banda foi reservada para o receptor.

Supondo que existem dois remetentes ( 1 e 2 ), e três receptores ( 3, 4 e 5 ) e que 3 faça um pedido de reserva para 1, quando esse pedido for aceito teremos um fluxo de pacotes de 1 para 3 sem congestionamento. Agora se 3 pedir também uma reserva para 2, por exemplo 1 e 2 estão transmitindo programas de televisão e 3 quer ver os dois simultaneamente, teremos dois caminhos reservados para 3 visto que os programas exibidos por 1 e 2 são diferentes.

Ainda supondo que 5 (um receptor) também queira ver o programa exibido por 1 e faça uma reserva; primeiramente a banda dedicada é reservada para o roteador próximo, se for visto que esse roteador já está ligando 1 a 3 que vê o mesmo programa e tiver a banda passante necessária, logo não haverá necessidade de reservar outro caminho. Porém pode acontecer de a banda reservada anteriormente não ser necessária, por exemplo se a banda reservada primeiro for para uma imagem em preto e branco e a banda depois desejada for para imagem colorida, logo apesar de já Ter o caminho feito há necessidade de mais banda-passante para ligar o remetente ao receptor.

Também há possibilidade de o receptor escolher mais de um remetente, isso é usado pelo roteador para otimizar o planejamento da banda-passante.

OBS: dois receptores podem compartilhar um canal se eles concordarem em não mudar seus remetentes mais tarde.

 

 

Tamanho dos frames :

Na maioria dos casos o tamanho dos frames não é alterado pelo uso do valor de prioridade da IEEE802.1p. Essas prioridades são adicionadas e removidas dos pacotes por adaptadores e sistemas intermediários da rede.

Devemos ter cuidado para que o tamanho dos frames não supere o valor máximo de tamanho de frame da rede quando são adicionados, pois pode haver superação do máximo valor suportado por adaptadores antes da retirada desses bits.

 
Uso eficiente da Banda-Passante da Rede :

Para permitir o uso eficiente da banda-passante e melhorar o uso do processador e um eficiente controle de multicast foram criados baseados na IEEE802.1p o GARP e o GMRP, que permitem o registro dinâmico de grupos de multicast com switches que suportam a norma IEEE802.1p. Abaixo tem-se um resumo do GARP e do GMRD.

GARP - Generic Attribute registration Protocol :

Permite a disseminação de um atributo genérico, através de uma rede local, para os participantes de uma aplicação do GARP (GARP participants). A definição dos tipos de atributo registrado, os valores que ele pode ter, etc... são específicos da aplicação do GARP.

No GMRP é possível o registro de dois tipos de atributos, conforme veremos a seguir.

Os valores dos parâmetros registrados na porta da bridge que é parte da topologia ativa são propagados como declaração através de todas as outras portas das bridges que fazem parte da topologia.

Uma dada declaração será propagada para todos os dispositivos numa Bridged LAN (concatenação de individuais IEEE802 LANs interconectadas por MAC Bridges) que existe um participante do GARP. O valor do atributo será armazenado na porta da Bridge mais próxima da fonte de declarações.

Também pode ocorrer de duas estações (terminais) declararem o mesmo valor de atributo em diferentes segmentos de LAN. A adição de uma segunda fonte de declaração resulta que todas as estações registram o valor do atributo e algumas bridges registram o valor em mais de uma porta.

Pode se perceber que se o valor do atributo A é que a estação quer receber detalhes sobre um jogo de futebol, e o resultado deve ser informado somente para as estaçòes que declararam esse atributo A, uma estação que tem esse resultado pode usar a presença ou não desse atributo na porta para saber para onde deve mandar esse resultado. E as bridges que recebem podem determinar para que portas enviam os resultados.

 

GMRP- GARP Multicast Registration Protocol :

Mecanismo que permite a Bridges e estações a dinamicamente registrar informações de membros de grupos com MAC bridges vinculadas ao mesmo segmento LAN. Essas informações são disseminadas para todas as Bridges na Bridged LAN que suporta 802.1p.

As informações disseminadas via GMRP são do tipo:

O registro de grupos permite que as bridges enviem os frames apenas para membros de grupos registrados

O GMRP usa serviços como o GID (GARP Information Distribuition) e o GIP (GARP Information Propagation), para declarar e propagar informações de membros de grupos e pedidos de serviços de grupos pela Bridged LAN.

Qualquer nova informação registrada em uma Bridge particular é propagada pelo GARP através da Bridged LAN para outras bridges, que usam essa informação para atualisar os registros do grupo no Filtering Database das estações e bridges participantes.

Qualquer participante do GMRP que quiser receber frames tranmitidos para um grupo particular deve declarar sua intenção de fazê-lo, pedindo para ser membro do grupo interessado; assim como qualquer usuário do serviço MAC pode transmitir frames para um grupo particular de qualquer ponto na Bridged LAN. Esse frame será recebido em todos segmentos de LAN a que os participantes do GMRD estiverem vinculados; porém o filtro aplicado pelas bridges para as portas que não tiverem registros criados pelo GMRD não deixa que o frame seja transmitido para todos os segmentos da LAN; isto é, os segmentos que não forem registrados ou não forem caminhos de participantes do GMRD não recebem os frames.

 

Bibliografia :

- página da IEEE

- textos da internet sobre a IEEE802.1p

- outras normas

 

Perguntas e Respostas