Preview only show first 10 pages with watermark. For full document please download

Manual Tcp-ip

TCP E IPs nas redes

   EMBED

  • Rating

  • Date

    December 2018
  • Size

    1.2MB
  • Views

    704
  • Categories


Share

Transcript

Protocolos TCP/IP ARP (Address Resolution Protocol): o protocolo é responsável em fazer a conversão entre os endereços IPs e os endereços MAC da rede. Em uma rede grande, os pacotes TCP/IP são encaminhados até a rede de destino através dos roteadores. Atingindo o destino, o protocolo ARP entra em acção para detectar o endereço da placa de rede para qual o pacote deve ser entregue, já que no pacote há somente o endereço IP de destino e não o endereço da placa de rede. O RAP funciona mandado primeiramente uma mensagem de broadcast para a rede perguntando, a todas as máquinas, qual responde pelo endereço IP para o qual pretende-se transmitir um pacote. Então, a tal maquina que corresponde o tal endereço responde, identificando-se e informando o seu endereço MAC para que a transmissão de dados entre essas maquinas possa ser estabelecida. Exemplo: 192.168.1.254 ether 00:30:CD:03:CD:D2 C eth0 192.168.1.23 ether 00:11:D8:56:62:76 C eth0 O ARP é utilizado apenas dentro de rede local. RARP (Reverse Address Resolution Protocol): o protocolo RARP permite que uma maquina descubra um endereço IP através de um endereço MAC, fazendo o inverso do que o protocolo ARP faz. o protocolo RARP é utilizado essencialmente para as estações de trabalho que não têm disco duro e que desejam conhecer o seu endereço físico. O protocolo RARP permite a uma estação conhecer o seu endereço IP a partir de uma tabela de correspondência entre endereço MAC (endereço físico) e endereços IP alojados por uma ponte (gateway) situada na mesma rede local (LAN). Para tal, é necessário que o administrador defina os parâmetros do gateway (switch) com a tabela de correspondência dos endereços MAC/IP. Com efeito, ao contrário do ARP, este protocolo é estático. É necessário, por isso, que a tabela de correspondência esteja sempre actualizada para permitir a conexão de novas placas de rede. IP (Internet Protocol): o protocolo IP é um protocolo não orientado a conexão, isto é, ele não verifica se o datagrama chegou ou não ao destino. A função do IP é o roteamento, ou seja, adicionar mecanismos para que o datagrama chegue o mais rapidamente possível ao seu destino. Isso é feito com o auxílio dos roteadores da rede, que escolhem os caminhos mais rápidos entre a origem e o destino. O protocolo IP determina o destinatário da mensagem graças a 3 campos: O campo dirige IP: endereço da máquina. O campo máscara de subrede: uma máscara de subrede permite ao protocolo IP determinar a parte do endereço IP que se refere à rede. O campo ponte estreita por defeito: Permite ao protocolo Internet saber a que máquina entregar o datagrama, se por acaso a máquina de destino não está na rede local. Datagrama Os dados circulam na Internet sob a forma de datagramas (fala-se também de pacotes). Os datagramas são dados encapsulados, isto é, são dados aos quais se acrescentaram cabeçalhos que correspondem a informações sobre o seu transporte (como o endereço IP de destino).  Os dados contidos nos datagramas são analisados (e eventualmente alterados) pelos switches que permitem o seu trânsito.  Estrutura Simplificada do Datagrama IP Estrutura do Datagrama IP Maneira Tradicional de se representar a estrutura do Datagrama IP  "<-- "32 bits "--> " "Versão "Comprimento "Tipo de serviço "Comprimento total " "(4 bits)"de cabeçalho"(8 bits) "(16 bits) " " "(4 bits) " " " "Identificação "Bandeira "Desfasamento fragmento " "(16 bits) "(3 bits) "(13 bits) " "Duração de vida "Protocolo "Soma de controlo cabeçalho " "(8 bits) "(8 bits) "(16 bits) " "Endereço IP fonte (32 bits) " "Endereço IP destino (32 bits) " "Dados " No datagrama IP encontramos os seguintes campos: Versão (4bits): trata-se da versão do protocolo IP que se utiliza (actualmente utiliza-se a versão 4 IPv4) para verificar a validade do datagrama. É codificada em 4 bits. Comprimento de cabeçalho, ou IHL para Internet Header Length (4 bits): trata-se do número de palavras de 32 bits que constituem o cabeçalho (nota: o valor mínimo é 5). Este campo é codificado em 4 bits. Tipo de serviço (8 bits): indica a maneira segundo a qual o datagrama deve ser tratado. Comprimento total (16 bits) : indica a dimensão total do datagrama em bytes. A dimensão deste campo de 2 bytes, a dimensão total da datagrama não pode exceder 65536 bytes. Utilizado conjuntamente com a dimensão do cabeçalho, este campo permite determinar onde estão situados os dados. Identificação, bandeiras (flags) e deslocação de fragmento são campos que permitem a fragmentação dos datagramas, e que serão explicados abaixo. Duração de vida chamada também TTL, para Time To Live (8 bits): este campo indica o número máximo de switchs através através dos quais o datagrama pode passar. Assim este campo é reduzido a cada passagem em switch, quando este atinge o valor crítico de 0, o switch destrói o datagrama. Isto evita o congestionamento da rede pelos datagramas perdidos. Protocolo (8 bits): este campo, em notação decimal, permite saber de que protocolo procede o datagrama: ICMP : 1, IGMP : 2, TCP : 6, UDP : 17. Soma de controlo do cabeçalho ou, em inglês, header checksum (16 bits) : este campo contém um valor codificado de 16 bits, que permite controlar a integridade do cabeçalho a fim de determinar se este não foi alterado durante a transmissão. A soma de controlo é o complemento de todas as palavras de 16 bits do cabeçalho (campo soma de controlo excluído). Isto faz-se para que, quando se faz a soma dos campos do cabeçalho (soma de controlo incluída), se obtenha um número com todos os bits posicionados a 1. Endereço IP fonte (32 bits) : Este campo representa o endereço IP da máquina emissora, permite ao destinatário responder. Endereço IP destino (32 bits) : endereço IP do destinatário da mensagem. Dados: são os dados que o datagrama está carregando. ICMP (Internet Control Message Protocol): é um protocolo que permite gerir as informações relativas aos erros nas máquinas conectadas. Dado os poucos controlos que o protocolo IP realiza, permite não corrigir estes erros mas dá-los a conhecer aos protocolos das camadas vizinhas. Assim, o protocolo ICMP é utilizado por todos os switches, que o utilizam para assinalar um erro (chamado Delivery Problem). Caso um roteador não consiga passar adiante um datagrama recebido – por estar congestionado demais ou então por ter zerado o campo Tempo de Vida (TTL, Time To Live), do datagrama, por exemplo, ele precisa informar ao transmissor do datagrama que ocorreu um erro. Como mostramos na figura a seguir, a mensagem ICMP è transmitida usando um datagrama IP. Como o IP não verifica se um datagrama chegou ou não ao destino, pode ocorrer de a própria mensagem ICMP ser perdida no meio caminho. Encapsulamento de uma mensagem ICMP Estrutura das mensagens ICMP Cada mensagem ICMP possui uma estrutura própria, mas todas elas começam da mesma maneira, mostrada na figura 2. O campo tipo informa justamente o tipo de mensagem ICMP. Sò para você ter uma ideia concreta dos tipos de mensagens ICMP existentes, na tabela a seguir mostramos alguns desses tipos e seu valor numérico (entrado no campo Tipo). Cabeçalho do protocolo ICMP "Valor "Tipo da mensagem ICMP " "0 "Resposta á mensagem de eco " "3 "Aviso de destino inalcançável " "4 "Redução da velocidade de transmissão " "5 "Solicitação de redireccionamento " "8 "Mensagem de eco " "11 "Tempo de vida excedido " "12 "Problema de parâmetros " "13 "Solicitação de horário " "14 "Respostas á solicitarão de horário " "17 "Solicitação da mascara de endereço " "18 "Resposta á solicitação da mascara de endereço " O campo Código prove mais informações sobre a mensagem ICMP, e o campo Checksum apresenta a soma de todos os valores presentes na mensagem ICMP. Checksum - é uma conta que consiste em somar todos os bytes presentes no pacote de dados e enviar o resultado dentro do próprio pacote. Funcionamento de algumas das mensagens ICMP existentes: ECO A mensagem de eco serve para verificar se o caminho entre o transmissor e o receptor esta bom. O transmissor envia um datagrama contendo uma mensagem ICMP de eco e o receptor, ao receber essa mensagem, responde com uma mensagem ICMP de resposta de eco, incluindo no datagrama os dados recebidos no datagrama original. Na maioria dos sistemas operacionais, o comando que efectua esta tarefa e chamado ping. Versões mais sofisticadas do ping, em vez de enviarem uma única mensagem de eco, enviam várias, mostrando estatísticas de tempo e perda de datagramas. DESTINO INALCANÇAVEL Caso o roteador não consiga entregar um determinado datagrama, ele envia para o transmissor uma mensagem ICMP de destino inalcançável. CONGESTIONAMENTO Um roteador pode porventura receber um número maior de datagramas do que ele e capaz de processar. Caso isso ocorra, dizemos que o roteador esta congestionado. Neste tipo de situação, o roteador inclusive pode ter de descartar datagramas por não estar sendo capaz de recebe - los naquele momento. Quando isso ocorre, o roteador envia uma mensagem de redução da velocidade de transmissão ao transmissor do datagrama descartado. O transmissor, ao recebera essa mensagem, passa a transmitir datagramas a uma velocidade menor. Como você pode perceber pela tabela mostrada anteriormente, não existe nenhuma mensagem ICMP para fazer o transmissor retornar a sua velocidade de transmissão normal. Então, o transmissor voltara gradualmente a sua velocidade de transmissão normal a medida em que for parando de receber mensagens ICMP de redução da velocidade de transmissão. REDIRECIONAMENTO Caso o roteador verifique que na rede local onde ele está instalado existe uma rota melhor a ser usada para enviar um datagrama recebido, ele envia uma mensagem ICMP de solicitação de redireccionamento ao transmissor, enviando também o datagrama ao destino. Essa mensagem e extremamente útil actualizar as máquinas a respeito das melhores notas disponíveis na rede local. Para entender melhor esse procedimento, observe a figura 3. Imagine que a máquina 200.123.123.1 queria mandar um pacote de dados para um micro presente na rede 3 mas, por causa de sua configuração (que esta indicando o endereço 200.123.123.2 com default gateway, isto e, o ponto de saída padrão da rede esta configuração não esta indicada na figura 3.23), enviou o datagrama1 (endereço 200.123.123.2).O roteador 1 encaminhara o datagrama ao roteador 2 e mandara uma mensagem ICMP de redireccionamento a máquina transmissora informando que o melhor caminho para aquele destino (rede 3) e através do roteador 2 (endereço 200.123.123.3). funcionamento da mensagem de redireccionamento Note que esse esquema só funciona na rede local onde o roteador esta instalado. Ele não serve para apontar a melhor rota dentro de uma rede interconectada com outras redes, onde há outros roteadores envolvidos. Por exemplo, observe a figura 4. O roteador 5, ao receber um datagrama vindo da maquina transmissora não tem como enviar de volta uma mensagem ICMP para o roteador 1 informando que o caminho mais curto ate ele e feito através do roteador 4, já que o roteador 5 não sabe qual e o endereço IP do roteador 1! Figura4:O comando ICMP de redireccionamento não reprograma roteadores em redes interconectadas TEMPO DE VIDA EXCEDIDO Quando o contador Tempo de Vida (TTL, Time to Live) do datagrama e zerado, o roteador enviam para a máquina transmissora uma mensagem ICMP de tempo de vida excedido. Como vimos anteriormente, todo datagrama IP possui um campo tempo de vida, que possui um valor que e decrementado a cada vez que o datagrama passa por um roteador. Esse campo serve para que os roteadores descartem datagramas que não estejam conseguindo atingir o seu destino por algum motivo (um roteador mal configurado no meio do caminho, por exemplo). Dessa forma, esse mecanismo faz com que datagramas perdidos não fiquem infinitamente circulando na rede. PROBLEMA NOS PARAMETROS Quando um roteador ou uma máquina encontra problemas para processar um datagrama e não há nenhuma outra mensagem ICMP que cubra o problema encontrado, o roteador (ou maquina) envia uma mensagem de problema nos parâmetros para o transmissor. Normalmente essa mensagem e usada quando o roteador não consegue descodificar correctamente as informações presentes no cabeçalho IP do datagrama, isto e, quando há algum problema no cabeçalho do datagrama. SOLICITAÇÃO DE HORÀRIO Através dessa mensagem de controlo uma máquina pode pedir o horário do relógio de outra máquina que esteja conectada na rede. A máquina transmissora envia um comando de solicitação de horário (mensagem ICMP tipo 13) a máquina da qual quer saber o horário, incluindo no datagrama a hora do envio do datagrama. A máquina receptora responde ao comando de solicitação de horário (mensagem ICMP tipo 14) incluindo o horário que o datagrama chegou ate ela e o horário em que o datagrama de resposta foi enviado. O horário e contado em milissegundos a partir da meia-noite, Horário Universal (GMT, Greenwich Mean Time, horário de Greenwich). Um dos usos desse comando poderia ser o de sincronizar o relógio de duas máquinas. O problema e que há um atraso provocado pela rede, que impede que essa sincronia fique 100% perfeita. Outro uso desse comando e para medir o tempo de resposta da rede, isto e, o tempo que um datagrama demora para atingir um determinado destino. O User Datagram Protocol (UDP) é um protocolo de transporte não orientado á conexão. O UDP é pouco confiável, não existem técnicas no protocolo para confirmar que os dados chegaram ao destino correctamente. Por esse motivo esse protocolo não é usado no transporte de dados importantes como arquivos e e-mails. Protocolos que Utilizam o UDP Como dito anteriormente, o protocolo UDP é simples se comparado ao TCP, então somente alguns protocolos utilizam o UDP para transporte de dados que são: o TFTP (Trivial File Transfer Protocol), SNMP (Simple Network Management Protocol), DHCP (Dynamic Host Control Protocol), DNS (Domain Name Service). Estrutura do Datagrama UDP Como foi visto no TCP/IP as aplicações comunicam-se com os protocolos da camada de transporte (o UDP e o TCP) através de portas. Significados dos diferentes campos Porta Origem : trata-se do número de porta que corresponde à aplicação emissora do segmento UDP. Este campo representa um endereço de resposta para o destinatário. Assim, este campo é opcional, isto significa que se não se precisar a porta fonte, as 16 bits deste campo serão postas a zero, neste caso o destinatário não poderá responder (isto não é necessariamente necessário, nomeadamente para mensagens unidireccionais. Porta Destino : Este campo contém a porta que corresponde à aplicação da máquina destinatário à qual nos dirigimos. Tamanho da mensagem : Este campo precisa o comprimento total do segmento, incluindo o cabeçalho, ora o cabeçalho tem um comprimento de 4 x 16 bits (são 8 x 8 bits), então o campo comprimento é necessariamente superior ou igual a 8 bytes. Soma de controlo (checksum): Trata-se de uma soma de controlo realizada de maneira a poder controlar a integridade do segmento. O TCP (Transmission Control Protocol) é um dos principais protocolos da camada de transporte do modelo TCP/IP. Ele permite, a nível das aplicações, gerir os dados em proveniência da (ou com destino à) camada inferior do modelo (ou seja, o protocolo IP). Quando os dados são fornecidos ao protocolo IP, este encapsula-os em datagramas IP, fixando o campo protocolo em 6 (para saber que o protocolo ascendente é o TCP...). O TCP é um protocolo orientado para a conexão, isto é, ele permite a duas máquinas comunicantes, controlar o estado da transmissão.  As principais características do protocolo TCP são: TCP entrega ordenadamente os datagramas provenientes do protocolo IP TCP verifica a onda de dados para evitar uma saturação da rede TCP formata os dados em segmentos de comprimento variável para "entregá- los" ao protocolo IP TCP permite o multiplex dos dados, quer dizer, faz circular, simultaneamente, as informações que proveem de fontes (aplicações, por exemplo) distintas numa mesma linha TCP permite a início e o fim de uma comunicação de maneira educada. Objectivos do TCP Graças ao protocolo TCP, as aplicações podem comunicar de forma segura (graças ao sistema de avisos de recepção do protocolo TCP), independentemente das camadas inferiores. Isto significa que os roteadores (que trabalham na camada Internet) tem como único papel o encaminhamento dos dados sob a forma de datagramas, sem se preocuparem com o controle dos dados, porque este é realizado pela camada de transporte (mais concretamente pelo protocolo TCP).  Durante uma comunicação através do protocolo TCP, as duas máquinas devem estabelecer uma conexão. A máquina emissora (a que pede a conexão) chama-se cliente, enquanto a máquina receptora se chama servidor. Diz-se então que estamos num ambiente Cliente-Servidor.  As máquinas em tal ambiente comunicam em modo ligado, ou seja, que a comunicação é feita nos dois sentidos.  Para permitir o bom desenrolar da comunicação e de todos os controles que a acompanham, os dados são encapsulados, isto é, juntamos ao pacote de dados um cabeçalho que vai sincronizar as transmissões e assegurar a sua recepção.  Outra particularidade do TCP é poder controlar o débito dos dados graças à sua capacidade para emitir mensagens de dimensão variável: estas mensagens são chamadas de "segmentos".  O protocolo TCP é o mais complexo do sistema de protocolos TCP/IP. Ele recebe os datagramas IP e trata de colocados em ordem (já que em redes de grande os datagramas geralmente chegam for a de ordem) e verificar se todos chegaram correctamente. O IP não verifica se um datagrama chegou ou não ao destino, ficando o TCP responsável por essa tarefa. As aplicações enviam dados a serem transmitidos pela rede ao protocolo TCP, através de canais virtuais de comunicação chamados de portas. As portas mais usadas pelo protocolo TCP são: "Porta "Uso " "11 "Systat " "15 "Netsat " "20 "FTP(Dados) " "21 "FTP(Controle) " "23 "Telnet " "25 "SMTP " "43 "Whois " "79 "Finger " "80 "HTTP " Transmissão e recepção de pacotes O protocolo TCP envia uma mensagem de confirmação de recebimento a máquina transmissora chamada acknowledge (também chamada ack). Se o transmissor não receber uma confirmação de recebimento dentro de um determinado tempo, o pacote é retransmitido, já que isso significa que datagrama IP carregando informações inseridas pelo protocolo TCP foram desgastados no meio do caminho por algum motivo. ESTRUTURA DO SEGMENTO TCP Estrutura do segmento TCP Maneira tradicional de se representar a estrutura do segmento TCP. Encontramos os seguintes campos no cabeçalho TCP: Porta de origem: indica a aplicação que origina os dados. Porta do destino: indica a aplicação para a qual os dados serão entregues no receptor. Número de sequência: identifica o número do primeiro byte presente no segmento dentro do fluxo de dados gerados pela aplicação. Número de confirmação: é o acknowledge (ack). Aqui é colocado o número de sequência do próximo segmento que o receptor espera receber. HLEN ou Offset: Esse campo (header lenght) especifica o tamanho do cabeçalho do pacote TCP, contado em número de 32 bits, isto é, o número de linhas existentes na figura xxx (em outras palavras o numero de bits existentes no cabeçalho dividido por 32). O tamanho mínimo do cabeçalho é de cinco palavras de 32bits (20 bytes), sendo esse o valor mais comum do campo HLEN já que normalmente o campo opções + pad não é usado. Quando este campo é usado, o valor do campo HLEN é seis. Reservados: Esse campo não é usado. Bits de controlo ou bits de código: esses bits são usados para controle, conforme mostra a próxima tabela(os seis bits deste campo são contados da esquerda para a direita, isto é, o bit URG é o primeiro da esquerda e assim por diante). "Bit "Significado " "URG "O campo ponteiro " "ACK "O campo Número de confirmação é válido " "PSH "Força a entrega dos dados (push) " "RST "Reiniciar a conexão " "SYN "Sincronismo, determina o número de " " "sequência inicial " "FIN "O transmissor chegou ao fim de seus dados " Tamanho da janela: define o tamanho da janela, em bytes, que será usada na conexão. Checksum: é calculado de forma similar ao checksum do protocolo UDP, com a criação de um pseudo - cabeçalho. Ponteiro urgente: caso existam casos que precisem serem processados antes de a conexão chegar ao fim, dentro de uma mesma conexão, o bit URG é activado e este campo é usado para informar a posição, dentro do segmento, em que os dados urgentes terminam. Opções + pad: Esse campo é opcional e possui tamanho variável. Se não for usado, o tamanho do cabeçalho TCP é de 20 bytes. Caso seja usado, o tamanho do cabeçalho passa a ter 24bytes. Se o campo opções for menor que 32 bits, então são adicionados zeros (chamados pad) ate que tamanho desse campo tenha 32 bits (4 bytes). Normalmente este campo é usado para que o transmissor e o receptor troquem informações sobre qual será o tamanho máximo do segmento que será usado na conexão. Essa informação é chamada tamanho máximo do segmento ou MSS (Maximum segment size). DNS (Domain Name System) – um sistema de gerenciamento de nomes hierárquico e distribuído operando segundo duas definições: Examinar e actualizar seu banco de dados e resolver nomes de domínios em endereços de rede IPs. Resolução de nomes de domínios ou resolução de endereços à correlação entre os endereços IP e o nome de domínio associado. Os servidores DNS possuem funções: converter endereços nominais em endereços IP e vice-versa. O sistema de nomes utilizado possui uma estrutura hierárquica. Exemplo da estrutura hierárquica de servidores na internet. Um servidor .com por exemplo, é responsável por todos os endereços terminados em .com, assim como u servidor .com.br é responsável por todos os endereços terminados em .com.br. Cada rede local TCP/IP precisa ter ao menos um servidor DNS. Todos os pedidos por conversão de nomes em endereços IP ou vice-versa são enviados a este servidor. Caso ele não consiga efectuar essa conversão (também chamada resolução), ele responde o pedido informando o endereço de um servidor que seja hierarquicamente superior a ele e, com isso, a maior probabilidade de conhecer o endereço solicitado. Se outro servidor contactado também não conhecer o endereço, ele responderá informando o endereço de outro servidor hierarquicamente superior e assim sucessivamente, até o endereço ser localizado (ou não, caso seja um endereço inexistente). Formato das Mensagens DNS O formato da mensagem DNS é mostrado na figura a seguir. Ela possui um cabeçalho de tamanho fixo (12 bytes) e uma área de dados variável (as secções de perguntas, respostas, autoridades e informações adicionais). Encapsulamento da mensagem DNS Formato das mensagens DNS Os campos existentes na mensagem DNS são as seguintes: Identificação: usado para numerar a mensagem DNS, para que a máquina que enviou a mensagem consiga identificar correctamente a resposta para a mensagem, quando ela chega. Parâmetros: identificar o tipo de mensagem, conforme a tabela a seguir. Por exemplo, se o bit zero estiver desativado, significa que a mensagem é uma pergunta; já se ele estiver activado, a mensagem é uma resposta, e assim por diante. O bits são contados da esquerda para a direita dentro deste campo. "Bit "Significado " "0 "Operação: 0: Pergunta, 1: Resposta " "1 a 4 "Tipo de Pergunta: 0: Padrão; 1: Reserva; 2; Complementar " " "1 (obseleto); 3: Complementar 2 (obseleto) " "5 "Resposta de autoridade " "6 "Mensagem Truncada " "7 "Recorrência desejada " "8 "Recorrência disponível " "9 a 11 "Reservado " "12 a 15 "Tipo de resposta; 0: Não houve erros; 1: Erro no formato " " "de pergunta; 2: folha no servidor; 3: nome inexistente " Número de perguntas: informa o número de perguntas existentes no campo secção de perguntas. Número de respostas: idem para as respostas. Número de Autoridades: idem para endereços de autoridades. Número de informações adicionais: idem para as informações adicionais. Telnet O protocolo Telnet é um protocolo standard de Internet que permite io interface de terminais e de aplicações através da Internet. Este protocolo fornece as regras básicas para permitir ligar um cliente (sistema composto de uma afixação e um teclado) a um intérprete de comando (do lado do servidor). O protocolo Telnet baseia-se numa conexão TCP para enviar dados em formato ASCII codificado em 8 bits entre os quais se intercalam sequências de controlo Telnet. Fornece assim um sistema orientado para a comunicação, bidireccional (half-duplex), codificado em 8 bits fácil de aplicar. O protocolo Telnet assenta em três conceitos fundamentais: O paradigma do terminal rede virtual (NVT, Network Virtual Terminal); O princípio de opções negociadas; As regras de negociação. O telnet é um terminal remoto, onde o micro cliente pode fazer um login em um servidor qualquer que esteja conectado à rede (ou à Internet, se a rede estiver conectada a ela). Com isso, através do Telnet o usuário pode manipular o servidor como se ele estivesse sentado em frente a ele, localmente – muito embora o usuário possa estar a milhares de quilómetros de distancia. Tudo aquilo que o usuário fizer no terminal remoto, na verdade ele estará fazendo no servidor, e não em seu computador local. O telnet é extremamente simples. Ele usa o código ASCII puro para a transmissão de dados, utilizando o protocolo TCP através da porta 23. Assim, quando é pressionada a tecla A no cliente é imediatamente enviado o valor 65 para o servidor (65 é o valor ASCII da tecla A). FTP (File Transfer Protocol): é como o seu nome o indica, um protocolo de transferência de ficheiro. Esse protocolo utiliza duas portas para se comunicar com o TCP: 21, por onde circulam informações de controle (por exemplo, o nome do arquivo a ser transferido) e 20, por onde circulam os dados. O papel do Protocolo FTP O protocolo FTP define a maneira segundo a qual os dados devem ser transferidos numa redeTCP/IP.  O protocolo FTP tem como objectivos: permitir uma partilha de ficheiros entre máquinas distantes permitir uma independência dos sistemas de ficheiros das máquinas clientes e servidor permitir transferir dados de maneira eficaz o modelo FTP O protocolo FTP inscreve-se num modelo cliente-servidor, ou seja, uma máquina envia ordens (o cliente) e a outra espera pedidos para efectuar acções (o servidor). Aquando de uma conexão FTP, dois canais de transmissão estão abertos : Um canal para os comandos (canal de controlo) Um canal para os dados Funcionamento do FTP Os micros clientes necessitam de um programa cliente FTP para terem acesso a um servidor FTP. Na conexão, é pedido um login e um senha. O servidor de FTP pode ser configurado para receber conexões anónimas, sem a necessidade de senha, para arquivos que deseje tornar públicos. SMTP (Simple Mail Transfer Protocol) É o protocolo padrão para envio de e-mails através da internet. É um protocolo relativamente simples, baseado em texto simples, onde um ou vários destinatários de uma mensagem são especificado (e, na maioria dos casos, validados) sendo, depois a mensagem transferida. É bastante fácil testar um sevidor SMTP usando o programa telnet. Esse protocolo usa a porta 25 numa rede TCP. A resolução de um servidor SMTP de um dado domínio é possibilitada por sua entrada MX (Mail eXchange). E e-mail é hoje um dos meios mais conhecidos para nós, humanos, trocarmos informações. Ele é trocado através de um protocolo chamado SMTP. Funcionamento de e-mail A comunicação entre os programas clientes e os servidores de e-mail é extremamente simples. Toda comunicação é feita em ASCII puro, através de comandos extremamente simples que são facilmente entendidos por humanos. O conteúdo da mensagem em si também é enviado em ASCII puro. Actualmente pode- se usar o padrão MIME em lugar do ASCII. O padrão MIME foi criado para permitir o envio de informações não-ASCII, como imagens e documentos que não estejam no formato texto puro dentro do e-mail. Permite o envio de arquivos anexados (attachments) ao e-mail. HTTP O protocolo HTTP (HyperText Transfer Protocol) é o protocolo mais utilizado na Internet desde 1990. A versão 0.9 destinava-se unicamente a transferir dados na Internet (em especial páginas Web escritas em HTML). A versão 1.0 do protocolo (a mais utilizada) permite doravante transferir mensagens com cabeçalhos que descrevem o conteúdo da mensagem utilizando uma codificação de tipo MIMO.  O objectivo do protocolo HTTP é permitir uma transferência de ficheiros (essencialmente no formato HTML) localizados graças a uma cadeia de caracteres chamada URL entre um navegador (o cliente) e um servidor Web (chamado de resto http nas máquinas UNIX). A internet não seria a mesma sem o WWW (world wide web). O bom que a internet sofreu nos últimos anos foi graças à criação desse recurso. Um site www consiste em uma série de documentos hipermédia, acessados através de um endereço, também chamado URL (uniforme Resource Locator), como por exemplo, www.seusite.com.br. A transferência de documentos hipermédia é feita através do protocolo HTTP. Um servidor WWW hospeda o site, enquanto um cliente (um browser Internet) faz a requisição dos documentos lá contidos. Essa transferência é feita usando a porta 80 do protocolo TCP. Esses documentos são escritos em diversas linguagens e o browser é o responsável por interpretar tais linguagens. A mais simples de todas é o texto puro, passando pelo famoso HTML (HyperText Markup Language) e chegando a outras linguagens mais recentes e suportadas somente pelos navegadores mais novos. Exemplo de uma comunicação HTTP A comunicação usando o HTTP é bidireccional e permite dois recursos para a diminuição do trafego da rede e para o aumento do desempenho. Cache – que é a copia dos últimos arquivos acessados no disco duro do usuário, permite que o navegador em vez de ir novamente ao servidor www buscar os mesmos arquivos já lidos, os busquendo disco duro local do usuário, aumentando o desempenho. Proxy – que permite que uma máquina intermediaria entre o cliente e o servidor www funcione como um cache. Por exemplo pode se configurar um servidor proxy em sua rede local para ser usado como intermediário no acesso à internet. Quando a máquina faz acesso à internet, os dados são copiados para o disco duro do servidor proxy. Com isso se alguma máquina pedir um documento que esteja no proxy, não será necessário ir na internet buscar os dados, aumentando o desempenho e diminuindo o trafego. Funcionamento de um Servidor Proxy. NB: Para saber mais acerca dos protocolos é so baixarem o livro que se encontra na plataforma moodle, e estudarem, porque neste livro apenas tem um resumo de todos trabalhos de defesa.