SlideShare uma empresa Scribd logo
1 de 198
PROF. MSC. LUIZ OTÁVIOPROF. MSC. LUIZ OTÁVIO
Redes de Computadores TCP/IPRedes de Computadores TCP/IP
30/09/13Prof. Luiz Otávio B. Lento 2
EmentaEmenta
Redes de Alta Velocidade; Redes Sem Fio (Wireless)Redes de Alta Velocidade; Redes Sem Fio (Wireless)
Redes Digitais. Redes ATM. Redes com QualidadeRedes Digitais. Redes ATM. Redes com Qualidade
de serviço (QoS); Protocolo de reserva de dede serviço (QoS); Protocolo de reserva de de
recurso (RSVP); Redes Virtuais Privadas (VPN);recurso (RSVP); Redes Virtuais Privadas (VPN);
Intranets; Linhas Digitais por assinatura;Intranets; Linhas Digitais por assinatura;
Roteamento IP; Algoritmos; Outros Protocolos.Roteamento IP; Algoritmos; Outros Protocolos.
BibliografiaBibliografia
Comer, Douglas E., Interligação em RedesComer, Douglas E., Interligação em Redes
com TCP/IP Vol.1, Rio de Janeiro, Ed.com TCP/IP Vol.1, Rio de Janeiro, Ed.
CampusCampus
Tanenbaum, Andrew S., Redes deTanenbaum, Andrew S., Redes de
Computadores, Rio de Janeiro, Ed. CampusComputadores, Rio de Janeiro, Ed. Campus
Lewis, Chris, Cisco TCP/IP RoutingLewis, Chris, Cisco TCP/IP Routing
Professional Reference, Mcgraw-HillProfessional Reference, Mcgraw-Hill
Kurose, J. & Ross, K., “Redes deKurose, J. & Ross, K., “Redes de
Computadores uma Nova Abordagem”, 1Computadores uma Nova Abordagem”, 1aa
Edição, Ed.Edição, Ed. Pearson - Addison Wesley, 2003Pearson - Addison Wesley, 2003
30/09/13Prof. Luiz Otávio B. Lento 3
Arquitetura TCP/IPArquitetura TCP/IP
(Arquitetura Internet)(Arquitetura Internet)
30/09/13Prof. Luiz Otávio B. Lento 4
InternetworkingInternetworking
30/09/13Prof. Luiz Otávio B. Lento 5
InternetworkingInternetworking é um esquema paraé um esquema para
interconectar várias redes de diferentesinterconectar várias redes de diferentes
tecnologiastecnologias
Logo, um sistema de redes interconectadasLogo, um sistema de redes interconectadas
é chamado deé chamado de Internetworking ou InternetInternetworking ou Internet
30/09/13Prof. Luiz Otávio B. Lento 6
Arquitetura InternetArquitetura Internet
30/09/13Prof. Luiz Otávio B. Lento 7
30/09/13Prof. Luiz Otávio B. Lento 8
Princípio da interconexão de camadas de redePrincípio da interconexão de camadas de rede
 funcionalidade da rede em módulos independentesfuncionalidade da rede em módulos independentes
 diversidade de tecnologias de LAN/WAN nas camadasdiversidade de tecnologias de LAN/WAN nas camadas
1 e 21 e 2 (modelo OSI)(modelo OSI) e camada de Acesso à Redee camada de Acesso à Rede
(modelo TCP/IP)(modelo TCP/IP)
 diversidade de aplicações funcionando nas camadasdiversidade de aplicações funcionando nas camadas
5, 6 e 75, 6 e 7 (OSI)(OSI) e Camada de Aplicaçãoe Camada de Aplicação (TCP/IP)(TCP/IP)
•Fisicamente, aFisicamente, a interconexão de duas redesinterconexão de duas redes
é feita através de um computadoré feita através de um computador..
•Para que esta ligação não seja só física, oPara que esta ligação não seja só física, o
computador conectado às duas redes deverácomputador conectado às duas redes deverá
ter a capacidade de despachar pacotes deter a capacidade de despachar pacotes de
uma rede para a outrauma rede para a outra..
30/09/13Prof. Luiz Otávio B. Lento 9
•Estes computadores são chamados deEstes computadores são chamados de
gatewaysgateways (roteadores)(roteadores);;
30/09/13Prof. Luiz Otávio B. Lento 10
OBS: Para identificar uma máquina na rede, atribui-se um endereço IP para cada uma.
rede1 rede2
umarede
virtual
roteador
duasredesinterconectadaspor um roteador InternetA
Ex:para atuar como um roteador, este precisaEx:para atuar como um roteador, este precisa
capturar os pacotes da rede 1 que sãocapturar os pacotes da rede 1 que são
destinados a rede 2 e transferí-los, bem como odestinados a rede 2 e transferí-los, bem como o
inverso.inverso.
30/09/13Prof. Luiz Otávio B. Lento 11
•Em redes mais complexas osEm redes mais complexas os roteadoresroteadores
necessitam saber além das conexões diretasnecessitam saber além das conexões diretas;;
30/09/13Prof. Luiz Otávio B. Lento 12
•Ao contrário das tecnologias de rede proprietáriasAo contrário das tecnologias de rede proprietárias
mencionadas anteriormente, o TCP/IP foi projetadomencionadas anteriormente, o TCP/IP foi projetado
como umcomo um padrão abertopadrão aberto..
•Qualquer pessoa tinha a liberdade de usar oQualquer pessoa tinha a liberdade de usar o
TCP/IP, ajudando o seuTCP/IP, ajudando o seu rápido desenvolvimentorápido desenvolvimento..
•A arquitetura TCP/IPA arquitetura TCP/IP é semelhante às outrasé semelhante às outras
arquiteturas existentes, éarquiteturas existentes, é modelada em camadasmodelada em camadas..
Essa organização em camadas induz ao termoEssa organização em camadas induz ao termo
pilha de protocolospilha de protocolos. A arquitetura TCP/IP é. A arquitetura TCP/IP é
modelada emmodelada em quatro camadasquatro camadas..
TCP/IPTCP/IP
30/09/13Prof. Luiz Otávio B. Lento 13
30/09/13Prof. Luiz Otávio B. Lento 14
Comparação OSI e TCP/IPComparação OSI e TCP/IP
O modelo OSI serviu comoO modelo OSI serviu como referênciareferência para a pilhapara a pilha
TCP/IP na sua composição.TCP/IP na sua composição.
30/09/13Prof. Luiz Otávio B. Lento 15
Comparação OSI e TCP/IPComparação OSI e TCP/IP
30/09/13Prof. Luiz Otávio B. Lento 16
30/09/13Prof. Luiz Otávio B. Lento 17
ENCAPSULAMENTO DE DADOSENCAPSULAMENTO DE DADOS
Camada Internetwork, ou CamadaCamada Internetwork, ou Camada
Internet ou Camada de RedeInternet ou Camada de Rede
30/09/13Prof. Luiz Otávio B. Lento 18
A determinação do melhor caminho e a comutaçãoA determinação do melhor caminho e a comutação
de pacotes ocorrem nesta camadade pacotes ocorrem nesta camada
30/09/13Prof. Luiz Otávio B. Lento 19
•É responsável pelaÉ responsável pela transferência de dados datransferência de dados da
origem ao seu destinoorigem ao seu destino através de uma ou maisatravés de uma ou mais
sub-redes interconectadas desde a máquina desub-redes interconectadas desde a máquina de
origem até o seu destino;origem até o seu destino;
30/09/13Prof. Luiz Otávio B. Lento 20
•Recebe osRecebe os pedidos do nível de transportepedidos do nível de transporte
para transmitir pacotespara transmitir pacotes, que ao solicitar a, que ao solicitar a
transmissão, informa o endereço da máquinatransmissão, informa o endereço da máquina
onde o pacote será entregue;onde o pacote será entregue;
30/09/13Prof. Luiz Otávio B. Lento 21
Protocolo IPProtocolo IP
30/09/13Prof. Luiz Otávio B. Lento 22
•Projetado para permitir aProjetado para permitir a interconexão de redesinterconexão de redes
de computadores que utilizam a tecnologia dede computadores que utilizam a tecnologia de
comutação de pacotescomutação de pacotes;;
•É umÉ um protocolo sem conexões cuja a função éprotocolo sem conexões cuja a função é
transferir blocos de dados (datagramas)transferir blocos de dados (datagramas) dada
origem para o destinoorigem para o destino, onde esses são hosts, onde esses são hosts
identificados por endereços IP;identificados por endereços IP; 30/09/13Prof. Luiz Otávio B. Lento 23
30/09/13Prof. Luiz Otávio B. Lento 24
Protocolo de Internet (IP)Protocolo de Internet (IP)
•Pacotes enviados pelo IPPacotes enviados pelo IP podem serpodem ser perdidos,perdidos,
chegarem fora de ordem ou duplicadoschegarem fora de ordem ou duplicados, sendo, sendo
que este não trata estas situações,que este não trata estas situações, deixandodeixando
para camadas superiorespara camadas superiores;;
•ForneceFornece serviço deserviço de fragmentação e montagemfragmentação e montagem
de datagramas longosde datagramas longos, de forma que possam ser, de forma que possam ser
transmitidos através de redes onde o tamanhotransmitidos através de redes onde o tamanho
máximo permitido é pequeno;máximo permitido é pequeno; 30/09/13Prof. Luiz Otávio B. Lento 25
30/09/13Prof. Luiz Otávio B. Lento 26
Protocolo de Internet (IP)Protocolo de Internet (IP)
•Nenhum controle de erros é realizado, a nãoNenhum controle de erros é realizado, a não
ser o checksumser o checksum;;
30/09/13Prof. Luiz Otávio B. Lento 27
•Trabalha comTrabalha com roteamento distribuído nosroteamento distribuído nos
gatewaysgateways - os gateways recebem- os gateways recebem
informações locais sobre o tráfego, einformações locais sobre o tráfego, e
calculando novas tabelas;calculando novas tabelas;
30/09/13Prof. Luiz Otávio B. Lento 28
•O datagrama IP é oO datagrama IP é o pacote básico depacote básico de
transferência de informaçõestransferência de informações do protocolodo protocolo
Internet;Internet;
•Possui umPossui um cabeçalho contendo informaçõescabeçalho contendo informações
para o IP e dadospara o IP e dados que são relevantes somenteque são relevantes somente
para as camadas mais altas da arquitetura;para as camadas mais altas da arquitetura;
cabeçalho dados
Datagrama IPDatagrama IP
30/09/13Prof. Luiz Otávio B. Lento 29
•o datagrama IP éo datagrama IP é encapsuladoencapsulado numnum quadroquadro
de uma redede uma rede, normalmente com o seu tamanho, normalmente com o seu tamanho
limitado pelo frame (ex: Ethernet é de 1500limitado pelo frame (ex: Ethernet é de 1500
bytes);bytes);
cabeçalhodaredefísica datagramaIPcomodado
30/09/13Prof. Luiz Otávio B. Lento 30
•Ao invés de limitar o tamanho do datagrama IP,Ao invés de limitar o tamanho do datagrama IP,
negocia-se anegocia-se a fragmentação deste datagrama,fragmentação deste datagrama,
reagrupando-o no seu destinoreagrupando-o no seu destino;;
•Não são impostosNão são impostos tamanhos máximos para ostamanhos máximos para os
datagramas, porém sabe-se que subredes sãodatagramas, porém sabe-se que subredes são
capazes de manipular datagramas com tamanhocapazes de manipular datagramas com tamanho
mínimo de 576 bytesmínimo de 576 bytes;;
30/09/13Prof. Luiz Otávio B. Lento 31
•Fragmentos de um datagrama tem cabeçalhoFragmentos de um datagrama tem cabeçalho,,
basicamente copiado do datagrama originalbasicamente copiado do datagrama original, com, com
os seus respectivos dados;os seus respectivos dados;
•OsOs fragmentos são tratados como IPfragmentos são tratados como IP
datagramas normaisdatagramas normais, enquanto transportados, enquanto transportados
para o seu destino;para o seu destino;
30/09/13Prof. Luiz Otávio B. Lento 32
•Logo, se umLogo, se um fragmento for perdido, ofragmento for perdido, o
datagrama completo é considerado perdidodatagrama completo é considerado perdido;;
30/09/13Prof. Luiz Otávio B. Lento 33
• formato do datagrama IP
octeto1 octeto2 octeto3 octeto4
vers hlen servicetype totallenght
flagsidentification fragmentoffset
timetolive protocol headerchecksum
sourceIPaddress
destinationIPaddress
IPoptions(IFANY) padding
data
...
30/09/13Prof. Luiz Otávio B. Lento 34
⇒versvers - identifica a versão do protocolo, o que- identifica a versão do protocolo, o que
determina o formato do cabeçalho internetdetermina o formato do cabeçalho internet
(versão atual 4.5, sendo que a versão 6 está(versão atual 4.5, sendo que a versão 6 está
em fase de experiência);em fase de experiência);
⇒hlenhlen - comprimento do cabeçalho, em- comprimento do cabeçalho, em
número de palavras de 32 bits, indicando onúmero de palavras de 32 bits, indicando o
início do campo de dados;início do campo de dados;
⇒service typeservice type - indicação dos parâmetros da- indicação dos parâmetros da
qualidade do serviço desejada, usada naqualidade do serviço desejada, usada na
seleção dos serviços de transmissão de dadosseleção dos serviços de transmissão de dados
das sub-redes;das sub-redes; 30/09/13Prof. Luiz Otávio B. Lento 35
PrecedênciaPrecedência – é a medida da natureza e– é a medida da natureza e
prioridade do datagrama Ex:prioridade do datagrama Ex:
000 - rotina000 - rotina
001 - prioridade001 - prioridade
011 - flash011 - flash
TOSTOS – especifca o tipo do serviço Ex:– especifca o tipo do serviço Ex:
0000 - serviço normal0000 - serviço normal
1000 - atraso mínimo1000 - atraso mínimo
MBZMBZ - deverá ser sempre 0 – reservado para- deverá ser sempre 0 – reservado para
uso futuro;uso futuro;
precedência TOS MBZ
0 1 2 3 4 5 6 7
30/09/13Prof. Luiz Otávio B. Lento 36
⇒total lenghttotal lenght - fornece o comprimento de- fornece o comprimento de
todo o datagrama (cabeçalho e dados -todo o datagrama (cabeçalho e dados -
comprimento max. 65.535 octetos);comprimento max. 65.535 octetos);
⇒identificationidentification – valor único atribuído pela– valor único atribuído pela
origem, usado na montagem dos fragmentosorigem, usado na montagem dos fragmentos
do datagrama. Fragmentos de um datagramado datagrama. Fragmentos de um datagrama
possuem a mesma identificação;possuem a mesma identificação; 30/09/13Prof. Luiz Otávio B. Lento 37
⇒flagsflags - serve ao controle de fragmentação,- serve ao controle de fragmentação,
indicando se um datagrama pode ou não serindicando se um datagrama pode ou não ser
fragmentado, e se houve fragmentação;fragmentado, e se houve fragmentação;
30/09/13Prof. Luiz Otávio B. Lento 38
00 - deve ser sempre 0- deve ser sempre 0
DFDF (don’t fragment)(don’t fragment) - 0 - significa- 0 - significa
fragmentação; 1 - significa sem fragmentaçãofragmentação; 1 - significa sem fragmentação
MFMF (more fragments)(more fragments) - 0 - significa último- 0 - significa último
fragmento do datagrama; 1 - não é o últimofragmento do datagrama; 1 - não é o último
fragmento do datagramafragmento do datagrama
0 DF MF
30/09/13Prof. Luiz Otávio B. Lento 39
⇒fragment offsetfragment offset – utilizado na– utilizado na
remontagem do datagrama originalremontagem do datagrama original..
→IndicaIndica a posição do fragmento dentroa posição do fragmento dentro
do datagrama originaldo datagrama original..
30/09/13Prof. Luiz Otávio B. Lento 40
→Este campo valeráEste campo valerá zero para datagramaszero para datagramas
não fragmentadosnão fragmentados e noe no primeiro fragmentoprimeiro fragmento
de um datagramade um datagrama..
→ Este posicionamento é medido emEste posicionamento é medido em
unidades de 8 octetos, 64 bytesunidades de 8 octetos, 64 bytes (os bytes(os bytes
do cabeçalho não são contados);do cabeçalho não são contados);
30/09/13Prof. Luiz Otávio B. Lento 41
⇒time to livetime to live – determina o– determina o tempo de vidatempo de vida
de um datagrama numa rede internetde um datagrama numa rede internet
(medido em segundos).(medido em segundos).
→Cada máquina ao colocar um datagramaCada máquina ao colocar um datagrama
na rede, ela estabelece um tempo máximona rede, ela estabelece um tempo máximo
de vida do datagrama.de vida do datagrama.
30/09/13Prof. Luiz Otávio B. Lento 42
→A cada passagem por gateway, o tempo éA cada passagem por gateway, o tempo é
decrementado do tempo de processamentodecrementado do tempo de processamento
do pacotedo pacote (atualmente o roteador é capaz de(atualmente o roteador é capaz de
processar um datagrama em menos de 1processar um datagrama em menos de 1
segundo).segundo).
→ Quando esteQuando este valor chegar a zero, ovalor chegar a zero, o
datagrama será descartadodatagrama será descartado. Usado para. Usado para
eliminar datagramas que não chegarem aoeliminar datagramas que não chegarem ao
seu destino;seu destino;
30/09/13Prof. Luiz Otávio B. Lento 43
⇒protocolprotocol - indica o protocolo de alto nível- indica o protocolo de alto nível
para o qual o IP irá liberar o dado em seupara o qual o IP irá liberar o dado em seu
datagrama;datagrama;
Ex:0 – reservado; 1 - ICMP; 2 - IGMP; 3 –Ex:0 – reservado; 1 - ICMP; 2 - IGMP; 3 –
GGP; 4 – IP encapsulado; 5 - Stream 6 – TCP;GGP; 4 – IP encapsulado; 5 - Stream 6 – TCP;
8 – EGP; 17- UDP; 89 – OSPF (Open Shortest8 – EGP; 17- UDP; 89 – OSPF (Open Shortest
Path First)Path First)
30/09/13Prof. Luiz Otávio B. Lento 44
⇒headerheader checksumchecksum - utilizado pelos- utilizado pelos
gateways para verificar se asgateways para verificar se as informações doinformações do
cabeçalho estão corretascabeçalho estão corretas durante adurante a
transmissão ou atualização do cabeçalho (nãotransmissão ou atualização do cabeçalho (não
é incluído o dado). Com isso, o checksum éé incluído o dado). Com isso, o checksum é
recalculado e verificado a cada ponto onde orecalculado e verificado a cada ponto onde o
cabeçalho é processado;cabeçalho é processado;
30/09/13Prof. Luiz Otávio B. Lento 45
⇒source e destination IP addresssource e destination IP address - origem e- origem e
destino do datagrama;destino do datagrama;
⇒if optionsif options – possui comprimento variado, e– possui comprimento variado, e
é utilizado paraé utilizado para discriminar as opções dediscriminar as opções de
datagramadatagrama. Utilizado em informações de. Utilizado em informações de
segurança, roteamento na origem, relatóriossegurança, roteamento na origem, relatórios
de erros, depuração, etc;de erros, depuração, etc;
30/09/13Prof. Luiz Otávio B. Lento 46
⇒paddingpadding - garante que o comprimento do- garante que o comprimento do
cabeçalho do datagrama seja semprecabeçalho do datagrama seja sempre
múltiplo inteiro de 32 bits;múltiplo inteiro de 32 bits;
⇒datadata - dados.- dados.
30/09/13Prof. Luiz Otávio B. Lento 47
Fragmentação e montagem de datagramasFragmentação e montagem de datagramas
⇒uma mensagem entregue pela camada deuma mensagem entregue pela camada de
transporte (TCP ou UDP)transporte (TCP ou UDP) pode serpode ser
segmentada em vários datagramassegmentada em vários datagramas, de, de
acordo com oacordo com o tamanho máximo suportadotamanho máximo suportado
pela sub-rede consideradapela sub-rede considerada (as redes físicas(as redes físicas
possuem um tamanho máximo da área depossuem um tamanho máximo da área de
dados seu quadro -dados seu quadro - MMaximumaximum TTransmissionransmission
UUnitnit));;
30/09/13Prof. Luiz Otávio B. Lento 48
•Descrita na RFC 792 com atualizações na RFC 950Descrita na RFC 792 com atualizações na RFC 950
•OO ICMP tem como funcionalidadeICMP tem como funcionalidade possibilitar quepossibilitar que
roteadores interligados em redes possam informarroteadores interligados em redes possam informar
erros ou problemas inesperadoserros ou problemas inesperados que possam ocorrerque possam ocorrer
durante a transmissão de pacotesdurante a transmissão de pacotes. Porém, o ICMP. Porém, o ICMP
não torna o IP confiável;não torna o IP confiável;
ICMP (Internet Control Message Protocol)ICMP (Internet Control Message Protocol)
30/09/13Prof. Luiz Otávio B. Lento 49
Tipos de Mensagens ICMPTipos de Mensagens ICMP
30/09/13Prof. Luiz Otávio B. Lento 50
•O ICMPO ICMP utiliza outiliza o IP como se ele fosse umIP como se ele fosse um
protocolo de alto nívelprotocolo de alto nível. Logo, o ICMP é parte. Logo, o ICMP é parte
integrante da implementação do IP;integrante da implementação do IP;
•As mensagens ICMPAs mensagens ICMP trafegam pela parte detrafegam pela parte de
dados do datagrama IP;dados do datagrama IP;
30/09/13Prof. Luiz Otávio B. Lento 51
•OO destino do pacote ICMP é odestino do pacote ICMP é o software Internetsoftware Internet
protocolprotocol, no qual o módulo do, no qual o módulo do software ICMPsoftware ICMP tratarátratará
a mensagema mensagem, verificando também se o causador do, verificando também se o causador do
problema foi um programa aplicativo ou protocolosproblema foi um programa aplicativo ou protocolos
superiores.superiores.
30/09/13Prof. Luiz Otávio B. Lento 52
O ICMP permite que roteadores enviemO ICMP permite que roteadores enviem
mensagens de erromensagens de erro
ou de controle aos outros roteadores ou aosou de controle aos outros roteadores ou aos
host; o ICMPhost; o ICMP
possibilita a comunicação entre o software dopossibilita a comunicação entre o software do
InternetInternet
Protocol em uma máquina, e o software doProtocol em uma máquina, e o software do
Internet Protocol em outra. “Douglas Commer”Internet Protocol em outra. “Douglas Commer”
30/09/13Prof. Luiz Otávio B. Lento 53
•Entrega da mensagem ICMPEntrega da mensagem ICMP
⇒oo ICMP éICMP é encapsulado pelo IPencapsulado pelo IP, pois, para levar a, pois, para levar a
mensagem de um destino ao outro, é necessário quemensagem de um destino ao outro, é necessário que
esta passe por diversas redes intermediárias;esta passe por diversas redes intermediárias;
⇒osos datagramas que transportam mensagensdatagramas que transportam mensagens ICMPICMP
são tratados e roteados como qualquer outrosão tratados e roteados como qualquer outro
datgramadatgrama, podendo ser duplicados, chegarem fora de, podendo ser duplicados, chegarem fora de
ordem ou serem extraviados;ordem ou serem extraviados;
30/09/13Prof. Luiz Otávio B. Lento 54
Tipos de MensagensTipos de Mensagens
30/09/13Prof. Luiz Otávio B. Lento 55
Utilizados comoUtilizados como ferramenta de depuraçãoferramenta de depuração..
Pode ser usada para testar se máquinasPode ser usada para testar se máquinas
posicionadas de forma remota está acessível.posicionadas de forma remota está acessível.
EEcho Request e Echo Replycho Request e Echo Reply
30/09/13Prof. Luiz Otávio B. Lento 56
•todos começam com os mesmos três campos:todos começam com os mesmos três campos:
TypeType - tipo de mensagem- tipo de mensagem
CodeCode - informações adicionais específicas- informações adicionais específicas
do tipodo tipo
ChecksumChecksum - verificação de integridade- verificação de integridade
•Formato ICMP paraFormato ICMP para echo requestecho request (tipo 8)(tipo 8) ee echoecho
replyreply (tipo 0)(tipo 0)::
Formato da Mensagem – tipo 0 e 8Formato da Mensagem – tipo 0 e 8
30/09/13Prof. Luiz Otávio B. Lento 57
30/09/13Prof. Luiz Otávio B. Lento 58
Caso aconteça algum erro que impessa que umCaso aconteça algum erro que impessa que um
roteador roteie ou entregue um datagrama, este enviaroteador roteie ou entregue um datagrama, este envia
uma mensagem ICMP à origem, avisando que ouma mensagem ICMP à origem, avisando que o
destino não foi alcançado, e posteriormente descartadestino não foi alcançado, e posteriormente descarta
o datagrama;o datagrama;
Destinatários não AlcançáveisDestinatários não Alcançáveis
30/09/13Prof. Luiz Otávio B. Lento 59
• Destination unreachable (tipo 3)
• Entrega mal sucedida de pacote
• quando for necessária a fragmentação de um pacote e
esta não for possível (de uma rede Token Ring para uma
Ethernet)
Formato da mensagem p/ destinatáriosFormato da mensagem p/ destinatários
não alcançáveisnão alcançáveis
30/09/13Prof. Luiz Otávio B. Lento 60
⇒Source Quench (Controle de Fluxo eSource Quench (Controle de Fluxo e
Congestionamento)Congestionamento)
∗Caso o roteador ou host receba estaCaso o roteador ou host receba esta
mensagem, significa que omensagem, significa que o destino estádestino está
recebendo datagramas numa quantidaderecebendo datagramas numa quantidade
maior que ele tem capacidade demaior que ele tem capacidade de
processarprocessar;;
30/09/13Prof. Luiz Otávio B. Lento 61
∗Esta mensagem éEsta mensagem é uma solicitação para que auma solicitação para que a
origem reduza o seu nível de transmissãoorigem reduza o seu nível de transmissão;;
∗Para cadaPara cada datagrama descartado, é enviado umadatagrama descartado, é enviado uma
menagemmenagem QuenchQuench;;
∗A origem dos datagramas ao receber mensagensA origem dos datagramas ao receber mensagens
QuenchQuench,, reduz o seu tráfego até parar de receberreduz o seu tráfego até parar de receber
estas mensagens, aumentado gradativamente atéestas mensagens, aumentado gradativamente até
receber outra mensagem Quenchreceber outra mensagem Quench;;
30/09/13Prof. Luiz Otávio B. Lento 62
Endereçamento IP (IPv4)Endereçamento IP (IPv4)
30/09/13Prof. Luiz Otávio B. Lento 63
Cada host de uma interligação em redes TCP/IPCada host de uma interligação em redes TCP/IP
possui um endereçopossui um endereço único de 32 bitsúnico de 32 bits que é usado emque é usado em
todas as comunicações com aquele host;todas as comunicações com aquele host;
São distribuídos pelaSão distribuídos pela InterNIC (Internet NetworkInterNIC (Internet Network
Information Center).Information Center).
A padronização do endereçamento IP é descrito naA padronização do endereçamento IP é descrito na
RFC 1166RFC 1166;;
30/09/13Prof. Luiz Otávio B. Lento 64
30/09/13Prof. Luiz Otávio B. Lento 65
 Endereço IP é uma seqüência de 32 bits de 1s e 0s
 É fácil diferença entre 192.168.1.8 e 192.168.1.9,
