UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA PROJETO DE GRADUAÇÃO OZIANDER PAULA NUNES

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

Download "UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA PROJETO DE GRADUAÇÃO OZIANDER PAULA NUNES"

Transcrição

1 UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO TECNOLÓGICO DEPARTAMENTO DE INFORMÁTICA PROJETO DE GRADUAÇÃO OZIANDER PAULA NUNES AVALIAÇÃO DE UM PROTOCOLO LEVE NO CLUSTER DE COMPUTADORES DO DI/UFES VITÓRIA 2003

2 OZIANDER PAULA NUNES AVALIAÇÃO DE UM PROTOCOLO LEVE NO CLUSTER DE COMPUTADORES DO DI/UFES Monografia apresentada à Universidade Federal do Espírito Santo, como requisito parcial para obtenção do grau de Engenheiro de computação. Professor Orientador: Sérgio Antonio Andrade Freitas. VITÓRIA 2003

3 OZIANDER PAULA NUNES AVALIAÇÃO DE UM PROTOCOLO LEVE NO CLUSTER DE COMPUTADORES DO DI/UFES Monografia apresentada à Universidade Federal do Espírito Santo, como requisito parcial para obtenção do grau de Engenheiro de computação. Professor Orientador: Sérgio Antonio Andrade de Freitas. Aprovado em 07 de abril de 2003 BANCA EXAMINADORA Prof. Msc Sérgio A Andrade de Freitas Orientador Prof. Dr. Neyval Costa Reis Júnior Examinador Profª. Drª. Lúcia Catabriga Examinadora VITÓRIA 2003

4 AGRADECIMENTOS Ao professor Sérgio Antonio Andrade Freitas por ter me acompanhado e orientado com presteza para transpor mais esta etapa e concluir este trabalho. Aos meus pais, Ozias e Vera, por nunca duvidarem de que eu era capaz e sempre me apoiarem em todas as minhas decisões. A Jaci, que não mediu esforços para auxiliar na implementação deste trabalho. A minha esposa que com imenso carinho e apoio esteve sempre presente.

5 SUMÁRIO 1. INTRODUÇÃO 8 2. AQUITETURA DE CLUSTERS Camadas de Composição de Clusters Máquinas de Balanceamento de Carga Servidores Web Servidores de Aplicação Servidores de Dados Cluster Beowulf Arquitetura de Cluster Usuário Controle Gerenciamento Armazenamento Instalação Computação Arquitetura de Rede Tecnologias Switch Projeto de Rede para Cluster Arquitetura de Software Sistema Operacional Sistema de Arquivo Comunicação entre Processos (IPC) Máquina Virtual Paralela (PVM) Interface de Passagem de Mensagens Gerenciamento de Recursos Gerenciamento de Trabalho Gerenciador de Recursos Gerenciador de Trabalhos Protocolo de Comunicação para Clusters (VIA) 24

6 Modelos de comunicação VIA Níveis de Confiabilidade O Cluster do LCAD Arquitetura de Hard ware Disposição Física TCP/IP Origem Arquitetura TCP/IP A Camada de Aplicação A Camada de Transporte A Camada de Inter-redes ou Internet A Camada Host/Rede Protocolo TCP Funções do TCP Formato do Cabeçalho TCP Protocolo IP Desvantagens do IP O Cabeçalho IP Funcionamento do TCP/IP Nível TCP Nível IP Fragmentação e Remontagem TESTES NO CLUSTER DO LCAD Introdução Simulação TCP/IP TCPCamp Mínimo Análise dos Resultados TCPCamp Mínimo / TCP/IP TCPCamp Análise dos Resultados TCPCamp / TCP/IP Análise dos Resultados TCPCamp JV Análise dos Resultados TCPCamp CDV Análise Final 71

7 5. CONCLUSÕES 72 REFERÊNCIAS 74

8 8 1. INTRODUÇÃO O objetivo deste trabalho é avaliar os protocolos de comunicação propostos por Campana [11] no cluster de 64 computadores do Departamento de Informática da Universidade Federal do Espírito Santo [16]. Campana propõe quatro protocolos específicos para a comunicação dos computadores de um cluster genérico [5] [20] [21], sendo que, de um modo geral, estes protocolos são considerados leves. Ele os avalia através de testes de comunicação entre duas máquinas. Neste trabalho é feita uma avaliação destes protocolos no cluster do DI/UFES, através de testes ostensivos de comunicação entre conjuntos de máquinas (4 para 1 máquinas, 8 para 1 máquinas, 16 para 1 máquinas, 32 para 1 máquinas e 60 para 1 máquinas), com a obtenção de resultados, os quais são analisados no decorrer da monografia. Para explicar esta avaliação, esta monografia está assim estruturada: no capítulo 2 são apresentados os conceitos de um cluster de computadores, os programas utilizados pelo mesmo, alguns conceitos de protocolo leve de comunicação e a configuração atual do cluster do DI/UFES, no capítulo 3 são estudados os conceitos do protocolo TCP/IP, no capítulo 4 são apresentados os protocolos propostos por Campanha, os testes realizados, os resultados e a avaliação dos mesmos. Finalmente no capítulo 5 são apresentadas as conclusões e algumas propostas de trabalhos futuros.

9 9 2. ARQUITETURA DE CLUSTERS Um cluster [4] é um conjunto de máquinas agrupadas, denominadas nós, que trabalham juntas para atingir um determinado objetivo comum. Tal objetivo resume-se em Alta Disponibilidade ou Alta Performance. Para um cluster operar, várias informações precisam ser fornecidas aos nós. Entre outras coisas, é necessário que se tenha conhecimento da extensão do cluster, isto é, quais são os nós que o compõe. Ainda, tal informação não deve estar centralizada em um único lugar, e sim distribuída pelo cluster Camada de Composição de Clusters Um cluster pode ter diversas configurações [2] dependendo do tipo de aplicação que irá ter. Uma dessas implementações típicas pode ser vista na figura 2.1. Figura Configuração de Cluster

10 10 Um cluster pode ser dividido em camadas para melhor controle e atualização. As camadas podem ser: Máquinas de Balanceamento de Carga Esta camada é responsável pela disponibilidade do cluster e pode ser implementada através de algum tipo de hardware ou software que gerencie as conexões com o cluster. Altamente importante para não sobrecarregar apenas alguns nós Servidores Web Nesta camada estão os servidores Web responsáveis pela disponibilização de páginas estáticas ou dinâmicas. Nesta camada existe balanceamento de carga também. Se algum servidor falhar, os balanceadores de carga irão notar e na próxima requisição outro servidor irá disponibilizar a requisição, sendo transparente para o usuário Servidores de Aplicação Camada onde o servidor de aplicação reside. Nesta camada é possível executar um servidor Java e é geralmente uma solução de alta eficácia. Nesse ponto ainda é possível adicionar máquinas para aumentar a capacidade das aplicações Servidores de Dados Requer usualmente soluções de alta disponibilidade (HA). Em grandes operações é comum esta camada ser formada por mainframes servidores de dados devido ao grande acesso a essa camada. Camada com grau de dificuldade acentuado quando se faz necessário aumento da capacidade sem um prévio planejamento.

11 Cluster Beowulf Baseado principalmente no hardware, software e padrões, é uma das arquiteturas usadas quando a um processamento computacional intenso é requerido para gerar bons resultados. Unindo diversos componentes que quando bem ajustados e propriamente selecionados, o cluster beowulf [2] pode acelerar execução de aplicações, bem como seus resultados. Uma visão lógica da arquitetura do cluster beowulf pode ser vista na figura 2.2. Figura Visão Lógica de um Beowulf

12 12 Os sistemas beowulf podem ser construídos usando diferentes partes de hardware e software e podem ser classificados em dois tipos: CLASSE I: Construído inteiramente usando hardware e software fornecido pelo fabricante. Essa classe tem vantagem sobre preço e uso de padrão tecnológico. CLASSE II: Construído com partes que não são apenas de um fabricante. Geralmente este tipo de cluster tem um desempenho melhor. A escolha deve ser baseada no orçamento e nas necessidades do usuário. Os programas Beowulf são escritos geralmente usando linguagens de programação como C e Fortran e adotam a troca de mensagens para trabalhar com computação paralela Arquitetura de Cluster Os nós do cluster podem ser divididos baseando-se em suas funcionalidades, que podem residir em uma ou mais máquinas dependendo do tamanho do cluster. As funcionalidades podem ser estruturadas da seguinte forma: Usuário Controle Gerenciamento Armazenamento Instalação Nó de Computação

