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

Download ""

Transcrição

1 Redes de computadores baseadas em tecnologias ativas Flavio Paiva Junqueira Grupo de Teleinformatica e Automac~ao - GTA COPPE/PEE - Programa de Engenharia Eletrica Universidade Federal do Rio de Janeiro Caixa postal CEP Rio de Janeiro - RJ - Brasil 28 de Maio de 1997 Resumo Redes ativas permitem a usuarios individuais injetarem programas customizados nos nos da rede. As ditas arquiteturas ativas possibilitam um aumento consideravel na complexidade e na customizac~ao da computac~ao que e realizada nos nos da rede. Este artigo tem como enfoque a utilizac~ao de capsulas, que s~ao pacotes contendo fragmentos de programas e dados, substituindo os pacotes convencionais. Quest~oes como o acesso aos recursos dos nos e a linguagem a ser utilizada s~ao discutidas. Por m e sugerida uma arquitetura basica, proposta neste artigo, para um processador ativo que coopera com a camada de rede. 1

2 1 Introduc~ao As redes de computadores convencionais transportam bits de forma passiva m-a- m, isto e, os dados s~ao transmitidos em pacotes pelo sub-sistema de comunicac~ao sem alterac~ao. O processamento realizado sobre um pacote de dados e baseado em uma sem^antica denida para o cabecalho, restringindo assim as ac~oes que podem ser realizadas sobre o seu conteudo. As redes ativas se prop~oem a permitir a injec~ao de programas nos nos da rede, chamados de nos ativos, que realizar~ao computac~oes especcas sobre as mensagens de dados de usuarios e aplicac~oes. As redes s~ao ditas ativas porque podem realizam computac~oes e modicar o conteudo dos pacotes. Com isto, ha um ganho na exibilidade dos eventos internos da rede, que n~ao s~ao mais restritos as opc~oes presentes nos cabecalhos dos pacotes. Todas as aplicac~oes que necessitam de tratamento diferenciado dentro da rede poderiam se utilizar dos recursos de computac~ao disponveis nos nos da rede. Como exemplo temos rewalls, Web proxies, roteadores multiponto etc. Um problema interessante se aplicar redes ativas e para o caso de congestionamento. Neste caso, a chegada de informac~ao para indicar um congestionamento em algum ponto da rede pode ocorrer tardiamente. As redes ativas s~ao classicadas segundo a sua arquitetura. Uma abordagem que e particularmente interessante, consiste na troca de pacotes passivos por \capsulas" (abordagem integrada), que s~ao programas em miniatura encapsulados em quadros de transmiss~ao, que s~ao executados em todos os nos da rede. Outra abordagem, denominada de comutadores programaveis, consiste na distinc~ao de pacotes contendo programas, dos que contem dados (abordagem integrada). Assim, o mecanismo de inserc~ao de programas e separado da transmiss~ao de dados. Contudo, o que possibilita a exist^encia destas redes ativas s~ao as tecnologias ativas, que consistem em codigos compilados e interpretados, suportando a transfer^encia baseada em encapsulamento e a execuc~ao segura e eciente dos fragmentos de programa. No entanto, observa-se que a utilizac~ao de processamento aumenta a lat^encia no transporte m-a-m dos dados. Por isto, varias quest~oes relacionadas a execuc~ao de programas nos nos s~ao analisadas nas pesquisas em desenvolvimento atualmente, procurando diminuir este atraso no geral, ou pelo menos diminuir o atraso para os casos de maior ocorr^encia. O caso mais geral seria a retransmiss~ao direta, sem utilizac~ao das capacidades de processamento. 2

3 1.1 Pesquisas em redes ativas Diversos trabalhos em redes ativas est~ao em desenvolvimento em diversos centros de pesquisa. No MIT [4], Tennenhouse et al. est~ao desenvolvendo um prototipo baseado na abordagem de capsulas e diversos estudos est~ao em andamento em assuntos relacionados, como armazenamento ativo, especicac~ao de componentes e fus~ao/ltragem de dados baseados em rede. Na universidade da Pensilv^ania, o projeto SwitchWare [5] consiste no desenvolvimento de um comutador programavel, que permite o carregamento de modulos digitalmente no comutador. Aideia basica e elevaronvel de abstrac~ao da funcionalidade do comutador para perto do nvel de uma maquina de Turing. O projeto NetScript [10] da universida de Columbia, consiste em uma linguagem de programac~ao e de um ambiente de execuc~ao. O time do universidade Carnegie Mellon esta desenvolvendo um mecanismo de gerenciamento de recursos para suporte de redes voltadas para aplicac~ao. Na escola de computac~ao da universidade da Georgia [7], Bhattacharjee et al. est~ao desenvolvendo estudos, onde utilizam redes ativas para soluc~ao do problema de congestionamento nos nos da rede. 1.2 Desenvolvimento do trabalho Neste trabalho, foram abordadas as principais caractersticas das propostas de Tennenhouse, tendo sido explorado tambem o trabalho de Bhattacharjee et al. Baseado em ambos os trabalhos foi proposta uma arquitetura basica para um processador ativo que opera em conjunto com a camada de rede. Na sec~ao 2 s~ao discutidas algumas aplicac~oes que teriam vantagens em estar sobre redes ativas. Na sec~ao 3 s~ao apresentadas caractersticas relativas as duas abordagens para arquitetura de redes ativas (integrada e discreta). Na sec~ao 4 e discutida a necessidade de um modelo de programac~ao interoperavel, de forma que os nos da rede executem de forma coerente os programas contidos nas capsulas. Seguindo a proposta de Tennenhouse et al., na sec~ao 5, apresenta-se uma extens~ao para utilizac~ao de IP para protocolo de rede de uma rede ativa. Um resumo da proposta de Bhattacharjee et al. e apresentado na sec~ao 6. A proposta para uma arquitetura de um processador ativoe apresentada na sec~ao 7. Por m, na sec~ao 8 s~ao apresentadas algumas conclus~oes relativas a este trabalho. 2 Aplicac~oes em redes ativas Recentemente, tem havido um consideravel interesse em: tecnologia de agentes, que permite mobilidade de codigo de clientes para servidores e em applets na Web, que 3

4 permitem a mobilidade de codigo de servidores para clientes. Baseada nestas ideias, uma rede ativa permite a mobilidade de codigo para onde quer que seja necessario na rede. Existem aplicac~oes em que seria interessante, do ponto de vista do usuario, o interposicionamento de computac~ao dentro da rede. Em [1][4], s~ao apresentadas alguns exemplos: Firewalls, os quais s~ao geralmente localizados em limites administrativos Web Proxies e outros servicos tais como DNS e roteadores multicast, que forma vertices estrategicos de arvores de copia, fus~ao e cache Gateways N^omades/Moveis, posicionados nas extremidades das redes onde existem descontinuidades signicantes na banda disponvel, como por exemplo estac~oes-base de redes moveis Novas aplicac~oes que incluem funcionalidades de gerenciamento, fus~ao e distribuic~ao de dados para multiplos usuarios e mecanismos de autenticac~ao e seguranca. Estas aplicac~oes demonstram que existe a necessidade de redes em que a computac~ao realizada nos nos seja dependente da aplicac~ao e de facil realizac~ao. Na falta de uma abordagem coerente para interposicionamento, foram adotadas estrategias ad hoc, como se observa nos exemplos. Em muitos casos, a plataforma inserida apresenta a fachada de roteadores anvel de rede, mas realmente realizam func~oes especcas. As redes ativas procuram racionalizar estas diversas atividades atraves de uma plataforma uniforme para computac~ao baseada na rede. 2.1 Firewalls Firewalls implementam ltros que determinam quais pacotes devem ser passados de forma transparente e quais devem ser bloqueados. Embora tenham uma relac~ao de paridade com outros roteadores, rewalls implementam func~oes especcas de aplicac~oes e de usuarios, alem do roteamento dos pacotes. A necessidade de atualizar o rewall para habilitar o uso de novas aplicac~oes, muitas vezes, e um impedimento para a sua utilizac~ao. Em uma rede ativa, este processo poderia ser automatizado atraves da habilitac~ao do acesso de aplicac~oes de representantes autorizados, que se autenticariam no rewall, e injetariam modulos apropriados neste. 2.2 Web Proxies Web Proxies s~ao um exemplo de servico especco para aplicac~ao, sendo desenvolvidos para servir e armazenar temporariamente paginas Web. Um modelo proposto 4

