Академический Документы
Профессиональный Документы
Культура Документы
Objetivo
Esta apostila tem como objetivo fornecer os fundamentos necessrios compreenso do funcionamento de redes baseadas no conjunto de protocolos TCP/IP. Familiariza o tcnico com a terminologia e conceitos bsicos dos servios e protocolos TCP/IP. Explora e administra redes baseadas em protocolos TCP/IP.
Esta apostila foi elaborada por Severino Pereira da Silva, sendo expressamente proibida a sua reproduo, utilizao ou divulgao total ou parcial para qualquer propsito que no seja a aplicao para a qual foi fornecido. Esta restrio, contudo, no se aplica ao uso das informaes contidas, que claramente foram extradas de outras fontes, de domnio publico.
As descries, especificaes, desenho tcnico, material ilustrativo, listagens de componentes e outras informaes desta natureza, presente nesta apostila, so fornecidos com a finalidade tcnica/informativa sobre o equipamento contratado, para o pessoal qualificado da contratante e/ou treinamento de pessoal da mesma, no sendo permitido a sua divulgao a terceiros sem a expressa autorizao por escrito do autor, O auto se reserva o direito de, sem qualquer aviso prvio, fazer as alteraes que julgarem necessrias.
O autor agradece qualquer contribuio ou critica que possa melhora a qualidade desta apostila e facilitar o entendimento do equipamento que a mesma descreve.
INDICE
A Camada de Transporte Qualidade de Servio (QoS) Os servios da Camada de Transporte Primitivas de Servios TCP da Internet Protocolos da Camada de Transporte Protocolo TCP Modelo de Servio Header Segmentos, streams de dados e nmeros de seqncia Tamanho de janela varivel e controle de fluxo Formato do segmento TCP Transferncia de Dados Interface com o usurio Segurana Endereamento Idia de Janelas Deslizantes Controle de Fluxo Deteco de Duplicatas Mquina de Estado Portas e pontos terminais Conexo Estabelecimento, Nmeros de Seqncia e Trmino Colises UDP O Futuro do TCP Concluso
05 05 06 07 07 07 08 09 09 10 11 13 13 14 14 14 14 16 16 18 18 20 21 22 23
A Camada de Transporte
A camada de transporte permite que aplicaes sejam escritos usando um padro de primitivas de maneira a no se preocupar com as diferentes interfaces de sub-rede que existe. Esta camada tem a funo de promover uma transferncia de dados confivel entre mquinas, independente da rede fsica em uso, oferecendo confiabilidade, pois a camada de transporte fim a fim. Apesar das camadas inferiores fornecerem verificaes confiveis, a camada fim a fim faz outra verificao para se certificar de que nenhuma mquina falhou no meio da transferncia. Abaixo se segue a figura 1 que indica as camadas.
Aplica o
Os principais parmetros so (cont.): Probabilidade de falha no trmino de conexo Proteo Prioridade Confiabilidade
transferncia. Quando alcana o lado do receptor, o PUSH leva o TCP a tornar os dados disponveis para o aplicativo, sem intervalo. 4 fluxo desestruturado importante compreender que o servio de stream TCP/IP no reconhece os fluxos de dados estruturados. 5 conexo full duplex As conexes fornecidas pelo servio stream TCP/IP permitem transferncia em ambas s direes. Essas conexes so denominadas full duplex. Do ponto de visto de um aplicativo, uma conexo full duplex consiste em dois stream independente fluindo em direes opostas, sem qualquer operao aparente.
Protocolo TCP
O TCP um protocolo de comunicao, e no um software. A diferena entre um protocolo e o software que o implementa semelhante diferena entre a definio de uma linguagem de programao e um compilador. Como ocorre no mundo das linguagens de programao, a distino entre a definio e implementao s vezes obscura. As pessoas encontram o software TCP com muito mais freqncia do que encontram a especificao do protocolo; assim, natural considerar uma implementao especial um padro. Como o TCP complexo, o protocolo especifica o formato dos dados e das confirmaes que dois trocam para oferecer uma transferncia confivel e, tambm, os procedimentos de que os computadores para assegurar que os dados cheguem corretamente. Ele especifica como o software TCP confirma mltiplos destinos em determinada mquina e como as mquinas recuperam-se de erros como pacotes
Copyright 2006 Alcatel
duplicados ou perdidos. O protocolo tambm especifica como dois computadores iniciam uma transferncia de stream TCP e como concordam quando a transferncia estiver concluda. Embora a especificao TCP descreva como os programas aplicativos utilizam o TCP em termos gerais, ela no impe os detalhes da interface entre o programa aplicativo e o TCP. Isso significa que a documentao do protocolo trata apenas das operaes que o TCP oferece. J que o TCP pouco entende do sistema de comunicao bsico, ele pode ser utilizado com uma variedade de sistemas de transmisso de pacotes, inclusive o servio de transmisso de datagramas IP. O TCP pode, por exemplo, ser implementado para utilizar linhas telefnicas por discagem, rede local, rede de fibra tica de alta velocidade, ou uma rede de longas distancia de velocidade mnima. Na realidade, um dos pontos fortes do TCP a grande variedade de sistemas de transmisso que ele pode usar.
Modelo de Servio
O servio TCP obtido atravs de pontos de acesso a servio criados na origem e no destino, chamados sockets. Cada socket tem um nmero (endereo) de socket, que consiste do endereo IP do host e um nmero de 16 bits local ao host chamado porta. Porta o nome TCP para TSAP. Para obter o servio TCP, deve ser estabelecida uma conexo entre o socket na mquina que deseja enviar e na mquina que deve receber dados. Um socket pode ser utilizado por mais de uma conexo ao mesmo tempo As conexes TCP so identificadas pelos sockets dos dois lados (socket1, socket2). Nmeros de portas abaixo de 256 so chamados Well-Known Ports e so reservados para servios padronizados. A seguir so listados alguns exemplos: 21 = FTP 23 = TELNET 25 = SMTP 79 = FINGER 80 = HTTP Todas as conexes TCP so full-duplex, ponto-a-ponto, no suportando multicast e broadcast.
Socket Camada 4 Camada 3 Camada 2 Camada 1 Portas Endereo de Rede
Header
O cabealho tem um formato fixo de 20 bytes. O cabealho fixo pode ser seguido por opes de cabealho. Depois das opes, pode haver 65.515 bytes de dados, onde os 20 primeiros se referem ao cabealho IP e os outros 20 ao cabealho TCP. Analisaremos o cabealho TCP campo a campo.
Janela atual 1 2 3 4 5 6 7 8 9 10 11 . . .
- Exemplo de uma janela deslizante TCP. Os octetos at dois foram enviados e confirmados, os de trs at seis foram enviados, mas no confirmados, os de sete at nove no foram enviados, mas o sero se, intervalo, e octetos a partir de dez no podem ser enviados at que a janela se mova.
Descrevemos como a janela TCP do transmissor desliza e mencionamos que o receptor precisa manter uma janela semelhante para reunir o fluxo outra vez. importante compreender, entretanto, que, como as conexes TCP so full duplex, duas transferncias ocorrem simultaneamente em cada conexo, uma em cada direo. Considerando as transferncias completamente independentes, porque em qualquer ocasio os dados podem fluir pela conexo em uma direo, ou em ambas as direes. Assim, o software TCP de cada extremidade mantm duas janelas por conexo (para um total de quatro): uma desliza no stream de dados que est sendo enviado e a outra desliza medida que os dados so recebidos.
10
esquema de retransmisso cuidadosamente escolhido possa ajudar a evitar congestionamento, um esquema mal escolhido pode exacerb-los.
O formato de um segmento TCP com o cabealho TCP seguido de dados. Os seguimentos so utilizados para estabelecer conexes e para transportar dados e confirmaes. Cada segmento dividido em duas partes: um cabealho seguido de dados. O cabealho, conhecido como cabealho TCP, transporta a identificao esperada e as informaes de controle. Os campos PORTA DE ORIGEM e PORTA DE DESTINO contm nmeros de portas TCP que identificam os programas aplicativos nas extremidades da conexo. O campo NMERO DE SEQUENCIA identifica a posio do stream de bytes do transmissor de dados no segmento. O campo NMERO DE RECONHECIMENTO identificao nmero do octeto que a origem espera receber depois. Observe que o nmero seqencial refere-se ao stream que segue na mesma direo que o segmento, enquanto que o nmero de reconhecimento refere-se ao stream que segue em direo oposta ao segmento. O campo HLEN contm um nmero inteiro que especifica o comprimento do cabealho do segmento, medido em mltiplos de 32 bits. Isso necessrio porque o campo OPES varia em comprimento, dependendo de quais opes foram includas.Assim, o tamanho do cabealho TCP varia de acordo com as opes selecionadas. O campo de seis bits, marcado como RESERVADO, reservado para utilizao futura. Alguns segmentos transportam apenas uma confirmao, enquanto alguns transportam dados. Outros transportam solicitaes para estabelecer ou encerrar uma conexo. O software TCP utiliza o campo de seis bits denominado CODEBITS para determinar a finalidade e o contedo do segmento. Os seis bits indicam como interpretar outros campos do cabealho, de acordo com a tabela.
11
Campo de ponteiro urgente vlido Campo de reconhecimento vlido Este segmento requer push Restabelecer a conexo Sincronizar os nmeros de seqncia
Bits do campo CODE no cabealho TCP O software TCP informa quantos dados est esperando receber sempre que envia um segmento, ao especificar o tamanho de seu buffer no campo WINDOW. O campo contm um nmero inteiro, no marcado, de 16 bits, em uma ordem de bytes no padro de rede. Os notificadores de janela fornecem outro exemplo de piggyback, porque eles acompanham todos os segmentos, inclusive aqueles que transportam dados, e tambm os que transportam somente uma confirmao. O Campo SOMA DE VERIFICAO do cabealho TCP contm uma soma de verificao de nmero inteiro de 16 bits utilizada para checar a integridade dos dados e tambm do cabealho TCP. Para calcular a soma de verificao, adotado um pseudocabealho para o segmento, acrescenta bits zero suficientes para tornar o segmento um mltiplo de 16 bits e calcula a soma de verificao. Tal como ocorre em outras somas de verificao, o TCP utiliza uma aritmtica de 16 bits e toma o complemento do algarismo um da soma de complemento do algarismo um. O pseudocabealho permite que o receptor verifique se o segmento alcanou seu destino correto, o qual incluiu um endereo IP do host e um nmero de porta de protocolo. Ambos os endereos IP de origem e de destino so importantes para o TCP, porque ele precisa utiliz-los para identificar uma conexo qual o segmento pertence. Embora o TCP seja um protocolo baseado em stream, as vezes importante que um programa situado em uma extremidade da conexo envie dados urgentes, sem esperar que o programa da outra extremidade da conexo consuma octetos j no stream. O campo PONTEIRO URGENTE utilizado para sinalizar dados urgente. Ou seja, usado um mecanismo para marcar os dados urgentes, atravs do bit de cdigo URG. Com isso, o TCP do receptor, que deve ser notificado de sua chegada o mais rpido possvel, quando notificado, o TCP receptor deve notificar qual programa aplicativo est associado a conexo, a fim de passar para o modo urgente. Assim que todos os dados urgentes forem consumados, o TCP diz ao programa aplicativo para voltar ao modo normal. Logicamente, os detalhes exatos de como o TCP informa ao programa aplicativo sobre os dados urgentes depende do Sistema Operacional do computador. Nem todos os segmentos enviados atravs de uma conexo tero o mesmo tamanho. No entanto, as duas extremidades precisam concordar sobre o segmento mximo que
12
iro transferir. O software TCP utiliza o campo OPES para negociar como software TCP da outra extremidade da conexo, e uma das opes permite que o software TCP especifique o MSS (maximum segmentsize) que pretende receber. Por exemplo, um sistema embutido com somente algumas centenas de bytes de espao no buffer conectase a um grande computador, assim ele pode negociar um MSS que restrinja os segmentos, de modo que possam caber no buffer. Transferncia de Dados Dissemos que um servio de transmisso de dados confivel garante a entrega dos dados enviados de uma mquina outra, sem duplicao ou perdas. A maioria dos protocolos confiveis utiliza uma tcnica nica e fundamental conhecida como confirmao positiva com retransmisso. A tcnica exige que um receptor comuniquese com a origem, retornando uma mensagem de confirmao (ACK), medida que recebe os dados. O transmissor mantm um registro de cada pacote que envia e espera uma confirmao antes de enviar o prximo pacote. O transmissor tambm inicia um temporizador quando envia um pacote, e retransmite um pacote se esse temporizador se completar antes que chegue uma confirmao. O problema final da confiabilidade de transferncia de dados surge quando um sistema bsico de entrega de pacotes duplica os mesmos. Tambm pode ocorrer duplicao quando h intervalos longos nas redes que provocam uma retransmisso prematura. Como indica a figura abaixo.
13
Segurana
A camada de transporte pode prover uma grande variedade de servios de segurana. O controle de acesso pode ser provido em forma de verificao local pelo remetente e verificao remota pelo receptor. O servio de segurana pode tambm incluir um mecanismo para encriptar e decriptar dados quando necessrio. A camada de transporte pode tambm ser capaz de rotear por linhas ou hosts seguros, se o servio estiver disponvel.
Endereamento
O mtodo usado definir os endereos de transporte que os processos podem ouvir para receber solicitaes de conexo. Na Internet, essas extremidades (endereo IP, porta local) formam pares.
Controle de Fluxo
Uma das principais funes da camada de Transporte o controle de fluxo. Uma estratgia deve ento ser implementada, para poder suprir a realidade de que redes mistas possuem transmissores e receptores com diferentes velocidades de entrada e sada dos dados. Na camada de enlace de dados, o transmissor deve bufferizar os frames enviados, pois eles podem ser reenviados. Se a subrede no prov um servio confivel, ento a entidade de transporte tambm dever bufferizar os TPDUs, assim como na camada de enlace de dados. Em servios confiveis, essa abordagem pode mudar. Se o transmissor sabe que o receptor sempre possuir espao de alocao de buffers, no haver
14
necessidade de guardar os TPDUs que enviar. Entretanto, um ponto crtico pode ser levantado: O TPDU pode ser bufferizado pelo receptor, mas no aceito. A alocao de buffers deve ser realizada dinamicamente, assim que as conexes so estabelecidas e assim que o nvel de trafego mude. funo da camada de transporte permitir que o receptor pea ao receptor a alocao dos buffers. O receptor pode informar ao transmissor sobre a situao dos buffers alocados, assim como mudar esta situao ao longo do tempo. Um problema comum o tamanho dos buffers. Se os TPDUs so possuem quase o mesmo tamanho, seria interessante organizar os buffers com tamanhos iguais, e um TPDU por buffer. Se os tamanhos variam muito, isso geraria problemas, pois seria necessrio especificar um valor arbitrrio acima da mdia para o tamanho de buffer, ocorrer desperdcio de espao. E, se um TPDU for maior que o buffer, vrios deles sero necessrio para abrigar o TPDU. A soluo vem da alocao de tamanho varivel dos buffers, o que acarretar num gerenciamento complicado dos buffers. A estratgia, concluindo, depende do tipo de trafego da rede. Portanto, para redes de alto trafego, banda larga, a soluo bufferizar no receptor. Para redes de baixa banda, e alto trafego, a bufferizao deve ocorrer no transmissor. Nas redes TCP/IP, as mensagens de controle de fluxo entre as unidades pares tambm informam a quantidade de bytes enviados pelo pacote, e, em seu ACK, o receptor informa o tamanho do buffer disponvel, possibilitando ao transmissor enviar um TPDU adequado ao tamanho do buffer disponvel. Veja a figura abaixo:
15
Quando o receptor envia um ACK informando que o buffer est cheio, o transmissor fica bloqueado at a chegada de outro ACK informand oque o buffer foi liberado. Excepcionalmente, o transmissor pode enviar TPDUs de urgncia, a fim de verificar a situao do receptor.
Deteco de Duplicatas
Quando os pacotes chegam ao receptor, este deve enviar um ACK ao transmissor. Estas mensagens de ACK de TPDUs podem vir a se perder na rede. O transmissor fica esperando este ACK, e caso no chegue, retransmite.Pode acontecer o caso em que o receptor receba dois TPDU idnticos, ou seja, trata-se de uma duplicata. O receptor deve ser capaz de identificar estes TPDUs duplicados. Uma das mais simples estratgias numerar os segmentos. O nmero de seqncia deve ser grande o suficiente para no permitir que ocorram duplicatas de nmeros.
Mquina de Estado
A operao do TCP pode ser melhor explicada com um modelo terico denominado mquina de estado final. A figura mostra a mquina de estado final TCP, com crculos representando estados e setas representando transies entre eles. O rtulo em cada transio mostra o que o TCP recebe para provocar a transio e o que envia em resposta. Por exemplo, o software TCP de cada ponto terminal comea no estado CLOSED. Os programas aplicativos precisam transmitir um open passivo. Um open ativo fora uma transio do estado CLOSED para o estado SYN SENT. Quando o TCP segue a transio, transmite um segmento SYN. Quando o TCP segue a transio, transmite um segmento SYN. Quando a outra extremidade retorna um segmento que contenha um SYN e uma ACK, o TCP passa para o estado ESTABLISHED e inicia a transferncia de dados.
16
algo/recuperao
incio
CLOSED
encerramento abertura
syn/syn +ack
SYN
ACK
Syn + ack/ack
encerramento / fim
FIN WAIT-1
ESTABLI
Fim / ack
Fim / ack
CLOSE WAIT
CLOSING
ACK
LAST ACK
ACK
Fim / ack
TIMED WAIT
O Estado TIMED WAIT revela como o TCP trata alguns dos problemas relativos entrega no-confivel. O TCP mantm uma noo de tempo de vida mximo, que o tempo mximo em que um segmento antigo permanece ativo em uma interligao em redes. Para evitar que os segmentos de uma conexo anterior interfiram no atual, o TCP passa para o estado TIMED WAIT depois de encerrar uma conexo. Ele permanece nesse estado o dobro do tempo de vida mxima antes de excluir seu registro de conexo mxima. Se quaisquer segmentos duplicados chegam a conexo durante o intervalo de timeout, o TCP os rejeitar. Entretando para tratar situaes em que a ultima confirmao foir perdida, ele confirma os segmentos vlidos e reinicia o temporizador. J que o temporizador premite que o TCP diferencie as conexes antigas das novas, ele impede que o TCP responda com um RST (reset) se a outra extremidade retransmitir uma solicitao FIN.
18
Normalmente o software TCP de uma mquina espera passivamente pelo handshake e o software TCP de outra mquina o inicia. Entretanto, o handshake cuidadosamente projetado para funcionar mesmo se ambas as mquinas tentarem de qualquer extremidade ou de ambas simultaneamente. Quando a conexo tiver sido estabelecida, os dados podem fluir igualmente bem nas duas direes. No h mestre ou escravo. O handshake de 3 vias necessrio e suficiente para a sincronizao correta entre as duas extremidades da conexo. Este protocolo de trs vias cumpre duas funes importantes. Garante que ambas as extremidades estejam prontas para transferir dados, e permite que ambas concordem quanto aos nmeros de seqncias iniciais. Os nmeros de seqncia so enviados e confirmados durante o handshake. Cada mquina precisa escolher aleatoriamente um nmero dessa natureza, que ele usar para identificar bytes em um stream que estiver enviando. Os nmeros de seqncia nem sempre comeam com o mesmo valor. Para verificar como as mquinas podem concordar em nmeros de seqncia para dois stream aps apenas trs mensagens, A mquina que inicia o handshake chamado de A passa seu nmero de seqncia inicial x no campo de seqncia do primeiro seguimento SYN do handshake de trs direes. A segunda mquina, B, recebe o SYN grava o numero de seqncia inicial x e responde enviando seu nmero de seqncia inicial no campo de seqncia bem como uma confirmao que especifica que B aguarda o prximo byte x +1. Na mensagem final do handshake, A confirma ter recebido de B todos os bytes at y. Dois programas que utilizam o TCP para se comunicar podem facilmente encerrar a comunicao usando a operao close. Internamente o TCP utiliza o handshake de 3 vias modificados para encerrar conexes. Quando um programa aplicativo diz ao TCP que no h mais dados a serem enviados, o TCP escolher a conexo em uma direo. Para encerrar metade de uma conexo, o TCP transmissor completa a transmisso dos dados restantes, espera que o receptor os confirme e, a seguir, envia um segmento com o conjunto de bits FIN. O TCP receptor confirma com o segmento FIN e informa ao programa aplicativo de sua extremidade que no h dados disponveis.
Quando uma conexo tiver sido concluda em determinada direo, como indica a figura, o TCP se recusar a aceitar mais dados para essa direo. Enquanto isso, os dados podem continuar a fluir na direo oposta at que o transmissor a encerre. Quando ambas as direes tiverem sido concludas, o software TCP utilizar um handshake de trs vias modificado para encerrar a conexo. A diferena entre o handshake de trs vias usados para estabelecer e interromper conexes ocorre depois que uma mquina recebe um segmento FIN inicial. Em vez de gerar um segundo segmento FIN imediatamente, o TCP envia uma confirmao e, a seguir, informa ao aplicativo sobre a s solicitao a ser encerrada. Informar ao
19
programa aplicativo sobre a solicitao e obter uma resposta pode levar um tempo considervel. A confirmao evita a retransmisso do segmento FIN inicial durante a espera. Finalmente, quando o programa aplicativo instrui o TCP para encerrar a conexo, o TCP envia o segundo segmento FIN e o site original responde com uma terceira mensagem, uma ACK.
Servidor
x+1 y+1
Segmento
n+1 n+2
Segmento
n+3
ACK
Segmento
Colises
Em uma rede, quando o fluxo de dados maior que a rede suporta h o que chamamos de congestionamento. Este problema tratado em grande parte pelo protocolo TCP. O congestionamento pode ser evitado usando-se a idia de que um pacote novo no deve entrar na rede at que um antigo saia. O protocolo TCP consegue atingir esta idia manipulando o tamanho da janela. A primeira idia para evitar-se o congestionamento a deteco do mesmo. Esta tarefa no fcil, pois nas linhas pode haver rudos e pacotes perdidos ou descartados. A deteco est centrada na idia do time-out (fatia de tempo pr-determinado que se esgotou), sendo que muitas vezes o time-out ocorre devido ao congestionamento.
As figuras ilustram o problema do congestionamento. O fator predominante no a capacidade do balde, mas sim a capacidade de transmisso da rede, j que se a taxa de
20
transmisso na primeira figura for adequada no causar perda de gua e na segunda figura percebe-se que mesmo com o receptor maior, se a taxa de entrega for pequena, o enchimento do balde ser mais demorado. O emissor ir ocupar-se com duas janelas: uma para o receptor e outra, chamada janela de congestionamento. Cada janela representa um nmero de bytes, que a quantidade que o emissor pode enviar. No estabelecimento da conexo, o emissor envia um segmento do mximo (do maior tamanho disponvel), caso o emissor receba a confirmao antes do time-out, a janela de congestionamento ter seu tamanho duplicado. Este crescimento continuar, exponencialmente at que ocorra um time-out. Conforme o tamanho da rajada, a transmisso funciona bem, porm, ao chegar a certo patamar, a confirmao no ir chegar a tempo (ocorrer o time-out), da utiliza-se o tamanho de janela anterior perda. Esse algoritmo de controle chamado Slow-Start (pois o crescimento ser exponencial), e deve ser aceito por todos TCP implementados. O algoritmo utilizado na Internet o Threshold, que inicialmente disponibiliza 64k a mais para as janelas. Quando acontece um time-out o Threshold criado como sendo de metade da janela de congesto e esta levada a um nvel mximo. Ento o Slow-Start usado para determinar o que a rede transmitir. A partir da a janela de congestionamento cresce linearmente por um segmento mximo por rajada. Assim, percebe-se que este algoritmo reduz a congesto pela metade. O segmento mximo de 1024 bytes. Inicialmente o tamanho da janela de congesto era de 64k, o time-out ocorreu ento foi reduzido 32k e a janela de congesto (Threshold) foi a 1k na transmisso de nmero 0. Ento a janela cresce exponencialmente at o valor de 32k, a partir deste ponto seu crescimento torna-se linear. Na transmisso 13 ocorre um time-out, ento o Threshold divido pela metade do tamanho da janela de congesto, novamente, e a janela que era de 40k vai 20k e o ciclo recomea.
UDP
Em contra partida ao TCP, existe um protocolo em nvel de transporte, que normalmente tratado como sendo parte do protocolo TCP/IP, o UDP.
21
O significado da sigla UDP (user datagram protocol) j deixa claro o fato deste ser um protocolo que oferece servios sem conexo. A caracterstica bsica do UDP, o fato de que ele no garante a entrega e a duplicidade das informaes a serem entregues. No entanto, mesmo parecendo que este protocolo no possui nenhuma vantagem, podemos destacar uma em especial: o overhead gerado por este protocolo pequeno. Este fato torna o uso deste protocolo muito interessante de alguns casos. O cabealho de um protocolo UDP possui apenas o porta de onde sai e a porta do destino. O checksum de um protocolo UDP usa o mesmo algoritmo de um protocolo TCP/IP. No caso do UDP adicionado ao segmento, um pseudo-cabealho colocado antes do cabealho do protocolo e calculado da mesma maneira que no TCP. Caso seja detectado algum erro, o segmento descartado e nenhuma ao posterior ser tomada. Um outro fato relativo ao checksum do UDP, que ele opcional. Caso seja tomada uma deciso de no utiliz-lo, ele setado como zero. Se nenhum checksum for usado, no ser feito nenhuma checagem dos dados do usurio. Bit 0 16 31 Porta fonte Porta destino Comprimento Checksum * Cabealho do UDP
O Futuro doTCP/IP
A evoluo da tecnologia TCP/IP est interligada evoluo global. Primeiramente sendo a Internet a maior interligao em redes TCP/IP, muitos problemas relacionados com o crescimento surgem na Internet. A tecnologia TCP/IP funcionou bem durante mais de uma dcada. Os desenvolvimentos que estimulam a evoluo de TCP/IP e da arquitetura da Internet recaem em quatro categorias: - Novas tecnologias de computador e de comunicao - Novos aplicativos - Aumentos em tamanho e da carga - Novas polticas Novas tecnologias de computador e de comunicaes, os pesquisadores e engenheiros que trabalham em protocolos TCP/IP mantm um vvido interesse pelas novas tecnolgicas. Com a disponibilidade de sistemas de computadores de alta velocidade, eles so usados como hosts e roteadores. O surgimento de novas tecnologias de rede fez com que eles fossem usados para transportar datagrama IP.
22
Novos aplicativos, uma das mais notveis fronteiras de pesquisa e desenvolvimento da Internet, os novos aplicativos freqentemente criam uma demanda por recursos ou servios que os protocolos atuais no podem oferecer. Por exemplo, um surto de interesse na multimdia criou a demanda por protocolos que pudessem transferir som e imagens com eficcia. De modo semelhante, o interesse pela comunicao de udio e vdeo em tempo real criou a demanda por protocolos que pudessem garantir a entrega de informaes dentro de um retardo fixo de transmisso, bem como protocolos que pudessem sincronizar correntes de dados de vdeo e udio. Aumentos em tamanho e da carga, a internet global experimentou muitos anos de crescimento exponencial ininterrupto, duplicando em tamanho a cada nove meses. Em princpios de 1994, um novo host aparecia, em mdia, a cada 30 segundos e esse ndice foi crescendo de forma drstica. O volume de trafego da Internet aumentou mais rpido do que o numero de redes. Os aumentos no trfego podem ser atribudos a vrias causas, um dos motivos so os novos aplicativos que transferem imagens e vdeo em tempo real, que geram mais trfego do que os aplicativos que transferem texto. Outro motivo a ferramenta de busca automtica que geram um volume substancial de trfego. Novas Polticas, medida que a Internet se expande dentro de novos mercados de trabalho e novos pases, ela se transforma se uma maneira fundamental: ganha novas jurisdies administrativas. As mudanas nas polticas administrativas e impe novos mecanismos para executar essas polticas. Quando diversas organizaes se interconectam em redes privativas TCP/IP, elas se deparam com problemas semelhantes ao tentar definir polticas para a interao e ento encontrar mecanismos para executar aquelas polticas. Assim, muitos dos esforos de pesquisa e engenharia envolvendo TCP/IP continuam se concentrando na busca de formas de conciliar novos grupos administrativos.
Concluso
O TCP define um servio importante de transmisso confivel de fluxo de dados. O TCP proporciona uma conexo full duplex entre duas mquinas, permitindo que troquem grandes volumes de dados com eficcia. J que utiliza um protocolo de janela deslizante, o TCP pode usar uma rede com eficincia. Como faz algumas suposies sobre o sistema bsico de entrega, o TCP suficientemente flexvel para operar em uma ampla variedade de sistemas de entrega. E como oferece um controle de fluxo, permite que sistemas de velocidades amplamente variveis se comuniquem. A unidade bsica de transferncia utilizada pelo TCP o segmento. Os segmentos so utilizados para transferir dados ou controlar informaes. O TCP implementa o controle de fluxo levando o receptor a informar a quantidade de dados que espera aceitar. Severino Pereira da Silva Supervisor de Gerencia de SDH Alcatel CO & M Florianpolis SC
Alcatel Telecomunicaes S.A
23