mas nem tanto entre
11000000.10101000.00000001.00001000 e
11000000.10101000.00000001.00001001, onde é
quase impossível ver que são números consecutivos
Endereçamento IPEndereçamento IP
•O endereço IP pode serO endereço IP pode ser simbólicosimbólico
((nome@tru.gov.brnome@tru.gov.br)) ouou numériconumérico, representado no, representado no
formato deformato de 32 bits32 bits, normalmente expressado no, normalmente expressado no
formato decimal separados por pontos.formato decimal separados por pontos.
Ex: o endereçoEx: o endereço 128.33.3.4128.33.3.4 é um endereço válido paraé um endereço válido para
Internet. A sua forma numérica é utilizada peloInternet. A sua forma numérica é utilizada pelo
protocolo IP. O mapeamento entre os dois é feitoprotocolo IP. O mapeamento entre os dois é feito
através doatravés do DNS (Domain Name System);DNS (Domain Name System);
30/09/13Prof. Luiz Otávio B. Lento 66
Quando uma máquina é conectada a maisQuando uma máquina é conectada a mais
de uma rede, diz-se que esta éde uma rede, diz-se que esta é multi-homedmulti-homed,,
tendo um endereço IP para cada interface detendo um endereço IP para cada interface de
rede que possui;rede que possui;
30/09/13Prof. Luiz Otávio B. Lento 67
O endereço IP éO endereço IP é lógico e hierárquicológico e hierárquico
30/09/13Prof. Luiz Otávio B. Lento 68
IP addressIP address = <número da rede><número da= <número da rede><número da
máquina>máquina>
O IPO IP éé dividido em duas partesdividido em duas partes
30/09/13Prof. Luiz Otávio B. Lento 69
⇒Número de redeNúmero de rede – é a parte do endereço– é a parte do endereço
IP que é atribuído por uma autoridadeIP que é atribuído por uma autoridade
centralizadora válida em toda Internet;centralizadora válida em toda Internet;
30/09/13Prof. Luiz Otávio B. Lento 70
⇒Número da MáquinaNúmero da Máquina – é a parte do endereço IP– é a parte do endereço IP
que é atribuído pela autoridade que controla a redeque é atribuído pela autoridade que controla a rede
identificada pelo número da rede;identificada pelo número da rede;
⇒IP address –IP address – 128.104.1.45128.104.1.45 (endereço classe B)(endereço classe B)
128.104128.104 – endereço da rede– endereço da rede
1.451.45 – endereço da máquina– endereço da máquina
30/09/13Prof. Luiz Otávio B. Lento 71
•Representação bináriaRepresentação binária
10000000 00000010 00000111 0000100110000000 00000010 00000111 00001001;;
•Durante o translado de uma mensagem, oDurante o translado de uma mensagem, o
endereço IP acompanha esta mensagemendereço IP acompanha esta mensagem
(IP origem e destino), até o destino final, onde(IP origem e destino), até o destino final, onde
é mapeado para o endereço físico daé mapeado para o endereço físico da
máquina.máquina.
30/09/13Prof. Luiz Otávio B. Lento 72
30/09/13Prof. Luiz Otávio B. Lento 73
Classes A, B and CClasses A, B and C são classes primárias, usadassão classes primárias, usadas
para endereçamento de máquinaspara endereçamento de máquinas
Classe DClasse D é usada para multicast, a limited form ofé usada para multicast, a limited form of
broadcastbroadcast
Internet agrupa hosts num grupoInternet agrupa hosts num grupo multicastmulticast
os pacotes são liberados para todos osos pacotes são liberados para todos os
membros do grupomembros do grupo
os roteadores gerenciam a liberação de pacotesos roteadores gerenciam a liberação de pacotes
da origem para todos os componentes de umda origem para todos os componentes de um
grupo multicastgrupo multicast
Classe EClasse E é reservadoé reservado
30/09/13Prof. Luiz Otávio B. Lento 74
⇒Classe AClasse A –os 7 bits restantes do primeiro octeto–os 7 bits restantes do primeiro octeto
são utilizados para numerar redes (possibilita 126são utilizados para numerar redes (possibilita 126
redes). Os outros 24 bits para são usados pararedes). Os outros 24 bits para são usados para
número de máquinas (16.777.214 máquinas). Denúmero de máquinas (16.777.214 máquinas). De
0.1.0.0 a 126.0.0.0;0.1.0.0 a 126.0.0.0;
⇒Classe BClasse B –os 14 bits restantes para números de–os 14 bits restantes para números de
rede (16.382 redes) e os outros 16 para númerosrede (16.382 redes) e os outros 16 para números
(65.534 máquinas cada rede). De 128.0.0.0 a(65.534 máquinas cada rede). De 128.0.0.0 a
191.255.0.0;191.255.0.0;
30/09/13Prof. Luiz Otávio B. Lento 75
⇒Classe CClasse C – os 21 bits restantes são utilizados para– os 21 bits restantes são utilizados para
endereços de rede (2.097.150) e os outros 8 bits paraendereços de rede (2.097.150) e os outros 8 bits para
endereço de máquinas (254 máquinas por rede). Deendereço de máquinas (254 máquinas por rede). De
192.0.1.0192.0.1.0 a 223.255.255.0;a 223.255.255.0;
⇒Classe DClasse D – utilizados para para grupos de– utilizados para para grupos de
máquinas em uma área delimitada. De 224.0.0.0 amáquinas em uma área delimitada. De 224.0.0.0 a
239.255.255.255;239.255.255.255;
⇒Classe EClasse E – endereços reservados para usos– endereços reservados para usos
futuros. De 240.0.0.0 a 247.255.255.255;futuros. De 240.0.0.0 a 247.255.255.255;
30/09/13Prof. Luiz Otávio B. Lento 76
Endereços Classes primáriasEndereços Classes primárias
30/09/13Prof. Luiz Otávio B. Lento 77
30/09/13Prof. Luiz Otávio B. Lento 78
Endereços unicast, broadcast e multicastEndereços unicast, broadcast e multicast
⇒Endereçamento IP especialEndereçamento IP especial - qualquer- qualquer
componente do endereço IP com todos os bits comcomponente do endereço IP com todos os bits com
valor 0 ou todos os bits com valor 1, são descartadosvalor 0 ou todos os bits com valor 1, são descartados
como número de redes e como número de máquina,como número de redes e como número de máquina,
pois possuem significado especial.pois possuem significado especial.
30/09/13Prof. Luiz Otávio B. Lento 79
30/09/13Prof. Luiz Otávio B. Lento 80
30/09/13Prof. Luiz Otávio B. Lento 81
Atribuindo EndereçosAtribuindo Endereços
⇒Endereço de Loopback – 127.0.0.0Endereço de Loopback – 127.0.0.0 – utilizado no– utilizado no
teste do TCP/IP e para a comunicação na máquinateste do TCP/IP e para a comunicação na máquina
local. Quando algum programa utiliza o endereçolocal. Quando algum programa utiliza o endereço
loopback como destino, o software de protocololoopback como destino, o software de protocolo
retorna os dados sem enviar qualquer tráfego para aretorna os dados sem enviar qualquer tráfego para a
rede;rede;
30/09/13Prof. Luiz Otávio B. Lento 82
Alocação de Endereços para Internets PrivadasAlocação de Endereços para Internets Privadas
•Alocação de endereços IP para redes que sãoAlocação de endereços IP para redes que são
usadas exclusivamente dentro de uma organização eusadas exclusivamente dentro de uma organização e
que não se conectarão a Internetque não se conectarão a Internet;;
•Três ranges são observadas:Três ranges são observadas:
⇒1010 - um endereço classe A;- um endereço classe A;
⇒172.16 a 172.31172.16 a 172.31 - 16 endereços classe B;- 16 endereços classe B;
⇒192.168.0 a 192.168.255192.168.0 a 192.168.255 - 256 endereços classe C;- 256 endereços classe C;
30/09/13Prof. Luiz Otávio B. Lento 83
30/09/13Prof. Luiz Otávio B. Lento 84
Subredes MáscarasSubredes Máscaras
Com o crescimento de uma rede, distribuirCom o crescimento de uma rede, distribuir
endereços IP torna-se uma missão difícil.endereços IP torna-se uma missão difícil.
30/09/13Prof. Luiz Otávio B. Lento 85
Para evitar a solicitação de novos endereçosPara evitar a solicitação de novos endereços
IP, introduziu-se o conceito de subnet;IP, introduziu-se o conceito de subnet;
⇒a parte referente aoa parte referente ao número de máquinanúmero de máquina
do endereço foi dividido novamente emdo endereço foi dividido novamente em
número de rede e número de máquinanúmero de rede e número de máquina;;
30/09/13Prof. Luiz Otávio B. Lento 86
⇒a nova rede é denominada como subneta nova rede é denominada como subnet
com o endereço IP interpretado da seguintecom o endereço IP interpretado da seguinte
forma:forma:
<número da rede> <número da subnet><número da rede> <número da subnet>
<número da máquina><número da máquina>
30/09/13Prof. Luiz Otávio B. Lento 87
•a combinação doa combinação do
<número da subnet> <número da máquina><número da subnet> <número da máquina>
é chamada deé chamada de endereço localendereço local;;
30/09/13Prof. Luiz Otávio B. Lento 88
1.1. A subnet é implementada de formaA subnet é implementada de forma transparentetransparente
para redes remotaspara redes remotas..
2.2. Logo, uma máquina em uma rede que possuiLogo, uma máquina em uma rede que possui
subnets, é informada da existência da subnet,subnets, é informada da existência da subnet,
porém,porém, máquinas em redes remotas não sãomáquinas em redes remotas não são
informadas da existência de subnets,informadas da existência de subnets,
considerando o endereço local de um endereço IPconsiderando o endereço local de um endereço IP
como um número de máquinacomo um número de máquina;;
30/09/13Prof. Luiz Otávio B. Lento 89
1.1. a divisão do endereço local em subnets e dosa divisão do endereço local em subnets e dos
endereços de máquinas pode ser feita de formaendereços de máquinas pode ser feita de forma
livre para o administrador da redelivre para o administrador da rede;;
2.2. a divisão é feita através dea divisão é feita através de máscarasmáscaras, composta, composta
por um número de 32 bits;por um número de 32 bits;
⇒bits zerobits zero numa máscara correspondem aonuma máscara correspondem ao
número da máquinanúmero da máquina ee bits 1bits 1 correspondem aocorrespondem ao
número da subnetnúmero da subnet;;
⇒as posições na máscara correspondente aoas posições na máscara correspondente ao
número da rede terão sempre valores 1, não sendonúmero da rede terão sempre valores 1, não sendo
usadas;usadas;
30/09/13Prof. Luiz Otávio B. Lento 90
•o tratamento parao tratamento para todos os bits 0 e 1todos os bits 0 e 1 sãosão
aplicados para cada uma das três partes doaplicados para cada uma das três partes do
endereço da subnet;endereço da subnet;
30/09/13Prof. Luiz Otávio B. Lento 91
Ex: suponha um endereço classe B com 16 bits paraEx: suponha um endereço classe B com 16 bits para
o endereço local, duas formas podem ser utilizadas:o endereço local, duas formas podem ser utilizadas:
1 -1 - o primeiro byte é o número da subnet e o segundoo primeiro byte é o número da subnet e o segundo
o número da máquina. Logo, posso endereçar 254o número da máquina. Logo, posso endereçar 254
máquinas (2máquinas (288
- 2 =254), com 254 possíveis subnets.- 2 =254), com 254 possíveis subnets.
A máscara é 255.255.255.0;A máscara é 255.255.255.0;
30/09/13Prof. Luiz Otávio B. Lento 92
2 -2 - Suponha que queira criar subnets, onde os 12Suponha que queira criar subnets, onde os 12
primeiros bits são para subnets e os quatro últimosprimeiros bits são para subnets e os quatro últimos
bits são para número de máquinas;bits são para número de máquinas;
Posso criar 4094 subnets (2Posso criar 4094 subnets (21212
- 2 = 4094) e endereçar- 2 = 4094) e endereçar
14 máquinas por subnets (214 máquinas por subnets (244
-2 = 14). A máscara é-2 = 14). A máscara é
255.255.255.240 (240 = 2255.255.255.240 (240 = 277
+ 2+ 266
+ 2+ 255
+ 2+ 244
))
30/09/13Prof. Luiz Otávio B. Lento 93
30/09/13Prof. Luiz Otávio B. Lento 94
Subnet ID com máscara 255.255.255.240Subnet ID com máscara 255.255.255.240
1. Baseado no exemplo mostrado, uma subnet com o
endereço 128.102.32.16, conterá máquinas com
uma range de 128.102.32.17 até 128.102.32.30;
2. Uma subnet com o endereço 128.102.32.32
conterá máquinas com uma range de
128.102.32.33 até 128.102.32.46 (porque todos os
bits 0 e 1 são endereços especiais);
30/09/13Prof. Luiz Otávio B. Lento 95
Tipos de SubnetsTipos de Subnets
⇒Static SubnetStatic Subnet – todas as sunets na– todas as sunets na
mesma redemesma rede utilizam a mesma máscarautilizam a mesma máscara..
30/09/13Prof. Luiz Otávio B. Lento 96
É de simples implementação e fácilÉ de simples implementação e fácil
manutenção, porémmanutenção, porém acarreta desperdícios deacarreta desperdícios de
espaço de endereços para pequenas redesespaço de endereços para pequenas redes
(ex:uma subrede com 4 máquinas com a(ex:uma subrede com 4 máquinas com a
máscara 255.255.255.0 desperdiça 250máscara 255.255.255.0 desperdiça 250
endereços IP).endereços IP).
Hosts e roteadores suportam Static Subnet;Hosts e roteadores suportam Static Subnet;
30/09/13Prof. Luiz Otávio B. Lento 97
CIDR – Classless Interdomain RoutingCIDR – Classless Interdomain Routing
30/09/1398Prof. Luiz Otávio B. Lento
Vantagens da sumarização automatica:
 O tamanho da tabela de roteamento é reduzida
 Uma única rota é usada para representar multiplas
rotas a qual resulta em uma otimização na
pesquisa da tabela de roteamento
30/09/1399Prof. Luiz Otávio B. Lento
Sumarização de rotas feito pelo CIDR
-Rotas são sumarizadas com máscara que são menor
que a máscara classful padrão
-Exemplo:
172.16.0.0 / 13 é a rota sumarizada
das redes classfull de 172.16.0.0 / 16 à 172.23.0.0 / 16
Classless Inter-Domain Routing (CIDR)
30/09/13100Prof. Luiz Otávio B. Lento
Passos para calcular uma rota sumarizada
-Liste as redes em formato binário
-Conte os dígitos binários a partir da esquerda
comparando os bits iguais e determine a máscara da
sumarização
30/09/13101Prof. Luiz Otávio B. Lento
VLSM (Variable Lenght Subnet Mask)VLSM (Variable Lenght Subnet Mask)
Subredes de Tamanho VariávelSubredes de Tamanho Variável
30/09/13102Prof. Luiz Otávio B. Lento
VLSM consiste na segmentação lógica de subredes.
Permite a utilização de mais de uma máscara de sub-
rede dentro do mesmo Sistema Autômato.
 Maximiza a eficiência dos endereços e freqüentemente
é chamada de criação de sub-redes em uma sub-rede.
 Flexibilidade no uso dos endereços
 Pode ser usado para dividir em sub-redes um endereço
já dividido em sub-redes (links WAN)
A VLSM consiste em segmentar as subredes criadas, em
blocos não necessariamente do mesmo tamanho.
Daí o nome “subredes de tamanho variável”.
30/09/13103Prof. Luiz Otávio B. Lento
Vantagens:
Flexibiliza o esquema engessado de endereçamento IP;
Permite sumarização de redes IPs em apenas um endereço,
reduzindo as tabelas de roteamento.
Desvantagens:
Apenas protocolos do tipo classless (RIPv2, OSPF, EIGRP,
BGP) suportam esse tipo de endereçamento.
Exige uma maior capacidade do administrador da rede.
30/09/13104Prof. Luiz Otávio B. Lento
 Suponha a Rede sem segmentação abaixo:
 192.168.10.0 /24 (como é sem segmentação, a máscara DEVE
ser /24, um endereço de rede classe “C”)
 Suponha que esta rede foi segmentada em 2 subredes distintas:
192.168.10.64 /26
e
192.168.10.128 /26
OBS: Aqui foi aplicada a regra 2 x
- 2. Se esta regra não fosse
aplicada, teriam as subredes 192.168.10.0 /26 e 192.168.10.192 /
26.
Existem as 2 subredes acima denotadas, cada uma delas com
capacidade para endereçar 62 hosts:
1 - Subrede: 192.168.10.64 2 - Subrede: 192.168.10.128
hosts: 65 à 126 hosts: 129 à 190
Broadcast: 127 Broadcast: 191
30/09/13105Prof. Luiz Otávio B. Lento
Suponha que se tenha em mãos este pequeno plano de endereçamento,
uma rede com a seguinte topologia para endereçar:
Quantas redes esta topologia apresenta? Resposta: 6 redes! 3 redes WAN
interconectando os routers A, B e C, e 3 redes locais, para cada uma das
localidades. Como existem apenas 2 redes disponíveis, consegue-se suprir as
necessidades de endereçamento? Resposta: VLSM!
30/09/13106Prof. Luiz Otávio B. Lento
 Pegue as 2 redes que especificadas e divida-as ainda mais,
obtendo assim o número de redes necessárias.
 Comece pelas 3 redes WAN. Observe que todas são do tipo
ponto-a-ponto, ou seja, precisam de apenas 2 endereços de host
(um para cada interface de cada um dos 2 routers).
 Por exemplo, a rede que interliga o router A com o router B
necessita de apenas 2 endereços IP: um para cada router.
 Assim sendo, são necessárias 3 subredes com mascara de 30