13 Usuário A máquina do usuário é a interligação entre o mundo exterior e o cluster. Os usuários utilizam-se de uma sessão nesta máquina para compilar e executar seus programas. Neste nó existe a necessidade de um ótimo hardware instalado, visto que se alguma falha ocorrer, os usuários não poderão acessar o cluster. Este nó também pode estar em um servidor também usado para gerência e instalação do cluster Controle Podendo também estar na mesma máquina que faz o controle e instalação, este nó é responsável por controlar os trabalhos. A função de controle pode ser alocada em qualquer outra máquina responsável para controlar ou gerenciar o cluster. O nó de controle fornece serviços tais como o Protocolo de Configuração dinâmica de Hosts (DHCP), O Sistema de Nome de Domínio (DNS) e o Sistema de Arquivos de Rede (NFS). Grande preocupação ser faz necessário com a disponibilidade deste nó, visto que, ao contrário dos outros nós, a falha deste pode afetar a disponibilidade de todo o cluster Gerenciamento Esta funcionalidade é responsável pelo gerenciamento e controle dos componentes do cluster, por exemplo, switches 1. Pode estar instalada em nós dedicados, ou por razões de orçamento, em máquinas com outras funcionalidades também. Outra possibilidade é a alocação em uma área virtual da rede (VLAN), definida como gerenciamento e acessível somente pelo administrador por razões de segurança. O gerente do cluster é responsável pelo controle dos nós e coleta de dados que podem gerar 1 Equipamentos comutadores de dados usados em redes locais

14 14 alarmes através do protocolo de gerencia de rede (SNMP- Simple Network Management Protocol) Armazenamento Esta função é executada por máquinas dedicadas e responsáveis para armazenar grandes quantidades de dados necessários as aplicações que funcionam nos nós de cálculo. Recomenda-se equipar estes nós com: Controladores de RAID 2 que dão proteção aos dados usando um dos diferentes níveis de redundância em armazenamento disponíves. Fiber Channel. Tecnologia de armazenamento usando meio de fibra ótica para otimizar a transferência de dados. Velocidade Gigabitethernet. Padrão Ethernet que permite taxas de 1000Mbps. Utilizado para gerar uma alta performace de largura de banda. Velocidade Ethernet 100 Mbps para acesso ao nó de gerência e à rede local Instalação Este nó é responsável pela instalação dos nós de cálculo sendo consultado às vezes como um servidor ou nó de plataforma. Geralmente é um servidor que exporta um sistema de arquivos contendo o sistema operacional, bibliotecas e todo o software necessário para os nós de cálculo. Um 2 RAID ou Redundant Array of Inexpensive Disks (Discos Independentes de Array Redundante) é um método de combinar vários discos rígidos para redundância de dados em caso de falhas no disco rígido.

15 15 adaptador PCI GigabitEthernet faz parte desta configuração permitindo uma largura de banda maior, acelerando assim a instalação do cluster. O nó de instalação pode também ser configurado como nó de cálculo desde que realize processamento para tal. Este nó é o único da rede pública possibilitando assim que os usuários o acessem para então acessar o cluster Computação Cálculo é a atividade principal deste nó, chamado de nó de cálculo, especialmente para grandes clusters, porque esta função é atribuída às máquinas dedicadas. As escolhas do hardware e dos parâmetros de configuração deste nó devem ser baseadas nas aplicações que serão executadas no sistema. As características abaixo devem ser consideradas: Tipo de Processador Tamanho e velocidade do cache L2 3 Número de processadores por nó Velocidade do barramento principal da máquina Sistema de Memória Velocidade do barramento PCI As aplicações interferem na decisão de como construir os nós de cálculo, visto que uma aplicação pode requerer maior acesso ao cachê L2, enquanto outras aplicações que usam maiores quantidades de memória podem ser beneficiadas com processamento, barramento e memória mais rápidos. Quanto ao desempenho de processamento, a melhor opção é um processador por nó de cálculo, mas se houver limitações quanto ao 3 O cache secundário, nada mais é do que uma porção de memória RAM estática muito mais veloz que as RAM's dinâmicas que compõem a memória principal e localizam-se muito próximo ao processador

16 16 orçamento uma boa saída é usar uma máquina SMP 4. A relação entre desempenho e preço é melhor quando fala-se em dois processadores em uma máquina SMP contra três ou quatro. O sistema operacional Linux determina como estas CPU s são compartilhadas. Não é possível atribuir uma tarefa específica a um processador SMP, entretanto, dois trabalhos independentes podem ser disparados e comparados os desempenhos de uma máquina SMP e uma normal. O hardware de elevada eficácia não é tão importante quanto nas outras partes do cluster, pois se uma falha ocorrer apenas uma parte do trabalho será perdida, podendo ser executada mais tarde por outro nó. Em aplicações com troca de mensagens ou grandes transferência de dados adaptadores de rede de alta velocidade são recomendados juntamente com barramentos PCI de velocidade elevada para aumentar o desempenho dos adaptadores Arquitetura de Rede Uma rede (networking) [5] é a conversão de um grupo de máquinas em um único sistema e permite acesso remoto, necessitando de hardware e software para a rede funcionar. A rede em cluster Beowulf é de grande importância e a maior demanda ocorre na comunicação entre os nós de cálculo. Devido à essa demanda, o desempenho da rede é um tópico muito importante a ser considerado em um cluster Beowulf. Dependendo das características dos programas que estão sendo executados, redes de elevada largura de banda, alta velocidade e baixa latência podem ser requeridas. A classe Beowulf do cluster será determinada pela comunicação da rede e determinará a complexidade de construção de programas a serem executados. 4 Arquitetura de computadores com multiprocessamento simétrico (SMP Symmetric Mutiprocessing)

17 Tecnologias Clusters Beowulf podem ser implementados com diversas tecnologias, entre elas: Fast Ethernet: Tecnologia desenvolvida a partir da tecnologia ethernet, a Fast possibilita conexões entre máquinas usando comunicação de duas vias (Fullduplex) a 100 Mbps. Gigabit Ethernet: Continuação do aperfeiçoamento da tecnologia Eternet, atingindo com canais fullduplex 1 Gbps [7]. Myrinet: Tecnologia proprietária [6]. É padrão ANSI (Americam National Standard ANSI/VITA ) e especialmente desenvolvida para interconectividade de máquinas em cluster. Provê taxa de transmissão de dados de 2 Gbps Fullduplex, podendo ser escalável para milhares de máquinas provendo ainda caminhos alternativos para comunicação Switch A implantação de switch em clusters é devido à necessidade de elevada largura de banda juntamente com o crescente número de nós. Um switch faz a comunicação entre máquinas através de cabos de par trançado fazendo a entrega apenas a maquina ou máquinas de destino no caso de pacotes para muitas máquinas (broadcast). O switch utiliza o endereço de destino do pacote para determinar quem é o receptor. É escalável, visto que em grandes clusters apenas um switch pode não ser suficiente. Não deve ser implementada a solução de roteamento em clusters, pois os mesmos trabalham com processamento dos pacotes, podendo assim afetar o desempenho do cluster.

18 Projeto de Rede para Cluster [2] Existe em um cluster a necessidade de se estudar qual topologia de rede usar, visto que o mesmo necessita de comunicação entre os nós e também com a rede externa (Intranet e Internet). Alguns componentes que podem ser usados num cluster: IPC (Inter Process Comunication): permite a comunicação entre os nós através de troca de mensagens e blocos de dados. Gerenciamento: usado para satisfazer necessidades de administradores do cluster. Cluster: usado somente para a entrada e saída de dados e tráfego de trabalho. Área Pública: usada para comunicar-se à rede local (LAN) ou uma rede mais ampla (WAN). Algumas decisões sobre topologias devem ser tomadas antes para avaliação de como projetar a rede: Topologia de rede simples, onde o cálculo, o mestre, a instalação, e os nós de armazenamento estão conectados. Dividir sua rede em diversas redes locais virtuais (VLAN). A adoção de VLANs é uma boa solução sendo necessário para isso um switch inteligente ou que trabalhe no segundo nível da camada OSI para controlar redes virtuais. A VLAN oferece benefícios no uso da largura de banda, flexibilidade, desempenho e segurança. Logicamente, a tecnologia VLAN é uma segmentação da rede em domínios diferentes da transmissão de modo que os pacotes sejam comutados somente entre as portas designadas para ser parte da mesma VLAN. Observa-se um exemplo desta configuração:

19 19 Gerenciamento: VLAN usada para acessar o switch Myrinet [6] ou outro switch de camada dois usado para o IPC e Rede do Processador de Serviço. Os serviços de TELNET e SNMP são usados para controlar o switch e a Rede do Processador de Serviço. Geralmente isolada das outras VLANs por motivo de segurança. Cluster: os nós de cálculo e armazenamento usam esta VLAN somente para tráfego de I/O. O nó mestre usa esta rede para gerenciar o cluster e fazer novas instalações. Pública: VLAN criada para que o nó mestre possa ter acesso à rede externa ao cluster. Rede de Processador de Serviço: uma ligação Ethernet ao processador de serviço para fins gerenciais Arquitetura de Software Existe a necessidade de desenvolvimento e execução de aplicações em um cluster, para tal alguns outros componentes de software são necessários [2]: Sistema Operacional Drivers de dispositivo [10] Bibliotecas Ferramentas de desenvolvimento e análise Compiladores Ferramentas para gerenciamento

