O Protocolo TCP/IP

O modelo TCP/IP - como muitos outros modelos de protocolos - pode ser visto como um grupo de camadas, em que cada uma resolve um grupo de problemas da transmissão de dados, fornecendo um serviço bem definido para os protocolos da camada superior

O Protocolo TCP/IP
O modelo TCP/IP - como muitos outros modelos de protocolos - pode ser visto como um grupo de camadas, em que cada uma resolve um grupo de problemas da transmissão de dados, fornecendo um serviço bem definido para os protocolos da camada superior. Estas camadas mais altas estão logicamente mais perto do usuário (camada de aplicação), lidam com dados mais abstratos e confiam nos protocolos das camadas mais baixas para traduzir dados em um formato que pode eventualmente ser transmitido fisicamente.

Protocolos para internet
Os protocolos para internet formam o grupo de protocolos de comunicação que implementam a pilha de protocolos sobre a qual a internet e a maioria das redes comerciais funciona. Eles são algumas vezes chamados de "protocolos TCP/IP", já que os dois protocolos mais importantes desse modelo são: o protocolo TCP - Transmission Control Protocol (Protocolo de Controle de Transmissão) - e o IP - Internet Protocol (Protocolo Internet). Esses dois protocolos foram os primeiros a serem definidos.
O modelo OSI descreve um grupo fixo de sete camadas que alguns fornecedores preferem e que pode ser comparado a grosso modo com o modelo TCP/IP. Essa comparação pode causar confusão ou trazer detalhes mais internos para o TCP/IP.

As camadas
O que segue é uma descrição de cada camada na pilha da suíte IP.

A camada de enlace
A camada de enlace não é realmente parte do modelo TCP/IP, mas é o método usado para passar pacotes da camada de rede de um dispositivo para a camada de internet de outro. Esse processo pode ser controlado tanto em software (device driver) para a placa de rede quanto em firmware ou chipsets especializados. Esses irão executar as funções da camada de enlace de dados como adicionar um header de pacote para prepará-lo para transmissão, então de fato transmitir o quadro através da camada física. Do outro lado, a camada de enlace irá receber quadros de dados, retirar os headers adicionados e encaminhar os pacotes recebidos para a camada de internet. Essa camada é a primeira normatizada do modelo, é responsavel pelo enderecamento, roteamento e controle de envio e recepção.Ela não é orientada à conexão, se comunica pelos datagramas (pacotes de dados).

Entretanto, a camada de enlace não é sempre tão simples. Ela pode também ser um VPN (Virtual Private Network, Rede Privada Virtual) ou túnel, onde pacotes da camada de internet, ao invés de serem enviados através de uma interface física, são enviados usando um protocolo de tunneling e outra (ou a mesma) suíte de protocolos. O VPN ou túnel é usualmente estabelecido além do tempo, e tem características especiais que a transmissão direta por interface física não possui (por exemplo, ele pode encriptar os dados que passam através dele). Esse uso recursivo de suíte de protocolos pode ser confuso uma vez que a "camada" de enlace é agora uma rede inteira. Mas é um método elegante para implementar funções freqüentemente complexas. Embora seja necessário muito cuidado para prevenir que um pacote já empacotado e enviado através de um túnel seja mais uma vez empacotado e reenviado pelo mesmo.

A camada de rede
Como definido anteriormente, a camada de rede resolve o problema de obter pacotes através de uma rede simples. Exemplos de protocolos são o X.25 e o Host/IMP da ARPANET.

Com o advento da internet novas funcionalidades foram adicionadas nesta camada, especialmente para a obtenção de dados da rede de origem e da rede de destino. Isso geralmente envolve rotear o pacote através de redes distintas que se relacionam através da internet.

Na suíte de protocolos para a internet, o IP executa a tarefa básica de levar pacotes de dados da origem para o destino. O protocolo IP pode transmitir dados para diferentes protocolos de níveis mais altos, esses protocolos são identificados por um único número de protocolo IP.

Alguns dos protocolos transmitidos por IP, como o ICMP (usado para transmitir informação de diagnóstico sobre a transmissão IP) e o IGMP (usado para gerenciar dados multicast) são colocados acima do IP mas executam funções da camada internet. Isso ilustra uma incompatibilidade entre os modelos da internet e OSI. Todos os protocolos de routing, como o BGP, o OSPF e o RIP são também parte da camada de internet, muito embora eles possam ser vistos como pertencentes a camadas mais altas na pilha.

A camada de transporte
Os protocolos na camada de transporte podem resolver problemas como confiabilidade (o dado alcançou seu destino?) e integridade (os dados chegaram na ordem correta?). Na suíte de protocolos TCP/IP os protocolos de transporte também determinam para qual aplicação um dado qualquer é destinado.

Os protocolos dinâmicos de routing, que tecnicamente cabem nessa camada do TCP/IP, são geralmente considerados parte da camada de rede. Como exemplo tem-se o OSPF (protocolo IP número 89).

O TCP, número 6 do protocolo IP, é um mecanismo de transporte "confiável", orientado à conexão e que fornece um stream de bytes confiável, garantindo assim que os dados cheguem íntegros (não danificados e em ordem). O TCP tenta continuamente medir o quão carregada a rede está e desacelera sua taxa de envio para evitar sobrecarga. Além disso, o TCP irá tentar entregar todos os dados corretamente na seqüência especificada. Essas são as principais diferenças dele para com o UDP, e pode se tornar desvantajoso em streaming, em tempo real ou aplicações de routing com altas taxas de perda na camada internet.

