17
Curso Profissional Tecnico de Progarmação e Gestão de Sistemas Informáticos Ano 2013/2014 João Campos e Rui Carvalho Módulo7 – Serviços de redes Comenta a imagem!. O IP é equivalente a ao nosso BI ou ao Cartão de Cidadão, neste caso serve para identificar equipamentos (computadores, switchs, routers, impressoras de rede, Smart Phones, etc) ligados a uma rede. O IP identifica univocamente o equipamento, daí que, não possa haver dois IP’s igual na mesma rede. O endereço IP, na versão 4 (IPv4), é um número de 32 bits escrito com quatro octetos representados no formato decimal. Por cada octeto são usados números decimais de 0-255 (total 256) visto que 2 8 =256. A primeira parte do IP identifica a rede onde ele trabalha (a parte mais à esquerda), a segunda parte (a parte mais à direita) identifica um host (pode ser um PC, uma impressora, um router, etc) dentro dessa rede. Existem apenas dois tipos de redes: as redes públicas e as redes privadas. A rede pública, ou Internet, necessita da maior parte dos IP’s, ficando uma pequena gama disponível para as redes privadas. Já vimos que não pode existir dois IP´s iguais numa mesma rede. Então porque é que eu posso ter o IP de um computador 192.168.0.1 em minha casa e o meu vizinho pode ter o mesmo IP

Módulo-6-7-ip-com-sockets

Embed Size (px)

Citation preview

Page 1: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Módulo7 – Serviços de redes

Comenta a imagem!.

O IP é equivalente a ao nosso BI ou ao Cartão de Cidadão, neste caso serve para

identificar equipamentos (computadores, switchs, routers, impressoras de rede, Smart

Phones, etc) ligados a uma rede.

O IP identifica univocamente o equipamento, daí que, não possa haver dois IP’s igual

na mesma rede.

O endereço IP, na versão 4 (IPv4), é um número de 32 bits escrito com quatro octetos

representados no formato decimal.

Por cada octeto são usados números decimais de 0-255 (total 256) visto que 28=256.

A primeira parte do IP identifica a rede onde ele trabalha (a parte mais à esquerda), a segunda

parte (a parte mais à direita) identifica um host (pode ser um PC, uma impressora, um router,

etc) dentro dessa rede.

Existem apenas dois tipos de redes: as redes públicas e as redes privadas.

A rede pública, ou Internet, necessita da maior parte dos IP’s, ficando uma pequena gama

disponível para as redes privadas.

Já vimos que não pode existir dois IP´s iguais numa mesma rede. Então porque é que eu posso

ter o IP de um computador 192.168.0.1 em minha casa e o meu vizinho pode ter o mesmo IP

Page 2: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

num computador de sua casa? A resposta é que ambas são redes privadas e não são a mesma

rede.

Se fizermos um ping www.sapo.pt (que permite enviar um pacote de dados para o servidor

onde está alojado o site do sapo) verificamos que o IP é sempre o mesmo – 213.13.146.140

Já, o nosso IP na rede publica, varia e é atribuído pelo nosso ISP – Internet Service

Provider (empresa com que temos contrato de acesso à Internet). Ele é dinâmico e não á

garantia de que será o mesmo quando desligarmos o router e o voltarmos a ligar.

O espaço do endereço IP foi dividido em 5 classes (classe A/B/C/D/E)

Page 3: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Examinando os primeiros bits de um endereço, o software do IP consegue determinar

rapidamente qual a classe, e logo, a estrutura do endereço.

Classe A

O Primeiro bit do 1º octeto é 0 (zero)

92.0.0.0 – 01011100.00000000.00000000.00000000

Classe B

Primeiros dois bits do 1º octeto são 10 (um, zero)

173.16.10.20 – 10101101.00010000.00001010.00010100

Classe C

Primeiros três bits são do 1º octeto 110 (um, um, zero)

192.168.1.1 – 11000000.10101000.00000001.00000001

Classe D: (endereço multicast):

Primeiros quatro bits do 1º octeto são: 1110 (um, um, um, zero)

224.3.25.1 - 11100000000000110001100100000001 Classe E: (endereço especial reservado)

Primeiros cinco bits do 1º octeto são 11110 (um, um, um, um, zero)

240.1.15.12 – 11110000.00000001.00001111.00001100

