Mostrar Respostas

Redes de Computadores

Material de estudo para Redes de Computadores. Conteúdo baseado no leccionado em 2016/2017 e no livro da bibliografia principal da cadeira.

Clica nos tópicos seguintes para mostrar/esconder contéudo.



Resumo

Internet

Internet allows distributed applications running on its end systems to exchange data with each other.
The Transmission rate / bandwidth of a link is measured in bits/second.
End systems are indirectly connected to each other through intermediate switching devices called packet switches.


Packet switching (Comutação de pacotes) is a digital networking communications method that groups all transmitted data into suitably sized blocks called packets which are transmitted via a medium that may be shared by multiple simultaneous communication sessions. Please note that:


Packet = header + payload


The sequence of communication links and packet switches traversed by a packet is called route or path.

End systems access the internet through Internet Service Providers (ISP’s). Hosts, packet switches and other pieces of the internet run protocols that control the sending and receiving of information within the internet.

A protocol defines the format and order of messages exchanged between two or more communicating entities as well as the actions taken on the transmission and/or reception of a message or other event.


Together, TCP and IP are two of the most important protocols.


Hosts can be clients or servers. A client program is a program running on one end system that requires a service from a server program running on another end system.

In the Peer-To-Peer model end systems act both as a client and a server.


Connection-Oriented vs Connectionless Service

The Internet provides 2 services: a connection-oriented reliable service (TCP) and a connectionless unreliable service (UDP).

Connection Oriented Service

The client program and server program send control packets to each other before sending packets with the actual data to be transferred. This is called handshaking. After the handshake, a connection is established between the two end systems.

This service is bundled with:
The Internet’s connection oriented service is TCP, aka Transmission Control Protocol (used in SMTP, FTP, HTTP…)

Connectionless Service

There is no handshake, the sending program simply sends the packets, which means the data is delivered sooner. This is ideal for transaction oriented applications (internet phone, video conference). The downside is that the source never knows which packets arrived at destination, and packets lost are lost forever. There is also no flow or congestion control.

