Você está na página 1de 22

1.

Tipos de redes (miniatura, pequenas, medias, man, wan)


Definição de protocol
Circuito Switching, Packet switching
Time division Multiplexing
Frequency division multiplexing
2.
Meios físicos de transmissão (cabo coaxial, fibra óptica …)
Tipos de sinais (tensão eléctrica …)
Sinais em cabos coaxiais (transmissão em banda de base…..)
Modos de comunicação (simplex Half simplex ….)
Atraso da propagação dos sinais (velocidade de transmissão nos meios)
Elementos de um sistema de comunicação
3.
Transmissão de dados biarios (AM, FM …)
Formula de Nyquist e Shannom
Baud rate, bit rate
Modos de transmissão (bit rate …)
Transmissão assíncrona e síncrona
4.
Modelos de referencia OSI, Funcionamento OSI, Vantagens OSI
Critérios para a criação de camadas OSI
5.
Camada Aplicação, Apresentação, secção, transporte, rede, ligação lógica, física do OSI
6.
TCP, funcionamentos suportados
Protocolos de interface com os meios físicos
Protocolo de rede TCP
7.
Protocolo IP do TCP
Camada IP do TCP
Descrição do pacote IP
8.
Transmissão datagrams usando o IP
Serviços de comunicação Internet (p2p, ftp, http …)
Funções do protocolo de aplicação, protocolo camada Aplicação TCP
Arquitectura Cliente servidor, p2p, híbrida
9.
Arquitectura Aplicação http
Aqr. Aplicação FTP
Funcionamento ftp, ligação controlo, ligação de dados FTP
Trivial File Transfer protocol (TFTP)
10.
Arquitectura aplicação correio electrónico SMTP
Arq. Aplicação TELNET, função TelNet, modo funcionamento
Terminal virtual de Rede (NVT)
DNS
11.
Protocolo de transorte TCP/IP
UDP e TCP Resumo geral
12.
Estrutura de segmentos TCP
13.
TCP gestão das ligações
TCP confirmação
14.
TCP controlo de fluxo
TCP multiplexação
TCP sincronização
TCP rendezvuz (ligações passivas e activas)
15.
TCP push flag (serviço expresso)
Endereços IP
Mascaras
Inter working control message protocol (ICMP)
16
IPV6
Cabeçalhos opcionais
Unicast multicast
Objectivo IPV6
17.
Endereços IPV6
Qos IPV6
Encaminhamento estático e dinâmico , vantagens e desvantagens

18-19-20. EXTRAS
Address Resolution Protocol (ARP)
Criação de endereços da classe C usando mascara de rede
NAT, Inconvenientes do NAT, benefícios do NAT
Mecanismos de Transição para o IPv6
Protocolos e respectivas camadas
Tipos de endereços IPv6
Integrated services
Differentiated sevices
Resumo IRC

Tipos de redes
Redes miniatura:
Comprimento até 5 cm (mesmo circuito impresso)
Redes fortemente acopladas
Transmissão em paralelo

Redes Pequenas:
Comprimento até 50 cm (mesmo equipamento)
Redes fortemente acopladas
Transmissão em paralelo

Redes Médias (locais) - LAN's


Comprimento até 10 Km (em área localizada)
Redes fracamente acopladas
Transmissão em série

Redes metropolitanas -MANs


Comprimento até100 Km
Redes fracamente acopladas
Transmissão em série
Redes de grandes áreas -WANs
Comprimento com mais de 100 Km (vasta área geográfica)
Redes fracamente acopladas
Transmissão em série

Protocolo
Define o formão e a ordem das mensagens trocadas entre duas ou mais
entidades, e as acções e os eventos tomados na transmissão ou
recepção de mensagens.

Circuit switching – Consiste em criar uma ligação dedicada entre os dois nós antes de eles
poderem comunicar. Esta ligação vai ter apenas a duração da comunicação, quando a
comunicação terminar também termina a ligação. Este método pode ser muito ineficiente
porque é desperdiçada uma grande capacidade da ligação, portanto não é muito utilizada.

Packet switching – Usado nas redes de computadores e telecomunicações, packet switching


é o método de comunicação dominante, no qual os pacotes são roteados individualmente entre
nós que podem ser partilhados por vários clientes, este contrasta com o circuit switching. Este
método é usado para optimizar o uso da largura de banda disponível na rede, para minimizar a
latência da transmissão (tempo que os dados demoram a passar através da rede), e para
aumenta a robustez da comunicação. Basicamente o ficheiro é dividido em pedaços, esses
pedaços transportam informação sobre a origem, destino e sequência original do ficheiro.

Time-division multiplexing (TDM) - o envio de múltiplos sinais digitais (ou analógicos que
transportem dados digitais) pode ser efectuado numa única transmissão criando parcelas de
intervalos de tempo para cada sinal. Estes intervalos podem ser feitos entre bits ou blocos de
bytes. Isto permite sinais de discurso digital codificado ser transmitido e comutados dentro de
uma rede que use circuit-switche.

Frequency-division multiplexing (FDM) – é uma forma de sinal onde vários sinais são
modelados com diferentes frequências de onda e adicionados de modo a criarem um sinal
composto. Historicamente as redes de telefones usavam FDM para transportar vários sinais de
voz no mesmo circuito físico. Para tal os sinais eram separados por frequência, entre uma certa
frequência o sinal pertencia a um certo grupo, deste modo era possível ter vários canais de
voz, através de um único circuito. Deste modo usando FDM é possível partilhar o mesmo canal
físico com vários utilizadores. Telefones actuais usam transmissão digital na qual TDM é
usada.

1
Meios físicos de transmissão
Par de condutores
–crosstalk(por acoplamento capacitivo)
–ruído (fontes de radiação electromagnética)
Par entrançado
–relativa imunidade ao ruído
–menor crosstalk
–pode usar-se blindagem
Cabo coaxial
–reduz efeito pelicular
–reduz ruído
Fibra óptica
–elevada largura de banda
–Imunidade ao ruído electromagnético
Transmissão radio(electromagnética)
–elevada largura de banda
–ligações a longa distância
–ligações via-satélite(geo-estacionários, LEO)

