34
Software de Rede Willamys Araújo

Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Embed Size (px)

Citation preview

Page 1: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Software de Rede

Willamys Araújo

Page 2: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Tópicos da Aula de hoje

• Hierarquias de protocolos (camadas)• Questões de projeto relacionadas às camadas• Serviços oferecidos por camadas• Primitivas de Serviços• Relacionamento entre serviços e protocolos

Page 3: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Software de Rede

• Nas primeiras redes de computadores os aspectos relacionados ao hardware foram colocados como prioridade e os aspectos de software em segundo plano.

• No entanto logo foi percebida a fundamental importância dos mecanismos de software de uma rede, e, em função disto, os softwares de rede são altamente estruturados.

Page 4: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Software de Rede

• Os conceitos relacionados a esta estruturação são de vital importância para a compreensão de todos os aspectos relacionados à arquitetura de redes como um todo.

Page 5: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Hierarquia de Protocolos

Page 6: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Hierarquia de Protocolos

• Em redes de computadores, um protocolo é um acordo entre as partes que se comunicam, estabelecendo como se dará a comunicação.

• Para reduzir a complexidade do projeto, a maioria das redes é organizada como uma pilha de camadas ou níveis, colocadas umas sobre as outras.

Page 7: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Hierarquia de Protocolos

• O numero de camadas, o nome, o conteúdo e a função de cada camada diferem de uma rede para outra.

• No entanto, em todas as redes o objetivo de cada camada e oferecer determinados serviços as camadas superiores, isolando essas camadas dos detalhes de implementação desses recursos.

Page 8: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Hierarquia de Protocolos

• A camada n de uma máquina se comunica com a camada n de outra.

• As regras e convenções usadas nesse diálogo são conhecidas como protocolo de camada n.

• Na realidade, os dados não são transferidos diretamente da camada n de uma máquina para a camada n de outra máquina.

Page 9: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Hierarquia de Protocolos

Page 10: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Hierarquia de Protocolos

• Entre cada par de camadas adjacentes existe uma interface.

• Esta define as operações e os serviços que a camada inferior tem a oferecer à camada que se encontra acima dela.

• Isso alem de reduzir o volume de informações que deve ser passado de uma camada para outra,

• Simplificam a substituição da implementação de uma camada por uma implementação completamente diferente.

Page 11: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Hierarquia de Protocolos

• Um conjunto de camadas e protocolos é chamado de arquitetura de rede.

• Uma arquitetura de rede deve conter informações suficientes para permitir que um programador desenvolva software/hardware de cada camada.

• Uma lista de protocolos usados por um determinado sistema é chamado pilha de protocolos.

Page 12: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Hierarquia de Protocolos

Page 13: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Hierarquia de Protocolos

• Vejamos um exemplo mais técnico:– Uma mensagem M é produzida por um processo que

funciona na camada 5;– A camada 4 coloca um cabeçalho no início da

mensagem para identificá-la;– A camada 3, por limitações no tamanho das

mensagens, divide a mensagem M em duas partes: M1 e M2.

– A camada 2 então adiciona não só um cabeçalho no começo de cada fragmento, mas também no fim.

– Por fim a camada transmite fisicamente a mensagem

Page 14: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Hierarquia de Protocolos

Page 15: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Questões de projetos relacionadas às camadas

Page 16: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Questões de projetos relacionadas às camadas

• Todas as camadas precisam de um mecanismo para identificar os transmissores e os receptores

• Como em geral uma rede tem muitos computadores, e alguns deles tem vários processos, é necessário um meio para que um processo de uma maquina especifique com quem ela deseja se comunicar.

• Isso é feito através do endereçamento.

Page 17: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Questões de projetos relacionadas às camadas

• Transferência de dados– Em alguns sistemas, os dados são transferidos em

apenas um sentido; – em outros, os dados trafegam em ambos os

sentidos.– O protocolo também deve definir a quantos canais

lógicos corresponde a conexão e quais são suas prioridades.

