INSTITUTO DE COMPUTAÇÃO UNIVERSIDADE ESTADUAL DE CAMPINAS

Tamanho: px
Começar a partir da página:

Download "INSTITUTO DE COMPUTAÇÃO UNIVERSIDADE ESTADUAL DE CAMPINAS"

Transcrição

1 INSTITUTO DE COMPUTAÇÃO UNIVERSIDADE ESTADUAL DE CAMPINAS Sub-Projeto 1: Multicast e Revisão Bibliográca E. B. Prata G. S. de Paula P. R. Costa R. Dominiquini Technical Report - IC Relatório Técnico March Março The contents of this report are the sole responsibility of the authors. O conteúdo do presente relatório é de única responsabilidade dos autores.

2 Sub-Projeto 1: Multicast e Revisão Bibliográfica Eduardo Jacob Prata Gustavo de Paula Paulo de Almeida Costa Rafael Baboni Dominiquini Resumo Neste artigo descrevemos diversos aspectos relativos ao multicast e broadcast, justificando o seu uso em sistemas distribuidos para evitar o uso de sistemas de nomes e redução de tráfego na rede. Além disso, descrevemos três artigos fundamentais na área de sistemas distribuídos que fazem uso de diretivas de multicast e que serão a base do desenvolvimento dos projetos desta disciplina. 1 Introdução Um método simples e mais eficiente para implementação de sistemas distribuídos em uma rede ethernet deve utilizar diretivas de multicast ou broadcast. Através do uso destas diretivas é possível alcançar todos os computadores ligados na rede local utilizando o envio de apenas uma mensagem ao invés de N mensagens na comunicação unicast. Além disso, o uso de broadcast facilita o problema da nomeação e localização de recursos no sistema, já que as entidades do sistema podem receber uma mensagem broadcast e então responder indicando sua presença e seus dados. Este artigo contém uma explicação concisa sobre multicast e broadcast, elucidando o seu funcionamento e o seu uso na Internet. Além disso, incluímos um resumo de três artigos fundamentais na área de sistemas distribuídos sobre os quais basearemos o desenvolvimento dos projetos da disciplina. 2 Multicast Nesta seção respondemos algumas questões relativas ao multicast e broadcast visando elucidar o que é como funciona este tipo de comunicação. E, por fim, fornecemos uma descrição sucinta sobre o estágio atual do multicast e broadcast no ambiente de internet. 2.1 Classes de endereços IP Os endereços IP foram originalmente repartidos em classes, de acordo com o número de bytes que identificam a rede e o número de bytes que identificam a máquina na rede. Nas próximas seções definimos cada uma das classes e mostramos ainda uma série de endereço Instituto de Computação, Universidade Estadual de Campinas, Campinas, SP. 1

3 2 Prata, De Paula, Costa e Dominiquini especiais. São ao todo 5 classes, porém, a classe E não é mostrada porque corresponde a uma faixa reservada a testes pela IETF (Internet Engineering Task Force) Classe A Num endereço IP de classe A, o primeiro byte representa a rede. O bit de sinal (o primeiro bit, da esquerda) tem valor zero, o que significa que há 27 ( à ) possibilidades de redes, quer dizer 128 possibilidades. Contudo, a rede 0 (bits que valem ) não existe e o número 127 é reservado para designar a sua máquina. Dentro da classe A, o intervalo é reservado para uso em redes locais, e pacotes com IPs neste intervalo não são roteados para a internet Classe B Num endereço IP de classe B, os dois primeiros bytes representam a rede. Os dois primeiros bits são 10, o que significa que há redes possíveis ( ao ). As redes disponíveis em classe B são por conseguinte as redes que vão de a Dentro da classe B, o intervalo é reservado para uso em redes locais, e pacotes com IPs neste intervalo não são roteados para a internet Classe C Num endereço IP de classe C, os três primeiros bytes representam a rede. Os três primeiros bits são 110, que significa que há redes possíveis. As redes disponíveis em classe C são por conseguinte as redes que vão de a Dentro da classe C, o intervalo é reservado para uso em redes locais, e pacotes com IPs neste intervalo não são roteados para a internet. Classe Início Fim Redes possíveis Máximo de computadores A B C Classe D Endereço IP de classe D são identificados pelos quatro primeiros bits, com valor Neste caso especial, o endereço IP não identifica uma rede/máquina, mas sim um grupo de multicast. Basta enviar um pacote para o IP escolhido, e todas as máquina do grupo receberão uma cópia do pacote (exceto por eventuais perdas de pacote), sendo que a transmissão destes é feita de forma eficiente através da coordenação semi-automática dos roteadores intermediários. A única diferença em relação a uma transmissão normal é que as máquinas destinatárias devem se juntar ao grupo desejado explicitamente, a fim de configurar os roteadores para retransmitir o pacote para todos membros do grupo. Essa configuração é feita através do

4 Multicast 3 protocolo IGMP, responsável por associar um endereço ao grupo desejado (join). Também é necessário renovar a associação periodicamente, caso contrário as configurações de roteamento são desfeitas Classes Especiais Além destas classes, existem outras faixas de endereço reservadas para classes especiais: Máscara de rede /8 Rede corrente /8 Rede Privada /8 Rede Pública /8 Reservado /8 Localhost /16 Reservado (IANA) /16 Zeroconf /12 Rede Privada /16 Reservado (IANA) /24 Documentação /24 IPv6 para IPv /16 Rede Privada /15 Teste de benchmark de redes /24 Reservado /4 Multicasts (antiga rede Classe D) /4 Reservado (antiga rede Classe E) Broadcast Atualmente, a separação entre rede e máquina não é feita apenas através das classes A, B e C, além do IP, usa-se uma máscara de rede escrita no mesmo formato do endereço IP. Ela possui 1 nos bits que identificam a rede e 0 nos bits que identificam a máquina. Alternativamente, a máscara também pode ser especificada apenas pelo número de bits que identificam a rede. Por exemplo, se temos o endereço , com máscara , os primeiros 24 bits do endereço identificam a rede ( ) e os 8 demais identificam a máquina. Também se escreve como / A relação entre o broadcast e o tráfego na Ethernet Ao se utilizar broadcast sobre Ethernet, apenas uma mensagem precisa ser enviada para que todas as máquinas que compartilham o meio possam recebê-la. Desta forma, uma mensagem endereçada apenas a uma máquina, causa o mesmo tráfego de rede que uma mensagem em broadcast. Caso a mensagem seja endereçada a mais máquinas, o trafego em unicast cresce linearmente, enquanto o tráfego em broadcast permanece constante. Portanto o uso de mensagens de broadcast não causa aumento do tráfego de rede como um todo. Na verdade, o trafego permanece constante ou diminui.

5 4 Prata, De Paula, Costa e Dominiquini Porém, devemos considerar o caso das redes ethernet comutadas, isto é, com meio físico não compartilhado, que é o caso mais comum atualmente. Nestas, uma mensagem em unicast congestiona apenas os segmentos de rede necessários para transportar o pacote ao seu destino. Já uma mensagem em broadcast irá congestionar todos os segmentos de rede. Para as máquinas de origem e destino do pacote, esse tráfego extra não faz diferença em relação a uma rede de meio compartilhado, pois os pacotes precisam trafegar o segmento de rede correspondente de qualquer maneira. Mas para as máquinas que não estão interessadas naqueles dados, o uso de broadcast congestiona desnecessáriamente os seus segmentos de rede. Portanto, em uma rede ethernet comutada, o uso de multicast irá diminuir o congestionamento para os computadores interessados na transmissão, mas irá congestionar os desnecessáriamente os computadores que não precisariam recebê-la. 2.3 Comunicação ponto-a-ponto na Ethernet PPPoE (Point-to-Point Protocol over Ethernet) é um protocolo de rede usado para encapsular quadros PPP (Point-to-Point Protocol) dentro de quadros Ethernet. Seu uso típico é nas conexões de um ou múltiplos usuários em uma rede LAN à Internet. Seu principal uso está relacionado à utilização de linhas DSL, onde o PPPoE encapsula os dados de um computador até a central telefônica. Derivado do PPP, permite acesso autenticado e transmissão de pacotes de diversos protocolos. Para a Internet, o PPP encapsula o protocolo TCP/IP. 2.4 Obtenção de endereço broadcast em UNIX O comando ifconfig deve ser utilizado para obter informações de rede. Entre outras informações, podemos ver se a interface de rede suporta envio de pacotes em broadcast pela presença da flag BROADCAST, e o endereço de broadcast da rede local pelo campo Bcast: $ ifconfig eth1 Link encap:ethernet HWaddr 00:1C:C0:1C:B1:F6 inet addr: Bcast: Mask: inet6 addr: fe80::21c:c0ff:fe1c:b1f6/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets: errors:0 dropped:2 overruns:0 frame:0 TX packets: errors:66873 dropped:0 overruns:0 carrier:66873 collisions:78219 txqueuelen:100 RX bytes: (126.1 MiB) TX bytes: (182.4 MiB) Memory:e e lo Link encap:local Loopback inet addr: Mask: inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:1511 errors:0 dropped:0 overruns:0 frame:0 TX packets:1511 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0