Tipos de sinais
•Tensão eléctrica não diferencial
–Pequenas velocidades
–Baixas velocidades de transmissão
•Tensão eléctrica diferencial
–Distâncias até1km
–Velocidades >100Mbps
•Corrente eléctrica
–Distâncias até1Km
–Baixa velocidade de transmissão

Sinais em cabos Coaxiais


•Transmissão em banda base
– Divisão por multiplexagem no tempo
•Transmissão síncrona
•Transmissão assíncrona
•Transmissão em banda larga
– Divisão por multiplexagemna frequência

Modos de comunicação
•Simplex – consiste num canal com uma só direcção
•Half-duplex – suporta informação nas duas direcções mas uma de cada vez
•Full-duplex – suporta informação nas duas direcções ao mesmo tempo

Atraso de propagação dos sinais


•Velocidade de propagação
No espaço (vácuo, ar) 3*10^8 m/s
Nos condutores metálicos2*10^8 m/s

Elementos de um sistema de comunicação


Equipamento terminal
Terminais inteligentes
Estações de trabalho
Computadores
Sensores
•Redes de comunicação
Ethernet
Wi-Fi
ADSL
Satélite
Fibra óptica

2
Transmissão de dados binário
•Conversão dos bits em sinais eléctricos, electromagnéticos ou ópticos
•Os sinais transmitidos podem ser:
atenuados
distorcidos
•pelo canal de transmissão, dependendo do
tipo de canal
ritmo de transmissão
distância a percorrer
•Modulação
AM- Modelação em amplitude – susceptível as condições atmosféricas, som de baixa
fidelidade, usado para conversações de rádio e noticias.
FM- Modelação da frequência – transição de musica, tv
PM- Modelação da phase – necessita de hardware de recepção mais complexo, é uma
fusão da AM com a FM, cada variação da fase da onde permite codificar vários bits.
Mista

Formula de Nyquist
C=2B log2 M bps
C – velocidade máxima de transmissão
B – largura de banda do canal (Hz)
M – numero de níveis de sinalização

Baud Rate – corresponde ao número de símbolos por segundo.


Bit Rate – corresponde à frequência com que os bits passam por um certo ponto. Bit rate não
mede a distancia nem o tempo mas sim a quantidade/tempo. Numero de bit’s por segundo.

1,000 bit/s = 1 kbit/s (one kilobit or one thousand bits per second)
1,000,000 bit/s = 1 Mbit/s (one megabit or one million bits per second)
1,000,000,000 bit/s = 1 Gbit/s (one gigabit or one billion bits per second)

Formula de Shannon
C=B log2 (1+S/N) bps
S= Potencia do sinal em watt
N= potencia do ruído em watt

Modos de transmissão
O receptor tem de conhecer, ou poder determinar
–O ritmo de transmissão (duração de um bit)
Bit rate –nºde bits por segundo
Baudrate –nºde símbolos por segundo
–O início e o fim de cada elemento (caracteres)
–O início e o fim de cada mensagem completa (conjunto de caracteres, quadro)

Transmissão assíncrona
– Usada quando os dados a transmitir são gerados em intervalos irregulares. Cada
carácter é encapsulado num bit de início e um ou mais bits de fim. Controlo de erros é feito
através do bit de paridade.

Transmissão síncrona
– Usada em comunicações envolvendo grandes blocos de dados. Os caracteres são
empacotados em blocos, sem bits adicionais entre eles.

3
Modelos de referencia OSI

Serviços – regras de interacção vertical


Protocolos – regras de interacção horizontal

– Descreve a estrutura das comunicações


– Identifica as normas requeridas
de modo a que vários componentes e elementos de dois quaisquer
sistemas se correspondam, para que seja possível a sua ligação.
Essencialmente um modelo de referência para actividades de
normalização, e não um modelo de referência de
implementações
• Tem por base uma abordagem estratificada do problema de comunicação entre
sistemas
• As funções relativas á comunicação de dois ou mais sistemas são agrupadas,
segundo critérios de afinidade, em classes ou camadas
•A camada n agrupará as funções afins que têm como denominador comum
contribuírem para uma actividade bem definida.
• Essas funções interessarão a outras camadas, dentro do mesmo sistema e,
eventualmente, também a outros sistemas.

Funcionamento:
•Num dado sistema cada camada interactua apenas com as camadas que lhe são
contíguas
•Cada camada de um determinado sistema dialoga apenas com a camada
correspondente do sistema interlocutor.

Vantagens:
•A camada n pode ser desenvolvida, corrigida, modificada, independentemente das
camadas contíguas, desde que a estrutura de troca de informações entre elas não seja
alterada.
•Se as camadas n de dois sistemas distintos forem desenvolvidas ou modificadas
independentemente, não se levantam problemas se a estrutura do diálogo entre elas estiver
definida e for obedecida.

Critérios para a criação de camadas:


1 -Criar camadas separadas para lidar com funções
manifestamente diferentes.
2 -Agrupar funções similares na mesma camada.
3 -Limitar o número de camadas a um mínimo, de modo a que a descrição e
a integração do sistema não seja demasiado pesada ou complicada.
4 -Criara uma fronteira (interface) num ponto em que a descrição dos
serviços seja simples, e o número de iterações através do interface
seja mínimo.
5 -Criar uma fronteira num ponto onde a experiência anterior tenha demonstrado ser
útil.
6-Criar camadas de funções bem definidas, de modo a que a camada possa ser
redesenhada totalmente e os seus protocolos mudados consideravelmente (de modo
a, por exemplo, tirar partido da evolução tecnológica) sem se alterarem os serviços
fornecidos e requeridos às camadas adjacentes.