20 Sistema Operacional Responsável por diversas tarefas, o sistema operacional [2] pode reconhecer entradas de teclado, controlar saídas de tela, dispositivos periféricos, sistema de arquivos e discos. Diversos sistemas podem ser usados para cluster Beowulf, entre eles o Linux Sistema de Arquivo O sistema de arquivo [2] é a parte principal de todo o sistema operacional, servindo para armazenagem de programas e dados. Tem dois significados em Linux: O conceito de hierarquia no diretório raiz, com as partições montadas sob o diretório raiz. Não existem letras para identificação das partições como no Windows, tudo é visto como um arquivo. Consultar formatos específicos para representar arquivos ou diretórios em um disco ou em uma memória. Em um ambiente cluster, faz sentido falar sobre sistemas de arquivos distribuídos, visto que cada nó de Beowulf se não é um cliente sem disco, tem um sistema de arquivo local que possa necessitar acessar os processos que executam nos outros nós. Esta é a realização básica para usar um sistema de arquivo distribuído em um cluster de Beowulf. Um sistema de arquivo distribuído tem as seguintes características que o distinguem de um sistema de arquivo local: Transparência de rede: arquivos remotos e locais podem ser acessados usando a mesma chamada ao sistema.

21 21 Transparência de localização: o nome do arquivo limita-se à sua localização, porque o servidor que contém o arquivo não é parte do caminho. Independência de localização: se a posição física do arquivo mudar, seu nome não muda necessariamente, porque o nome do servidor que o contém não é parte do caminho do arquivo Comunicação entre Processos (IPC) [2] A troca de mensagens ou comunicação entre processos (IPC) é o envio de dados entre um processo e outro, seja na rede ou no mesmo computador. A troca dos dados implica em um protocolo que garanta que uma resposta para cada requisição. É recomendado usar uma largura de banda elevada e uma tecnologia de baixa latência, tal como Myrinet ou Gigabit, com uma aplicação que use a troca de mensagem entre processadores e placas-mãe diferentes. O Fast Ethernet é adequado onde o trabalho da rede não é o gargalo. O IPC é um elemento que é levado em conta nas definições dos níveis e classes de um cluster Beowulf Máquina Virtual Paralela (PVM Parallel Virtual Machine) PVM [2] é uma interface de programação de aplicação (API) que facilita a computação paralela, sendo projetado para o uso através de cluster. Ao codificar uma aplicação usando o PVM API, tem-se então uma aplicação que funciona em um cluster. Neste ambiente, uma máquina executa o console PVM. O console PVM está ciente de todos os nós disponíveis para ele, quando um trabalho é submetido ao console PVM, este é encarregado de distribuí-lo através dos nós PVM recebendo os resultados e recompilando-os em um único resultado completo. Muito eficiente para os trabalhos que podem ser feitos em um ambiente pouco acoplado, isto é, aqueles que podem ser feitos em partes individuais. Há outras soluções que

22 22 são provavelmente mais satisfatórias para trabalhos com exigências mais estritas de uma comunicação Interface de Passagem de Mensagens [2] As especificações MPI (Message Passing Interface) são usadas geralmente onde há necessidade que uma camada lógica da estrutura combine com uma camada física de uma comunicação, por exemplo, quando as aplicações necessitam interagir com diversos CPU s em placas-mãe diferentes. MPI é uma especificação padrão de bibliotecas de passagem de mensagem para escrita de programas paralelos. A passagem de mensagem foi adotada extensamente por causa de sua associação próxima com os atributos físicos da arquitetura de SMP. A passagem de mensagem suporta uma interação entre processos seqüenciais, quando um ou mais processos rodam em cada processador e eles interagem via mensagens conduzidas através da rede física. MPICH é uma implementação mais portável e a especificação mais usada de MPI para uma grande variedade de ambientes paralelos e de computação distribuída. O uso de MPICH é particularmente popular em redes de estação de trabalho e nos clusters Beowulf heterogêneos onde nenhuma implementação proprietária está disponível. O paradigma de programação MPI supõe que um programa está dividido em diversas tarefas, cada uma tem seus próprios dados privados e espaço de endereçamento. Não há nenhum dado global compartilhado entre tarefas do programa e toda a sincronização e comunicação entre as tarefas é realizada por chamadas explícitas à biblioteca entre tarefas. Como o programador tem o controle total sobre a interação da tarefa, uma melhor escalabilidade pode ser conseguida projetando a sincronização e a comunicação entre tarefas corretamente, mais do que todas as outras técnicas de paralelização usadas hoje.

23 Gerenciamento de Recursos Há a necessidade de gerenciamento dos recursos [2] em um cluster, visto que se todos os usuários executarem seus trabalhos ao mesmo tempo o desempenho do cluster irá diminuir. O escalonador é responsável por gerenciar e alocar quantos nós sejam necessário para o usuário executar seu trabalho, tentando manter o cluster totalmente utilizável quanto possível em todo o tempo Gerenciamento de Trabalho Os clusters Beowulf requerem um mecanismo para controlar e programar os trabalhos e a carga de trabalho [2] de diferentes usuários. A idéia é utilizar a máxima eficiência possível em um dado tempo e hardware. Isto assegura o uso otimizado do tempo do cálculo, e o cluster divulgará resultados tão rápido quanto possível Gerenciador de Recursos É essencial que o usuário possa pedir um nó computacional apropriado para uma dada tarefa, para permitir isso o gerenciador de recursos coordena as ações de todos os outros componentes no sistema mantendo uma base de dados de todos os recursos, requisições submetidas e trabalhos rodando. Em um ambiente heterogêneo é importante que o gerenciando de recursos conserve seu mais poderoso recurso o maior tempo possível, a menos que tenha sido especificamente requerido. É necessário também fornecer algum nível de redundância para problemas com a falha computacional do nó e escalonar centenas de trabalhos em milhares de nós. Deve também suportar os ganchos para a acumulação de máquinas múltiplas em locais diferentes.

24 Gerenciador de Trabalhos ( Job Scheduler) O job scheduler recebe a informação do nó de trabalho do gerente de recurso e produz uma lista classificada por ele dizendo ao gerente de recurso quando e onde executar cada trabalho. O gerente da política deve ter flexibilidade para intermediar um conjunto potencialmente complexo dos parâmetros requeridos para definir um ambiente distribuído adequado e ainda reter a simplicidade da expressão que permitirá que os administradores de sistema façam alocações de recurso politicamente dirigidas Protocolo de Comunicação para Clusters VIA O protocolo VIA [9] (Virtual Interface Architecture Arquitetura de Interface Virtual) é uma especificação aberta resultado de um trabalho conjunto de diversas empresas, entre as quais se destacam a Intel, Compaq e Microsoft. A figura 2.6 ilustra o modelo de comunicação estabelecido pelo VIA. Figura Arquitetura do Protocolo VIA

25 25 Antes de iniciar uma comunicação, os processos envolvidos solicitam, via chamada ao kernel 6 do SO, a criação de uma instância VIA, denominada de VI. Cada VI possui duas filas de descritores, sendo um de envio (descreve a área de memória contendo os dados a transmitir) e outro de recepção (descreve a área de memória alocada para recepção de dados). Um descritor é uma estrutura de dados, definida na área da aplicação, contendo informações sobre os dados (endereço, tamanho). Descritores já processados poderão reunidos numa fila de descritores (Completion Queue-CQ), ou serem removidos de sua respectiva fila de trabalho. A aplicação pode solicitar serviços de comunicação diretamente de uma biblioteca de funções VIA a nível de usuário (user level) ou por meio de uma interface de comunicação (sockets, MPI, PVM) que recorre a serviços da referida biblioteca. Isso favorece a portabilidade de aplicações já desenvolvidas para ambientes VIA, assim como o desenvolvimento novas aplicações sobre API's já conhecidas Modelos de Comunicação VIA A especificação VIA v1.0 estabelece dois modelos de transferência de dados: Modelo SEND/RECEIVE: nesse paradigma, cada extremidade (endpoint ou instância VI) envolvida na comunicação deve, através da colocação de descritores em suas respectivas filas, especificar uma área de memória para os dados. O controle de fluxo da conexão deve ser feito pelas aplicações envolvidas. Modelo RDMA READ/WRITE: Na comunicação de dados através do acesso remoto à memória (Remote Direct Memory Access - RDMA), o iniciador da transferência deve especificar o endereço tanto do buffer origem quanto do buffer destino. Existem dois tipos: RDMA-Write e RDMA-Read. 6 Núcleo do sistema operacional responsável por todo o controle do sistema