Mais recentemente criou-se o SCTP (Stream Control Transmission Protocol, Protocolo de Transmissão de Controle de Stream), que também consiste em um mecanismo de transporte "confiável". Ele provê suporte a multihoming, onde o final de uma conexão pode ser representada por múltiplos endereços IP (representando múltiplas interfaces físicas), de maneira que, se algum falhar, a conexão não é interrompida. Ele foi desenvolvido inicialmente para transportar SS7 sobre IP em redes telefônicas, mas também pode ser usado para outras aplicações.

O UDP (User Datagram Protocol), número 17 do protocolo IP, é um protocolo de datagrama sem conexão. Ele é um protocolo de "melhor esforço" ou "não confiável". Não porque ele é particularmente não confiável, mas porque ele não verifica se os pacotes alcançaram seu destino, e não dá qualquer garantia que eles irão chegar na ordem. Se uma aplicação requer estas características, então ela mesma terá que provê-las ou usar o protocolo TCP.

O UDP é tipicamente usado por aplicações como as de mídia de streaming (áudio, vídeo etc), onde a chegada na hora é mais importante do que confiabilidade, ou para aplicações de simples requisição/resposta como pesquisas de DNS, onde o overhead de configurar uma conexão confiável é desproporcionalmente largo.

O DCCP está atualmente em desenvolvimento pelo IETF. Ele provê controle de fluxo das semânticas do TCP, enquanto mantém o modelo de serviço de datagramas do UDP visível para o usuário.

Tanto o TCP quanto o UDP são usados para transmitir um número de aplicações de alto nível. As aplicações em qualquer endereço de rede são distingüidas por seus endereços de porta TCP ou UDP. Por convenção, certas portas "bem conhecidas" estão associadas com aplicações específicas.

A camada de aplicação
A camada de aplicação é a camada que a maioria dos programas de rede usam de forma a se comunicarem através de uma rede com outros programas. Processos que rodam nessa camada são específicos da aplicação; o dado é passado do programa de rede, no formato usado internamente por essa aplicação, e é codificado dentro do padrão de um protocolo.

Alguns programas específicos são levados em conta nessa camada. Eles provêm serviços que suportam diretamente aplicações do usuário. Esses programas e seus correspondentes protocolos incluem o HTTP (navegação na World Wide Web), FTP (transporte de arquivos), SMTP (envio de email), SSH (login remoto seguro), DNS (pesquisas nome <-> IP) e muitos outros.

Uma vez que o dado de uma aplicação foi codificados dentro de um padrão de um protocolo da camada de aplicação ele será passado para a próxima camada da pilha IP.

Na camada de transporte, aplicações irão em sua maioria fazer uso de TCP ou UDP, e aplicações servidoras são freqüentemente associadas com um número de porta. Portas para aplicações servidores são oficialmente alocadas pela IANA (Internet Assigned Numbers Authority) mas desenvolvedores de novos protocolos hoje em dia freqüentemente escolhem os números de portas por eles mesmos. Uma vez que é raro ter mais que alguns poucos programas servidores no mesmo sistema, problemas com conflito de portas são raros. Aplicações também geralmente permitem que o usuário especifique números de portas arbitrários através de parâmetros em tempo de execução.

Aplicações cliente conectando para fora geralmente usam um número de porta aleatório determinado pelo sistema operacional.

Implementações
Hoje, a maioria dos sistemas operacionais comerciais incluem e instalam a pilha TCP/IP por padrão. Para a maioria dos usuários, não há nenhuma necessidade de procurar por implementações. O TCP/IP é incluído em todas as versões do Unix e Linux, assim como no Mac OS X, Microsoft Windows e Windows 2000 Server.

Fonte: Wikipédia

Review Notebook ASUS Zenbook 14 UX435: Duas telas, bateria top e muito bonito

O Zenbook 14 versão UX435E, acabou de ser lançado e, sim, a ASUS já nos enviou. Testei ele pelas últimas semanas trabalhando diretamente, minha vontade de mostrar essa segunda tela era tanta, mas não podia. Olha só que animal, o touchpad vira uma tela secundária, totalmente personalizável e útil. Vem ver o que o Zenbook 14 de 2021 tem para te oferecer, o que ele traz de novidades e claro, se vale a pena pagar o preço.

Conteúdo relacionado

Instalei a GCAM no Poco M3 E FICOU INCRÍVEL
Smartphones

Instalei a GCAM no Poco M3 E FICOU INCRÍVEL

Mais um smartphone que passa aqui pela redação do Oficina da Net e que instalamos a Gcam para ver se o resultado das fotos ficam maximizados com a ajuda do app do Google. Será que funcionou?

O que é Criptografia?
Segurança digital

O que é Criptografia?

Leia sobre criptografia. Trata-se de um conjunto de regras que visa codificar a informação de forma que só o emissor e o receptor consiga decifrá-la. Uma explicação sobre o que é criptografia. O termo Criptografia surgiu da fusão das palavras gregas Kryptós e gráphein.

Configurando o Samba no Ubuntu
Softwares

Configurando o Samba no Ubuntu

Aprenda como baixar, instalar e configurar o servidor SaMBa no Linux Ubuntu. O SaMBa é o sistema responsavel pela comunicação entre máquinas Unix (Linux) e Windows, usando protocolo TCP/IP.

Como criar fontes TTF utilizando o CorelDraw - Parte 01
Softwares

Como criar fontes TTF utilizando o CorelDraw - Parte 01

Aprenderemos a criar nossas próprias fontes True Type Font (TTF), conhecidas como “fontes verdadeiras”, faremos isso no CorelDraw, pois nos permite utilizar imagens variadas, como gravuras de livros e desenhos que podem ser scaneados ou vetores do próprio Corel.

Intranet - Conceito e Objetivos
Negócios

Intranet - Conceito e Objetivos

Este artigo irá fazer uma breve descrição do que é uma intranet e seus principais objetivos.