6 Multicast 5 RX bytes: (193.2 KiB) TX bytes: (193.2 KiB) Alternativamente, pode-se utilizar o endereço , que é um endereço especial para enviar broadcasts na rede local. 2.5 Broadcast nos laboratórios do IC Cada um dos laboratórios possui um endereço de rede distinto, e, consequentemente, um endereço de broadcast distinto. A sala 303 possui endereço /26, broadcast , a sala 304 possui endereço /26, broadcast e a rede onde está a máquina Xaveco possui endereço de rede /26, broadcast Para fazer os testes desenvolvemos uma classe java para o envio e recebimento das diretivas de Broadcast e Multicast, esta classe pode ser consultada no diretório do projeto. Como as redes e os endereços de broadcast são distintos, não foi possível enviar um pacote que fosse entregue em todas as salas. Mas foi possível enviar um pacote de broadcast de uma sala para outra, isto é, enviado da sala 303 para o endereço de broadcast da sala 304, e recebido com sucesso na outra sala. Dessa forma, se for necessário enviar um pacote para todas as máquinas de algumas salas, só será necessário enviar um pacote por sala utilizando broadcast, ao invés de um pacote por máquina, como seria necessário com Unicast. Tentamos contornar essa restrição utilizando endereços de multicast, mas estes não parecem funcionar dentro da rede do IC, os pacotes enviados são recebidos apenas pela máquina que os enviou. O mesmo código funciona em outras redes, portanto acreditamos que seja uma restrição de segurança do IC. Também tentamos enviar pacotes de broadcast a partir de computadores remotos, mas a configuração das redes do IC impediu o recebimento dos pacotes. 2.6 Multicast e Broadcast na Internet Abcdefghijklmnopqrstuvxwyz. 3 Revisão Bibliográfica 3.1 Time, clocks and the ordering of events in a distributed system. Leslie Lamport, 1978 Em seu artigo seminal, Lamport [3] define o conceito de relógios lógicos utilizados para sincronização de sistemas distribuídos. Neste artigo é mostrado um algoritmo distribuído para sincronizar um sistema de relógios lógicos que pode ser utilizado para gerar uma ordenação total de eventos. O uso da ordenação total é ilustrado com um método para resolver problemas de sincronização. O algoritmo é então especializado para sincronizar relógios físicos e se chega um limite da máxima assíncronia entre os relógios. A ordenação de eventos em sistemas distribuídos é um problema complicado, isto ocorre porque os computadores que formam o sistema não compartilham o mesmo relógio físico,

7 6 Prata, De Paula, Costa e Dominiquini às vezes se torna impossível dizer qual evento ocorreu antes do outro. A relação aconteceu antes é apenas uma ordenação parcial dos eventos. Esta relação pode ser definida sem o uso de relógios físicos. Os eventos dentro de um mesmo processo são totalmente ordenados a priori. A relação aconteceu antes ( ) pode ser definida pelas 3 regras a seguir: 1. Se (a) e (b) ocorrem no mesmo processo, e (a) ocorre antes de (b), então a b. 2. Se (a) é o envio de uma mensagem e (b) é seu recebimento, então a b. 3. Se a b e b c então a c. Dois eventos são ditos concorrentes se a b e b a são ambos falsos. A relação a b demonstra que a pode afetar b de maneira causal. Dois eventos são concorrentes se nenhum dos dois pode se afetar causalmente. Esta relação e suas definições permitem ordenar parcialmente os eventos de um sistema distribuído. Relógios lógicos são introduzidos para que se possa gerar uma ordenação total dos eventos. Um relógio lógico é definido como uma função monotonicamente crescente que atribui um valor numérico para cada evento no processo. O valor da função do relógio lógico é o tempo lógico concatenado com o número do processo. Podem ser implementados de maneira simples com contadores, porque tem um significado lógico e não físico. Para um sistema de relógios estar correto a seguinte relação deve valer: Relação de Relógio: Para quaisquer eventos a e b: Se a b então C(a) < C(b). Partindo da relação vemos que as duas condições devem valer: C1: Se a e b são processos em P i e a vem antes de b então C(a) < C(b). C2: Se a é o envio de uma mensagem por P i e b é o recebimento desta mensagem por P j então C(a) < C(b). Para garantir que a condição vale temos apenas que utilizar duas regras: 1. O processo P incrementa seu relógio a cada evento. Satisfaz C1. 2. A cada recebimento de uma mensagem de P i por P j contendo timestamp C i < a >, P j coloca seu relógio como sendo o máximo entre seu relógio atual e C i < a > e incrementa seu relógio. Satisfaz C2. Uma relação total dos eventos é obtida apenas utilizando a ordem com que eles ocorrem. A ordenação parcial é acrescida do poder dos relógios lógicos e das regras R1 e R2 além de utilizar o número do processo para desempate, de forma que nunca temos dois eventos simultâneos. Esta ordenação total não necessita ter uma relação direta com a ordem física de ocorrência dos eventos e pode mudar se o sistema de relógios for alterado, mas permanece consistente. O uso de sistemas de relógios lógicos para resolver problemas de sincronização em sistemas distribuídos é muito importante e é demonstrada por Lamport em seu artigo ao resolver o problema da exclusão mútua distribuída. O algoritmo trabalha com três condições:

