Escolar Documentos
Profissional Documentos
Cultura Documentos
__________________________________________
USP So Carlos
Novembro de 2008
Agradecimentos
Agradeo a Deus pela vida, sade e inspirao necessrios para a realizao deste trabalho.
Agradeo aos meus pais e irm pela motivao e apoio ao longo de toda a minha vida
acadmica.
Agradeo ao Buby por ter me ajudado a entender muito cedo o real valor da vida.
Agradeo ao Benedicto Geraldo Stoppa, Maria Aparecida Rosa Vianna, Fabio Vianna
Stoppa e Aparecida Poiatti Rosa Vianna por terem atuado como uma segunda famlia.
Agradeo ao Professor Doutor Marcos Jos Santana pela orientao cientfica desde os
tempos de graduao e Professora Doutora Regina Helena Carlucci Santana pela coorientao. Com ambos constru uma amizade que atravessa os muros da Universidade,
amizade que foi determinante em diversas conquistas pessoais.
Agradeo aos professores que participaram do meu exame de qualificao e da minha
defesa, pela leitura respeitosa dos meus textos, que contribuiu para o aprimoramento da
pesquisa.
Agradeo amiga Alessandra Kelli Barbato, com quem mantive uma parceria acadmica
da graduao ao Mestrado.
Agradeo ao amigo Marcelo Fila Pecenin, com quem mantenho uma parceria no esporte e
na vida h mais de 10 anos.
Agradeo Marjorie Mariano pelo apoio que chegou j no fim deste trabalho, mas de
extrema importncia.
Agradeo aos colegas e amigos com quem mantive contato durante o perodo do Mestrado
e que, de alguma forma, contriburam com a realizao deste trabalho: Jos Mrio Franzin,
Vilma Franzin, Rafael Belli, Mateus Pecenin, Umberto Pecenin, Ftima Pecenin, Luiz
Henrique Folster, Tiago Poiatti, Rosa Belli, Jos Armando Belli, Gustavo Belli, Adilson
Renesto, Maria ngela Renesto, Rodrigo Tortella, Gustavo Lazarini, Felipe Francisco, Murilo
Francisco, Felipe Ferreira, Victor Molina, Dirgenes Medeiros Jnior, Michel Lacombe, Luiz
Fernandes e Marlene Fernandes; Matheus Santos, Lucas Casagrande, Julio Estrella, Geraldo,
Valter e demais colegas do LaSDPC; Renato Pimentel, Cibele Russo, Daniel Silva, Daniel
Junqueira, Marcos Martins, Mrcia Sena, Felipe Ladeira, Andr Freire e demais amigos da
USP; Anne Carraretto, Leonardo Martins, Felipe Ricci e demais colegas do Unibanco; e toda
molecadinha do CERD.
Resumo
Diversas simulaes
Abstract
Lista de Figuras
2.1
18
2.2
25
3.1
39
4.1
47
4.2
52
4.3
52
5.1
57
5.2
58
5.3
58
5.4
61
6.1
72
6.2
78
6.3
80
6.4
86
Lista de Tabelas
2.1
26
2.2
26
5.1
59
5.2
63
5.3
64
6.1
68
6.2
71
6.3
6.4
74
6.5
75
6.6
76
6.7
77
6.8
79
6.9
81
6.10
82
6.11
84
6.12
85
6.13
87
91
7.1
Controle de Admisso
Common Gateway Interface
Central Processing Unit
Domain Name Service
First Come, First Served
File Transfer Protocol
General Public License
HyperText Markup Language
Hypertext Transfer Protocol
Internet Control Message Protocol
Internet Engineering Task Force
Internet Protocol
Open Systems Interconnection
Personal Computer
Quality of Service
Quality of Web Services
Request for Comments
Round-Robin
Reserva Adaptativa de Recursos
Resource Reservation Protocol
Service Level Agreement
Simple Network Management Protocol
Simple Mail Transfer Protocol
Secure Socket Layer
Servidor Web com Diferenciao de Servios
Transmission Control Protocol
User Datagram Protocol
Uniform Resource Locators
World Wide Web Consortium
Weighted Fair Queuing
World Wide Web
Sumrio
Introduo............................................................................................................................ 11
1.1 Contextualizao ...................................................................................................... 11
1.2 Motivao ................................................................................................................ 12
1.3 Objetivos.................................................................................................................. 14
1.4 Estrutura................................................................................................................... 14
Infra-estrutura da Web ......................................................................................................... 16
2.1 Consideraes Iniciais .............................................................................................. 16
2.2 A Internet ................................................................................................................. 16
2.2.1 Protocolos TCP/IP ............................................................................................. 17
2.2.2 A Arquitetura TCP/IP ........................................................................................ 17
2.3 A Organizao da Web............................................................................................. 20
2.3.1 Interaes Cliente-Servidor na Web................................................................... 21
2.4 Servidores Web ........................................................................................................ 22
2.5 Protocolo HTTP ....................................................................................................... 24
2.5.1 Mensagens de Requisio e Resposta................................................................. 24
2.5.2 HTTP 1.0 e 1.1 .................................................................................................. 27
2.5.3 Sesses HTTP ................................................................................................... 27
2.6 Consideraes Finais ................................................................................................ 28
Qualidade de Servio e Servidores ....................................................................................... 29
3.1 Consideraes Iniciais .............................................................................................. 29
3.2 Limitaes da Internet Atual..................................................................................... 29
3.3 Conceitos Bsicos de QoS ........................................................................................ 31
3.4 Arquitetura para QoS................................................................................................ 33
3.4.1 Servios Integrados ............................................................................................. 33
3.4.2 Servios Diferenciados ...................................................................................... 36
3.5 Servios Diferenciados em Nvel de Aplicao......................................................... 38
3.5.1 Controle de Admisso........................................................................................ 40
3.5.2 Mecanismos de Diferenciao de Servios......................................................... 41
3.6 Consideraes Finais ................................................................................................ 44
Avaliao de Desempenho ................................................................................................... 46
4.1 Consideraes Iniciais .............................................................................................. 46
4.2 Tcnicas de Avaliao de Desempenho .................................................................... 46
4.2.1 Tcnicas de Aferio ......................................................................................... 47
4.2.2 Tcnicas de Modelagem .................................................................................... 47
4.3 Avaliao de Desempenho de Servidores Web ......................................................... 50
4.4 Avaliao de Desempenho do SWDS ....................................................................... 51
4.5 Consideraes Finais ................................................................................................ 52
Carga de Trabalho................................................................................................................ 54
5.1 Consideraes Iniciais .............................................................................................. 54
5.2 Comrcio Eletrnico................................................................................................. 54
5.3 Modelo da Carga de Trabalho................................................................................... 56
5.4 Cenrio Adotado ...................................................................................................... 60
5.5 Consideraes Finais.................................................................................................. 65
Resultados Obtidos .............................................................................................................. 67
6.1 Consideraes Iniciais .............................................................................................. 67
1
Introduo
1.1 Contextualizao
A Internet hoje um dos mais importantes meios de comunicao, entretanto, no foi
projetada para o uso atualmente observado.
Inicialmente, os dados transferidos pela Internet ofereciam pouca carga, porm, com o
surgimento da World Wide Web (WWW), foi observado um grande aumento do trfego na
rede, pois ela passou a existir no apenas para fins de pesquisas, mas tambm para ser
utilizada para fins informativos, educacionais, de entretenimento e comerciais. Portanto,
ocorreram mudanas no apenas na quantidade do trfego da Internet, mas tambm na
natureza do mesmo (Xiao & Ni, 1999). Essa rede se tornou uma plataforma para aplicaes de
contedo dinmico, de comrcio eletrnico, telefonia, entre outras. No entanto, essas
aplicaes no requerem o mesmo tratamento, uma vez que no possuem as mesmas
caractersticas ou mesmas prioridades. Contudo, o servio oferecido pela Internet baseia-se
em um modelo de melhor esforo (best-effort), em que a rede procura transportar os dados
que lhe so confiados no menor tempo possvel, de preferncia sem erros ou inconsistncias,
mas sem dar s aplicaes garantias de que isso realmente ocorrer (Comer, 2000).
Uma das conseqncias da adoo desse modelo de melhor esforo o fato de que todo o
11
1.2 Motivao
Como as aplicaes no possuem as mesmas caractersticas ou mesmas prioridades,
essencial que a Internet fornea diferenciao de servios com diferentes nveis de QoS
(Quality of Service) para os diversos tipos de requisies (Kant & Mohapatra, 2000).
Uma das solues propostas atualmente pela comunidade cientfica baseia-se no aumento
sob demanda da largura de banda da rede, buscando minimizar o descarte de pacotes. Outra
abordagem adotada para a soluo do problema a insero de QoS na Internet por meio do
fornecimento de servios diferenciados, ou seja, o trfego no deve ser tratado de maneira
uniforme, sem nenhum tipo de diferenciao ou de priorizao. A insero de QoS na Internet
por meio dos Servios Diferenciados tem se mostrado uma excelente alternativa ao modelo de
melhor esforo em que o servio oferecido pela rede se baseia.
No difcil perceber que qualquer esforo para o fornecimento de QoS na Web no
poder ter sucesso se apenas mecanismos em nvel de rede e sistema operacional forem
utilizados, pois, em ltima instncia, so os servidores Web os responsveis pelo atendimento
das solicitaes dos usurios. Dessa forma, necessrio que os servidores Web tambm sejam
capazes de prover QoS, e, para isso, eles devem possuir polticas de atendimento que
consigam realizar a diferenciao de servios.
Esto disponveis diversas especificaes para a proviso de QoS sobre redes IP, com
destaque para as arquiteturas de Servios Integrados (IntServ) (Braden et al., 1994) e
Diferenciados (DiffServ) (Blake et al., 1998). Em nvel de aplicao, a utilizao de Servios
Diferenciados tem sido proposta como uma soluo eficiente para a proviso de melhores
12
servios. Isso pode ser observado por meio dos vrios trabalhos desenvolvidos na rea, entre
eles o de Cardellini et al. (2001), em que introduzido o conceito de Quality of Web Services
(QoWS), inspirado nos princpios de garantia de QoS em nvel de rede, definidos por Kurose
& Ross (2006).
Em Teixeira 2004, proposta uma arquitetura para um servidor Web que o torne capaz de
fornecer servios diferenciados a seus usurios e aplicaes, de acordo com suas
caractersticas de demanda. Esse modelo foi denominado Servidor Web com Diferenciao de
Servios (SWDS).
Foram includos alguns algoritmos de escalonamento no modelo SWDS visando tanto ao
balanceamento de carga entre os processos quanto diferenciao de servios. No primeiro
caso, destacam-se os algoritmos Round Robin e Shortest Queue First (Teixeira, 2004). No
segundo caso, destacam-se os algoritmos de Reserva de Recursos (Teixeira, 2004), Reserva
Adaptativa de Recursos (RSVAdap) (Traldi et al., 2006), Baseados em Prioridades (Estrito e
Adaptativo) (Teixeira et al., 2005) e Weighted Fair Queuing (WFQ) (Traldi et al., 2006).
Tambm foram includas, no modelo SWDS, algumas polticas de controle de admisso,
conforme Teixeira (2004). Essas polticas, levando em considerao a carga do sistema e a
classe a que pertence uma determinada requisio que chega ao servidor, decidem pela
aceitao ou pela rejeio da solicitao.
Os resultados fornecidos pelas polticas inseridas no modelo SWDS so promissores e
motivam a investigao de novas polticas de controle de servios. Entretanto, tanto as
polticas de escalonamento quanto as polticas de controle de admisso implantadas no
modelo no levam em considerao as caractersticas das requisies Web como parmetro na
tomada de decises. Essas polticas baseiam-se apenas na classe da tarefa, que definida pela
sua prioridade.
13
1.3 Objetivos
O objetivo central da pesquisa desenvolvida nesta dissertao de Mestrado foi avaliar a
possibilidade de melhorar o desempenho do modelo de Servidor Web com Diferenciao de
Servios (SWDS), quando so consideradas as caractersticas das requisies Web nas
polticas de atendimento. Entre os objetivos especficos, destacam-se:
1.4 Estrutura
No Captulo 2, ser apresentada a infra-estrutura da Internet, seus protocolos e principais
servios, com destaque para a Web.
No Captulo 3, ser abordado o tpico de diferenciao de servios na Internet, e sero
discutidas as limitaes do seu modelo atual e como a insero de qualidade de servio pode
tornar essa rede mais eficiente. A abordagem de servios diferenciados sobre redes IP e a
viabilidade de seu emprego em nvel de aplicao, particularmente em servidores Web, sero
destacados. Em seguida, ser apresentado o modelo para um Servidor Web com
14
15
2
Infra-estrutura da Web
2.2 A Internet
A Internet pblica uma rede de computadores mundial, isto , uma rede que conecta
milhes de equipamentos de computao em todo o mundo. A maior parte desses
equipamentos formada por PCs tradicionais e pelos chamados servidores, que armazenam e
transmitem informaes, como pginas Web e mensagens por e-mail (Koruse & Ross, 2006).
Cada vez mais, equipamentos de computao esto sendo conectados Internet. Esses
equipamentos so chamados de hospedeiros ou sistemas finais.
Os sistemas finais, assim como a maioria dos outros componentes da Internet, operam
protocolos que controlam o envio e o recebimento de informaes na Internet. O TCP
16
enlace de dados e fsica (Tanenbaum, 2002). Essa equivalncia ilustrada pela Figura 2.1:
A Camada de Acesso Rede, com o menor nvel de abstrao na arquitetura TCP/IP, usa
padres para conexo rede fsica. Ela utiliza vrios protocolos de acesso rede conforme o
tipo de rede disponvel, dando flexibilidade aos protocolos TCP/IP para que funcionem em
diversos meios fsicos.
Essa camada tambm faz o encapsulamento dos datagramas IPs nos frames usados na rede,
e converte os endereos IP para o formato da rede.
Camada de Internet
Nessa camada est estabelecido o protocolo IP (Internet Protocol) (Postel, 1981b), para
transporte no-confivel de mensagens, e o protocolo ICMP (Internet Control Message
Protocol) (Postel, 1981a), para controle da comunicao e informe de erros.
O protocolo IP prov um servio de rede no orientado conexo no requerendo troca
de informaes de controle iniciais (handshaking) para que uma comunicao seja iniciada
18
Camada de Transporte
A Camada de Transporte permite a comunicao fim-a-fim entre dois hosts ou, mais
especificamente, entre processos executados em hosts conectados Internet. Essa camada
introduz o conceito de porta, um nvel de endereo adicional que identifica a aplicao na
mquina. Um endereo completo nesse nvel estabelecido por um par (host, port).
Nessa camada, esto definidos os protocolos TCP (Transmission Control Protocol) (Postel,
1981c) e UDP (User Datagram Protocol) (Postel, 1980).
O protocolo TCP fornece um servio confivel, garantindo que os dados cheguem sem
erros ao seu destino. um protocolo orientado conexo, ou seja, uma conexo lgica fim-afim estabelecida entre os dois hosts antes de a comunicao ser iniciada. O TCP tambm
realiza controle de fluxo para suas aplicaes e controle de congestionamento. O controle de
fluxo procura eliminar a possibilidade de o remetente saturar o destinatrio com o envio de
dados. O controle de congestionamento tenta regular os remetentes quando a rede encontra-se
congestionada.
19
Camada de Aplicao
Essa camada, de maior nvel de abstrao da pilha TCP/IP, define o conjunto de servios
manipulados por usurios. Nela esto os processos que utilizam os servios da camada de
transporte para a entrega dos dados, podendo escolher entre os servios oferecidos pelo
protocolo TCP ou protocolo UDP. nessa camada que so encontrados os servios de
TELNET, FTP, DNS, HTTP, SMTP, entre outros.
falado na Web. Suas tags descrevem a estrutura do documento, fornecem informaes sobre
sua formatao e estabelecem os links com outros documentos ou outros recursos da Web. O
protocolo HTTP utilizado para a comunicao entre os browsers e os servidores Web e
funciona sobre o TCP.
Uma caracterstica importante na organizao da Web seu sistema de nomenclatura
baseado em URLs (Uniform Resource Locators). Uma URL pode identificar pginas HTML,
um recurso ou um objeto qualquer existente na Internet. Sua estrutura composta por:
Pginas Estticas
Pginas estticas so pginas HTML fisicamente armazenadas nos servidores Web. Dessa
forma, os clientes, por meio de browsers, acessam um servidor Web, que por sua vez devolve
as pginas HTML para o usurio.
21
Segundo Casalicchio & Colajanni (2001), as Pginas Estticas podem ser classificadas
como estticas leves e disk-bound (pginas estticas geradas a partir de consultas ao banco de
dados). Esse tipo de classificao leva em considerao o consumo de recursos do sistema
causado pelas requisies HTTP. Em geral, considerado o consumo de CPU e o nmero de
operaes de I/O.
Pginas Dinmicas
O protocolo CGI (Common Gateway Interface), criado em 1995, trouxe uma maior
interatividade para a Web, permitindo iniciar uma aplicao do lado servidor, a partir de um
browser (Yeager & McGrath, 1996). No entanto, a independncia de plataforma ainda
garantida, pois toda a comunicao entre o browser e o servidor Web continua ocorrendo no
formato HTML.
O CGI recebe o pedido de execuo de aplicao via formulrios HTML, em que os
parmetros so digitados no browser pelo usurio, e, ento, faz a transferncia para o
programa apropriado, localizado no lado servidor. Esse programa envia uma Pgina Dinmica
como resposta. O usurio no tem a percepo de que a pgina foi gerada dinamicamente, a
partir de um processo iniciado sob o comando do servidor Web e apenas a recebe como se
fosse uma pgina esttica.
Segundo Casalicchio & Colajanni (2001), as requisies dinmicas podem ser classificadas
como dinmicas leves, CPU-bound e disk/CPU-bound.
sistema.
Um servidor Web est sempre em um lao infinito, aguardando por requisies dos
clientes. Os servidores atuais tratam as requisies que recebem segundo uma disciplina
FCFS (First Come, First Served), ou seja, mantida uma nica fila de espera em que cada
requisio aguarda o momento de ser atendida, de acordo com sua ordem de chegada.
Embora diferentes esquemas de controle de concorrncia possam ser implementados no
servidor, visando a agilizar o atendimento das requisies, este ocorre em geral de maneira
uniforme, sem considerar as particularidades e urgncia de cada tipo de requisio (Teixeira,
2004). A seguir, algumas formas de organizao dos servidores Web so apresentadas
brevemente:
Servidor Iterativo: trata as requisies pela ordem de chegada, sem nenhum tipo de
concorrncia;
Threads por Requisio: para cada requisio que chega criada uma nova thread
para trat-la;
Pool de threads: vrias threads so criadas quando o servidor Web iniciado. Elas
ficam aguardando pela chegada de requisies.
23
Request line: linha que informa a ao a ser executada no servidor em que se encontra
o mtodo invocado (HTTP), a localizao do objeto no servidor e a verso do
protocolo HTTP utilizada;
24
Request header: composto de vrios campos nos quais esto contidas informaes das
caractersticas do servidor e do objeto retornado ao cliente;
25
Mtodo
Finalidade
GET
POST
HEAD
OPTIONS
PUT
DELETE
TRACE
CONNECT
Para informar o resultado da execuo realizada, o servidor retorna em sua resposta HTTP
um cdigo de status. Esse cdigo pode pertencer a uma das classes apresentadas na Tabela
2.2:
Classe
1xx
2xx
3xx
4xx
5xx
Descrio
Finalidade Informativa
Sucesso
Redirecionamento
Erro do cliente
Erro do servidor
26
de vrias requisies individuais de um mesmo cliente (Arlitt, 2000). Por exemplo: um pedido
de um cliente a um site comercial pode envolver uma requisio para selecionar o produto,
outra para o fornecimento das informaes necessrias, uma para estabelecer um acordo de
pagamento e uma ltima requisio para o recebimento de uma confirmao.
Assim, tanto para o cliente quanto para o site de vendas, necessrio que seja garantido o
atendimento de todas as requisies pertencentes a uma transao comercial, pois o sucesso
da transao obtido somente quando o atendimento de uma seqncia de requisies for
concludo.
28
3
Qualidade de Servio e Servidores
garantias de que isso ocorrer. Esse modelo de melhor esforo decorrente da prpria
concepo do protocolo IP, no qual a Internet baseada, que foi projetado para ser simples,
eficiente e flexvel. Essa poltica funciona bem quando o trfego se mantm inferior
capacidade da rede, porm, em fases de congestionamento, podero ocorrer atrasos na entrega
dos pacotes e perda de dados na rede (Vasiliou & Lutfiyya, 2000).
Desde a criao das redes IPs, procura-se deixar a complexidade nas bordas da rede
(hosts), mantendo os elementos internos (roteadores) mais simples. Os roteadores fazem a
verificao dos endereos IPs dos datagramas em uma tabela de rotas, para determinar qual o
prximo salto (hop) a ser dado (Stardust, 1999b). Essa soluo tem sido suficiente para a
transmisso de dados convencionais e-mail, transferncia de arquivos e navegao na Web.
Entretanto, ela se revela inadequada para os novos tipos de aplicaes encontradas na rede,
tais como: aplicaes multimdia, telefonia sobre IP, vdeo-conferncia, transmisso de rdio
e TV (Teixeira, 2004). Essas aplicaes possuem certos requisitos que a Internet no est
preparada para atender. As aplicaes multimdia, por exemplo, necessitam de grande largura
de banda e suportam pequenas perdas de pacotes. J para a telefonia sobre IP, so exigidos
requisitos de temporizao. Alm disso, a Web tem se tornado uma plataforma de negcios,
exigindo alta confiabilidade e disponibilidade do meio de transmisso, cujos usurios esto
dispostos a pagar mais por um servio mais previsvel e de melhor qualidade (Xiao & Ni;
1999).
primeira vista, o problema da Internet poderia parecer de largura de banda, ou seja,
supondo-se que fosse possvel acrescentar capacidade de transmisso indiscriminadamente
rede, teoricamente seria possvel acolher todo o trfego existente, satisfazendo a todos.
Porm, alm de economicamente invivel, no a soluo adequada para alguns casos, pois,
para algumas aplicaes, o ponto crtico no est na quantidade de largura de banda
disponvel, mas sim na latncia de transmisso (Teixeira, 2004).
30
diferentes aplicaes.
Em Koruse & Ross (2006), so estabelecidos alguns princpios para o fornecimento de
garantias de qualidade de servio:
Outro componente importante para a determinao do modelo de QoS a ser fornecido aos
usurios diz respeito ao tipo de trfego que as aplicaes geram e qual o comportamento
esperado da rede para que elas funcionem corretamente. Com relao ao tipo de trfego, as
aplicaes podem ser classificadas em Braden et al. (1994):
Aplicaes de tempo real (no elsticas): exigentes no que diz respeito ao tempo de
transporte dos seus dados (caractersticas rgidas de temporizao). Essa classificao
pode ainda ser quebrada em duas categorias:
Aplicaes elsticas (no tempo real ou adaptveis): para esse tipo de aplicao, a
recepo correta dos dados mais importante do que a sua apresentao em uma taxa
constante. Exemplos de aplicaes elsticas so: correio eletrnico, transferncia de
arquivos, consultas interativas a informaes (como na Web) e aplicaes
cliente/servidor tradicionais.
dados, levando complexidade para o ncleo da rede. Apesar de fornecer a maior QoS possvel
em uma rede baseada nos protocolos TCP/IP, pois realiza a reserva de recursos fim-a-fim,
representa uma ruptura com a abordagem tradicionalmente empregada nas redes IP. Seu
objetivo fornecer um servio mais prximo possvel da abstrao de circuitos virtuais, em
uma rede comutada por pacotes, como a Internet.
So definidas duas classes de servio na arquitetura IntServ, alm do tradicional modelo de
melhor esforo encontrado nas redes IP: Servio Garantido e Servio de Carga Controlada:
Carga Controlada: esse servio oferece uma nica funo. As aplicaes que fazem
reserva de QoS usando os servios de carga controlada recebem um servio
equivalente ao servio fornecido pelo modelo de melhor esforo em condies de
sobrecarga leve. No garantido um atraso mximo, apenas um limiar probabilstico,
assim como no assegurado que no haver perda de pacotes. Os servios de carga
controlada so projetados para aplicativos que podem tolerar uma quantia razovel de
perda e retardo de pacotes, tal como aplicaes de udio e videoconferncia.
Protocolo RSVP
Para a arquitetura IntServ, deve ser realizada a reserva de recursos ao longo do caminho
entre o transmissor e o receptor antes de a transmisso de dados ser iniciada. Em princpio, a
reserva de recursos pode ser executada por qualquer protocolo que seja compatvel com o
modelo, mas na prtica o protocolo RSVP (Resource Reservation Protocol) (Braden et al.,
1997) o padro.
34
O protocolo RSVP considerado como uma das solues mais complexas em suporte ao
fornecimento de QoS (Stardust, 1999a). um protocolo de controle e sinalizao que atua na
camada de rede.
Algumas caractersticas importantes do protocolo RSVP so:
O RSVP faz reservas tanto para transmisses unicast como para transmisses
multicast;
O RSVP faz reservas somente para fluxos unidirecionais. Para conseguir reservas
bidirecionais, deve solicitar duas reservas unidirecionais distintas;
No RSVP, o receptor dos dados o responsvel por iniciar e manter as reservas para
os fluxos;
O estado das reservas no RSVP segue a abordagem soft-state, ou seja, expira aps um
certo perodo de tempo, sendo necessrio renov-lo periodicamente;
Para conseguir QoS, necessrio que todos os roteadores ao longo do caminho dem
suporte ao RSVP, mantendo informaes de estado e escalonando pacotes para cada
fluxo de dados.
importante destacar que o RSVP leva uma complexidade significativa para o ncleo da
Internet, uma vez que exige que os roteadores gerenciem informaes relativas aos fluxos de
35
dados que passam por eles. Isso leva a um rompimento com o modelo tradicional de servios
da Internet, que sempre procurou deixar a complexidade nas bordas da rede. Portanto, a
abordagem de servios integrados mais bem empregada em um ambiente de rede local,
fornecendo uma QoS para aplicaes de um domnio.
Um componente central dos Servios Diferenciados o Service Level Agreement (SLA) acordo de nvel de servio. O SLA um contrato de servio entre um cliente e um provedor
de servios que especifica os detalhes da classificao de trfego e o servio de
encaminhamento que um cliente deve receber.
O provedor de servios precisa garantir que o trfego de um cliente, com o qual ele tem um
SLA, obtenha a QoS contratada. Assim, a administrao da rede do provedor de servios
37
precisa definir os planos de ao dos servios apropriados e medir o desempenho da rede para
garantir o desempenho de trfego combinado.
As polticas de QoS podem ser aplicadas baseadas em nmeros de portas, data e hora,
endereos de origem e destino, ou em outras informaes que estejam contidas no trfego
(Stardust, 1999b). Alm disso, podem ser especificados procedimentos de tarifao e
cobrana, servios de criptografia e autenticao, procedimentos de renegociao dos
parmetros do SLA, entre outros (Vasiliou & Lutfiyya, 2000).
aceitar as requisies de alta prioridade sempre que possvel e somente admitir aquelas de
baixa prioridade quando a carga estiver abaixo do limiar pr-determinado. Com esse
mecanismo, evita-se que o tempo de resposta apresente picos devido aos aumentos na carga
de trabalho, conseguindo-se uma maior estabilidade no sistema.
O mecanismo que leva em considerao a utilizao do sistema emprega uma mdia
exponencialmente ponderada da utilizao do cluster para o controle de admisso, a qual pode
ser ajustada conforme valores atuais ou o histrico da carga do sistema. Esse mecanismo
consegue, de forma rigorosa, manter a utilizao do servidor SWDS dentro do limiar
especificado, o que permite oferecer um tratamento mais justo a todas as classes de
requisies.
So encontrados na literatura outros trabalhos que consideram a presena do Controle de
Admisso fundamental para que os servidores ofeream qualidade de servio, como os
trabalhos de Cardellini et al. (2001), Lee et al. (2002) e Andreolini et al. (2004).
As polticas de controle de admisso podem ainda considerar outros parmetros como base
para a tomada de decises, como as caractersticas das requisies Web, por exemplo.
42
fila de espera que sero percorridas a partir do incio, procura de requisies de uma
determinada prioridade. Caso no encontre nenhuma requisio do tipo especificado, o
algoritmo ser repetido para o nvel de prioridade imediatamente inferior. Quanto maior o
valor de k, melhor ser o tratamento dado s requisies de maior prioridade. Uma
caracterstica indesejvel desse mtodo que, dependendo do valor de k, uma requisio da
classe de menor prioridade pode esperar por muito tempo na fila para ser atendida, mesmo
que o tempo de processamento necessrio para o seu atendimento seja muito pequeno se
comparado ao tempo necessrio para o atendimento das requisies de maior prioridade. Isso
leva a um aumento no tempo mdio de espera na fila.
Em Traldi et al. (2006) apresentado o algoritmo de Reserva Adaptativa de Recursos
(RSVAdap). Esse algoritmo foi desenvolvido com o intuito de adaptar o funcionamento do
algoritmo RSV para ambientes em que a carga varivel. O RSVAdap aloca os ns do cluster
nas classes de usurios (requisies) sob demanda, segundo a carga de trabalho vigente. Para
a alocao dos recursos, o algoritmo se baseia no nmero de requisies de cada classe
presente no sistema no momento da anlise e no nvel de diferenciao pretendido. Definido o
particionamento do cluster, o algoritmo RSVAdap, que atua no mdulo escalonador do
modelo SWDS, distribui as requisies pertencentes a uma determinada classe aos ns
reservados a ela, utilizando o conceito de Shortest Queue First (SQF). Uma caracterstica
importante do algoritmo RSVAdap que, havendo requisies de uma determinada classe no
sistema, independentemente de seu nvel de prioridade, o algoritmo realiza a reserva de pelo
menos um n do cluster a essa classe, impedindo que seja negado atendimento a essas
requisies. Isso pode levar, em algumas situaes, ao desperdcio de recursos do cluster e
tambm diferenciao de servios inadequada.
Em Traldi et al. (2006) foi realizada a adaptao para o nvel de aplicao do algoritmo
Weighted Fair Queuing (WFQ) projetado para o nvel de rede. Esse algoritmo baseado em
43
45
4
Avaliao de Desempenho
47
Rede de Filas
Rede de Filas uma tcnica baseada na Teoria de Filas criada para modelar sistemas nos
quais existe a ocorrncia de filas (Francs, 1998).
Uma rede de filas bsica consiste de entidades chamadas centros de servios e um conjunto
de entidades chamadas de usurios, que recebem servio e circulam pelo sistema (Soares,
1990).
48
Medidas de Desempenho
A vazo (throughput) uma medida da taxa de concluso dos trabalhos. Ela dada
pelo nmero de completudes por unidade de tempo;
49
espera e em servio;
Um servidor Web pode ser submetido por longos perodos a cargas relativamente
baixas e repentinamente ser alvo de cargas superiores sua capacidade;
51
Figura 4.2: Modelo simplificado do Servidor Web com Diferenciao de Servios (SWDS)
53
5
Carga de Trabalho
anos comprovam que o comrcio eletrnico brasileiro est consolidado. Em 2007, esse
segmento cresceu 43% em relao ao ano anterior, atingindo a cifra de R$ 6,3 bilhes
faturados em vendas de produtos pela Internet. A expectativa para o primeiro semestre de
2008 de que as compras cresam aproximadamente 45% em relao ao primeiro semestre de
2007.
Com relao ao nmero de pessoas adeptas s compras no mundo virtual, as expectativas
tambm so boas. 9,5 milhes de internautas j passaram pela experincia de comprar algum
produto pela rede. Em 2008, espera-se que esse nmero suba para 10,5 milhes de econsumidores.
Esses dados evidenciam que a demanda de trfego para aplicaes Web do gnero tem
aumentado, uma vez que a utilizao da Internet para comprar e vender produtos se torna um
hbito cada vez mais comum. Esse aumento na demanda justifica a utilizao de uma
estrutura com diversos servidores Web para atender, com desempenho aceitvel pelos
consumidores, as requisies.
A carga de trabalho no ambiente e-commerce caracterizada pela presena de sesses. As
sesses so definidas por uma seqncia de requisies de diferentes tipos, feitas por um
mesmo usurio durante uma visita ao site (Barbato, 2008). Neste trabalho, essas interaes
sero classificadas em duas categorias gerais:
55
Conforme Menasc et al. (1999), adotando-se 90% dos usurios que iniciam uma sesso
como sendo do tipo Compradores Ocasionais e 10% como Compradores Freqentes, tem-se a
mquina de estados descrita na Figura 5.3:
para os estados Buscas (0,345), Detalhes (0,2) e/ou de retorno para o prprio estado
Categorias (0,395) de 0,94. Isso ocorre porque h ainda a probabilidade de o usurio deixar
o site, que de 0,06. Por uma questo de esttica, isso no est representado na mquina de
estados.
Tendo-se as probabilidades de transio de um estado para outro, possvel calcular a
carga gerada ao sistema para cada requisio do tipo Principal atendida, ou seja, para cada
nova sesso iniciada.
A seguir, apresentado o sistema de equaes que representa tal carga:
A
-0,5A
-0,5A
+0,605B
-0,345B
-0,2B
-0,345C
+0,605C
-0,2C
-0,415 D
-0,415D
+D
-0,075D
-0,203E
-0,2023E
-0,19E
+0,945E
-0,333E
+F
-0,95F
+G
-0,95G
+H
=
=
=
=
=
=
=
=
1
0
0
0
0
0
0
0
Resolvendo-se o sistema de equaes, obtm-se a carga mdia gerada ao sistema para cada
nova sesso iniciada. Os resultados so apresentados na Tabela 5.1:
A = Principal
B = Categorias
C = Buscas
D = Detalhes
E = Login
F = Entrega
G = Pagamento
H = Confirmao
Carga
1
5,887
5,887
2,391
0,190
0,063
0,060
0,057
Carga Relativa
6,44%
37,90%
37,90%
15,39%
1,22%
0,41%
0,39%
0,37%
A osCommerce uma soluo de cdigo aberto e com licena GNU/GPL (General Public
License) que implementa um modelo de loja varejista que vende produtos na Internet. Essa
soluo de cdigo aberto oferece funes de comrcio eletrnico que permitem aos
consumidores navegar por categorias de produtos, procurar por informaes sobre produtos
existentes, ver detalhes de produtos, realizar pedidos e escolher o local de entrega e forma de
pagamento. As interaes relacionadas ao pedido de produtos so criptografadas por meio de
conexes SSL (Secure Socket Layer). Os clientes precisam se registrar no site antes de terem
permisso para comprar. O site mantm um catlogo de itens que podem ser pesquisados por
um cliente. Cada item possui uma descrio textual e uma imagem miniatura associada com
tamanho inferior a 5 Kbytes.
A Figura 5.4 ilustra o cenrio que foi utilizado em Sabo (2006) para a realizao dos
experimentos:
Um computador (identificado como Cliente) foi utilizado para gerar requisies de clientes
Web, o outro foi configurado apenas como um Servidor Web para registrar os tempos de
atendimento) e um terceiro foi configurado como um servidor de aplicaes, responsvel
pelas operaes de acesso ao Banco de Dados. Todos os computadores foram interligados por
uma rede padro Gigabit Ethernet e possuem processadores AMD Athlon XP com 3.2 GHz de
61
freqncia, 1 GByte de memria RAM e disco rgido de 7200 rotaes por minuto, com
capacidade de armazenamento de 80 GBytes.
Para que o Servidor Web Apache registrasse algumas informaes importantes para uma
anlise melhor de componentes especficos do sistema, como tempos mdios de consumo de
CPU e I/O, foram realizadas, em Sabo (2006), algumas modificaes em seu cdigo fonte.
Servidores Web, em geral, registram em arquivos texto (logs) eventos de sucesso e erros
associados s requisies de clientes, sendo que cada registro traz apenas informaes de data
e hora de atendimento, nome do arquivo, mtodo pelo qual realizou a solicitao, quantidades
de bytes enviados e tempo total de atendimento das requisies. Assim, por meio de
instrumentao do cdigo fonte, novas funcionalidades foram disponibilizadas no software
servidor Web Apache. Uma nova funo que coleta o tempo atual de consumo de CPU de
uma requisio Web em um processo do servidor em execuo foi adicionada, com a
utilizao da chamada clock() do sistema operacional Linux. Na estrutura de uma requisio
do Apache existe um campo denominado request_time, designado para armazenar o tempo
inicial de atendimento de uma requisio. Dessa forma, utilizando a mesma analogia, foi
adicionado um novo campo denominado request_time_cpu para armazenar o tempo inicial
de CPU da requisio.
Uma vez extrado do servidor Web o tempo total de atendimento de uma requisio e o
tempo total de consumo de CPU, pode-se calcular o tempo consumido em entrada e sada
(I/O). Esse tempo obtido por meio da equao 5.1, em que: r representa a requisio, Tr,total o
tempo total de atendimento de uma requisio r, e Tr,cpu o tempo total de consumo de CPU
(Sabo, 2006):
Tr,io = Tr,total Tr,cpu
(5.1)
O tempo de entrada e sada inclui o tempo de acesso a disco local e acesso a banco de
dados. No caso, como o banco de dados foi instalado em outro computador, o tempo de
62
Porcentagens
Total
CPU
I/O
CPU
I/O
Principal
0,088253
0,070430
0,017823
79,8046%
20,1954%
Detalhes
0,086097
0,063750
0,022347
74,0442%
25,9558%
Buscas
0,115783
0,094333
0,021450
81,4741%
18,5259%
Categorias
0,096115
0,076333
0,019782
79,4186%
20,5814%
Login
0,046445
0,041331
0,005114
88,9887%
11,0113%
Entrega
0,056348
0,048927
0,007421
86,8292%
13,1708%
Pagamento
0,105471
0,083768
0,021704
79,4220%
20,5780%
Confirmao
0,112506
0,063000
0,049506
55,9971%
44,0029%
A Tabela 5.3 composta pelos tempos mdios das requisies quando desconsiderado o
recurso de cache no cliente.
Pginas Web dinmicas, em relao a pginas Web estticas, tm como diferencial um
maior consumo de recursos de CPU e o fato de no terem seus contedos armazenados em
memria cache. Operaes de acesso base de dados so caracterizadas por exigirem maior
demanda de dispositivos de I/O.
Como se pode observar nas Tabelas 5.2 e 5.3, o tempo de consumo de CPU das requisies
maior que o tempo de consumo de dispositivos de I/O. Isso se deve no somente pelo fato
de a base de dados estar presente em um servidor de aplicaes (separado do servidor Web),
mas tambm pela presena do recurso de cache do sistema operacional no host servidor Web.
63
Porcentagens
Total
CPU
I/O
CPU
I/O
Principal
0,091791
0,072928
0,018863
79,4504%
20,5496%
Detalhes
0,087716
0,073754
0,013962
84,0830%
15,9170%
Buscas
0,121153
0,096474
0,024679
79,6301%
20,3699%
Categorias
0,098332
0,082080
0,016252
83,4725%
16,5275%
Login
0,076757
0,041000
0,035757
53,4153%
46,5847%
Entrega
0,125837
0,083333
0,042504
66,2232%
33,7768%
Pagamento
0,140452
0,072333
0,068118
51,5005%
48,4995%
Confirmao
0,144596
0,058667
0,085929
40,5729%
59,4271%
Arquivos estticos, acessados com maior freqncia no servidor Web imagens, folhas de
estilos etc. , tendem a permanecer na memria cache gerenciada pelo sistema operacional
que executa o servidor. Dessa forma, ao contrrio do que se espera, so resgatados da
memria e no de um dispositivo de armazenamento. A ferramenta utilizada para medir o
tempo de consumo de CPU classifica acessos memria como operaes de CPU.
Caso o cliente Web utilize cache local (opcional e configurvel no navegador), objetos que
compem as pginas Web podem ou no ser requisitados para o servidor, o que gera
economia de recursos. Como as pginas atendidas pelo servidor so dinmicas e compostas
por pequenos arquivos estticos embutidos com tamanho inferior a 5 Kbytes , essa
economia se torna desprezvel.
Em requisies da Categoria Navegar, o ganho de desempenho COM ou SEM o uso do
recurso de cache no cliente se torna desprezvel. No entanto, quando se trata de interaes do
tipo Pedir, no usar o recurso de cache no cliente gera um aumento no tempo de I/O da
requisio. Isso se deve ao fato de as requisies da categoria Pedir serem criptografadas por
meio de conexes SSL (Secure Socket Layer). Sem o recurso de cache no cliente, a chave de
64
segurana da respectiva sesso do cliente dever ser reenviada ao cliente a cada requisio.
Dessa forma, o servidor executar novamente o procedimento de handshaking troca de
certificados, negociao de compresso e codificao, configurao de identificador de
sesso. Esse procedimento realizado durante o atendimento de uma requisio e pode
aumentar em escalas muito maiores o tempo de I/O, conforme a largura de banda da rede que
interliga o cliente e o servidor (Goldberg et al., 1998).
65
66
6
Resultados Obtidos
de acordo com a Tabela 5.1. Os tempos de atendimento de CPU e I/O so estabelecidos por
distribuies exponenciais com valores mdios baseados nas Tabelas 5.2 ou 5.3. A taxa de
acerto em cache para cada requisio apresentada na Tabela 6.1:
30%
Detalhes
30%
Buscas
30%
Categorias
30%
-
Login
Entrega
100%
Pagamento
100%
Confirmao
100%
I/O da Tabela 5.2. Mesmo que, por motivos adversos, aps a etapa de Login, o contedo da
memria cache do cliente possa ser apagado, assume-se uma taxa de acerto de 100% nessas
requisies.
Para dar origem s requisies, foi utilizado o log de acesso a servidores do site da Copa
do Mundo de 1998 (World Cup, 1998). As simulaes so controladas pelo tempo, tendo sido
definido em vinte minutos, sendo quatro minutos para o warm-up. O log traz informaes de
oito servidores, mas para este trabalho so consideradas as informaes de apenas dois deles,
sendo suficiente para gerar uma situao de sobrecarga.
Todas as requisies geradas a partir do log, quando admitidas pelo sistema, so
consideradas requisies da categoria Principal. Sendo atendidas, as respostas so enviadas ao
consumidor e, aps o tempo de pensar do consumidor (thinking time), daro origem a
requisies do tipo Categorias ou do tipo Buscas, de acordo com as probabilidades
apresentadas na mquina de estados da Figura 5.3. Por sua vez, as requisies do tipo
Categorias daro origem a requisies do tipo Buscas, Detalhes ou a outras requisies do
tipo Categorias. Essa lgica utilizada para a gerao dos demais tipos de requisies. O
tempo de pensar do consumidor foi representado segundo uma distribuio uniforme [4, 8].
A capacidade de processamento do Classificador foi definida como 8000
requisies/seg. A capacidade do Controle de Admisso foi definida como 4000
requisies/seg (Traldi et al., 2006).
Para todos os experimentos, o modelo do SWDS foi configurado como um cluster de dez
ns (servidores Web). Essa configurao apresentou-se adequada, pois permitiu a manuteno
da situao de sobrecarga necessria s anlises, mantendo a caracterstica de servidor
distribudo.
Todos os resultados apresentados correspondem a uma mdia de cinco simulaes. So
apresentados tambm os intervalos de confiana de 95%.
69
IC(95%)
0,41
Throughput (req/s)
128,23
IC(95%)
0,03
Util. CPU(%)
100,00
IC(95%)
0,00
Chegadas (n)
97.063,20
52.874,60
53.045,80
12.124,20
547,20
108,40
58,80
29,20
IC(95%)
319,66
190,07
206,00
74,19
16,78
15,10
12,05
7,21
Admisses (n)
97.063,20
52.874,60
53.045,80
12.124,20
547,20
108,40
58,80
29,20
IC(95%)
319,66
190,07
206,00
74,19
16,78
15,10
12,05
7,21
Admisses (%)
100,00
100,00
100,00
100,00
100,00
100,00
100,00
100,00
215.851,40
394,30
215.851,40
394,30
100,00
Trminos (n)
55.326,00
30.238,00
30.145,00
6.951,40
326,00
61,80
31,20
19,20
IC(95%)
83,65
83,28
85,99
63,23
14,16
11,66
6,11
4,06
123.098,60
29,48
Trminos (%)
Tempo Med Resp (s)
57,00
305,95
57,19
305,73
56,83
306,07
57,33
305,38
59,58
308,36
57,01
311,64
53,06
288,55
65,75
308,79
57,03
305,90
Rejeio
(U- A) / U
0,009%
IC(95%)
0,42
1,22
1,28
2,03
7,53
17,72
19,39
25,16
0,51
0,00%
71
Para esse experimento, o ndice de Eficincia muito baixo (0,009%), indicando que,
apesar do sistema estar sobrecarregado, conclui poucas vendas.
O ndice de Rejeio manteve-se zerado, pois no foi implantado nenhum mecanismo de
controle de admisso. Assim, o SWDS foi mantido em situao de sobrecarga, fazendo com
que o tempo de resposta s requisies fosse crescendo ao longo da simulao, conforme
grfico da Figura 6.1.
Tempo de Resposta x Tempo de Simulao
1500
1400
1300
1200
1100
1000
900
800
700
600
500
400
300
200
100
0
240
440
640
840
1040
1240
Principal
Categorias
Buscas
Detalhes
Login
Entrega
Pagamento
Confirmao
Maximizar:
A+B+C+D+E+F+G+H
(6.1)
Sujeito s restries:
0,072A
+0,071B
+0,096C
+0,080D
+0,041E
-0,5A
+0,605B
-0,345C
-0,415D
-0,5A
-0,345B
+0,605C
-0,2B
-0,2C
<=
-0,203E
<=
-0,415D
-0,203E
<=
+D
-0,190E
<=
-0,075D
+0,945E
<=
<=
<=
<=
-0,333E
+0,049F
+0,084G
+0,063H
+F
-0,95F
+G
-0,95G
+H
73
0,072179 s
0,070753 s
0,095832 s
0,080356 s
0,041000 s
0,048927 s
0,083768 s
0,063000 s
A = Principal
B = Categorias
C = Buscas
D = Detalhes
E = Login
F = Entrega
G = Pagamento
H = Confirmao
Peso
7,654
6,326
0,000
0,000
0,000
0,000
0,000
0,000
Peso Relativo
54,75%
45,25%
0,00%
0,00%
0,00%
0,00%
0,00%
0,00%
IC (95%)
0,05
Throughput (req/s)
139,77
IC (95%)
0,01
IC (95%)
0,00
Chegadas (n)
96.794,80
60.640,20
57.861,60
12.060,20
4,20
1,40
0,40
-
IC (95%)
39,83
94,13
220,30
143,22
4,34
2,42
1,11
-
Admisses (n)
96.794,80
60.640,20
57.861,60
12.060,20
4,20
1,40
0,40
-
IC (95%)
39,83
94,13
220,30
143,22
4,34
2,42
1,11
-
Admisses (%)
100,00
100,00
100,00
100,00
100,00
100,00
100,00
-
227.362,80
45,03
227.362,80
45,03
100,00
Trminos (n)
73.978,60
60.167,80
18,40
11,00
2,40
0,60
-
IC (95%)
82,72
88,55
5,59
1,24
2,86
1,11
-
134.178,80
6,29
0,000%
Trminos (%)
Tempo Med Resp (s)
76,43
166,44
99,22
40,12
0,03
455,46
0,09
747,22
57,14
660,47
42,86
709,12
59,02
IC (95%)
109,89
Rejeio
(U - A) / U
8,12
18,17
80,33
130,76
210,18
130,15
9,49
0,00%
Conforme resultados apresentados na Tabela 6.5, foram atendidas mais requisies pelo
servidor SWDS, um aumento de 9% em relao ao algoritmo RR. O throughput evoluiu de
128,23 req/s para 139,77 req/s. Isso ocorreu porque foram atendidas poucas requisies com
maior custo de processamento ao sistema Buscas, Detalhes e Pagamentos. Assim, mais
requisies puderam ser atendidas.
No entanto, evidente que para um negcio de e-commerce o objetivo principal no
atender o maior nmero de requisies web, mas sim gerar o maior nmero de vendas. Dessa
forma, a funo objetivo do modelo de otimizao linear foi ajustada para maximizar o
nmero de concluses de processos de venda. O novo modelo apresentado a seguir:
75
Maximizar:
0A+0B+0C+0D+0E+0F+0G+H
(6.2)
Sujeito s restries:
0,072A
+0,071B
+0,096C
+0,080D
+0,041E
-0,5A
+0,605B
-0,345C
-0,415D
-0,5A
-0,345B
+0,605C
-0,2B
-0,2C
<=
-0,203E
<=
-0,415D
-0,203E
<=
+D
-0,190E
<=
-0,075D
+0,945E
<=
<=
<=
<=
-0,333E
+0,049F
+0,084G
+0,063H
+F
-0,95F
+G
-0,95G
+H
Peso
0,791
4,656
4,656
1,891
0,150
0,050
0,047
0,045
Peso Relativo
6,44%
37,90%
37,90%
15,39%
1,22%
0,41%
0,39%
0,37%
A soluo do modelo de otimizao indica que, para maximizar o nmero de vendas pelo
sistema, deve ser priorizado o atendimento a todas as sesses cujo atendimento tenha sido
iniciado ou, ento, ao se admitir uma nova sesso no sistema, deve-se garantir o atendimento
s requisies subseqentes, pertencentes mesma sesso. Isso fica claro ao comparar as
Tabela 5.1 e 6.6.
76
IC (95%)
0,19
Throughput (req/s)
122,81
IC (95%)
0,06
IC (95%)
0,00
Chegadas (n)
97.147,60
44.798,00
44.916,00
18.103,40
1.400,60
452,80
392,40
345,40
IC (95%)
124,75
183,38
201,51
90,10
19,05
6,77
9,56
15,72
Admisses (n)
97.147,60
44.798,00
44.916,00
18.103,40
1.400,60
452,80
392,40
345,40
IC (95%)
124,75
183,38
201,51
90,10
19,05
6,77
9,56
15,72
Admisses (%)
100,00
100,00
100,00
100,00
100,00
100,00
100,00
100,00
207.556,20
185,63
207.556,20
185,63
100,00
Trminos (n)
8.242,20
44.591,40
44.672,60
17.942,80
1.338,60
416,40
364,20
329,00
IC (95%)
71,29
191,10
171,05
74,87
12,74
11,70
17,89
13,05
Trminos (%)
Tempo Med Resp (s)
8,48
598,98
99,54
40,54
99,46
42,22
99,11
61,05
95,57
78,52
91,96
97,61
92,81
75,88
95,25
55,64
IC (95%)
11,12
11,81
19,25
11,38
10,84
30,78
27,10
21,47
117.897,20
60,36
0,159%
56,80
84,11
Rejeio
(U - A) / U
8,27
0,00%
Comparando-se os resultados aos obtidos com o algoritmo RR, alguns pontos destacam-se:
O throughput diminuiu de 128,23 req/s para 122,81 req/s. Uma queda de 4,2%. Isso
ocorreu dada a nova distribuio de requisies atendidas pelo sistema. So
77
atendidas mais requisies com maior custo de processamento, como dos tipos
Buscas e Detalhes.
O ndice de Rejeio manteve-se zerado, pois no foi considerado nenhum mecanismo de
controle de admisso, ou seja, todas as requisies so admitidas pelo sistema.
Como o WFQ inicia o atendimento a novas sesses apenas quando pode garantir o
atendimento a todos os seus pedidos subseqentes, as requisies da categoria Principal so
penalizadas. Isso faz com que o tempo de resposta a essas requisies cresa
consideravelmente ao longo da simulao. Para os demais tipos de requisies, pode-se
considerar que o tempo cresce de maneira equivalente. Isso pode ser observado no grfico da
Figura 6.2:
Tempo de Resposta x Tempo de Simulao
1500
1400
1300
1200
1100
1000
900
800
700
600
500
400
300
200
100
0
240
340
440
540
640
740
840
940
1040
1140
1240
Principal
Categorias
Buscas
Detalhes
Login
Entrega
Pagamento
Confirmao
Apesar de todas as melhorias obtidas com a insero do algoritmo WFQ no modelo, outros
mecanismos de diferenciao de servios ainda so necessrios para o SWDS. Essa
necessidade fica clara quando analisado o tempo mdio de resposta s requisies que,
mesmo com a reduo, ainda permanece elevado. Assim, em seguida so apresentados os
78
IC (95%)
0,19
Throughput (req/s)
128,62
IC (95%)
0,04
Chegadas (n)
97.049,60
53.467,00
53.502,40
11.710,80
505,00
89,40
44,80
22,40
IC (95%)
174,50
56,55
88,41
76,63
30,33
21,41
13,64
7,68
Admisses (n)
58.602,00
29.042,40
29.122,80
6.341,80
279,20
47,20
24,20
12,00
216.391,40
182,82
123.471,60
Trminos (n)
58.621,60
29.086,40
29.063,80
6.339,60
275,80
47,80
23,80
12,00
IC (95%)
131,13
117,81
91,11
55,93
33,74
14,94
9,01
3,93
123.470,80
41,06
0,006%
Admisses (%)
60,38
54,32
54,43
54,15
55,29
52,80
54,02
53,57
40,57
57,06
Trminos (%)
Tempo Med Resp (s)
100,03
79,78
100,15
79,77
99,80
79,81
99,97
79,78
98,78
79,78
101,27
79,66
98,35
79,74
100,00
79,72
100,00
IC (95%)
0,00
79,79
Rejeio
(U - A) / U
IC (95%)
0,02
0,02
0,03
0,03
0,07
0,14
0,14
0,29
0,02
42,94%
Conforme informaes da Tabela 6.8, observa-se que o tempo mdio de resposta foi
79
reduzido com sucesso, caindo de 305,9s (algoritmo RR sem o uso do Controle de Admisso)
para 79,79s. De acordo com o grfico da Figura 6.3, esse tempo mdio de resposta se mantm
constante ao longo da simulao, uma caracterstica bastante interessante do uso do CA.
No entanto, o ndice de Rejeio foi de 42,94%, indicando que uma parcela representativa
das requisies no foi admitida pelo sistema. Isso necessrio para que a situao de
sobrecarga no leve a um aumento progressivo no tempo mdio de resposta, inviabilizando o
uso do sistema.
O ndice de Eficincia manteve-se muito baixo, em 0,006%, dado que no foi utilizado
nenhum tipo de controle que focasse na concluso dos processos de venda. O CA descarta as
requisies Web, independentemente do tipo, quando o tamanho mdio das filas dos ns do
cluster de servidores Web atinge o mximo definido, no priorizando requisies com
maiores probabilidades de gerar venda. A poltica de atendimento das filas tambm no
oferece nenhum tipo de privilgio s requisies, pois segue a disciplina FCFS.
Tempo de Resposta x Tempo de Simulao
1500
1400
1300
1200
1100
1000
900
800
700
600
500
400
300
200
100
0
240
340
440
540
640
740
840
940
1040
1140
1240
Principal
Categorias
Buscas
Detalhes
Login
Entrega
Pagamento
Confirmao
80
mecanismo de descarte seletivo de requisies. Quando as filas dos servidores Web atingem
95% do tamanho mximo permitido, dado incio a um processo de descarte que leva em
considerao o tipo da requisio que chega ao sistema.
Para a definio do critrio de descarte, foram calculadas as probabilidades que cada tipo
de requisio tem de gerar uma venda. Esses dados foram obtidos dadas as probabilidades de
transio de um estado para outro da mquina de estados da Figura 5.3. A seguir
apresentado o sistema de equaes que representa essas probabilidades:
A
-0,5B
+0,605B
-0,345B
-0,415B
-0,203B
-0,5C
-0,345C
+0,605C
-0,415C
-0,203C
-0,2D
-0,2D
+D
-0,19D
-0,075E
+0,945E
-0,333F
+F
-0,95G
+G
-0,95H
+H
=
=
=
=
=
=
=
=
0
0
0
0
0
0
0
1
5,7%
5,7%
5,7%
7,4%
35,7%
90,3%
95%
100%
Analisando a tabela, observou-se que, como no h desistncia por parte dos compradores
entre a movimentao do estado Principal aos estados Categorias ou Buscas, a probabilidade
desses estados gerarem venda a mesma. No entanto, para a definio do critrio de descarte,
foi considerado que os clientes nos estados Categorias ou Buscas esto um passo a frente dos
clientes que esto no estado Principal no processo de compra. Dessa forma, ao atingir 95% do
tamanho das filas dos servidores, o sistema inicia o processo de descarte de requisies do
tipo Principal apenas. Se esse procedimento no for suficiente para conter a sobrecarga do
81
sistema, ao atingir 100% do tamanho limite para as filas, o sistema descarta as requisies
sem levar em considerao o tipo.
Conforme informaes da Tabela 6.10, a insero do mecanismo de admisso seletiva no
SWDS mostrou-se promissor. O tempo mdio de resposta e o ndice de Rejeio variaram
muito pouco em relao ao mecanismo de CA por tamanho de fila comum. Entretanto, houve
uma melhora expressiva do ndice de Eficincia, que evoluiu de 0,006% para 0,158%. Uma
melhora de 0,152 pp. Por outro lado, houve uma sensvel queda no throughput, gerando uma
diminuio de 4,6% na quantidade de requisies atendidas pelo SWDS. Isso ocorreu dada a
nova distribuio de requisies atendidas pelo sistema. So atendidas mais requisies com
maior custo de processamento, como dos tipos Buscas e Detalhes.
IC (95%)
0,36
Throughput (req/s)
122,72
IC (95%)
0,05
IC (95%)
0,00
Chegadas (n)
96.855,20
44.686,00
44.720,40
18.262,80
1.430,80
458,40
411,00
362,80
IC (95%)
361,02
188,24
113,24
65,06
74,58
25,29
19,69
22,03
Admisses (n)
7.481,60
44.686,00
44.720,40
18.262,80
1.430,80
458,40
411,00
362,80
IC (95%)
46,06
188,24
113,24
65,06
74,58
25,29
19,69
22,03
Admisses (%)
7,72
100,00
100,00
100,00
100,00
100,00
100,00
100,00
207.187,40
343,12
117.813,80
51,99
56,86
Trminos (n)
7.292,20
44.869,20
44.943,40
18.188,60
1.369,60
434,20
384,40
326,60
117.808,20
IC (95%)
40,53
234,97
127,92
33,42
64,55
22,46
18,84
19,66
45,73
Trminos (%)
Tempo Med Resp (s)
97,47
79,39
100,41
79,45
100,50
79,48
99,59
79,46
95,72
79,38
94,72
79,35
93,53
79,41
90,02
79,40
100,00
0,158%
79,46
Rejeio
(U - A) / U
IC (95%)
0,03
0,03
0,03
0,03
0,03
0,09
0,03
0,06
0,03
43,14%
82
Para conter a sobrecarga, o sistema precisou descartar apenas requisies do tipo Principal.
Foram admitidas 7,72% das sesses que solicitaram atendimento ao servidor. No entanto, no
foi explorado todo o potencial de venda das sesses aceitas, pois no so atendidas 100% das
requisies subseqentes (que possuem maiores probabilidades de gerar venda).
Apesar de funcionarem de maneiras diferentes, h uma grande semelhana entre os
resultados obtidos com a insero do mecanismo de admisso seletiva e os resultados obtidos
com a insero do algoritmo WFQ. Isso ocorre dado que os dois mtodos possuem o mesmo
objetivo: garantir que todas as sesses iniciadas sejam atendidas at o final pelo sistema. O
WFQ busca seu objetivo alterando o funcionamento das filas dos servidores, priorizando ou
penalizando requisies, enquanto que o mecanismo de admisso seletiva opera no mdulo
CA, aceitando ou rejeitando as requisies que chegam ao sistema.
83
A = Principal
B = Categorias
C = Buscas
D = Detalhes
E = Login
F = Entrega
G = Pagamento
H = Confirmao
Probabilidades
de venda
5,7%
5,7%
5,7%
7,4%
35,7%
90,3%
95%
100%
Pesos
1,00
1,05
1,05
1,10
1,15
1,20
1,25
1,30
algoritmo RR.
IC (95%)
0,28
Throughput (req/s)
122,82
IC (95%)
0,10
IC (95%)
0,00
Chegadas (n)
96.949,60
44.662,20
44.749,20
18.211,60
1.422,20
473,20
450,40
423,60
IC (95%)
269,47
111,59
257,62
167,98
39,81
32,07
32,30
25,15
Admisses (n)
7.509,60
44.662,20
44.749,20
18.211,60
1.422,20
473,20
450,40
423,60
IC (95%)
41,19
111,59
257,62
167,98
39,81
32,07
32,30
25,15
Admisses (%)
7,75
100,00
100,00
100,00
100,00
100,00
100,00
100,00
207.342,00
266,58
117.902,00
93,91
56,86
Trminos (n)
7.525,60
44.654,40
44.740,40
18.208,80
1.424,80
474,20
450,40
424,20
117.902,80
IC (95%)
41,80
110,48
258,43
169,84
38,21
32,69
32,30
24,43
92,49
Trminos (%)
Tempo Med Resp (s)
100,21
161,58
99,98
77,99
99,98
77,35
99,98
60,73
100,18
43,62
100,21
26,11
100,00
6,56
100,14
4,14
100,00
0,205%
79,25
Rejeio
(U - A) / U
IC (95%)
2,64
0,79
0,86
1,13
5,66
9,68
4,36
3,21
0,07
43,14%
1000
900
800
700
600
500
400
300
200
100
0
240
340
440
540
640
740
840
940
1040
1140
1240
Principal
Categorias
Buscas
Detalhes
Login
Entrega
Pagamento
Confirmao
Figura 6.4: Algoritmo WFQ com CA por tamanho de fila e admisso seletiva
Conforme dados apresentados na Tabela 6.13, o tempo mdio de resposta foi reduzido
significativamente para 23,42s, enquanto que os demais indicadores permaneceram
praticamente inalterados.
86
IC (95%)
0,26
Throughput (req/s)
122,88
IC (95%)
0,11
IC (95%)
0,00
Chegadas (n)
97.071,00
44.681,40
44.644,80
18.189,60
1.462,60
481,60
459,40
435,40
IC (95%)
166,64
129,04
276,22
137,34
70,04
31,20
35,94
40,79
Admisses (n)
7.609,60
44.681,40
44.644,80
18.189,60
1.462,60
481,60
459,40
435,40
IC (95%)
68,25
129,04
276,22
137,34
70,04
31,20
35,94
40,79
Admisses (%)
7,84
100,00
100,00
100,00
100,00
100,00
100,00
100,00
207.425,80
248,61
117.964,40
100,71
56,87
Trminos (n)
7.618,60
44.676,60
44.640,00
18.187,00
1.464,20
484,20
460,20
435,80
117.966,60
0,210%
IC (95%)
66,83
128,02
278,26
137,65
69,01
33,03
38,92
41,06
106,74
Trminos (%)
Tempo Med Resp (s)
100,12
34,83
99,99
23,92
99,99
23,62
99,99
18,86
100,11
13,35
100,54
12,54
100,17
11,18
100,09
4,56
100,00
23,42
Rejeio
(U - A) / U
IC (95%)
2,78
2,20
2,58
10,66
9,25
8,78
8,57
5,25
0,02
43,13%
87
7
Concluses
obtidos mostram que a explorao das caractersticas das requisies web, alm de ser
fundamental para um bom entendimento do comportamento do servidor, possibilita a
melhoria de desempenho do sistema.
90
decisrio.
A seguir, apresentada uma tabela que sintetiza os principais resultados obtidos com a
insero dos mecanismos de diferenciao de servios no modelo SWDS.
Configurao
Chegadas (n)
Admisses (n)
ndice de
Rejeio
Trminos (n)
Vendas
Concludas (n)
ndice de
Eficincia
Tempo Med
Resposta (s)
RR
215.851,40
215.851,40
0,00%
123.098,60
19,20
0,009%
305,90
WFQ
(max. atendimentos)
227.362,80
227.362,80
0,00%
134.178,80
0,00
0,000%
109,89
WFQ
(max. vendas)
207.556,20
207.556,20
0,00%
117.897,20
329,00
0,159%
84,11
RR - CA Fila
216.391,40
123.471,60
42,94%
123.470,80
12,00
0,006%
79,79
RR - CA Seletivo
207.187,40
117.813,80
43,14%
117.808,20
326,60
0,158%
79,46
WFQ - CA Seletivo
207.342,00
117.902,00
43,14%
117.902,80
424,20
0,205%
79,25
WFQ - CA Seletivo
( fila reduzida )
207.425,80
117.964,40
43,13%
117.966,60
435,80
0,210%
23,42
Na Tabela 7.1, foram destacados em cor verde os resultados tidos como melhores casos e
em vermelho os piores casos para diversos critrios de comparao. A seguir, seguem
algumas explicaes para os resultados em realce:
91
92
Tempo mdio de resposta: o pior caso verificou-se com o algoritmo RR, quando no
foi utilizado nenhum mecanismo de controle de admisso. Nessa configurao,
admitido o maior nmero de requisies com maior custo ao sistema, o que gera filas
maiores e, por conseguinte, maiores tempos de resposta. O melhor caso ocorreu quando
foi utilizado o algoritmo WFQ com controle de admisso seletivo e reduo do tamanho
da fila. Essa reduo a responsvel pela queda no tempo de resposta.
94
Referncias
Andreolini, M.; Casalicchio, E.; Colajanni, M.; Mambelli, M. (2004). A cluster-based web
system providing differentiated and guaranteed services. Cluster Computing, v.7, n.1, p.7
19.
Arlitt, M. (2000). Characterizing web user sessions. SIGMETRICS Perform. Eval. Rev., v.28,
n.2, p.5063.
Barbato, A. K.; Santana, R. H. C.; Traldi, O. A.; Santana, M. J.; Teixeira, M. A. M. (2005).
Avaliao de Polticas de Controle de Admisso para Servidores Web com Servios
Diferenciados. XIII Simpsio Internacional de Iniciao Cientfica da Universidade de
So Paulo (SIICUSP), So Carlos, Brasil.
Barbato, A. K. (2008). Polticas para servidores Web baseados em sesses visando qualidade
e diferenciao de servios. Dissertao de Mestrado, Instituto de Cincias Matemticas e
de Computao - Universidade de So Paulo.
Berners-Lee, T.; Fielding, R.; Frystyk, H. (1996). Hypertext Transfer Protocol - HTTP/1.0.
RFC 1945, IETF.
Blake, S.; Black, D.; Carlson, M.; Davies, E.; Wang, Z.; Weiss, W. (1998). An Anchitecture
for Dierentiated Services. RFC 2475, IETF.
Borenstein, N. (1993). MIME (Multipurpose Internet Mail Extensions) Part One: Mechanisms
for Specifying and Describing the Format of Internet Message Bodies. RFC 1521,IETF.
Braden, R.; Clark, D.; Shenker, S. (1994). Integrated Services in the Internet Architecture.
RFC 1633, IETF.
Braden, R.; Zhang, L.; Berson, S.; Herzog, S.; Jamin, S. (1997). Resource ReSerVation
Protocol (RSVP) - Version 1 Functional Specification. RFC 2205, IETF.
Cardellini, V.; Casalicchio, E.; Colajanni, M.; Mambelli, M. (2001). Web switch support for
differentiated services. SIGMETRICS Perform. Eval. Rev., v.29, n.2, p.1419.
Casalicchio, E.; Colajanni, M. (2001). A client-aware dispatching algorithm for web clusters
providing multiple services. In Proceedings of the 10th international Conference on World
Wide Web, p. 535{544, New York, NY. ACM Press.
Comer, D. E. (2000). Internetworking with TCP/IP: Principles, Protocols and Architecture.
Prentice Hall, 4. edio.
95
Coulouris, G.; Dollimore, J.; Kindberg, T. (2000). Distributed Systems: Concepts and Design.
Addison-Wesley, 3. edio.
E-Bit (2007). Informaes do Comrcio Eletrnico. Web Shoppers, 17. edio.
Estrella, J. C.; Teixeira, M. A. M.; Santana, M. J.; Santana, R. H. C.; Bruschi, S. M. (2006).
Negotiation mechanisms on application level: A new approach to improve quality od
service in web servers. WCCIA The 2nd International Workshop on Colaborative
Computing, Integration and Assurance, p. 255-259. IEEE Proceedings.
Ferrari, D.; Serazzi, G.; Zeigner, A. (1983). Measurement and Tuning of Computer Systems.
Prentice Hall.
Fielding, R.; Gettys, J.; Mogul, J.; Frystyk, H.; Masinter, L.; Leach, P.; Berners-Lee, T.
(1999). Hypertext Transfer Protocol - HTTP/1.1. RFC 2616, IETF.
Fishwick, P. A. (2004). SimPackJ: Version 1.0. University of Florida. Disponvel em
http://www.cise.ufl.edu/~fishwick/simpackj
Francs, C. R. L. (1998). Stochastic Feature Charts: Uma Extenso Estocstica para os
Statecharts. Dissertao de Mestrado, Instituto de Cincias Matemticas e de Computao
- Universidade de So Paulo.
G. B. Dantzig, Maximization of a linear function subject to linear inequalities, in T. C.
Koopmans (ed.), Activity Analysis of Production and Allocation, John Wiley & Sons,
New York, 1951, pp. 339347.
Goldberg, A.; Buff, R.; Schmitt, A. (1998). Secure web server performance dramatically
improved by caching ssl session keys. Workshop on Internet Server Performance.
Hofmann, R.; Klar, R.; Mohr, B.; Quick, A.; Single, M. (1994). Distributed Performance
Monitoring: Methods, Tools and Applications, vol. 5, 6 ed. IEEE Transactions on Parallel
Distributed Systems.
Internet Traffic Archive (1998). World Cup web site access logs. Disponvel em
<http://ita.ee.lbl.gov/html/contrib/WorldCup.html>. Acesso em 14 nov. 2008.
Jain, R. (1991). The Art of Computer Systems Performance Analysis - Techniques for
Experimental Design, Measurement, Simulation and Modeling. Wiley - Interscience, New
York, NY.
Kant, K.; Mohapatra, P. (2000). Scalable Internet servers: Issues and challenges. Proceedings
of the Workshop on Performance and Architecture of Web Servers (PAWS). ACM
SIGMETRICS.
Kilkki, K. (1999). Differentiated Services for the Internet. Macmillan Publishing.
96
Kurose, J. F.; Ross, K. W. (2006). Rede de Computadores e a Internet: uma abordagem topdown. Addison Wesley, So Paulo.
Lee, S. C. M.; Lui, J. C. S.; Yau, D. K. Y. (2002). Admission control and dynamic adaptation
for a proportional-delay diffserv-enabled web server. Proceedings of the 2002 ACM
SIGMETRICS Conference on Measurement and Modeling of Computer Systems.
Leon, H. P.; Bissett, S.; Rollin, P.; Ressler, M. (2008). osCommerce - Open Source ECommerce Solutions. Disponvel em: <http://www.oscommerce.org>. Acesso em: 14 nov.
2008.
MacDougall, M. H. (1987). Simulating Computer Systems Techniques and Tools. The MIT
Press.
Magalhes, M. F.; Cardozo, E. (1999). Qualidade de servio na Internet. Relatrio tcnico,
UNICAMP/FEEC/DCA, Campinas, SP.
Menasc, D. A.; Almeida, V. A.; Fonseca, R.; Mendes, M. A. (1999). A methodology for
workload characterization of E-commerce sites. In Proceedings of the 1st ACM
Conference on Electronic Commerce. EC '99. ACM, New York, NY.
Microsoft Office Excel (2003). Microsoft Office Professional Edition. Microsoft Corporation.
MySQL (2008). Sun Microsystems. Disponvel em <http://www.mysql.com>. Acesso em 14
nov. 2008.
Orfali, R.; Harkey, D.; Edwards, J. (1999). Client/Server Survival Guide. John Wiley, 3.
edio.
Postel, J. (1980). User Datagram Protocol. RFC 768, IETF.
Postel, J. (1981a). Internet Control Message Protocol. RFC 792, IETF.
Postel, J. (1981b). Internet Protocol. RFC 791, IETF.
Postel, J. (1981c). Transmission Control Protocol. RFC 793, IETF.
Sabo, C. P. (2006). Avaliao de desempenho com algoritmos de escalonamento em clusters
de servidores Web. Dissertao de Mestrado, Instituto de Cincias Matemticas e de
Computao - Universidade de So Paulo.
Santana, M. J. (1990a). Advanced Filestore Architeture for a Multiple-Lan Distributed
Computing System. Phd thesis, University of Southamptom.
Santana, R. H. C. (1990b). Performance Evaluation of Lan-Based File Server. Phd thesis,
97
University of Southamptom.
Santana, R. H. C.; Santana, M. J.; Francs, C. R. L.; ORLANDI, R. C. G. S. (1997). Tool and
Methodologies for Performance Evaluation of Distributed Computing System - A
Comparison Study. In: The proceedings of the 1997, Portland, Oregon, USA.
Soares, L. F. G. (1990). Modelagem e Simulao Discreta de Sistemas. So Paulo: VII Escola
de Computao.
SPECweb2005 (2005). SPECweb2005 E-Commerce Workload Design Document. Disponvel
em: <http://www.spec.org/web2005>. Acesso em 14 nov. 2008.
Stardust (1999a). White Paper QoS protocols & architectures. Disponvel em http:
//www.qosforum.com
Stardust (1999b). White Paper
http://www.qosforum.com
The
need
for
QoS.
Disponvel
em
em
98
W3C (2000). XHTML 1.0 The Extensible HyperText Markup Language. Disponvel em
<http://www.w3c.org/TR/html>. Acesso em 14 nov. 2008.
Wei, Y.; Lin, C.; Ren, F.; Dutkiewicz, E.; Raad, R. (2003). Session based differentiated
quality of service admission control for web servers. ICCNMC 03: Proceedings of the
2003 International Conference on Computer Networks and Mobile Computing, p. 112.
IEEE Computer Society.
Xiao, X.; Ni, L. M. (1999). Internet QoS: a big picture. IEEE Network.
Yeager, N. J.; McGrath, R. E. (1996). Web Server Technology: the Advanced Guide for
World Wide Web Information Providers. Morgan Kaufmann.
Zhao, W.; Olshefski, D.; Schulzrinne, H. (1999). Internet quality of service: an overview.
IEEE Network.
99