4
7 -Criar uma camada quando há necessidade de um novo nível de
abstracção no tratamento de dados.
8 -Possibilitar alteração nas funções ou protocolos dentro de uma camada, sem
alterar as outras camadas.
9 -Para cada camada, criar apenas interfaces com as camadas adjacentes.

Camada de Aplicação:
- Interface do utilizador com os serviços de informação distribuídos (ex: transferência
de ficheiros, correio electrónico, …)
• Identificação dos intervenientes na comunicação
• Determinação da disponibilidade dos recursos da comunicação
• Acordo sobre os mecanismos de segurança a utilizar (autorização, autenticação,
encriptação, cifragem,…)
• Acordo sobre a responsabilidade da recuperação de erros
• Selecção da disciplina de diálogo (incluindo os procedimentos para o estabelecimento
e o corte da associação).

Camada de Apresentação
• Negociação e selecção da sintaxe a utilizar durante as transferências de informação
• Codificação e descodificação de dados
• Compressão e descompressão de dados

Camada de secão
• Gestão das interacções (simplex, half-duplexe duplex)
• Estabelecimento dos pontos de sincronismo (para reinício do diálogo após eventuais
falhas)
•Geração de notificações em situações de erro não recuperáveis

Camada de Transporte
• Interface entre as camadas superiores e as camadas dependentes da rede
• Transferência fiável de mensagens entre dois quaisquer pontos da rede
• Adaptação às características das redes subjacentes

Camada de Rede
• Estabelecimento de ligações entre entidades de nível de transporte (terminais da
rede)
• Endereçamento
• Encaminhamento
• Controlo de fluxo e controlo de congestão

Camada de Ligação Lógica


• Transferência fiável entre nós consecutivos da rede
– Detecção de erros
– Correcção de erros
– Controlo de fluxo

Camada Física
• Interface física e eléctrico entre o equipamento do utilizador e o equipamento de
acesso à rede
• Adaptação ao meio físico de comunicação

5
Arquitectura TCP IP OSI vs TCP IP

TCP IP
•TCP/IP é a abreviatura de Transmission Control Protocol/ Internet Protocol, dois dos
protocolos da arquitectura patrocinada pelo Departamento de Defesa dos EUS (DoD).
• Conjunto de protocolos que permitem a interligação de diferentes equipamentos
computacionais.
• Funciona sobre um grande número de redes heterogéneas.

Funcionalidades suportadas
• Acesso e manipulação a ficheiros remotos
• Acesso remoto a recursos
• Execução remota de tarefas
• Acesso remoto a sistemas
• Correio electrónico
• Outros serviços telemáticas

Protocolos de interface com os do meio físico


• Os protocolos de interface com o meio físico na arquitectura TCP/IP são muitos e de
natureza muito diversa, dependendo das características do meio físico utilizado, do tipo e da
topologia de rede.
• Têm responsabilidade pela transmissão da informação no meio físico.
• Devem isolar a tecnologia subjacente à utilização do meio físico dos níveis superiores

Protocolo de Rede
• Isolar dos protocolos superiores as particularidades dos Protocolos do Meio Físico
• Fornecer serviços de comunicação independente da rede física subjacente
• Dispor de um mecanismo de encaminhamento que permita levar os pacotes ao seu
destino
• Adaptar o tamanho dos pacotes ao tamanho máximo suportado pela rede subjacente.

6
Protocolo IP
• É o principal protocolo da Camada de Rede
• Funciona em modo não baseado em ligações (connectionless)
• Datagrams como unidades independentes
• Não há garantia de entrega e de ordenamento dos datagrams IP

Camada IP
•Fragmentação/desfragmentação
•Endereçamento/encaminhamento

Pacote IP

•VER (4 bits)
– Version: versão do protocolo (versão 4)
•IHL (4 bits)
– Internet HeaderLength – tamanho do cabeçalho em unidades de 4 bytes. Por defeito
tem o valor de 5 (20 bytes), podendo ir até15 (60 bytes)
– Este parâmetro é necessário porque o cabeçalho contém um campo de comprimento
variável (options).
• ToS(8bits)
– TypeofService – qualidade de serviço desejada
•TL (16 bits)
– Total Length – comprimento total do datagram(em bytes), incluindo o cabeçalho e os
dados
•ID (16 bits)
– Identifica os datagrams que pertencem ao mesmo bloco
• Flag(3 bits)
–“Don’t fragment”–proíbe a fragmentação
–“More fragments”–indica se existe mais fragmentos posteriores
•FO (3 bits)
– Indica a posição de um fragmento no datagram original, relativamente ao início do
campo de dados, em unidades de 8 bytes
•TTL (8 bits)
– TimeTo Live–sempre que passa por um router é decrementado o tempo de espera
(ou uma unidade). Quando este valor chega a zero o datagram é desprezado.
– Evita que os datagrams fiquem eternamente a circular pela rede.
•PROT (8 bits)
– Indica o protocolo da camada superior
•HeaderChecksum(16 bits)
–Permite a detecção de erros no cabeçalho. Cada vez que o cabeçalho passa por um
router é necessário recalcular o check sum(por causa do TTL)
•SOURCE
– Endereço de que originou o pacote
•DEST
– Endereço destino do pacote
•OPT
– Segurança, recordrouting,

7
Transmissão de datagrams
• Início da transmissão
– Um protocolo de nível superior entrega dados ao IP para serem transmitidos
• Criação de datagrams
– O IP empacota os dados e prepara-os para a camada inferior
• Determinação do local onde se encontra o destinatário
– O IP analisa o endereço IP do destinatário.
– Se se tratar de uma máquina da mesma rede é seleccionado o endereço físico
– Se se tratar de uma máquina noutra rede é seleccionado o endereço físico do
sistema que garante a interligação da rede com o “mundo exterior”– router
• Envio do datagram para a camada inferior

Serviços de comunicação na Internet