8 Multicast 7 1. Um processo ao qual foi dado um recurso deve liberá-lo antes que o recurso possa ser dado a outro processo. 2. Diferentes pedidos de recurso devem ser dados na ordem em que foram pedidos. 3. Se cada processo ao qual é dado um recurso o libera, então cada pedido é eventualmente tratado. Estas condições caso respeitadas garantem safety e liveness para o algoritmo, ou seja, ele é seguro e, eventualmente, progride. Não é trivial resolver este problema de maneira distribuída, sem um gestor de recursos centralizado. Utilizando as regras R1 e R2 podemos estabelecer uma ordenação total entre os pedidos de recurso e o problema fica simples, basta fazer com que os processor fiquem sabendo sobre os pedidos uns dos outros. Assumimos que os canais de comunicação são FIFO e também que cada mensagem é recebida algum dia. Também assumimos que cada processo pode enviar mensagens diretamente para todos os outros processos, ou seja, o grafo de comunicação é completo. Cada processo mantém sua fila de requisições que não é vista pelos outros processos e que a fila contém inicialmente a mensagem T 0 : P 0 requests resource, onde P0 é o processo que ganhou o recurso inicialmente e T 0 é menor que o valor inicial de qualquer relógio. O algoritmo é definido por 5 regras básicas descritas em pseudo-código abaixo: /* Algoritmo de Exclusao Mutua de Lamport. * O codigo e exatamente o mesmo para todos os processos. /* Implementa as diretivas de broadcast para envio de mensagens e as diretivas * de unicast para envio do ack. * Funcoes: sendmessage e sendackunicast. import BcastService; /* Implementa a fila de mensagens, ordena do mais antigo para o mais recente, * assim os pedidos sao respondidos na ordem com que chegaram. * Funcoes: put e removeall. import MessageQueue; /* Implementa o relogio logico de Lamport e todas as funcoes de atualizacao * e incremento. * Funcoes: tickclock e updateclock. import Clock; class LamportMutex { ProcessNumber pid; MessageQueue queue; BcastService bcast; Clock clock;

9 8 Prata, De Paula, Costa e Dominiquini LamportMutex(ProcessNumber pid) { bcast = new BcastService(); queue = new MessageQueue(); clock = new Clock(); this.pid = pid; workflow(); void workflow() { /* Enquanto o processo estiver em execucao ouve por novos * pedidos de acesso e mensagens enviadas por outros processos. * Chama as demais funcoes para tratar o recebimento e envio de mensagens. Message createmessage(type t) { /* Cria mensagem com tipo pedido, numero do processo * e anexa timestamp Tm:Pi /* REGRA 1 void requestresource() { /* Avanca o relogio, cria uma mensagem de pedido com timestamp igual ao relogio atual * e entao a envia por broadcast para todos os outros processos e apenas no fim * insere na fila de mensagens. tickclock(); Message msg = createmessage(request); bcast.sendmessage(msg); queue.put(msg); /* REGRA 2 void receiverequestmsg(message msg) { /* Atualiza seu relogio, coloca a mensagem em sua fila de mensagens e envia * um ack para o processo que enviou o pedido. Ao fim verifica se pode entrar updateclock(msg.timestamp); queue.put(msg); bcast.sendackunicast(msg.process, msg); /* REGRA 3 void releaseresource() { /* Saida da regiao critica, atualiza seu relogio, remove todos os pedidos com seu pid

10 Multicast 9 * que estejam na fila e envia uma mensagem de release para os outros processos. tickclock(); queue.removeall(pid); msg = createmessage(release); bcast.sendmessage(msg); /* REGRA 4 void receivereleasemsg(message msg) { /* Atualiza o relogio e entao remove as mensagens de pedido de recurso do processo * que enviou o release. updateclock(msg.timestamp); queue.removeall(msg.process); /* REGRA 5 boolean checkresource() { /* Verifica se o seu pedido e o mais antigo e verifica se recebeu * pelo menos uma mensagem de cada outro processo com timestamp mais recente * que o seu. boolean canaccess = true; if (queue.head.process == pid) { for each (Process p) { if (! queue.containsmsg(p)) canaccess = false; else { canaccess = false; É fácil demonstrar que o algoritmo satisfaz as condições I-III descritas acima. A condição de que o processo deve ter visto mensagens mais recentes de todos os outros processos, em conjunto com a suposição que as mensagens são recebidas em ordem, garante que o processo Pi conhece todos os outros pedidos que precedem o seu. Como as regras 3 e 4 são as únicas que apagam pedidos da fila é fácil ver que a condição I é satisfeita, ou seja, o processo deve liberar o recurso antes que outro possa utilizá-lo. A condição II é satisfeita vendo que as mensagens do sistema estão totalmente ordenadas, ou seja, todos os processos do sistema enxergam a mesma ordenação dos pedidos. A regra 2 (recebimento de pedido) e a regra 4 (recebimento de release) garantem que o processo irá receber pelo menos uma mensagem mais recente dos outros processos e que todos os pedidos anteriores ao seu eventualmente

11 10 Prata, De Paula, Costa e Dominiquini serão liberados, então chegará um momento em que seu pedido será o mais antigo e será dado acesso, provando a condição III. Lamport segue demonstrando que o funcionamento deste algoritmo distribuído em que cada processo funciona de maneira independente pode ser representado por uma máquina de estados, formada por um conjunto de comandos e estados. A sincronização da máquina de estados é obtida porque pela ordenação total cada processo ordena sua fila pelos timestamps das mensagens e, portanto, executa a mesma sequência de comandos. Utilizando esta idéia de máquina de estados e o funcionamento básico do algoritmo de sincronização, é possível implementar qualquer forma de sincronização de múltiplos processos em um sistema distribuído. O algoritmo proposto por Herman e Verjus [2] descrito em outra seção segue esta mesma idéia. No restante do artigo Lamport deriva o uso de relógios lógicos para sincronizar relógios físicos e, através do desenvolvimento de diversas equações, chega em um limite para o atraso máximo entre os relógios ao se utilizar este método de sincronização. 3.2 An algorithm for maintaining the consistency of multiple copies. D. Herman e J. P. Verjus, 1979 Herman e Verjus [2] descrevem em seu artigo um algoritmo que, basicamente, estende a idéia de Lamport para implementar consistência entre cópias de dados distribuídos em diversos processos. Os pressupostos para o algoritmo são os mesmos dos fornecidos por Lamport e seu funcionamento é uma estensão ao algoritmo de exclusão mútua dado por Lamport. O sistema é formado por um conjunto de processos em que cada um deles possui uma cópia do banco de dados, com o objetivo de reduzir o turn-around de cada site e melhorar a disponibilidade do sistema. Com isso os usuários podem requisitar os dados de qualquer um dos bancos e obter o mesmo resultado, sem ter de saber que estão acessando dados de outros servidores, para os usuários a imagem é que os dados estão em apenas um servidor. Este é o mesmo príncipio da replicação para aumento de desempenho em sistemas distribuídos. Muitos algoritmos foram propostos para garantir consistência mútua de cópias redundantes mas o algoritmo proposto maximiza o paralelismo evitando o uso de locks globais. O sistema trabalha com filas de requisições, levando isso em conta são previstas as seguintes transações: Estimativa: retorna o valor atual do dado no site em questão, não é necessário que seja um valor consistente com os demais sites, é apenas uma estimativa. Pode também ser chamado de leitura rasa. Leitura: o valor só pode ser retornado quando chega ao topo da fila de requisições, isto garante que todas as operações relativas ao item já foram efetuadas. Escrita: a escrita é efetuada quando chega ao topo da fila, é semelhante à leitura. Atualização: uma transação é inserida na fila, e quando ela chega ao topo a fila é travada e é aplicada uma sequência de operações de leitura e escrita, o processo termina quando a mensagem de fim de transação é encontrada.

12 Multicast 11 As transações são ordenadas globalmente pelas condições de relógio dadas por Lamport [3], utilizando relógios lógicos em cada processo e aplicando-se timestamps às requisições. A ordem de tempo físico não precisa ser obedecida, mas todas as requisições devem ser aplicadas na mesma ordem em todos os sites, de acordo com a ordenação total provida pelos timestamps das requisições. Consistência neste caso é dada nos termos em que os dados podem diferir ao longo do tempo, mas eventualmente, quando toda atividade cessar, o sistema deve convergir para um estado consistente em que todas as cópias são idênticas. Isto ocorre porque ao fim das atividades as mensagens em trânsito em todo o sistema irão chegar e serão processadas, portanto, em um momento não haverá mais mensagens em trânsito e o sistema terá convergido. A explicação sobre ordenação de requisições é a mesma fornecida por Lamport, seguindo as condições de relógio e regras fornecidas para ordenação total. A base do algoritmo é um programa em cada site chamado REGISTRAR que obedece um conjunto de regras bem definidas. Ele responde imediatamente a pedidos de estimativa e aplica as regras para os outros tipos de pedidos. O formato das mensagens trocadas entre os processos é a seguinte <tipo da mensagem, parâmetros, timestamp>. O tipo da mensagem pode também ser uma transação. O algoritmo é descrito em pseudo-código a seguir: /* Algoritmo de Replicacao consistente de Herman e Verjus, * O codigo e exatamente o mesmo para todos os processos. /* Implementa as diretivas de broadcast para envio de mensagens e as diretivas * de unicast para envio do ack e enquiry. * Funcoes: sendmessage, sendackunicast e sendenquiry. import BcastService; /* Implementa a fila de mensagens, ordena do mais antigo para o mais recente, * assim os pedidos sao respondidos na ordem com que chegaram. * Funcoes: put e removeall. import MessageQueue; /* Implementa o relogio logico de Lamport e todas as funcoes de atualizacao * e incremento. * Funcoes: tickclock e updateclock. import Clock; class Registrar { ProcessNumber pid; MessageQueue queue[]; BcastService bcast; Clock clock; /* Principal diferenca com relacao a Lamport, dado Data item;

13 12 Prata, De Paula, Costa e Dominiquini /* Marca se esta dentro de uma transacao boolean trans = false; Registrar(ProcessNumber pid) { bcast = new BcastService(); queue = new MessageQueue[numberProcesses]; for (int i = 0; i < numberprocesses; i++) queue[i] = new MessageQueue(); clock = new Clock(); this.pid = pid; workflow(); void workflow() { /* Enquanto o processo estiver em execucao ouve por novas operacoes * e mensagens enviadas por outros processos. * Chama as demais funcoes para tratar o recebimento e envio de mensagens. * Chama "checkqueues" ao fim de cada iteracao. Message getoldest(queue[] queue) { /* Retorna a mensagem mais antiga de todas as filas e faz * um pop da mensagem. * Se "trans" for true, retorna da mais antiga a mensagem com * numero de transacao menor, para respeitar ordem da transacao. void checkqueues() { /* Verifica por filas vazias e envia enquiries se preciso boolean vazia = false; for (Queue q : queue) { if (q.empty()) { requestenquiry(q.process); vazia = true; /* Encontra fila cujo topo tem a mensagem mais antiga if (vazia == false) { Message maisantiga = getoldest(queue); switch (maisantiga.type) { case write: item = maisantiga.value; break; case read: maisantiga.thread.sendvalue(item); break;

14 Multicast 13 case beginupdate: /* Apenas trata restante das mensagens de transacao trans = true; break; case finishupdate: /* Marca fim da transacao, elimina estruturas criadas para transacao trans = false; break; Message createmessage(type t) { /* Cria mensagem com tipo pedido, numero do processo, * e anexa timestamp Tm:Pi Message createmessage(type t, int value) { /* Cria mensagem com tipo pedido, numero do processo, * valor e anexa timestamp Tm:Pi void requestwrite(int value) { /* Enfileira o pedido de escrita e envia por broadcast * para que todos os outros processos possam realizar a * escrita. tickclock(); Message msg = createmessage(write, value); bcast.sendmessage(msg); queue[pid].put(msg); void receivewrite(message msg) { /* Atualiza seu relogio com o timestamp da mensagem e coloca * a mensagem em sua fila local. updateclock(msg.timestamp); queue[pid].put(msg); void requestenquiry(int process) { /* Caso a fila do processo J esteja vazia precisa enviar um * pedido para o processo para preencher sua fila com um ack. tickclock();

15 14 Prata, De Paula, Costa e Dominiquini Message msg = createmessage(enquiry); bcast.sendenquiry(msg.process, msg); void receiveenquiry(message msg) { /* Responde a um enquiry enviando um ack para o processo * requisitante. updateclock(msg.timestamp); queue[msg.process].put(msg); bcast.sendackunicast(msg.process, msg); void receiveack(message msg) { /* Enfileira o ack do processo updateclock(msg.timestamp); queue[msg.process].put(msg); void requestread() { /* Avanca o relogio, cria a mensagem de leitura e a enfileira * em sua fila, nao precisa enviar para os outros porque nao * altera os dados. tickclock(); Message msg = createmessage(read); queue[pid].put(msg); void requestupdate(list<message> operations) { /* Avanca o relogio, enfileira mensagem de inicio de atualizacao, * operacoes e mensagem de fim de atualizacao. Todas as mensagens da * transacao tem o mesmo timestamp, diferindo apenas seu numero, com isso * se consegue que elas sejam executadas em conjunto sem nenhuma outra operacao * entre elas. A lista operacoes contem todas as operacoes da transacao. tickclock(); /* Envia mensagem de inicio da atualizacao. Tipo beginupdate bcast.sendmessage(operations.head); queue[pid].put(operations.head); for (Message msg : operations) { /* So precisa enviar mensagens de write if (msg.type == write) bcast.sendmessage(msg); queue[pid].put(msg); /* Envia a mensagem de fim da atualizacao. Tipo finishupdate bcast.sendmessage(operations.tail);

16 Multicast 15 queue[pid].put(operations.tail); Pela ordenação total das mensagens no sistema e pelo fato de que as mensagens enviadas por um mesmo processo são entregues na ordem com que foram enviadas, a prova de consistência é a mesma dada por Lamport [3]. Dada a característica FIFO dos canais basta que o site conheça pelo menos uma mensagem de cada um dos outros sites para poder decidir se pode ou não processar alguma requisição, para isto entram em ação as mensagens de enquiry e acknowledge. 3.3 Chandy e Lamport Abcdefghijklmnopqrstuvwxyz. [1] Referências [1] M. Chandy and L. Lamport. Distributed snapshots: determining global states of distributed systems. Transactions on Computer Systems, 3(1):63 75, [2] D. Herman and J. P. Verius. An algorithm for maintaining the consistency of multiple copies. In Proceedings of the 1st International Conference on Distributed Computing Systems, pages , Washington, DC, IEEE Computer Society. [3] L. Lamport. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, 21(7): , July 1978.

INSTITUTO DE COMPUTAÇÃO UNIVERSIDADE ESTADUAL DE CAMPINAS

INSTITUTO DE COMPUTAÇÃO UNIVERSIDADE ESTADUAL DE CAMPINAS INSTITUTO DE COMPUTAÇÃO UNIVERSIDADE ESTADUAL DE CAMPINAS Sub-Projeto 1: Multicast e Revisão Bibliográca E. B. Prata G. S. de Paula P. R. Costa R. Dominiquini Technical Report - IC-10-01 - Relatório Técnico

Leia mais

Veja abaixo um exemplo de um endereço IP de 32 bits: 10000011 01101011 00010000 11001000

Veja abaixo um exemplo de um endereço IP de 32 bits: 10000011 01101011 00010000 11001000 4 Camada de Rede: O papel da camada de rede é transportar pacotes de um hospedeiro remetente a um hospedeiro destinatário. Para fazê-lo, duas importantes funções da camada de rede podem ser identificadas:

Leia mais

Redes de Computadores II INF-3A

Redes de Computadores II INF-3A Redes de Computadores II INF-3A 1 ROTEAMENTO 2 Papel do roteador em uma rede de computadores O Roteador é o responsável por encontrar um caminho entre a rede onde está o computador que enviou os dados

Leia mais

Exclusão Mútua em Sistemas Distribuídos

Exclusão Mútua em Sistemas Distribuídos Exclusão Mútua em Sistemas Distribuídos Recurso deve ser utilizado por apenas um processo de cada vez, com garantia de justiça ausência de deadlock ausência de livelock Premissas: processos não falham

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador

Leia mais

Na Figura a seguir apresento um exemplo de uma "mini-tabela" de roteamento:

Na Figura a seguir apresento um exemplo de uma mini-tabela de roteamento: Tutorial de TCP/IP - Parte 6 - Tabelas de Roteamento Por Júlio Cesar Fabris Battisti Introdução Esta é a sexta parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos básicos do protocolo TCP/IP. Na

Leia mais

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 1.1 Introdução... 2 1.2 Estrutura do IP... 3 1.3 Tipos de IP... 3 1.4 Classes de IP... 4 1.5 Máscara de Sub-Rede... 6 1.6 Atribuindo um IP ao computador... 7 2

Leia mais

Sistemas Distribuídos. Aleardo Manacero Jr.

Sistemas Distribuídos. Aleardo Manacero Jr. Sistemas Distribuídos Aleardo Manacero Jr. Conteúdo Conceitos fundamentais Estratégias de controle: relógios e algoritmos de sincronismo Serviços: arquivos e memória Corba Processamento distribuído Sistemas

Leia mais

Protocolo TCP/IP. Neste caso cada computador da rede precisa de, pelo menos, dois parâmetros configurados:

Protocolo TCP/IP. Neste caso cada computador da rede precisa de, pelo menos, dois parâmetros configurados: Protocolo TCP/IP Neste caso cada computador da rede precisa de, pelo menos, dois parâmetros configurados: Número IP Máscara de sub-rede O Número IP é um número no seguinte formato: x.y.z.w Não podem existir

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Comunicação coletiva Modelo Peer-to-Peer Slide 6 Nielsen C. Damasceno Introdução Os modelos anteriores eram realizado entre duas partes: Cliente e Servidor. Com RPC e RMI não é possível

Leia mais

Entendendo como funciona o NAT

Entendendo como funciona o NAT Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços

Leia mais

ADDRESS RESOLUTION PROTOCOL. Thiago de Almeida Correia

ADDRESS RESOLUTION PROTOCOL. Thiago de Almeida Correia ADDRESS RESOLUTION PROTOCOL Thiago de Almeida Correia São Paulo 2011 1. Visão Geral Em uma rede de computadores local, os hosts se enxergam através de dois endereços, sendo um deles o endereço Internet

Leia mais

FACULDADE PITÁGORAS. Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br

FACULDADE PITÁGORAS. Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br FACULDADE PITÁGORAS DISCIPLINA FUNDAMENTOS DE REDES REDES DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br Material elaborado com base nas apresentações

Leia mais

Prof. Rafael Gross. rafael.gross@fatec.sp.gov.br

Prof. Rafael Gross. rafael.gross@fatec.sp.gov.br Prof. Rafael Gross rafael.gross@fatec.sp.gov.br Todo protocolo define um tipo de endereçamento para identificar o computador e a rede. O IP tem um endereço de 32 bits, este endereço traz o ID (identificador)

Leia mais

Endereços Lógicos, Físicos e de Serviço

Endereços Lógicos, Físicos e de Serviço Endereçamento IP O IP é um protocolo da Camada de rede É um endereço lógico único em toda a rede, portanto, quando estamos navegando na Internet estamos utilizando um endereço IP único mundialmente, pois

Leia mais

9.5.2. Preparando um esquema de endereçamento de sua rede

9.5.2. Preparando um esquema de endereçamento de sua rede Guia Internet de Conectividade - Cyclades - Endereçamento IP - página 1 9.5. Identificação dos Hosts em uma rede Todo sistema ou host que você quiser conectar em sua rede deve ter uma única identificação

Leia mais

Endereçamento IP. Rede 2 Roteador 2 1

Endereçamento IP. Rede 2 Roteador 2 1 O protocolo TCP/IP é roteável, isto é, ele foi criado pensando-se na interligação de diversas redes onde podemos ter diversos caminhos interligando o transmissor e o receptor -, culminando na rede mundial

Leia mais

Serviço de datagrama não confiável Endereçamento hierárquico. Facilidade de fragmentação e remontagem de pacotes

Serviço de datagrama não confiável Endereçamento hierárquico. Facilidade de fragmentação e remontagem de pacotes IP Os endereços IP são números com 32 bits, normalmente escritos como quatro octetos (em decimal), por exemplo 128.6.4.7. A primeira parte do endereço identifica uma rede especifica na interrede, a segunda

Leia mais

APOSTILA DE REDES DE COMPUTADORES PARTE - I I

APOSTILA DE REDES DE COMPUTADORES PARTE - I I APOSTILA DE REDES DE COMPUTADORES PARTE - I I 1 Índice 1. INTRODUÇÃO... ERRO! INDICADOR NÃO DEFINIDO. 2. ENDEREÇOS IP... 3 3. ANALISANDO ENDEREÇOS IPV4... 4 4. MÁSCARA DE SUB-REDE... 5 5. IP ESTÁTICO E

Leia mais

REDES DE COMPUTADORES - I UNI-ANHANGUERA. CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROF. MARCIO BALIAN

REDES DE COMPUTADORES - I UNI-ANHANGUERA. CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROF. MARCIO BALIAN 1 REDES DE COMPUTADORES - I UNI-ANHANGUERA. CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROF. MARCIO BALIAN ENDEREÇAMENTO IP O IP é um protocolo da Camada de rede É um endereço lógico único em toda

Leia mais

Conteúdo. Endereçamento IP Sub-redes VLSM Variable Length Subnetwork Mask CIDR Classless Inter-Domain Routing

Conteúdo. Endereçamento IP Sub-redes VLSM Variable Length Subnetwork Mask CIDR Classless Inter-Domain Routing EndereçamentoIP Conteúdo Endereçamento IP Sub-redes VLSM Variable Length Subnetwork Mask CIDR Classless Inter-Domain Routing Endereçamento IP Serviço de Comunicação Universal Um sistema de comunicação

Leia mais

Endereçamento. Endereço IP. Exemplo. Endereço IP. Como verificar? Certo ou errado? 13/12/2011

Endereçamento. Endereço IP. Exemplo. Endereço IP. Como verificar? Certo ou errado? 13/12/2011 Endereçamento Luciana Balieiro Cosme Permite identificar unicamente um equipamento na rede; O endereço IP não pode ser arbitrariamente atribuído; Cada rede possui uma faixa de endereços que podem ser distribuídos

Leia mais

Redes de Computadores II. Professor Airton Ribeiro de Sousa

Redes de Computadores II. Professor Airton Ribeiro de Sousa Redes de Computadores II Professor Airton Ribeiro de Sousa 1 PROTOCOLO IP IPv4 - Endereçamento 2 PROTOCOLO IP IPv4 - Endereçamento A quantidade de endereços possíveis pode ser calculada de forma simples.

Leia mais

Arquitetura TCP/IP. Parte IV Mapeamento de endereços IP em endereços físicos (ARP) Fabrízzio Alphonsus A. M. N. Soares

Arquitetura TCP/IP. Parte IV Mapeamento de endereços IP em endereços físicos (ARP) Fabrízzio Alphonsus A. M. N. Soares Arquitetura TCP/IP Parte IV Mapeamento de endereços IP em endereços físicos (ARP) Fabrízzio Alphonsus A. M. N. Soares Tópicos Problema de resolução de endereço Mapeamento direto Associação dinâmica ARP

Leia mais

OS endereços IP v.4 consistem em 4 octetos separados por pontos. Estes endereços foram separados

OS endereços IP v.4 consistem em 4 octetos separados por pontos. Estes endereços foram separados Endereçamento IP V.4 e Roteamento Estático Pedroso 4 de março de 2009 1 Introdução OS endereços IP v.4 consistem em 4 octetos separados por pontos. Estes endereços foram separados em 5 classes, de acordo

Leia mais

Jacson Rodrigues <jacsonrcsilva@gmail.com> 1

Jacson Rodrigues <jacsonrcsilva@gmail.com> 1 Redes de Computadores Conceitos Básicos Alguns conceitos fundamentais sobre a configuração de IPs, Máscara e Roteamento em Redes de Computadores muitas vezes não são bem compreendidos por pessoas da área.

Leia mais

SIMULADOR DE ROTEAMENTO DE PACOTES (V. 3 20/05/2010)

SIMULADOR DE ROTEAMENTO DE PACOTES (V. 3 20/05/2010) SIMULADOR DE ROTEAMENTO DE PACOTES (V. 3 20/05/2010) OBJETIVO GERAL Este trabalho possui o objetivo de exercitar a lógica de programação dos alunos do Terceiro ano do Curso de BSI e também desenvolver

Leia mais

Máscaras de sub-rede. Fórmula

Máscaras de sub-rede. Fórmula Máscaras de sub-rede As identificações de rede e de host em um endereço IP são diferenciadas pelo uso de uma máscara de sub-rede. Cada máscara de sub-rede é um número de 32 bits que usa grupos de bits

Leia mais

Aula 5 Cálculo de máscara e de subredes

Aula 5 Cálculo de máscara e de subredes 1 Aula 5 Cálculo de máscara e de subredes 5.1 Conceitos Quando um host se comunica com outro usa o endereço de enlace dele. Os endereços de hardware das placas de rede, ou MAC Address, são constituídos

Leia mais

Tabela de roteamento

Tabela de roteamento Existem duas atividades que são básicas a um roteador. São elas: A determinação das melhores rotas Determinar a melhor rota é definir por qual enlace uma determinada mensagem deve ser enviada para chegar

Leia mais

Sistemas Distribuídos Grupos

Sistemas Distribuídos Grupos Sistemas Distribuídos Grupos Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Roteiro da Aula Definição de Grupos Tipos Atomicidade Ordenamento 3 RPC Comunicação entre Pares Cliente - Servidor

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 2. TCP/IP i. Fundamentos ii. Camada de Aplicação iii. Camada de Transporte iv. Camada de Internet v. Camada de Interface

Leia mais

Configuração de redes no Gnu/Linux

Configuração de redes no Gnu/Linux Configuração de redes no Gnu/Linux Comando ifconfig: É utilizado basicamente para configurar o ip, a mascara de rede e outras opções de placas de rede. Rodado sem opções ele retorna todas as placas de

Leia mais

Procedimento de Clonagem PDV - TOP Internacional

Procedimento de Clonagem PDV - TOP Internacional Procedimento de Clonagem PDV - Versão: 1.01-13/04/2010 Página 2 de 12 Material desenvolvido por: www.managersys.com.br Versão Responsável Descrição 1 Ralf Cristian Versão Inicial 1.01 Rodrigo Souza Revisão

Leia mais

Endereçamento IP 09/05/2014. Endereçamento IP CLASSE B CLASSE A CLASSE A CLASSE C

Endereçamento IP 09/05/2014. Endereçamento IP CLASSE B CLASSE A CLASSE A CLASSE C Endereçamento IP Endereçamento IP Prof. Marcel Santos Silva marcel@magres.com.br É uma sequência de números composta de 32 bits. Esse valor consiste num conjunto de quatro grupos de 8 bits. Cada conjunto

Leia mais

Teleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010

Teleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010 Teleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010 Prof. Silvana Rossetto (DCC/IM/UFRJ) 1 13 de julho de 2010 Questões 1. Qual é a diferença fundamental entre um roteador

Leia mais

Há dois tipos de configurações bidirecionais usados na comunicação em uma rede Ethernet:

Há dois tipos de configurações bidirecionais usados na comunicação em uma rede Ethernet: Comunicação em uma rede Ethernet A comunicação em uma rede local comutada ocorre de três formas: unicast, broadcast e multicast: -Unicast: Comunicação na qual um quadro é enviado de um host e endereçado

Leia mais

Rede de Computadores

Rede de Computadores Escola de Ciências e Tecnologia UFRN Rede de Computadores Prof. Aquiles Burlamaqui Nélio Cacho Luiz Eduardo Eduardo Aranha ECT1103 INFORMÁTICA FUNDAMENTAL Manter o telefone celular sempre desligado/silencioso

Leia mais

Introdução Introduç ão Rede Rede TCP/IP Roteame Rotea nto nto CIDR

Introdução Introduç ão Rede Rede TCP/IP Roteame Rotea nto nto CIDR Introdução as Redes TCP/IP Roteamento com CIDR LAN = Redes de Alcance Local Exemplo: Ethernet II não Comutada Barramento = Broadcast Físico Transmitindo ESCUTANDO ESCUTANDO A quadro B C B A. DADOS CRC

Leia mais

Prof. Samuel Henrique Bucke Brito

Prof. Samuel Henrique Bucke Brito - Switch na Camada 2: Comutação www.labcisco.com.br ::: shbbrito@labcisco.com.br Prof. Samuel Henrique Bucke Brito Introdução A conexão entre duas portas de entrada e saída, bem como a transferência de

Leia mais

TCP é um protocolo de TRANSMISSÃO, responsável pela confiabilidade da entrega da informação.

TCP é um protocolo de TRANSMISSÃO, responsável pela confiabilidade da entrega da informação. Protocolo TCP/IP PROTOCOLO é um padrão que especifica o formato de dados e as regras a serem seguidas para uma comunicação a língua comum a ser utilizada na comunicação. TCP é um protocolo de TRANSMISSÃO,

Leia mais

A máscara de sub-rede pode ser usada para dividir uma rede existente em "sub-redes". Isso pode ser feito para:

A máscara de sub-rede pode ser usada para dividir uma rede existente em sub-redes. Isso pode ser feito para: Fundamentos: A máscara de pode ser usada para dividir uma rede existente em "s". Isso pode ser feito para: 1) reduzir o tamanho dos domínios de broadcast (criar redes menores com menos tráfego); 2) para

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br Curso de Tecnologia em Redes de Computadores Disciplina: Redes I Fundamentos - 1º Período Professor: José Maurício S. Pinheiro AULA 6: Switching Uma rede corporativa

Leia mais

Sincronização em SDs I. Bruno M. Carvalho Sala: 3B2 Horário: 35T34

Sincronização em SDs I. Bruno M. Carvalho Sala: 3B2 Horário: 35T34 Sincronização em SDs I Bruno M. Carvalho Sala: 3B2 Horário: 35T34 Introdução Sincronização em SDs consiste na aplicação de técnicas que fazem com que os processos concordem com o tempo ou a ordem de ocorrência

Leia mais

Exercícios de Revisão Redes de Computadores Edgard Jamhour. Nome dos Alunos

Exercícios de Revisão Redes de Computadores Edgard Jamhour. Nome dos Alunos Exercícios de Revisão Redes de Computadores Edgard Jamhour Nome dos Alunos Cenário 1: Considere a seguinte topologia de rede IPB 210.0.0.1/24 IPA 10.0.0.5/30 220.0.0.1\24 4 5 3 1 IPC 10.0.0.9/30 REDE B

Leia mais

Disciplina de Sistemas Distribuídos. Sincronização em SD. Prof. M.Sc. Alessandro Kraemer kraemer@utfpr.edu.br. Kraemer

Disciplina de Sistemas Distribuídos. Sincronização em SD. Prof. M.Sc. Alessandro Kraemer kraemer@utfpr.edu.br. Kraemer Disciplina de Sistemas Distribuídos Sincronização em SD Prof. M.Sc. Alessandro kraemer@utfpr.edu.br Cronograma Contextualização Tipos de sincronização Mecanismos para sincronização da região crítica Exclusão

Leia mais

Aula 4. Pilha de Protocolos TCP/IP:

Aula 4. Pilha de Protocolos TCP/IP: Aula 4 Pilha de Protocolos TCP/IP: Comutação: por circuito / por pacotes Pilha de Protocolos TCP/IP; Endereçamento lógico; Encapsulamento; Camada Internet; Roteamento; Protocolo IP; Classes de endereços

Leia mais

Comunicação entre processos (grupos) COMUNICAÇÃO ENTRE PROCESSOS Comunicação de grupo. Comunicação entre processos (grupos)

Comunicação entre processos (grupos) COMUNICAÇÃO ENTRE PROCESSOS Comunicação de grupo. Comunicação entre processos (grupos) Comunicação one-to-one Forma mais simples de comunicação entre processos point-to-point, ou unicast COMUNICAÇÃO ENTRE PROCESSOS Comunicação de grupo Algumas aplicações comunicação entre grupos de processos

Leia mais

Redes de Computadores Endereçamento IP

Redes de Computadores Endereçamento IP Redes de Computadores Endereçamento IP Prof. Eduardo Endereçamento IP o TCP/IP utiliza um endereçamento lógico; Cada dispositivo conectado em rede necessita usar pelo menos um endereço IP (identifica o

Leia mais

Foi inicialmente desenvolvido como parte de um

Foi inicialmente desenvolvido como parte de um PROTOCOLO TCP/IP 1 INTRODUCÃO Foi inicialmente desenvolvido como parte de um projeto incentivado pela DARPA; Tinha como objetivo desenvolver tecnologias para que as máquinas interligadas em rede continuassem

Leia mais

Centro Tecnológico de Eletroeletrônica César Rodrigues. Atividade Avaliativa

Centro Tecnológico de Eletroeletrônica César Rodrigues. Atividade Avaliativa 1ª Exercícios - REDES LAN/WAN INSTRUTOR: MODALIDADE: TÉCNICO APRENDIZAGEM DATA: Turma: VALOR (em pontos): NOTA: ALUNO (A): 1. Utilize 1 para assinalar os protocolos que são da CAMADA DE REDE e 2 para os

Leia mais

Disciplina Fundamentos de Redes. Introdução ao Endereço IP. Professor Airton Ribeiro de Sousa Outubro de 2014

Disciplina Fundamentos de Redes. Introdução ao Endereço IP. Professor Airton Ribeiro de Sousa Outubro de 2014 Disciplina Fundamentos de Redes Introdução ao Endereço IP 1 Professor Airton Ribeiro de Sousa Outubro de 2014 PROTOCOLO TCP - ARQUITETURA Inicialmente para abordamos o tema Endereço IP, é necessário abordar

Leia mais

APLICAÇÃO REDE APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE REDE LINK DE DADOS FÍSICA 1/5 PROTOCOLOS DE REDE

APLICAÇÃO REDE APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE REDE LINK DE DADOS FÍSICA 1/5 PROTOCOLOS DE REDE 1/5 PROTOCOLOS DE O Modelo OSI O OSI é um modelo usado para entender como os protocolos de rede funcionam. Para facilitar a interconexão de sistemas de computadores, a ISO (International Standards Organization)

Leia mais

Capítulo 9 - Conjunto de Protocolos TCP/IP e Endereçamento. Associação dos Instrutores NetAcademy - Julho de 2007 - Página

Capítulo 9 - Conjunto de Protocolos TCP/IP e Endereçamento. Associação dos Instrutores NetAcademy - Julho de 2007 - Página Capítulo 9 - Conjunto de Protocolos TCP/IP e Endereçamento IP 1 História e Futuro do TCP/IP O modelo de referência TCP/IP foi desenvolvido pelo Departamento de Defesa dos Estados Unidos (DoD). O DoD exigia

Leia mais

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos MÓDULO 7 Modelo OSI A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada

Leia mais

Guia de Conectividade Worldspan Go Res! A V A N Ç A D O

Guia de Conectividade Worldspan Go Res! A V A N Ç A D O Guia de Conectividade Worldspan Go Res! A V A N Ç A D O Í n d i c e Considerações Iniciais...2 Rede TCP/IP...3 Produtos para conectividade...5 Diagnosticando problemas na Rede...8 Firewall...10 Proxy...12

Leia mais

4 O Workflow e a Máquina de Regras

4 O Workflow e a Máquina de Regras 4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu

Leia mais

Fundamentos de Redes de Computadores. Elementos de Redes Locais

Fundamentos de Redes de Computadores. Elementos de Redes Locais Fundamentos de Redes de Computadores Elementos de Redes Locais Contexto Implementação física de uma rede de computadores é feita com o auxílio de equipamentos de interconexão (repetidores, hubs, pontos

Leia mais

Uso do iptables como ferramenta de firewall.

Uso do iptables como ferramenta de firewall. Uso do iptables como ferramenta de firewall. Rafael Rodrigues de Souza rafael@tinfo.zzn.com Administração em Redes Linux Universidade Federal de Lavra UFLA RESUMO O artigo pretende abordar o uso de firewalls

Leia mais

4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição?

4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição? Prova de 2011-02 1. Descreva duas maneiras de estabelecer uma conexão entre processos na camada de transporte sem o conhecimento da porta (TSAP) ao qual o servidor remoto esteja associado. 2. Estabelecer

Leia mais

Lab 4 Análise de Pacotes utilizando o TCPDUMP

Lab 4 Análise de Pacotes utilizando o TCPDUMP Objetivo: Lab 4 Análise de Pacotes utilizando o TCPDUMP i) Utilizar aplicativo de análise de pacotes TCPDUMP. TCPDUMP: O tcpdump é um programa cuja utilidade principal é visualizar e analisar o tráfego

Leia mais

Interconexão de redes locais. Repetidores. Pontes (Bridges) Hubs. Pontes (Bridges) Pontes (Bridges) Existência de diferentes padrões de rede

Interconexão de redes locais. Repetidores. Pontes (Bridges) Hubs. Pontes (Bridges) Pontes (Bridges) Existência de diferentes padrões de rede Interconexão de redes locais Existência de diferentes padrões de rede necessidade de conectá-los Interconexão pode ocorrer em diferentes âmbitos LAN-LAN LAN: gerente de um determinado setor de uma empresa

Leia mais

Exercícios de Revisão Redes de Computadores Edgard Jamhour. Segundo Bimestre

Exercícios de Revisão Redes de Computadores Edgard Jamhour. Segundo Bimestre Exercícios de Revisão Redes de Computadores Edgard Jamhour Segundo Bimestre Exercicio 1: Considere a seguinte configuração de rede estruturada em VLANs 220.0.0.2/24 C VLAN 2 B VLAN 1 A VLAN 1 VLAN 1,2,3

Leia mais

COMPONENTES BÁSICOS DE

COMPONENTES BÁSICOS DE COMPONENTES BÁSICOS DE REDES 2ºPARTE Prof. Me. Hélio Esperidião SWITCH O SWITCH opera de forma mais inteligente. Ele analisa os pacotes de dados que chegam a ele e descobre os endereços de origem e destino.

Leia mais

Um sistema de comunicação necessita de um método de identificação de seus computadores. Numa rede TCP/IP, cada computador recebe um

Um sistema de comunicação necessita de um método de identificação de seus computadores. Numa rede TCP/IP, cada computador recebe um Endereçamento IP Um sistema de comunicação necessita de um método de identificação de seus computadores. Numa rede TCP/IP, cada computador recebe um endereço inteiro de 32 bits (endereço IP). Precisa ser

Leia mais

Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. alexandref@ifes.edu.br. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim

Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. alexandref@ifes.edu.br. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim Redes TCP/IP alexandref@ifes.edu.br Camada de Redes 2 O que acontece na camada de rede Transporta segmentos do hospedeiro transmissor para o receptor Roteador examina campos de cabeçalho em todos os datagramas

Leia mais

FICHA INFORMATIVA E DE TRABALHO MÓDULO 0773 - REDE LOCAL INSTALAÇÃO

FICHA INFORMATIVA E DE TRABALHO MÓDULO 0773 - REDE LOCAL INSTALAÇÃO CURSO EFA 2012 / 2013 Formando: Data: / / ÁREA/Assunto: Formador / Mediador: Avaliação Formando Formador FICHA INFORMATIVA E DE TRABALHO MÓDULO 0773 - REDE LOCAL INSTALAÇÃO Standard IEE 802 Para que as

Leia mais

Quadro de consulta (solicitação do mestre)

Quadro de consulta (solicitação do mestre) Introdução ao protocolo MODBUS padrão RTU O Protocolo MODBUS foi criado no final dos anos 70 para comunicação entre controladores da MODICON. Por ser um dos primeiros protocolos com especificação aberta

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Modelo cliente e servidor Slide 2 Nielsen C. Damasceno Modelos Cliente - Servidor A principal diferença entre um sistema centralizado e um sistema distribuído está na comunicação

Leia mais

Faculdade INED Curso Superior de Tecnologia: R d es e Comput d a ores Bibliografia da disciplina Endereçamento IP Bibliografia Obrigatória

Faculdade INED Curso Superior de Tecnologia: R d es e Comput d a ores Bibliografia da disciplina Endereçamento IP Bibliografia Obrigatória Faculdade INED Unidade 3 Endereçamento IP Curso Superior de Tecnologia: Redes de Computadores Disciplina: Fundamentos de Redes Prof.: Fernando Hadad Zaidan 1 2 Bibliografia da disciplina Bibliografia Obrigatória

Leia mais

Selecionar o melhor caminho para uma finalidade particular; Usar o caminho para chegar aos outros sistemas;

Selecionar o melhor caminho para uma finalidade particular; Usar o caminho para chegar aos outros sistemas; ROTEAMENTO Conceituação! Roteamento é o mecanismo através do qual duas máquinas em comunicação acham e usam um caminho ótimo (o melhor) através de uma. O processo envolve: Determinar que caminhos estão

Leia mais

Laboratório - Visualização das tabelas de roteamento do host

Laboratório - Visualização das tabelas de roteamento do host Laboratório - Visualização das tabelas de roteamento do host Topologia Objetivos Parte 1: Acessar a tabela de roteamento de host Parte 2: Examinar as entradas da tabela de roteamento de host IPv4 Parte

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sincronização Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 995 Seção. pág. 36-325 2 Conteúdo Relógios lógicos Algoritmo de Lamport Relógios físicos Algoritmos para sincronização

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Exercícios de Revisão Edgard Jamhour. Quarto Bimestre: IPv6 e Mecanismos de Transiçao

Exercícios de Revisão Edgard Jamhour. Quarto Bimestre: IPv6 e Mecanismos de Transiçao Exercícios de Revisão Edgard Jamhour Quarto Bimestre: IPv6 e Mecanismos de Transiçao Questão 1: Indique a qual versão do IP pertence cada uma das características abaixo: ( ) Verifica erros no cabeçalho

Leia mais

Arquitetura TCP/IP. Parte III Endereçamento IP e roteamento. Fabrízzio Alphonsus A. M. N. Soares

Arquitetura TCP/IP. Parte III Endereçamento IP e roteamento. Fabrízzio Alphonsus A. M. N. Soares Arquitetura TCP/IP Parte III Endereçamento IP e roteamento Fabrízzio Alphonsus A. M. N. Soares Tópicos Formato do endereço Classes de endereços Endereços especiais Sub-rede e máscara VLSM (Variable Length

Leia mais

Introdução ao Modelos de Duas Camadas Cliente Servidor

Introdução ao Modelos de Duas Camadas Cliente Servidor Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos

Leia mais

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET 2010/2011 1 Protocolo TCP/IP É um padrão de comunicação entre diferentes computadores e diferentes sistemas operativos. Cada computador deve

Leia mais

3) Na configuração de rede, além do endereço IP, é necessário fornecer também uma máscara de subrede válida, conforme o exemplo:

3) Na configuração de rede, além do endereço IP, é necessário fornecer também uma máscara de subrede válida, conforme o exemplo: DIRETORIA ACADÊMICA DE EDUCAÇÃO E TECNOLOGIA COORDENAÇÃO DOS CURSOS DA ÁREA DE INFORMÁTICA! Atividade em sala de aula. 1) A respeito de redes de computadores, protocolos TCP/IP e considerando uma rede

Leia mais

Tecnologia de Redes de Computadores - aula 5

Tecnologia de Redes de Computadores - aula 5 Tecnologia de Redes de Computadores - aula 5 Prof. Celso Rabelo Centro Universitário da Cidade 1 Objetivo 2 3 4 IGPxEGP Vetor de Distância Estado de Enlace Objetivo Objetivo Apresentar o conceito de. Conceito

Leia mais

1. Explicando Roteamento um exemplo prático. Através da análise de uns exemplos simples será possível compreender como o roteamento funciona.

1. Explicando Roteamento um exemplo prático. Através da análise de uns exemplos simples será possível compreender como o roteamento funciona. Aula 14 Redes de Computadores 24/10/07 Universidade do Contestado UnC/Mafra Sistemas de Informação Prof. Carlos Guerber ROTEAMENTO EM UMA REDE DE COMPUTADORES A máscara de sub-rede é utilizada para determinar

Leia mais

Unidade 2.4 Endereçamento IP

Unidade 2.4 Endereçamento IP Faculdade INED Curso Superior de Tecnologia: Banco de Dados Redes de Computadores Disciplina: Redes de Computadores Prof.: Fernando Hadad Zaidan 1 Unidade 2.4 Endereçamento IP 2 Bibliografia da disciplina

Leia mais

ECD1200 Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO

ECD1200 Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO Versão do documento: 1.1 1. Introdução...3 2. Documentação...3 2.1. DOCUMENTAÇÃO DE REFERÊNCIA... 3 2.2. DESCRIÇÃO FUNCIONAL... 4 2.2.1. INTERFACE...

Leia mais

Capítulo 4 - Roteamento e Roteadores

Capítulo 4 - Roteamento e Roteadores Capítulo 4 - Roteamento e Roteadores 4.1 - Roteamento Roteamento é a escolha do módulo do nó de origem ao nó de destino por onde as mensagens devem transitar. Na comutação de circuito, nas mensagens ou

Leia mais

1 INTRODUÇÃO Internet Engineering Task Force (IETF) Mobile IP

1 INTRODUÇÃO Internet Engineering Task Force (IETF) Mobile IP 1 INTRODUÇÃO Devido ao crescimento da Internet, tanto do ponto de vista do número de usuários como o de serviços oferecidos, e o rápido progresso da tecnologia de comunicação sem fio (wireless), tem se

Leia mais

Mecanismos de QoS em Linux Hierarchical Token Bucket (HTB)

Mecanismos de QoS em Linux Hierarchical Token Bucket (HTB) Mecanismos de QoS em Linux Hierarchical Token Bucket (HTB) Este roteiro descreve um cenário prático onde o algoritmo Hierarchical Token Bucket (HTB) é utilizado para criar uma política de QoS flexível,

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Prof. Macêdo Firmino Princípios de Gerência de Redes Macêdo Firmino (IFRN) Redes de Computadores Maio de 2011 1 / 13 Introdução Foi mostrado que uma rede de computadores consiste

Leia mais

Conceitos sobre TCP/IP. Endereços IP (Internet Protocol) Introdução

Conceitos sobre TCP/IP. Endereços IP (Internet Protocol) Introdução Conceitos sobre TCP/IP Endereços IP (Internet Protocol) Introdução O uso de computadores em rede e, claro, a internet, requer que cada máquina tenha um identificador que a diferencie das demais. Para isso,

Leia mais

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 3-1. A CAMADA DE REDE (Parte 1) A camada de Rede está relacionada à transferência de pacotes da origem para o destino. No entanto, chegar ao destino pode envolver vários saltos em roteadores intermediários.

Leia mais

TCP/IP O guia definitivo para cálculos

TCP/IP O guia definitivo para cálculos ENTENDENDO O CÁLCULO DE SUB-REDES IP por Eduardo Parise Para que seja possível a comunicação entre máquinas em uma mesma rede é necessário que cada uma possua um endereço IP exclusivo naquela rede. Um

Leia mais

Objetivos: i) Verificar o impacto de loops em redes locais ii) Configurar o protocolo STP para remover loops da rede

Objetivos: i) Verificar o impacto de loops em redes locais ii) Configurar o protocolo STP para remover loops da rede Laboratório de Redes de Computadores 2 8 o experimento Objetivos: i) Verificar o impacto de loops em redes locais ii) Configurar o protocolo STP para remover loops da rede Introdução A interligação de

Leia mais

3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho.

3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho. Entregue três questões de cada prova. Prova de 2011-02 1. Descreva duas maneiras de estabelecer uma conexão entre processos na camada de transporte sem o conhecimento da porta (TSAP) ao qual o servidor

Leia mais

Márcio Leandro Moraes Rodrigues. Frame Relay

Márcio Leandro Moraes Rodrigues. Frame Relay Márcio Leandro Moraes Rodrigues Frame Relay Introdução O frame relay é uma tecnologia de chaveamento baseada em pacotes que foi desenvolvida visando exclusivamente a velocidade. Embora não confiável, principalmente

Leia mais

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários

Leia mais

O modelo ISO/OSI (Tanenbaum,, 1.4.1)

O modelo ISO/OSI (Tanenbaum,, 1.4.1) Cenário das redes no final da década de 70 e início da década de 80: Grande aumento na quantidade e no tamanho das redes Redes criadas através de implementações diferentes de hardware e de software Incompatibilidade

Leia mais

USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP

USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP SMTP "Protocolo de transferência de correio simples (ou em inglês Simple Mail Transfer Protocol ) é o protocolo padrão para envio de e- mails através da

Leia mais

FAÇA FÁCIL: DRIVER IGS PARA COMUNICAÇÃO DE PROTOCOLOS PROPRIETÁRIOS INTRODUÇÃO

FAÇA FÁCIL: DRIVER IGS PARA COMUNICAÇÃO DE PROTOCOLOS PROPRIETÁRIOS INTRODUÇÃO FAÇA FÁCIL: DRIVER IGS PARA COMUNICAÇÃO DE PROTOCOLOS PROPRIETÁRIOS INTRODUÇÃO O Driver IGS possui um módulo de configuração que possibilita a comunicação com protocolos proprietários. Trata-se do Driver

Leia mais

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - Aula Complementar - EQUIPAMENTOS DE REDE 1. Repetidor (Regenerador do sinal transmitido) É mais usado nas topologias estrela e barramento. Permite aumentar a extensão do cabo e atua na camada física

Leia mais

Administração de Redes

Administração de Redes Administração de Redes DHCP Dynamic Host Configuration Protocol Prof. Fabio de Jesus Souza Professor Fabio Souza Introdução Principais parâmetros que devem ser configurados para que o protocolo TCP/IP

Leia mais

IP significa Internet Protocol. A Internet é uma rede, e assim como ocorre em qualquer tipo de rede, os seus nós (computadores, impressoras, etc.

IP significa Internet Protocol. A Internet é uma rede, e assim como ocorre em qualquer tipo de rede, os seus nós (computadores, impressoras, etc. Endereços IP Endereços IP IP significa Internet Protocol. A Internet é uma rede, e assim como ocorre em qualquer tipo de rede, os seus nós (computadores, impressoras, etc.) precisam ter endereços. Graças

Leia mais