26 26 A operação RDMA-Write escreve, numa única e contígua área da memória remota, dados que podem estar espalhados na memória origem (ação gather, na origem). Por outro lado, a RDMA-Read lê, de uma única e contígua área da memória remota, dados que no destino (onde a operação foi iniciada) poderão ser espalhados por diversos locais da memória (ação scatter) Níveis de Confiabilidade São suportados três níveis de confiabilidade: Entrega Não-Confiável (Unreliable Delivery), Entrega Confiável (Reliable Delivery) e Recepcão Confiável (Reliable Reception). A tabela abaixo sumariza as características de cada nível. Níveis de Confiabilidade Propriedades Detecção de dados corrompidos Dados entregues uma vez, no máximo Dados entregues exatamente uma vez Entrega Não-Confiável Entrega Confiável Recepção Confiável Sim Sim Sim Sim Sim Sim Não Sim Sim Ordem garantida Não Sim Sim Detecção de perda de dados Término da conexão sob erro Não Sim Sim Não Sim Sim Suporte a RDMA-Read Não Opcional Opcional Suporte a RDMA-Write Sim Sim Sim Estado operação SEND ou RDMA-Write quando requisição completada Estado da operação SEND ou RDMA-Write, em trânsito, (in-flight), quando ocorre erro Em trânsito (Inflight) Desconhecido Em trânsito (Inflight) Desconhecido Tabela Níveis de Confiabilidade Garantidos Também completada no nó remoto 1a. operação: estado desconhecido; oper. seguintes: não entregues

27 O Cluster do Laboratório de Computação de Alto Desempenho (LCAD) O LCAD [16] possui um cluster Beowulf montado a partir de máquinas individuais com configurações iguais dando suporte ao processamento de várias aplicações que demandem ou se beneficiem do processamento paralelo ou distribuído Arquitetura de Hardware O cluster Beowulf é composto de 64 nós de processamento e 1 de administração (master), com 256 Mbytes de memória RAM e 20 Gbytes capacidade de armazenamento, totalizando 16 Gbytes de memória RAM e 1.2 Tbytes de capacidade de armazenamento. As máquinas são interconectadas por dois switches de 48 portas com suporte a FastEthernet e portas GigabitEthernet para conexão entre switches e com o nó de controle. Todas as máquinas utilizam o sistema operacional Linux com distribuição Red Hat 7.1 [17]. Abaixo uma breve descrição dos equipamentos utilizados no cluster: Master: o Processador ATHLON XP 1800 AMD o 512 Mbytes de memória RAM o 90 Gbytes de Disco o 1 placa de rede 3COM GigabitEthernet para conexão com os nós e processamento o 1 placa de rede 3COM FastEthernet para conexão externa o Linux Red Hat 7.1 Nós de Cálculo: o 64 máquinas ATHLON XP 1800 AMD

28 28 o 256 Mbytes de memória RAM o 20 Gbytes de Disco o Placa de rede 3COM TX FastEthernet o Linux Red Hat 7.1 Interconexão: o 1 Swich COM, 48 portas (FastEthernet) + 1 porta Gigabit Ethernet o 1 Swich COM, 48 portas (FastEthernet) + 2 portas Gigabit Ethernet Estações de Trabalho (Front End) o 4 ATHLON's XP 1800 AMD o 256 Mbytes de memória RAM o 20 GB de disco o Linux Red Hat Disposição Física As máquinas estão dispostas fisicamente em estantes de aço dentro de uma sala com ar-condicionado para suprir a demanda de aquecimento que provocam. As máquinas estão dispostas em forma de U para uma melhor visualização e aproveitamento do cabeamento horizontal utilizado para interconexão das máquinas com os switches como se vê na figura 2.7:

29 Figura Disposição do Cluster 29

30 30 3. TCP/IP 3.1. Origem A arquitetura TCP/IP [1] [8] [12] [14] (Transmission Control Protocol / Internet Protocol) nasceu de uma pesquisa do Departamento de Defesa dos Estados Unidos (DOD Department of Defense) sobre protocolos de rede, com foco na tecnologia de comutação de pacotes. Os principais objetivos destas pesquisas eram: Protocolo comum: era uma premissa do projeto que a suíte de protocolos pudesse ser especificamente para todos os tipos de rede. Interoperabilidade: independente do fabricante do equipamento de rede o protocolo tinha que suportar esta interoperabilidade. Comunicação robusta: o protocolo tinha que ser escalonável, suportar o crescimento das redes, ser confiável e ter alta performance. Fácil configuração: era necessário que o protocolo fosse capaz de ter uma dinâmica a ponto de adicionar ou remover os computadores da rede sem impactar no funcionamento dela Arquitetura TCP/IP A arquitetura TCP/IP [8] é semelhante ao modelo OSI no que diz respeito à organização por camadas. Foi considerado como ponto focal a camada de transporte e inter-redes (internet) para efeito do objeto de estudo em questão. A figura 3.1 ilustra uma comparação dos modelos OSI e TCP/IP.

31 31 Figura Comparação OSI-TCP A Camada de Aplicação A camada de Aplicação engloba, como podemos observar na figura 3.1, funções das três últimas camadas do modelo OSI (7, 6, 5); entre suas funcionalidades se incluem serviços como aplicações de mensagens (correio eletrônico), transferência de arquivos, serviços de gerenciamento de rede, emulação de terminal, entre outros. TELNET (Protocolo de Emulação de Terminal) FTP (Transferência de arquivos) SMTP (Protocolo de Correio eletrônico) DNS (Serviço de Domínio) SNMP (Gerência de Redes)

32 A Camada de Transporte Também conhecida como camada fim-a-fim, tem funções semelhantes à camada de transporte do modelo OSI, dentre elas, fornecer aos processos das camadas superiores uma interface de rede conveniente e entrega hosts. Dois protocolos são definidos nesta camada, o TCP (Transmission Control Protocol) e o UDP (User Datagram Protocol). O primeiro é confiável, orientado à conexão, com garantia de entrega, teste de erro e reenvio de segmentos. O TCP fragmenta o fluxo de bytes de entrada em mensagens e passa cada uma delas para a camada de inter-redes. No destino, o processo TCP remonta as mensagens recebidas no fluxo de saída. Também cuida do controle de fluxo, impedindo congestionamentos e sobrecargas entre transmissor e receptor. O UDP não dá garantia de entrega, pois não faz verificação de erros no pacote enviado. É simples, pois usa apenas dois campos informando o remetente e o destinatário do pacote ganhando assim agilidade no envio dos dados. O UDP também fragmenta os pacotes na origem e remonta no destino A Camada de Inter-redes ou Internet Permite que os hosts insiram pacotes em qualquer rede e garante que eles sejam transmitidos independentes do destino, podendo ser roteados para outra rede inclusive. Existe a possibilidade destes pacotes serem entregues foram da ordem, obrigando outras camadas superiores a reorganiza-las caso a ordem seja importante para o processo. É definido nesta camada um formato de pacote e um protocolo para o endereçamento dos pacotes (IP Internet Protocol). Os pacotes são roteados nesta camada para evitar congestionamentos. Outros protocolos também fazem parte dessa camada, como o ICMP (Internet Control Message Protocol controle de status de hosts na rede), ARP (Address Resolution Protocol permite resolução de endereço físico da máquina para endereço lógico) e RARP (Reverse Address Resolution Protocol resolução de endereço lógico para físico).

33 A Camada Host/Rede A camada Host/Rede está abaixo da camada Inter-Redes e é responsável por conter protocolos de envio de pacotes IP. Podem ser utilizados vários padrões [17], entre eles: IEEE 802.3, IEEE ou IEEE para redes locais ou ainda HDLC (norma X.25 do CCITT). Protocolos proprietários também podem ser usados em redes de grande abrangência. A figura 3.2 exemplifica a comunicação entre as camadas. Figura 3.2 Comunicação entre redes O exemplo de comunicação entre protocolos pode ser visto na figura 3.3 usando o modelo TCP/IP.

34 34 processo processo TCP UDP ICMP IP ARP RARP Ethernet Token Ring Figura 3.3 Comunicação entre as camadas 3.3 Protocolo TCP TCP (Transmission Control Protocol) [1] [8] [13] [14] é orientado à conexão, confiável e permite a entrega sem erros de um fluxo de bytes originado de uma determinada máquina em qualquer computador de uma inter-rede. O TCP é um protocolo da camada de transporte sua função básica é aceitar dados da camada de aplicação, dividindo-os em unidades menores caso haja necessidade e encaminhá-los para a camada de rede garantindo a chegada de todas as unidades à outra extremidade da conexão. Tudo deve ser feito de forma eficiente e de modo que as camadas superiores fiquem isoladas das inevitáveis mudanças na tecnologia de hardware. O protocolo foi projetado para proporcionar segurança na transferência de dados vindos de diversas aplicações, utilizando diversos meios viabilizando uma entrega de dados de forma virtual, garantindo a integridade dos dados e adotando assim um sistema de controle de fluxo e verificação de erros. Outra função do protocolo é a compatibilização dos segmentos de dados recebidos dos níveis superiores para os níveis inferiores através da