• Transferência de ficheiros (FTP, TFTP e NFS)
• Serviços de terminal virtual (Telnet)
• Servidor de nomes (DNS)
• Correio electrónico na Internet (SMTP)
• Serviços WWW (HTTP)
• P2P File Sharing
• Internet Phone
• Instant Messaging
• Outros serviços (SNMP, News, IRC, VoIP, VCoIP, etc)

Funções dos protocolos de aplicação


• As funcionalidades mais importantes da arquitectura TCP/IP estão localizadas no
nível de aplicação.
• É no nível de aplicação que estão localizados os protocolos que fornecem serviços
directamente aos utilizadores.
• A arquitectura TCP/IP não possui camadas de Sessão e de Apresentação. As
funcionalidades destas camadas estão agregadas aos protocolos de aplicação.
• Muitos dos protocolos de aplicação da arquitectura TCP/IP possuem também
implementações para outras arquitecturas

Protocolos da camada de aplicação


• Tipo de mensagens trocadas
– Request
– Response
• Sintaxe das várias mensagens
• Conteúdo de cada campo da mensagem
• Regras

Arquitectura Cliente - Servidor


• Servidor always-on
• Endereço IP do servidor fixo e bem conhecido
• Os clientes não comunicam directamente
• Server Farm
• Ex: aplicações Web, File Transfer, Remote Login, e-mail

Arquitrctura P2P
• Não existe um servidor(permanente)
• Os peers comunicam directamente
• Escalável
• Controlo descentralizado - difícil de gerir
• Ex: Gnutella (file-sharing),

Arquitectura Híbrida
• Servidor, peer
• Ex: –Napster
–Instant messaging

8
Arquitectura de Aplicação HTTP
• HyperTextTransfer Protocol –RFCs1945 (v1.0) e 2616(v1.1)
• Arquitectura cliente-servidor
• Programa servidor e programa cliente que trocam mensagens HTTP (para a troca de
objectos Web)
• Cliente HTTP –Browser (IE, Netscape)
• Servidor HTTP –ex: Apache
• Página Web composta por vários objectos(PáginaHTML e outros objectos
referenciados)

Arquitectura de Aplicação FTP


• Na arquitectura TCP/IP existem três protocolos de transferência de ficheiros
– File TransferProtocol(FTP) –protocolo com elevado número de funcionalidades para
a transferência e a manipulação de ficheiros remotos
– Trivial File Transfer Protocol (TFTP) – protocolo com funcionalidades reduzidas, de
utilização simples
–Simple File Transfer Protocol (SFTP) – protocolo com poucas funcionalidades, já
em desuso

FTP
• Funcionamento do FTP
– O FTP funciona sobre duas ligações TCP. Uma para troca de comandos e respostas
(controlo), outra para a transferência de ficheiros.
• Ligação de Controlo do FTP
– O FTP funciona utilizando um modelo cliente/servidor
– O cliente FTP activa o processo de transferência e o servidor responde.
– Quando o utilizador inicia uma transferência remota de ficheiros é aberta a ligação de
controlo, na qual são enviados os comandos e recebidas as respostas.

• Ligação de dados do FTP


– Quando uma transferência de ficheiros está para ser iniciada é estabelecida uma
nova ligação TCP entre o servidor e o cliente.
– A ligação de controlo é utilizada para especificar os números dos portos e para a
indicação dos parâmetros de transferência (ASCII, binário)
– Não é necessário que, no servidor, os portos de dados e de controlo se encontrem no
mesmo computador. O processo servidor pode estar numa máquina e os ficheiros noutra.
– É também possível transferir ficheiros entre dois computadores, comandados por um
terceiro, que estabelece com eles ligações de controlo e comanda o estabelecimento de uma
ligação de dados entre eles.

Trivial File Transfer Protocol(TFTP)


• Mais simples
• Recorre ao UDP
• Não suporta autenticação

9
Arquitectura de Aplicações Correio electrónico SMTP
•O SMTP (Simple Mail Transport Protocol) é o protocolo utilizado na Internet para a
transferência de mensagens entre utilizadores.
• Pode funcionar sobre TCP, sobre outro qualquer protocolo ou ainda transferir
directamente as mensagens entre processos, quando os utilizadores estão na mesma
máquina.
• Suporta as aplicações de gestão de mensagens (mail, mailx, …)
• Os utilizadores são endereçados pelo seu “username”ou por uma outra designação
que eles escolham. À identificação dos utilizadores são adicionados os vários domínios
hierárquicos a que eles pertencem.
• Em cada domínio deve existir um servidor SMTP que sabe qual a máquina (dentro do
domínio) onde deve entregar correio do utilizador.
•O SMTP utiliza os serviços do DNS para encontrar o endereço IP do servidor SMTP
do domínio (muitas vezes é a mesma máquina que faz os dois serviços).

Arquitectura de Aplicações TelNet


• Princípio das Opções Negociadas
• Modelo Cliente/Servidor
• Comandos Telnet
– close
– open
– quit
• Negociação de opções
– O comando display mostra os valores correntes das opções negociadas.
– O comando “toggle”permite alterar os valores das opções negociáveis.

• Função do Telnet
– O Telnet fornece um serviço de comunicações remoto, em modo terminal, com as
seguintes características:
-Suficientemente genérico para poder funcionar com qualquer tipo de
computador
- Bi direccional e em modo caracter-a-caracter
Opcionalmente pode funcionar em modo linha-a-linha
– O modo de funcionamento do Telnet é baseado nos conceitos de Terminal Virtual
de Rede (NVT) e de opções negociadas.
• Terminal Virtual de Rede (NVT)
– Um NVT é um dispositivo imaginário que fornece, através da rede, uma
representação normalizada de um terminal canónico.
– É assim eliminada a necessidade de, nas sessões Telnet, os sistemas remotos
serem informados das características do terminal local.
– Ambos os sistemas (o local e o remoto) alteram as suas configurações de modo a
implementarem o NVT.
– As funcionalidades do NVT são o resultado de um balanço equilibrado entre as
funcionalidades dos terminais mais simples e as dos terminais mais evoluídos.
– Numa sessão Telnet, o conjunto de caracteres locais é traduzido no conjunto de
caracteres do NVT. Estes são enviados via TCP ao sistema remoto que, por sua vez, traduz os
caracteres NVT no seu conjunto de caracteres.

