1. Broadcast

Propaganda
TARC2 – 2017.1 – Profa. Morganna
EMENTA
1. Broadcast
2. Exemplo
1
TARC2 – 2017.1 – Profa. Morganna
1. Broadcast
Tipos de Endereçamento
● Unicast – é um endereçamento para um único
destino, (ponto-a-ponto).
● Anycast – os dados são entregues ao “melhor”
ou “mais próximo” destino de acordo com o
roteamento da rede.
● Multicast – os dados são entregues para
múltiplos destinatários simultaneamente.
● Broadcast – os dados são enviados para todos
os nós de uma rede.
2
TARC2 – 2017.1 – Profa. Morganna
1. Broadcast
●
●
●
No unicast, há uma associação um-para-um entre o
endereço de origem e endereço destino.
Na broadcast e no multicast, há uma associação umpara-muitos entre endereços de rede e endpoints de rede.
No anycast, há também uma associação um-para-muitos
entre endereços de rede e endpoints de rede, mas
somente um deles é escolhido em todo o tempo dado
para receber a informação de qualquer remetente dado.
3
TARC2 – 2017.1 – Profa. Morganna
1. Broadcast
Comparação dos Diferentes Tipos de Endereçamento
4
TARC2 – 2017.1 – Profa. Morganna
1. Broadcast
CIDR (Classless Inter-Domain Routing)
Uma máscara de rede é usada para separar a parte
correspondente à rede pública, à subrede e aos hosts.
5
TARC2 – 2017.1 – Profa. Morganna
1. Broadcast
Cálculo da Subrede
1) Converte o IP para binário
172.16.0.35 = 10101100.00010000.00000000.00100011
2) Converte a MÁSCARA para binário
255.255.0.0 = 11111111.11111111.00000000.00000000
3) Faz operação AND entre o IP e a máscara
10101100.00010000.00000000.00100011 AND
11111111.11111111.00000000.00000000
------------------------------------------------10101100.00010000.00000000.00000000
4) Converte a subrede para decimal
172.16.0.0
6
TARC2 – 2017.1 – Profa. Morganna
1. Broadcast
Cálculo do Broadcast
1) Converte o IP para binário
172.16.0.35 = 10101100.00010000.00000000.00100011
2) Converte a MÁSCARA para binário
255.255.0.0 = 11111111.11111111.00000000.00000000
3) Faz operação NOT na máscara
00000000.00000000.11111111.11111111
4) Faz operação OR entre o IP e o NOT da máscara
10101100.00010000.00000000.00100011
00000000.00000000.11111111.11111111 OR
-------------------------------------------------10101100.00010000.11111111.11111111
5) Converte broadcast para decimal
172.16.255.255
7
TARC2 – 2017.1 – Profa. Morganna
1. Broadcast
O roteador normalmente não encaminha a
mensagem para a outra subede.
8
TARC2 – 2017.1 – Profa. Morganna
2. Exemplo
Programas
●
Cliente: udpcli02.c
●
Servidor: udpsrv02.c
9
TARC2 – 2017.1 – Profa. Morganna
2. Exemplo
int setsockopt(int sockfd, int level, int optname,
const void *optval, socklen_t optlen);
●
●
●
●
Define opções para o soquete sockfd.
O parâmetro level quando igual a SOL_SOCKET indica que
a interface vai especificar as caracterísiticas do soquete.
O parâmetro optname especifica uma opção do soquete a ser
usada.
 SO_BROADCAST – suporta transmissão de mensagens
broadcast.
 SO_RCVTIMEO – define o valor do timeout para as
operações de entrada.
 Para ver as opções de soquete: “man 7 socket”.
Os parâmetros optval e optlen são usados para passar valores
usados pelo optname especificado.
10
TARC2 – 2017.1 – Profa. Morganna
Exercícios
1. Altere o programa udpcli02.c para mostrar as
mensagens ordenadas pelo número de IP.
2. Como você pode descobrir as máquinas de uma
determinada subrede?
11
TARC2 – 2017.1 – Profa. Morganna
Bibliografia
Código-Fonte dos Programas
www.unpbook.com
Livro-texto
Unix Network Programming. The Sockets Networking API.
W.R. Stevens, B. Fenner e A.M. Rudoff.
Volume 1. Third Edition. Addison Wesley. 2013.
12
Download