35 35 segmentação e remontagem (para camadas superiores) visando dar transparência às aplicações Funções do TCP Compatibilização de tamanhos dos segmentos As aplicações enviam para as camadas inferiores os dados de maneira particular, ficando a cargo do TCP fazer a compatibilização destes blocos de maneira ideal para os níveis inferiores ou a bufferização de pequenos blocos para a remontagem e envio para as camadas superiores. O dado entregue ao destinatário tem a mesma forma do gerado pelo aplicativo de origem, pois o TCP não altera a sua forma. De maneira resumida o dado é fragmentado na origem e remontado no destino. Integridade dos dados A camada de inter-redes não possui tratamento confiável dos dados de modo que a camada de Transporte, através do protocolo TCP, é responsável pela integridade dos dados. Assim, o TCP possui um algoritmo de checagem de erros que consiste na soma de todos os dados transmitidos considerando-os como palavras de 16 bits (checksum), e verificando a integridade do cabeçalho e dos dados da mensagem. Outra particularidade é a inserção de um número seqüencial para cada segmento de modo que não há duplicidade de segmentos que são controlados pela origem e destino.

36 36 Implementação de fluxo Full Duplex na comunicação Trata-se da transmissão bidirecional simultânea que permite as aplicações enviar e receber dados simultaneamente com tratamento individualizado para cada operação. Utilização de Canalização Virtual Utilizando-se de circuitos virtuais 7, o TCP implementa uma multiplexação virtual temporal viabilizando várias conexões simultâneas entre a origem e o destino. Consiste na criação de um canal lógico entre origem e destino que permite fluxo full duplex apenas no momento em que é solicitada uma conexão. Quando a comunicação termina, o canal é desativado. Vários canais virtuais podem ser criados e desativados durante o estabelecimento de uma comunicação. As aplicações recebem um número lógico de identificação chamado port de modo que o TCP trata os ports aos pares para a formação de um canal virtual. O endereço de port é entregue a uma aplicação apenas quando esta irá iniciar uma conexão, assim sendo algumas aplicações mais usadas (telnet, ftp, http, etc) possuem ports pré-definidos, diretamente mapeados a algumas aplicações. Dessa forma, o endereço do canal virtual é o somatório PortID e o endereço IP hostid. Ex.: Quando em operação full-duplex (figura 3.4) os dados são transmitidos junto com a confirmação de recepção dos dados anteriores. A confirmação pode ocorrer para um bloco ou para vários, neste último caso permitindo o aumento da vazão (throughput). 7 Um circuito virtual entre dois computadores é como se fosse um cabo ligando os dois, que permita o envio de bits nos dois sentidos

37 37 Figura Comunicação Full-Duplex O TCP provê conexão lógica fim-a-fim entre dois hosts de comunicação. O controle de informação, chamado de handshake, é a troca entre dois pontos finais de comunicação estabelecendo um diálogo antes do dado ser transmitido. O TCP indica a função de controle de um segmento ajustando o bit apropriado no campo de Flags na palavra 4 do segmento de cabeçalho. O tipo de handshake usado pelo TCP é chamado de three-way handshake porque três segmentos são trocados. A figura 3.5 mostra de forma simplificada esta operação. O host A começa a conexão enviando para o host B um segmento com os números de seqüência de sincronização (SYN Synchronize sequence number). Este segmento informa ao host B que A deseja estabelecer uma conexão, e diz para B que número de seqüência o host A vai usar como número inicial para seus segmentos (Os números de seqüência são usados para manter os dados em ordem). O host B responde para A com um segmento que

38 38 contém os bit de Acknowledgement (ACK) e SYN. Os segmentos de B reconhecem os segmentos de A recebidos e informam para A em qual número de seqüência que o host B vai começar a transmitir. Finalmente, o host A envia um segmento reconhecendo que os segmentos de B foram recebidos e transfere o primeiro dado atual. Quando os hosts concluírem a transmissão de dados então se dará início um three-way handshake com segmentos contendo o bit de Sem mais dados para Transmitir chamado de FIN para encerrar a conexão. Figura Three-Way Handshake Formato do cabeçalho do TCP Porta de Origem Porta de Destino Número de Sequência Acknowledgement Number Tamanho Reervado Flags Janela de Tamanho de Dados Checksum Urgent Pointer Opções Enchimento Aqui começam os dados... Figura 3.6 cabeçalho to TCP Porta de Origem [16 bits]: Número da porta de origem Porta de Destino [16 bits]: Numero da porta de destino Número de Sequência [32 bits]: número de seqüência de dados sendo transmitidos face ao conjunto total de dados já transmitidos.

39 39 Este número indica a posição do primeiro byte de dados sendo transmitido em relação ao total de bytes já transmitidos nesta conexão. O primeiro número de seqüência utilizado não é zero ou um, mas começa de um valor aleatório, sendo assim, se está sendo transmitido o 1234º byte até o 2000º byte de uma conexão e o Sequence Number inicial utilizado nesta conexão foi 10000, então o campo Sequence Number conterá o valor O número em um sentido da conexão (A B) é diferente do número em sentido inverso, visto que os dados transmitidos por um lado são distintos do outro. Se SYN está presente, então o número da sequência é o número inicial da sequência (ISN Inicial Sequence Number) e o primeiro octeto de dados é composto de ISN+1. Acknowledgement Number [32 bits]: Para ter certeza que o datagrama chegou ao seu destino, o receptor deve devolver uma indicação de recebimento que é feita através do envio de um datagrama que tem este campo preenchido. Tamanho [4 bits]: Indica o tamanho do cabeçalho TCP. Reservado [6 bits]: Reservado para uso futuro Flags [6 bits] (Bits de Código): São formados por seis bits URG, ACK, PSH, RST, SYN e FIN. URG: bit de urgência - significa que o segmento carregado contém dados urgentes que devem ser lidos com prioridade pela aplicação. A aplicação origem é responsável por acionar este bit e fornecer o valor do URGENT POINTER que indica o fim dos dados urgentes. ACK: bit de reconhecimento indica que valor do campo de reconhecimento está carregando um reconhecimento válido. PSH: bit de PUSH Este mecanismo que pode ser acionado pela aplicação informa ao TCP origem e destino que a aplicação necessita transmissão rápida

40 40 dos dados, mesmo que ela contenha um número baixo de bytes, não preenchendo o tamanho mínimo do buffer de transmissão. RST: bit de reset Informa ao destino que a conexão foi terminada neste sentido pela origem. SYN: bit de sincronismo é o bit que informa que o segmento atual é um dos dois primeiros segmentos de estabelecimento da conexão. FIN: bit de término Indica que o pacote atual é um dos pacotes de finalização da conexão. Janela de tamanho de dados [16 bits] (Window): Campo usado para controlar a quantidade de dados que podem estar em trânsito em certo instante. Como esperar por uma indicação de recebimento para transmitir o próximo datagrama pode tornar a rede lenta, ao passo que transmitir continuamente pode causar um estouro na capacidade de recebimento do computador destino, faz-se necessário estabelecer quantos datagramas podem ser manipulados de uma vez, em cada extremo. Desse modo o campo Window é usado por cada ponto da conexão para indicar a quantidade de octetos que está capacitado a receber e trabalhar. Quando este valor é igual a zero, o transmissor não envia dados, esperando receber um datagrama com Window maior que zero. O transmissor sempre vai tentar transmitir a quantidade de dados disponíveis na janela de recepção sem aguardar um ACK. Enquanto não for recebido um reconhecimento dos dados transmitidos e o correspondente valor de Window > 0, o transmissor não enviará dados. Checksum [16 bits]: Contém o código de detecção de erro que envolve o cabeçalho e o texto. Urgent Pointer [16 bits]: Este campo só é interpretado no segmento se o indicador URG estiver ligado e indica que o processamento não deve ser realizado. É usado freqüentemente para tratamento de

