2.6 ESTADO DA ARTE
2.6.2 Algoritmos Com Estratégias de Conhecimento do Canal e Com QoS
2.6.2.5 Frame Level Scheduler
O escalonador FLS visa o melhoramento da qualidade de serviço de tempo real para
downlink LTE (CAPOZZI et al., 2013). O algoritmo é composto por dois níveis distintos que
interagem juntos escalonando recursos de rádio aos usuários dinamicamente, considerando as condições do estado do canal, o delay máximo e o comportamento da fonte de dados. Quando utiliza o algoritmo no mais alto nível, o FLS faz a definição frame a frame para saber a quantidade de dados que a fonte de dados precisa para satisfazer a restrição do delay, para poder transmitir em tempo real ao UE, gerando um ciclo de controle linear.
No nível mais baixo, o algoritmo escalonador PF atribui os blocos de recursos para cada TTI considerando os requisitos da largura de banda calculados no alto nível pelo FLS. A abordagem deste escalonador define de uma única vez a quantidade de dados que devem ser transmitidos por cada fontes de dados. As equações 2.11 e 2.12 exemplificam a quantidade de dados que podem ser transmitidos.
𝑞𝑖(𝑘 + 1) − 𝑞𝑖(𝑘) = 𝑑𝑖(𝑘) − 𝑢𝑖(𝑘), (2.11) onde 𝑞𝑖(𝑘) é o tamanho da fila 𝑖 do tempo de duração do quadro LTE, 𝑢𝑖(𝑘) corresponde à quantidade de dados que é transmitida durante o quadro 𝑘, 𝑑𝑖(𝑘) é a quantidade de dados que encheu a fila durante o quadro 𝑘, isto é, modela o comportamento da fonte de dados que alimenta a fila 𝑖.
𝑢𝑖(𝑘) = ℎ𝑖(𝑘) * 𝑞𝑖(𝑘), (2.12)
onde o ℎ𝑖(𝑘) é o filtro de nível invariante no tempo de resposta de impulso, obtidos pelo 𝑞𝑖. Alguns dos escalonadores consideram a qualidade do canal para selecionar usuários e alguns deles consideram também uma métrica de QoS, como delay. No entanto, nenhum deles considera o atraso solicitado pelo usuário ou as características de tráfego.
Por exemplo, um usuário com um requisito de atraso mais rigoroso deve ser selecionado com mais frequência. E um usuário com maior taxa de tráfego também deve ser selecionado com mais frequência para poder ser comparado ao usuário com menor requisitos de atraso. O modelo proposto visa melhorar o escalonamento de pacotes para o downlink LTE que considerará a qua- lidade de canal, atraso requerido pelo usuário e características do tráfego. O Quadro 9 apresenta um comparativo entre os escalonadores LTE (CAPOZZI et al., 2013).
Quadro 9 – Comparativo de escalonadores para rede LTE Escalonadores Análise do canal Delay Atraso solicitado Throughput Tráfego de entrada PF X MLWDF X X X EXP X X X EXP-Rule X X X Log-Rule X X X FLS X X PFLR X X X X
Fonte: Autoria Própria
Como visto na tabela acima, cada escalonador tem uma característica que o difere dos demais. Características como delay, throughput e o tráfego de entrada serão abordadas na seção de avaliação de desempenho após a obtenção da nova métrica de seleção do usuário para o escalonador PFLR na próxima seção.
Os algoritmos escalonadores PF e MLWDF serão comparados ao escalonador PFLR. Como o escalonador PFLR deriva do PF será possível avaliar as vantagens e desvantagens entrem os dois com relação a alocação dos usuário a partir do atraso solicitado. O escalonador MLWDF que é projetado para o uso de fluxo de dados e que em sua arquitetura faz a alocação do usuário baseando-se no delay do pacote na fila de transmissão, será possível comparar os resultados de perda de pacotes com o tráfego de entrada moldado pelo token bucket que o escalonador PFLR utiliza em sua implementação.
3 ESCALONADOR PFLR
Este capítulo apresenta o modelo adaptado, seus parâmetros de estrada e exemplifica o funcionamento do tráfego de entrada sendo moldado pelo token bucket. A nova métrica de seleção do usuário no escalonador PFLR e seus parâmetros, funcionalidades e definições são apresentados em seguida.
A Figura 8 ilustra o funcionamento da rede LTE com o escalonador PFLR, que se baseia em um servidor LR modificado e no algoritmo do token bucket. A abordagem básica consiste em que o token bucket molde o tráfego de entrada e o servidor LR forneça a taxa para alocar cada usuário. O tamanho do token bucket e a taxa do token bucket são calculados de acordo com as características de tráfego de entrada. A taxa de serviço para cada usuário é estimada de acordo com o atraso solicitado por cada usuário que é feita pelo escalonador na eNB. Em seguida, a taxa de serviço para cada usuário é usada para modificar e criar uma nova métrica a partir do algoritmo escalonador PF.
Figura 8 – Rede LTE com o escalonador PFLR
Fonte: Autoria Própria
Quando o usuário inicia um streaming de vídeo em downlink, são recebidos dois pa- râmetros iniciais para a eNB sendo eles, o tráfego de entrada e o atraso solicitado pelo usuário. Para que o tráfego de entrada não sofra congestionamento de pacotes, o token bucket molda este tráfego que chega em VBR (Variable Bit Rate) e transforma em CBR (Constant Bit Rate). Com o tráfego de entrada moldado em CBR, é gerado um parâmetro do tamanho máximo do pacote de vídeo. Este parâmetro é utilizado junto com o atraso solicitado para calcular a taxa de serviço do usuário no servidor LR. Em seguida, o escalonador PFLR usa como parâmetro a taxa de serviço do usuário, para selecionar cada usuário em função do throughput médio que por fim
irá garantir o atraso solicitado e alocar os blocos de recursos como visto na Figura 7.
Um escalonador que fornece largura de banda garantida pode ser modelado como um servidor LR. O comportamento de um servidor LR é determinado por dois parâmetros para cada sessão 𝑖: latência (𝜃𝑖) e taxa de serviço (𝜏𝑖). A latência (𝜃𝑖) do escalonador pode ser vista como o pior caso de delay e depende dos parâmetros da rede. A latência da rede 𝜃𝑖 é calculada no servidor LR pela seguinte equação:
𝜃𝑖 = 𝑇 𝐹 +
𝐿𝑚𝑎𝑥,𝑖
𝑅 , (3.1)
onde 𝑇 𝐹 é o tempo para alocar todos os usuários, 𝐿𝑚𝑎𝑥,𝑖 é o tamanho máximo do pacote na sessão 𝑖 e 𝑅 é a taxa média do canal do usuário.
Agora, é apresentado como a taxa de serviço 𝜏𝑖para cada sessão 𝑖 pode ser determinada. Um servidor LR pode fornecer um atraso limitado se o tráfego de entrada for moldado por um
token bucket. Um token bucket é um contador não negativo, que acumula tokens a uma taxa
constante 𝜌𝑖até que o contador atinja sua capacidade 𝜎𝑖. Pacotes da sessão 𝑖 podem ser liberados para a fila somente após a remoção do número necessário de tokens do token bucket. Em um servidor LR, se o token bucket estiver vazio, os pacotes que chegam são descartados. No entanto, o modelo garante que sempre haverá tokens no token bucket e os pacotes não serão descartados. Se o token bucket estiver cheio, uma rajada máxima de 𝜎𝑖 pacotes pode ser enviado para a fila. Quando o fluxo está ocioso ou em execução a uma taxa menor, o tamanho do token bucket atinge o limite superior 𝜎𝑖 e a acumulação de tokens será suspenso até a chegada do próximo pacote. É assumido que a sessão começa com o token bucket cheio.
A sessão de aplicação 𝑖 declara o tamanho máximo de pacote 𝐿𝑚𝑎𝑥,𝑖e o atraso solicitado 𝐷𝑚𝑎𝑥,𝑖, que são usados pelo servidor LR para calcular a taxa de serviço para cada sessão, de modo que possa garantir o atraso solicitado. A taxa de serviço para cada sessão será considerada para modificar o escalonador PF original e estabelecer uma nova métrica para a seleção dos usuários.
O tráfego de entrada 𝐴𝑖(𝑡) da sessão 𝑖 (𝑖 = 1, ..., 𝑁 ) passa através de um token bucket dentro do terminal do usuário durante o intervalo de tempo (0, 𝑡), como apresentado na Figura 9. O tráfego de dados é limitado pela Equação 3.2 e também como pode ser visto na Figura 10.
𝐴𝑖(𝑡) ≤ 𝜎𝑖+ 𝜌𝑖𝑡. (3.2)
Em seguida, o pacote é enfileirado na estação até que seja transmitido pelo meio sem fio. O atraso da fila é medido como o intervalo de tempo entre a chegada do último bit de um pacote e sua transmissão. No novo escalonador, o delay na fila depende dos parâmetros do token
bucket, da latência da rede e da taxa de serviço. Em (STILIADIS; VARMA, 1998) e (PAREKH;
Figura 9 – Tráfego de entrada com o Token
Bucket
Fonte: Autoria Própria
bucket e o escalonador aloca uma taxa de serviço 𝜏𝑖, então um servidor LR pode fornecer um
atraso máximo 𝐷𝑖: 𝐷𝑖 ≤ 𝜎𝑖 𝜏𝑖 + 𝜃𝑖− 𝐿𝑚𝑎𝑥,𝑖 𝜏𝑖 , (3.3)
onde 𝜏𝑖 é a taxa de serviço, 𝜎𝑖 é o tamanho do token bucket, 𝜃𝑖é a latência e 𝐿𝑚𝑎𝑥,𝑖𝜏
𝑖 é a diferença
entre o limite inferior e superior, conforme apresentado na Figura 10. Figura 10 – Atraso máximo 𝐷𝑖
Fonte: (STILIADIS; VARMA, 1998)
O limite superior 𝐷𝑏𝑜𝑢𝑛𝑑 deve ser igual ao atraso máximo permitido: 𝐷𝑏𝑜𝑢𝑛𝑑 = 𝜎𝑖 𝜏𝑖 + 𝜃𝑖− 𝐿𝑚𝑎𝑥,𝑖 𝜏𝑖 . (3.4)
Portanto, são definidos três delay diferentes. O primeiro é o delay máximo 𝐷𝑖, o se- gundo é o limite superior do delay 𝐷𝑏𝑜𝑢𝑛𝑑 e o terceiro é o delay máximo permitido necessário 𝐷𝑚𝑎𝑥,𝑖. A relação entre eles é 𝐷𝑖≤ 𝐷𝑏𝑜𝑢𝑛𝑑≤ 𝐷𝑚𝑎𝑥,𝑖. Portanto, a condição de restrição de delay do novo escalonador é 𝜎𝑖 𝜏𝑖 + 𝜃𝑖− 𝐿𝑚𝑎𝑥,𝑖 𝜏𝑖 ≤ 𝐷𝑚𝑎𝑥,𝑖 (3.5)
A segunda condição de restrição de delay é a taxa do token bucket mais a taxa para transmitir um pacote de tamanho máximo deve ser menor do que a taxa de serviço para garantir um delay limitado. Assim, a segunda condição de restrição é
𝜌𝑖+
𝐿𝑚𝑎𝑥,𝑖
𝑇 𝐹 ≤ 𝜏𝑖. (3.6)
O cálculo para a taxa de serviço fornecida pelo servidor LR é dada pela Equação 3.7, e pode ser observada na Figura 11
𝜏𝑖 = (𝜎𝑖− 𝐿𝑚𝑎𝑥,𝑖) (𝐷𝑚𝑎𝑥,𝑖− 𝑇 𝐹 − ( 𝐿𝑚𝑎𝑥,𝑖 𝑅 )) +𝐿𝑚𝑎𝑥,𝑖 𝑇 𝐹 . (3.7)
A partir da taxa média do canal do usuário e a 2a condição de restrição do modelo apresentado na Equação 3.6 é possível obter a quantidade de usuários que o sistema conseguirá alocar para garantir o atraso solicitado, como apresentado na Equação 3.8
𝑁o𝑈 𝐸𝑠 = 𝑅 𝜌𝑖+
𝐿𝑚𝑎𝑥,𝑖
𝑇 𝐹
(3.8) A Figura 11 ilustra o ponto de intersecção entre a 1a condição de restrição apresentado na Equação 3.5 com a 2a condição de restrição apresentado na Equação 3.6, onde é possível observar como é encontrado a taxa de serviço do usuário e o número de usuários para garantir o atraso solicitado.
Figura 11 – A intersecção entre as duas restrições
Fonte: Autoria Própria
Este modelo analítico é usado para calcular a taxa de usuário de acordo com o atraso so- licitado pelo usuário e características de tráfego. Essa taxa de usuário foi usada para modificar a métrica do escalonador PF na Equação 3.9. O escalonador PFLR é apresentado na Equação 3.10
𝑊𝑖,𝑗 = 𝑟𝑖,𝑗 𝑅𝑖 * 𝑋, (3.9) 𝑋 = 𝐿𝑆 if 𝑇 𝐻𝑖,𝑗 > 𝜏𝑖, 𝑋 = 𝐿𝐼 if 𝑇 𝐻𝑖,𝑗 < (𝜏𝑖 * 0.7) , (3.10)
onde 𝑊𝑖,𝑗é a métrica do escalonador PFLR, 𝐿𝑆 é um valor variável de limite superior, 𝐿𝐼 é um valor variável de limite inferior, 𝑇 𝐻𝑖,𝑗 é o throughput do usuário, 𝜏𝑖 é a taxa de serviço e 𝑋 é o parâmetro de controle e será exemplificado como foi obtido na Seção 4.2.
Como visto anteriormente o modelo analítico possui duas restrições. A 1a restrição apresentada na Figura 12 ilustra a Equação 3.3 e como o atraso máximo 𝐷𝑖 é calculado para restringir o atraso solicitado pelo usuário exemplificando os 3 termos. O 1otermo é o tamanho do token bucket divido pela taxa de serviço do usuário (𝜎𝑖
𝜏𝑖), o 2
otermo é a latência da rede 𝜃 𝑖e o 3otermo é a diferença do limite inferior e superior (𝐿𝑚𝑎𝑥,𝑖
𝜏𝑖 ).
Figura 12 – Primeira restrição para o atraso máximo 𝐷𝑖
Fonte: Autoria Própria
A 2a restrição do modelo é apresentado na Figura 13, onde são exemplificado 3 situa- ções diferentes.
Figura 13 – Segunda restrição para o atraso
Fonte: Autoria Própria
Importante notar que o atraso em (A) é o atraso máximo ideal pois não atende a 1a restrição do modelo na Equação 3.3 nem a 2a restrição na Equação 3.6, o delay permanece constante durante toda a execução do modelo. O atraso em (B) funcionaria com a condição de restrição do delay mas não é a condição ideal para o modelo, pois o delay é menor. O terceiro atraso apresentado em (C) também não atende a 2a restrição do atraso pelo fato do delay ser maior como apresentado na Equação 3.6.
4 AVALIAÇÃO DE DESEMPENHO
A avaliação de desempenho apresenta os resultados dos algoritmos escalonadores com- parados no simulador LTE-Sim. Uma breve apresentação sobre o ambiente de simulação é apre- sentada na Seção 4.1. Os parâmetros de simulação e os resultados do modelo analítico, teste de consumo de recursos do modelo e avaliação de desempenho do modelo são apresentadas na Seção 4.2.