A tabela, a seguir, contém o intervalo das classes de endereços IP públicos:

Classe Gama de Endereços Nº de Redes Nº de Hosts

A 1.0.0.0 até 126.0.0.0 126 224 = 16 777 216

B 128.0.0.0 até 191.255.0.0 16384 216 = 65 536

C 192.0.0.0 até 223.255.255.254 2097151 28 = 256

D 224.0.0.0 até 239.255.255.255 -------- Multicast1

E 240.0.0.0 até 247.255.255.254 Uso futuro; atualmente reservada a testes

pela IETF2

A tabela, a seguir, contém o intervalo das classes de endereços IP privados:

Classe Gama de Endereços Nº de Redes Nº de Hosts

A 10.0.0.0 até 10.255.255.255 1 224 = 16 777 214

B 172.16.0.0 até 172.31.255.255 16 216 = 65 534

C 192.168.0.0 até 192.168.255.255 256 28 = 254

Existe uma gama de endereços os 169.254.xxx.xxx que, apesar de ser de classe C,

existe para autoconfiguração do link local, isto é, quando um host receber um IP nesta

gama significa que como está configurado para receber um IP de um Servidor DHCP,

acontece que não o encontra e, por defeito ficou com um IP naquela gama. (É o que

acontece quando nos surge a informação de “rede sem conectividade ou

limitada”

1 Multicast é a entrega de informação para múltiplos destinatários simultaneamente. 2 Sigla em inglês de Internet Engineering Task Force - é uma comunidade internacional ampla e aberta (técnicos, agências,

fabricantes, fornecedores, pesquisadores) preocupada com a evolução da arquitetura da Internet e seu perfeito

funcionamento.

Page 4: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

IP´s que não se devem utilizar

De Até

0.0.0.0 0.255.255.255

127.0.0.0 127.255.255.255

128.0.0.0 128.0.255.255

191.255.0.0 191.255.255.255

192.0.0.0 192.0.0.255

223.255.255.0 223.255.255.255

224.0.0.0 239.255.255.255

240.0.0.0 255.255.255.255

Vantagens:

Permite construir várias redes lógicas através da utilização de uma rede (classe

A, B ou C)

Uma solução para resolver o problema do broadcasting. Dividir a rede em rede

mais pequenas

Utiliza parte dos bits do host para implementar as sub-redes

Permite uma melhor utilização dos endereços, reduzindo o seu “desperdício”!

Desvantagens:

Todas as sub-redes têm o mesmo tamanho, incluindo as que ligam dois routers

(Ainda provoca desperdício de endereços!)

As sub-redes têm de ser contíguas (o router tem de anunciar a sua classe de

rede original)

A tabela seguinte representa a relação entre o número de bits para as redes e para os

hosts que existem para cada classe

Regras para utilizar subnetting:

1- Determinar o número de redes necessárias:

Um (1) para cada sub-rede

Um para cada ligação WAN

2- Determinar o número de máquinas por sub-rede:

Um por cada dispositivo TCP/IP

Um para cada interface do router

3- Baseado nos requisitos anteriores, criar o seguinte:

Page 5: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Uma máscara de sub-rede para toda a rede

Um endereço único para cada sub-rede

Uma gama de endereços IP para os dispositivos de cada sub-rede

Exemplo (Subnetting Class C):

Endereço IP:

Máscara subrede:

1. Quantas sub-redes?

Resposta – para representarmos 192 são usados 2 bits do host (11000000), a resposta é 22 = 4 sub-redes

2. Quantos hosts por sub-rede?

Resposta – Como temos apenas 6 bits (11000000) para o host,

26-2 = 62 hosts

3. Quais são as sub-redes válidas?

Resposta – As sub-redes serão: 0, 64, 128, 192 (256 – 192 = 64).

Links:

http://networking.ringofsaturn.com/IP/subnet.php

http://www.subnetmask.info/

http://www.subnet-calculator.com/ Vamos a um exercício!

Dado o IP com a máscara escolhe de entre as alternativas

abaixo quais são IPs válidos pertencentes à mesma sub-rede (escolhe duas

alternativas):

a. 11.11.11.0 -> Resposta certa

b. 11.11.10.255 -> Resposta certa

c. 11.11.7.1 -> Não pertence à sub-rede 11.11.8.0

d. 11.12.0.1 -> Não pertence à sub-rede 11.11.8.0

e. 11.11.11.255 -> Broadcast da sub-rede 11.11.8.0

Page 6: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Dica para resolver esse exercício de sub-rede:

1. Encontrar, primeiro, a sub-rede com o (IP AND Máscara de sub-

rede). O primeiro IP após a sub-rede é o primeiro IP válido para endereçar hosts

2. Depois veja o valor do último bit da máscara de sub-rede para saber de

quanto em quanto as sub-redes irão variar. Ache a próxima sub-rede

3. O IP anterior à sub-rede calculada no passo anterior é o broadcast e o anterior

ao broadcast é o último IP válido para host

4. Os IPs que estiverem entre o primeiro e o último IPs válidos serão as respostas

Achar a sub-rede com o AND lógico entre o IP e a máscara de

sub-rede .

A máscara logo temos , isto é ficam

O funciona como a multiplicação de binários (0x0=0, 1x0=0, 0x1=0,1x1=1),

portanto o primeiro e o segundo octeto permanecem iguais e o último fica tudo zero.

Somente temos de converter para binário o terceiro octeto e fazer o AND:

Resposta: , portanto a

O primeiro IP após a sub-rede é o primeiro IP válido para endereçar hosts

Depois veja o valor do último bit da máscara de subrede para saber de quanto em

quanto as subredes irão vairar

Page 7: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

A máscara é (considere-se 22bits a contar da esquerda para a

direita) e é igual a portanto

o último bit vale 4 e as sub-redes irão variar de em :

… e assim por diante…

Ache a próxima sub-rede

Se a subrede atual é e elas variam de 4 em 4 a próxima será

(12=8+4)

O IP anterior à sub-rede calculada no passo anterior é o broadcast e o anterior ao

broadcast é o último IP válido para host

O broadcast será

Os IPs que estiverem entre o primeiro e o último IPs válidos serão as respostas

Portanto o primeiro IP de host é o e o último

Portanto as respostas corretas são as letras A e B. As letras C e D não pertencem à mesma subrede e a letra E é o endereço de broadcast dessa sub-rede.

Exercícios:

1 – Um projeto de rede impõe a criação de 1500 redes privadas, cada uma com 50

computadores. Que classe de IP e máscara de rede escolheria para essa rede. Dê um

exemplo.

Page 8: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Servem, também como filtro de informação uma vez que como toda a informação

que chega a um computador vem misturada, elas permitem distinguir essa

informação.

O número é 216 = 65 534 portas

Certamente que já ouviram falar em serviços/aplicações que usam o protocolo TCP

ou UDP.

(camada de transporte) e em traços gerais, em conjunto com a porta e o IP da

máquina, definem como uma determinada informação é transmitida na rede.

Como vimos, numa máquina, existem (teoricamente) que podem

ser usadas pelas mais diversas aplicações/serviços, o (teoricamente) poderíamos ter

65.536 aplicações/serviços distintos a correr em simultâneo na nossa máquina.

Como sabem, o IP identifica a máquina e a porta identifica a aplicação/serviço. Além

das portas TCP temos também (teoricamente).

O TCP é o protocolo

. No estabelecimento de ligação entre

emissor e receptor existe um “pré-acordo” denominado de Three Way Handshake

(SYN, SYN-ACK, ACK).

Page 9: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Esse ficheiro terá de ser mais pequenas ( ), para que

seja viável a sua transferência para outro PC. Recorrendo ao protocolo TCP existe a

garantia que todos os pacotes serão entregues e reordenados do outro lado (uma vez

que podem ir por caminhos diferentes). Além disso, por cada pacote ou conjunto de

pacotes (previamente definido), a máquina de destino confirma que recebeu essa

informação ao emissor e no caso de falha de algum pacote, a máquina de destino

procede ao emissor o pedido de retransmissão do(s) pacote(S) em falta.

Já pensaram se na transmissão do ficheiro do filme ou jogo de (800 MB) faltassem por

exemplo apenas 2 k???? …bem, o receptor simplesmente não iria conseguir abrir esse

ficheiro recebendo provavelmente a mensagem “ficheiro corrompido”.

POP3 - Post Office Protocol (POP3) é um protocolo utilizado no acesso remoto a

uma caixa de correio eletrônico. SMTP - Simple Mail Transfer Protocol (SMTP) é o protocolo padrão para envio

de e-mails através da Internet. SSH - Secure Shell é, ao mesmo tempo, um programa de computador e

um protocolo de rede que permitem a conexão com outro computador

na rede de forma a permitir execução de comandos de uma unidade remota. FTP - File Transfer Protocol, é uma forma bastante rápida e versátil de transferir

arquivos (também conhecidos como ficheiros), sendo uma das mais usadas

na Internet. HTTP - Hypertext Transfer Protocol - Protocolo de Transferência de Hipertexto - é

um protocolo de comunicação (na camada de aplicação segundo o Modelo

OSI) utilizado para sistemas de informação de hipermedia distribuídos e

colaborativos.[1] Seu uso para a obtenção de recursos interligados levou ao

estabelecimento da World Wide Web.

O UDP é um protocolo

No entanto, esse processo de garantia de dados pode ser simplesmente

realizado pela aplicação em si (que usa o protocolo UDP) e não pelo protocolo.

Basicamente, usando UDP, uma máquina emissora envia uma determinada

informação e a máquina receptora recebe essa informação, não existindo qualquer

Page 10: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

confirmação dos pacotes recebidos. Se um pacote se perder não existe normalmente

solicitação de reenvio, simplesmente não existe.

Se estabelecerem uma ligação com um amigo vosso, vão notar que existem muitos

pacotes na transmissão que se perdem…ouvem aquele barulho normal aquando das

transmissões…”bluuup” ou a perda/bloqueio de imagem por alguns ms (milisegundos),

o que é perfeitamente aceitável. Não teria muita lógica que a meio dessa transmissão

a vossa aplicação parasse o streaming e fosse solicitar ao receptor pacotes

perdidos…simplesmente começávamos uma conversa e a meio iríamos receber

informações provavelmente daquilo que falamos no início.

Não é muito normal encontrar aplicações que usem exclusivamente o protocolo UDP,

usando o exemplo do streaming existe sempre o recurso ao TCP para trocar

informações de controlo, libertando o UDP apenas para o envio da informação.

Uma forma é através da linha de comandos (Windows), usando o comando

numa das seguinte formas:

Page 11: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Actualmente existem algumas tecnologias que permitem a comunicação entre

máquinas.

.

Exemplo 1 - Imagina que precisas de desenvolver uma aplicação servidora que

funcione como uma “sala” de chat.

Na prática essa aplicação irá receber ligações dos clientes (numa determinada

porta) e posteriormente, se um cliente enviar uma mensagem, o servidor envia essa

mensagem para todos os outros clientes.

Exemplo 2 - Imagina que tens instalado um sensor de temperatura numa máquina e

uma aplicação servidora que controla esse sensor, dando informações sobre o estado

do tempo.

A aplicação cliente, poderá ligar-se remotamente à aplicação servidora e obter

também essa informação, tudo isto é possível de desenvolver usando ,

Existem principalmente dois tipos de sockets:

Socket_Stream (Socket TCP);

SOCK_DGRAM (Socket UDP).

Page 12: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Cada endereço tem um identificador único composto pelo

e pelo processo. Este

identificador de porta é usado para mapear dados recebidos pela máquina para

processos (aplicações) específicos.

O processo de comunicação no modo orientado à ligação (técnica TCP) ocorre da

seguinte forma: o servidor é colocado numa determinada porta e aguarda por

ligações a essa porta.

O cliente deve saber previamente qual o nome ou IP do servidor e o respectiva porta

onde o servidor foi colocado à espera de ligações. Então o cliente solicita uma

ligação ao servidor/porta conforme demonstra a figura seguinte.

Se nenhum problema ocorrer, o servidor aceita a ligação gerando um socket numa

porta livre do lado do servidor, criando assim um canal de comunicação entre o

cliente e o servidor.

De referir que a porta original fica livre para poder receber outros pedidos de ligação.

A figura seguinte demonstra esse mesmo canal de comunicação.

Tipicamente o comportamento do servidor é ficar em loop (em ciclo), aguardando

novas ligações e “gerando” sockets para atender as solicitações de clientes.

Page 13: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Page 14: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Page 15: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Page 16: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho

Page 17: Módulo-6-7-ip-com-sockets

Curso Profissional

Tecnico de Progarmação e Gestão de Sistemas Informáticos

Ano 2013/2014

João Campos e Rui Carvalho