41 41 eventos assíncronos, tais como caracteres de controle ou comandos que interrompam a saída em tela. Opções [24 bits]: Campo de opções que só possui uma única opção válida que é a negociação MMS (Maximum Segment Size) Tamanho máximo do segmento que o TCP pode transmitir. 3.4 Protocolo IP O protocolo de inter-redes (Internet Protocol) [3] [13] [14], RFC 791 [19], é o coração do TCP/IP e o mais importante protocolo da camada de internet. O IP provê o serviço básico de entrega de pacotes no qual as redes TCP/IP foram construídas. Todos os protocolos nas camadas acima e abaixo do IP usam o mesmo para fazer entrega de dados. Todos os dados TCP/IP passam através do IP chegando e saindo, respeitando os devidos destinos. O IP é um protocolo não orientado à conexão, sem correção de erros e remontagem devido a erros. Baseia-se em outros protocolos de outras camadas para checagem de erros e retransmissão de pacotes corrompidos. São funções do IP: Definição do datagrama, que é a unidade básica de transmissão da internet. O protocolo IP é responsável por definir o tamanho do pacote (datagrama) que irá ser transmitido com base no tamanho do arquivo e das condições da rede Definição do esquema de endereçamento da internet. A internet funciona a partir de um esquema de endereços definidos [13] para cada máquina. O endereço de cada máquina é composto por quatro números chamados de octetos (8 bits) e que

42 42 podem através da camada de Interedes endereçar qualquer máquina na rede (internet). Movimentação dos dados entre as camadas de Acesso à Rede (Network Access Layer) e a camada de Transporte. Como a camada IP está entre estas duas camadas, uma de suas funções é agrupar os datagramas que chegam da camada de rede e envia-los à camada de Transporte. Roteamento de datagramas para hosts remotos. É responsável por fazer a entrega de pacotes entre redes diferentes (roteamento). Como existem muitas máquinas na rede mundial (em redes diferentes), o IP é responsável por fazer esta comunicação, visto que as máquinas só se comunicam diretamente se estiverem na mesma rede. Executar fragmentação e remontagem de datagramas. Quando os pacotes são enviados ou recebidos o IP faz a fragmentação e remontagem dos mesmos na ordem correta que a camada superior ou inferior necessita Desvantagens do IP Os protocolos do TCP/IP viabilizam a Internet e oferecem valiosos serviços, mas existem algumas imperfeições que podem ser notadas neste conjunto de protocolos, entre elas a segurança. Empresas que conectam sua rede interna com a Internet podem sofrer com a falta de segurança que o TCP/IP fornece. Qualquer computador pode (teoricamente) ser acessado por qualquer usuário da internet,

43 43 representando alto risco para a segurança das informações e até mesmo para a continuidade dos serviços. Muitos problemas atuais de segurança estão relacionados com o fato de que a transmissão dos dados pela internet usa o TCP/IP na sua forma original (IPV4) e que não foi projetado para dar suporte a segurança e se sujeita a uma série de ataques. Em comunhão estão os serviços baseados no TCP/IP TELNET, FTP, (SMTP) e outros. Outro problema relaciona-se com o fato de não haver mobilidade na rede. O IP relaciona-se com a rede e não com o host. Assim se uma máquina mudar de rede, deve mudar de endereço, que se torna cada vez mais oneroso no caso de Notebooks e outros computadores móveis. Neste caso a máquina não poderá ter um endereço IP fixo, pois o mesmo relaciona-se com a rede na qual a máquina está fisicamente localizada. Os endereços IP s estão divididos em classes e de acordo com o número de hosts da rede, pode determinar a mudança de endereço para uma classe que suporte mais máquinas. Muitas vezes o número de máquinas pode ultrapassar a classe de endereço escolhido causando a mudança dos endereços IP s de todas as máquinas da rede o que pode causar um impacto diretamente nos usuários que terão que trabalhar com novos endereços das máquinas na rede. A limitação do campo de endereço dos pacotes (4 bytes 32 bits) também pode causar desvantagem visto que espera-se um crescimento muito grande do número de máquinas na rede na próxima década. O roteamento também pode ser fator decisivo visto que dependendo do endereço utilizado a máquina pode estar disponível por um endereço e indisponível por outro.

44 O cabeçalho IP Versão IHL Tipo de Serviço Comprimento Total Identificação Flags Fragmetation Offset Temop de Vida Protocolo Checksum Endereço de Origem Endereço de Destino Opções Enchimento Aqui começam os dados... Figura 3.7 Cabeçalho IP Versão [4 bits]: Indica a versão do protocolo usada para criar o datagrama. Tem função de estabelecer acordo entre fonte, destino e gateway por onde o datagrama passe visando o formato do mesmo. Campo verificado pelo protocolo antes de processar o datagrama assegurando a leitura apenas de pacotes que tenham a mesma versão. Os pacotes com versões diferentes são descartados. IHL [4 bits]: Especifica o comprimento do cabeçalho, medido em palavras de 32 bits com podemos observar na figura 3.7. Todos os campos do cabeçalho têm tamanhos fixo com exceção dos campos de option e padding. Tipo de Serviço [8 bits]: Especifica uma indicação dos parâmetros de qualidade de serviço desejada. Informações sobre tratamento de pacotes, de acordo com sua prioridade e tipo de serviço desejado (baixo retardo, alta capacidade de banda ou alta confiabilidade), são especificados neste campo. Bit 0-2 Precedência: indica importância da mensagem Bit 3 0 = Normal Delay, 1 = Low delay Bit 4 0 = Normal Throughput, 1 = Low Throughput Bit 5 0 = Normal Reliability, 1 = Low Reliability Bit 6-7 Reservado Figura 3.8 Campo Type of Service (codificação dos bits)

45 45 Tamanho total [16 bits]: Tamanho total do datagrama IP (cabeçalho + dados) Identificação [16 bits]: Campo de Identificação. Contém um único inteiro que identifica o datagrama, é um campo importante porque quando o datagrama é fragmentado por algum gateway, ele copia a maioria dos campos do cabeçalho do datagrama em cada fragmento identificando a cópia para que o destino saiba quais são os fragmentos pertencentes a um mesmo dado. Os fragmentos possuem o mesmo formato de um datagrama completo. Flags [3 bits]: Bits de identificação de controle. Pode identificar se é o último fragmento transmitido e a necessidade de não fragmentação dos pacotes pelos roteadores. Fragmentation Offset [13 bits]: Indica a posição do fragmento no datagrama original, numerando os datagramas a partir de zero. Cada segmento terá o campo fragmentation Offset preenchido pelo número referente ao seu primeiro campo de dados. Tempo de Vida [8 bits]: Tempo de vida do pacote. Especifica o tempo máximo que um pacote deve permanecer no sistema. Contém um número que é decrementado cada vez que o datagrama passa por um gateway, se este campo tiver valor igual a zero, então o pacote deve ser descartado. Protocolo [8 bits]: indica que tipo de protocolo de mais alto nível está sendo carregado no campo de dados. Pode ser UDP, TCP, ICMP entre outros. Header Checksum [16 bits]: Assegura a integridade dos valores do cabeçalho visto que no IP apenas o cabeçalho contém checagem de erros. O campo de dados deverá ter seu próprio código de correção de erros implementado no nível de transporte garantindo assim a integridade dos dados transportados. Endereço de Origem [32 bits]: Indica o endereço IP de origem.

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 2 - MODELO DE REFERÊNCIA TCP (RM TCP) 1. INTRODUÇÃO O modelo de referência TCP, foi muito usado pela rede ARPANET, e atualmente usado pela sua sucessora, a Internet Mundial. A ARPANET é de grande

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

Rede d s d e d Com o pu p t u ado d r o es Conceitos Básicos M d o e d los o de d Re R de d s:

Rede d s d e d Com o pu p t u ado d r o es Conceitos Básicos M d o e d los o de d Re R de d s: Tecnologia em Redes de Computadores Redes de Computadores Professor: André Sobral e-mail: alsobral@gmail.com Conceitos Básicos Modelos de Redes: O O conceito de camada é utilizado para descrever como ocorre

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

REDES DE COMPUTADORES

REDES DE COMPUTADORES REDES DE COMPUTADORES 09/2013 Cap.3 Protocolo TCP e a Camada de Transporte 2 Esclarecimentos Esse material é de apoio para as aulas da disciplina e não substitui a leitura da bibliografia básica. Os professores

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

Redes de Computadores II

Redes de Computadores II Redes de Computadores II UDP Prof: Ricardo Luís R. Peres Tem como objetivo prover uma comunicação entre dois processos de uma mesma sessão que estejam rodando em computadores dentro da mesma rede ou não.

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 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

Modelos de Camadas. Professor Leonardo Larback

Modelos de Camadas. Professor Leonardo Larback Modelos de Camadas Professor Leonardo Larback Modelo OSI Quando surgiram, as redes de computadores eram, em sua totalidade, proprietárias, isto é, uma determinada tecnologia era suportada apenas por seu

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

Informática I. Aula 22. http://www.ic.uff.br/~bianca/informatica1/ Aula 22-03/07/06 1

Informática I. Aula 22. http://www.ic.uff.br/~bianca/informatica1/ Aula 22-03/07/06 1 Informática I Aula 22 http://www.ic.uff.br/~bianca/informatica1/ Aula 22-03/07/06 1 Critério de Correção do Trabalho 1 Organização: 2,0 O trabalho está bem organizado e tem uma coerência lógica. Termos