Page 18: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Questões de projetos relacionadas às camadas

• Controle de Erros– é uma questão importante, pois os circuitos de

comunicação física não são perfeitos.– o receptor deve ter algum meio para informar ao

transmissor quais mensagens foram recebidas corretamente e quais não foram.

Page 19: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Questões de projetos relacionadas às camadas

• Controle de fluxo– Nem todos os canais de comunicação preservam a

ordem das mensagens enviadas a eles.– Uma questão que afeta cada nível é como impedir

que um transmissor rápido envie uma quantidade excessiva de dados a um receptor mais lento

Page 20: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Questões de projetos relacionadas às camadas

• Mensagens arbitrariamente longas– Nos diversos níveis existe a falta de habilidade de

todos os processos para aceitarem essas mensagens

– Essa propriedade nos leva ao uso de mecanismos para desmontar, transmitir e remontar mensagens

– Uma questão relacionada é o que fazer quando os processos insistem em transmitir dados em unidades tão pequenas que o envio de cada uma separadamente se torna ineficiente.

Page 21: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Questões de projetos relacionadas às camadas

• Roteamento– Quando houver vários caminhos entre a origem e

o destino, uma rota deverá ser escolhida.

Page 22: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Questões de projetos relacionadas às camadas

• Multiplexação e Demultiplexação– Quando for inconveniente configurar uma

conexão isolada para cada par de processos de comunicação, a camada subjacente pode decidir usar a mesma conexão para diversas conversações não relacionadas entre si.

Page 23: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Serviços oferecidos por camadas

Page 24: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Serviços oferecidos por camadas

• As camadas podem oferecer dois tipos diferentes de serviços às camadas situadas acima delas:

– Serviços orientado a conexões– Serviços sem conexões

Page 25: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Serviços oferecidos por camadas

• Serviços orientados a conexões– Se baseiam no sistema telefônico.• Para falar com alguém, você tira o fone do gancho,

disca o numero, fala e, em seguida, desliga.

– Na maioria dos caos a ordem é preservada; – os bytes chegam na ordem em que foram

enviados.

Page 26: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Serviços oferecidos por camadas

• Serviços sem conexão– Se baseiam no sistema postal.– Cada mensagem carrega o endereço de destino

completo.– e cada uma delas e roteada (encaminhada)

através do sistema, independentemente de todas as outras.

– Também chamado de serviço de datagramas.

Page 27: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Serviços oferecidos por camadas

Page 28: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Primitivas de Serviço

Page 29: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Primitivas de Serviço

• Um serviço é especificado formalmente por um conjunto de primitivas (operações) disponíveis para que um processo do usuário acesse o serviço.

• Essas primitivas informam ao serviço que ele deve executar alguma ação ou relatar uma ação executada por uma entidade par.

Page 30: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

Primitivas de Serviço

Page 31: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

O Relacionamento entre serviços e protocolos

Page 32: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

O Relacionamento entre serviços e protocolos

• Serviços e protocolos são conceitos diferentes, embora sejam confundidos com freqüência.

• Serviço – é um conjunto de primitivas (operações) que uma camada

oferece à camada situada acima dela.– define as operações que a camada esta preparada para

executar em nome de seus usuários, mas não informa absolutamente nada sobre como essas operações são implementadas.

– se relaciona a uma interface entre duas camadas, sendo a camada inferior o fornecedor do serviço e a camada superior o usuário do serviço.

Page 33: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

O Relacionamento entre serviços e protocolos

• Protocolo– é um conjunto de regras que controla o formato e

o significado dos pacotes ou mensagens que são trocadas pelas entidades pares contidas em uma camada.

Page 34: Software de Rede Willamys Araújo. Tópicos da Aula de hoje Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços oferecidos

O Relacionamento entre serviços e protocolos Os serviços estão

relacionados as interfaces entre camadas.

Os protocolos se relacionam aos pacotes enviados entre entidades paresde maquinas diferentes.