Servidor de Nomes DNS


•O DNS (Domain Name Server) é um protocolo de nomeação, que fornece um serviço
de tradução entre nomes de computadores e endereços IP (e fornece informação para o
encaminhamento de correio electrónico).
• As redes são subdivididas em domínios e sub domínios de forma a ser obtida uma
estrutura hierárquica de nomeação.
• Ao nome das máquinas são adicionados os nomes dos sub-domínios e domínios até
ao “top-level do main”.
–Ex: eden.dei.uc.pt
• Cada domínio deve dispor de um servidor que, quando interrogado com o nome do
domínio deve devolver o endereço IP da máquina.

10
• Os servidores dialogam com os que lhe estão hierarquicamente acima quando a
informação que lhes é pedida não faz parte do seu domínio.

Protocolo de transporte
• Fornecer aos protocolos de nível superior (aplicação) um serviço de comunicação
fiável e eficiente entre os vários processos de aplicação.
• É na camada de apresentação da arquitectura TCP/IP que são implementados os
circuitos virtuais que funcionam como ligações ponto-a-ponto entre os processos de aplicação (
e não apenas entre máquinas).
• O protocolo IP não se responsabiliza pela perda ou pela entrega desordenada dos
datagrams. Faz parte das funções dos protocolos de transporte a recuperação da informação
perdida e o seu ordenamento.
• Devem dividir a informação dos protocolos de nível superior numa sequência de
pacotes e fazê-los chegar ao nível de aplicação da máquina remota.

UDP - resumo
•O UDP é um protocolo de transporte
•O UDP é um protocolo com reduzidas funcionalidades, pouco acrescentando às
funcionalidades do IP.
• Funciona em modo “connectionless”, fornecendo aos protocolos de aplicação um
serviço baseado em datagrams.
• Partilha com o TCP a utilização de portos para distinguir entre processos de
aplicação.
• Por defeito não faz detecção de erros nos dados e não garante o seu ordenamento.
• Opcionalmente pode ser adicionado o checksum aos datagramas UDP para detecção
de erros.

TCP - resumo
• É o principal protocolo de transporte da arquitectura TCP/IP
• Fornece um serviço “connection-oriented” aos protocolos de aplicação
– O TCP fornece aos protocolos de aplicação circuitos virtuais para a transferência de
informação entre processos.
– Os circuitos virtuais têm que ser estabelecidos antes de ser iniciada a comunicação.
– No fim de serem transmitidos os dados, os circuitos virtuais devem ser quebrados.
• Fornece um serviço de transmissão de dados fiável aos protocolos de aplicação.
– O TCP fornece aos processos de aplicação um mecanismo de comunicação fiável,
resistente às perdas de informação e ao desordenamento que pode ocorrer nos níveis
inferiores.
– Contém mecanismos de retransmissão automática para a recuperação de informação
perdida.
– Garante o ordenamento da informação desordenada por atrasos e duplicações
ocorridas nos níveis inferiores.
• O TCP suporta uma variedade muito grande de protocolos de nível de aplicação.
• O TCP utiliza mecanismos de controlo de fluxo para impedir a congestão interna,
evitando assim as degradações de serviço e as consequentes falhas.
• As ligações TCP são full-duplex, suportam comunicação simultânea e bidireccional
entre dois processos de aplicação.
•O TCP garante a entrega atempada da informação no destinatário. Se tal não for
possível o nível superior é informado.
• O TCP associa a cada ligação parâmetros de segurança e de prioridade, fornecidos
pelo nível superior (se estes parâmetros não forem especificados assume parâmetros por
defeito).
• Não impõem aos protocolos de aplicação nenhuma estrutura ou codificação
específicas para a informação.
– O TCP trata a informação como uma sequência binária contínua, deixando todas as
noções de estrutura aos cuidados de nível superior.
• Segmentos
– A sequência de dados recebida do nível superior é repartida em blocos designados
por segmentos.

11
– Cada segmento na prática pode conter até 64Kbytes de dados embora, na prática, o
tamanho dos segmentos seja adaptado às características dos protocolos de nível inferior, para
evitar a segmentação.
• Processos de geração e transmissão de segmentos
– Os processos de aplicação enviam ao TCP uma sequência de dados a ser
transmitida.
– O TCP divide a sequência em segmentos e passa-os ao IP. A cada segmento é
associado um comprimento e um número (correspondente ao número de ordem na sequência
do primeiro byte do segmento).
– O IP executa os seus serviços nos segmentos (criação de datagrams, segmentação,
etc.) e envia-os através da rede ao IP do destino.
– O IP do destino recebe os datagrams, executa os seus serviços (faz a
reassemblagem se necessário), extrai os segmentos e passa-os ao TCP, acima de si.
– O TCP do destino recupera a sequência de dados a partir dos segmentos e entrega-a
ao processo de aplicação ao qual ela é destinada.
• Cabeçalho + Dados
– Os segmentos TCP são compostos de um cabeçalho de, pelo menos, 20 bytes
seguido de um campo de dados de tamanho variável. No cabeçalho estão contidas todas as
informações importantes para o protocolo.

Estrutura dos segmentos TCP


