Mudanças entre as edições de "Projeto POO - 2012.2"
Linha 2: | Linha 2: | ||
= Simulador de redes orientado a objetos = | = Simulador de redes orientado a objetos = | ||
+ | |||
+ | Nas redes de computadores as informações geradas por uma máquina origem trafegam por diversos dispositivos, como concentradores (hubs), comutadores (switchs) e roteadores, até chegar ao destino. Nessas redes os dados a serem transmitidos são divididos em pacotes e cada pacote é então enviado individualmente pela rede. Os pacotes possuem além da informação propriamente dita, um cabeçalho que contém informações como origem, destino, tamanho do pacote, etc. | ||
+ | |||
+ | O objetivo deste trabalho é desenvolver um simulador de rede que ao receber uma lista de pacotes a serem transmitidos, permita encaminhar estes pacotes até o destino. Cada dispositivo na rede deve então contabilizar o total de pacotes que processou e o total de pacotes que descartou. O simulador deve ainda fornecer uma interface para permitir ao usuário montar uma topologia de rede composta por um ou mais dos seguintes dispositivos: Computador, Concentrador e Comutador. | ||
+ | |||
+ | == Descrição e funcionamento de cada dispositivo == | ||
+ | |||
+ | * Computador | ||
+ | ** Quantidade de portas: 1 | ||
+ | ** Comportamento ao processar um pacote da sua fila: (1) Verifica se este é o emissor do pacote, se sim então encaminha o pacote para o dispositivo que está conectado em sua porta;(2) Verifica se este é o destinatário do pacote, se positivo contabiliza como pacote processado, senão descarta o pacote e contabiliza o descarte | ||
+ | * Concentrador | ||
+ | ** Quantidade de portas: 8 | ||
+ | ** Comportamento ao processar um pacote da sua fila: propaga o pacote para todos os dispositivos que estão conectados em suas portas, menos para a porta de onde recebeu o pacote. Ao propagar o pacote contabiliza-o como pacote processado | ||
+ | * Comutador | ||
+ | ** Quantidade de portas: 8 | ||
+ | ** Comportamento ao processar um pacote da sua fila: Verifica se o destinatário do pacote está conectado em uma de suas portas e se estiver então encaminha o pacote diretamente para o dispositivo. Caso não, propaga o pacote para todos os dispositivos que estão conectados em suas portas, menos para a porta de onde recebeu o pacote. Ao propagar o pacote contabiliza-o como pacote processado | ||
+ | |||
Edição das 23h14min de 26 de fevereiro de 2013
O projeto final da disciplina Programação Orientada a Objetos poderá ser desenvolvido em dupla e deverá ser apresentado em sala.
Simulador de redes orientado a objetos
Nas redes de computadores as informações geradas por uma máquina origem trafegam por diversos dispositivos, como concentradores (hubs), comutadores (switchs) e roteadores, até chegar ao destino. Nessas redes os dados a serem transmitidos são divididos em pacotes e cada pacote é então enviado individualmente pela rede. Os pacotes possuem além da informação propriamente dita, um cabeçalho que contém informações como origem, destino, tamanho do pacote, etc.
O objetivo deste trabalho é desenvolver um simulador de rede que ao receber uma lista de pacotes a serem transmitidos, permita encaminhar estes pacotes até o destino. Cada dispositivo na rede deve então contabilizar o total de pacotes que processou e o total de pacotes que descartou. O simulador deve ainda fornecer uma interface para permitir ao usuário montar uma topologia de rede composta por um ou mais dos seguintes dispositivos: Computador, Concentrador e Comutador.
Descrição e funcionamento de cada dispositivo
- Computador
- Quantidade de portas: 1
- Comportamento ao processar um pacote da sua fila: (1) Verifica se este é o emissor do pacote, se sim então encaminha o pacote para o dispositivo que está conectado em sua porta;(2) Verifica se este é o destinatário do pacote, se positivo contabiliza como pacote processado, senão descarta o pacote e contabiliza o descarte
- Concentrador
- Quantidade de portas: 8
- Comportamento ao processar um pacote da sua fila: propaga o pacote para todos os dispositivos que estão conectados em suas portas, menos para a porta de onde recebeu o pacote. Ao propagar o pacote contabiliza-o como pacote processado
- Comutador
- Quantidade de portas: 8
- Comportamento ao processar um pacote da sua fila: Verifica se o destinatário do pacote está conectado em uma de suas portas e se estiver então encaminha o pacote diretamente para o dispositivo. Caso não, propaga o pacote para todos os dispositivos que estão conectados em suas portas, menos para a porta de onde recebeu o pacote. Ao propagar o pacote contabiliza-o como pacote processado
Formato do arquivo texto para carregar a topologia da rede
As três primeiras linhas do arquivo fazem parte do cabeçalho. Ali deve-se indicar o total de computadores na primeira linha, precedido dos caracteres c:; o total de concentradores, precedido dos caracteres h: ; e o total de comutadores, precedido dos caracteres s:. A partir da quarta linha deve-se indicar as conexões entre os dispositivos. Esta deve ser feita informando as posições dos dispositivos com o caractere - entre eles.
Abaixo é apresentado um exemplo para o arquivo de topologia. Neste exemplo tem-se 2 computadores, 2 concentradores e 1 comutador. O computador 0 está conectado ao concentrador 2; o concentrador 2 está conectado ao comutador 4; e o computador 1 está conectado ao concentrador 2.
c:2 h:2 s:1 0-2 2-4 1-2
Observação: Ao processar o arquivo de topologia deve-se implementar uma validação do mesmo, pois o usuário pode ter criado um arquivo de topologia inválido. Por exemplo, o usuário pode não ter respeitado o formato explicitado acima; ou pode ter feito conexões inválidas entre dispositivos, como a conexão entre dois computadores, algo que não é permitido pela especificação do projeto.