5 por Harvest [2] emprega um esquema hierarquico no qual nos de cache s~ao posicionados perto das extremidades da rede, isto e, dentro da organizac~ao do usuario. Este sistema e escalavel e pode ser estendido permitindo que nos da hierarquia estejam posicionados em pontos estrategicos dentro da rede de provedores de acesso e portadoras. Um problema interessante e o desenvolvimento de algoritmos e ferramentas que automaticamente realizem o balanceamento da hierarquia atraves do reposicionamento dos proprios nos de cache, en~ao apenas da informac~ao do cache. Um outro argumento em favor da utilizac~ao de tecnologias ativas para armazenamento temporario na Web e que uma frac~ao signicativa das paginas Web s~ao computadas dinamicamente e n~ao est~ao sujeitas ao armazenamento passivo. Isto sugere que o desenvolvimento de esquemas de Web proxies suportem caches ativos que armazenem e executem programas que gerem paginas Web. 2.3 Computac~ao movel/n^omade Estrategias de inserc~ao s~ao utilizadas em varias pesquisas voltadas para computac~ao movel. Por exemplo, Kleinrock [2] descreve um roteador n^omade que e inserido entre sistemas nais e a rede. Este modulo observa e se adapta de acordo com os meios pelos quais o sistema esta conectado a rede, que pode ser atraves de uma linha telef^onica ou atraves de uma rede local no escritorio, por exemplo. Este roteador deve decidir por realizar mais armazenamento temporario de arquivo ou compress~ao quando o sistema esta conectado atraves de um enlace de baixa banda, e/ou recorrer a seguranca adicional, tal como encriptac~ao, quando a operac~ao n~ao for local. De forma similar, gateways e agentes n^omades s~ao nos que suportam mobilidade. Estes est~ao localizados em pontos estrategicos que interligam redes com enlaces de banda nominal e caractersticas de conabilidade diferentes, tais como as junc~os entre redes com e sem o. O trabalho realizado em TCP snooping [1] aumenta a performance de conex~oes TCP atraves da retenc~ao de informac~oes pertinentes ao estado de cada conex~ao em estac~oes-base sem o. Servicos especcos de aplicac~ao realizados em gateways incluem o armazenamento temporario de arquivos e a transcodicac~ao de imagens. 2.4 Domnios para novas aplicac~oes Em [4], s~ao apresentadas algumas classes de aplicac~oes que podem se aproveitar das caractersticas basicas das redes ativas. Entre estas est~ao aplicac~oes baseadas na fus~ao de informac~oes, em protec~ao da rede por reconhecimento de usuario, e gerenciamento ativo da rede. 5

6 2.4.1 Fus~ao e distribuic~ao de informac~ao Diversas aplicac~oes atualmente est~ao baseadas em multiplos usuarios/estac~oes. Algumas destas necessitam de servicos prestados pela rede que suportem a fus~ao e a distribuic~ao conveniente da informac~ao. No entanto, os sistemas existentes est~ao baseados em servicos que fornecem funcionalidades limitadas sem suporte para distribuic~oes especcas, desfavorecendo o armazenamento na rede e a fus~ao da informac~ao. Sensores Usuário Proc. Fusao Fusão Proc. Fusão Proc. Fusão Sensores Proc. Atuador Usuário Atuadores Figura 1: Fus~ao e distribuic~ao de informac~ao baseada na rede A gura 1 ilustra uma aplicac~ao baseada em multiplos stios. Nesta gura, uma aplicac~ao, tal como simulac~ao ou manipulac~ao remota, permite a cada usuario enxergar dados de imagens compostos obtidos de um grande numero de sensores. Alem disto, cada sensor pode ser assistido por diversos usuarios, que ter~ao requisitos diferentes no que diz respeito a codicac~ao e a apresentac~ao da informac~ao que acessam. A fus~ao de dados na rede reduz os requisitos de banda para usuarios que est~ao localizados na periferia (banda baixa) da rede. De forma similar, servicos especcos multiponto para usuarios, dentro da rede, reduz a carga nos sensores e no backbone Protec~ao da rede por reconhecimento de usuario A protec~ao da informac~ao signica que a informac~ao correta chegara as pessoas certas. Embora mecanismos de seguranca na rede e de autenticac~ao estejam sendo propostos, redes ativas podem admitir o desenvolvimento de mecanismos integrados que governam todos os recursos da rede e a informac~ao que ui por ela. Isto 6

7 elimina a necessidade de sistemas multiplos de seguranca/autenticac~ao operando independentemente em cada camada do protocolo de comunicac~ao, e permite a programac~ao em uma poltica de seguranca para a rede especca para cada aplicac~ao. Finalmente, uma abordagem formal utilizando especicac~oes rigorosas e seguranca baseada em tipos restritos pela linguagem pode ser utilizados para concluir sobre a polticas de protec~ao e os mecanismos de suas implementac~oes Gerenciamento ativo da rede Varias tarefas de gerenciamento da rede consistem na coleta e no exame dos dados conforme os eventos ocorrem. Para fornecer um conjunto de dados util, tal como indicac~oes de excec~ao, uma certa intelig^encia deve ser utilizada para ltrar eventos inexpressivos. Tecnologias ativas poderiam ser utilizadas para implementar abordagens sosticadas para monitorar a rede e ltrar eventos. Os componentes da rede, tais como roteadores, podem assumir a responsabilidade de monitorar a si proprios (por exemplo, atraves da injec~ao de programas customizados de monitorac~ao e diagnostico nos vizinhos mais proximos). De forma similar, redes ativas podem fornecer a exibilidade necessaria para aprimorar a detecc~ao de falhas e atualizar as polticas de sobreviv^encia que governam a resposta dos componentes as falhas correlacionadas, tais como aquelas causadas por terremotos ou invasores maliciosos. 3 Redes Ativas Pode-se distinguir duas abordagens principais para redes ativas, discreta e integrada, dependendo se os programas e os dados s~ao transportados de forma discreta, isto e, em mensagens separadas, ou de forma integrada, conforme e apresentado em [4] [1]. A seguir s~ao discutidas quest~oes relativas a estas duas abordagens. 3.1 Comutadores programaveis - uma abordagem discreta O processamento de mensagens pode ser arquiteturalmente separado do processo de injec~ao de programas em um no, com um mecanismo separado para cada func~ao. Usuarios enviariam pacotes atraves de nos programaveis da mesma forma que e feita atualmente. Quando o pacote chega, seu cabecalho e examinado e um programa e disparado para operar sobre o conteudo do pacote. O programa processa ativamente o pacote, possivelmente alterando o seu conteudo. Um grau de customizac~ao e possvel, pois o cabecalho da mensagem identica o programa que deve ser executa- 7

