Dentre os dois recursos abordados neste capítulo, um (largura de banda) é, frequentemente, de difícil compreensão para administradores de sistemas, enquanto o outro (poder de processamento) é um conceito geralmente fácil de entender.
Aparentemente, estes dois recursos não tem nenhuma relação próxima — por que juntá-los?
A razão para abordar ambos recursos conjuntamente é que os dois são baseados no hardware diretamente ligado à habilidade do computador em mover e processar dados. Sendo assim, suas funções são frequentemente relacionadas.
Basicamente, largura de banda é a capacidade de transferência de dados — em outras palavras, a quantidade de dados que pode ser movida de um ponto a outro num determinado período de tempo. Ter comunicação ponto-a-ponto implica em duas coisas:
Um conjunto de condutores elétricos usado para possiblitar a comunicação de nível baixo
Um protocolo para facilitar a comunicação de dados eficiente e confiável
Há dois tipos de componentes de sistema que atendem estes requisitos:
Canais (buses)
Centrais de Dados (Datapaths)
As seções a seguir exploram cada um em detalhes.
Conforme explanado anteriormente, os canais possibilitam a comunicação ponto-a-ponto e utilizam alguma espécie de protocolo para garantir que toda a comunicação ocorra de forma controlada. No entanto, os canais têm outras características distintas:
Características elétricas padronizadas (tais como número de condutores, níveis de voltagem, velocidades de sinalização, etc.)
Características mecânicas padronizadas (tais como tipo de conector, tamanho da placa, aparência física, etc.)
Protocolo padronizado
A palavra "padronizado" é importante porque os canais são a principal forma de conexão entre diferentes componentes do sistema.
Em muitos casos, os canais (buses) permitem interconectar hardware produzido por diversos fabricantes; sem a padronização, isto não seria possível. No entanto, mesmo nas situações onde um canal é de propriedade de um fabricante, a padronização possibilita que este fabricante implemente outros componentes facilmente, usando uma interface comum — o próprio canal.
Não importa o local do sistema em questão; sempre há canais. Aqui estão alguns dos canais mais comuns:
Canais de armazenamento em massa (ATA e SCSI)
Redes[1] (Ethernet e Token Ring)
Canais de memória (PC133 e Rambus®)
Canais de expansão (PCI, ISA, USB)
As centrais de dados (datapaths) podem ser mais difíceis de identificar, mas, assim como os canais, elas estão em todo lugar. Como os canais, elas também possibilitam a comunicação ponto-a-ponto. Entretanto, ao contrário dos canais, as centrais de dados:
Usam um protocolo mais simples (se houver)
Têm pouca (ou nenhuma) padronização mecânica
A razão destas diferenças é que as centrais de dados (datapaths) normalmente fazem parte de algum componente do sistema e não são usadas para facilitar a interconexão improvisada de diferentes componentes. Como tais, as centrais de dados são altamente otimizadas para uma situação específica, na qual a velocidade e o baixo custo têm prioridade sobre a lentidão e flexibilidade de componentes mais caros.
Os problemas relacionados à largura de banda podem ocorrer de duas maneiras (para ambos, canais ou centrais de dados):
O canal ou central de dados pode representar um recurso compartilhado. Neste caso, os altos níveis de contenção do canal reduzem a largura de banda efetivamente disponível para todos os dispositivos no canal.
Um canal SCSI com diversos drives de disco altamente ativos seria um bom exemplo disto. Os drives de disco altamente ativos saturam o canal SCSI, deixando pouca banda disponível para qualquer outro dispositivo no mesmo canal. O resultado final é que todas as I/O de qualquer dispositivo neste canal são lentas, mesmo que cada dispositivo no canal não esteja sobrecarregado.
O canal ou central de dados (datapath) pode ser um recurso dedicado com um número fixo de dispositivos anexos. Neste caso, as características elétricas do canal (e até certo ponto, a natureza do protocolo utilizado) limitam a banda disponível. Este caso geralmente ocorre mais frequentemente com centrais de dados que com canais. Esta é uma das razões pelas quais os adaptadores gráficos tendem a operar mais lentamente com definição e resolução de cores mais altas — para cada recarregamento da tela (refresh), há mais dados a serem passados através da central de dados conectando a memória de vídeo e o processador gráfico.
Felizmente, os problemas relacionados à largura de banda podem ser solucionados. Na realidade, há diversas táticas para isso:
Distribuir a carga
Reduzir a carga
Aumentar a capacidade
As seções seguinites exploram cada uma das táticas detalhadamente.
A primeira tática é distribuir a atividade do canal de forma mais balanceada. Em outras palavras, se um canal está sobrecarregado e um outro está ocioso, a situação pode ser melhorada ao mover parte da carga para o canal ocioso.
Como administrador de sistemas, esta é a primeira tática a considerar, já que há canais adicionais frequentemente presentes em seu sistema. Por exemplo: a maioria dos PCs incluem ao menos dois canais ATA. Se você tiver dois drives de disco ATA e dois canais ATA, por que os dois drives devem estar no mesmo canal?
Mesmo se a configuração de seu sistema não incluir canais adicionais, distribuir a carga ainda é uma tática razoável. Os custos de hardware para isso são menores que os custos de uma substituição de um canal existente por hardware de capacidade maior.
À primeira vista, reduzir e distribuir a carga parecem ser dois lados da mesma moeda. Afinal de contas, quando alguém distribui a carga, age para a redução da mesma (ao menos no canal sobrecarregado), certo?
Apesar deste ponto de vista ser correto, não é o mesmo que reduzir a carga globalmente. A questão aqui é determinar se há algum aspecto da carga do sistema que esteja causando a sobrecarga do canal específico. Por exemplo: uma rede está altamente carregada devido a atividades desnecessárias? Talvez, um pequeno arquivo temporário seja o recipiente de ações de leitura/gravação I/O pesadas. Se este arquivo temporário reside num servidor de arquivos em rede, uma grande quantidade de tráfego de rede pode ser eliminada ao trabalhar com o arquivo localmente.
A solução óbvia para banda insuficiente é aumentá-la de alguma maneira. No entanto, esta é uma alterantiva cara. Considere, por exemplo, um controlador SCSI e seu canal sobrecarregado. Para aumentar sua banda, o controlador SCSI (e provavelmente todos os dispositivos anexos) precisará ser trocado por hardware mais rápido. Se o controlador SCSI for uma placa separada, este será um processo relativamente simples, mas se o controlador SCSI for parte da placa-mãe do sistema, será mais difícil justificar a economia desta troca.
Todos os administradores de sistemas devem estar cientes da largura de banda (bandwidth) e de como a configuração e o uso do sistema impactam na banda disponível. Infelizmente, nem sempre é aparente o que é um problema relacionado à largura de banda e o que não é. Às vezes, o problema não é o canal, mas um dos componentes anexos a este.
Por exemplo: considere um adaptador SCSI conectado a um canal PCI. Se há problemas de desempenho com o disco I/O SCSI, pode ser resultado de um adaptador SCSI com baixo desempenho, mesmo que os canais SCSI e PCI não estejam próximos de suas capacidades de largura de banda.
| [1] | Ao invés de um canal intra-sistema, as redes podem ser encaradas como um canal inter-sistema. |