• SRC PORT –16 bits
– Este campo é utilizado para identificar um processo ou um serviço de aplicação do
sistema de origem. Não faz parte do endereço IP, no entanto, a combinação do endereço IP
com o Source Port identifica univocamente o ponto de acesso (socket) ao processo de
aplicação.
•DEST PORT –16 bits
– Este campo é utilizado para identificar um processo ou um serviço de aplicação do
sistema destino.
– Os endereços dos portos são afectados localmente. Cada sistema pode decidir da
forma como faz a sua atribuição.
•SEQ –32 bits
– Este valor representa o número de sequência do primeiro byte de cada segmento.
– Pode variar entre 0 e 232-1, permitindo assim uma variação muito ampla destes
números de modo a impedir as repetições de números de sequência.
• ACK –32 bits
– Se a flag ACK estiver activada, este campo contém o valor do próximo número de
sequência que o TCP espera receber.
• Data Offset –4 bits
– Indica, em unidades de 4 bytes, o tamanho do cabeçalho
• Reserved–6 bits
– Reservado para futuras aplicações. Deve ser posto a zero.
• ControlFlags
– Utilizadas para estabelecer, terminar e manter as ligações.
– URG –quando a 1 indica que os segmentos contém dados urgentes. A posição dos
dados urgentes no segmento é indicada pelo UrgentPointer
– SYN –usado para estabelecer ligações; SYN=1 éum pedido de estebelecimentode
ligação.
–ACK –quando a 1 indica que o campo Acknowledgment é válido.
–RST –quando a 1 indica que a ligação deve ser reinicializada.
–PSH –quando a 1 indica que o receptor deve mandar imediatamente este segmento
ao nível superior.
–FIN –quando a 1 indica que o transmissor não enviará mais dados (fim).
•WNDW –16 bits
– Indica a quantidade de bytes (a partir do byte indicado na última confirmação feita)
que o TCP está disposto a receber.
– É o mecanismo de controlo de fluxo do TCP
•Checksum–16 bits
– Para detectar erros nos segmentos
•URGPTR –16 bits

12
– Indica a posição dos dados urgentes, dentro do segmento, se a flagURG está activa.
•OPT
– Campo variável em tamanho
– A opção única oficialmente reconhecida éa limitação do tamanho dos segmentos,
durante o estabelecimento das ligações.

TCP Gestão das ligações


• Fases das ligações
– Estabelecimento das ligações
– Manutenção das ligações
– Terminação das ligações
• Propriedades das ligações
– Parâmetros de segurança
– Parâmetros de prioridade (precedência)
• Identificação das ligações do TCP
– Os extremos das ligações são identificados pelos sockets onde os protocolos de nível
superior acedem aos serviços do TCP.
– Os sockets são identificadores obtidos pela concatenação dos endereços IP com o
número do porto utilizado pelo protocolo de aplicação.
– As ligações TCP são identificadas pelos números dos dois sockets que terminam os
dois externos da ligação.
• Condições para o estabelecimento das ligações
– Existência de recursos suficientes.
– O protocolo de nível superior remoto estiver pronto para aceitar a ligação (estiver à
escuta)
• Formas de escuta pelos protocolos remotos de nível superior
– Totalmente especificada: o protocolo remoto só aceita ligações provenientes de um
socket específico.
– Não especificada: não é especificado nenhum socket. A ligação será estabelecida
com qualquer processo de aplicação que deseje comunicar com ele.
• Manutenção das ligações
– Depois de estabelecidas as ligações são mantidas activas pelo TCP enquanto os dois
processo de nível de aplicação estiverem interessados em as manter activas.
– Podem existir ligações activas sem que nelas sejam transferidos dados.
• Terminação das ligações
– As ligações estabelecidas podem terminar de duas formas:
• GracefulClose: ambos os processos de aplicação pedem a terminação da ligação.
Neste caso o TCP coordena a terminação das ligações, impedindo as perdas de dados ainda
em trânsito.
• Abort: quando um dos processos força unilateralmente o fecho da ligação. Neste caso
o TCP não coordena a terminação da ligação e podem ser perdidos dados.

TCP Confirmação
• Recuperação dos dados perdidos
– O TCP emprega um mecanismo de recuperação dos dados perdidos nas camadas
inferiores conhecido por confirmação positiva com retransmissão: PAR (Positive
Acknowledgement with Retransmission).
•PAR
– O PAR permite ao TCP reenviar os dados periodicamente até que seja recebida a
confirmação da chegada dos mesmos.
– De modo a evitar retransmissões desnecessárias ou esperas prolongadas, o TCP
ajusta dinamicamente o tempo de espera pelas confirmações às características das ligações.
– Os segmentos em erro (detectado pelo checksum) são tratados como segmentos
perdidos.
• As confirmações
– Não é necessário que por todos os segmentos enviados sejam recebidas
confirmações.
– Cada confirmação é válida para o segmento indicado e para todos os segmentos
anteriores.
•Sliding Window

13
TCP Controlo de Fluxo
• Limitação da quantidade de dados a receber
– O mecanismo de controlo de fluxo do TCP permite que o TCP receptor limite a
quantidade de dados a receber à sua capacidade de armazenamento e de processamento.
•Janela
– O controlo de fluxo é baseado num mecanismo de janela que define a quantidade de
bytes que, em cada instante, podem ser aceites.
– À medida que os processos de aplicação vão consumindo os dados, as janelas vão
sendo avançadas permitindo assim a chegada de mais informação.
– A janela de cada ligação é controlada individualmente, garantindo-se assim a
utilização justa dos recursos disponíveis, por todas as ligações activas

TCP multiplexação
• Suporte para múltiplos processos pelo TCP
– O mecanismo de multiplexação do TCP permite-lhe fornecer serviços a vários
processos de aplicação simultaneamente.
– Os processos de nível superior são distinguidos pelo TCP através de identificadores
chamados portos.
• Múltiplas ligações de um processo de aplicação
– Este esquema permite a m processo do nível de aplicação manter múltiplas ligações
a processos remotos.
• Múltiplas ligações entre dois processos de aplicação
– Dois processos de aplicação podem também manter entre si várias ligações TCP
simultâneas.
•Well-knowPorts
– Aos protocolos de nível de aplicação de utilização generalizada (ex: FTP, Telnet,
…)estão permanentemente afectados a portos, designados por “portos bem conhecidos”.

