Comentários
TCP/IP é o principal protocolo de envio e recebimento de dados, sua arquitetura foi desenvolvida em quatro camadas, e um conjunto de processos.
Fonte: Shutterstock.
Deseja ouvir este material?
Áudio disponível no material digital.
Após configurar os servidores DNS e HTTP, os engenheiros conseguiram, por meio de um site, fazer consultas a fotos e documentos de projetos passados e em andamento.
A empresa 2@@ é uma empresa que desenvolve projetos de edificações para grandes prédios comerciais e, diariamente, os engenheiros precisam compartilhar arquivos dos projetos em desenvolvimento, documentações e planilhas de cálculos. Normalmente esses arquivos são compartilhados via e-mail, porém, graças ao tamanho dos arquivos, tal tarefa tem sido um problema nos projetos.
Para solucionar o problema de compartilhamento de arquivos, um servidor FTP deve ser configurado na rede. Isso vai permitir que os colaboradores possam fazer download e upload dos arquivos que são gerados diariamente, para a condução dos seus projetos. Para realizar essa tarefa, o serviço deve ser configurado no servidor que se encontra na topologia da empresa 2@@.
O conjunto de serviços que o protocolo TCP/IP proporciona faz com que as redes ganhem diversas funcionalidades.
Dessa forma, você deve utilizar o Cisco Packet Tracer para configurar o serviço FTP na rede desenvolvida para a simulação feita na empresa 2@@. Ao desenvolver tais alterações na rede modelada, você vai compreender a importância do protocolo TCP/IP para prover os serviços nas redes de computadores.
Você está pronto para buscar conhecimentos para resolver mais esse desafio?
Diariamente utilizamos algum meio computacional para nos comunicarmos, seja por mensagens instantâneas, e-mail, videoconferência, seja ainda por uma postagem em redes sociais. Historicamente, o homem sempre pesquisou e desenvolveu meios para tornar o ato de conseguir passar mensagens eficiente, rápido, barato e seguro.
Vamos então conhecer os aspectos históricos, as características e as funções das camadas do protocolo TCP/IP. Com isso será possível compreender como os protocolos proveem os serviços que estamos acostumados a utilizar, por meio de aplicações, para entretenimento, trabalho ou estudos.
Filippetti (2008) afirma que o padrão TCP/IP foi desenvolvido pelo DOD (Departamento de Defesa Americano) para que, em caso de guerras, houvesse a garantia da integridade das mensagens enviadas. Isso é compreensível, uma vez que o envolvimento em diversos conflitos ao longo dos tempos fez com que o exército necessitasse de técnicas relacionadas à comunicação.
A arquitetura do protocolo TCP/IP foi desenvolvida em quatro camadas, e um conjunto de processos (aplicações) é utilizado para prover diversos serviços. Para melhor compreensão das suas camadas, observe a Figura 2.14, em que é efetuada uma comparação entre as camadas do modelo de referência OSI e o protocolo TCP/IP:
OSI | TCP/IP | |
Aplicação | Aplicação | |
Apresentação | ||
Sessão | ||
Transporte | Host-to-host | |
Rede | Internet | |
Enlace | Acesso à rede | |
Sessão |
Para isso, podemos definir a função de cada uma das camadas do protocolo TCP/IP como:
O modelo de referência OSI é uma base para sistematização dos principais protocolos utilizados nas redes de dados. No entanto, o TCP/IP surgiu no ano de 1979; e o modelo de referência OSI, em 1984. Apesar disso, o protocolo TCP/IP mantém as características necessárias referenciadas para que os dispositivos possam se comunicar.
Podemos destacar algumas semelhanças entre o modelo OSI e o protocolo TCP/IP:
Com a concepção do protocolo TCP/IP foi possível o desenvolvimento de diversos serviços encontrados nas redes de dados.
Existem diversos protocolos definidos nas camadas do protocolo TCP/IP, porém, ao longo desta seção, vamos definir alguns exemplos, conforme pode ser observado adiante:
Segundo Tanenbaum (1997), todas essas características encontradas no protocolo TCP/IP é que fazem dele o de maior confiabilidade na transmissão das mensagens. Por isso, esse protocolo é utilizado para transmissões do tipo elástico, ou seja, aquelas requisições em que a confirmação do recebimento das mensagens é essencial para que não ocorra a degradação do serviço. Exemplo: quando um usuário acessa um site, se não houver a confirmação do recebimento de todos os segmentos, a página pode não ser montada, ou ser montada com falhas.
Para compreensão da estrutura do protocolo TCP, observe a Figura 2.15.
Filippetti (2008) define que cada campo do cabeçalho tem as respectivas funções:
Souce port number (porta de origem): número da porta lógica onde a aplicação está localizada.
Destination port number (porta destino): número da porta lógica onde está a aplicação do dispositivo destino.
Sequence number (número sequencial): número que sequencia os segmentos transmitidos/recebidos.
Acknowledgement number (número de confirmação): número de confirmação de conexão.
Header lenght (comprimento do cabeçalho): define o comprimento do cabeçalho TCP.
Reserved (reservado): campo reservado.
Code bits: campos responsáveis por gerenciar o início e o encerramento das conexões.
Windows (janela): tamanho da janela de dados que mede a capacidade de recebimento do remetente.
TCP checksum: este campo faz checagem de controle de erros (redundante).
Urgent pointer (marcação de urgência): determina os dados críticos, aqueles com maior prioridade na transmissão.
Option (opção): onde é definido o tamanho máximo do segmento.
Data (dados): os dados transmitidos.
É considerada uma versão simplificada do protocolo TCP. Dessa forma, não utiliza tanto a largura da banda disponível, pois não efetua a confirmação do recebimento das mensagens, razão pela qual é considerada como um protocolo de transmissão não confiável.
Para compreensão da estrutura do protocolo UDP, observe Figura 2.16.
Segundo Tanenbaum (1997), o protocolo UDP recebe as mensagens provenientes das camadas superiores, quebra-as em segmentos e as transmite, porém a numeração para sequenciar não é adicionada. Ao receber as mensagens, caso um segmento não seja recebido, o protocolo UDP ignora o fato. Um exemplo de utilização são os serviços do tipo streaming.
Observe o Quadro 2.3 a seguir com a comparação dos protocolos da camada de rede:
TCP |
UDP |
---|---|
Serviço orientado à conexão | Serviço sem conexão |
Garante a entrega por meio da confirmação de recebimento, pois os dados são sequenciados. | Não garante o recebimento, pois os dados não são sequenciados. |
O programa que utiliza o TCP possui um transporte confiável. | A garantia de recebimento do software que utiliza o protocolo UDP deve ser garantida pelo programa. |
Transmissão lenta e necessita de maior largura de banda. | Transmissão rápida e ocupa menos largura de banda. |
Comunicação ponto a ponto. | Suporte a comunicação multicast. |
Dessa forma pode-se concluir que os protocolos da camada de transporte (TCP e UDP) possuem aplicabilidades diferentes. O TCP é indicado para conexões do tipo elástico, em que é necessária a confirmação de recebimento e retransmissão em caso de falha para que não ocorra a degradação dos serviços. Por sua vez, o protocolo UDP é indicado para os serviços streaming, em que não é necessária a confirmação do recebimento das mensagens, não ocorrendo dessa forma a retransmissão de falhas de envio/recebimento.
Diferente do protocolo TCP, o UDP não precisa de confirmação no recebimento/envio de suas mensagens. Dessa forma, serviços como jogos on-line, filmes on demand e músicas on-line utilizam esse protocolo. Porém, em algumas transmissões, podem ocorrer falhas no envio/recebimento das mensagens, e o protocolo UDP ignora tais erros. Com isso, não pode ocorrer a degradação desses serviços?
Tanto no protocolo TCP quanto no UDP são necessárias portas lógicas para que as mensagens possam ser enviadas pelos protocolos de comunicação, disponíveis na camada de transporte no TCP/IP. Mas, afinal de contas, o que é uma porta lógica?
Ambos os protocolos utilizam as portas lógicas para que ocorra a comunicação com as camadas superiores do protocolo TCP/IP. O número designado para as portas lógicas permite o registro de diversas sessões dos serviços disponíveis nas redes de comunicação de dados.
Os números utilizados pelas portas lógicas estão no intervalo de 0 a 1024, conforme pode ser observado no Quadro 2.4 a seguir:
PROTOCOLO |
SERVIÇO/PROTOCOLO |
PORTA |
---|---|---|
TCP | FTP | 21 |
TCP | Telnet | 23 |
TCP | HTTP | 80 |
TCP/UDP | DNS | 53 |
UDP | FTP | 69 |
UDP | POP3 | 110 |
UDP | SMNP | Cell 3 |
No caso de aplicações que não possuem portas reservadas, é gerado um número aleatório maior ou igual a 1024. As portas acima de 1024 são consideradas “portas altas”, por padrão utilizado pelo lado do cliente em uma comunicação. Alguns exemplos podem ser destacados:
Segundo Forouzan (2008), basicamente as duas principais funções da camada de internet é efetuar o roteamento dos pacotes e fornecer uma interface de rede às camadas superiores.
Na camada de rede também é necessário possuir portas lógicas para permitir a comunicação com a camada de transporte.
FILIPPETTI, M. A. Guia completo de estudos. CCNA 4.1 Florianópolis: Visual Books, 2008.
FOROUZAN, A. Comunicação de dados e redes de computadores. São Paulo: McGraw, 2008.
KUROSE, J. F. Redes de computadores e a internet: Uma abordagem top-down. 3. ed. São Paulo: Pearson Addison Wesley, 2006.
STEVENS, R. W. TCP/IP Illustrated. v. 1: The Protocols. Boston: Addison-Wesley, 1994.
TANENBAUM, A. S. Redes de computadores. 4. ed. Rio de Janeiro: Campus, 1997.