Leia mais

Redes de Computadores. Camada de Transporte

Redes de Computadores. Camada de Transporte Redes de Computadores Camada de Transporte Objetivo! Apresentar as características da camada de transporte da arquitetura TCP/IP! Apresentar os serviços fornecidos pela camada de transporte! Estudar os

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

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

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

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

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

Capítulo 7 CAMADA DE TRANSPORTE

Capítulo 7 CAMADA DE TRANSPORTE Capítulo 7 CAMADA DE TRANSPORTE SERVIÇO SEM CONEXÃO E SERVIÇO ORIENTADO À CONEXÃO Serviço sem conexão Os pacotes são enviados de uma parte para outra sem necessidade de estabelecimento de conexão Os pacotes

Leia mais

REDES DE COMPUTADORES

REDES DE COMPUTADORES Conteúdo 1 Topologia de Redes 5 Escalas 5 Topologia em LAN s e MAN s 6 Topologia em WAN s 6 2 Meio Físico 7 Cabo Coaxial 7 Par Trançado 7 Fibra Óptica 7 Conectores 8 Conector RJ45 ( Par trançado ) 9 Conectores

Leia mais

Camada de Transporte, protocolos TCP e UDP

Camada de Transporte, protocolos TCP e UDP Camada de Transporte, protocolos TCP e UDP Conhecer o conceito da camada de transporte e seus principais protocolos: TCP e UDP. O principal objetivo da camada de transporte é oferecer um serviço confiável,

Leia mais

Redes de Computadores. Protocolos de comunicação: TCP, UDP

Redes de Computadores. Protocolos de comunicação: TCP, UDP Redes de Computadores Protocolos de comunicação: TCP, UDP Introdução ao TCP/IP Transmission Control Protocol/ Internet Protocol (TCP/IP) é um conjunto de protocolos de comunicação utilizados para a troca

Leia mais

UNIVERSIDADE. Sistemas Distribuídos

UNIVERSIDADE. Sistemas Distribuídos UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Comunicação Inter-Processos Sockets e Portas Introdução Sistemas distribuídos consistem da comunicação entre processos

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

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

Capítulo 7 CAMADA DE TRANSPORTE

Capítulo 7 CAMADA DE TRANSPORTE Capítulo 7 CAMADA DE TRANSPORTE INTRODUÇÃO (KUROSE) A Camada de Rede é uma peça central da arquitetura de rede em camadas A sua função é a de fornecer serviços de comunicação diretamente aos processos

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

INTERNET = ARQUITETURA TCP/IP

INTERNET = ARQUITETURA TCP/IP Arquitetura TCP/IP Arquitetura TCP/IP INTERNET = ARQUITETURA TCP/IP gatewa y internet internet REDE REDE REDE REDE Arquitetura TCP/IP (Resumo) É útil conhecer os dois modelos de rede TCP/IP e OSI. Cada

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

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

Professor: Gládston Duarte

Professor: Gládston Duarte Professor: Gládston Duarte INFRAESTRUTURA FÍSICA DE REDES DE COMPUTADORES Computador Instalação e configuração de Sistemas Operacionais Windows e Linux Arquiteturas físicas e lógicas de redes de computadores

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

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

Camada de Transporte TCP/IP e Aplicação

Camada de Transporte TCP/IP e Aplicação Universidade do Sul de Santa Catarina Camada de Transporte TCP/IP e Aplicação 1 Camada de Transporte Os serviços de transporte incluem os seguintes serviços básicos: Segmentação de dados de aplicações

Leia mais

CAMADA DE TRANSPORTE

CAMADA DE TRANSPORTE Curso Técnico de Redes de Computadores Disciplina de Fundamentos de Rede CAMADA DE TRANSPORTE Professora: Juliana Cristina de Andrade E-mail: professora.julianacrstina@gmail.com Site: www.julianacristina.com

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

Capítulo 11 - Camada de Transporte TCP/IP e de Aplicação. Associação dos Instrutores NetAcademy - Julho de 2007 - Página

Capítulo 11 - Camada de Transporte TCP/IP e de Aplicação. Associação dos Instrutores NetAcademy - Julho de 2007 - Página Capítulo 11 - Camada de Transporte TCP/IP e de Aplicação 1 Introdução à Camada de Transporte Camada de Transporte: transporta e regula o fluxo de informações da origem até o destino, de forma confiável.

Leia mais

Arquiteturas de Rede. Prof. Leonardo Barreto Campos

Arquiteturas de Rede. Prof. Leonardo Barreto Campos Arquiteturas de Rede 1 Sumário Introdução; Modelo de Referência OSI; Modelo de Referência TCP/IP; Bibliografia. 2/30 Introdução Já percebemos que as Redes de Computadores são bastante complexas. Elas possuem

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

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

Revisão. Karine Peralta karine.peralta@pucrs.br

Revisão. Karine Peralta karine.peralta@pucrs.br Revisão Karine Peralta Agenda Revisão Evolução Conceitos Básicos Modelos de Comunicação Cliente/Servidor Peer-to-peer Arquitetura em Camadas Modelo OSI Modelo TCP/IP Equipamentos Evolução... 50 60 1969-70

Leia mais

Redes. Pablo Rodriguez de Almeida Gross

Redes. Pablo Rodriguez de Almeida Gross Redes Pablo Rodriguez de Almeida Gross Conceitos A seguir serão vistos conceitos básicos relacionados a redes de computadores. O que é uma rede? Uma rede é um conjunto de computadores interligados permitindo

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

REDE DE COMPUTADORES

REDE DE COMPUTADORES REDE DE COMPUTADORES Tipos de classificação das redes de acordo com sua topologia Prof. Airton Ribeiro de Sousa E-mail: airton.ribeiros@gmail.com 1 Ao longo da historia das redes, varias topologias foram

Leia mais

Arquitetura TCP/IP. Parte VI Entrega de pacotes sem conexão (IP) Fabrízzio Alphonsus A. M. N. Soares

Arquitetura TCP/IP. Parte VI Entrega de pacotes sem conexão (IP) Fabrízzio Alphonsus A. M. N. Soares Arquitetura TCP/IP Parte VI Entrega de pacotes sem conexão (IP) Fabrízzio Alphonsus A. M. N. Soares Tópicos Conceitos Pacote (ou datagrama) IP Formato Campos do cabeçalho Encapsulamento Fragmentação e

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

Redes de Computadores. Trabalho de Laboratório Nº7

Redes de Computadores. Trabalho de Laboratório Nº7 Redes de Computadores Curso de Eng. Informática Curso de Eng. de Electrónica e Computadores Trabalho de Laboratório Nº7 Análise do tráfego na rede Protocolos TCP e UDP Objectivo Usar o Ethereal para visualizar

Leia mais

Redes de Computadores. Prof. André Y. Kusumoto andre_unip@kusumoto.com.br

Redes de Computadores. Prof. André Y. Kusumoto andre_unip@kusumoto.com.br Redes de Computadores Prof. André Y. Kusumoto andre_unip@kusumoto.com.br Open Systems Interconnection Modelo OSI No início da utilização das redes de computadores, as tecnologias utilizadas para a comunicação

Leia mais

Prof. Marcelo Machado Cunha Parte 3 www.marcelomachado.com

Prof. Marcelo Machado Cunha Parte 3 www.marcelomachado.com Prof. Marcelo Machado Cunha Parte 3 www.marcelomachado.com Protocolo é a linguagem usada pelos dispositivos de uma rede de modo que eles consigam se comunicar Objetivo Transmitir dados em uma rede A transmissão

Leia mais

Protocolos de Redes Revisão para AV I

Protocolos de Redes Revisão para AV I Protocolos de Redes Revisão para AV I 01 Aula Fundamentos de Protocolos Conceituar protocolo de rede; Objetivos Compreender a necessidade de um protocolo de rede em uma arquitetura de transmissão entre

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

Unidade 2.1 Modelos de Referência

Unidade 2.1 Modelos de Referência Faculdade INED Curso Superior de Tecnologia: Banco de Dados Redes de Computadores Disciplina: Redes de Computadores Prof.: Fernando Hadad Zaidan 1 Unidade 2.1 Modelos de Referência 2 Bibliografia da disciplina

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

Unidade 2.1 Modelos de Referência. Bibliografia da disciplina. Modelo OSI. Modelo OSI. Padrões 18/10/2009

Unidade 2.1 Modelos de Referência. Bibliografia da disciplina. Modelo OSI. Modelo OSI. Padrões 18/10/2009 Faculdade INED Unidade 2.1 Modelos de Referência Curso Superior de Tecnologia: Redes de Computadores Disciplina: Fundamentos de Redes Prof.: Fernando Hadad Zaidan 1 2 Bibliografia da disciplina Bibliografia

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

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

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

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

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