TCP sincronização
•Funções
–Devido ao facto de os níveis inferiores não fornecem um serviço fiável, quando uma
ligação TCP é estabelecida, podem aparecer nela dados antigos que andavam perdidos na
rede.
–Estes dados não podem ser aceites pelo TCP pois não pertencem aos processos de
nível superior que estabeleceram a ligação.
–O TCP dispõem de um mecanismo de sincronização que impede que tais dados
sejam aceites.
•Funcionamento
–O TCP que origina a ligação envia o primeiro segmento com um número de sequência
arbitrária (X).
–O TCP que responde deve confirmar esse número de sequência e indicar o seu
respectivo número de sequência (Y)
–A transmissão contínua a partir dos números de sequência indicados.

TCP Rendezvouz
• Encontro no estabelecimento das ligações
– Os protocolos (ou processos) de nível superior podem abrir ligações TCP em dois
modos: passivas ou activas.
• Ligações activas
– Ao solicitar uma ligação activa o processo de aplicação está a instruir o TCP para
iniciar imediatamente o processo de estabelecimento da ligação com o TCP remoto.
• Ligações passivas
– Ao solicitar uma ligação passiva o processo de aplicação está a instruir o TCP para
esperar por uma ligação iniciada por um processo remoto.
• Servidor/Cliente
– Os processos que solicitam as ligações activas desempenham o papel de clientes.
– Os processos que solicitam as ligações passivas desempenham o papel de
servidores.
• Ligações activas simultâneas

14
– Também é possível que dois processos executem dois pedidos de ligações activas
simultaneamente, para comunicarem um com o outro.

TCP Push flag


• Serviço expresso
– Utilizando a flagPush os protocolos de nível de aplicação podem acelerar a entrega
dos dados aos protocolos remotos.
– O TCP é forçado a enviar os dados ao TCP remoto sem esperar por mais dados para
completar segmento.
• Utilizações do serviço expresso
– Os serviços de terminal são exemplos de protocolos que utilizam este tipo de serviço.
– Nestes serviços é conveniente que os caracteres sejam enviados linha-a-linha (ou
carácter a caracter) do cliente para o servidor.

Endereços IP
•Classe A –126 redes com 16387064 computadores cada
•Classe B –16065 redes com 64516 computadores cada
•Classe C –1999996 redes com 254 computadores cada

•Classe A:0-127
•Classe B:128-191
•Classe C:192-233
•Classe D:224-255

–0 –reservado para máquinas que tenham esquecido o seu endereço


–255 –reservado para o broadcasting
Ex:
–20.2.15.1 classe A, rede 20, computador 2.15.1
–128.2.15.1classe B, rede 128.2, computador 15.1
–0.2.15.1classe A, rede ?, computador 2.15.1

Mascaras
• Dentro de uma dada rede de uma dada classe de endereços, a parte reservada para a
identificação dos hosts pode ser subdividida, pelo administrador, reservando alguns bits mais
significativos para a identificação das sub-redes dentro daquela rede.
•Subnetting – um conjunto de endereços de hosts pode ser sub-dividido (agrupado)
para formar sub - redes.
• Facilidade de encaminhamento e de gestão.

Interworking Control Message Protocol (ICMP)


•O ICMP é usado quando é necessário notificar o protocolo IP de que alguns aspectos
do seu funcionamento necessitam de ser modificados
•A notificação é feita através de mensagens que são carregadas em datagrams com a
mesma estrutura dos datagrams IP
• Se não for possível entregar um datagram no seu destino o ICMP é utilizado para
notificar o IP que o originou
•O ICMP também é utilizado para indicar aos sistemas os percursos livres de
congestão
• Para além destas funções o ICMP fornece um serviço de eco de datagrams que é
utilizado em algumas situações de teste.

15
Pacote IP v6

Cabeçalhos opcionais

Objectivos do IPV6
Configuração de um nó com qualidade de serviço.
Desenvolvimento de ferramenta para teste e avaliação de qualidade de serviço.
Extensão ao HTML que permita a indicação de serviços (áudio, vídeo...) com QoS.
Implementação de servlets do lado do servidor capazes de interpretar a extensão
referida e lançamento dos servidores.
Desenvolvimento de um módulo de plug-in para um browser ou um proxy local capaz
de lançar clientes de áudio e vídeo que liguem aos portos do servidor com QoS.

Unicast- consiste no envio de informação para um único destino


Multicast- consiste em enviar a mesma informação para vários destinos.

16
Endereços IPV6
•v4:196.132.204.12
•v6:196.132.204.12.196.132.204.12.196.132.204.12.196.132.204.12
fce0:a3c2:0000:2020:aa63:43a4:0000:a1a1

QoS em IPV6 – qualidade de serviço


• Redução de processamento nos nós intermédios
– PathMTU Discovery, análise dos cabeçalhos opcionais, …
• FlowLabelField, TrafficClass, …

Encaminhamento Estático
• As tabelas são definidas com base no conhecimento a priori’da rede
• As tabelas raramente são alteradas
• Tipicamente, as tabelas são introduzidas manualmente nos routers
pelo administrador de sistemas
Utilização
–Redes pequenas
–Redes com poucas alterações de topologia
–Redes com uma única ligação ao exterior
–Redes sem caminhos redundantes

Encaminhamento Dinâmico
•As tabelas de encaminhamento são alteradas de forma automática(daemons)
•A informação recebida pelos daemons é trocada utilizando protocolos de
encaminhamento
Utilização
–Redes de grande dimensão e de topologias complexas
–Redes com frequentes alterações de topologia
–Redes com caminhos redundantes, com diferentes características e custos, que se
alteram ao longo do tempo.

Vantagens do encaminhamento dinâmico


•Adaptaçãoa alteraçõesda topologia da rede
•Reacção a condições de congestão da rede
•Aumento do desempenho da rede
•Sobrevivência a falhas
•Contribuição para a qualidade de serviço

Desvantagens do encaminhamento dinâmico