bits.
30/09/13107Prof. Luiz Otávio B. Lento
Use a rede 64 para obter as 3 redes /30 :
192.168.010.64
255.255.255.192 ==> 11111111.1111111.11111111.11000000
Os “zeros” em vermelho mostram até que ponto pode-se avançar
na máscara /26 para obtermos as redes /30. Quantas redes /30
foram obtidas? Resposta: 2 4
= 16.
Note que aqui não se aplica a regra do “-2″. Esta regra não é
aplicada para cálculo de subredes VLSM.
Portanto, a subrede 192.168.10.64 /26, quando subdividida
conforme acima, fornece 16 subredes /30, cada uma podendo
endereçar até 2 hosts (ou interfaces de roteadores, no caso).
Estas redes ocorrem de 4 em 4:
192.168.10.64, 68, 72, 76. 80, 84, 88, 92, 96, 100, 104, 108, 112,
116, 120 e 124, todas com máscara /30.
30/09/13108Prof. Luiz Otávio B. Lento
 Para o exercício será reservada as 3 primeiras: 192.168.10.64 /30,
192.168.10.68 /30 e 192.168.10.72 /30.
 Notem que ainda existem 13 subredes /30 que não serão usadas. O que
poderia ser feito, para evitar este desperdício, é dividir a subrede
192.168.10.64 /26 em 2 subredes /27 (192.168.10.64 /27 e
192.168.10.96 /27), e subdividir a primeira (192.168.10.64 /27) em 8
subredes /30.
 Desta forma, o desperdício seria de menor número de endereços e
ainda existiria uma subrede /27, com capacidade para endereçar até 30
hosts sobrando, para uso futuro. Mas para efeitos didáticos, o exemplo
inicial é mais fácil de ser compreendido.
30/09/13109Prof. Luiz Otávio B. Lento
Resolveu-se o problema do endereçamento das redes
WAN, mas agora sobrou apenas 1 subrede /26 para
endereçamento das 3 localidades, sendo que cada
localidade tem a sua necessidade de hosts.
A dica aqui é fazer o cálculo usando a localidade com maior
necessidade de IPs (20 hosts, no caso).
Sendo assim, é necessário pelo menos 3 subredes que me
entreguem ao menos 20 hosts.
192.168.010.128
255.255.255.192 ==>
11111111.1111111.11111111.11000000
30/09/13110Prof. Luiz Otávio B. Lento
 Note que existem 6 “zeros” para manipulação. O algoritmo que
tem que usar é:
2 x
- 2 >= 20, sendo que o resultado (x) é o número de “zeros” da
direita para a esquerda que será mantido.
 Note que a regra do “-2 deve ser observada neste cálculo, já″
que se está falando de hosts (tem que eliminar os endereços de
rede e de broadcast).
 Portanto, x = 5, já que 25
- 2 = 30, e 30 >= 20. Se x fosse 4, o
resultado seria 14, e 14 não é >= 20.
 Deve-se reservar 5 zeros para o endereçamento dos hosts:
11111111.1111111.11111111.11100000
30/09/13111Prof. Luiz Otávio B. Lento
 Existe um problema. Se for feito desta forma restará apenas 1
zero na máscara para a criação das subredes.
 Apenas 1 zero possibilita a criação de apenas 2 subredes (2 1
).
 São necessárias 3 subredes. Como fazer?
 Resposta: Cria-se 2 novas subredes, cada uma com capacidade