8 do. Portanto, e possvel executar diferentes programas para usuarios ou aplicac~oes diferentes. A separac~ao da execuc~ao e do carregamento do programa pode ser util quando e desejavel que o carregamento de programas seja cuidadosamente controlado ou quando os programas individualmente forem grandes. Esta abordagem e utilizada, por exemplo, na Rede Inteligente, padronizada pelo ITU-T. Na Internet, o carregamento do programa pode ser restrito ao operador do roteador, ao qual e fornecido uma \porta de fundos" atraves da qual este pode dinamicamente carregar codigo. Esta porta de fundos deve autenticar o operador e ainda realizar uma avaliac~ao no codigo que esta sendo carregado. Observa-se que permitir a operadores carregar codigo dinamicamente no roteadores seria util para estender as suas capacidades, mesmo que programas n~ao realizem computac~oes especcas de aplicac~oes ou usuarios. 3.2 Capsulas - Uma abordagem integrada Uma vis~ao mais extrema de redes ativas e aquela na qual toda mensagem e um programa. Toda mensagem, ou capsula, que passa nos nos contem um fragmento de programa (de pelo menos uma instruc~ao) que pode incluir dados embutidos. Quando uma capsula chega a um no ativo, seu conteudo e avaliado, da mesma forma que uma impressora Postscript interpreta o conteudo de cada arquivo que e enviado para esta. A gura 2 fornece uma vis~ao conceitual de como um no ativo deve ser organizado. Bits chegando nos enlaces de entrada s~ao processados por um mecanismo que identica os limites das capsulas, possivelmente utilizando mecanismos de enquadramento fornecido pelos protocolos tradicionais de enlace. Oconteudo da capsula e enviado para um ambiente de execuc~ao transiente onde pode ser seguramente avaliado. Sup~oe-se que os programas s~ao compostos de instruc~oes primitivas, que realizam computac~oes basicas no conteudo da capsula, e pode ainda chamar metodos externos, os quais podem fornecer acesso a recursos fora do ambiente transiente. A execuc~ao de uma capsula pode resultar no escalonamento de zero ou mais capsulas para transmiss~ao nos enlaces de sada e podem alterar o estado n~ao-transiente do no. Oambiente transiente e destrudo quando a avaliac~ao da capsula termina. alterando o seu conteudo. 3.3 Programac~ao com capsulas A distinc~ao entre as abordagens discreta e integrada e feita somente para efeito de compreens~ao. Em termos praticos, uma rede baseada na abordagem integrada 8

9 Armazenamento de componentes Processamento Ambiente Transiente de execução Quadro/Envio Escalonamento/Transmissão Figura 2: Organizac~ao de um no ativo poderia ser programada para emular a abordagem discreta e vice-versa. No entanto, as possibilidades oferecidas pela perspectiva integrada, principalmente no que diz respeito as novas formas de lancar computac~ao dentro da rede. Esta abordagem fornece uma estrutura para linguagem de programac~ao que possibilitou a sntese de recentes resultados na area de ambientes de programac~ao, sistemas operacionais e redes. Em aplicac~oes simples, a ac~ao de uma capsula visitando um no consiste em determinar o seu proximo destino ou salto e escalonar zero ou mais (possivelmente modicados) capsulas para transmiss~ao em enlaces selecionados. Sera necessario o fornecimento de mecanismos para determinac~ao e nomeac~ao de enlaces nos quais as capsulas ser~ao transmitidas. No protocolo IP, este mecanismo esta acoplado a cada no, e cada pacote precisa apenas conter o endereco de destino, isto e, estes pacotes n~ao precisam saber os enlaces pelos quais est~ao passando. Em esquemas de roteamento explcito puro, cada mensagem carrega a identidade de todos os enlaces pelos quais passa. O ideal seria obter uma abordagem intermediaria, onde cada capsula pode enumerar e avaliar dinamicamente os caminhos disponveis em um no, sem haver necessidade de um conhecimento detalhado no instante da composic~ao da capsula. Uma quest~ao importante diz respeito ao grau de acesso que e dado a uma capsula com relac~ao aos objetos, tais como tabelas de roteamento, que est~ao alem do ambiente de execuc~ao transiente. Em uma abordagem restrita, as capsulas poderiam ser auto-contidas. Embora isto seja suciente para implementar alguns programas interessantes, este modelo e de alguma forma connado. Existem tr^es formas pelas quais os programas poderiam atingir recursos que est~ao alem do ambiente transiente: Componentes de fundac~ao - servicos universalmente disponibilizados e implementados fora das capsula 9

10 Armazenamento ativo -a habilidade de modicar o estado em que o armazenamento em um no foi deixado apos a execuc~ao de uma capsula Extens~oes - permite a programas criarem novas classes e metodos Componentes de fundac~ao Os componentes de fundac~ao s~ao simplesmente metodos que implementam o acesso controlado dos programas aos recursos disponves nos nos. Um subconjunto destes componentes formara a API presente em tempo de execuc~ao de um programa. Outros componentes formam uma hierarquia de classes incorporada aos nos que servira como base para o desenvolvimento de programas de capsula. Muitas capsulas necessitar~ao de acesso a informac~oes e servicos especcos dos nos, tais como tabelas de roteamento e estado dos enlaces de transmiss~ao para este no. Utilizando componentes incorporados que fornecem acesso a estas informac~oes, uma determinada aplicac~ao poderia desenvolver capsulas que realizassem um processamento similar aquele realizado no cabecalho de um datagrama IP, como exemplo. Instruc~oes de processamento opcional e de multiponto podem estar disponveis. Para propositos de migrac~ao, poderiam ser desenvolvidos componentes padronizados que implementassem os tipos existentes do IP. Uma capsula carregando um datagrama IP, poderia conter uma unica e simples instruc~ao da forma \execute o metodo IP no restante da carga util". De outra perspectiva, poderia-se pensar nos roteadores existentes na Internet como sendo um subconjunto bastante restrito de nos ativos, nos quais o programa de cada capsula e carregado no campo tipo do protocolo IP. O conjunto de instruc~oes e restrito a metodos pre-denidos que correspondem aos valores conhecidos deste campo e implementam a funcionalidade padronizada do IETF Armazenamento ativo Seria vantajoso se as capsulas pudessem deixar informac~ao em um armazenamento n~ao-transiente nos nos. Uma conex~ao poderia ser aberta de forma que as capsulas fossem executadas em cada no de um caminho especco e que deixassem uma pequena quantidade de informac~ao contendo o estado associado em cada no que passasse. Capsulas subsequentes seguindo este caminho avaliariam o estado da conex~ao atraves da informac~ao deixada, e provavelmente atualizaria este estado. Uma abordagem similar poderia ser utilizada para realizar uxos, os quais s~ao de alguma forma mais exveis do que conex~oes. Toda capsula deveria incluir codigo que buscasse esta informac~ao de estado de uxo nos nos pelos quais passasse. No entanto, capsulas em uxos s~ao consideradas mais robustas do que capsulas em uma conex~ao, dado que a informac~ao de estado para capsulas em uma conex~ao n~ao seria 10

11 essencial para a correta execuc~ao de uma capsula. Se uma capsula em um uxo encontrar um no em que n~ao ha informac~ao de estado, esta gera a informac~ao dinamicamente, utiliza para seu proprios propositos e deixa outras informac~oes para serem utilizadas pelas proxima capsulas do uxo. Os nos da rede podem tratar estes estados de uxo como sendo soft states, que podem ser armazenados temporariamente e podem ser liberados se for necessario. Assim, os uxos s~ao menos exigentes que conex~oes, no que diz respeito a robustez do armazenamento no no. Eventualmente, podem ser desenvolvidas abordagens para suportar aplicac~oes do tipo das apresentadas na sec~ao 2.4.1, que v~ao alem de simples conex~oes e uxos. Por exemplo, capsulas poderiam ser programadas para se encontrarem em um determinado no, arranjando para que a primeira capsula que chegar determine alguma informac~ao de estado no no e \durma" ate achegada das outras. As capsulas poderiam de alguma forma se engajar em uma computac~ao conjunta, como no caso das aplicac~oes de fus~ao de informac~ao, ou se retirar de arvores multiponto. Finalmente, com isso nota-se que as capsulas s~ao capazes de modicar o armazenamento nos nos, fornecido um mecanismo uniforme de implementac~ao de func~oes de apoio. Protocolos de roteamento e atualizac~ao de tabelas poderiam ser implementadas em capsulas assim como func~oes de gerenciamento da rede, tais como aquelas fornecidas por SNMP. Func~oes de manutenc~ao que duram todo o tempo de trabalho do no poderiam ser implementadas desta maneira, embora nestes casos, os ambientes transientes de execuc~ao devam sobreviver ate o desligamento do no Extens~oes Os programas carregados nas capsulas devem ser pequenos com relac~ao a quantidade de dados carregada, pois sen~ao o mecanismo sera extremamente ineciente. Portanto, existe sentido em se desenvolver um ambiente de programac~ao que possa ser estendido, de forma que capsulas possam disponibilizar unicamente classes e metodos nos nos, para refer^encia de outras capsulas e metodos. Desta forma, a maior parte das capsulas pode ser concisa, com, possivelmente, uma unica instruc~ao invocando um metodo especico de um usuario sobre o resto do conteudo da capsula. Uma abordagem interessante seria fornecer um mecanismo que resolvesse refer^encias para metodos externos. Ao inves de capsulas explicitamente carregarem metodos na regi~ao de armazenamento n~ao-transiente do no, o no poderia conter uma regi~ao para armazenamento temporario (cache) de metodos externos conhecidos e ser equipado com um mecanismo que permitisse alocar e carregar dinamicamente metodos sob demanda. Embora esta abordagem sob demanda possa sofrer do problema de lat^encia, quando uma nova aplicac~ao e iniciada, isto pode ser deslocado 11

