Ir para o conteúdo

Redes de Computadores

Redes de computadores podem ter diversas topologias e características, por exemplo:

Ponto-a-ponto Barramento Compartilhado Token Ring
Colisões Sem Com Sem
Roteamento Trivial Complexo Simples
# Conexões Exponencial Linear Linear

Nas redes atuais, pode se dizer que o meio mais utilizado é provido pela arquitetura Ethernet, que trata da comunicação entre nós usando um barramento compartilhado, mesmo que este esteja por vezes escondido. Sobre este meio, são usados protocolos para, por exemplo,

  • Controle de acesso ao meio
  • Transmissão de mensagens
  • Evitar e tratar colisões

As redes Ethernet, contudo, cobrem pequenas áreas e, para se ter conversas mais "abrangentes", é necessário que se conecte diversas destas redes. A conversa então é feita por meio de intermediários, gateways que conectam duas ou mais redes, permitindo que mensagens de um interlocutor sejam roteadas para o outro.

Gateway

Drawing.

Um exemplo interessante das questões ligadas à manutenção da conversa entre dois pontos é a decisão sobre o uso de comutação de pacotes (packet switching) ou de circuitos (circuit switching).

Comutação de pacotes Comutação de circuito
Cada pacote viaja independentemente Todo pacote viaja por caminho predefinido
Latência variável Latência "constante"
Banda não reservada Banda reservada
Banda não desperdiçada Banda desperdiçada

Outro fator importante é a unidade máxima de transmissão (maximum transmission unit, MTU), o tamanho máximo de um pacote em determinada rede. É necessário entender que qualquer quantidade de dados maior que o MTU precisará ser dividida em múltiplos pacotes. Também é importante perceber que redes são heterogêneas, e que o vários segmentos no caminho entre origem e destino podem ter MTU diferentes, levando à fragmentação de pacotes em trânsito e, possivelmente, entrega desordenada dos mesmos.

Fragmentação

Drawing.

Finalmente, há uma questão importante relativa à confiabilidade na transmissão dos elementos da conversa, isto é, se a rede deve garantir ou não que algo "dito" por um interlocutor deve garantidamente ser "ouvido" pelo outro, ou se a mensagem pode ser perdida no meio.

Felizmente boa parte da complexidade da resolução destas questões é abstraída do desenvolvedor dos sistemas distribuídos, isto é, você, cabendo-lhe apenas a decisão de qual protocolo utilizar. Nas redes atuais, a conversa entre componentes será feita, em algum nível, por meio dos protocolos da arquitetura Internet.