•Overhead (protocolos para disseminação da informação de routing)
•Maior complexidade(decisões de routing, protocolos, processamento nos routers)
•Consistênciada informação de routing
–muitas mensagens: boa actualização, muito overhead
–poucas mensagens: má actualização, pouco overhead
•Tempos de reacção muito curtos podem provocar oscilações
•Mais cuidado para evitar ciclos (loops)

17
Address Resolution Protocol (ARP) – é um metodo para encontrar o Mac address de um
host quando somente o seu IP é conhecido. O remetente Transmite um pacote ARP que
contem o endereço de outro host e espera a que ele responda com o seu MAC address, que
depois é armazenado em cache para usar mais tarde.

Criação de endereços da classe C usando mascaras de rede:


Ex:

Definição de NAT
Em redes de computadores, NAT, Network Address Translation, também conhecido como
masquerading é uma técnica que consiste em reescrever os endereços IP de origem de um
pacote que passam sobre um router ou firewall de maneira que um computador de uma rede
interna tenha acesso ao exterior (rede pública).
Network Address Translation - Mecanismo que permite a conexão de redes privadas à rede
Internet sem alteração dos endereços reservados. Através de um NAT server os endereços de
rede reservados são convertidos para endereços públicos quando se torna necessário o
acesso à rede Internet. Com este mecanismo, diversos computadores com endereços internos
podem compartilhar um único endereço IP.
Inconvenientes do NAT
Os host’s que usam o NAT não têm a verdadeira ligação ponto-a-ponto, e não podem participar
em alguns protocolos da Internet. Os serviços que requerem a iniciação de serviços TCP de
redes exteriores ou de protocolos tais como aqueles que usam o UDP podem não ser capazes
de estabelece ligação. A menos que o router NAT faça um esforço específico para suportar tais
protocolos, os pacotes que chegam nunca conseguem alcançar o seu destino. Alguns
protocolos podem acomodar o NAT entre host’s (passive mode FTP) muitas vezes com a
assistência de uma aplicação Layer Gateway, mas falha quando ambos os sistemas estão
separados da Internet pelo NAT. A desvantagem está também em aplicações não
convencionais como H.323 e FTP activo, que tem que ser tratadas caso a caso pelo NAT, e o
fato do NAT não entender o nível de aplicação, o que pode ser necessário para certas
aplicações (ex: implementação de um antivírus para verificar arquivos baixados por FTP e
HTTP).
Benefícios do NAT
A limitação da criação de uma ligação bidirecçional pode ser considerada em algumas
situações como uma vantagem e não como uma limitação. Até ao ponto em que o NAT
depende de uma maquina na rede local para iniciar toda a conexão aos host’s do outro lado do
router, ele impede que a actividade maliciosa iniciado por host’s fora da rede alcancem os
host’s que estão a usar o NAT. Isto pode beneficiar em termos de segurança melhorando a
privacidade. Muitas fierwall’s usam o NAT como um modo de protecção.

18
O NAT trabalha a nível de rede, alterando os cabeçalhos dos pacotes IP. Este método tem as
vantagens de ser transparente para a maioria das aplicações e ser mais rápido.

Mecanismos de Transição para o IPv6


Os mecanismos de transição podem se caracterizados em quatro grupos:
-dual-stack – também conhecido por dual-stack ip layer, no qual esta implementado em cada
nó da rede o protocolo ipv4 e o ipv6. Cada dual-stack na rede vai ter ambos os protocolos ipv4
e ipv6. Vantagens - fácil de executar e bastante suportado. Desvantagens – A topologia da
rede pode vir a necessitar de duas tabelas de routin, cada nó na rede tem de estar actualizado.
-tunneling – também conhecido por ipv6 sobre o ipv4 tunneling. A maioria deste túneis
trabalham por encapsulamento do ipv6 em pacotes ipv4, que podem ser enviados pelas redes
ipv4.
-translation – é necessário quando o ipv4 pretende comunicar com o IPv6. Os mecanismos de
tradução estão divididos em dois grupos, stateful e stateless.
-gateway – é usado quando quando um computador esta a usar ipv4 e outro ipv6. O cliente
liga-se ap gateway usando o ipv6 ou o ipv4, e o gateway liga-se ao servidor usando outro
protocolo, enviando os pacotes para o cliente. Deste modo os cliente podem ver sites em ipv6.

Protocolos e respectivas camadas

Tipos de endereços IPv6

Integrated services
IntServ consiste numa arquitectura, que garante a qualidade de service na rede. IntServ pode
por exemplo para autorizar a transmissão de vídeo e som sejam transmitidos sem interrupções.
O problema deste serviço é que seria necessário guardar mitos estados no router. Como
resultado, intServ trabalha numa pequena escala, mas ao longo que se passa para um seviço
do tamanho da Internet é difícil manter um registo de todas as “reservas” feitas. Dai ser pouco
popular.

19
Differentiated sevices
O tráfego é dividido em classes, cada cliente tem direito a uma certa classe consoante os
acordos que tenha. Os routers vão limitar assim o tráfego de cada classe.
Uma das vantagens é que todo o controlo é feito nas “fronteiras” da rede. Assim os routers do
núcleo da internet limitam-se a fazer o routing e não se têm que preocupar com os acordos e
limitações de cada cliente.
Uma desvantagem é que os detalhes de como os routers individuais tratam do tipo de campo
do serviço é um tanto arbitrário, e é difícil prever o comportamento end-to-end. Isto complica-se
mais se um pacote cruzar dois ou mais nuvens de DiffServ antes de alcançar seu destino. De
um ponto de vista comercial, esta é uma falha principal, porque significa que é impossível
vender classes diferentes de ligações end-to-end para os clientes.

1KHz = 1000Hz
8bits 1byte
1024bytes= 1kbyte

1 baud x símbolos por segundo = bitps

Taxa liquida (bits de informação por Segundo) = (numero de caracteres


suportados/paketsize(bits)) * velocidade de transferência (bits)

20

Você também pode gostar