12 atraves da permiss~ao de capsulas enviadas em avanco para organizar o cache quando faltas s~ao antecipadas. A distinc~ao entre as abordagens de carregamento explcitas e sob demanda esta ntimamente relacionada a distinc~ao maior que foi feita entre abordagens discretas e integradas para redes ativas na sec~ao 3. Os casos em que temos as abordagens explcita e discreta, distingue o carregamento do programa como sendo uma atividade explcita que deve ser realizada antes do uso. Por outro lado, os casos de abordagem sob demanda e integrada oferecem uma maior exibilidade com relac~ao a determinac~ao e a temporizac~ao. Esta exibilidade possui um custo em termos de sosticac~ao dos mecanismos requeridos para suportar um carregamento seguro e eciente. 4 Modelo de programac~ao interoperavel Para que seja possvel a exist^encia de uma rede com multiplos nos, onde o codigo carregado nas capsulas seja util, e necessario que haja mobilidade de forma que os programas possam ser transmitidos atraves da rede, e portabilidade, de forma que possa ser carregado em diversas plataformas. Isto sugere o desenvolvimento de um numero relativamente pequeno de modelos padronizados para a programac~ao de nos da rede e a descric~ao e alocac~ao dos seus recursos. Os objetivos para estes modelos s~ao que eles suportem: Mobilidade - que e a habilidade de transferir capsulas e executa-las em um conjunto de plataformas que possuem tecnologias basicas diferentes Seguranca - a habilidade de restringir os recursos que as capsulas podem acessar Eci^encia - habilita a mobilidade e a seguranca sem comprometer a performance da rede, pelo menos nos casos mais comuns. As redes de pacotes tradicionais obt^em interoperabilidade atraves da padronizac~ao da sintaxe e da sem^antica dos pacotes. Por exemplo, os roteadores na Internet suportam a especicac~ao do IP. Embora implementac~oes de roteadores possam diferir, estes implementam basicamente programas \equivalentes". Ao contrario, nos ativos podem executar varios programas diferentes nos pacotes uindo atraves deles. A interoperabilidade e obtida em um nvel mais alto de abstrac~ao. Ao inves de padronizarmos a computac~ao realizada em cada pacote, padroniza-se o modelo computacional, isto e, o conjunto de instruc~oes e os recursos disponveis para os programas de capsulas. O modelo de programac~ao das capsulas deve ser interoperavel entre os diversos nos ativos. Isto signica que estes devem suportar a representac~ao na qual foi feito 12

13 o programa que foi encapsulado, de forma coerente. Varias quest~oes s~ao abordadas no desenvolvimento de um modelo de programac~ao que envolvem a representac~ao e aavaliac~ao das capsulas, e o acesso seguro aos recursos dos nos da rede. Asub-sec~ao 4.1 apresenta as quest~oes relacionadas a representac~ao e a avaliac~ao, e na sub-sec~ao 4.2 s~ao discutidas as quest~oes envolvendo o acesso aos recursos e seguranca nos nos. 4.1 Mobilidade, seguranca e eci^encia nos programas encapsulados Uma discuss~ao dos programas em capsulas e apresentada em [1]. Esta discuss~ao considera as linguagens nas quais os programas podem ser expressados e os mecanismos que suportam a sua execuc~ao segura e eciente. Cada capsula e avaliada dentro de um ambiente de execuc~ao transiente por suposic~ao, cujo tempo de vidae o intervalo durante o qual e avaliada em um dado no. Propriedades de seguranca s~ao obtidas atraves da restric~ao do acesso aos recursos dos nos que podem ser realizadas no seu escopo, como exemplo, o acesso ao armazenamento Primitivas de capsulas Existe um conjunto limitado de ac~oes primitivas que as capsulas podem realizar sem ultrapassar os limites dos seus ambientes transientes. Estas ac~oes constituem uma linguagem de programac~ao restrita, ou conjunto de instruc~oes, que podem realizar operac~oes aritmeticas e testes condicionais, manipular a pilha e a heap do ambiente transiente. O conjunto de ac~oes primitivas sera estendido atraves da adic~ao de chamada de metodos externos, o qual provera acesso a recursos alem do ambiente transiente. Alguns destes metodos externos se utilizar~ao das mesmas ac~oes primitivas e ser~ao tambem avaliadas em um ambiente fechado com uma distinc~ao abrupta entre ac~oes auto-contidas e seus acessos a outros metodos. Outros acessar~ao a API incorporada no ambiente de execuc~ao dos nos ou no sistema operacional embutido. A API de nos de rede ativos sera distinguida pela disponibilidade de metodos desenvolvidos especicamente para o ambiente de rede, tais como copia eciente de capsulas e controle sosticado sobre o escalonamento dos recursos de transmiss~ao. Para propositos de interoperabilidade todos os nos ativos em um caminho de uma capsula devem ser capazes de avaliar o conteudo desta. Existem tr^es formas de se obter este nvel de portabilidade/mobilidade: Expressar os programas em uma linguagem de alto nvel que pode ser interpretada nos nos 13

14 Adotar uma representac~ao independente de plataforma, tipicamente um conjunto de instruc~oes em bytecodes Expressar programas em um formato binario dependente da plataforma e organizar cada capsula de forma que carregue multiplas codicac~oes do programas, suportortando todos os nos ativos pelos quais vai passar. A utilizac~ao de um codigo-fonte de alto nvel permite um rapido desenvolvimento e prototipagem. Ja uma representac~ao intermediaria pode fornecer uma forma compacta e relativamente eciente de expressar programas relativamente curtos. Metodos externos podem ser codicados ou expressados em um formato dependente da maquina. Componentes muito utilizados podem ser armazenados em bibliotecas binarias, principalmente bibliotecas de bootstrap que permitem aos administradores inicializar plataformas novas ou reparadas Execuc~ao segura e eciente O desenvolvimento de redes ativas se da devido a disponibilidade de tecnologias ativas. Estas tecnologias s~ao mecanismos que permitem que usuarios injetem programas em recursos compartilhados. Ate agora o uso de tecnologias ativas ocorreu somente m-a-m, isto e enviando codigo de clientes para servidores e vice-versa. A proposta das redes ativas e promover o uso destes mecanismos em redes de computadores. No caso das redes de computadores, os recursos compartilhados em quest~ao s~ao os roteadores, comutadores e servidores que est~ao presentes dentro da rede. As tecnologias ativas surgiram nos campos de sistemas operacionais e linguagens de programac~ao por mais de dez anos. Trabalhos recentes, em geral, tenderam a particularizar uma de tr^es importantes caractersticas, que s~ao: mobilidade, eci^encia ou seguranca. A linguagem Postscript e um exemplo de um desenvolvimento enfocando mobilidade em contra-posic~ao a seguranca. Aplicac~oes geram programas moveis que s~ao executados nas impressoras, os quais s~ao compartilhados e distribudos pela rede. No campo de processamento paralelo, mensagens ativas, enfocam eci^encia em contra-posic~ao a mobilidade, atraves da reduc~ao de programas a uma unica instruc~ao. Cada instruc~ao chama um manipulador especco de cada aplicac~ao residente no recipiente. O manipulador fornece um mecanismo para envio de mensagens que chegam, de forma que sejam tratadas como computac~oes auto-escalonaveis. Estes sistemas, que t^em como objetivo acomunicac~ao interna em um unico complexo de processamento paralelo, n~ao considera as caractersticas de seguranca relevantes as infraestruturas compartilhadas. O advento dos sistemas distribudos heterog^eneos edasredes de computadores acelerou as pesquisas para estas tecnologias. Ox-kernel [1] suporta a composic~ao de 14