TCP/IP TCP UDP IP HTTP HTTPS FTP TFTP TELNET POP3 IMAP SMTP SNMP DHCP

TCP/IP TCP UDP IP HTTP HTTPS FTP TFTP TELNET POP3 IMAP SMTP SNMP DHCP TCP/IP TCP UDP IP HTTP HTTPS FTP TFTP TELNET POP3 IMAP SMTP SNMP DHCP HTTP (Hypertext Transfer Protocol ) Protocolo usado na Internet para transferir as páginas da WWW (WEB). HTTPS (HyperText Transfer

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

Camada de Transporte

Camada de Transporte Camada de Transporte Conceitos Básicos Redes de Computadores A. S. Tanenbaum Mário Meireles Teixeira. UFMA-DEINF Protocolos Protocolo: Conjunto de regras e formatos usados para comunicação entre entidades,

Leia mais

TECNOLOGIA WEB. Principais Protocolos na Internet Aula 2. Profa. Rosemary Melo

TECNOLOGIA WEB. Principais Protocolos na Internet Aula 2. Profa. Rosemary Melo TECNOLOGIA WEB Principais Protocolos na Internet Aula 2 Profa. Rosemary Melo Tópicos abordados Compreender os conceitos básicos de protocolo. Definir as funcionalidades dos principais protocolos de Internet.

Leia mais

Redes de Computadores

Redes de Computadores s de Computadores Prof. Macêdo Firmino Revisão do Modelo de Camadas da Internet (TCP/IP) Macêdo Firmino (IFRN) s de Computadores Novembro de 2012 1 / 13 Modelo de Camadas Revisão de de Computadores Os

Leia mais

Tecnologia e Infraestrutura. Conceitos de Redes

Tecnologia e Infraestrutura. Conceitos de Redes Tecnologia e Infraestrutura Conceitos de Redes Agenda Introdução às Tecnologias de Redes: a) Conceitos de redes (LAN, MAN e WAN); b) Dispositivos (Hub, Switch e Roteador). Conceitos e tipos de Mídias de

Leia mais

Considerações no Projeto de Sistemas Cliente/Servidor

Considerações no Projeto de Sistemas Cliente/Servidor Cliente/Servidor Desenvolvimento de Sistemas Graça Bressan Graça Bressan/LARC 2000 1 Desenvolvimento de Sistemas Cliente/Servidor As metodologias clássicas, tradicional ou orientada a objeto, são aplicáveis

Leia mais

Redes de Computadores Modelo de referência TCP/IP. Prof. MSc. Hugo Souza

Redes de Computadores Modelo de referência TCP/IP. Prof. MSc. Hugo Souza Redes de Computadores Modelo de referência TCP/IP Prof. MSc. Hugo Souza É uma pilha de protocolos de comunicação formulada em passos sequenciais de acordo com os serviços subsequentes das camadas pela

Leia mais

3 Qualidade de serviço na Internet

3 Qualidade de serviço na Internet 3 Qualidade de serviço na Internet 25 3 Qualidade de serviço na Internet Além do aumento do tráfego gerado nos ambientes corporativos e na Internet, está havendo uma mudança nas características das aplicações

Leia mais

Redes de Computadores. Camada de Transporte de Dados: protocolos TCP e UDP Prof. MSc Hugo Vieira L. Souza

Redes de Computadores. Camada de Transporte de Dados: protocolos TCP e UDP Prof. MSc Hugo Vieira L. Souza Redes de Computadores Camada de Transporte de Dados: protocolos TCP e UDP Prof. MSc Hugo Vieira L. Souza Este documento está sujeito a copyright. Todos os direitos estão reservados para o todo ou quaisquer

Leia mais

Cap 01 - Conceitos Básicos de Rede (Kurose)

Cap 01 - Conceitos Básicos de Rede (Kurose) Cap 01 - Conceitos Básicos de Rede (Kurose) 1. Quais são os tipos de redes de computadores e qual a motivação para estudá-las separadamente? Lan (Local Area Networks) MANs(Metropolitan Area Networks) WANs(Wide

Leia mais

Aula 03 Regras de Segmentação e Switches

Aula 03 Regras de Segmentação e Switches Disciplina: Dispositivos de Rede II Professor: Jéferson Mendonça de Limas 4º Semestre Aula 03 Regras de Segmentação e Switches 2014/1 19/08/14 1 2de 38 Domínio de Colisão Os domínios de colisão são os

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

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

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

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

Arquitetura de Redes de Computadores. Bruno Silvério Costa

Arquitetura de Redes de Computadores. Bruno Silvério Costa Arquitetura de Redes de Computadores Bruno Silvério Costa Projeto que descreve a estrutura de uma rede de computadores, apresentando as suas camadas funcionais, as interfaces e os protocolos usados para

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

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

IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET

IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET 1 IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET Daniel da Silva Carla E. de Castro Franco Diogo Florenzano Avelino daniel.silva1@ext.mpsa.com

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

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

REDES DE COMPUTADORES

REDES DE COMPUTADORES REDES DE COMPUTADORES O QUE É PROTOCOLO? Na comunicação de dados e na interligação em rede, protocolo é um padrão que especifica o formato de dados e as regras a serem seguidas. Sem protocolos, uma rede

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 Agenda Motivação Objetivos Histórico Família de protocolos TCP/IP Modelo de Interconexão Arquitetura em camadas Arquitetura TCP/IP Encapsulamento

Leia mais

1 Redes de Computadores - TCP/IP Luiz Arthur

1 Redes de Computadores - TCP/IP Luiz Arthur 1 Redes de Computadores - TCP/IP Luiz Arthur TCP/IP O protocolo TCP/IP atualmente é o protocolo mais usado no mundo. Isso se deve a popularização da Internet, a rede mundial de computadores, já que esse

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

Prof. Luiz Fernando Bittencourt MC714. Sistemas Distribuídos 2 semestre, 2013

Prof. Luiz Fernando Bittencourt MC714. Sistemas Distribuídos 2 semestre, 2013 MC714 Sistemas Distribuídos 2 semestre, 2013 Virtualização - motivação Consolidação de servidores. Consolidação de aplicações. Sandboxing. Múltiplos ambientes de execução. Hardware virtual. Executar múltiplos

Leia mais

Introdução. Arquitetura de Rede de Computadores. Prof. Pedro Neto

Introdução. Arquitetura de Rede de Computadores. Prof. Pedro Neto Introdução Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 1. Introdução i. Conceitos e Definições ii. Tipos de Rede a. Peer To Peer b. Client/Server iii. Topologias

Leia mais

Arquitetura de Computadores II

Arquitetura de Computadores II Universidade Federal do Rio de Janeiro Informática DCC/IM Arquitetura de Computadores II Sistemas de Troca de Mensagens O Sistema de Comunicação provê tipicamente os seguintes serviços para as aplicações:

Leia mais

Capítulo 8 - Aplicações em Redes

Capítulo 8 - Aplicações em Redes Capítulo 8 - Aplicações em Redes Prof. Othon Marcelo Nunes Batista Mestre em Informática 1 de 31 Roteiro Sistemas Operacionais em Rede Modelo Cliente-Servidor Modelo P2P (Peer-To-Peer) Aplicações e Protocolos

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

Um pouco sobre Pacotes e sobre os protocolos de Transporte

Um pouco sobre Pacotes e sobre os protocolos de Transporte Um pouco sobre Pacotes e sobre os protocolos de Transporte O TCP/IP, na verdade, é formado por um grande conjunto de diferentes protocolos e serviços de rede. O nome TCP/IP deriva dos dois protocolos mais

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

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

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

5.2 MAN s (Metropolitan Area Network) Redes Metropolitanas

5.2 MAN s (Metropolitan Area Network) Redes Metropolitanas MÓDULO 5 Tipos de Redes 5.1 LAN s (Local Area Network) Redes Locais As LAN s são pequenas redes, a maioria de uso privado, que interligam nós dentro de pequenas distâncias, variando entre 1 a 30 km. São

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

Capítulo 6 - Protocolos e Roteamento

Capítulo 6 - Protocolos e Roteamento Capítulo 6 - Protocolos e Roteamento Prof. Othon Marcelo Nunes Batista Mestre em Informática 1 de 53 Roteiro (1 / 2) O Que São Protocolos? O TCP/IP Protocolos de Aplicação Protocolos de Transporte Protocolos

Leia mais

Tecnologia PCI express. Introdução. Tecnologia PCI Express

Tecnologia PCI express. Introdução. Tecnologia PCI Express Tecnologia PCI express Introdução O desenvolvimento de computadores cada vez mais rápidos e eficientes é uma necessidade constante. No que se refere ao segmento de computadores pessoais, essa necessidade

Leia mais