para endereçar até 30 hosts e, posteriormente, divide-se
novamente uma destas em 2 subredes:
As 2 novas subredes ocorrem de 32 em 32 são:
192.168.10.128 /27
e
192.168.10.160 /27
30/09/13112Prof. Luiz Otávio B. Lento
Agora pegue a segunda e divida-a novamente:
192.168.010.160
255.255.255.224 ==> 11111111.1111111.11111111.11100000
O “zero” assinalado em vermelho é o dígito que será altera do na
máscara para criar 2 novas subredes com máscara /28.
Observem que, conforme se adiciona um dígito à máscara
original, criamos 2 novas subredes. Ex: de /26 para /27 criamos 2
subredes. De /27 para /28, criamos 2 subredes, e assim por diante.
30/09/13113Prof. Luiz Otávio B. Lento
As 2 novas subredes /28 ocorrem de 16 em 16 (/28 = 255.255.255.240 | 256 -
240 = 16 são:
192.168.10.160 /28
e
192.168.10.176 /28
Resta saber se a capacidade de endereçamento de hosts cada uma destas
subredes possui: Existem 4 “zeros” restantes na máscara /28.
Assim sendo: 24
- 2 = 14, atendedo aos requisitos.
Endereços
Conexão WAN A - B: 192.168.10.64 /30
Conexão WAN A - C: 192.168.10.68 /30
Conexão WAN C - B: 192.168.10.72 /30
Localidade ligada ao router C: 192.168.10.192.168.10.128 /27 (até 30 hosts)
Localidade ligada ao router A: 192.168.10.192.168.10.160 /28 (até 14hosts)
Localidade ligada ao router B: 192.168.10.192.168.10.176 /28 (até 14 hosts)
30/09/13114Prof. Luiz Otávio B. Lento
Camada de TransporteCamada de Transporte
30/09/13Prof. Luiz Otávio B. Lento 115
Oferece serviços de transporte desde aOferece serviços de transporte desde a
origem até o destinoorigem até o destino
30/09/13Prof. Luiz Otávio B. Lento 116
A camada de transporte prepara os
dados recebidos da camada de
aplicação para o transporte sobre a
rede e processa os dados da rede
que serão usados pela aplicação
Dados da
aplicação
Dados de
rede
30/09/13Prof. Luiz Otávio B. Lento 117
• Geralmente, a Internet é representada por uma
nuvem.
• A camada de transporte envia pacotes de dados da
origem para o destino receptor através dessa nuvem.
30/09/13Prof. Luiz Otávio B. Lento 118
aplicação
transportetransporte
rede
enlace
física
rede
enlace
física
aplicação
transportetransporte
rede
enlace
física
rede
enlace
física
rede
enlace
físicarede
enlace
física
rede
enlace
física
transporte
lógico
fim
a
fim
30/09/13Prof. Luiz Otávio B. Lento 119
•Sua função principal éSua função principal é permitir a comunicação fim apermitir a comunicação fim a
fim entre as aplicaçõesfim entre as aplicações..
•Logo, permite a troca de dados fim a fim entre doisLogo, permite a troca de dados fim a fim entre dois
sistemas de uma rede Internet, provendo asistemas de uma rede Internet, provendo a qualidadequalidade
de serviçode serviço requerida pela aplicação;requerida pela aplicação;
30/09/13Prof. Luiz Otávio B. Lento 120
Habilitando aplicações nos dispositivos para a comunicação
A camada de transporte
move os dados entre
aplicações nos dispositivos
na rede
30/09/13Prof. Luiz Otávio B. Lento 121
•Para otimizar os recursos de comunicaçãoPara otimizar os recursos de comunicação
tanto otanto o TCP como o UDP utilizam oTCP como o UDP utilizam o recurso derecurso de
multiplexação sobre o IPmultiplexação sobre o IP;;
30/09/13Prof. Luiz Otávio B. Lento 122
•Mensagens a transmitir são aceitasMensagens a transmitir são aceitas
simultaneamente de várias aplicaçõessimultaneamente de várias aplicações ee
passadas para o IP no sistema de origem,passadas para o IP no sistema de origem,
ocorrendo aocorrendo a demultiplexaçãodemultiplexação no sistema deno sistema de
destino;destino;
30/09/13Prof. Luiz Otávio B. Lento 123
•Toda aToda a comunicação com a aplicação écomunicação com a aplicação é
endereçada através da portaendereçada através da porta;;
30/09/13Prof. Luiz Otávio B. Lento 124
PortasPortas
30/09/13Prof. Luiz Otávio B. Lento 125
•A identificação da aplicação em um dadoA identificação da aplicação em um dado
sistema é feita atravéssistema é feita através dodo conceito de portaconceito de porta
(port) na camada de transporte(port) na camada de transporte,,
representada por um número inteirorepresentada por um número inteiro
associado à aplicação;associado à aplicação;
•A porta é umA porta é um número inteiro de 16 bitsnúmero inteiro de 16 bits,,
usado pelo protocolo da camada deusado pelo protocolo da camada de
transporte, que identifica a aplicação, ondetransporte, que identifica a aplicação, onde
toda a comunicação é endereçada atravéstoda a comunicação é endereçada através
dela;dela; 30/09/13Prof. Luiz Otávio B. Lento 126
•Aplicações Internet (Telnet, FTP, etc)Aplicações Internet (Telnet, FTP, etc)
possuem o mesmo número de portaspossuem o mesmo número de portas (portas(portas
padrão)padrão) para todas as implementaçõespara todas as implementações
TCP/IP;TCP/IP;
•Estas portas são padronizadas e distribuídasEstas portas são padronizadas e distribuídas
pelopelo IANA (Internet Assigned NumbersIANA (Internet Assigned Numbers
Authority);Authority);
•Portas com a range dePortas com a range de 0 a 10230 a 1023 sãosão
controladas pelo IANA;controladas pelo IANA;
30/09/13Prof. Luiz Otávio B. Lento 127
•Portas dePortas de 1024 a 65.325 não são1024 a 65.325 não são
controladas pelo IANAcontroladas pelo IANA, podendo ser, podendo ser
utilizadas na maioria dos sistemas porutilizadas na maioria dos sistemas por
usuários desenvolvedores de sistemas;usuários desenvolvedores de sistemas;
•Para evitar a possibilidade de duas ou maisPara evitar a possibilidade de duas ou mais
aplicações acessarem o mesmo número deaplicações acessarem o mesmo número de
porta numa mesma máquina,porta numa mesma máquina, estas sãoestas são
distribuídas de forma dinâmicadistribuídas de forma dinâmica, podendo, podendo
diferenciar de uma solicitação para outra;diferenciar de uma solicitação para outra;
30/09/13Prof. Luiz Otávio B. Lento 128
SocketSocket
30/09/13Prof. Luiz Otávio B. Lento 129
•socket é uma das várias APIs para protocolossocket é uma das várias APIs para protocolos
de comunicação;de comunicação;
•é um tipo especial de arquivo de manipulaçãoé um tipo especial de arquivo de manipulação
de dados que é usado por um processo parade dados que é usado por um processo para
solicitar serviços da rede;solicitar serviços da rede;
•o endereço de um socket consiste numao endereço de um socket consiste numa
tripla:tripla:
{protocolo, endereço local, processo local} -{protocolo, endereço local, processo local} -
30/09/13Prof. Luiz Otávio B. Lento 130
•A comunicação entre dois processos é feitoA comunicação entre dois processos é feito
através de um link;através de um link;
•Esta associação é composta por uma 5-tuplaEsta associação é composta por uma 5-tupla
que especifica totalmente os dois processosque especifica totalmente os dois processos
que compõe a conecção;que compõe a conecção;
{protocolo, endereço local, processo local,{protocolo, endereço local, processo local,
endereço de destino, processo de destino}endereço de destino, processo de destino}
{tcp, 193.44.234.3, 1500, 193.44.234.5, 21}{tcp, 193.44.234.3, 1500, 193.44.234.5, 21}
30/09/13Prof. Luiz Otávio B. Lento 131
•Half-asociation ou socket, consiste no pontoHalf-asociation ou socket, consiste no ponto
final de comunicação que pode ser chamado efinal de comunicação que pode ser chamado e
endereçado na rede;endereçado na rede;
{protocolo, endereço local, processo local} ou{protocolo, endereço local, processo local} ou
{protocolo, endereço de destino, processo de{protocolo, endereço de destino, processo de
destino}destino}
30/09/13Prof. Luiz Otávio B. Lento 132
Chamadas BásicasChamadas Básicas
do Socketdo Socket
30/09/13Prof. Luiz Otávio B. Lento 133
•Inicializar um socketInicializar um socket - socket( );- socket( );
•realiza um bind entre um socket a umarealiza um bind entre um socket a uma
portaporta - bind( );- bind( );
•sinalizar que está pronta para receber umasinalizar que está pronta para receber uma
conexãoconexão - listen( );- listen( );
•a chamada accept( )a chamada accept( ) é enviada pelo servidoré enviada pelo servidor
antes do processo cliente;antes do processo cliente;
30/09/13Prof. Luiz Otávio B. Lento 134
Caso exista uma uma solicitação de conexãoCaso exista uma uma solicitação de conexão
aguardando na fila para esta conexão socket,aguardando na fila para esta conexão socket,
a chamada accept( ) retira a primeiraa chamada accept( ) retira a primeira
solicitação da fila e cria outro socket com assolicitação da fila e cria outro socket com as
mesmas propriedades do socket anteriormesmas propriedades do socket anterior
30/09/13Prof. Luiz Otávio B. Lento 135
Caso não exista uma solicitação de conexão oCaso não exista uma solicitação de conexão o
accept bloqueia qualquer invocação deaccept bloqueia qualquer invocação de
processo até uma solicitação de conexãoprocesso até uma solicitação de conexão
chegarchegar
•a chamada conect( ) solicita uma conexão aoa chamada conect( ) solicita uma conexão ao
servidorservidor
30/09/13Prof. Luiz Otávio B. Lento 136
s o c k e t ( )
b i n d ( )
l i s t e n ( )
s o c k e t ( )
r e a d ( )
c l o s e ( )
r e a d ( )w r i t e ( )
w r i t e ( )d a t a ( s o l i c i t a ç ã o )
d a t a ( r e s p o s t a )
c o n n e c t ( )
c l o s e ( )
s o l i c i t a ç ã o
d o p r o c e s s o
b l o q u e a d o a t é a c o n e x ã o
d o c l i e n t e s e r
e s t a b e l e c i d a
a c c e p t ( ) c r i a u m n o v o
s o c k e t p a r a u m a n o v a
s o l i c i t a ç ã o d o c l i e n t e
a c c e p t ( )
e s t a b e l e c i m e n t o
c o n e x ã o
c l i e n t e
s e r v e r
e n c e r r a a c o n e x ã o
e n v i a e r e c e b e d a d o s
e n v i a e r e c e b e d a d o s
c o n e x ã o c o m o
s e r v i d o r
i n i c i a l i z a r s o c k e t
r e a l i z a r o b i n d e n t r e
o s o c k e t e a p o r t a
i n i c i a l i z a r s o c k e t
a c e i t a a c o n e x ã o
i n d i c a q u e e s t á
p r o n t o p a r a r e c e b e r a
c o n e x ã o
30/09/13Prof. Luiz Otávio B. Lento 137
s o c k e t( ) b in d ( ) lis t e n ( ) a c c e p t ( )
s o c k e t( ) c o n n e c t ( )
b in d ( )
r e c v f r o m ( )
s e n d to ( )
s o c k e t( )
s o c k e t( )
b in d ( )
o r ie n ta d o à c o n e x ã o -
s e r v e r
o r ie n ta d o à c o n e x ã o -
c lie n te
n ã o o r ie n ta d o à c o n e x ã o - s e r v e r
n ã o o r ie n ta d o à c o n e x ã o - c lie n te
30/09/13Prof. Luiz Otávio B. Lento 138
•Um par deUm par de socketssockets é usado para identificaré usado para identificar
umauma conexão entre dois processosconexão entre dois processos ;;
•Com a conexão estabelecida, cada socketCom a conexão estabelecida, cada socket
corresponde a umcorresponde a um ponto final dessaponto final dessa
conexãoconexão;;
30/09/13Prof. Luiz Otávio B. Lento 139
•Vários processos podem usar os serviços doVários processos podem usar os serviços do
TCP simultaneamenteTCP simultaneamente,, estabelecendo váriasestabelecendo várias
conexões entre esses processos e outrosconexões entre esses processos e outros
residentes em estações remotasresidentes em estações remotas..
•Logo, realiza-se aLogo, realiza-se a multiplexaçãomultiplexação em umaem uma
conexão IP;conexão IP;
30/09/13Prof. Luiz Otávio B. Lento 140
porta1 porta2 porta3
Aplicações
Multiplexação
TCP/UDP
IP
porta1 porta2 porta3
Aplicações
Multiplexação
TCP/UDP
IP
sub-rededeacesso
30/09/13Prof. Luiz Otávio B. Lento 141
Protocolo TCP – Transmission ControlProtocolo TCP – Transmission Control
ProtocolProtocol
30/09/13Prof. Luiz Otávio B. Lento 142
Necessidades:
-Velocidade
- Baixo overhead
- Não requer
acknowledeg
- Não reenvia blocos de
dados
- Entrega de dados
como chegam, sem
alteração
Necessidades:
-Confiabilidade
- tenho overhead
- requer acknowledeg
- Reenvia blocos de
dados
- Entrega de dados na
ordem enviada
Desenvolvedores de aplicações escolhem o protocolo de transporte baseando-se na
natureza de sua aplicação
Desenvolvedores de aplicações escolhem o protocolo de transporte baseando-se na
natureza de sua aplicação
30/09/13Prof. Luiz Otávio B. Lento 143
•Descrito na RFC 793;Descrito na RFC 793;
•Dois processos seDois processos se comunicam através decomunicam através de
sockets TCPsockets TCP..
•Este modelo possibilita uma conexãoEste modelo possibilita uma conexão full-full-
duplex de stream de pacotesduplex de stream de pacotes para outrospara outros
processos;processos;
30/09/13Prof. Luiz Otávio B. Lento 144
processoA processoB
portaN
TCP
portaM
TCP
IP IP
nãoconfiável
conecçãoTCP
confiável
sockets
30/09/13Prof. Luiz Otávio B. Lento 145
Conceitos do TCPConceitos do TCP
•O propósito doO propósito do TCP é prover umTCP é prover um circuitocircuito
lógico confiávellógico confiável ou umou um serviço de conexãoserviço de conexão
entre par de processosentre par de processos;;
30/09/13Prof. Luiz Otávio B. Lento 146
•conexão de circuito virtualconexão de circuito virtual – é estabelecido– é estabelecido
umauma conexãoconexão entre par de processos deentre par de processos de
aplicaçãoaplicação, antes da transferência de stream, antes da transferência de stream
30/09/13Prof. Luiz Otávio B. Lento 147
⇒os módulos de software deos módulos de software de protocolos dosprotocolos dos
dois sistemas (transmissor e receptor)dois sistemas (transmissor e receptor)
operacionais comunicam-se através deoperacionais comunicam-se através de
mensagens para estabelecer uma conexãomensagens para estabelecer uma conexão,,
verificando se averificando se a transferência é autorizada etransferência é autorizada e
se ambos os lados estão prontos para ase ambos os lados estão prontos para a
transferênciatransferência;;
30/09/13Prof. Luiz Otávio B. Lento 148
⇒a partir deste ponto, éa partir deste ponto, é estabelecida umaestabelecida uma
conexãoconexão, possibilitando a transferência de dados;, possibilitando a transferência de dados;
⇒durante a transferência de dados, osdurante a transferência de dados, os
protocolos de comunicação das duas máquinasprotocolos de comunicação das duas máquinas
continuam a comunicar-se para verificar secontinuam a comunicar-se para verificar se
os dados são recebidos corretamenteos dados são recebidos corretamente;;
30/09/13Prof. Luiz Otávio B. Lento 149
⇒caso existamcaso existam falhas de comunicação, estasfalhas de comunicação, estas
serão detectadas e participadas aosserão detectadas e participadas aos
programas aplicativosprogramas aplicativos;;
⇒os circuitos virtuais descrevem estasos circuitos virtuais descrevem estas
conexões,conexões, proporcionando uma confiabilidadeproporcionando uma confiabilidade
na transmissão;na transmissão;
30/09/13Prof. Luiz Otávio B. Lento 150
Estabelecendo uma ConexãoEstabelecendo uma Conexão
• O primeiro handshake solicita
sincronização
• O segundo e o terceiro confirmam a
solicitação de sincronização inicial e
também sincronizam os parâmetros de
conexão na direção oposta
• O segmento de handshake final é uma
confirmação usada para informar ao
destino que ambos os lados concordam
que foi estabelecida uma conexão
30/09/13Prof. Luiz Otávio B. Lento 151
HandshakeHandshake TriploTriplo
30/09/13Prof. Luiz Otávio B. Lento 152
SYNSYN (serve para estabelecer uma comunicação).(serve para estabelecer uma comunicação).
Lembra a palavra sincronizar;Lembra a palavra sincronizar;
•ACKACK (número de confirmação). Utilizado para confirmar(número de confirmação). Utilizado para confirmar
o recebimento de segmentos e indicar o próximoo recebimento de segmentos e indicar o próximo
desejado;desejado;
•FINFIN (finalização). Utilizado para encerrar de forma(finalização). Utilizado para encerrar de forma
“elegante” uma comunicação TCP;“elegante” uma comunicação TCP;
•RSTRST (reset). Utilizado para romper de forma brusca(reset). Utilizado para romper de forma brusca
uma conexão TCP;uma conexão TCP;
•URGURG (urgente). Utilizado para identificar dados(urgente). Utilizado para identificar dados
urgentes dentro do segmento TCP;urgentes dentro do segmento TCP;
•PSHPSH (“push” ou empurrar). Utilizado para forçar a(“push” ou empurrar). Utilizado para forçar a
transmissão de um segmento logo que ele chega atransmissão de um segmento logo que ele chega a
camada de transporte.camada de transporte.
OO TCPTCP possui 6 flags.possui 6 flags.
30/09/13Prof. Luiz Otávio B. Lento 153
1. A estação (A) inicia uma conexão enviando um
segmento SYN para a estação (B) indicando que
o seu ISN (Initial Sequence Numbers)= X:
A —> B SYN, seq de A = X
2. B recebe o segmento, grava que a seqüência de
A = X, responde com um ACK de X+1, e indica
que seu ISN = Y. O ACK de X+1 significa que a
estação B já recebeu todos os bytes até ao byte
X e que o próximo byte esperado é o X + 1:
B —> A ACK, seq de A = X, SYN seq de B = Y,
ACK = X+1
Estabelecendo uma conexão – 3 WayEstabelecendo uma conexão – 3 Way
HandshakeHandshake
30/09/13Prof. Luiz Otávio B. Lento 154
3. A recebe o segmento de B, fica sabendo que
a seqüência de B = Y, e responde com um
ACK de Y+1, que finaliza o processo de
estabelecimento da conexão:
A —> B ACK, seq de B = Y, ACK = Y+1
Estabelecendo uma conexão – 3 WayEstabelecendo uma conexão – 3 Way
HandshakeHandshake
30/09/13Prof. Luiz Otávio B. Lento 155
Estabelecendo uma conexão – 3 WayEstabelecendo uma conexão – 3 Way
HandshakeHandshake
30/09/13Prof. Luiz Otávio B. Lento 156
Encerramento de uma conexãoEncerramento de uma conexão
30/09/13Prof. Luiz Otávio B. Lento
157
Término de uma sessão TCPTérmino de uma sessão TCP
•transmissão de dadostransmissão de dados - durante a- durante a
transmissão de dados, os aplicativos podemtransmissão de dados, os aplicativos podem
estabelecer qualquer tamanho para o streamestabelecer qualquer tamanho para o stream
de dadosde dados, podendo variar de, podendo variar de 1 octeto1 octeto emem
diante;diante;
30/09/13Prof. Luiz Otávio B. Lento 158
⇒ao receber os octetos, oao receber os octetos, o TCP entregaTCP entrega osos
octetos do stream de dadosoctetos do stream de dados na mesmana mesma
seqüência em que foram enviadosseqüência em que foram enviados para ospara os
aplicativosaplicativos;;
⇒os octetos são liberados assim que tenhamos octetos são liberados assim que tenham
sidosido recebidos e avaliadosrecebidos e avaliados;;
30/09/13Prof. Luiz Otávio B. Lento 159
⇒o TCP é livreo TCP é livre parapara dividir em segmentosdividir em segmentos umum
stream de dadosstream de dados, suficiente para preencher um, suficiente para preencher um
datagramadatagrama;;
⇒osos segmentos sãosegmentos são bufferizadosbufferizados até chegarematé chegarem
a um valor (varia de acordo com aa um valor (varia de acordo com a capacidadecapacidade
de processamentode processamento da máquina);da máquina);
30/09/13Prof. Luiz Otávio B. Lento 160
•confiabilidadeconfiabilidade - garante que um stream de- garante que um stream de
dados seja entregue no seu destino semdados seja entregue no seu destino sem
duplicação ou perdasduplicação ou perdas..
⇒Para que isto seja realizado, utiliza-se aPara que isto seja realizado, utiliza-se a
técnica chamada detécnica chamada de confirmação positivaconfirmação positiva
com retransmissãocom retransmissão;;
30/09/13Prof. Luiz Otávio B. Lento 161
⇒oo TCPTCP atribui um número seqüencial paraatribui um número seqüencial para
cada byte transmitidocada byte transmitido, esperando um, esperando um
reconhecimento positivoreconhecimento positivo (ACK)(ACK) do TCP quedo TCP que
recebeu a mensagem;recebeu a mensagem;
30/09/13Prof. Luiz Otávio B. Lento 162
⇒aa origem mantém umorigem mantém um registroregistro de cadade cada
pacote que enviapacote que envia ee espera uma confirmaçãoespera uma confirmação
antes de enviar o próximo pacote;antes de enviar o próximo pacote;
⇒é iniciado umé iniciado um temporizadortemporizador pela origempela origem
quando envia um pacotequando envia um pacote, e, caso este, e, caso este
temporizador setemporizador se encerre antes de se obterencerre antes de se obter
um reconhecimento positivo, é realizadaum reconhecimento positivo, é realizada
uma nova transmissãouma nova transmissão;;
30/09/13Prof. Luiz Otávio B. Lento 163
⇒caso não receba o ACK, ocaso não receba o ACK, o dado édado é
transmitidotransmitido em blocos (segmentos TCP).em blocos (segmentos TCP).
Somente o número seqüencial do primeiro byteSomente o número seqüencial do primeiro byte
do dado do segmento é enviado para ado dado do segmento é enviado para a
máquina de destino;máquina de destino;
⇒o TCP de destino utiliza oo TCP de destino utiliza o número seqüencialnúmero seqüencial
parapara rearrumar os segmentos quando elesrearrumar os segmentos quando eles
chegam fora de ordem, e elimina segmentoschegam fora de ordem, e elimina segmentos
duplicadosduplicados;; 30/09/13Prof. Luiz Otávio B. Lento 164
•segmentaçãosegmentação - as mensagens entregues ao- as mensagens entregues ao
TCP podem ser segmentadas.TCP podem ser segmentadas.
⇒CadaCada segmento deve compor umsegmento deve compor um
datagrama IPdatagrama IP ee possuir umpossuir um número denúmero de
identificaçãoidentificação, possibilitando posteriormente,, possibilitando posteriormente,
no destino, a recomposição da mensagemno destino, a recomposição da mensagem
original;original; 30/09/13Prof. Luiz Otávio B. Lento 165
•seqüenciaçãoseqüenciação - garante a recomposição no- garante a recomposição no
destino da mensagem, de acordo com odestino da mensagem, de acordo com o
número de identificação dos segmentos;número de identificação dos segmentos;
30/09/13Prof. Luiz Otávio B. Lento 166
Diferentes segmentos podem
possuir diferentes rotas
Se existem
rotas
diferentes
até o
destino, os
segmentos
podem
chegar fora
de ordem
30/09/13Prof. Luiz Otávio B. Lento 167
•controle de errocontrole de erro - os- os segmentos sãosegmentos são
numerados para que possam sernumerados para que possam ser ordenados eordenados e
entregues na seqüência corretaentregues na seqüência correta à aplicaçãoà aplicação
de destinode destino..
⇒Além disso, é incorporado ao cabeçalho oAlém disso, é incorporado ao cabeçalho o
checksumchecksum (algoritmo verificador de soma),(algoritmo verificador de soma),
usado para verificar a correção de dados queusado para verificar a correção de dados que
compõe todo o segmento recebido.compõe todo o segmento recebido.
30/09/13Prof. Luiz Otávio B. Lento 168
Os segmentos de
dados devem ser
“montados” pelo
receptor na mesma
ordem em que
foram recebidos,
para que haja uma
transferência de
dados confiável,
orientada à conexão
JanelamentoJanelamento
30/09/13Prof. Luiz Otávio B. Lento 169
⇒OO TCPTCP relata falhas de serviçosrelata falhas de serviços
originadas em situações de funcionamentooriginadas em situações de funcionamento
anormalanormal no ambiente de redeno ambiente de rede, falhas estas, falhas estas
que ele não conseguiu recuperar, porque ele não conseguiu recuperar, por
exemplo, aexemplo, a queda de enlaces físicos ou aqueda de enlaces físicos ou a
pane de uma estaçãopane de uma estação;;
30/09/13Prof. Luiz Otávio B. Lento 170
•controle de fluxocontrole de fluxo - regula o fluxo de dados a- regula o fluxo de dados a
ser transferido, de acordo com aser transferido, de acordo com a velocidadevelocidade
existente entre os dois sistemasexistente entre os dois sistemas..
⇒O TCP envia vários segmentos ao destino,O TCP envia vários segmentos ao destino,
mesmo antes de receber ummesmo antes de receber um
reconhecimento positivo ou negativo,reconhecimento positivo ou negativo,
adaptando a diferença de velocidadeadaptando a diferença de velocidade
existente entre os dois sistemasexistente entre os dois sistemas
30/09/13Prof. Luiz Otávio B. Lento 171
controle de fluxocontrole de fluxo
30/09/13Prof. Luiz Otávio B. Lento 172
•precedência e segurançaprecedência e segurança - níveis de- níveis de
precedência e segurança podem serprecedência e segurança podem ser
estabelecidos pela aplicaçãoestabelecidos pela aplicação parapara
tratamento dos dados;tratamento dos dados;
30/09/13Prof. Luiz Otávio B. Lento 173
Princípio de Janela DeslizantePrincípio de Janela Deslizante
•Utilizado para umUtilizado para um melhor aproveitamento damelhor aproveitamento da
largura de bandalargura de banda;;
•o protocolo simples deo protocolo simples de transporte consiste notransporte consiste no
recebimento de um ACK para cada pacoterecebimento de um ACK para cada pacote
transmitidotransmitido. Ocasiona uma. Ocasiona uma má utilizaçãomá utilização dada
banda passante;banda passante;
30/09/13Prof. Luiz Otávio B. Lento 174
Se segmentos são perdidos durante um congestionamento, o receptorSe segmentos são perdidos durante um congestionamento, o receptor
irá reconhecer o último segmento e replica com um número de janelairá reconhecer o último segmento e replica com um número de janela
reduzidoreduzido
30/09/13Prof. Luiz Otávio B. Lento 175
•para cada pacote transmitido é iniciado opara cada pacote transmitido é iniciado o timetime
outout, e existe um ACK para cada um deles, e existe um ACK para cada um deles;;
•conforme os ACK vão chegando, aconforme os ACK vão chegando, a janelajanela vaivai
deslizando para que o próximo pacote possadeslizando para que o próximo pacote possa
ser enviadoser enviado..
•A janela continuará deslizando conforme foremA janela continuará deslizando conforme forem
recebidas as confirmaçõesrecebidas as confirmações;;
30/09/13Prof. Luiz Otávio B. Lento 176
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
janelainicial
janeladesliza
30/09/13Prof. Luiz Otávio B. Lento 177
suponha que o pacotesuponha que o pacote 3 tenha se3 tenha se perdidoperdido,,
isto é, a origem não recebeu oisto é, a origem não recebeu o ACK 4ACK 4, logo, a, logo, a
janela permanece na posição 2;janela permanece na posição 2;
quando ocorre o timequando ocorre o time out da origem, esteout da origem, este
será retransmitidoserá retransmitido;;
30/09/13Prof. Luiz Otávio B. Lento 178
30/09/13Prof. Luiz Otávio B. Lento 179
Seqüência de TransmissãoSeqüência de Transmissão
30/09/13Prof. Luiz Otávio B. Lento 180
FormatodosSegmentos
portadeorigem portadedestino
númerodeseqüência
númerodeACK
checksum urgentpointer
160 31
opções padding
Dados
...
HLEN reservado
bits de
código
janela
30/09/13Prof. Luiz Otávio B. Lento 181
Formato do SegmentoFormato do Segmento
•porta de origem e de destinoporta de origem e de destino - contêm os- contêm os
números das portas TCP associadas aosnúmeros das portas TCP associadas aos
programas de aplicação em cada ponto daprogramas de aplicação em cada ponto da
conexão;conexão;
•NR de seqüênciaNR de seqüência - identifica o número de- identifica o número de
seqüência do primeiro octeto deste segmentoseqüência do primeiro octeto deste segmento
dentro do stream;dentro do stream;
30/09/13Prof. Luiz Otávio B. Lento 182
•NR de ACK (acknowledgement)NR de ACK (acknowledgement) - identifica o- identifica o
número do próximo octeto que o destino esperanúmero do próximo octeto que o destino espera
receber;receber;
•HLENHLEN - contém um número inteiro que- contém um número inteiro que
especifica o tamanho do cabeçalho doespecifica o tamanho do cabeçalho do
segmento medido em múltiplos de 32 bitssegmento medido em múltiplos de 32 bits
(necessário porquê o campo opções possui(necessário porquê o campo opções possui
tamanho variável);tamanho variável);
30/09/13Prof. Luiz Otávio B. Lento 183
•bits de códigobits de código - determina o propósito e o- determina o propósito e o
conteúdo do segmento (os bits mostram comoconteúdo do segmento (os bits mostram como
interpretar os outros campos no cabeçalho)interpretar os outros campos no cabeçalho)
•Ex: 1Ex: 1°° bit ativo - campo urgente pointer válidobit ativo - campo urgente pointer válido
22°° bit ativo - número do ACK válido até o bit 6bit ativo - número do ACK válido até o bit 6
30/09/13Prof. Luiz Otávio B. Lento 184
•janelajanela - o TCP informa quantos dados ele está- o TCP informa quantos dados ele está
pronto para aceitar a cada momento que enviapronto para aceitar a cada momento que envia
um segmento, através da especificação doum segmento, através da especificação do
tamanho do buffer;tamanho do buffer;
•checksumchecksum - armazena um valor- armazena um valor
correspondente para verificação de erro,correspondente para verificação de erro,
levando em consideração o tamanho dolevando em consideração o tamanho do
cabeçalho, dados a serem transmitidos,cabeçalho, dados a serem transmitidos,
endereço IP de origem e destino;endereço IP de origem e destino;
30/09/13Prof. Luiz Otávio B. Lento 185
•urgent pointerurgent pointer - utilizado para identificar um- utilizado para identificar um
bloco de dados urgente dentro de um segmentobloco de dados urgente dentro de um segmento
TCP;TCP;
•opçãoopção - negocia com a outra extremidade da- negocia com a outra extremidade da
conexão o tamanho máximo de um segmentoconexão o tamanho máximo de um segmento
que o outro TCP está disposto a receber;que o outro TCP está disposto a receber;
•paddingpadding - garante que o tamanho do- garante que o tamanho do
cabeçalho do segmento TCP seja múltiplo decabeçalho do segmento TCP seja múltiplo de
32 bits;32 bits;
30/09/13Prof. Luiz Otávio B. Lento 186
Protocolo UDP (User Datagrama Protocol)Protocolo UDP (User Datagrama Protocol)
30/09/13Prof. Luiz Otávio B. Lento 187
O UDP é um protocolo padrão descrito na RFCO UDP é um protocolo padrão descrito na RFC
768;768;
•O UDPO UDP é basicamente umaé basicamente uma interface deinterface de
aplicação (API) para o IPaplicação (API) para o IP..
•Ele, é um protocoloEle, é um protocolo não orientado à conexãonão orientado à conexão,,
não adicionanão adiciona confiabilidade, controle de fluxoconfiabilidade, controle de fluxo
ou recuperação de errosou recuperação de erros para o IP;para o IP;
30/09/13Prof. Luiz Otávio B. Lento 188
UDP não estabelece uma sessão antes do
envio de dados
UDP é um protocolo de baixo overhead
30/09/13Prof. Luiz Otávio B. Lento 189
•OO UDP serve simplesmente como umUDP serve simplesmente como um
multiplexador/demultiplexadormultiplexador/demultiplexador para o envio epara o envio e
recebimento de datagramas IPrecebimento de datagramas IP, utilizando, utilizando
portas para direcionar os datagramas;portas para direcionar os datagramas;
30/09/13Prof. Luiz Otávio B. Lento 190
•O UDPO UDP é um mecanismoé um mecanismo primário para envioprimário para envio
do datagramado datagrama de uma aplicação para a outra.de uma aplicação para a outra.
•Ele pode ser considerado como extremamenteEle pode ser considerado como extremamente
simples e, conseqüentemente tem um baixosimples e, conseqüentemente tem um baixo
overheadoverhead, porém, existe a necessidade da, porém, existe a necessidade da
aplicação ter a responsabilidade de garantir aaplicação ter a responsabilidade de garantir a
recuperação de errosrecuperação de erros;;
30/09/13Prof. Luiz Otávio B. Lento 191
•Não oferece meios que permitam garantir umaNão oferece meios que permitam garantir uma
transferência confiável de dadostransferência confiável de dados, uma vez, uma vez
que não implementa mecanismos deque não implementa mecanismos de
reconhecimento, de seqüenciação nem dereconhecimento, de seqüenciação nem de
controle de fluxocontrole de fluxo das mensagens de dadosdas mensagens de dados
trocadas entre os dois sistemas;trocadas entre os dois sistemas;
30/09/13Prof. Luiz Otávio B. Lento 192
•Logo, osLogo, os datagramas podem serdatagramas podem ser perdidos,perdidos,
duplicados ou entregues fora de ordemduplicados ou entregues fora de ordem aoao
sistema de destinosistema de destino..
•AA aplicação assume toda aaplicação assume toda a
responsabilidaderesponsabilidade pelo controle de erros dentropelo controle de erros dentro
do nível de qualidade do serviço que a mesmado nível de qualidade do serviço que a mesma
requer;requer;
30/09/13Prof. Luiz Otávio B. Lento 193
Diferentes segmentosDiferentes segmentos
podem possuir diferentespodem possuir diferentes
rotasrotas
Se existem
rotas
diferentes
até o
destino, os
segmentos
podem
chegar fora
de ordem
30/09/13Prof. Luiz Otávio B. Lento 194
•Descrição do protocoloDescrição do protocolo::
⇒porta de origem e destinoporta de origem e destino - identificam os- identificam os
números das portas de serviço UDP utilizadasnúmeros das portas de serviço UDP utilizadas
em uma comunicação;em uma comunicação;
⇒tamanho da mensagemtamanho da mensagem - contém o número- contém o número
de octetos do datagrama UDP, incluindo ode octetos do datagrama UDP, incluindo o
cabeçalho e os dados do usuário;cabeçalho e os dados do usuário;
30/09/13Prof. Luiz Otávio B. Lento 195
⇒checksumchecksum - armazena um valor- armazena um valor
correspondente para verificação de erro,correspondente para verificação de erro,
levando em consideração o tamanho dolevando em consideração o tamanho do
cabeçalho, dados a serem transmitidos,cabeçalho, dados a serem transmitidos,
endereço IP de origem e destino;endereço IP de origem e destino;
30/09/13Prof. Luiz Otávio B. Lento 196
FormatodoDatagramaUDP
portadeorigem portadedestino
tamanhodamensagem checksum
160 31
Dados
...
30/09/13Prof. Luiz Otávio B. Lento 197
•AA API UDP provê os seguintes serviçosAPI UDP provê os seguintes serviços::
⇒criação de novas portascriação de novas portas receptoras;receptoras;
⇒realiza operação derealiza operação de envio de dadosenvio de dados,,
passando como parâmetros as portas e ospassando como parâmetros as portas e os
endereços IP de destino e origem;endereços IP de destino e origem;
⇒recebe dadosrecebe dados, indicando a porta e o, indicando a porta e o
endereço de origem;endereço de origem;
30/09/13Prof. Luiz Otávio B. Lento 198

Mais conteúdo relacionado

Mais procurados

Apostila sobre montagem de redes
Apostila sobre montagem de redesApostila sobre montagem de redes
Apostila sobre montagem de redesPaulo Mbanda
 
Redes - Camada de Inter-Redes
Redes - Camada de Inter-RedesRedes - Camada de Inter-Redes
Redes - Camada de Inter-RedesLuiz Arthur
 
Multimídia: Protocolos de transmissão de áudio e vídeo
Multimídia:  Protocolos de transmissão de áudio e vídeoMultimídia:  Protocolos de transmissão de áudio e vídeo
Multimídia: Protocolos de transmissão de áudio e vídeoFernando Costa
 
Programação para Kernel Linux - Parte 2
Programação para Kernel Linux - Parte 2Programação para Kernel Linux - Parte 2
Programação para Kernel Linux - Parte 2Ivo Calado
 
Diferenças entre IPV4 e IPV6
Diferenças entre IPV4 e IPV6Diferenças entre IPV4 e IPV6
Diferenças entre IPV4 e IPV6José Alyson
 
Comparação da Segurança Nativa entre os Protocolos IPv4 e IPv6
Comparação da Segurança Nativa entre os Protocolos IPv4 e IPv6Comparação da Segurança Nativa entre os Protocolos IPv4 e IPv6
Comparação da Segurança Nativa entre os Protocolos IPv4 e IPv6Rafael Pimenta
 
IMS - IP Multimedia Subsystem
IMS - IP Multimedia SubsystemIMS - IP Multimedia Subsystem
IMS - IP Multimedia SubsystemFrederico Madeira
 
Entenda e Aplique o IPv6
Entenda e Aplique o IPv6Entenda e Aplique o IPv6
Entenda e Aplique o IPv6Kleber Silva
 
Redes arquitetura de redes rm osi e tcp_ip
Redes  arquitetura de redes rm osi e tcp_ipRedes  arquitetura de redes rm osi e tcp_ip
Redes arquitetura de redes rm osi e tcp_ipLuiz Ladeira
 
Basico de protocolos_2009
Basico de protocolos_2009Basico de protocolos_2009
Basico de protocolos_2009redesinforma
 

Mais procurados (20)

Tcp e ip
Tcp e ipTcp e ip
Tcp e ip
 
Apostila sobre montagem de redes
Apostila sobre montagem de redesApostila sobre montagem de redes
Apostila sobre montagem de redes
 
Redes - Camada de Inter-Redes
Redes - Camada de Inter-RedesRedes - Camada de Inter-Redes
Redes - Camada de Inter-Redes
 
Multimídia: Protocolos de transmissão de áudio e vídeo
Multimídia:  Protocolos de transmissão de áudio e vídeoMultimídia:  Protocolos de transmissão de áudio e vídeo
Multimídia: Protocolos de transmissão de áudio e vídeo
 
Programação para Kernel Linux - Parte 2
Programação para Kernel Linux - Parte 2Programação para Kernel Linux - Parte 2
Programação para Kernel Linux - Parte 2
 
Aula1 protocolos
Aula1 protocolosAula1 protocolos
Aula1 protocolos
 
Diferenças entre IPV4 e IPV6
Diferenças entre IPV4 e IPV6Diferenças entre IPV4 e IPV6
Diferenças entre IPV4 e IPV6
 
Curso redes seed
Curso redes seedCurso redes seed
Curso redes seed
 
Questoes
QuestoesQuestoes
Questoes
 
Redes
RedesRedes
Redes
 
Comparação da Segurança Nativa entre os Protocolos IPv4 e IPv6
Comparação da Segurança Nativa entre os Protocolos IPv4 e IPv6Comparação da Segurança Nativa entre os Protocolos IPv4 e IPv6
Comparação da Segurança Nativa entre os Protocolos IPv4 e IPv6
 
Protocolo IPv6
Protocolo IPv6Protocolo IPv6
Protocolo IPv6
 
IMS - IP Multimedia Subsystem
IMS - IP Multimedia SubsystemIMS - IP Multimedia Subsystem
IMS - IP Multimedia Subsystem
 
Tcpip
TcpipTcpip
Tcpip
 
Protocolos
ProtocolosProtocolos
Protocolos
 
Protocolos de Rede para Internet das Coisas
Protocolos de Rede para Internet das CoisasProtocolos de Rede para Internet das Coisas
Protocolos de Rede para Internet das Coisas
 
Entenda e Aplique o IPv6
Entenda e Aplique o IPv6Entenda e Aplique o IPv6
Entenda e Aplique o IPv6
 
Redes arquitetura de redes rm osi e tcp_ip
Redes  arquitetura de redes rm osi e tcp_ipRedes  arquitetura de redes rm osi e tcp_ip
Redes arquitetura de redes rm osi e tcp_ip
 
Basico de protocolos_2009
Basico de protocolos_2009Basico de protocolos_2009
Basico de protocolos_2009
 
Aula 6 a camada de rede
Aula 6   a camada de redeAula 6   a camada de rede
Aula 6 a camada de rede
 

Destaque

ACALME-SE, JEREMIAS, EU SEI QUEM ÉS.
ACALME-SE, JEREMIAS, EU SEI QUEM ÉS.ACALME-SE, JEREMIAS, EU SEI QUEM ÉS.
ACALME-SE, JEREMIAS, EU SEI QUEM ÉS.Marcos Nascimento
 
Visita estudo museu_ceramica
Visita estudo museu_ceramicaVisita estudo museu_ceramica
Visita estudo museu_ceramicaccrisana
 
«Гибридные системы автономного электроснабжения с опорно-балансирующим накопи...
«Гибридные системы автономного электроснабжения с опорно-балансирующим накопи...«Гибридные системы автономного электроснабжения с опорно-балансирующим накопи...
«Гибридные системы автономного электроснабжения с опорно-балансирующим накопи...BDA
 
Advanced Strategic Project Management
Advanced Strategic Project ManagementAdvanced Strategic Project Management
Advanced Strategic Project ManagementSteve Smith
 
UPS We print sticker
UPS We print stickerUPS We print sticker
UPS We print stickerRick Adams
 
Diseño C.C. La Granja d'Escarp
Diseño C.C. La Granja d'Escarp Diseño C.C. La Granja d'Escarp
Diseño C.C. La Granja d'Escarp Víctor Vélez
 
HCC Desktop User Specialist I
HCC Desktop User Specialist IHCC Desktop User Specialist I
HCC Desktop User Specialist IJuan Whitehead
 
Thermo II Project
Thermo II ProjectThermo II Project
Thermo II ProjectDane Arnold
 

Destaque (14)

ACALME-SE, JEREMIAS, EU SEI QUEM ÉS.
ACALME-SE, JEREMIAS, EU SEI QUEM ÉS.ACALME-SE, JEREMIAS, EU SEI QUEM ÉS.
ACALME-SE, JEREMIAS, EU SEI QUEM ÉS.
 
Visita estudo museu_ceramica
Visita estudo museu_ceramicaVisita estudo museu_ceramica
Visita estudo museu_ceramica
 
«Гибридные системы автономного электроснабжения с опорно-балансирующим накопи...
«Гибридные системы автономного электроснабжения с опорно-балансирующим накопи...«Гибридные системы автономного электроснабжения с опорно-балансирующим накопи...
«Гибридные системы автономного электроснабжения с опорно-балансирующим накопи...
 
CSQA Certificate
CSQA CertificateCSQA Certificate
CSQA Certificate
 
Advanced Strategic Project Management
Advanced Strategic Project ManagementAdvanced Strategic Project Management
Advanced Strategic Project Management
 
UPS We print sticker
UPS We print stickerUPS We print sticker
UPS We print sticker
 
Raydeo LOGO jpeg
Raydeo LOGO jpeg Raydeo LOGO jpeg
Raydeo LOGO jpeg
 
Test
TestTest
Test
 
Diseño C.C. La Granja d'Escarp
Diseño C.C. La Granja d'Escarp Diseño C.C. La Granja d'Escarp
Diseño C.C. La Granja d'Escarp
 
HCC Desktop User Specialist I
HCC Desktop User Specialist IHCC Desktop User Specialist I
HCC Desktop User Specialist I
 
Thermo II Project
Thermo II ProjectThermo II Project
Thermo II Project
 
7053_001
7053_0017053_001
7053_001
 
Deans' List award
Deans' List awardDeans' List award
Deans' List award
 
HUMAN ELEMENT
HUMAN ELEMENTHUMAN ELEMENT
HUMAN ELEMENT
 

Semelhante a Redes de computador

Gestão de Redes de Computadores e Serviços.pptx
Gestão de Redes de Computadores e Serviços.pptxGestão de Redes de Computadores e Serviços.pptx
Gestão de Redes de Computadores e Serviços.pptxHJesusMiguel
 
Convergencia e interoperabilidade 2.2013
Convergencia e interoperabilidade 2.2013Convergencia e interoperabilidade 2.2013
Convergencia e interoperabilidade 2.2013viviansg
 
Sistema Operacional - Aula006
Sistema Operacional - Aula006Sistema Operacional - Aula006
Sistema Operacional - Aula006Cláudio Amaral
 
Aula podium redes e internet 2016
Aula podium redes e internet 2016Aula podium redes e internet 2016
Aula podium redes e internet 2016Aucionio Miranda
 
Comunicação de Dados - Modulo 5
 Comunicação de Dados - Modulo 5 Comunicação de Dados - Modulo 5
Comunicação de Dados - Modulo 5Mariana Hiyori
 
Camada OSI e TCP/IP Resumo
Camada OSI e TCP/IP ResumoCamada OSI e TCP/IP Resumo
Camada OSI e TCP/IP ResumoMatheus Falcão
 
S2 B 2007 Infra Aula 01 V1.00
S2 B 2007   Infra   Aula 01 V1.00S2 B 2007   Infra   Aula 01 V1.00
S2 B 2007 Infra Aula 01 V1.00doctorweb
 
Redes de computadores II - 1.Arquitetura TCP/IP
Redes de computadores II - 1.Arquitetura TCP/IPRedes de computadores II - 1.Arquitetura TCP/IP
Redes de computadores II - 1.Arquitetura TCP/IPMauro Tapajós
 
Aula 4 introducao iii
Aula 4   introducao iiiAula 4   introducao iii
Aula 4 introducao iiiwab030
 

Semelhante a Redes de computador (20)

Gestão de Redes de Computadores e Serviços.pptx
Gestão de Redes de Computadores e Serviços.pptxGestão de Redes de Computadores e Serviços.pptx
Gestão de Redes de Computadores e Serviços.pptx
 
Introducao as rede de computadores
Introducao as rede de computadoresIntroducao as rede de computadores
Introducao as rede de computadores
 
Convergencia e interoperabilidade 2.2013
Convergencia e interoperabilidade 2.2013Convergencia e interoperabilidade 2.2013
Convergencia e interoperabilidade 2.2013
 
Aula2 protocolos
Aula2 protocolosAula2 protocolos
Aula2 protocolos
 
Protocolos
ProtocolosProtocolos
Protocolos
 
Modelo osi
Modelo osiModelo osi
Modelo osi
 
aula-13-revisc3a3o.pdf
aula-13-revisc3a3o.pdfaula-13-revisc3a3o.pdf
aula-13-revisc3a3o.pdf
 
Sistema Operacional - Aula006
Sistema Operacional - Aula006Sistema Operacional - Aula006
Sistema Operacional - Aula006
 
Redes - TCP/IP
Redes - TCP/IPRedes - TCP/IP
Redes - TCP/IP
 
Arquitetura tcp ip - 1
Arquitetura tcp ip - 1Arquitetura tcp ip - 1
Arquitetura tcp ip - 1
 
Modelo osi
Modelo osiModelo osi
Modelo osi
 
Aula podium redes e internet 2016
Aula podium redes e internet 2016Aula podium redes e internet 2016
Aula podium redes e internet 2016
 
Comunicação de Dados - Modulo 5
 Comunicação de Dados - Modulo 5 Comunicação de Dados - Modulo 5
Comunicação de Dados - Modulo 5
 
Camada OSI e TCP/IP Resumo
Camada OSI e TCP/IP ResumoCamada OSI e TCP/IP Resumo
Camada OSI e TCP/IP Resumo
 
Tcp
TcpTcp
Tcp
 
Tcp
TcpTcp
Tcp
 
Criação de uma rede
Criação de uma redeCriação de uma rede
Criação de uma rede
 
S2 B 2007 Infra Aula 01 V1.00
S2 B 2007   Infra   Aula 01 V1.00S2 B 2007   Infra   Aula 01 V1.00
S2 B 2007 Infra Aula 01 V1.00
 
Redes de computadores II - 1.Arquitetura TCP/IP
Redes de computadores II - 1.Arquitetura TCP/IPRedes de computadores II - 1.Arquitetura TCP/IP
Redes de computadores II - 1.Arquitetura TCP/IP
 
Aula 4 introducao iii
Aula 4   introducao iiiAula 4   introducao iii
Aula 4 introducao iii
 

Redes de computador

  • 1. PROF. MSC. LUIZ OTÁVIOPROF. MSC. LUIZ OTÁVIO Redes de Computadores TCP/IPRedes de Computadores TCP/IP
  • 2. 30/09/13Prof. Luiz Otávio B. Lento 2 EmentaEmenta Redes de Alta Velocidade; Redes Sem Fio (Wireless)Redes de Alta Velocidade; Redes Sem Fio (Wireless) Redes Digitais. Redes ATM. Redes com QualidadeRedes Digitais. Redes ATM. Redes com Qualidade de serviço (QoS); Protocolo de reserva de dede serviço (QoS); Protocolo de reserva de de recurso (RSVP); Redes Virtuais Privadas (VPN);recurso (RSVP); Redes Virtuais Privadas (VPN); Intranets; Linhas Digitais por assinatura;Intranets; Linhas Digitais por assinatura; Roteamento IP; Algoritmos; Outros Protocolos.Roteamento IP; Algoritmos; Outros Protocolos.
  • 3. BibliografiaBibliografia Comer, Douglas E., Interligação em RedesComer, Douglas E., Interligação em Redes com TCP/IP Vol.1, Rio de Janeiro, Ed.com TCP/IP Vol.1, Rio de Janeiro, Ed. CampusCampus Tanenbaum, Andrew S., Redes deTanenbaum, Andrew S., Redes de Computadores, Rio de Janeiro, Ed. CampusComputadores, Rio de Janeiro, Ed. Campus Lewis, Chris, Cisco TCP/IP RoutingLewis, Chris, Cisco TCP/IP Routing Professional Reference, Mcgraw-HillProfessional Reference, Mcgraw-Hill Kurose, J. & Ross, K., “Redes deKurose, J. & Ross, K., “Redes de Computadores uma Nova Abordagem”, 1Computadores uma Nova Abordagem”, 1aa Edição, Ed.Edição, Ed. Pearson - Addison Wesley, 2003Pearson - Addison Wesley, 2003 30/09/13Prof. Luiz Otávio B. Lento 3
  • 4. Arquitetura TCP/IPArquitetura TCP/IP (Arquitetura Internet)(Arquitetura Internet) 30/09/13Prof. Luiz Otávio B. Lento 4
  • 6. InternetworkingInternetworking é um esquema paraé um esquema para interconectar várias redes de diferentesinterconectar várias redes de diferentes tecnologiastecnologias Logo, um sistema de redes interconectadasLogo, um sistema de redes interconectadas é chamado deé chamado de Internetworking ou InternetInternetworking ou Internet 30/09/13Prof. Luiz Otávio B. Lento 6
  • 8. 30/09/13Prof. Luiz Otávio B. Lento 8 Princípio da interconexão de camadas de redePrincípio da interconexão de camadas de rede  funcionalidade da rede em módulos independentesfuncionalidade da rede em módulos independentes  diversidade de tecnologias de LAN/WAN nas camadasdiversidade de tecnologias de LAN/WAN nas camadas 1 e 21 e 2 (modelo OSI)(modelo OSI) e camada de Acesso à Redee camada de Acesso à Rede (modelo TCP/IP)(modelo TCP/IP)  diversidade de aplicações funcionando nas camadasdiversidade de aplicações funcionando nas camadas 5, 6 e 75, 6 e 7 (OSI)(OSI) e Camada de Aplicaçãoe Camada de Aplicação (TCP/IP)(TCP/IP)
  • 9. •Fisicamente, aFisicamente, a interconexão de duas redesinterconexão de duas redes é feita através de um computadoré feita através de um computador.. •Para que esta ligação não seja só física, oPara que esta ligação não seja só física, o computador conectado às duas redes deverácomputador conectado às duas redes deverá ter a capacidade de despachar pacotes deter a capacidade de despachar pacotes de uma rede para a outrauma rede para a outra.. 30/09/13Prof. Luiz Otávio B. Lento 9
  • 10. •Estes computadores são chamados deEstes computadores são chamados de gatewaysgateways (roteadores)(roteadores);; 30/09/13Prof. Luiz Otávio B. Lento 10
  • 11. OBS: Para identificar uma máquina na rede, atribui-se um endereço IP para cada uma. rede1 rede2 umarede virtual roteador duasredesinterconectadaspor um roteador InternetA Ex:para atuar como um roteador, este precisaEx:para atuar como um roteador, este precisa capturar os pacotes da rede 1 que sãocapturar os pacotes da rede 1 que são destinados a rede 2 e transferí-los, bem como odestinados a rede 2 e transferí-los, bem como o inverso.inverso. 30/09/13Prof. Luiz Otávio B. Lento 11
  • 12. •Em redes mais complexas osEm redes mais complexas os roteadoresroteadores necessitam saber além das conexões diretasnecessitam saber além das conexões diretas;; 30/09/13Prof. Luiz Otávio B. Lento 12
  • 13. •Ao contrário das tecnologias de rede proprietáriasAo contrário das tecnologias de rede proprietárias mencionadas anteriormente, o TCP/IP foi projetadomencionadas anteriormente, o TCP/IP foi projetado como umcomo um padrão abertopadrão aberto.. •Qualquer pessoa tinha a liberdade de usar oQualquer pessoa tinha a liberdade de usar o TCP/IP, ajudando o seuTCP/IP, ajudando o seu rápido desenvolvimentorápido desenvolvimento.. •A arquitetura TCP/IPA arquitetura TCP/IP é semelhante às outrasé semelhante às outras arquiteturas existentes, éarquiteturas existentes, é modelada em camadasmodelada em camadas.. Essa organização em camadas induz ao termoEssa organização em camadas induz ao termo pilha de protocolospilha de protocolos. A arquitetura TCP/IP é. A arquitetura TCP/IP é modelada emmodelada em quatro camadasquatro camadas.. TCP/IPTCP/IP 30/09/13Prof. Luiz Otávio B. Lento 13
  • 15. Comparação OSI e TCP/IPComparação OSI e TCP/IP O modelo OSI serviu comoO modelo OSI serviu como referênciareferência para a pilhapara a pilha TCP/IP na sua composição.TCP/IP na sua composição. 30/09/13Prof. Luiz Otávio B. Lento 15
  • 16. Comparação OSI e TCP/IPComparação OSI e TCP/IP 30/09/13Prof. Luiz Otávio B. Lento 16
  • 17. 30/09/13Prof. Luiz Otávio B. Lento 17 ENCAPSULAMENTO DE DADOSENCAPSULAMENTO DE DADOS
  • 18. Camada Internetwork, ou CamadaCamada Internetwork, ou Camada Internet ou Camada de RedeInternet ou Camada de Rede 30/09/13Prof. Luiz Otávio B. Lento 18
  • 19. A determinação do melhor caminho e a comutaçãoA determinação do melhor caminho e a comutação de pacotes ocorrem nesta camadade pacotes ocorrem nesta camada 30/09/13Prof. Luiz Otávio B. Lento 19
  • 20. •É responsável pelaÉ responsável pela transferência de dados datransferência de dados da origem ao seu destinoorigem ao seu destino através de uma ou maisatravés de uma ou mais sub-redes interconectadas desde a máquina desub-redes interconectadas desde a máquina de origem até o seu destino;origem até o seu destino; 30/09/13Prof. Luiz Otávio B. Lento 20
  • 21. •Recebe osRecebe os pedidos do nível de transportepedidos do nível de transporte para transmitir pacotespara transmitir pacotes, que ao solicitar a, que ao solicitar a transmissão, informa o endereço da máquinatransmissão, informa o endereço da máquina onde o pacote será entregue;onde o pacote será entregue; 30/09/13Prof. Luiz Otávio B. Lento 21
  • 22. Protocolo IPProtocolo IP 30/09/13Prof. Luiz Otávio B. Lento 22
  • 23. •Projetado para permitir aProjetado para permitir a interconexão de redesinterconexão de redes de computadores que utilizam a tecnologia dede computadores que utilizam a tecnologia de comutação de pacotescomutação de pacotes;; •É umÉ um protocolo sem conexões cuja a função éprotocolo sem conexões cuja a função é transferir blocos de dados (datagramas)transferir blocos de dados (datagramas) dada origem para o destinoorigem para o destino, onde esses são hosts, onde esses são hosts identificados por endereços IP;identificados por endereços IP; 30/09/13Prof. Luiz Otávio B. Lento 23
  • 24. 30/09/13Prof. Luiz Otávio B. Lento 24 Protocolo de Internet (IP)Protocolo de Internet (IP)
  • 25. •Pacotes enviados pelo IPPacotes enviados pelo IP podem serpodem ser perdidos,perdidos, chegarem fora de ordem ou duplicadoschegarem fora de ordem ou duplicados, sendo, sendo que este não trata estas situações,que este não trata estas situações, deixandodeixando para camadas superiorespara camadas superiores;; •ForneceFornece serviço deserviço de fragmentação e montagemfragmentação e montagem de datagramas longosde datagramas longos, de forma que possam ser, de forma que possam ser transmitidos através de redes onde o tamanhotransmitidos através de redes onde o tamanho máximo permitido é pequeno;máximo permitido é pequeno; 30/09/13Prof. Luiz Otávio B. Lento 25
  • 26. 30/09/13Prof. Luiz Otávio B. Lento 26 Protocolo de Internet (IP)Protocolo de Internet (IP)
  • 27. •Nenhum controle de erros é realizado, a nãoNenhum controle de erros é realizado, a não ser o checksumser o checksum;; 30/09/13Prof. Luiz Otávio B. Lento 27
  • 28. •Trabalha comTrabalha com roteamento distribuído nosroteamento distribuído nos gatewaysgateways - os gateways recebem- os gateways recebem informações locais sobre o tráfego, einformações locais sobre o tráfego, e calculando novas tabelas;calculando novas tabelas; 30/09/13Prof. Luiz Otávio B. Lento 28
  • 29. •O datagrama IP é oO datagrama IP é o pacote básico depacote básico de transferência de informaçõestransferência de informações do protocolodo protocolo Internet;Internet; •Possui umPossui um cabeçalho contendo informaçõescabeçalho contendo informações para o IP e dadospara o IP e dados que são relevantes somenteque são relevantes somente para as camadas mais altas da arquitetura;para as camadas mais altas da arquitetura; cabeçalho dados Datagrama IPDatagrama IP 30/09/13Prof. Luiz Otávio B. Lento 29
  • 30. •o datagrama IP éo datagrama IP é encapsuladoencapsulado numnum quadroquadro de uma redede uma rede, normalmente com o seu tamanho, normalmente com o seu tamanho limitado pelo frame (ex: Ethernet é de 1500limitado pelo frame (ex: Ethernet é de 1500 bytes);bytes); cabeçalhodaredefísica datagramaIPcomodado 30/09/13Prof. Luiz Otávio B. Lento 30
  • 31. •Ao invés de limitar o tamanho do datagrama IP,Ao invés de limitar o tamanho do datagrama IP, negocia-se anegocia-se a fragmentação deste datagrama,fragmentação deste datagrama, reagrupando-o no seu destinoreagrupando-o no seu destino;; •Não são impostosNão são impostos tamanhos máximos para ostamanhos máximos para os datagramas, porém sabe-se que subredes sãodatagramas, porém sabe-se que subredes são capazes de manipular datagramas com tamanhocapazes de manipular datagramas com tamanho mínimo de 576 bytesmínimo de 576 bytes;; 30/09/13Prof. Luiz Otávio B. Lento 31
  • 32. •Fragmentos de um datagrama tem cabeçalhoFragmentos de um datagrama tem cabeçalho,, basicamente copiado do datagrama originalbasicamente copiado do datagrama original, com, com os seus respectivos dados;os seus respectivos dados; •OsOs fragmentos são tratados como IPfragmentos são tratados como IP datagramas normaisdatagramas normais, enquanto transportados, enquanto transportados para o seu destino;para o seu destino; 30/09/13Prof. Luiz Otávio B. Lento 32
  • 33. •Logo, se umLogo, se um fragmento for perdido, ofragmento for perdido, o datagrama completo é considerado perdidodatagrama completo é considerado perdido;; 30/09/13Prof. Luiz Otávio B. Lento 33
  • 34. • formato do datagrama IP octeto1 octeto2 octeto3 octeto4 vers hlen servicetype totallenght flagsidentification fragmentoffset timetolive protocol headerchecksum sourceIPaddress destinationIPaddress IPoptions(IFANY) padding data ... 30/09/13Prof. Luiz Otávio B. Lento 34
  • 35. ⇒versvers - identifica a versão do protocolo, o que- identifica a versão do protocolo, o que determina o formato do cabeçalho internetdetermina o formato do cabeçalho internet (versão atual 4.5, sendo que a versão 6 está(versão atual 4.5, sendo que a versão 6 está em fase de experiência);em fase de experiência); ⇒hlenhlen - comprimento do cabeçalho, em- comprimento do cabeçalho, em número de palavras de 32 bits, indicando onúmero de palavras de 32 bits, indicando o início do campo de dados;início do campo de dados; ⇒service typeservice type - indicação dos parâmetros da- indicação dos parâmetros da qualidade do serviço desejada, usada naqualidade do serviço desejada, usada na seleção dos serviços de transmissão de dadosseleção dos serviços de transmissão de dados das sub-redes;das sub-redes; 30/09/13Prof. Luiz Otávio B. Lento 35
  • 36. PrecedênciaPrecedência – é a medida da natureza e– é a medida da natureza e prioridade do datagrama Ex:prioridade do datagrama Ex: 000 - rotina000 - rotina 001 - prioridade001 - prioridade 011 - flash011 - flash TOSTOS – especifca o tipo do serviço Ex:– especifca o tipo do serviço Ex: 0000 - serviço normal0000 - serviço normal 1000 - atraso mínimo1000 - atraso mínimo MBZMBZ - deverá ser sempre 0 – reservado para- deverá ser sempre 0 – reservado para uso futuro;uso futuro; precedência TOS MBZ 0 1 2 3 4 5 6 7 30/09/13Prof. Luiz Otávio B. Lento 36
  • 37. ⇒total lenghttotal lenght - fornece o comprimento de- fornece o comprimento de todo o datagrama (cabeçalho e dados -todo o datagrama (cabeçalho e dados - comprimento max. 65.535 octetos);comprimento max. 65.535 octetos); ⇒identificationidentification – valor único atribuído pela– valor único atribuído pela origem, usado na montagem dos fragmentosorigem, usado na montagem dos fragmentos do datagrama. Fragmentos de um datagramado datagrama. Fragmentos de um datagrama possuem a mesma identificação;possuem a mesma identificação; 30/09/13Prof. Luiz Otávio B. Lento 37
  • 38. ⇒flagsflags - serve ao controle de fragmentação,- serve ao controle de fragmentação, indicando se um datagrama pode ou não serindicando se um datagrama pode ou não ser fragmentado, e se houve fragmentação;fragmentado, e se houve fragmentação; 30/09/13Prof. Luiz Otávio B. Lento 38
  • 39. 00 - deve ser sempre 0- deve ser sempre 0 DFDF (don’t fragment)(don’t fragment) - 0 - significa- 0 - significa fragmentação; 1 - significa sem fragmentaçãofragmentação; 1 - significa sem fragmentação MFMF (more fragments)(more fragments) - 0 - significa último- 0 - significa último fragmento do datagrama; 1 - não é o últimofragmento do datagrama; 1 - não é o último fragmento do datagramafragmento do datagrama 0 DF MF 30/09/13Prof. Luiz Otávio B. Lento 39
  • 40. ⇒fragment offsetfragment offset – utilizado na– utilizado na remontagem do datagrama originalremontagem do datagrama original.. →IndicaIndica a posição do fragmento dentroa posição do fragmento dentro do datagrama originaldo datagrama original.. 30/09/13Prof. Luiz Otávio B. Lento 40
  • 41. →Este campo valeráEste campo valerá zero para datagramaszero para datagramas não fragmentadosnão fragmentados e noe no primeiro fragmentoprimeiro fragmento de um datagramade um datagrama.. → Este posicionamento é medido emEste posicionamento é medido em unidades de 8 octetos, 64 bytesunidades de 8 octetos, 64 bytes (os bytes(os bytes do cabeçalho não são contados);do cabeçalho não são contados); 30/09/13Prof. Luiz Otávio B. Lento 41
  • 42. ⇒time to livetime to live – determina o– determina o tempo de vidatempo de vida de um datagrama numa rede internetde um datagrama numa rede internet (medido em segundos).(medido em segundos). →Cada máquina ao colocar um datagramaCada máquina ao colocar um datagrama na rede, ela estabelece um tempo máximona rede, ela estabelece um tempo máximo de vida do datagrama.de vida do datagrama. 30/09/13Prof. Luiz Otávio B. Lento 42
  • 43. →A cada passagem por gateway, o tempo éA cada passagem por gateway, o tempo é decrementado do tempo de processamentodecrementado do tempo de processamento do pacotedo pacote (atualmente o roteador é capaz de(atualmente o roteador é capaz de processar um datagrama em menos de 1processar um datagrama em menos de 1 segundo).segundo). → Quando esteQuando este valor chegar a zero, ovalor chegar a zero, o datagrama será descartadodatagrama será descartado. Usado para. Usado para eliminar datagramas que não chegarem aoeliminar datagramas que não chegarem ao seu destino;seu destino; 30/09/13Prof. Luiz Otávio B. Lento 43
  • 44. ⇒protocolprotocol - indica o protocolo de alto nível- indica o protocolo de alto nível para o qual o IP irá liberar o dado em seupara o qual o IP irá liberar o dado em seu datagrama;datagrama; Ex:0 – reservado; 1 - ICMP; 2 - IGMP; 3 –Ex:0 – reservado; 1 - ICMP; 2 - IGMP; 3 – GGP; 4 – IP encapsulado; 5 - Stream 6 – TCP;GGP; 4 – IP encapsulado; 5 - Stream 6 – TCP; 8 – EGP; 17- UDP; 89 – OSPF (Open Shortest8 – EGP; 17- UDP; 89 – OSPF (Open Shortest Path First)Path First) 30/09/13Prof. Luiz Otávio B. Lento 44
  • 45. ⇒headerheader checksumchecksum - utilizado pelos- utilizado pelos gateways para verificar se asgateways para verificar se as informações doinformações do cabeçalho estão corretascabeçalho estão corretas durante adurante a transmissão ou atualização do cabeçalho (nãotransmissão ou atualização do cabeçalho (não é incluído o dado). Com isso, o checksum éé incluído o dado). Com isso, o checksum é recalculado e verificado a cada ponto onde orecalculado e verificado a cada ponto onde o cabeçalho é processado;cabeçalho é processado; 30/09/13Prof. Luiz Otávio B. Lento 45
  • 46. ⇒source e destination IP addresssource e destination IP address - origem e- origem e destino do datagrama;destino do datagrama; ⇒if optionsif options – possui comprimento variado, e– possui comprimento variado, e é utilizado paraé utilizado para discriminar as opções dediscriminar as opções de datagramadatagrama. Utilizado em informações de. Utilizado em informações de segurança, roteamento na origem, relatóriossegurança, roteamento na origem, relatórios de erros, depuração, etc;de erros, depuração, etc; 30/09/13Prof. Luiz Otávio B. Lento 46
  • 47. ⇒paddingpadding - garante que o comprimento do- garante que o comprimento do cabeçalho do datagrama seja semprecabeçalho do datagrama seja sempre múltiplo inteiro de 32 bits;múltiplo inteiro de 32 bits; ⇒datadata - dados.- dados. 30/09/13Prof. Luiz Otávio B. Lento 47
  • 48. Fragmentação e montagem de datagramasFragmentação e montagem de datagramas ⇒uma mensagem entregue pela camada deuma mensagem entregue pela camada de transporte (TCP ou UDP)transporte (TCP ou UDP) pode serpode ser segmentada em vários datagramassegmentada em vários datagramas, de, de acordo com oacordo com o tamanho máximo suportadotamanho máximo suportado pela sub-rede consideradapela sub-rede considerada (as redes físicas(as redes físicas possuem um tamanho máximo da área depossuem um tamanho máximo da área de dados seu quadro -dados seu quadro - MMaximumaximum TTransmissionransmission UUnitnit));; 30/09/13Prof. Luiz Otávio B. Lento 48
  • 49. •Descrita na RFC 792 com atualizações na RFC 950Descrita na RFC 792 com atualizações na RFC 950 •OO ICMP tem como funcionalidadeICMP tem como funcionalidade possibilitar quepossibilitar que roteadores interligados em redes possam informarroteadores interligados em redes possam informar erros ou problemas inesperadoserros ou problemas inesperados que possam ocorrerque possam ocorrer durante a transmissão de pacotesdurante a transmissão de pacotes. Porém, o ICMP. Porém, o ICMP não torna o IP confiável;não torna o IP confiável; ICMP (Internet Control Message Protocol)ICMP (Internet Control Message Protocol) 30/09/13Prof. Luiz Otávio B. Lento 49
  • 50. Tipos de Mensagens ICMPTipos de Mensagens ICMP 30/09/13Prof. Luiz Otávio B. Lento 50
  • 51. •O ICMPO ICMP utiliza outiliza o IP como se ele fosse umIP como se ele fosse um protocolo de alto nívelprotocolo de alto nível. Logo, o ICMP é parte. Logo, o ICMP é parte integrante da implementação do IP;integrante da implementação do IP; •As mensagens ICMPAs mensagens ICMP trafegam pela parte detrafegam pela parte de dados do datagrama IP;dados do datagrama IP; 30/09/13Prof. Luiz Otávio B. Lento 51
  • 52. •OO destino do pacote ICMP é odestino do pacote ICMP é o software Internetsoftware Internet protocolprotocol, no qual o módulo do, no qual o módulo do software ICMPsoftware ICMP tratarátratará a mensagema mensagem, verificando também se o causador do, verificando também se o causador do problema foi um programa aplicativo ou protocolosproblema foi um programa aplicativo ou protocolos superiores.superiores. 30/09/13Prof. Luiz Otávio B. Lento 52
  • 53. O ICMP permite que roteadores enviemO ICMP permite que roteadores enviem mensagens de erromensagens de erro ou de controle aos outros roteadores ou aosou de controle aos outros roteadores ou aos host; o ICMPhost; o ICMP possibilita a comunicação entre o software dopossibilita a comunicação entre o software do InternetInternet Protocol em uma máquina, e o software doProtocol em uma máquina, e o software do Internet Protocol em outra. “Douglas Commer”Internet Protocol em outra. “Douglas Commer” 30/09/13Prof. Luiz Otávio B. Lento 53
  • 54. •Entrega da mensagem ICMPEntrega da mensagem ICMP ⇒oo ICMP éICMP é encapsulado pelo IPencapsulado pelo IP, pois, para levar a, pois, para levar a mensagem de um destino ao outro, é necessário quemensagem de um destino ao outro, é necessário que esta passe por diversas redes intermediárias;esta passe por diversas redes intermediárias; ⇒osos datagramas que transportam mensagensdatagramas que transportam mensagens ICMPICMP são tratados e roteados como qualquer outrosão tratados e roteados como qualquer outro datgramadatgrama, podendo ser duplicados, chegarem fora de, podendo ser duplicados, chegarem fora de ordem ou serem extraviados;ordem ou serem extraviados; 30/09/13Prof. Luiz Otávio B. Lento 54
  • 55. Tipos de MensagensTipos de Mensagens 30/09/13Prof. Luiz Otávio B. Lento 55
  • 56. Utilizados comoUtilizados como ferramenta de depuraçãoferramenta de depuração.. Pode ser usada para testar se máquinasPode ser usada para testar se máquinas posicionadas de forma remota está acessível.posicionadas de forma remota está acessível. EEcho Request e Echo Replycho Request e Echo Reply 30/09/13Prof. Luiz Otávio B. Lento 56
  • 57. •todos começam com os mesmos três campos:todos começam com os mesmos três campos: TypeType - tipo de mensagem- tipo de mensagem CodeCode - informações adicionais específicas- informações adicionais específicas do tipodo tipo ChecksumChecksum - verificação de integridade- verificação de integridade •Formato ICMP paraFormato ICMP para echo requestecho request (tipo 8)(tipo 8) ee echoecho replyreply (tipo 0)(tipo 0):: Formato da Mensagem – tipo 0 e 8Formato da Mensagem – tipo 0 e 8 30/09/13Prof. Luiz Otávio B. Lento 57
  • 59. Caso aconteça algum erro que impessa que umCaso aconteça algum erro que impessa que um roteador roteie ou entregue um datagrama, este enviaroteador roteie ou entregue um datagrama, este envia uma mensagem ICMP à origem, avisando que ouma mensagem ICMP à origem, avisando que o destino não foi alcançado, e posteriormente descartadestino não foi alcançado, e posteriormente descarta o datagrama;o datagrama; Destinatários não AlcançáveisDestinatários não Alcançáveis 30/09/13Prof. Luiz Otávio B. Lento 59
  • 60. • Destination unreachable (tipo 3) • Entrega mal sucedida de pacote • quando for necessária a fragmentação de um pacote e esta não for possível (de uma rede Token Ring para uma Ethernet) Formato da mensagem p/ destinatáriosFormato da mensagem p/ destinatários não alcançáveisnão alcançáveis 30/09/13Prof. Luiz Otávio B. Lento 60
  • 61. ⇒Source Quench (Controle de Fluxo eSource Quench (Controle de Fluxo e Congestionamento)Congestionamento) ∗Caso o roteador ou host receba estaCaso o roteador ou host receba esta mensagem, significa que omensagem, significa que o destino estádestino está recebendo datagramas numa quantidaderecebendo datagramas numa quantidade maior que ele tem capacidade demaior que ele tem capacidade de processarprocessar;; 30/09/13Prof. Luiz Otávio B. Lento 61
  • 62. ∗Esta mensagem éEsta mensagem é uma solicitação para que auma solicitação para que a origem reduza o seu nível de transmissãoorigem reduza o seu nível de transmissão;; ∗Para cadaPara cada datagrama descartado, é enviado umadatagrama descartado, é enviado uma menagemmenagem QuenchQuench;; ∗A origem dos datagramas ao receber mensagensA origem dos datagramas ao receber mensagens QuenchQuench,, reduz o seu tráfego até parar de receberreduz o seu tráfego até parar de receber estas mensagens, aumentado gradativamente atéestas mensagens, aumentado gradativamente até receber outra mensagem Quenchreceber outra mensagem Quench;; 30/09/13Prof. Luiz Otávio B. Lento 62
  • 63. Endereçamento IP (IPv4)Endereçamento IP (IPv4) 30/09/13Prof. Luiz Otávio B. Lento 63
  • 64. Cada host de uma interligação em redes TCP/IPCada host de uma interligação em redes TCP/IP possui um endereçopossui um endereço único de 32 bitsúnico de 32 bits que é usado emque é usado em todas as comunicações com aquele host;todas as comunicações com aquele host; São distribuídos pelaSão distribuídos pela InterNIC (Internet NetworkInterNIC (Internet Network Information Center).Information Center). A padronização do endereçamento IP é descrito naA padronização do endereçamento IP é descrito na RFC 1166RFC 1166;; 30/09/13Prof. Luiz Otávio B. Lento 64
  • 65. 30/09/13Prof. Luiz Otávio B. Lento 65  Endereço IP é uma seqüência de 32 bits de 1s e 0s  É fácil diferença entre 192.168.1.8 e 192.168.1.9, mas nem tanto entre 11000000.10101000.00000001.00001000 e 11000000.10101000.00000001.00001001, onde é quase impossível ver que são números consecutivos Endereçamento IPEndereçamento IP
  • 66. •O endereço IP pode serO endereço IP pode ser simbólicosimbólico ((nome@tru.gov.brnome@tru.gov.br)) ouou numériconumérico, representado no, representado no formato deformato de 32 bits32 bits, normalmente expressado no, normalmente expressado no formato decimal separados por pontos.formato decimal separados por pontos. Ex: o endereçoEx: o endereço 128.33.3.4128.33.3.4 é um endereço válido paraé um endereço válido para Internet. A sua forma numérica é utilizada peloInternet. A sua forma numérica é utilizada pelo protocolo IP. O mapeamento entre os dois é feitoprotocolo IP. O mapeamento entre os dois é feito através doatravés do DNS (Domain Name System);DNS (Domain Name System); 30/09/13Prof. Luiz Otávio B. Lento 66
  • 67. Quando uma máquina é conectada a maisQuando uma máquina é conectada a mais de uma rede, diz-se que esta éde uma rede, diz-se que esta é multi-homedmulti-homed,, tendo um endereço IP para cada interface detendo um endereço IP para cada interface de rede que possui;rede que possui; 30/09/13Prof. Luiz Otávio B. Lento 67
  • 68. O endereço IP éO endereço IP é lógico e hierárquicológico e hierárquico 30/09/13Prof. Luiz Otávio B. Lento 68
  • 69. IP addressIP address = <número da rede><número da= <número da rede><número da máquina>máquina> O IPO IP éé dividido em duas partesdividido em duas partes 30/09/13Prof. Luiz Otávio B. Lento 69
  • 70. ⇒Número de redeNúmero de rede – é a parte do endereço– é a parte do endereço IP que é atribuído por uma autoridadeIP que é atribuído por uma autoridade centralizadora válida em toda Internet;centralizadora válida em toda Internet; 30/09/13Prof. Luiz Otávio B. Lento 70
  • 71. ⇒Número da MáquinaNúmero da Máquina – é a parte do endereço IP– é a parte do endereço IP que é atribuído pela autoridade que controla a redeque é atribuído pela autoridade que controla a rede identificada pelo número da rede;identificada pelo número da rede; ⇒IP address –IP address – 128.104.1.45128.104.1.45 (endereço classe B)(endereço classe B) 128.104128.104 – endereço da rede– endereço da rede 1.451.45 – endereço da máquina– endereço da máquina 30/09/13Prof. Luiz Otávio B. Lento 71
  • 72. •Representação bináriaRepresentação binária 10000000 00000010 00000111 0000100110000000 00000010 00000111 00001001;; •Durante o translado de uma mensagem, oDurante o translado de uma mensagem, o endereço IP acompanha esta mensagemendereço IP acompanha esta mensagem (IP origem e destino), até o destino final, onde(IP origem e destino), até o destino final, onde é mapeado para o endereço físico daé mapeado para o endereço físico da máquina.máquina. 30/09/13Prof. Luiz Otávio B. Lento 72
  • 74. Classes A, B and CClasses A, B and C são classes primárias, usadassão classes primárias, usadas para endereçamento de máquinaspara endereçamento de máquinas Classe DClasse D é usada para multicast, a limited form ofé usada para multicast, a limited form of broadcastbroadcast Internet agrupa hosts num grupoInternet agrupa hosts num grupo multicastmulticast os pacotes são liberados para todos osos pacotes são liberados para todos os membros do grupomembros do grupo os roteadores gerenciam a liberação de pacotesos roteadores gerenciam a liberação de pacotes da origem para todos os componentes de umda origem para todos os componentes de um grupo multicastgrupo multicast Classe EClasse E é reservadoé reservado 30/09/13Prof. Luiz Otávio B. Lento 74
  • 75. ⇒Classe AClasse A –os 7 bits restantes do primeiro octeto–os 7 bits restantes do primeiro octeto são utilizados para numerar redes (possibilita 126são utilizados para numerar redes (possibilita 126 redes). Os outros 24 bits para são usados pararedes). Os outros 24 bits para são usados para número de máquinas (16.777.214 máquinas). Denúmero de máquinas (16.777.214 máquinas). De 0.1.0.0 a 126.0.0.0;0.1.0.0 a 126.0.0.0; ⇒Classe BClasse B –os 14 bits restantes para números de–os 14 bits restantes para números de rede (16.382 redes) e os outros 16 para númerosrede (16.382 redes) e os outros 16 para números (65.534 máquinas cada rede). De 128.0.0.0 a(65.534 máquinas cada rede). De 128.0.0.0 a 191.255.0.0;191.255.0.0; 30/09/13Prof. Luiz Otávio B. Lento 75
  • 76. ⇒Classe CClasse C – os 21 bits restantes são utilizados para– os 21 bits restantes são utilizados para endereços de rede (2.097.150) e os outros 8 bits paraendereços de rede (2.097.150) e os outros 8 bits para endereço de máquinas (254 máquinas por rede). Deendereço de máquinas (254 máquinas por rede). De 192.0.1.0192.0.1.0 a 223.255.255.0;a 223.255.255.0; ⇒Classe DClasse D – utilizados para para grupos de– utilizados para para grupos de máquinas em uma área delimitada. De 224.0.0.0 amáquinas em uma área delimitada. De 224.0.0.0 a 239.255.255.255;239.255.255.255; ⇒Classe EClasse E – endereços reservados para usos– endereços reservados para usos futuros. De 240.0.0.0 a 247.255.255.255;futuros. De 240.0.0.0 a 247.255.255.255; 30/09/13Prof. Luiz Otávio B. Lento 76
  • 77. Endereços Classes primáriasEndereços Classes primárias 30/09/13Prof. Luiz Otávio B. Lento 77
  • 78. 30/09/13Prof. Luiz Otávio B. Lento 78 Endereços unicast, broadcast e multicastEndereços unicast, broadcast e multicast
  • 79. ⇒Endereçamento IP especialEndereçamento IP especial - qualquer- qualquer componente do endereço IP com todos os bits comcomponente do endereço IP com todos os bits com valor 0 ou todos os bits com valor 1, são descartadosvalor 0 ou todos os bits com valor 1, são descartados como número de redes e como número de máquina,como número de redes e como número de máquina, pois possuem significado especial.pois possuem significado especial. 30/09/13Prof. Luiz Otávio B. Lento 79
  • 81. 30/09/13Prof. Luiz Otávio B. Lento 81 Atribuindo EndereçosAtribuindo Endereços
  • 82. ⇒Endereço de Loopback – 127.0.0.0Endereço de Loopback – 127.0.0.0 – utilizado no– utilizado no teste do TCP/IP e para a comunicação na máquinateste do TCP/IP e para a comunicação na máquina local. Quando algum programa utiliza o endereçolocal. Quando algum programa utiliza o endereço loopback como destino, o software de protocololoopback como destino, o software de protocolo retorna os dados sem enviar qualquer tráfego para aretorna os dados sem enviar qualquer tráfego para a rede;rede; 30/09/13Prof. Luiz Otávio B. Lento 82
  • 83. Alocação de Endereços para Internets PrivadasAlocação de Endereços para Internets Privadas •Alocação de endereços IP para redes que sãoAlocação de endereços IP para redes que são usadas exclusivamente dentro de uma organização eusadas exclusivamente dentro de uma organização e que não se conectarão a Internetque não se conectarão a Internet;; •Três ranges são observadas:Três ranges são observadas: ⇒1010 - um endereço classe A;- um endereço classe A; ⇒172.16 a 172.31172.16 a 172.31 - 16 endereços classe B;- 16 endereços classe B; ⇒192.168.0 a 192.168.255192.168.0 a 192.168.255 - 256 endereços classe C;- 256 endereços classe C; 30/09/13Prof. Luiz Otávio B. Lento 83
  • 85. Subredes MáscarasSubredes Máscaras Com o crescimento de uma rede, distribuirCom o crescimento de uma rede, distribuir endereços IP torna-se uma missão difícil.endereços IP torna-se uma missão difícil. 30/09/13Prof. Luiz Otávio B. Lento 85
  • 86. Para evitar a solicitação de novos endereçosPara evitar a solicitação de novos endereços IP, introduziu-se o conceito de subnet;IP, introduziu-se o conceito de subnet; ⇒a parte referente aoa parte referente ao número de máquinanúmero de máquina do endereço foi dividido novamente emdo endereço foi dividido novamente em número de rede e número de máquinanúmero de rede e número de máquina;; 30/09/13Prof. Luiz Otávio B. Lento 86
  • 87. ⇒a nova rede é denominada como subneta nova rede é denominada como subnet com o endereço IP interpretado da seguintecom o endereço IP interpretado da seguinte forma:forma: <número da rede> <número da subnet><número da rede> <número da subnet> <número da máquina><número da máquina> 30/09/13Prof. Luiz Otávio B. Lento 87
  • 88. •a combinação doa combinação do <número da subnet> <número da máquina><número da subnet> <número da máquina> é chamada deé chamada de endereço localendereço local;; 30/09/13Prof. Luiz Otávio B. Lento 88
  • 89. 1.1. A subnet é implementada de formaA subnet é implementada de forma transparentetransparente para redes remotaspara redes remotas.. 2.2. Logo, uma máquina em uma rede que possuiLogo, uma máquina em uma rede que possui subnets, é informada da existência da subnet,subnets, é informada da existência da subnet, porém,porém, máquinas em redes remotas não sãomáquinas em redes remotas não são informadas da existência de subnets,informadas da existência de subnets, considerando o endereço local de um endereço IPconsiderando o endereço local de um endereço IP como um número de máquinacomo um número de máquina;; 30/09/13Prof. Luiz Otávio B. Lento 89
  • 90. 1.1. a divisão do endereço local em subnets e dosa divisão do endereço local em subnets e dos endereços de máquinas pode ser feita de formaendereços de máquinas pode ser feita de forma livre para o administrador da redelivre para o administrador da rede;; 2.2. a divisão é feita através dea divisão é feita através de máscarasmáscaras, composta, composta por um número de 32 bits;por um número de 32 bits; ⇒bits zerobits zero numa máscara correspondem aonuma máscara correspondem ao número da máquinanúmero da máquina ee bits 1bits 1 correspondem aocorrespondem ao número da subnetnúmero da subnet;; ⇒as posições na máscara correspondente aoas posições na máscara correspondente ao número da rede terão sempre valores 1, não sendonúmero da rede terão sempre valores 1, não sendo usadas;usadas; 30/09/13Prof. Luiz Otávio B. Lento 90
  • 91. •o tratamento parao tratamento para todos os bits 0 e 1todos os bits 0 e 1 sãosão aplicados para cada uma das três partes doaplicados para cada uma das três partes do endereço da subnet;endereço da subnet; 30/09/13Prof. Luiz Otávio B. Lento 91
  • 92. Ex: suponha um endereço classe B com 16 bits paraEx: suponha um endereço classe B com 16 bits para o endereço local, duas formas podem ser utilizadas:o endereço local, duas formas podem ser utilizadas: 1 -1 - o primeiro byte é o número da subnet e o segundoo primeiro byte é o número da subnet e o segundo o número da máquina. Logo, posso endereçar 254o número da máquina. Logo, posso endereçar 254 máquinas (2máquinas (288 - 2 =254), com 254 possíveis subnets.- 2 =254), com 254 possíveis subnets. A máscara é 255.255.255.0;A máscara é 255.255.255.0; 30/09/13Prof. Luiz Otávio B. Lento 92
  • 93. 2 -2 - Suponha que queira criar subnets, onde os 12Suponha que queira criar subnets, onde os 12 primeiros bits são para subnets e os quatro últimosprimeiros bits são para subnets e os quatro últimos bits são para número de máquinas;bits são para número de máquinas; Posso criar 4094 subnets (2Posso criar 4094 subnets (21212 - 2 = 4094) e endereçar- 2 = 4094) e endereçar 14 máquinas por subnets (214 máquinas por subnets (244 -2 = 14). A máscara é-2 = 14). A máscara é 255.255.255.240 (240 = 2255.255.255.240 (240 = 277 + 2+ 266 + 2+ 255 + 2+ 244 )) 30/09/13Prof. Luiz Otávio B. Lento 93
  • 94. 30/09/13Prof. Luiz Otávio B. Lento 94 Subnet ID com máscara 255.255.255.240Subnet ID com máscara 255.255.255.240
  • 95. 1. Baseado no exemplo mostrado, uma subnet com o endereço 128.102.32.16, conterá máquinas com uma range de 128.102.32.17 até 128.102.32.30; 2. Uma subnet com o endereço 128.102.32.32 conterá máquinas com uma range de 128.102.32.33 até 128.102.32.46 (porque todos os bits 0 e 1 são endereços especiais); 30/09/13Prof. Luiz Otávio B. Lento 95
  • 96. Tipos de SubnetsTipos de Subnets ⇒Static SubnetStatic Subnet – todas as sunets na– todas as sunets na mesma redemesma rede utilizam a mesma máscarautilizam a mesma máscara.. 30/09/13Prof. Luiz Otávio B. Lento 96
  • 97. É de simples implementação e fácilÉ de simples implementação e fácil manutenção, porémmanutenção, porém acarreta desperdícios deacarreta desperdícios de espaço de endereços para pequenas redesespaço de endereços para pequenas redes (ex:uma subrede com 4 máquinas com a(ex:uma subrede com 4 máquinas com a máscara 255.255.255.0 desperdiça 250máscara 255.255.255.0 desperdiça 250 endereços IP).endereços IP). Hosts e roteadores suportam Static Subnet;Hosts e roteadores suportam Static Subnet; 30/09/13Prof. Luiz Otávio B. Lento 97
  • 98. CIDR – Classless Interdomain RoutingCIDR – Classless Interdomain Routing 30/09/1398Prof. Luiz Otávio B. Lento
  • 99. Vantagens da sumarização automatica:  O tamanho da tabela de roteamento é reduzida  Uma única rota é usada para representar multiplas rotas a qual resulta em uma otimização na pesquisa da tabela de roteamento 30/09/1399Prof. Luiz Otávio B. Lento
  • 100. Sumarização de rotas feito pelo CIDR -Rotas são sumarizadas com máscara que são menor que a máscara classful padrão -Exemplo: 172.16.0.0 / 13 é a rota sumarizada das redes classfull de 172.16.0.0 / 16 à 172.23.0.0 / 16 Classless Inter-Domain Routing (CIDR) 30/09/13100Prof. Luiz Otávio B. Lento
  • 101. Passos para calcular uma rota sumarizada -Liste as redes em formato binário -Conte os dígitos binários a partir da esquerda comparando os bits iguais e determine a máscara da sumarização 30/09/13101Prof. Luiz Otávio B. Lento
  • 102. VLSM (Variable Lenght Subnet Mask)VLSM (Variable Lenght Subnet Mask) Subredes de Tamanho VariávelSubredes de Tamanho Variável 30/09/13102Prof. Luiz Otávio B. Lento
  • 103. VLSM consiste na segmentação lógica de subredes. Permite a utilização de mais de uma máscara de sub- rede dentro do mesmo Sistema Autômato.  Maximiza a eficiência dos endereços e freqüentemente é chamada de criação de sub-redes em uma sub-rede.  Flexibilidade no uso dos endereços  Pode ser usado para dividir em sub-redes um endereço já dividido em sub-redes (links WAN) A VLSM consiste em segmentar as subredes criadas, em blocos não necessariamente do mesmo tamanho. Daí o nome “subredes de tamanho variável”. 30/09/13103Prof. Luiz Otávio B. Lento
  • 104. Vantagens: Flexibiliza o esquema engessado de endereçamento IP; Permite sumarização de redes IPs em apenas um endereço, reduzindo as tabelas de roteamento. Desvantagens: Apenas protocolos do tipo classless (RIPv2, OSPF, EIGRP, BGP) suportam esse tipo de endereçamento. Exige uma maior capacidade do administrador da rede. 30/09/13104Prof. Luiz Otávio B. Lento
  • 105.  Suponha a Rede sem segmentação abaixo:  192.168.10.0 /24 (como é sem segmentação, a máscara DEVE ser /24, um endereço de rede classe “C”)  Suponha que esta rede foi segmentada em 2 subredes distintas: 192.168.10.64 /26 e 192.168.10.128 /26 OBS: Aqui foi aplicada a regra 2 x - 2. Se esta regra não fosse aplicada, teriam as subredes 192.168.10.0 /26 e 192.168.10.192 / 26. Existem as 2 subredes acima denotadas, cada uma delas com capacidade para endereçar 62 hosts: 1 - Subrede: 192.168.10.64 2 - Subrede: 192.168.10.128 hosts: 65 à 126 hosts: 129 à 190 Broadcast: 127 Broadcast: 191 30/09/13105Prof. Luiz Otávio B. Lento
  • 106. Suponha que se tenha em mãos este pequeno plano de endereçamento, uma rede com a seguinte topologia para endereçar: Quantas redes esta topologia apresenta? Resposta: 6 redes! 3 redes WAN interconectando os routers A, B e C, e 3 redes locais, para cada uma das localidades. Como existem apenas 2 redes disponíveis, consegue-se suprir as necessidades de endereçamento? Resposta: VLSM! 30/09/13106Prof. Luiz Otávio B. Lento
  • 107.  Pegue as 2 redes que especificadas e divida-as ainda mais, obtendo assim o número de redes necessárias.  Comece pelas 3 redes WAN. Observe que todas são do tipo ponto-a-ponto, ou seja, precisam de apenas 2 endereços de host (um para cada interface de cada um dos 2 routers).  Por exemplo, a rede que interliga o router A com o router B necessita de apenas 2 endereços IP: um para cada router.  Assim sendo, são necessárias 3 subredes com mascara de 30 bits. 30/09/13107Prof. Luiz Otávio B. Lento
  • 108. Use a rede 64 para obter as 3 redes /30 : 192.168.010.64 255.255.255.192 ==> 11111111.1111111.11111111.11000000 Os “zeros” em vermelho mostram até que ponto pode-se avançar na máscara /26 para obtermos as redes /30. Quantas redes /30 foram obtidas? Resposta: 2 4 = 16. Note que aqui não se aplica a regra do “-2″. Esta regra não é aplicada para cálculo de subredes VLSM. Portanto, a subrede 192.168.10.64 /26, quando subdividida conforme acima, fornece 16 subredes /30, cada uma podendo endereçar até 2 hosts (ou interfaces de roteadores, no caso). Estas redes ocorrem de 4 em 4: 192.168.10.64, 68, 72, 76. 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120 e 124, todas com máscara /30. 30/09/13108Prof. Luiz Otávio B. Lento
  • 109.  Para o exercício será reservada as 3 primeiras: 192.168.10.64 /30, 192.168.10.68 /30 e 192.168.10.72 /30.  Notem que ainda existem 13 subredes /30 que não serão usadas. O que poderia ser feito, para evitar este desperdício, é dividir a subrede 192.168.10.64 /26 em 2 subredes /27 (192.168.10.64 /27 e 192.168.10.96 /27), e subdividir a primeira (192.168.10.64 /27) em 8 subredes /30.  Desta forma, o desperdício seria de menor número de endereços e ainda existiria uma subrede /27, com capacidade para endereçar até 30 hosts sobrando, para uso futuro. Mas para efeitos didáticos, o exemplo inicial é mais fácil de ser compreendido. 30/09/13109Prof. Luiz Otávio B. Lento
  • 110. Resolveu-se o problema do endereçamento das redes WAN, mas agora sobrou apenas 1 subrede /26 para endereçamento das 3 localidades, sendo que cada localidade tem a sua necessidade de hosts. A dica aqui é fazer o cálculo usando a localidade com maior necessidade de IPs (20 hosts, no caso). Sendo assim, é necessário pelo menos 3 subredes que me entreguem ao menos 20 hosts. 192.168.010.128 255.255.255.192 ==> 11111111.1111111.11111111.11000000 30/09/13110Prof. Luiz Otávio B. Lento
  • 111.  Note que existem 6 “zeros” para manipulação. O algoritmo que tem que usar é: 2 x - 2 >= 20, sendo que o resultado (x) é o número de “zeros” da direita para a esquerda que será mantido.  Note que a regra do “-2 deve ser observada neste cálculo, já″ que se está falando de hosts (tem que eliminar os endereços de rede e de broadcast).  Portanto, x = 5, já que 25 - 2 = 30, e 30 >= 20. Se x fosse 4, o resultado seria 14, e 14 não é >= 20.  Deve-se reservar 5 zeros para o endereçamento dos hosts: 11111111.1111111.11111111.11100000 30/09/13111Prof. Luiz Otávio B. Lento
  • 112.  Existe um problema. Se for feito desta forma restará apenas 1 zero na máscara para a criação das subredes.  Apenas 1 zero possibilita a criação de apenas 2 subredes (2 1 ).  São necessárias 3 subredes. Como fazer?  Resposta: Cria-se 2 novas subredes, cada uma com capacidade para endereçar até 30 hosts e, posteriormente, divide-se novamente uma destas em 2 subredes: As 2 novas subredes ocorrem de 32 em 32 são: 192.168.10.128 /27 e 192.168.10.160 /27 30/09/13112Prof. Luiz Otávio B. Lento
  • 113. Agora pegue a segunda e divida-a novamente: 192.168.010.160 255.255.255.224 ==> 11111111.1111111.11111111.11100000 O “zero” assinalado em vermelho é o dígito que será altera do na máscara para criar 2 novas subredes com máscara /28. Observem que, conforme se adiciona um dígito à máscara original, criamos 2 novas subredes. Ex: de /26 para /27 criamos 2 subredes. De /27 para /28, criamos 2 subredes, e assim por diante. 30/09/13113Prof. Luiz Otávio B. Lento
  • 114. As 2 novas subredes /28 ocorrem de 16 em 16 (/28 = 255.255.255.240 | 256 - 240 = 16 são: 192.168.10.160 /28 e 192.168.10.176 /28 Resta saber se a capacidade de endereçamento de hosts cada uma destas subredes possui: Existem 4 “zeros” restantes na máscara /28. Assim sendo: 24 - 2 = 14, atendedo aos requisitos. Endereços Conexão WAN A - B: 192.168.10.64 /30 Conexão WAN A - C: 192.168.10.68 /30 Conexão WAN C - B: 192.168.10.72 /30 Localidade ligada ao router C: 192.168.10.192.168.10.128 /27 (até 30 hosts) Localidade ligada ao router A: 192.168.10.192.168.10.160 /28 (até 14hosts) Localidade ligada ao router B: 192.168.10.192.168.10.176 /28 (até 14 hosts) 30/09/13114Prof. Luiz Otávio B. Lento
  • 115. Camada de TransporteCamada de Transporte 30/09/13Prof. Luiz Otávio B. Lento 115
  • 116. Oferece serviços de transporte desde aOferece serviços de transporte desde a origem até o destinoorigem até o destino 30/09/13Prof. Luiz Otávio B. Lento 116
  • 117. A camada de transporte prepara os dados recebidos da camada de aplicação para o transporte sobre a rede e processa os dados da rede que serão usados pela aplicação Dados da aplicação Dados de rede 30/09/13Prof. Luiz Otávio B. Lento 117
  • 118. • Geralmente, a Internet é representada por uma nuvem. • A camada de transporte envia pacotes de dados da origem para o destino receptor através dessa nuvem. 30/09/13Prof. Luiz Otávio B. Lento 118
  • 120. •Sua função principal éSua função principal é permitir a comunicação fim apermitir a comunicação fim a fim entre as aplicaçõesfim entre as aplicações.. •Logo, permite a troca de dados fim a fim entre doisLogo, permite a troca de dados fim a fim entre dois sistemas de uma rede Internet, provendo asistemas de uma rede Internet, provendo a qualidadequalidade de serviçode serviço requerida pela aplicação;requerida pela aplicação; 30/09/13Prof. Luiz Otávio B. Lento 120
  • 121. Habilitando aplicações nos dispositivos para a comunicação A camada de transporte move os dados entre aplicações nos dispositivos na rede 30/09/13Prof. Luiz Otávio B. Lento 121
  • 122. •Para otimizar os recursos de comunicaçãoPara otimizar os recursos de comunicação tanto otanto o TCP como o UDP utilizam oTCP como o UDP utilizam o recurso derecurso de multiplexação sobre o IPmultiplexação sobre o IP;; 30/09/13Prof. Luiz Otávio B. Lento 122
  • 123. •Mensagens a transmitir são aceitasMensagens a transmitir são aceitas simultaneamente de várias aplicaçõessimultaneamente de várias aplicações ee passadas para o IP no sistema de origem,passadas para o IP no sistema de origem, ocorrendo aocorrendo a demultiplexaçãodemultiplexação no sistema deno sistema de destino;destino; 30/09/13Prof. Luiz Otávio B. Lento 123
  • 124. •Toda aToda a comunicação com a aplicação écomunicação com a aplicação é endereçada através da portaendereçada através da porta;; 30/09/13Prof. Luiz Otávio B. Lento 124
  • 126. •A identificação da aplicação em um dadoA identificação da aplicação em um dado sistema é feita atravéssistema é feita através dodo conceito de portaconceito de porta (port) na camada de transporte(port) na camada de transporte,, representada por um número inteirorepresentada por um número inteiro associado à aplicação;associado à aplicação; •A porta é umA porta é um número inteiro de 16 bitsnúmero inteiro de 16 bits,, usado pelo protocolo da camada deusado pelo protocolo da camada de transporte, que identifica a aplicação, ondetransporte, que identifica a aplicação, onde toda a comunicação é endereçada atravéstoda a comunicação é endereçada através dela;dela; 30/09/13Prof. Luiz Otávio B. Lento 126
  • 127. •Aplicações Internet (Telnet, FTP, etc)Aplicações Internet (Telnet, FTP, etc) possuem o mesmo número de portaspossuem o mesmo número de portas (portas(portas padrão)padrão) para todas as implementaçõespara todas as implementações TCP/IP;TCP/IP; •Estas portas são padronizadas e distribuídasEstas portas são padronizadas e distribuídas pelopelo IANA (Internet Assigned NumbersIANA (Internet Assigned Numbers Authority);Authority); •Portas com a range dePortas com a range de 0 a 10230 a 1023 sãosão controladas pelo IANA;controladas pelo IANA; 30/09/13Prof. Luiz Otávio B. Lento 127
  • 128. •Portas dePortas de 1024 a 65.325 não são1024 a 65.325 não são controladas pelo IANAcontroladas pelo IANA, podendo ser, podendo ser utilizadas na maioria dos sistemas porutilizadas na maioria dos sistemas por usuários desenvolvedores de sistemas;usuários desenvolvedores de sistemas; •Para evitar a possibilidade de duas ou maisPara evitar a possibilidade de duas ou mais aplicações acessarem o mesmo número deaplicações acessarem o mesmo número de porta numa mesma máquina,porta numa mesma máquina, estas sãoestas são distribuídas de forma dinâmicadistribuídas de forma dinâmica, podendo, podendo diferenciar de uma solicitação para outra;diferenciar de uma solicitação para outra; 30/09/13Prof. Luiz Otávio B. Lento 128
  • 130. •socket é uma das várias APIs para protocolossocket é uma das várias APIs para protocolos de comunicação;de comunicação; •é um tipo especial de arquivo de manipulaçãoé um tipo especial de arquivo de manipulação de dados que é usado por um processo parade dados que é usado por um processo para solicitar serviços da rede;solicitar serviços da rede; •o endereço de um socket consiste numao endereço de um socket consiste numa tripla:tripla: {protocolo, endereço local, processo local} -{protocolo, endereço local, processo local} - 30/09/13Prof. Luiz Otávio B. Lento 130
  • 131. •A comunicação entre dois processos é feitoA comunicação entre dois processos é feito através de um link;através de um link; •Esta associação é composta por uma 5-tuplaEsta associação é composta por uma 5-tupla que especifica totalmente os dois processosque especifica totalmente os dois processos que compõe a conecção;que compõe a conecção; {protocolo, endereço local, processo local,{protocolo, endereço local, processo local, endereço de destino, processo de destino}endereço de destino, processo de destino} {tcp, 193.44.234.3, 1500, 193.44.234.5, 21}{tcp, 193.44.234.3, 1500, 193.44.234.5, 21} 30/09/13Prof. Luiz Otávio B. Lento 131
  • 132. •Half-asociation ou socket, consiste no pontoHalf-asociation ou socket, consiste no ponto final de comunicação que pode ser chamado efinal de comunicação que pode ser chamado e endereçado na rede;endereçado na rede; {protocolo, endereço local, processo local} ou{protocolo, endereço local, processo local} ou {protocolo, endereço de destino, processo de{protocolo, endereço de destino, processo de destino}destino} 30/09/13Prof. Luiz Otávio B. Lento 132
  • 133. Chamadas BásicasChamadas Básicas do Socketdo Socket 30/09/13Prof. Luiz Otávio B. Lento 133
  • 134. •Inicializar um socketInicializar um socket - socket( );- socket( ); •realiza um bind entre um socket a umarealiza um bind entre um socket a uma portaporta - bind( );- bind( ); •sinalizar que está pronta para receber umasinalizar que está pronta para receber uma conexãoconexão - listen( );- listen( ); •a chamada accept( )a chamada accept( ) é enviada pelo servidoré enviada pelo servidor antes do processo cliente;antes do processo cliente; 30/09/13Prof. Luiz Otávio B. Lento 134
  • 135. Caso exista uma uma solicitação de conexãoCaso exista uma uma solicitação de conexão aguardando na fila para esta conexão socket,aguardando na fila para esta conexão socket, a chamada accept( ) retira a primeiraa chamada accept( ) retira a primeira solicitação da fila e cria outro socket com assolicitação da fila e cria outro socket com as mesmas propriedades do socket anteriormesmas propriedades do socket anterior 30/09/13Prof. Luiz Otávio B. Lento 135
  • 136. Caso não exista uma solicitação de conexão oCaso não exista uma solicitação de conexão o accept bloqueia qualquer invocação deaccept bloqueia qualquer invocação de processo até uma solicitação de conexãoprocesso até uma solicitação de conexão chegarchegar •a chamada conect( ) solicita uma conexão aoa chamada conect( ) solicita uma conexão ao servidorservidor 30/09/13Prof. Luiz Otávio B. Lento 136
  • 137. s o c k e t ( ) b i n d ( ) l i s t e n ( ) s o c k e t ( ) r e a d ( ) c l o s e ( ) r e a d ( )w r i t e ( ) w r i t e ( )d a t a ( s o l i c i t a ç ã o ) d a t a ( r e s p o s t a ) c o n n e c t ( ) c l o s e ( ) s o l i c i t a ç ã o d o p r o c e s s o b l o q u e a d o a t é a c o n e x ã o d o c l i e n t e s e r e s t a b e l e c i d a a c c e p t ( ) c r i a u m n o v o s o c k e t p a r a u m a n o v a s o l i c i t a ç ã o d o c l i e n t e a c c e p t ( ) e s t a b e l e c i m e n t o c o n e x ã o c l i e n t e s e r v e r e n c e r r a a c o n e x ã o e n v i a e r e c e b e d a d o s e n v i a e r e c e b e d a d o s c o n e x ã o c o m o s e r v i d o r i n i c i a l i z a r s o c k e t r e a l i z a r o b i n d e n t r e o s o c k e t e a p o r t a i n i c i a l i z a r s o c k e t a c e i t a a c o n e x ã o i n d i c a q u e e s t á p r o n t o p a r a r e c e b e r a c o n e x ã o 30/09/13Prof. Luiz Otávio B. Lento 137
  • 138. s o c k e t( ) b in d ( ) lis t e n ( ) a c c e p t ( ) s o c k e t( ) c o n n e c t ( ) b in d ( ) r e c v f r o m ( ) s e n d to ( ) s o c k e t( ) s o c k e t( ) b in d ( ) o r ie n ta d o à c o n e x ã o - s e r v e r o r ie n ta d o à c o n e x ã o - c lie n te n ã o o r ie n ta d o à c o n e x ã o - s e r v e r n ã o o r ie n ta d o à c o n e x ã o - c lie n te 30/09/13Prof. Luiz Otávio B. Lento 138
  • 139. •Um par deUm par de socketssockets é usado para identificaré usado para identificar umauma conexão entre dois processosconexão entre dois processos ;; •Com a conexão estabelecida, cada socketCom a conexão estabelecida, cada socket corresponde a umcorresponde a um ponto final dessaponto final dessa conexãoconexão;; 30/09/13Prof. Luiz Otávio B. Lento 139
  • 140. •Vários processos podem usar os serviços doVários processos podem usar os serviços do TCP simultaneamenteTCP simultaneamente,, estabelecendo váriasestabelecendo várias conexões entre esses processos e outrosconexões entre esses processos e outros residentes em estações remotasresidentes em estações remotas.. •Logo, realiza-se aLogo, realiza-se a multiplexaçãomultiplexação em umaem uma conexão IP;conexão IP; 30/09/13Prof. Luiz Otávio B. Lento 140
  • 141. porta1 porta2 porta3 Aplicações Multiplexação TCP/UDP IP porta1 porta2 porta3 Aplicações Multiplexação TCP/UDP IP sub-rededeacesso 30/09/13Prof. Luiz Otávio B. Lento 141
  • 142. Protocolo TCP – Transmission ControlProtocolo TCP – Transmission Control ProtocolProtocol 30/09/13Prof. Luiz Otávio B. Lento 142
  • 143. Necessidades: -Velocidade - Baixo overhead - Não requer acknowledeg - Não reenvia blocos de dados - Entrega de dados como chegam, sem alteração Necessidades: -Confiabilidade - tenho overhead - requer acknowledeg - Reenvia blocos de dados - Entrega de dados na ordem enviada Desenvolvedores de aplicações escolhem o protocolo de transporte baseando-se na natureza de sua aplicação Desenvolvedores de aplicações escolhem o protocolo de transporte baseando-se na natureza de sua aplicação 30/09/13Prof. Luiz Otávio B. Lento 143
  • 144. •Descrito na RFC 793;Descrito na RFC 793; •Dois processos seDois processos se comunicam através decomunicam através de sockets TCPsockets TCP.. •Este modelo possibilita uma conexãoEste modelo possibilita uma conexão full-full- duplex de stream de pacotesduplex de stream de pacotes para outrospara outros processos;processos; 30/09/13Prof. Luiz Otávio B. Lento 144
  • 146. Conceitos do TCPConceitos do TCP •O propósito doO propósito do TCP é prover umTCP é prover um circuitocircuito lógico confiávellógico confiável ou umou um serviço de conexãoserviço de conexão entre par de processosentre par de processos;; 30/09/13Prof. Luiz Otávio B. Lento 146
  • 147. •conexão de circuito virtualconexão de circuito virtual – é estabelecido– é estabelecido umauma conexãoconexão entre par de processos deentre par de processos de aplicaçãoaplicação, antes da transferência de stream, antes da transferência de stream 30/09/13Prof. Luiz Otávio B. Lento 147
  • 148. ⇒os módulos de software deos módulos de software de protocolos dosprotocolos dos dois sistemas (transmissor e receptor)dois sistemas (transmissor e receptor) operacionais comunicam-se através deoperacionais comunicam-se através de mensagens para estabelecer uma conexãomensagens para estabelecer uma conexão,, verificando se averificando se a transferência é autorizada etransferência é autorizada e se ambos os lados estão prontos para ase ambos os lados estão prontos para a transferênciatransferência;; 30/09/13Prof. Luiz Otávio B. Lento 148
  • 149. ⇒a partir deste ponto, éa partir deste ponto, é estabelecida umaestabelecida uma conexãoconexão, possibilitando a transferência de dados;, possibilitando a transferência de dados; ⇒durante a transferência de dados, osdurante a transferência de dados, os protocolos de comunicação das duas máquinasprotocolos de comunicação das duas máquinas continuam a comunicar-se para verificar secontinuam a comunicar-se para verificar se os dados são recebidos corretamenteos dados são recebidos corretamente;; 30/09/13Prof. Luiz Otávio B. Lento 149
  • 150. ⇒caso existamcaso existam falhas de comunicação, estasfalhas de comunicação, estas serão detectadas e participadas aosserão detectadas e participadas aos programas aplicativosprogramas aplicativos;; ⇒os circuitos virtuais descrevem estasos circuitos virtuais descrevem estas conexões,conexões, proporcionando uma confiabilidadeproporcionando uma confiabilidade na transmissão;na transmissão; 30/09/13Prof. Luiz Otávio B. Lento 150
  • 151. Estabelecendo uma ConexãoEstabelecendo uma Conexão • O primeiro handshake solicita sincronização • O segundo e o terceiro confirmam a solicitação de sincronização inicial e também sincronizam os parâmetros de conexão na direção oposta • O segmento de handshake final é uma confirmação usada para informar ao destino que ambos os lados concordam que foi estabelecida uma conexão 30/09/13Prof. Luiz Otávio B. Lento 151
  • 153. SYNSYN (serve para estabelecer uma comunicação).(serve para estabelecer uma comunicação). Lembra a palavra sincronizar;Lembra a palavra sincronizar; •ACKACK (número de confirmação). Utilizado para confirmar(número de confirmação). Utilizado para confirmar o recebimento de segmentos e indicar o próximoo recebimento de segmentos e indicar o próximo desejado;desejado; •FINFIN (finalização). Utilizado para encerrar de forma(finalização). Utilizado para encerrar de forma “elegante” uma comunicação TCP;“elegante” uma comunicação TCP; •RSTRST (reset). Utilizado para romper de forma brusca(reset). Utilizado para romper de forma brusca uma conexão TCP;uma conexão TCP; •URGURG (urgente). Utilizado para identificar dados(urgente). Utilizado para identificar dados urgentes dentro do segmento TCP;urgentes dentro do segmento TCP; •PSHPSH (“push” ou empurrar). Utilizado para forçar a(“push” ou empurrar). Utilizado para forçar a transmissão de um segmento logo que ele chega atransmissão de um segmento logo que ele chega a camada de transporte.camada de transporte. OO TCPTCP possui 6 flags.possui 6 flags. 30/09/13Prof. Luiz Otávio B. Lento 153
  • 154. 1. A estação (A) inicia uma conexão enviando um segmento SYN para a estação (B) indicando que o seu ISN (Initial Sequence Numbers)= X: A —> B SYN, seq de A = X 2. B recebe o segmento, grava que a seqüência de A = X, responde com um ACK de X+1, e indica que seu ISN = Y. O ACK de X+1 significa que a estação B já recebeu todos os bytes até ao byte X e que o próximo byte esperado é o X + 1: B —> A ACK, seq de A = X, SYN seq de B = Y, ACK = X+1 Estabelecendo uma conexão – 3 WayEstabelecendo uma conexão – 3 Way HandshakeHandshake 30/09/13Prof. Luiz Otávio B. Lento 154
  • 155. 3. A recebe o segmento de B, fica sabendo que a seqüência de B = Y, e responde com um ACK de Y+1, que finaliza o processo de estabelecimento da conexão: A —> B ACK, seq de B = Y, ACK = Y+1 Estabelecendo uma conexão – 3 WayEstabelecendo uma conexão – 3 Way HandshakeHandshake 30/09/13Prof. Luiz Otávio B. Lento 155
  • 156. Estabelecendo uma conexão – 3 WayEstabelecendo uma conexão – 3 Way HandshakeHandshake 30/09/13Prof. Luiz Otávio B. Lento 156
  • 157. Encerramento de uma conexãoEncerramento de uma conexão 30/09/13Prof. Luiz Otávio B. Lento 157 Término de uma sessão TCPTérmino de uma sessão TCP
  • 158. •transmissão de dadostransmissão de dados - durante a- durante a transmissão de dados, os aplicativos podemtransmissão de dados, os aplicativos podem estabelecer qualquer tamanho para o streamestabelecer qualquer tamanho para o stream de dadosde dados, podendo variar de, podendo variar de 1 octeto1 octeto emem diante;diante; 30/09/13Prof. Luiz Otávio B. Lento 158
  • 159. ⇒ao receber os octetos, oao receber os octetos, o TCP entregaTCP entrega osos octetos do stream de dadosoctetos do stream de dados na mesmana mesma seqüência em que foram enviadosseqüência em que foram enviados para ospara os aplicativosaplicativos;; ⇒os octetos são liberados assim que tenhamos octetos são liberados assim que tenham sidosido recebidos e avaliadosrecebidos e avaliados;; 30/09/13Prof. Luiz Otávio B. Lento 159
  • 160. ⇒o TCP é livreo TCP é livre parapara dividir em segmentosdividir em segmentos umum stream de dadosstream de dados, suficiente para preencher um, suficiente para preencher um datagramadatagrama;; ⇒osos segmentos sãosegmentos são bufferizadosbufferizados até chegarematé chegarem a um valor (varia de acordo com aa um valor (varia de acordo com a capacidadecapacidade de processamentode processamento da máquina);da máquina); 30/09/13Prof. Luiz Otávio B. Lento 160
  • 161. •confiabilidadeconfiabilidade - garante que um stream de- garante que um stream de dados seja entregue no seu destino semdados seja entregue no seu destino sem duplicação ou perdasduplicação ou perdas.. ⇒Para que isto seja realizado, utiliza-se aPara que isto seja realizado, utiliza-se a técnica chamada detécnica chamada de confirmação positivaconfirmação positiva com retransmissãocom retransmissão;; 30/09/13Prof. Luiz Otávio B. Lento 161
  • 162. ⇒oo TCPTCP atribui um número seqüencial paraatribui um número seqüencial para cada byte transmitidocada byte transmitido, esperando um, esperando um reconhecimento positivoreconhecimento positivo (ACK)(ACK) do TCP quedo TCP que recebeu a mensagem;recebeu a mensagem; 30/09/13Prof. Luiz Otávio B. Lento 162
  • 163. ⇒aa origem mantém umorigem mantém um registroregistro de cadade cada pacote que enviapacote que envia ee espera uma confirmaçãoespera uma confirmação antes de enviar o próximo pacote;antes de enviar o próximo pacote; ⇒é iniciado umé iniciado um temporizadortemporizador pela origempela origem quando envia um pacotequando envia um pacote, e, caso este, e, caso este temporizador setemporizador se encerre antes de se obterencerre antes de se obter um reconhecimento positivo, é realizadaum reconhecimento positivo, é realizada uma nova transmissãouma nova transmissão;; 30/09/13Prof. Luiz Otávio B. Lento 163
  • 164. ⇒caso não receba o ACK, ocaso não receba o ACK, o dado édado é transmitidotransmitido em blocos (segmentos TCP).em blocos (segmentos TCP). Somente o número seqüencial do primeiro byteSomente o número seqüencial do primeiro byte do dado do segmento é enviado para ado dado do segmento é enviado para a máquina de destino;máquina de destino; ⇒o TCP de destino utiliza oo TCP de destino utiliza o número seqüencialnúmero seqüencial parapara rearrumar os segmentos quando elesrearrumar os segmentos quando eles chegam fora de ordem, e elimina segmentoschegam fora de ordem, e elimina segmentos duplicadosduplicados;; 30/09/13Prof. Luiz Otávio B. Lento 164
  • 165. •segmentaçãosegmentação - as mensagens entregues ao- as mensagens entregues ao TCP podem ser segmentadas.TCP podem ser segmentadas. ⇒CadaCada segmento deve compor umsegmento deve compor um datagrama IPdatagrama IP ee possuir umpossuir um número denúmero de identificaçãoidentificação, possibilitando posteriormente,, possibilitando posteriormente, no destino, a recomposição da mensagemno destino, a recomposição da mensagem original;original; 30/09/13Prof. Luiz Otávio B. Lento 165
  • 166. •seqüenciaçãoseqüenciação - garante a recomposição no- garante a recomposição no destino da mensagem, de acordo com odestino da mensagem, de acordo com o número de identificação dos segmentos;número de identificação dos segmentos; 30/09/13Prof. Luiz Otávio B. Lento 166
  • 167. Diferentes segmentos podem possuir diferentes rotas Se existem rotas diferentes até o destino, os segmentos podem chegar fora de ordem 30/09/13Prof. Luiz Otávio B. Lento 167
  • 168. •controle de errocontrole de erro - os- os segmentos sãosegmentos são numerados para que possam sernumerados para que possam ser ordenados eordenados e entregues na seqüência corretaentregues na seqüência correta à aplicaçãoà aplicação de destinode destino.. ⇒Além disso, é incorporado ao cabeçalho oAlém disso, é incorporado ao cabeçalho o checksumchecksum (algoritmo verificador de soma),(algoritmo verificador de soma), usado para verificar a correção de dados queusado para verificar a correção de dados que compõe todo o segmento recebido.compõe todo o segmento recebido. 30/09/13Prof. Luiz Otávio B. Lento 168
  • 169. Os segmentos de dados devem ser “montados” pelo receptor na mesma ordem em que foram recebidos, para que haja uma transferência de dados confiável, orientada à conexão JanelamentoJanelamento 30/09/13Prof. Luiz Otávio B. Lento 169
  • 170. ⇒OO TCPTCP relata falhas de serviçosrelata falhas de serviços originadas em situações de funcionamentooriginadas em situações de funcionamento anormalanormal no ambiente de redeno ambiente de rede, falhas estas, falhas estas que ele não conseguiu recuperar, porque ele não conseguiu recuperar, por exemplo, aexemplo, a queda de enlaces físicos ou aqueda de enlaces físicos ou a pane de uma estaçãopane de uma estação;; 30/09/13Prof. Luiz Otávio B. Lento 170
  • 171. •controle de fluxocontrole de fluxo - regula o fluxo de dados a- regula o fluxo de dados a ser transferido, de acordo com aser transferido, de acordo com a velocidadevelocidade existente entre os dois sistemasexistente entre os dois sistemas.. ⇒O TCP envia vários segmentos ao destino,O TCP envia vários segmentos ao destino, mesmo antes de receber ummesmo antes de receber um reconhecimento positivo ou negativo,reconhecimento positivo ou negativo, adaptando a diferença de velocidadeadaptando a diferença de velocidade existente entre os dois sistemasexistente entre os dois sistemas 30/09/13Prof. Luiz Otávio B. Lento 171
  • 172. controle de fluxocontrole de fluxo 30/09/13Prof. Luiz Otávio B. Lento 172
  • 173. •precedência e segurançaprecedência e segurança - níveis de- níveis de precedência e segurança podem serprecedência e segurança podem ser estabelecidos pela aplicaçãoestabelecidos pela aplicação parapara tratamento dos dados;tratamento dos dados; 30/09/13Prof. Luiz Otávio B. Lento 173
  • 174. Princípio de Janela DeslizantePrincípio de Janela Deslizante •Utilizado para umUtilizado para um melhor aproveitamento damelhor aproveitamento da largura de bandalargura de banda;; •o protocolo simples deo protocolo simples de transporte consiste notransporte consiste no recebimento de um ACK para cada pacoterecebimento de um ACK para cada pacote transmitidotransmitido. Ocasiona uma. Ocasiona uma má utilizaçãomá utilização dada banda passante;banda passante; 30/09/13Prof. Luiz Otávio B. Lento 174
  • 175. Se segmentos são perdidos durante um congestionamento, o receptorSe segmentos são perdidos durante um congestionamento, o receptor irá reconhecer o último segmento e replica com um número de janelairá reconhecer o último segmento e replica com um número de janela reduzidoreduzido 30/09/13Prof. Luiz Otávio B. Lento 175
  • 176. •para cada pacote transmitido é iniciado opara cada pacote transmitido é iniciado o timetime outout, e existe um ACK para cada um deles, e existe um ACK para cada um deles;; •conforme os ACK vão chegando, aconforme os ACK vão chegando, a janelajanela vaivai deslizando para que o próximo pacote possadeslizando para que o próximo pacote possa ser enviadoser enviado.. •A janela continuará deslizando conforme foremA janela continuará deslizando conforme forem recebidas as confirmaçõesrecebidas as confirmações;; 30/09/13Prof. Luiz Otávio B. Lento 176
  • 177. 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 janelainicial janeladesliza 30/09/13Prof. Luiz Otávio B. Lento 177
  • 178. suponha que o pacotesuponha que o pacote 3 tenha se3 tenha se perdidoperdido,, isto é, a origem não recebeu oisto é, a origem não recebeu o ACK 4ACK 4, logo, a, logo, a janela permanece na posição 2;janela permanece na posição 2; quando ocorre o timequando ocorre o time out da origem, esteout da origem, este será retransmitidoserá retransmitido;; 30/09/13Prof. Luiz Otávio B. Lento 178
  • 179. 30/09/13Prof. Luiz Otávio B. Lento 179
  • 180. Seqüência de TransmissãoSeqüência de Transmissão 30/09/13Prof. Luiz Otávio B. Lento 180
  • 181. FormatodosSegmentos portadeorigem portadedestino númerodeseqüência númerodeACK checksum urgentpointer 160 31 opções padding Dados ... HLEN reservado bits de código janela 30/09/13Prof. Luiz Otávio B. Lento 181
  • 182. Formato do SegmentoFormato do Segmento •porta de origem e de destinoporta de origem e de destino - contêm os- contêm os números das portas TCP associadas aosnúmeros das portas TCP associadas aos programas de aplicação em cada ponto daprogramas de aplicação em cada ponto da conexão;conexão; •NR de seqüênciaNR de seqüência - identifica o número de- identifica o número de seqüência do primeiro octeto deste segmentoseqüência do primeiro octeto deste segmento dentro do stream;dentro do stream; 30/09/13Prof. Luiz Otávio B. Lento 182
  • 183. •NR de ACK (acknowledgement)NR de ACK (acknowledgement) - identifica o- identifica o número do próximo octeto que o destino esperanúmero do próximo octeto que o destino espera receber;receber; •HLENHLEN - contém um número inteiro que- contém um número inteiro que especifica o tamanho do cabeçalho doespecifica o tamanho do cabeçalho do segmento medido em múltiplos de 32 bitssegmento medido em múltiplos de 32 bits (necessário porquê o campo opções possui(necessário porquê o campo opções possui tamanho variável);tamanho variável); 30/09/13Prof. Luiz Otávio B. Lento 183
  • 184. •bits de códigobits de código - determina o propósito e o- determina o propósito e o conteúdo do segmento (os bits mostram comoconteúdo do segmento (os bits mostram como interpretar os outros campos no cabeçalho)interpretar os outros campos no cabeçalho) •Ex: 1Ex: 1°° bit ativo - campo urgente pointer válidobit ativo - campo urgente pointer válido 22°° bit ativo - número do ACK válido até o bit 6bit ativo - número do ACK válido até o bit 6 30/09/13Prof. Luiz Otávio B. Lento 184
  • 185. •janelajanela - o TCP informa quantos dados ele está- o TCP informa quantos dados ele está pronto para aceitar a cada momento que enviapronto para aceitar a cada momento que envia um segmento, através da especificação doum segmento, através da especificação do tamanho do buffer;tamanho do buffer; •checksumchecksum - armazena um valor- armazena um valor correspondente para verificação de erro,correspondente para verificação de erro, levando em consideração o tamanho dolevando em consideração o tamanho do cabeçalho, dados a serem transmitidos,cabeçalho, dados a serem transmitidos, endereço IP de origem e destino;endereço IP de origem e destino; 30/09/13Prof. Luiz Otávio B. Lento 185
  • 186. •urgent pointerurgent pointer - utilizado para identificar um- utilizado para identificar um bloco de dados urgente dentro de um segmentobloco de dados urgente dentro de um segmento TCP;TCP; •opçãoopção - negocia com a outra extremidade da- negocia com a outra extremidade da conexão o tamanho máximo de um segmentoconexão o tamanho máximo de um segmento que o outro TCP está disposto a receber;que o outro TCP está disposto a receber; •paddingpadding - garante que o tamanho do- garante que o tamanho do cabeçalho do segmento TCP seja múltiplo decabeçalho do segmento TCP seja múltiplo de 32 bits;32 bits; 30/09/13Prof. Luiz Otávio B. Lento 186
  • 187. Protocolo UDP (User Datagrama Protocol)Protocolo UDP (User Datagrama Protocol) 30/09/13Prof. Luiz Otávio B. Lento 187
  • 188. O UDP é um protocolo padrão descrito na RFCO UDP é um protocolo padrão descrito na RFC 768;768; •O UDPO UDP é basicamente umaé basicamente uma interface deinterface de aplicação (API) para o IPaplicação (API) para o IP.. •Ele, é um protocoloEle, é um protocolo não orientado à conexãonão orientado à conexão,, não adicionanão adiciona confiabilidade, controle de fluxoconfiabilidade, controle de fluxo ou recuperação de errosou recuperação de erros para o IP;para o IP; 30/09/13Prof. Luiz Otávio B. Lento 188
  • 189. UDP não estabelece uma sessão antes do envio de dados UDP é um protocolo de baixo overhead 30/09/13Prof. Luiz Otávio B. Lento 189
  • 190. •OO UDP serve simplesmente como umUDP serve simplesmente como um multiplexador/demultiplexadormultiplexador/demultiplexador para o envio epara o envio e recebimento de datagramas IPrecebimento de datagramas IP, utilizando, utilizando portas para direcionar os datagramas;portas para direcionar os datagramas; 30/09/13Prof. Luiz Otávio B. Lento 190
  • 191. •O UDPO UDP é um mecanismoé um mecanismo primário para envioprimário para envio do datagramado datagrama de uma aplicação para a outra.de uma aplicação para a outra. •Ele pode ser considerado como extremamenteEle pode ser considerado como extremamente simples e, conseqüentemente tem um baixosimples e, conseqüentemente tem um baixo overheadoverhead, porém, existe a necessidade da, porém, existe a necessidade da aplicação ter a responsabilidade de garantir aaplicação ter a responsabilidade de garantir a recuperação de errosrecuperação de erros;; 30/09/13Prof. Luiz Otávio B. Lento 191
  • 192. •Não oferece meios que permitam garantir umaNão oferece meios que permitam garantir uma transferência confiável de dadostransferência confiável de dados, uma vez, uma vez que não implementa mecanismos deque não implementa mecanismos de reconhecimento, de seqüenciação nem dereconhecimento, de seqüenciação nem de controle de fluxocontrole de fluxo das mensagens de dadosdas mensagens de dados trocadas entre os dois sistemas;trocadas entre os dois sistemas; 30/09/13Prof. Luiz Otávio B. Lento 192
  • 193. •Logo, osLogo, os datagramas podem serdatagramas podem ser perdidos,perdidos, duplicados ou entregues fora de ordemduplicados ou entregues fora de ordem aoao sistema de destinosistema de destino.. •AA aplicação assume toda aaplicação assume toda a responsabilidaderesponsabilidade pelo controle de erros dentropelo controle de erros dentro do nível de qualidade do serviço que a mesmado nível de qualidade do serviço que a mesma requer;requer; 30/09/13Prof. Luiz Otávio B. Lento 193
  • 194. Diferentes segmentosDiferentes segmentos podem possuir diferentespodem possuir diferentes rotasrotas Se existem rotas diferentes até o destino, os segmentos podem chegar fora de ordem 30/09/13Prof. Luiz Otávio B. Lento 194
  • 195. •Descrição do protocoloDescrição do protocolo:: ⇒porta de origem e destinoporta de origem e destino - identificam os- identificam os números das portas de serviço UDP utilizadasnúmeros das portas de serviço UDP utilizadas em uma comunicação;em uma comunicação; ⇒tamanho da mensagemtamanho da mensagem - contém o número- contém o número de octetos do datagrama UDP, incluindo ode octetos do datagrama UDP, incluindo o cabeçalho e os dados do usuário;cabeçalho e os dados do usuário; 30/09/13Prof. Luiz Otávio B. Lento 195
  • 196. ⇒checksumchecksum - armazena um valor- armazena um valor correspondente para verificação de erro,correspondente para verificação de erro, levando em consideração o tamanho dolevando em consideração o tamanho do cabeçalho, dados a serem transmitidos,cabeçalho, dados a serem transmitidos, endereço IP de origem e destino;endereço IP de origem e destino; 30/09/13Prof. Luiz Otávio B. Lento 196
  • 197. FormatodoDatagramaUDP portadeorigem portadedestino tamanhodamensagem checksum 160 31 Dados ... 30/09/13Prof. Luiz Otávio B. Lento 197
  • 198. •AA API UDP provê os seguintes serviçosAPI UDP provê os seguintes serviços:: ⇒criação de novas portascriação de novas portas receptoras;receptoras; ⇒realiza operação derealiza operação de envio de dadosenvio de dados,, passando como parâmetros as portas e ospassando como parâmetros as portas e os endereços IP de destino e origem;endereços IP de destino e origem; ⇒recebe dadosrecebe dados, indicando a porta e o, indicando a porta e o endereço de origem;endereço de origem; 30/09/13Prof. Luiz Otávio B. Lento 198

Notas do Editor

  1. Florianópolis - CTAI Fundamentos em Tecnologia – Arquitetuta TCP/IP O modelo OSI oferece “separação” das camadas inferiores e superiores com interfaces padronizadas. Isso permite que os dispositivos de rede intermediários &quot;comutem&quot; o tráfego sem ter que se preocupar com os detalhes da LAN, o que leva ao conceito de internetworking , ou redes compostas de redes