15 manipuladores de protocolo pelo estabelecimento de uma arquitetura regular para o seu empilhamento e pela automatizac~ao do processo de envio. Outros esforcos possuem foco em ambientes menos amigaveis pela melhora de ambos a seguranca e aeci^encia sobre os quais manipuladores podem ser implementados. Recentemente, tem havido esforcos para aplicar as tr^es caractersticas (mobilidade, seguranca e eci^encia) atraves de sistemas operacionais conguraveis, agentes moveis, applets e outras abordagens relacionadas a Internet. Como foi mencionado, as redes ativas se prop~oem a estender estas tecnologias ativas para uso nas redes de computadores. No geral, estas tecnologias fornecem uma execuc~ao segura pela restric~ao do conjunto de ac~oes primitivas disponveis para programas moveis e do escopo dos seus operandos, por exemplo, o acesso ao armazenamento e outros recursos. Uma quest~ao interessante e como organizar os connamentos que fornecem a base para um execuc~ao segura. O primeiro e restringir o espaco de nomeac~ao de cada capsula ao seu ambiente transiente de execuc~ao. Esta poltica de connamento pode ser exibilizada pela inicializac~ao do connamento com um conjunto default de componentes de fundac~ao que todas as capsulas est~ao habilitadas a acessar. Toda capsula que acessa metodos que acessam metodos fora do espaco devem requerer que o seu connamento seja estendido atraves de um mecanismo de autenticac~ao. A seguir sera feita uma discuss~ao a respeito das tecnologias disponveis, em termos de codicac~ao de programas, e introduc~ao do conceito de compilac~ao Justin-Time (JIT). Codigo-fonte: O Safe-Tcl e um exemplo de uma linguagem que obtem seguranca atraves da interpretac~ao de um programa-fonte e do connamento ao seu espaco de nomeac~ao. A seguranca deste sistema decorre do connamento restrito e da corretude do interpretador, o qual pode prevenir que programas ultrapassem os limites do ambiente transiente de execuc~ao. Avantagem da utilizac~ao de sistemas baseados na abordagem do Tcl e que os programas podem ser lidos por pessoas normalmente e programas simples podem ser compostos rapidamente. Ainda mais, a representac~ao baseada em caracter torna facil o desenvolviemento de programas que geram novos fragmentos-fonte. A principal desvantagem e ooverhead da interpretac~ao do codigo, o qual e composto pela codicac~ao de todos os tipos de dados como sendo strings. Uma desvantagem adicional e o tamanho total do programa, que poderia ser reduzido a custo de compreens~ao, atraves do uso de compress~ao. Codigo intermediario: A linguagem Java obtem mobilidade atraves do uso de um conjunto inter- 15