The internet’s connectionless service is UDP - User Datagram Protocol (used in DNS… *sigh* it's always DNS)


Some more about packet switching...

How does it actually work?


In general:
  • Packet switching is not completely suitable for real-time services (UDP still uses it though)
  • Offers better sharing of bandwidth
  • More efficient and less costly that circuit-switching


  • There are two types of packet switched networks:
  • datagram networks (like the internet!)
  • virtual circuit networks (not very relevant but still worth a look)


  • Datagram networks
  • Any network that forwards packets according to host destination address
  • Each packet traversing the network contains in its header the address of the packet's destination
  • Each packet switch has a forwarding table that maps destination addresses to an outbound link
  • In contrast with VC networks, datagram networks do not maintain connection-state information in their switches


  • Delay and Loss in packet switched networks

    So we've established that a packet is interchanged between switches and over communication links. But we are dealing with physical media, which means information is subject to errors, noise, congestion. Somehow, it still arrives in our end systems correct and in-order (most times). Even though it may look like an almost instant process, there are different delays our packets suffer and all have different causes.

    Several types of delay:
    Together, the above account for the total nodal delay.


    Processing delay
  • The time required (for a node/switch) to examine a packet’s header and determine where to direct the packet. It also accounts for others, like the time needed to check for bit-level errors in the packet that may have occurred in transmission.

  • Queueing delay
  • Time the packet must wait until being transmitted onto the link
  • If the queue is empty and no other packet is being transmitted, the packet’s queueing delay is zero

  • Transmission delay


    transmission delay = L/R


  • L - packet size (bits)
  • R - transmission rate (bits/second)
  • Transmission delay is the amount of time required to push all of the packet’s bits into the link (also called store and forward delay)

  • Propagation delay
  • The time required to propagate from the beginning of the link to the next router (imagine a packet going through a cable, because that's what it is)
  • Depends on the physical medium of the link (depends on the cable)


  • propagation delay = d/s


  • d - distance between router A and B
  • s - propagation speed of link


  • Internet Structure


    Some interesting questions to ask: How exactly is the network physically connected? How do are we connected to other continents? How do we ensure availability at all times? What affects the route choice of a travelling packet?

    At the top of the hierarchy, we have a small number of Tier-1 ISP’s. Examples are Verizon and AT&T, major players in communication services. The link speeds for tier-1 networks are usually very fast.

    Tier-1: internet backbone networks

    Tier-2:

    Companies and institutions may connect into tier-1 or tier-2 ISP’s.

    SIDE NOTE: There are underwater cables that connect these networks (either shocking or shockingly obvious).

    Internet Protocol Stack

    The internet protocol stack is a model we use to help us describe the internet. It consists of different layers that refer to different parts of a network.

    The key for figuring out how the following different layers work is by understanding why we use this model in the first place: the layered model works in abstractions - each layer need not worry about the others.

    Application Layer
    Transport Layer
    Network Layer

    Protocolos/Serviços

    HTTP

    DNS

    An IP address consists of four bytes (IPv4) and has a rigid hierarchical structure - as we scan the address from left to right we obtain more information about where the host is located online.

    What is DNS?


    DNS is commonly employed by HTTP, FTP, SMTP.


    DNS adds additional delay, but sometimes the IP address is cached in a "nearby" DNS server.

    Some things DNS provides:


    Centralised DNS database?

    Problems with a centralised DNS design - what if we mapped all IP's in a single database?:


    Distributed Hierarchical Database

    Three classes of DNS servers:


    There are also local DNS servers, usually mantained by the ISP or institutional network. When a host issues a query, the local DNS server receives it and acts as a proxy, forwarding it to the DNS hierarchy.

    DNS caching

    DNS extensively exploits DNS caching to reduce the number of DNS messages ricocheting around the Internet



    DNS records and messages

    The DNS servers store Resource Records that provide hostname-to-IP address mappings. Each DNS reply message carries one or more resource records.




    A Resource Record is a four tuple that contains the following fields:


    (Name, Value Type, TTL)



    The TTL determines when a resource record should be removed from a cache.

    The Name and Value depend on Type:

    If a DNS server is authoritative for a particular hostname, the DNS server will contain a Type A record for the hostname.

    Escolhas Múltiplas

    Clicar nos títulos seguintes para mostrar/ocultar as fichas electrónicas.

    Clicar no botão na lateral esquerda para mostrar/ocultar respostas.

    » Download de .pdf com todas as escolhas múltiplas


    Ficha 1

    No desenvolvimento de uma aplicação que funciona de acordo com o paradigma cliente servidor, qual das seguintes chamadas de sistema apenas encontra no código de um cliente TCP?
    • accept()
    • socket()
    • connect()
    • bind

    Qual das seguintes afirmações é a única verdadeira?
    • O protocolo UDP não garante entrega dos dados enviados.
    • O protocolo UDP tem funcionamento orientado à ligação ("connection oriented").
    • O protocolo TCP não pode ser usado para transferência fiável de ficheiros de imagem.
    • O protocolo TCP garante a entrega dos dados ao fim de um determinado tempo.

    No âmbito da comunicação entre computadores, um protocolo especifica:
    • O tipo e formato das mensagens que devem ser apresentadas ao utilizador.
    • O tipo e formato das mensagens que o programa de aplicação passa à API de sockets.
    • As instruções que devem ser usadas para programar a funcionalidade desejada.
    • O tipo e formato das mensagens trocadas entre entidades ao mesmo nível em máquinas distintas que comunicam entre si.

    A comutação de pacotes é mais apropriada do que a comutação de circuitos para ligações entre computadores porque:
    • A comutação de pacotes é mais moderna.
    • A comutação de circuitos não permite fazer o encaminhamento das mensagens para o destino desejado.
    • A comutação de circuitos implica a reserva de recursos (limitados) para uma comunicação durante toda a sua duração.
    • A comutação de circuitos apenas pode ser usada para comunicações analógicas.

    Considere uma rede de acesso residencial, em que a ligação entre casa e central local é suportada num par de fios de cobre, usando a tecnologia ADSL (“Asymmetric Digital Subscriber Line”). Para transmissão digital de dados provenientes de um computador:
    • É usado um MODEM que reserva a linha em exclusivo para este fim, impossibilitando por exemplo o estabelecimento de uma conversação telefónica em simultâneo.
    • É usado um esquema de multiplexagem por divisão na frequência (FDM) da linha telefónica, permitindo que a transmissão de dados se faça de forma independente, sem interferir, com a realização de chamadas telefónicas.
    • É possível transmitir o sinal directamente na linha telefónica, sem qualquer necessidade de conversão.
    • A transmissão é suportada num cabo coaxial, que serve diversas residências, sendo necessário usar um protocolo de “contenção” para gerir o canal de “upstream”.


    Ficha 2

    Numa aplicação distribuída que funciona de acordo com o paradigma Cliente-Servidor:
    • Deve ser o servidor a iniciar a comunicação com o cliente.
    • O cliente apenas necessita de conhecer o endereço IP do servidor para poder iniciar uma comunicação.
    • O cliente deve utilizar um endereço IP permanente.
    • O servidor deve utilizar um endereço IP permanente.

    Qual das seguintes afirmações melhor define o conceito de “protocolo”?
    • Conjunto das primitivas de serviço entre duas camadas adjacentes, na arquitectura em camadas.
    • Conjunto das chamadas de sistema que constituem a API de sockets.
    • Algoritmo de escolha de caminhos executado em cada encaminhador.
    • Conjunto de regras para troca de mensagens entre entidades pares, na implementação de um algoritmo distribuído.

    Qual das seguintes afirmações melhor define o conceito de “interface de serviço”?
    • Conjunto de regras para troca de mensagens entre entidades pares, na implementação de um algoritmo distribuído.
    • Conjunto das primitivas de serviço entre duas camadas adjacentes, na arquitectura em camadas.
    • Algoritmo de escolha de caminhos executado em cada encaminhador.
    • Conjunto das chamadas de sistema que constituem a API de sockets.

    Qual das seguintes camadas existe na arquitectura de rede prevista no modelo OSI e não existe na arquitectura do modelo TCP/IP?
    • Camada de Codificação.
    • Camada de Interligação.
    • Camada de Boas Vindas.
    • Camada de Apresentação.

    Dois computadores estão interligados por um caminho que contém três encaminhadores, com linhas de transmissão de 10 Mbit/s e um tempo de propagação de 1 ms em cada linha. Na ausência de outro tráfego na rede, o tempo necessário para enviar um ficheiro de 50 kbit (tempo entre o envio do primeiro bit na origem e recepção completa do ficheiro no destino) usando comutação de pacotes, com pacotes de 10 kbit:
    • é inferior a 7,5 ms.
    • está entre 7,5 ms e 10 ms.
    • está entre 10 ms e 12,5 ms.
    • é superior a 12,5 ms.


    Ficha 3

    Dois computadores estão interligados por um caminho que contém dois encaminhadores intermédios, com linhas de transmissão de 1 Mbit/s e um tempo de propagação de 5 ms em cada linha. Na ausência de outro tráfego na rede, o tempo necessário para enviar um ficheiro de 10 kbit (tempo entre o envio do primeiro bit na origem e recepção completa do ficheiro no destino) usando comutação de pacotes, com pacotes de 1 kbit:
    • é inferior a 15 ms.
    • está entre 15 ms e 20 ms.
    • está entre 20 ms e 25 ms.
    • é superior a 25 ms.

    Para transferir páginas Web entre um servidor e um browser usa-se:
    • o protocolo FTP na camada de aplicação.
    • o protocolo UDP na camada de transporte.
    • o protocolo TCP na camada de transporte.
    • o protocolo HTML na camada de aplicação.

    No protocolo SMTP qual o número de porto usado por omissão pelo servidor?
    • 25
    • 53
    • 80
    • 3128

    Qual das seguintes afirmações relativas ao protocolo FTP é verdadeira?
    • Apenas uma sessão TCP é estabelecida entre cliente e servidor para transferência de comandos e de dados.
    • É estabelecida uma sessão TCP de controlo para transferência de comandos e tantas sessões TCP quantos os ficheiros de dados a transferir.
    • É estabelecida uma sessão TCP de controlo para transferência de comandos e uma outra sessão TCP para todas as transferências de dados.
    • O protocolo FTP não precisa de manter informação de estado.

    Um cliente HTTP/1.1 está configurado para não usar sessões TCP paralelas. Pretendendo-se descarregar de um servidor uma página base e n imagens, qual a economia no tempo para receber os conteúdos desejados se o cliente usar pipelining, relativamente ao caso em que não usa pipelining?
    • (n-1) RTTs
    • n RTTs
    • (n+1) RTTs
    • (2n-1) RTTs


    Ficha 4

    Considere um par cliente e servidor Web que comunicam usando HTTP/1.0. O cliente descarrega do servidor uma página base e 4 imagens. Qual a economia no tempo para receber os conteúdos desejados se o cliente puder usar 2 sessões TCP paralelas, relativamente ao caso em que não se usam sessões paralelas? (sugestão: desenhe um diagrama espaço-tempo ilustrando as trocas de informação)
    • Não há economia de tempo
    • 2 RTTs
    • 4 RTTs
    • 8 RTTs

    Relativamente ao protocolo SMTP qual das seguintes afirmações é verdadeira?
    • O protocolo usado pela aplicação de leitura de e-mail quando se liga ao servidor onde as mensagens estão armazenadas é o protocolo SMTP
    • Um cliente SMTP utiliza por omissão o porto 25 em TCP
    • Os endereços indicados nos comandos “RCPT TO” do protocolo SMTP podem não coincidir com os endereços listados no campo “To:” do cabeçalho da mensagem de correio electrónico enviada
    • Um servidor SMTP utiliza por omissão o porto 25 em UDP

    No contexto da disciplina de Redes de Computadores, o que se entende por DNS:
    • Um protocolo da camada de aplicação suportado numa base de dados distribuída, que é implementada usando uma hierarquia de servidores de nomes
    • Um protocolo da camada de aplicação, que usa os serviços do protocolo TCP da camada de transporte para garantir fiabilidade dos dados transferidos de um servidor centralizado;
    • Um tipo de ataque informático conhecido por “denial-of-service”
    • Um serviço de atribuição de nomes a domínios

    Considere as seguintes linhas de uma tabela de “Resource Records”:
    www.redes.ulisboa.pt CNAME lab.redes.ulisboa.pt
    lab.redes.ulisboa.pt A 193.136.166.106
    redes.ulisboa.pt NS ns1.redes.ulisboa.pt
    ns1.redes.ulisboa.pt A 193.136.166.65
    Assinale a afirmação verdadeira:
    • O endereço IP associado ao nome lab.redes.ulisboa.pt é 193.136.166.65
    • O endereço IP de um servidor de nomes do domínio redes.ulisboa.pt é 193.136.166.65
    • Os nomes www.redes.ulisboa.pt e ns1.redes.ulisboa.pt referem-se à mesma máquina
    • O endereço IP associado ao nome www.redes.ulisboa.pt é 193.136.166.65

    Considere uma aplicação peer-to-peer em que um servidor envia um ficheiro de 4 Gbit a uma população de 900 estações.
    A ligação do servidor à Internet (upload) funciona a 200 Mbits/s e a ligação de cada estação à Internet (upload) tem um ritmo de transmissão de 2 Mbits/s. As ligações no interior da Internet assim como as ligações da Internet a cada uma das estações (download) têm um ritmo de transmissão de dados muito elevado, que podemos considerar infinito. Qual o tempo mínimo ao fim do qual todas as estações já receberam o ficheiro?
    • 15 minutos
    • 30 minutos
    • 1 hora
    • 2 horas


    Ficha 5

    Relativamente aos protocolos da camada de transporte, assinale a afirmação verdadeira:
    • Nenhum protocolo da camada de transporte garante que a entrega de dados se fará num intervalo de tempo determinado
    • Qualquer protocolo da camada de transporte implementa mecanismos de controlo de congestão da rede
    • Qualquer protocolo da camada de transporte garante a entrega ordenada e sem falhas dos dados enviados
    • O protocolo da camada de transporte é implementado nos computadores terminais e em todos os nós intermédios (routers) por que passam os segmentos enviados

    Os protocolos da camada de transporte permitem fazer a multiplexagem/desmlutiplexagem de várias comunicações para a mesma máquina fazendo uso de números de porto, além do endereço IP que identifica a máquina, para identificar o socket a que uma mensagem se destina. Identifique a afirmação verdadeira:
    • No protocolo UDP é necessário o tuplo (IP origem, porto origem, IP destino, porto destino) para fazer a desmultiplexagem e entregar a mensagem no socket desejado
    • No protocolo UDP o par (IP destino, porto destino) são suficientes para fazer a desmultiplexagem e entregar a mensagem no socket desejado
    • No protocolo TCP o par (IP destino, porto destino) são suficientes para fazer a desmultiplexagem e entregar a mensagem no socket desejado
    • No protocolo TCP além do tuplo (IP origem, porto origem, IP destino, porto destino) para fazer a desmultiplexagem e entregar a mensagem no socket desejado é também necessário conhecer a lista de encaminhadores no caminho entre origem e destino

    Qual das seguintes afirmações é verdadeira relativamente à troca de segmentos entre uma dada origem e um dado destino na Internet?
    • Todos os segmentos TCP de uma comunicação são encapsulados pelo protocolo UDP e seguem o mesmo caminho
    • Todos os segmentos UDP de uma comunicação seguem o mesmo caminho
    • Nem o TCP nem o UDP garantem que todos os segmentos de uma comunicação seguem o mesmo caminho
    • Todos os segmentos de uma comunicação TCP seguem o mesmo caminho

    O protocolo Stop-and-Wait:
    • Nunca consegue uma eficiência de utilização superior a 50%
    • Garante a entrega de dados correctamente e por ordem ao destinatário, mesmo na presença de erros de transmissão ou perda de pacotes
    • É muito eficiente na transferência de dados entre máquinas muito distantes entre si
    • Deve o seu nome ao facto de a comutação de pacotes funcionar em modo “store-and-forward”

    Relativamente aos protocolos de janela deslizante, assinale a opção correcta:
    • Go-back-N é um protocolo em que a janela de transmissão pode ter dimensão > 1, mas a janela de recepção tem sempre dimensão = 1
    • Stop-and-Wait é um protocolo em que a janela de transmissão pode ter dimensão > 1, mas a janela de recepção tem sempre dimensão = 1
    • Go-back-N é um protocolo em que as janelas de transmissão e de recepção podem ter dimensão > 1
    • Selective-Repeat é um protocolo em que a janela de transmissão pode ter dimensão > 1, mas a janela de recepção tem sempre dimensão = 1


    Ficha 6

    Os protocolos da camada de rede:
    • São implementados apenas nos nós terminais que comunicam entre si
    • São implementados quer nos nós terminais, quer nos encaminhadores (routers) através dos quais são enviados os datagramas
    • Os dispositivos onde são implementados dependem do meio de transmissão considerado em cada troço de rede
    • São implementados apenas nos encaminhadores (routers) através dos quais são enviados os datagramas

    Na Internet, a camada de rede baseia-se num mecanismo de:
    • Comutação de pacotes por datagramas
    • Circuitos alugados
    • Comutação de circuitos
    • Comutação de pacotes por circuitos virtuais

    Uma estação ligada à Internet usa o endereço IPv4 193.136.143.26. Nessa estação a máscara de rede configurada tem o valor 255.255.254.0. Qual o endereço da rede a que a estação está ligada?
    • 193.136.142.0/23
    • 193.136.143.0/23
    • 193.136.143.0/24
    • 193.136.142.0/24

    Dos seguintes, qual é um protocolo da camada de rede
    • DNS
    • FTP
    • ICMP
    • CSMA/CD

    Indique a afirmação verdadeira:
    • O protocolo ICMP é responsável por garantir a actualização e consistência das tabelas de expedição
    • Um algoritmo de encaminhamento (routing) toma uma decisão local sobre para onde encaminhar um datagrama que chega a um dado encaminhador
    • O mecanismo de expedição de pacotes (forwarding) é responsável por garantir a actualização e consistência das tabelas de expedição
    • O mecanismo de expedição de pacotes (forwarding) toma uma decisão local sobre para onde encaminhar um datagrama que chega a um dado encaminhador


    Ficha 7

    Uma estação ligada à Internet usa o endereço IPv4 193.136.128.193. Nessa estação a máscara de rede configurada tem o valor 255.255.255.128. Qual o endereço da rede a que a estação está ligada?
    • 193.136.128.128/24
    • 193.136.128.128/25
    • 193.136.128.0/24
    • 193.136.128.0/25

    Quando se especifica o endereço IP de um computador também se especifica uma máscara de rede (“subnet mask”). Esta máscara serve para:
    • decidir se uma mensagem que este computador tem para enviar para um determinado IP de destino deve ser entregue directamente ao destinatário, usando os endereços MAC e o protocolo da camada de ligação de dados, ou se deve ser entregue ao encaminhador (“default gateway”) para a fazer chegar à sub-rede de destino
    • poder saber a que sub-rede pertence o computador e mostrar essa informação ao utilizador
    • esconder os detalhes das várias componentes do endereço IP de todos os outros computadores ligados na sub-rede
    • informar o encaminhador da sub-rede a que o computador está ligado de que este endereço IP está aqui ligado, para o encaminhador anunciar essa informação para a Internet de forma a poder receber mensagens destinadas a este computador

    Indique a afirmação verdadeira:
    • O protocolo ICMP é responsável por garantir a actualização e consistência das tabelas de expedição
    • Um algoritmo de encaminhamento (routing) toma uma decisão local sobre para onde encaminhar um datagrama que chega a um dado encaminhador
    • O mecanismo de expedição de pacotes (forwarding) é responsável por garantir a actualização e consistência das tabelas de expedição
    • Um algoritmo de encaminhamento (routing) é responsável por garantir a actualização e consistência das tabelas de expedição

    No protocolo IPv4 pode ser necessário fragmentar datagramas, porque:
    • diferentes meios de transmissão têm diferentes características, impondo diferentes tamanhos máximos (MTU) aos datagramas que são entregues à camada de ligação de dados. Desta forma, quando um encaminhador tem de enviar um datagrama numa ligação com MTU mais pequeno que o datagrama que recebeu, terá de o fragmentar
    • a qualidade do datagrama original não é suficiente, acabando este por se fragmentar
    • o protocolo da camada de transporte determina em quantos fragmentos deve ser enviado o datagrama
    • fragmentos mais pequenos permitem um envio mais rápido, sendo esta a preferência de aplicações que privilegiam a comunicação em tempo real

    O cabeçalho dos datagramas IPv4 contêm um campo designado “time to live (TTL)”. Este campo serve para indicar:
    • o instante temporal em que o datagrama foi enviado
    • em quantas ligações (hops) o datagrama ainda pode ser enviado antes de ser descartado
    • quantas ligações (hops) o datagrama já percorreu desde a sua origem
    • quantos segundos faltam para o datagrama ser descartado


    Ficha 8

    O protocolo DHCP (Dynamic Host Configuration Protocol) permite
    • descobrir qual é o endereço físico (MAC) que corresponde ao endereço IP especificado
    • descobrir qual é o endereço IP corresponde ao URL especificado
    • alterar o conjunto de endereços IP (pool) disponíveis que pertencem à sub-rede
    • atribuir automaticamente (sem intervenção do utilizador) um endereço IP a um computador

    Considere um computador com endereço IPv4 193.136.143.225. Este computador pretende enviar um datagrama destinado ao endereço IPv4 193.136.143.130. Para qual dos seguintes valores da máscara de rede (“subnet mask”) do computador é que o datagrama é enviado para o encaminhador (“default gateway”)?
    • 255.255.255.192/26
    • 255.255.254.0/23
    • 255.255.255.128/25
    • 255.255.255.0/24

    Considere um datagrama destinado ao endereço IPv4 193.136.143.26. Ao chegar a um encaminhador, estão disponíveis rotas associadas às sub-redes listadas abaixo. Para qual delas será enviado o datagrama?
    • 193.136.0.0/16
    • 193.136.143.0/25
    • 193.136.143.0/24
    • 193.0.0.0/8

    No protocolo IPv6:
    • nunca é necessário efectuar a fragmentação de um datagrama
    • caso um encaminhador receba um datagrama cujo tamanho é superior ao MTU da linha de saída, então esse datagrama é descartado e é devolvida a mensagem ICMPv6 “Packet Too Big”
    • caso um encaminhador receba um datagrama cujo tamanho é superior ao MTU da linha de saída, então esse datagrama é fragmentado pelo encaminhador
    • quando a qualidade de um datagrama não é suficiente ele acabará por se fragmentar

    Um algoritmo de encaminhamento do tipo “vector-distância” faz a escolha de rotas de encaminhamento:
    • usando o algoritmo de Dijkstra
    • usando o algoritmo de Bellman-Ford
    • tendo um conhecimento completo da topologia da rede
    • com base no algoritmo SVD de decomposição em vectores próprios

    Ficha 9

    Ao configurar o endereço IP associado a um computador, deve também ser especificado um “default gateway”, que corresponde:
    • ao endereço do servidor DNS local, que deve ser o primeiro a ser consultado quando se pretende traduzir um nome da camada de aplicação (ex.: www.tecnico.ulisboa.pt) para um endereço IP
    • ao endereço de um encaminhador ligado na mesma sub-rede do computador e que permite enviar pacotes para endereços IP de outras redes
    • a uma máscara de rede, para permitir ao computador saber qual a sub-rede a que pertence
    • ao endereço do servidor DHCP que será usado para o computador poder obter o seu endereço IP de forma automática

    Qual dos seguintes algoritmos de encaminhamento pode sofrer do problema conhecido como “contagem para o infinito”?
    • algoritmo de Dijkstra
    • algoritmo do tipo “vector caminho”
    • algoritmo OSPF
    • algoritmo do tipo “vector distância”

    Relativamente ao protocolo “Routing Information Protocol” (RIP):
    • não permite a utilização de “envenenamento de caminhos inversos”
    • pode ser utilizado em redes de dimensão arbitrária
    • o algoritmo de encaminhamento usado é do tipo “estado da ligação”
    • se a distância para alcançar uma dada sub-rede é de 16 então essa sub-rede é inalcançável

    Relativamente ao protocolo “Border Gateway Protocol” (BGP):
    • é um dos algoritmos de encaminhamento que podem ser adoptados por um sistema autónomo para fazer o encaminhamento no seu interior
    • é usado para garantir a troca de informação de encaminhamento entre sistemas autónomos
    • apenas funciona em redes com um máximo de 15 “saltos” entre as suas 2 sub-redes mais distantes
    • quando um router recebe informação da existência de um conjunto de rotas para uma dada rede de destino escolhe a melhor com base apenas no caminho mais curto

    Para suportar a distribuição de mensagens na Internet usando multicast, pode-se adoptar uma solução usando os seguintes protocolos:
    • DVRMP + PIM
    • MCAST + DVRMP
    • IGMP + PIM
    • IGMP + MLP

    Ficha 10

    Relativamente aos protocolosIPv4 e IPv6:
    • uma possibilidade para interligar encaminhadores IPv6 através de um conjunto de encaminhadores IPv4 consiste em criar um “túnel” atravessando a zona IPv4, sendo os datagramas IPv6 transportados no campo de dados dos datagramas IPv4. Esta solução resolve o problema sem implicar a perda de qualquer tipo de informação dos datagramas originais
    • uma possibilidade para interligar encaminhadores IPv6 através de um conjunto de encaminhadores IPv4 consiste em ter alguns encaminhadores que implementam as duas versões do protocolo (“dual stack”) fazendo a conversão dos cabeçalhos IPv6 em cabeçalhos IPv4. Esta solução resolve o problema sem implicar a perda de qualquer tipo de informação dos datagramas originais
    • as duas versões do protocolo são compatíveis e podem coexistir sem ser necessário qualquer tipo de tratamento especial
    • não podem coexistir as duas versões do protocolo IP

    O que se entende por sistema autónomo (autonomous system – AS):
    • é um grupo de redes IP que possuem uma política própria e "independente" de encaminhamento no seu interior
    • é um sistema que funciona isolado do resto do “mundo”
    • é a parte do sistema nervoso que está relacionada ao controle da vida vegetativa, ou seja, controla funções como a respiração, circulação do sangue, controle de temperatura e digestão
    • é um grupo de redes IP que funcionam sem ligação ao resto da Internet

    Em redes locais Ethernet, o endereço MAC:
    • é composto por 48 bits, com os primeiros 24 bits identificando o fabricante da placa de rede
    • é obtido com a ajuda do DHCP ao ligar o equipamento a uma “nova” rede
    • calcula-se a partir do endereço IP
    • tem uma estrutura hierárquica, com uma conotação geográfica

    Um protocolo faz verificação de erros usando um código de redundância cíclica (CRC), com o polinómio gerador G(x) = x3 + 1. Quando se pretende transmitir a mensagem 11001100, qual é o valor do CRC gerado?
    • 110
    • 0110
    • 101
    • 0101

    Os protocolos de acesso ao meio usando acesso aleatório são vantajosos face aos protocolos de acesso ao meio com alocação dinâmica no seguinte caso:
    • muitas estações ligadas, todas com muitos dados para transmitir
    • nunca; os protocolos mais vantajosos em redes de computadores são sempre os que fazem uma partilha fixa da capacidade do canal de transmissão
    • nunca, pois a possibilidade de existirem colisões exclui a utilização dos protocolos de acesso ao meio usando acesso aleatório
    • muitas estações ligadas, das quais só um número reduzido tem dados para transmitir, em cada instante

    Ficha 11

    Uma rede Ethernet usa o protocolo de controlo de acesso ao meio:
    • CSMA
    • CSMA/CA
    • ALOHA
    • CSMA/CD

    Em redes locais Ethernet (IEEE 802.3):
    • não é possível detectar colisões
    • não é possível ocorrerem colisões devido ao protocolo usado
    • mesmo que ocorra uma colisão, a trama de dados é completamente transmitida (a transmissão não é interrompida)
    • ao detectar uma colisão a estação interrompe a sua transmissão e agenda a respectiva retransmissão usando o algoritmo de recuo binário exponencial

    Em redes locais Wi-Fi (IEEE 802.11):
    • mesmo que seja detectada uma colisão, a trama de dados é completamente transmitida (a transmissão não é interrompida)
    • não é possível detectar colisões
    • não é possível ocorrerem colisões devido ao protocolo usado
    • ao detectar uma colisão a estação interrompe a sua transmissão e agenda a respectiva retransmissão usando o algoritmo de recuo binário exponencial

    Numa rede Ethernet, na camada de ligação de dados podem ser usados comutadores (“switches”, “bridges”). Um comutador:
    • nunca repete os dados que chegam por uma das suas interfaces em todas as outras interfaces, pois há um algoritmo que garante que as tabelas de comutação conhecem os destinos disponíveis e só se envia na interface de destino
    • limita-se a repetir os dados que chegam por uma das suas interfaces em todas as outras interfaces
    • repete os dados que chegam por uma das suas interfaces em todas as outras interfaces, caso não esteja registado na sua tabela de comutação o endereço MAC de destino da mensagem
    • repete os dados que chegam por uma das suas interfaces em todas as outras interfaces, caso não esteja registado na sua tabela de comutação o endereço MAC de origem da mensagem

    Para a construção da “spanning-tree” os comutadores trocam entre si BPDU (“bridge protocol data units”) com as seguintes informações:
    • (root bridge ID; root path cost; sender bridge ID, designated port ID)
    • (root bridge ID; root path cost; receiving bridge ID, blocked port ID);
    • (root bridge ID; root path cost; sender bridge ID, sending port ID)
    • (root bridge ID; root path cost; receiving bridge ID, receiving port ID)

    Exercícios Resolvidos

    OOOooOOOOOooOops

    Spanning Trees

    A necessidade das Spanning Trees surge devido aos problemas causados numa rede com loops físicos. A spanning tree é uma solução para este problema e consiste na criação de uma topologia de rede lógica (diferente da disposição física da rede) que impede que vários packets circulem infinitamente na rede.

    Este mecanismo depende das BPDU (Bridge Protocol Data Unit), pacotes que são enviados pelas bridges (comutadores) que constituem uma dada rede. Estas BPDU's são enviadas pelas bridges para todos os seus portos e é através da comparação das mesmas que se determina qual a melhor topologia lógica a ser adoptada. Uma BPDU é assim constituída por:

    (Root Bridge ID; Root Path Cost; Sender Bridge ID; Sender Port ID)


    Nota: Os ID's de cada bridge correspondem aos MAC addresses das mesmas, no entanto pode-se optar por uma representação simbólica com recurso a números mais baixos, como acontece nos exercícios apresentados.

    É preciso de reconhecer também a existência de 3 tipos de ports:


    Como resolver?

    1. Começa-se por determinar qual a Root Bridge. Por norma é sempre a que tem o ID ou MAC address mais baixo. Como já foi referido acima, marcam-se todos os portos da Root Bridge como Designated Ports (D).
    2. Avaliam-se cada uma das restantes bridges, marcando o Root Port (R) de cada uma. O Root Port será o porto que fornece o caminho de saída com menor custo até à Root Bridge. Em caso de empate entre dois portos com o mesmo custo, comparam-se dois a dois os campos seguintes (Sender Bridge ID ou ainda Sender Port ID, caso o Sender Bridge ID seja igual em ambas as BPDUs) das BPDU's por eles recebidas. O porto que receber a BPDU com menor valor será o Root Port.
    3. Resta marcar os designated ports de cada segmento/aresta da rede. Caso uma dada aresta da rede tenha um computador numa das extremidades, a designated port desse troço de rede é na bridge oposta ao computador. Caso a aresta seja uma ligação entre duas bridges, comparam-se as BPDU's que estas enviam para esse segmento da rede. A BPDU que tenha o primeiro valor mais baixo quando comparando os campos entre as duas BPDUs, é a BPDU enviada pelo designated port desse segmento.
    4. Uma vez que estejam marcados os designated ports de todas as arestas, os portos que sobrarem serão blocked ports.

    Nota: Veja-se que qualquer desempate é feito através da comparação do mesmo campo de 2 BPDU's diferentes, da esquerda para a direita.