Uma das grandes vantagens do TCP/IP em relação a outros protocolos existentes é que ele é roteavel, criado pensando em grandes redes e de longas distancias, onde pode haver vários caminhos para o dado atingir o receptor, a comparação do modelo TCP/IP ao modelo OSI é a seguinte:
CAMADA DE APLICAÇÃO
Esta
camada equivale às camadas 5, 6 e 7 do modelo OSI, Os protocolos mais
conhecidos que atuam nessa camada são:
- HTTP(hypertText Transfer Protocol): protocolo de transferencia de hipertexto utilizado para a visualização de paginas na internet
- SMTP(Simple Network Management Protocol): protocolo padrão para o envio de emails atraves da internet, baixa emails que estão armazenados no servidor.
- DNS(Domain Name System): Sistema de gerenciamento de nome hierarquico, resolvendo nomes de dominios em endereços de rede (ips)
- Telnet: protocolo cliente servidor usada para permitir a comunicação entre computadores ligados numa rede
A
camada de aplicação comunica-se com a camada de transporte através de uma
porta, as portas são numeradas e as aplicações padrão usam sempre uma mesma
porta.
O
uso de um número de porta permite ao protocolo de transporte(tipicamente TCP)
saber qual é o tipo de conteúdo do pacote de dados. Assim, ao receber um
pacote destinado à porta 25, o protocolo TCP ira entregá-lo ao protocolo que
estiver conectado a esta porta, tipicamente o SMTP.
CAMADA DE TRANSPORTE
A
camada de transporte do TCP/IP e equivalente a camada de transporte do modelo
OSI. Esta camada é responsável por pegar os dados enviados pela camada de
aplicação e transformá-los em pacotes, a serem repassados para a camada de
internet. Nesta
camada operam dois protocolos :
- TCP(Transmission Control Protocol) : verifica se os dados são enviados de forma correta, na sequncia apropriada e sem erros.
- UDP (User Datagram Protocol): não verifica se os dados são enviados de forma correta.
como já mencionado, ao contrario do TCP, este segundo protocolo
não verifica se o dado chegou ou não ao seu destino, o protocolo mais usado na
transmissão de dados e o TCP, enquanto que o o UDP é tipicamente usado na
transmissão de informações de controle. Na
recepção de dados, a camada de transporte pega os pacotes passados pela camada
Internet e trata de colocá-los em ordem e verificar se todos chegaram
corretamente, ordenando os dados.
OBS:
O
protocolo IP não verifica se o pacote de dados enviado chegou ou não ao
destino; é o protocolo de transporte (o TCP) que ao remontar a ordem dos
pacotes recebidos verifica se está faltando algum.
CAMADA DE INTERNET
A
camada de internet do modelo TCP/IP é equivalente à camada 3(Rede) do modelo
OSI. Há vários protocolos que podem operar nessa camada :
- IP(Internet Protocol);
- ICMP(internet Control Message Protocol);
- ARP (Address Resolution Protocol)
- RARP (Reverse Address Resolution Protocol).
Na
transmissão de um dado, o pacote recebido da camada TCP é dividido em pacotes chamados datagramas. Os
datagramas são enviados para a camada de
interface com a rede, onde são transmitidos pelo cabeamento da rede através de
quadros. Esta
camada e responsável pelo roteamento dos pacotes.
CAMADA DE INTERFACE COM A REDE
Esta
camada, que é equivalente às camadas 1 e 2 do modelo OSI, é responsável por
enviar o datagrama recebido pela camada de internet em forma de um quadro
através da rede.
ENDEREÇAMENTO IP
Protocolo
TCP/IP e roteavel, isto é, ele foi criado pensando-se na interligação de redes. Ele
utiliza um esquema de endereçamento lógico chamada endereçamento IP, em rede
TCP/IP cada dispositivo conectado em rede necessita usar pelo menos um endereço
IP. As redes são interligadas por dispositivos chamados roteadores. Nesse
endereço IP há informações de qual a rede onde o pacote deve ser entregue.
Quando um computador da rede 1 quer enviar um dado para um computador da rede
2, ele envia o pacote de dados ao roteador 1 que fica responsável por encaminha
esse pacote de dados ao computador de
destino. È Assim que as redes baseadas no protocolo TCP/IP funcionam. Elas têm
um ponto de saída da rede, também chamado de gateway, que é para onde vão todos
os pacotes de dados recebidos e que não são para aquela rede. O
endereço IP é um numero de 32 bits, representado em decimal em forma de quatro
números de oito bits separados por um ponto, no formato a.b.c.d . O
sistema de redes que forma a estrutura básica da internet é chamado de
backbone, para sua rede esteja conectada a internet, ela terá que estar
conectada a ao backbone. Existem
alguns endereços que são conhecido como “Endereços magicos”, que são endereços
Ips reservados para redes privada. Assim pode-se montar sua rede sem gerar
conflitos com endereços Ips da internet.
CLASSE
A : 10.0.0.0 a 10.255.255.255
CLASSEB:
172.16.0.0 a 172.31.255.255
CLASSEC:
192.168.0.0 a 192.168.255.255
ARP (Adress Resolution Protocol)
As
redes baseadas no protocolo TCP/IP baseiam-se inteiramente em um endereço
virtual. Acontece que as placas de redes das maquinas conectadas a rede operam
com o esquema de endereçamento MAC.
O
protocolo ARP é responsável por 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 do roteadores a que estão conectados atingindo a rede
de destino, o protocolo ARP entra em ação para detectar o endereço da placa de
rede para a 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. Arp
funciona mandando primeiramente uma mensagem broadcast para a rede perguntando,
a todas as maquinas, qual responde pelo endereço.
RARP(Reverse
Address Resolution Protocol)
Permite
que uma maquina decubra um endereço IP atraves de um MAC, fazendo o inverso do
ARP.
Quando
ligamos um computador, ele não sabe qual é o seu endereço IP. Essa informação
estará gravada e algum arquivo de configuração dentro do disco rígido da
maquina. Acontece que maquinas que não tenham disco rigido(estações que usem o
recurso de boot remoto, que consiste em carregar o sistema operacional através
da própria rede em vez de carrega-lo através do disco ) não tem como iniciarem
uma comunicação de rede usando o protocolo TCP/IP. Assim em redes TCP/IP com
esses tipos de maquinas haverá a necessidade de ser criado um servido
RARP. Esse servidor armazenara uma
tabela contendo os endereços MAC das placas de rede presentes na rede e os seus
respctivos endereços IP. Após a saber o seu endereço IP, essa informação fica
armazenada em sua memória RAM.
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 principal função IP é o roteamento,
ou seja, adicionar mecanismo para que o datagrama chegue o mais rapidamente
possível ao seu destino. O tamanho dos datagramas são chamados de datagrama.
ICMP(Internet
Control Message Protocol)
Caso
um roteador não consiga passar adiante um datagrama recebido – por estar
congestionado demais ou então por ter zerado o campo de tempo de vida(TTL –
time to life) do datagrama, por exemplo – ele precisa informar ao transmissor
do datagrama que ocorreu um erro. O mecanismo usado pelos roteadores para
informar esse tipo de erro é o uso do protocolo ICMP , apesar de estarmos
tratando o ICMP como um assunto a parte, ele é parte integrante do protocolo
IP.
O
ICMP é somente um mecanismo usado para informar à maquina transmissora da ocorrência
de um erro com o datagrama enviado, através de mensagen, ele não se preocupa em
corrigir o erro nem tampouco em verificar a integridade dos datagramas do
protocolo IP.
UDP(User
Data Protocol)
É
um protocolo de transporte não orientado à conexões, isto é, ao contrario do
TCP, ele não verifica se o pacote de dados chegou ou não ao seu destino. A
transmissão de dados via UDP e mais rápida, o tamanho do pacote de dados a ser
transmitido fica menor, já que o cabeçalho UDP e menor que o TCP e não existe
uma verificação de entrega. Um dos usos mais conhecidos do protocolo UDP é para
o envio de mensagens DNS (Domain Name System).
TCP(Transmission
Control Protocol)
O
protocolo TCP é o mais complexo do sistema de protocolos TCP/IP. Ele recebe os
datagramas IP e trata de colocá-los em ordem (já em redes grandes os datagramas
geralmente chegam em desordem) e verifica se todos chegaram corretamente.
Porta
mais usadas pelo protocolo TCP são :
Ao
receber um quadro, a camada de interface com a rede da maquina receptora( o
driver e a placa de rede) irá passar os dados para a camada IP, que por passará os dados para a camada TCP, que
passará os dados para a aplicação correta. A camada TCP sabe para qual
aplicação ela deve entregar os dados por causa do uso do conceito de portas. Ao
receber um pacote de dados, o protocolo
TCP envia uma mensagen de confirmação de recebimento à maquina transmissora,
chamada ACKNOWLEDGE (também chamada ack), se o transmissor não receber uma
confirmação de recebimento dentro de um determinado tempo(RTT(Round Trip
Time)), o pacote é retransmitido. O
protocolo TCP é responsável por abrir uma conexão, mantela e fechá-la. A
abertura da conexão é feita através de um processo chamado HANDSHAKE (aperto de
mao). O transmissor envia um pacote contendo apenas o numero de sequencia e o
bit SYN. O receptor pega esse numero de sequencia e confirma o recebimento do
pacote, respondendo com um pacote contendo o numero de sequencia e o bits SYN e
ACK ativados. O transmissor, ao receber esse pacote, envia um pacote de
confirmação de recebimento de volta ao receptor. Procedimento chamado HANDSHAKE
de três tempo (tree-way handshake). Cada
porta permite o uso de um conceito chamado socket. O socket define uma conexão dentro de uma porta.
Com o uso deste conceito, pode-se ter varias conexões diferentes em uma mesma
porta. Assim a camada de aplicação saberá para qual browser deverá entregar os
dados recebidos por causa da existência da informação de qual é o socket de
destino dentro da área de dados do pacote. Os
sockets pode ser ativos e passivos, ativos é aquele que envia dados e um
passivo é aquele que recebe dados.
JANELA
Para
aumentar o desempenho do envio de pacotes, o protocolo TCP trabalha com o
conceito de janelas, com esse conceito, o transmissor pode enviar outros
pacotes antes de ter recebido a confirmação de recebimento do primeiro pacote
enviado. Neste protocolo a janela não é contada em número de pacotes a serem
enviados, mas sim em numero de bytes a
serem enviados. O protocolo TCP utiliza três ponteiros de janela. O primeiro
(ponteiro 1) marca o inicio da janela. O segundo (ponteiro 2) separa, dentro da
janela, os bytes que foram enviados daqueles que ainda não foram enviados. E o
terceiro ponteiro indica o fim da janela. O pacote TCP também é chamado de
segmento.
O
tamanho padrão do pacote IP é de 576 bytes. Como o cabeçalho Ip padrão possui
20 byts e o cabeçalho TCP padrão também ocupa 20 byts, o tamanho padrão da área
de dados dos segmento TCP é de 536 Bytes. O tamanho Máximo da janela TCP é de
64 KB, mas normalmente o valor da janela TCP é inferior a 32 Kb. Por
causa da janela, o receptor pode receber os pacotes de dados fora de ordem.
ESTRUTURA
DO SEGMENTO TCP
Encontramos
os seguintes campos no cabeçalho TCP:
- Porta de Origem : Indica a aplicação que originou o dados
- Porta de Destino : Indica a aplicação para a qual os dados serão entregues no receptor.
- Numero de Sequência: identifica numero do primeiro byte
- Numero de Confirmação: é o acknowledge(ack), aqui é colocado o numero de sequência do próximo segmento
- HLEN ou Offset : esse campo especifica o tamanho do cabeçalho do pacote
- Reservado: esse campo não é usado
- Bits de Controle ou Bits de Código : usados para controlo como mostra a tabela
- Tamanho da janela: define o tamanho da janela, definido em bytes.
- Checksum: calcula o tamanho do datagrama.
- Ponteiro Urgente: usado para informar a posição, dentro do segmento, em que os dados urgentes terminam
CHECKSUM
A
soma de verificação é um tamanho fixo dado calculado apartir de um bloco
arbitraria digital de dados com a finalidade de detectar erros acidentais.
PROTOCOLOS
DE APLICAÇÃO
DNS(Domain
Name System)
Permite dar nomes a endereços IP, se você pedir o endereço
seusite.org e o servidor DNS de sua rede não conhecer esse endereço, ele
passará esse pedido parar o servidor superior e assim consequentemente. Na
próxima vez o servidor local terá esse endereço armazenado esse processo e
conhecido como cachê .pode ocorrer de as informações presentes no cachê do
servidor de DNS local estarem desatualizadas. Por isso, quando um servidor
hierarquicamente superior responde a um pedido DNS, ele inclui um valor de Tempo
de Vida(TTL, time to Live) que informa ao servidor local quanto tempo ele pode
ficar com aquelas informações.
As
mensagens DNS são tipicamente trocadas usando o protocolo UDP, usando a porta
53.
Campos
existentes na mensagem DNS são os seguintes:
- Identificação
- Parâmetros
- Numero de perguntas
- Numero de respostas
- Numero de Autoridades
- Numero de Informações Adicionais
TELNET
È
um terminal remoto, onde o micro cliente pode fazer um login em um servidor
qualquer que esteja conectado à rede.
Usa o código ASCII puro para a transmissão de
dados, utilizando o protocolo TCP através da porta 23.
FTP(File
Transfer Protocol)
É
um protocolo usado na transferência de arquivos, utiliza duas porta para se
comunicar com o TCP : 21, por onde circulam informações de controle e 20, por
onde circulam os dados.
SMTP(Simple
Mail Transfer Protocol)
O
email é trocado através de um protocolo chamado SMTP(Simple Mail Transfer
Protocol).
A mensagem é enviada pelo usuário para o seu servidor de e-mail, que, por sua
vez, trata de entregar a mensagem até o destino. Caso o destino esteja
inalcançável por algum motivo, o servidor armazena a mensagem e tenta uma nova
transmissão mais tarde. Se o servidor ficar inalcançável por muito tempo, o
servidor remove a mensagem de sua lista de entrega e envia uma de erro ao
remetente. Quando o usuário se conecta à rede, ele poderá transferir o e-mail
contido no servidor para o seu micro, para poder ler, editar, responder e criar
novas mensagens. Os dois protocolos mais conhecidos para se efetuar essa tarefa
são o POP3 e o IMAP4
HTTP(Hypertext
Transfer Protocol)
A
transferência de documentos hipermidia é feita através do protocolo HTTP. Um
servidor WWW hospeda o site, enquanto um cliente faz a requisição dos
documetos lá contidos. Essa transferência
e 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. O mais famoso e o HTML. Primeiro,
o cachê , que é a copia dos últimos arquivos acessados no disco rígido do
usuário, permite que o browser em vez de ir novamente no servidor busca no disco
local. Segundo
e chamado de Proxy que permite que uma maquina intermediaria entre o cliente e
o servidor funcione como um cachê.
Nenhum comentário:
Postar um comentário