16 mediario de instruc~oes [6]. Tradicionalmente, a execuc~ao segura de codigo intermediario se baseia na interpretac~ao cuidadosa do codigo de instruc~oes intermediario. Uma das principais contribuic~oes da linguagem Java e a observac~ao de que um ganho signicativo pode ser realizado se algumas responsabilidades forem retiradas do interpretador. O conjunto de instruc~oes, e o seu uso aprovado, s~ao desenvolvidos de forma a reduzir o grau de validac~ao de operandos que o interpretador deve realizar para cada instruc~ao executada. Em parte, isto e possvel pelo desenvolvimento de um conjunto de instruc~oes que impossibilite certos casos que normalmente deveriam ser inspecionados. Isto e possvel tambem devido a inspec~ao estatica do codigo antes de ser executado. Codigo dependente da plataforma Os programas binarios dependentes da plataforma, s~ao em grande parte diretamente executados pelo hardware. Para uma execuc~ao segura de tais fragmentos de programa, o conjunto de instruc~oes e o espaco de enderecamento devem ser restritos. A abordagem adotada nos sistemas operacionais tradicionais tem sido baseada em mecanismos pesados e robustos, tais como processos e protec~ao por hardware do espaco de enderecamento. No entanto, tem havido um grande progresso em duas abordagens mais leves: { O projeto SPIN se baseia nas propriedades da linguagem Modula 3 e um compilador dedigno para gerar programas que n~ao ultrapassam os limites de um ambiente restrito. Quando um programa se apresenta para execuc~ao, o sistema de execuc~ao verica que a sequ^encia de instruc~oes foi gerada por um compilador conavel e n~ao foi modicada { Outra abordagem descreve um conjunto de regras que sequ^encias devem aderir, tais como restric~oes na aritmetica de enderecmanto. Em conjunto comumsuportedeexecuc~ao e um conjunto de tecnicas, estas regras denem um \sandbox" dentro do qual o programa possui completo domnio. Um importante aspecto deste trabalho, e que a conformidade com as regras pode ser estatisticamente vericada quando uma sequ^encia de instruc~oes e apresentada para execuc~ao. Em ambos os casos, e assumida uma tecnologia de compiladores sosticada que sera utilizada para gerar um codigo \seguro". A distinc~ao e seocodigo e independentemente validado pela plataforma receptora, ou se os compiladores e/ou vendedores s~ao autorizados e obrigados a \assinar" seu codigo. A primeira abordagem expande a mobilidade alem dos limites administrativos. A outra abordagem economiza o overhead de validac~ao, mas tambem permite ao compilador gerar codigo que e mais eciente. Em ambos os casos, o resultado esperado seria que a performance do codigo executavel binario seria superior 16

17 a do formato interpretado. Compilac~ao Just-in-Time: Uma compilac~ao Just-in-Time gera o codigo binario de um programa, em uma linguagem qualquer, em tempo de execuc~ao, permitindo uma melhor performance na execuc~ao. Trabalhos recentes tem possibilitado a compilac~ao em tempo de execuc~ao com um dialeto da linguagem C. Isto permite que programas-fonte sejam automaticamente ajustados, ou mesmo completamente gerados em tempo de execuc~ao. Em conjunto com as sandboxs, esta tecnologia poderia permitir que nos ativos realizassem a sua propria traduc~ao nas capsulas que est~ao processando. Atualmente ja existem maquinas virtuais em fase de teste, que realizam a compilac~ao JIT para a linguagem Java. Estas realizam a covers~ao do codigo Java para o codigo nativo em tempo de execuc~ao. Tecnologias de compilac~ao em tempo de execuc~ao s~ao essencias para o trabalho em redes ativas, pois viabilizam esta arquitetura. Roteadores IP modernos obtem uma performance razoavel atraves do ajuste cuidadoso de seus \caminhos mais rapidos", tipicamente pela otimizac~ao de uma sequ^encia de instruc~oes mnima que processa a maior parte do trafego e relega a parte mais complexa para outros modulos. Um no ativo pode obter um aumento similar na performance atraves da monitorac~ao do seu trafego e dinamicamente gerando um programa de caminho rapido que direciona a execuc~ao dos programas de capsula mais comuns. Tecnicas tais como o escalonamento por caminho pode ser igualmente aplicadas [1]. 4.2 Gerenciamento dos recursos dos nos Ainteroperabilidade entre os diversos nos ativos, no que diz respeito aos programas contidos nas capsulas, e conseguida atraves do estabelecimento de um conjunto de abstrac~oes dos recursos disponveis. Todos os nos ativos devem respeitar a nomeac~ao dada para estas abstrac~oes, sendo as quest~oes de eci^encia e seguranca problemas de implementac~ao local. Em [1] e feita uma proposta de um conjunto pequeno de abstrac~oes baseadas nos recursos que devem estar disponveis apresentados nas sec~oes anteriores. A seguir e apresentado o conjunto de abstrac~oes para especicac~ao de recursos e algumas de suas caractersticas, e depois s~ao apresentadas quest~oes sobre seguranca no acesso aos recursos. 17

18 4.2.1 Especicac~ao de recursos O sistema em discuss~ao possibilita que cada capsula acesse um determinado conjunto de recursos. Deve-se acrescentar o fato que diversas delas estar~ao acessando recursos simultaneamente. Contudo, assume-se que a maior parte das capsulas n~ao necessitara de um modelo de recursos sosticado. Assim, prop~oe-se um pequeno conjunto de abstrac~oes independentes da plataforma para os recursos fsicos da rede, que s~ao: banda passante de transmiss~ao, capacidade de processamento e armazenamento transiente. Aumenta-se a exibilidade atraves de armazenamento de longo-prazo e de acesso a recursos logicos, utilizado por aplicac~oes avancadas tais como descobrimento de topologia, roteamento eger^encia de rede. A abstrac~ao do enlace deve considerar as unidades de alocac~ao de banda e os padr~oes de trafego gerados. Isto sugere que uma abordagem mais detalhada em termos de modelagem de servico deve ser realizada para esta abstrac~ao. Em alguns ambientes, esquemas simples podem ser adotados, permitindo que cada programa de capsula consuma uma quantidade de banda de transmiss~ao que e proporcional ao tamanho total da capsula. Oambiente de execuc~ao transiente consome um armazenamento de curto prazo, o qual pode ser limitado. Duas quest~oes importantes com relac~ao ao armazenamento temporario s~ao a quantidade de armazenamento entregue a uma capsula e o intervalo de tempo em que a capsula utiliza este espaco de armazenamento. A quantidade de armazenamento temporario utilizada pode ser limitada por um valor default durante a avaliac~ao de uma capsula. Com relac~ao ao intervalo de tempo maximo de utilizac~ao, a expectativa e de que a maior parte das capsulas completara sua tarefa rapidamente. No entanto, algumas capsulas podem demorar, principalmente aquelas que tem encontro marcado com outras capsulas. Uma soluc~ao para este problema e a utilizac~ao de um mecanismo de garbage collection, que liberara as regi~oes em que capsulas se puseram para hibernar, e assim permaneceram por um intervalo de tempo muito longo. A liberac~ao e determinada pelo estouro de um temporizador. Para os requisitos identicados de armazenamento de metodos externos e dados que sobrevivem a execuc~ao de uma capsula, existe a abstrac~ao de armazenamento ativo. Este tipo de armazenamento pode ser dividido em dois tipos: volatil e persistente. O armazenamento volatil e utilizado para objetos de cache, tais como soft state de uxos e componentes carregados sob demanda. Ja o armazenamento persistente fornece uma abstrac~ao de longo prazo para armazenamento de informac~ao que deve ser armazenada de forma conavel, tais como registros de eventos para propositos de auditoria e contabilidade. Diversas classes que implementam os recursos logicos s~ao especcas de cada 18

19 aplicac~ao tais como metodos externos e estado dos uxos, e est~ao envolvidas com o armazenamento ativo, como foi visto. No entanto, diversas classes devem ser de uso comum, isto e, ser~ao acessadas por diversas capsulas e funcionam como um repositorio para informac~oes comuns a todas as capsulas Seguranca dos recursos A manipulac~ao segura dos recursos de um no pode ser particionado em tr^es tipos de atividades: Atribuic~ao din^amica: os recursos s~ao sempre acessados por metodos externos, e portantooconjunto de recursos disponvel e dado pelo connamento estabelecido no qual a capsula foi iniciada. Um mecanismo pode ser utilizado para estender o conjunto disponvel para uma capsula, baseado em autenticac~ao. Validac~ao: ocodigo vindo com uma capsula deve servalidado, de forma que o no autorize o acesso aos recursos disponveis. Assume-se que um mecanismo de criptograa sera a base para o mecanismo de autenticac~ao. Por exemplo, um esquema de chave publica poderia ser utilizado para realizar uma autenticac~ao inicial e que estabelecesse um soft state que seria utilizado por um algoritmo de assinatura por capsula, mais leve. Delegac~ao: a partir do mecanismo de autenticac~ao observado, pecebe-se a necessidade de um mecanismo de delegac~ao automatica de autorizac~oes, de acordo com um modelo em que ambos os administradores e implementadores concordem. 5 Uma proposta para IP sobre redes ativas Em [3], e feita uma proposta para extens~ao do mecanismo de opc~oes do protocolo de rede IP de forma que seja possvel o transporte de fragmentos de programas. O mecanismo de opc~oes no IP foi utilizado como ponto de partida pois existe justamente para acomodar um processamento agregado que n~ao esta relacionado com o caso comum. As opc~oes do IP tem sido utilizadas para processamento n~ao usual de datagramas, tipicamente para monitorar e medir a rede. Como exemplo, tem-se o controle da rota desde a sua fonte, gravar a rota seguida e agregar informac~ao de temporizac~ao. A gura 3 apresenta o formato do campo de opc~ao para o IP ativo. Para o IPv6 [9], prop~oe-se a utilizac~ao dos cabecalhos de extens~ao de opc~oes salto-a-salto (Hop-by-hop options header) e o de opc~oes ao destino tipo 1 (Destination options header). O primeiro cabecalho permite que todos os nos executem o fragmento de codigo que e carregado pelo datagrama. O segundo sera avaliado 19

20 Cabeçalho IP Dados do usuário Opção ativa Ativo:63 (var) Cod. : TCL if { [no] == [destino]} [reply_ip...] tipo tamanho valor Figura 3: Formato do campo de opc~ao para o IP ativo somente pelos nos identicados pelo cabecalho de extens~ao de rota explcita (source routing), que tambem deve fazer parte do datagrama. Os cabecalhos s~ao identi- cados pelos valores 0 (opc~ao salto-a-salto) e 59 (opc~ao ao destino) nos campos Next Header do cabecalho anterior. A gura 4 apresenta o formato do cabecalho de opc~oes que e igual para as duas possibilidades. Next header Tam cab ext Uma ou mais opções Formato do cabecalho de opções Ativo:63 (Var) if {[no]==[destination]} (reply..) Formato de opção Tipo Tamanho Valor Figura 4: Formato dos cabecalhos de opc~oes para IPv6 A proposta para o IP ativo fornece um mecanismo para embutir fragmentos de programas em um datagrama IP. Estes fragmentos s~ao inseridos nos campos de opc~oes apresentados nas guras 3 e 4. Assim, os fragmentos s~ao executados por roteadores ativos ao longo do caminho seguido pelos datagramas. Conceitualmente, 20

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

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

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso

Leia mais

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Aula passada Threads Threads em SDs Processos Clientes Processos Servidores Aula de hoje Clusters de Servidores Migração de Código Comunicação (Cap. 4) Fundamentos

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

Software de rede e Modelo OSI André Proto UNESP - São José do Rio Preto andre.proto@sjrp.unesp.br O que será abordado Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços

Leia mais

28/9/2010. Paralelismo no nível de instruções Processadores superescalares

28/9/2010. Paralelismo no nível de instruções Processadores superescalares Arquitetura de Computadores Paralelismo no nível de instruções Processadores superescalares Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Processadores superescalares A partir dos resultados

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

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

Arquitetura e Protocolos de Rede TCP/IP. Modelo Arquitetural

Arquitetura e Protocolos de Rede TCP/IP. Modelo Arquitetural Arquitetura e Protocolos de Rede TCP/IP Modelo Arquitetural Motivação Realidade Atual Ampla adoção das diversas tecnologias de redes de computadores Evolução das tecnologias de comunicação Redução dos

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário

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

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

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de

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

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

Roteamento e Comutação

Roteamento e Comutação Roteamento e Comutação Design de Rede Local Design Hierárquico Este design envolve a divisão da rede em camadas discretas. Cada camada fornece funções específicas que definem sua função dentro da rede

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

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Conceitos básicos e serviços do Sistema Operacional Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Tipos de serviço do S.O. O S.O.

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

Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo

Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo Introdução O que é Protocolo? - Para que os pacotes de dados trafeguem de uma origem até um destino, através de uma rede, é importante

Leia mais

Professor: Macêdo Firmino Disciplina: Sistemas Operacionais de Rede

Professor: Macêdo Firmino Disciplina: Sistemas Operacionais de Rede Professor: Macêdo Firmino Disciplina: Sistemas Operacionais de Rede O sistema de nome de domínio (DNS) é um sistema que nomeia computadores e serviços de rede e é organizado em uma hierarquia de domínios.

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

ESTUDOS REALIZADOS. Camada Física. Redes de Computadores AULA 13 CAMADA DE REDE. Camada Física Camada de Enlace Subcamada de Acesso ao Meio AGORA:

ESTUDOS REALIZADOS. Camada Física. Redes de Computadores AULA 13 CAMADA DE REDE. Camada Física Camada de Enlace Subcamada de Acesso ao Meio AGORA: Redes de Computadores AULA 13 CAMADA DE REDE Profº Alexsandro M. Carneiro Outubro - 2005 ESTUDOS REALIZADOS Camada Física Camada de Enlace Subcamada de Acesso ao Meio AGORA: Camada de Rede Camada Física

Leia mais

IW10. Rev.: 02. Especificações Técnicas

IW10. Rev.: 02. Especificações Técnicas IW10 Rev.: 02 Especificações Técnicas Sumário 1. INTRODUÇÃO... 1 2. COMPOSIÇÃO DO IW10... 2 2.1 Placa Principal... 2 2.2 Módulos de Sensores... 5 3. APLICAÇÕES... 6 3.1 Monitoramento Local... 7 3.2 Monitoramento

Leia mais

Protocolo TCP/IP. Protocolo TCP/IP. Protocolo TCP/IP. Protocolo TCP/IP. Conexão de Redes. Protocolo TCP/IP. Arquitetura Internet.

Protocolo TCP/IP. Protocolo TCP/IP. Protocolo TCP/IP. Protocolo TCP/IP. Conexão de Redes. Protocolo TCP/IP. Arquitetura Internet. Origem: Surgiu na década de 60 através da DARPA (para fins militares) - ARPANET. Em 1977 - Unix é projetado para ser o protocolo de comunicação da ARPANET. Em 1980 a ARPANET foi dividida em ARPANET e MILINET.

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

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Processos- Clientes, Servidores, Migração Capítulo 3 Agenda Clientes Interfaces de usuário em rede Sistema X Window Software do lado cliente para

Leia mais

Sistemas Operacionais 3º bimestre. Dierone C.Foltran Jr. dcfoltran@yahoo.com

Sistemas Operacionais 3º bimestre. Dierone C.Foltran Jr. dcfoltran@yahoo.com Sistemas Operacionais 3º bimestre Dierone C.Foltran Jr. dcfoltran@yahoo.com Sistema de Arquivos (1) Todas as aplicações precisam armazenar e recuperar informações. Considerações sobre os processos: Espaço

Leia mais

5 Mecanismo de seleção de componentes

5 Mecanismo de seleção de componentes Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações

Leia mais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais Notas da Aula 15 - Fundamentos de Sistemas Operacionais 1. Software de Entrada e Saída: Visão Geral Uma das tarefas do Sistema Operacional é simplificar o acesso aos dispositivos de hardware pelos processos

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br CENTRO UNIVERSITÁRIO DE VOLTA REDONDA UniFOA Curso Tecnológico de Redes de Computadores Disciplina: Redes Convergentes II Professor: José Maurício S. Pinheiro

Leia mais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais Arquitetura de Computadores Introdução aos Sistemas Operacionais O que é um Sistema Operacional? Programa que atua como um intermediário entre um usuário do computador ou um programa e o hardware. Os 4

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

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

MODELO CLIENTE SERVIDOR

MODELO CLIENTE SERVIDOR SISTEMAS DISTRIBUÍDOS Modelo Cliente Servidor Modelo que estrutura um S.O. como um grupo de processos cooperantes, chamados servidores, que oferecem serviços a processos usuários, denominados clientes;

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

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

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

3 Arquitetura do Sistema

3 Arquitetura do Sistema 3 Arquitetura do Sistema Este capítulo irá descrever a arquitetura geral do sistema, justificando as decisões de implementação tomadas. Na primeira seção iremos considerar um conjunto de nós interagindo

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

UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTÁTISTICA GRADUAÇÃO EM CIÊNCIAS DA COMPUTAÇÃO DISCIPLINA: COMUNICAÇÃO DE DADOS

UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTÁTISTICA GRADUAÇÃO EM CIÊNCIAS DA COMPUTAÇÃO DISCIPLINA: COMUNICAÇÃO DE DADOS UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTÁTISTICA GRADUAÇÃO EM CIÊNCIAS DA COMPUTAÇÃO DISCIPLINA: COMUNICAÇÃO DE DADOS PROFESSOR: CARLOS BECKER WESTPHALL Terceiro Trabalho

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

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Sistemas Distribuídos. Introdução

Sistemas Distribuídos. Introdução Sistemas Distribuídos Introdução Definição Processos Um sistema distribuído é um conjunto de computadores independentes, interligados por uma rede de conexão, executando um software distribuído. Executados

Leia mais

Rede de Computadores II

Rede de Computadores II Rede de Computadores II Slide 1 Roteamento Determinar o melhor caminho a ser tomado da origem até o destino. Se utiliza do endereço de destino para determinar a melhor rota. Roteador default, é o roteador

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi 5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem

Leia mais

Protocolos Hierárquicos

Protocolos Hierárquicos Protocolos Hierárquicos O que é a Internet? Milhões de elementos de computação interligados: hospedeiros = sistemas finais Executando aplicações distribuídas Enlaces de comunicação fibra, cobre, rádio,

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

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

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

A camada de rede. A camada de rede. A camada de rede. 4.1 Introdução. 4.2 O que há dentro de um roteador

A camada de rede. A camada de rede. A camada de rede. 4.1 Introdução. 4.2 O que há dentro de um roteador Redes de computadores e a Internet Capitulo Capítulo A camada de rede.1 Introdução.2 O que há dentro de um roteador.3 IP: Protocolo da Internet Endereçamento IPv. Roteamento.5 Roteamento na Internet (Algoritmos

Leia mais

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS SERVIÇOS DE ACESSO REMOTO (TELNET E TERMINAL SERVICES) Professor Carlos Muniz

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS SERVIÇOS DE ACESSO REMOTO (TELNET E TERMINAL SERVICES) Professor Carlos Muniz ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS SERVIÇOS DE ACESSO REMOTO (TELNET E O que é roteamento e acesso remoto? Roteamento Um roteador é um dispositivo que gerencia o fluxo de dados entre segmentos da rede,

Leia mais

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com Última atualização: 20.03.2013 Conceitos Banco de dados distribuídos pode ser entendido como uma coleção de múltiplos bds

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto

Leia mais

Redes de Computadores. Prof. Dr. Rogério Galante Negri

Redes de Computadores. Prof. Dr. Rogério Galante Negri Redes de Computadores Prof. Dr. Rogério Galante Negri Rede É uma combinação de hardware e software Envia dados de um local para outro Hardware: transporta sinais Software: instruções que regem os serviços

Leia mais

Esclarecimento: As versões dos navegadores a serem utilizadas pelo PSIM estão descrito no item 2.4.1.12 do projeto básico.

Esclarecimento: As versões dos navegadores a serem utilizadas pelo PSIM estão descrito no item 2.4.1.12 do projeto básico. 1 Dúvida: Por favor, nos explique alguns casos tipicos de uso para o monitoramento central? Esclarecimento: Recepção e tratamento de eventos provenientes da central de alarme, validação de ocorrências

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

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

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Basedos na Web Capítulo 12 Agenda Arquitetura Processos Comunicação Nomeação Sincronização Consistência e Replicação Introdução

Leia mais

MÓDULO 8 Modelo de Referência TCP/IP

MÓDULO 8 Modelo de Referência TCP/IP MÓDULO 8 Modelo de Referência TCP/IP A internet é conhecida como uma rede pública de comunicação de dados com o controle totalmente descentralizado, utiliza para isso um conjunto de protocolos TCP e IP,

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

Leia mais

3 SCS: Sistema de Componentes de Software

3 SCS: Sistema de Componentes de Software 3 SCS: Sistema de Componentes de Software O mecanismo para acompanhamento das chamadas remotas se baseia em informações coletadas durante a execução da aplicação. Para a coleta dessas informações é necessário

Leia mais

Multiprocessamento. Multiprocessadores com memória distribuída (multicomputador)

Multiprocessamento. Multiprocessadores com memória distribuída (multicomputador) Multiprocessamento Multiprocessadores com memória distribuída (multicomputador) Conjunto de processadores, cada qual com sua memória local Processadores se comunicam por troca de mensagens, via rede de

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

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento Professor Rene - UNIP 1 Roteamento Dinâmico Perspectiva e histórico Os protocolos de roteamento dinâmico são usados

Leia mais

PLANOS DE CONTINGÊNCIAS

PLANOS DE CONTINGÊNCIAS PLANOS DE CONTINGÊNCIAS ARAÚJO GOMES Capitão SC PMSC ARAÚJO GOMES defesacivilgomes@yahoo.com.br PLANO DE CONTINGÊNCIA O planejamento para emergências é complexo por suas características intrínsecas. Como

Leia mais

Aula 6 Modelo de Divisão em Camadas TCP/IP

Aula 6 Modelo de Divisão em Camadas TCP/IP Aula 6 Modelo de Divisão em Camadas TCP/IP Camada Conceitual APLICATIVO TRANSPORTE INTER-REDE INTERFACE DE REDE FÍSICA Unidade de Dados do Protocolo - PDU Mensagem Segmento Datagrama /Pacote Quadro 01010101010100000011110

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

Redes de computadores e a Internet. Capitulo 4. Capítulo. A camada de rede

Redes de computadores e a Internet. Capitulo 4. Capítulo. A camada de rede Redes de computadores e a Internet 4 Capitulo 4 Capítulo A camada de rede A camada de rede Objetivos do capítulo: Entender os princípios dos serviços da camada de rede: Roteamento (seleção de caminho)

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Roteamento IP Redes de Computadores Objetivo Conhecer o modelo de roteamento da arquitetura TCP/IP Entender os conceitos básicos de algoritmo, métrica, tabela e protocolos de roteamento

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

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho 20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam

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

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 5-1. A CAMADA DE TRANSPORTE Parte 1 Responsável pela movimentação de dados, de forma eficiente e confiável, entre processos em execução nos equipamentos conectados a uma rede de computadores, independentemente

Leia mais

REDES DE COMPUTADORES. Arquiteturas de Redes

REDES DE COMPUTADORES. Arquiteturas de Redes REDES DE COMPUTADORES Arquiteturas de Redes Agenda Necessidade de Padronização Protocolos e Padrões Órgãos de Padronização Conceitos de Arquitetura em Camadas Arquitetura de Redes OSI TCP/IP Necessidade

Leia mais

Redes de computadores. Redes para Internet

Redes de computadores. Redes para Internet Redes de computadores Redes para Internet Milhões de elementos de computação interligados: hospedeiros = sistemas finais Executando aplicações distribuídas Enlaces de comunicação fibra, cobre, rádio, satélite

Leia mais

O que são DNS, SMTP e SNM

O que são DNS, SMTP e SNM O que são DNS, SMTP e SNM O DNS (Domain Name System) e um esquema de gerenciamento de nomes, hierárquico e distribuído. O DNS define a sintaxe dos nomes usados na Internet, regras para delegação de autoridade

Leia mais

1. CAPÍTULO COMPUTADORES

1. CAPÍTULO COMPUTADORES 1. CAPÍTULO COMPUTADORES 1.1. Computadores Denomina-se computador uma máquina capaz de executar variados tipos de tratamento automático de informações ou processamento de dados. Os primeiros eram capazes

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

Leia mais

Sistemas Distribuídos: Conceitos e Projeto Threads e Migração de Processos

Sistemas Distribuídos: Conceitos e Projeto Threads e Migração de Processos Sistemas Distribuídos: Conceitos e Projeto Threads e Migração de Processos Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA http://www.lsd.deinf.ufma.br

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Comunicação- Protocolos, Tipos, RPC Capítulo 4 Agenda Protocolos em Camadas Pilhas de Protocolos em Sistemas Distribuídos Tipos de Comunicação

Leia mais

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação Multiplexadores Permitem que vários equipamentos compartilhem um único canal de comunicação Transmissor 1 Receptor 1 Transmissor 2 Multiplexador Multiplexador Receptor 2 Transmissor 3 Receptor 3 Economia

Leia mais

Sumário INTRODUÇÃO... 4 PROTOCOLO ARP...5 ARP - ADDRESS RESOLUTION PROTOCOL...5 FUNCIONAMENTO DO PROTOCOLO ARP...5 CACHE ARP... 6

Sumário INTRODUÇÃO... 4 PROTOCOLO ARP...5 ARP - ADDRESS RESOLUTION PROTOCOL...5 FUNCIONAMENTO DO PROTOCOLO ARP...5 CACHE ARP... 6 IESPLAN Instituto de Ensino Superior Planalto Departamento de Ciência da Computação Curso: Ciência da Computação Disciplina: Engenharia de Software Professor: Marcel Augustus O Protocolo ARP Brasília,

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

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA

SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA 1. INTRODUÇÃO O conceito de concorrência é o princípio básico para o projeto e a implementação dos sistemas operacionais multiprogramáveis. O sistemas multiprogramáveis

Leia mais

Faculdades Santa Cruz - Inove. Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira.

Faculdades Santa Cruz - Inove. Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira. Período letivo: 4 Semestre. Quinzena: 5ª. Faculdades Santa Cruz - Inove Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira. Unidade Curricular Sistemas Distribuídos Processos

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

Aula 03-04: Modelos de Sistemas Distribuídos

Aula 03-04: Modelos de Sistemas Distribuídos UNIVERSIDADE Computação Aula 03-04: Modelos de Sistemas Distribuídos 2o. Semestre / 2014 Prof. Jesus Principais questões no projeto de um sistema distribuído (SD) Questão de acesso (como sist. será acessado)

Leia mais

1.6. Tratamento de Exceções

1.6. Tratamento de Exceções Paradigmas de Linguagens I 1 1.6. Tratamento de Exceções Uma exceção denota um comportamento anormal, indesejado, que ocorre raramente e requer alguma ação imediata em uma parte do programa [GHE 97, DER

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 SISTEMA DE INTERCONEXÃO (BARRAMENTOS) Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Componentes estruturais: Memória Principal Unidade de Processamento Central

Leia mais

Prof. Manuel A Rendón M

Prof. Manuel A Rendón M Prof. Manuel A Rendón M Tanenbaum Redes de Computadores Cap. 1 e 2 5ª. Edição Pearson Padronização de sistemas abertos à comunicação Modelo de Referência para Interconexão de Sistemas Abertos RM OSI Uma

Leia mais