0% acharam este documento útil (0 voto)
682 visualizações317 páginas

Livro Faculdade

Enviado por

Vanessa GARCEZ
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
682 visualizações317 páginas

Livro Faculdade

Enviado por

Vanessa GARCEZ
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

03/03/2021 lddkls211_red_sis_dis

REDES E SISTEMAS DISTRIBUÍDOS   


Imprimir

Renato Cividini Matthiesen

0
Deseja ouvir este material?

Ver anotações
Áudio disponível no material digital.

CONHECENDO A DISCIPLINA 

Caro aluno, o conhecimento em redes e sistemas distribuídos pode ser


considerado vital para um pro ssional de Tecnologia da Informação (TI). O que se
caracterizava por uma disciplina da área computacional no passado acabou por se
tornar uma área essencial para, praticamente, todas as atividades pro ssionais e

sociais. A interligação de sistemas em redes forjou o modelo de sistemas


globalmente distribuídos da atualidade e que vêm se expandindo com o conceito
de Internet of Things (IoT) ou Internet das Coisas, que amplia, ainda mais, a área de
redes e sistemas distribuídos.

Atualmente, o cenário social faz uso intenso de redes de computadores e


aplicações distribuídas, o que leva o pro ssional especializado em redes a atuar
em diversos segmentos. Seja na con guração de sistemas para redes locais em
uma empresa, seja em uma residência, na atuação em infraestrutura de redes
metropolitanas ou desenvolvendo projetos e sistemas de maior abrangência

dentro de instâncias da rede mundial de computadores, as redes oportunizam


atividades técnicas em uma escala ampla.

Para o pro ssional de TI, as aplicações do conhecimento da disciplina são diversas


e abarcam estudos e planejamentos de infraestrutura física, implantação de
sistemas de redes, con guração de servidores e serviços, assim como a

programação de aplicações distribuídas.

Neste livro, serão trabalhadas competências essenciais para entendimento e


re exões a respeito das tecnologias em rede. As competências transitam entre
reconhecer conceitos, analisar cenários, planejar, implantar e programar soluções

computacionais distribuídas.

Na unidade 1, Redes de computadores e seus protocolos, você reconhecerá


conceitos e tecnologias de redes, arquiteturas de operação, topologias, hardware e

infraestrutura de rede. Você, ainda, verá modelos de referência e protocolos de

[Link] 1/2
03/03/2021 lddkls211_red_sis_dis

comunicação em redes caracterizados por suas funções e exempli cados com


práticas operacionais em redes.

Na unidade 2, Arquitetura e tecnologia de redes, serão abordados a avaliação e

0
o planejamento de redes e sub-redes com de nição de endereçamento IP (Internet

Protocol), sistemas de nomes de domínios e padrões de transmissão de dados pela

Ver anotações
tecnologia Ethernet. A gerência do desempenho de redes, a con guração e a

contabilização também serão abordadas. Esse é um capítulo técnico e com


aplicações práticas que o ajudarão a se preparar para a gestão de redes.

Na unidade 3, Sistemas distribuídos, será apresentado o conceito de sistemas


distribuídos, a sua classi cação e alguns exemplos. Você conhecerá a

funcionalidade de processos e threads, processos cliente-servidor, comunicação


entre processos e sockets, bem como verá aspectos de projetos de sistemas

distribuídos com escalabilidade, heterogeneidade, segurança e tolerância a falhas. 

Na unidade 4, Virtualização e Conteinerização, serão vistos conceitos e práticas

de virtualização e conteinerização em sistemas distribuídos, simulando sistemas


com a ferramenta Docker para monitoramento e aplicações distribuídas.

A disciplina de Redes e Sistemas Distribuídos traz um conteúdo altamente


importante e de aplicações imediatas em praticamente todas as disciplinas de

cursos de tecnologia, bem como deverá servir de suporte para o desenvolvimento


de atividades pro ssionais, independentemente da área de especialização

escolhida por você.

Seja muito bem-vindo ao mundo das redes e dos sistemas distribuídos.

[Link] 2/2
03/03/2021 lddkls211_red_sis_dis

REDES E SISTEMAS DISTRIBUÍDOS   


Imprimir

Renato Cividini Matthiesen

0
Deseja ouvir este material?

Ver anotações
Áudio disponível no material digital.

CONHECENDO A DISCIPLINA 

Caro aluno, o conhecimento em redes e sistemas distribuídos pode ser


considerado vital para um pro ssional de Tecnologia da Informação (TI). O que se
caracterizava por uma disciplina da área computacional no passado acabou por se
tornar uma área essencial para, praticamente, todas as atividades pro ssionais e

sociais. A interligação de sistemas em redes forjou o modelo de sistemas


globalmente distribuídos da atualidade e que vêm se expandindo com o conceito
de Internet of Things (IoT) ou Internet das Coisas, que amplia, ainda mais, a área de
redes e sistemas distribuídos.

Atualmente, o cenário social faz uso intenso de redes de computadores e


aplicações distribuídas, o que leva o pro ssional especializado em redes a atuar
em diversos segmentos. Seja na con guração de sistemas para redes locais em
uma empresa, seja em uma residência, na atuação em infraestrutura de redes
metropolitanas ou desenvolvendo projetos e sistemas de maior abrangência

dentro de instâncias da rede mundial de computadores, as redes oportunizam


atividades técnicas em uma escala ampla.

Para o pro ssional de TI, as aplicações do conhecimento da disciplina são diversas


e abarcam estudos e planejamentos de infraestrutura física, implantação de
sistemas de redes, con guração de servidores e serviços, assim como a

programação de aplicações distribuídas.

Neste livro, serão trabalhadas competências essenciais para entendimento e


re exões a respeito das tecnologias em rede. As competências transitam entre
reconhecer conceitos, analisar cenários, planejar, implantar e programar soluções

computacionais distribuídas.

Na unidade 1, Redes de computadores e seus protocolos, você reconhecerá


conceitos e tecnologias de redes, arquiteturas de operação, topologias, hardware e

infraestrutura de rede. Você, ainda, verá modelos de referência e protocolos de

[Link] 1/2
03/03/2021 lddkls211_red_sis_dis

comunicação em redes caracterizados por suas funções e exempli cados com


práticas operacionais em redes.

Na unidade 2, Arquitetura e tecnologia de redes, serão abordados a avaliação e

0
o planejamento de redes e sub-redes com de nição de endereçamento IP (Internet

Protocol), sistemas de nomes de domínios e padrões de transmissão de dados pela

Ver anotações
tecnologia Ethernet. A gerência do desempenho de redes, a con guração e a

contabilização também serão abordadas. Esse é um capítulo técnico e com


aplicações práticas que o ajudarão a se preparar para a gestão de redes.

Na unidade 3, Sistemas distribuídos, será apresentado o conceito de sistemas


distribuídos, a sua classi cação e alguns exemplos. Você conhecerá a

funcionalidade de processos e threads, processos cliente-servidor, comunicação


entre processos e sockets, bem como verá aspectos de projetos de sistemas

distribuídos com escalabilidade, heterogeneidade, segurança e tolerância a falhas. 

Na unidade 4, Virtualização e Conteinerização, serão vistos conceitos e práticas

de virtualização e conteinerização em sistemas distribuídos, simulando sistemas


com a ferramenta Docker para monitoramento e aplicações distribuídas.

A disciplina de Redes e Sistemas Distribuídos traz um conteúdo altamente


importante e de aplicações imediatas em praticamente todas as disciplinas de

cursos de tecnologia, bem como deverá servir de suporte para o desenvolvimento


de atividades pro ssionais, independentemente da área de especialização

escolhida por você.

Seja muito bem-vindo ao mundo das redes e dos sistemas distribuídos.

[Link] 2/2
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

INTRODUÇÃO A REDES DE COMPUTADORES

0
Renato Cividini Matthiesen

Ver anotações
REDES DE COMPUTADORES E INTERNET
Para a entender a grande importância dos sistemas conectados via redes de computadores
para o nosso cotidiano, é necessário conhecer os conceitos histórios e as tecnologias utilizadas
para implantação e con guração de uma rede de computadores.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

CONVITE AO ESTUDO

Caro aluno, seja muito bem-vindo à primeira unidade da disciplina de redes e


sistemas distribuídos: Redes de computadores e seus protocolos. Esta é uma
unidade de ensino que tem por objetivo posicionar o aluno junto aos conceitos de
redes, modelos de referência e protocolos de redes de computadores. O adequado
estudo desta unidade fará com que a construção do conhecimento em redes siga
para abordagens técnicas e práticas embasadas em tecnologias de comunicação

de dados e estruturas de redes de computadores, bem como levará o pro ssional

de redes à construção de soluções computacionais distribuídas.

[Link] 1/33
03/03/2021 lddkls211_red_sis_dis

A primeira seção, Introdução às redes de computadores, abordará uma


introdução às redes, apresentando seus conceitos históricos, sua importância

dentro do momento tecnológico e social fortemente suportado pelas redes de


computadores e a arquitetura cliente-servidor como estrutura-chave para gestão

0
de sistemas de redes. 

Ver anotações
Em seguida, a segunda seção, O modelo de referência OSI e TCP/IP, apresentará

o modelo de referência ISO/OSI (International Organization for Standardization /


Open System Interconnection) e TCP/IP (Transmission Control Protocol / Internet
Protocol) como modelos de referência que classi cam e organizam os protocolos
de rede em camadas virtuais que regem toda a comunicação em redes e garantem
a interoperabilidade de sistemas computacionais distribuídos.

Para nalizar, a terceira seção, Protocolos de redes, trará à baila a organização

dos diversos protocolos de rede em suas respectivas camadas de aplicação,


transporte, inter-rede e host de rede ou física dentro do modelo TPC/IP com

exemplos e aplicações práticas.

Com os conhecimentos assimilados desta unidade, você será capaz de se

posicionar quanto à origem e ao histórico das redes de computadores, conhecer o


padrão de organização das tecnologias de redes abarcadas pela operação dos

protocolos de redes, que são responsáveis pela comunicação e pela padronização

dos serviços de redes em diferentes estruturas computacionais.

Desejo a você um ótimo estudo.

PRATICAR PARA APRENDER

Caro aluno, esta seção traz, para você, conceitos históricos sobre redes de

computadores e internet, informações de comunicação de dados, classi cação e


topologia de redes, além de dispositivos de hardware e de infraestrutura de rede.

Assim, você irá conhecer as tecnologias da informação utilizadas para implantação


e con guração de uma rede local de computadores, seja para utilização em

ambiente doméstico ou pro ssional.

Você já parou, em algum momento, para re etir a respeito do seu dia a dia e das
tecnologias em rede? Pois bem. Aqui, tentaremos instigá-lo a entender a grande

importância dos sistemas conectados via redes de computadores para o nosso

cotidiano.

[Link] 2/33
03/03/2021 lddkls211_red_sis_dis

Você, provavelmente, utiliza seu smartphone com um aplicativo de despertar que

está interligado a um aplicativo de agenda, que coleta informações pessoais e

pro ssionais e lhe posiciona em relação as suas atividades diárias. Depois do café

da manhã, os exercícios são acompanhados por sistemas de monitoramento da

0
saúde corporal; já a ida ao trabalho tem como trilha sonora as notícias de portais

Ver anotações
de informação, que lhe posicionam sobre acontecimentos do mundo todo. No

trabalho, o e-mail, os sistemas integrados de gestão e os aplicativos de mensagens

instantâneas lhe oferecem suporte para as atividades pro ssionais, no entanto,


esses são apenas alguns exemplos que evidenciam o uso de redes e de sistemas

distribuídos em nosso cotidiano. Não dá para imaginar como seria a nossa vida

contemporânea sem dispositivos e aplicações conectadas em rede, não é?

Vivemos em uma sociedade em rede altamente dinâmica e conectada, que faz uso de
tecnologias de comunicação em, praticamente, todas as atividades do dia a dia, mesmo em
situações mais isoladas e primárias de produção. As tecnologias e as redes suportam os
negócios e as atividades pessoais de uma era pós-conhecimento, da qual ainda não
identi camos o nome, mas que deverá ter a conectividade e a computação ubíqua como
referências.

Uma empresa de CoWorking está procurando uma consultoria de Tecnologia da

Informação (TI) para implantação de novos espaços de trabalho. Esta empresa


deverá operar com locação de espaços de trabalho para diferentes objetivos,

oferecendo um ambiente com mesas e computadores do tipo desktop ligados ao

cabeamento físico, em pontos de rede cabeada nas mesas, e rede wireless,

disponível em espaços de reuniões e convivência. O ambiente deverá oferecer

serviços de conectividade para comunicação via rede de computadores com


cabeamento estruturado para troca de mensagens de texto, de voz e de vídeos,

em conformidade com as necessidades dos clientes e das empresas que prestam

serviços.

A empresa terá estações de trabalho distribuídas em seus espaços (planta baixa),


formando uma LAN (Local Area Network) interconectada à servidores de acesso e

dados e equipamentos de distribuição e controle dos dados na rede. A LAN

também será interconectada a um sistema terceirizado de conexão com a internet.

O layout apresentado a seguir, na Figura 1.1, mostra-nos a distribuição dos locais


de trabalho, de convivência e de reuniões para guiar o pro ssional de TI a fazer

uma primeira análise a respeito da disposição dos hosts de rede de computadores

e sua topologia necessária. 

[Link] 3/33
03/03/2021 lddkls211_red_sis_dis

Figura 1.1 | Exemplo de layout (planta baixa) para instalação de infraestrutura de rede

0
Ver anotações
Fonte: Flickr.

Para completar os requisitos da rede, adicionado ao layout apresentado pela


planta baixa, temos o descritivo do local dos dispositivos conforme segue:

Sala 1: deverá haver estrutura para comportar notebooks por meio de um

ponto de rede cabeada para ligação de um roteador wireless.

Sala 2: deverá haver um switch para comportar a ligação de 4 estações de

trabalho via cabos.

Sala 3 e Sala 4: deverá haver um switch servindo as 6 estações de trabalho e 2

impressoras por meio de ligações por cabo.

Sala 5: deverá haver um switch para a ligação do servidor de rede, impressora e

7 estações de trabalho.

Ambiente compartilhado 6: deverá haver ligações via cabeamento para 6

estações de trabalho por meio de um hub ou switch e mais um roteador


wireless para conexão sem o de notebooks e smartphones.

Sua equipe de consultoria foi contratada para fazer uma proposta inicial da
topologia de rede e do levantamento de hardware de rede, necessários para

implantação desse sistema, considerando a estrutura da rede de computadores


cabeada para os desktops e notebooks, que se encontram nas mesas de trabalho e

dispositivos de Access Points (switches e roteadores wireless). Para isso, a


consultoria deverá apresentar as seguintes propostas: um estudo da topologia da

[Link] 4/33
03/03/2021 lddkls211_red_sis_dis

rede, utilizando-se um software simulador de rede, e uma planilha com os


equipamentos e cabeamento estruturado da rede de computadores, a m de

descrever o hardware necessário para implantar o projeto.

0
DICAS 

Para elaborar o estudo da infraestrutura de rede lógica, utilize o Packet

Ver anotações
Tracer. Esse software permite simular a estrutura de rede e sua
topologia com os dispositivos: desktop; notebooks; servidores e nós de
redes, também conhecido como nodos de rede (hubs, switches,

routers); e serviços de rede.

Para elaborar a planilha de hardware, utilize uma planilha eletrônica. 

Deverá ser gerado um relatório como documento nal sobre a

consultoria realizada, o Relatório do Projeto de redes: topologia e


hardware de rede.

Neste cenário tecnológico atual, saber utilizar, analisar, projetar, programar e


manter sistemas distribuídos em rede é essencial e abre um conjunto de
oportunidades pro ssionais. Frente a isso, vamos, juntos, descobrir e construir um

conhecimento fantástico sobre redes de computadores.

CONCEITO-CHAVE

As redes de computadores tornaram-se uma estrutura fundamental para as

atividades de pesquisa nas universidades, para as atividades pro ssionais, dentro


e fora das empresas, e para o ser humano, em suas atividades sociais de forma
geral.

Para Tanenbaum (2011), o modelo de trabalho realizado por um grande


número de computadores separados e interconectados é chamado de

redes de computadores.

[Link] 5/33
03/03/2021 lddkls211_red_sis_dis

O conceito de ligar dois ou mais computadores é originário da década de 1960,


quando já havia um sistema de telefonia disponível e o desenvolvimento dos

computadores tomava força com a construção de computadores de menor porte,


chamados, na época, de minicomputadores. Conforme relata Forouzan (2010), a

0
Advanced Research Projects Agency (Arpa), do Departamento de Defesa dos

Ver anotações
Estados Unidos (DoD), tinha interesse em descobrir uma maneira de conectar
computadores para que pesquisadores pudessem compartilhar suas descobertas.
Nesse cenário, pesquisadores do Massachusetts Institute of Technology (MIT)

iniciaram estudos de interligação de computadores em uma rede, o que deu


origem a Advanced Research Project Agency Network (ARPAnet), que, mais tarde,

tornou-se a internet. A ARPAnet entrou em operação em 1969, quando foram


ligados os primeiros 4 IMPs (Interface Message Processors), nome dado aos
computadores ligados em rede, hoje, chamados de host ou de nós de rede.

Essa rede foi instalada na universidade da Califórnia, mas, em 1970, outras redes

começaram a ser interligadas devido às vantagens de se fazer pesquisas mediante


a um sistema computacional interconectado. Houve um intenso investimento do
governo americano, por meio do DoD, no desenvolvimento dessa rede, pois havia

interesse em se criar uma infraestrutura de rede que trouxesse independência aos


sistemas de rede mediante a um cenário de Guerra Fria.

Rapidamente, em menos de 10 anos, havia, dentro de um novo modelo de


comunicação por computadores, diversas interconexões de rede entre

universidades americanas e agências governamentais do mesmo país e com


acessos na Europa. Em 1980, havia mais de 100.000 computadores interligados em

rede, conforme relata Siqueira (2007).

As pesquisas sobre redes seguiram com grande interesse de universidades,

principalmente nos EUA, que utilizam as recém-criadas estruturas em rede para


compartilhar informações e ampliar os estudos do próprio conceito de rede,

levando à sua rápida evolução.

Conforme Laudon e Laudon (2014), a utilização de múltiplos computadores


conectados por uma rede de comunicações para processamento é

denominada processamento distribuído.

[Link] 6/33
03/03/2021 lddkls211_red_sis_dis

Esse novo modelo de processamento de dados foi ampliado, no nal dos anos
1980, com o uso da internet dentro das universidades e dos centros de pesquisas
no Brasil. Já na segunda metade da década de 1990, os provedores de serviços de

conexão oportunizaram o acesso à internet para empresas e residências, o que

0
revolucionou a história da humanidade.

Ver anotações
Na atualidade, as redes convergentes representam um importante conceito, pois
elas envolvem a interconexão e a convivência dos sistemas e dos protocolos das

redes locais com as redes de telecomunicações, unindo aplicações, como VoIP


(Voice over Internet Protocol ou voz sobre IP), sistemas de mensagens e

comunicação instantânea, como o WhatsApp, e transmissão de streaming, como a


Net ix — todos interconectados pelas redes de computadores e internet. A seguir,
veremos uma linha do tempo de eventos importantes relacionados às redes de

computadores e à internet.

Fonte: adaptada do autor.

O início do novo milênio foi marcado pelo uso intenso das redes de computadores,

potencializadas pela internet como base para a criação do e-business, que


promoveram uma nova revolução nos modelos de negócio das empresas. Kurose e

Ross (2013, p. 1) concebem a internet como “o maior sistema de engenharia já


criado pela humanidade”. Elevando ainda mais a importância das redes e da
internet, Siqueira (2007) a apresenta como a grande locomotiva tecnológica para o

século XIX.

ARQUITETURA CLIENTE-SERVIDOR
Considerando a visão de Forouzan (2010) de que uma rede é um conjunto de

dispositivos (normalmente conhecido como nós) conectados por links de


comunicação, um host pode ser um computador, uma impressora ou outro
dispositivo de envio e/ou recepção de dados que estejam conectados a outros

hosts das redes de computadores, que podem ser implementadas de diferentes


formas, com arquiteturas que variam, e de nidas conforme a natureza da
aplicação que se deseja desenvolver. 

Laudon e Laudon (2014) sustentam que as redes de computadores e a internet

baseiam-se em três tecnologias principais: 

A computação na arquitetura cliente-servidor.

[Link] 7/33
03/03/2021 lddkls211_red_sis_dis

A comutação de pacotes, como modelo de transmissão de dados.

E os protocolos de rede, como padrões de comunicação.

Na arquitetura cliente/servidor, existe um modelo de comunicação distribuída

0
baseado em redes de computadores com servidores provendo acessos e controle

Ver anotações
aos sistemas e clientes, chamados de estações de trabalho ou workstations, que se
conectam aos servidores para acessos aos recursos de rede e dados. Conforme

relatam Loper, Silva e Lopes (2019) o papel bem de nido do servidor é manter a
aplicação com seus dados e aplicações à disposição dos clientes. Nessa

arquitetura, podemos trazer, como exemplo, um usuário jogando um game em


rede pelo seu computador, por meio de uma conexão com o servidor de jogos.

[Link] 8/33
03/03/2021 lddkls211_red_sis_dis

COMUNICAÇÃO DE DADOS (TIPOS E MEIOS DE TRANSMISSÃO, SINAIS,


CÓDIGOS, MODO DE OPERAÇÃO)
A comunicação de dados é realizada por meio da transmissão de sinais analógicos

0
e/ou digitais. Segundo Tanenbaum (2011), os sinais analógicos são ondas

Ver anotações
eletromagnéticas que assumem valores contínuos ao longo do tempo e são

representados por uma onda senoidal com quanti cação de amplitude, que

representa a intensidade (altura) dos sinais elétricos (medida em volts), de


frequência, que de ne o número de vezes que o sinal completa um ciclo dentro

de um determinado período (medida em hertz), e de fase, que de ne o formato da

onda senoidal (medida em graus ou radianos). A Figura 1.2 a seguir ilustra uma
representação do sinal analógico.

Figura 1.2 | Exemplos de representação de sinal analógico na forma de onda senoidal

Fonte: Stallings (2016, p. 76).

O sinal senoidal pode ser digitalizado e representado por uma sequência de dígitos

binários (1s e 0s). Sua representação é dada ao longo do tempo e pela amplitude

do sinal. Os sinais digitais possuem maior imunidade à degradação por

interferência ou ruídos quando comparados aos sinais analógicos (Roberts, 2009).


Além disso, os sinais digitais podem transmitir maior quantidade de informações.

A Figura 1.3 nos traz a representação de um sinal digital representado em dois

dígitos, 0s e 1s, em uma sequência de 8 bits.

Figura 1.3 | Exemplos de representação de sinal digital

[Link] 9/33
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: Comer (2016, p. 90).

Os sinais são transmitidos em um sistema de comunicação por meio de dois

meios: guiados e não guiados.

Guiados: transportam sinais elétricos através de cabos metálicos (coaxial ou de

par trançado) ou luminosos através de cabos ópticos ( bra óptica).

Não guiados: transportam sinais via espectro eletromagnético sem os, por
meio de sistemas de rádio, micro-ondas e satélites, e sistemas de ondas no

infravermelho.

Quanto aos modos de transmissão de sinais, Kurose e Ross (2011) de nem que a

transmissão pode ocorrer de três maneiras distintas:

Simplex: a comunicação é realizada por meio de um único sentido, sendo um


canal utilizado para emitir a mensagem e outro para receber a mensagem. Um

exemplo de comunicação simplex ocorre na transmissão de sinais de TV ou

rádio.

Half-duplex: a comunicação é realizada em um único canal, porém apenas em


um sentido da comunicação por vez (hora transmite, hora recebe). Um

exemplo de comunicação half-duplex ocorre em um hub de rede.

Full-duplex: a comunicação dá-se por meio de um único canal com capacidade


de transmitir e receber as mensagens de forma simultânea, por meio de

técnicas de multiplexação de sinais. Um exemplo de comunicação full-duplex

ocorre em um switch de rede.

A seguir, na Figura 1.4, veremos uma representação da transmissão com sinais em


simplex, half-duplex e full-duplex.

Figura 1.4 | Tipos de transmissão de sinais

[Link] 10/33
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

[Link] 11/33
03/03/2021 lddkls211_red_sis_dis

CLASSIFICAÇÃO E TOPOLOGIA DE REDES 


As redes de computadores podem ser classi cadas por diferentes abordagens:

pela tecnologia de transmissão, pela escala (abrangência geográ ca), pela forma de

0
compartilhamento dos dados, pela topologia e também pela forma de acesso ao

Ver anotações
conteúdo. Vamos conhecer algumas características dessas classi cações?

TECNOLOGIA DE TRANSMISSÃO OU TIPO DE CONEXÃO

Considerando a tecnologia de transmissão ou tipo de conexão, conforme de nido

por Forouzan (2010), a referência é a forma como a informação é distribuída e


pode ser classi cada em:

Broadcasting: ou links de difusão ou, ainda, multiponto. Uma conexão existe

entre mais de dois hosts que compartilham um único link, compartilhando,

assim, o canal de comunicação. Trata-se de um tipo de transmissão realizado


por rádio ou TV. Em uma rede, um Access Point ou roteador que controla uma

rede sem o utilizará essa técnica para distribuição de sinal digital no meio

eletromagnético, mas de forma controlada.

Peert-to-peer: ou links ponto a ponto fornece um link dedicado entre dois


dispositivos, e toda a capacidade do link é exclusiva para a comunicação. Um

exemplo dessa transmissão ocorre na utilização de um sistema de torrent para

compartilhamento direto de arquivo de música ou vídeo.

ESCALA 

Considerando a escala, as redes podem ser classi cadas pelo tamanho, ou seja,

pela abrangência geográ ca de hosts. O Quadro 1.1 apresenta, de forma sintética,

informações sobre a classi cação de redes de computadores por escala, conforme


Tanenbaum (2011).

Quadro 1.1 | Classi cação de redes de computadores por escala

DISTÂNCIA 
LOCAL EXEMPLO
(PROCESSADOR)

0,1 m Circuitos Máquina de uxo de dados

1m Sistema Multicomputador

[Link] 12/33
03/03/2021 lddkls211_red_sis_dis

DISTÂNCIA 
LOCAL EXEMPLO
(PROCESSADOR)

10 m, 100 m a 1 Sala, prédio, Rede Local (LAN)

0
Km campus

Ver anotações
10 Km Cidade Rede Metropolitana (MAN)

100 Km a 1.000 País a continente Rede Geogra camente Distribuída

Km (WAN)

10.000 Km Planeta Internet (WAN ou GAN)

Fonte: adaptado de Tanenbaum (2011).

Na classi cação por escala, as redes de computadores podem ser:

PAN (Personal Area Network) ou redes pessoais. São redes de pequena

abrangência geográ ca que permitem que dispositivos se comuniquem dentro


de um raio de 10 metros. Um exemplo comum é uma rede sem o que conecta

um computador com seus periféricos (impressora, fone de ouvido, mouse) por

meio do padrão IEEE 802.15 ou Bluetooth.

LAN (Local Area Network) ou redes locais. É uma rede particular que opera
dentro de um espaço físico limitado, como uma residência, um escritório ou

uma empresa conhecida, também, como SOHO (Small O ce Home O ce). As

LANs são muito usadas para conectar computadores pessoais e aparelhos


eletrônicos, a m de permitir que compartilhem recursos (como impressoras) e

troquem informações. Exemplos de padrões para esse tipo de rede são IEEE

802.3 ou Ethernet e IEEE 802.11 ou Wi- .

MAN (Metropolitan Area Network) ou redes metropolitanas. São redes de


comunicação que abrangem uma área maior, como uma cidade. O exemplo

mais conhecido de MAN é a rede de televisão a cabo disponível em muitas

cidades. Esses sistemas cresceram a partir de antigos sistemas de antenas


comunitárias usadas em áreas com fraca recepção do sinal de televisão. Essas

redes podem utilizar links dedicados com o ou sem o ou, ainda, sistemas de

telefonia com padrões Long Term Evolution (LTE) para 4G (Quarta Geração) ou

o IEEE 802.16.

[Link] 13/33
03/03/2021 lddkls211_red_sis_dis

WAN (Wide Area Network) ou redes grade abrangência, continentais ou

global. Essa rede abrange uma grande área geográ ca; com frequência, um
país ou continente. A WAN é semelhante a uma grande LAN cabeada, mas

existem algumas diferenças importantes que vão além dos extensos cabos de

0
interconexão. A GAN (Global Area Network) é uma classi cação de WAN a nível

Ver anotações
global feita e aceita por parte dos autores de literaturas da área de redes de

computadores. Essas redes utilizam padrões LTE (4G) para comunicação

externa e outros.

SAN (Storage Área network) ou redes de armazenamento. São redes criadas


mais recentemente e formadas por dispositivos computacionais para

armazenamento de grandes volumes de dados, utilizadas em cloud computing,

por exemplo.

A Figura 1.5 nos mostra a estrutura de uma Local Area Network (LAN) ou rede local
com seus dispositivos e interconexões.

[Link] 14/33
03/03/2021 lddkls211_red_sis_dis

Figura 1.5 | Exemplo de uma rede local

0
Ver anotações
Fonte: Shutterstock.

COMPARTILHAMENTO DE INFORMAÇÕES

Considerando o compartilhamento de informações, a referência é a forma como


os dados são distribuídos pela rede, que pode ser classi cada como:

Cliente/servidor: onde existem servidores provendo acessos, controle e dados

a sistemas e clientes (estações de trabalho), que fazem uso de informações

oferecidas pelos servidores.

Ponto a ponto: onde existe o compartilhamento direto entre dois hosts.

Além disso, há formas híbridas de compartilhamento de dados em uma rede, onde


parte da comunicação é realizada ponto a ponto, porém controlada por servidores.

ACESSO

Considerando a classi cação por acesso a sistemas, as redes podem assumir

abrangência interna, externa e global.

Intranet: é uma rede privada e interna em uma organização, com acessos

restritos à usuários e dispositivos homologados.

Extranet: é uma rede que abrange sites corporativos com informações

internas e acessos geogra camente externos. A internet como rede global de

computadores é uma estrutura de extranet com acesso abrangente.

TOPOLOGIA 

[Link] 15/33
03/03/2021 lddkls211_red_sis_dis

Considerando a topologia, a classi cação das redes refere-se à forma física em que

os hosts de rede são interconectados, e a informação pode uir de acordo com

essa estrutura topológica, podendo ser: barramento, malha, estrela, anel, árvore e
híbrida. A arquitetura híbrida faz a mescla de diferentes formas de topologias

0
padrão.

Ver anotações

[Link] 16/33
03/03/2021 lddkls211_red_sis_dis

1. Topologia em malha: apresenta uma ligação com links redundantes, em

que cada host possui um link dedicado com os outros hosts. Trata-se de uma

rede interessante, pois oferece melhores performances e segurança, mas

quanto à implementação, é muito complexa e pouco utilizada. Nessa

0
topologia, a vantagem é ter um link direto entre cada host, já a sua principal

Ver anotações
desvantagem é a complexidade das conexões. Exemplos podem ser vistos em
interligações entre switches de rede, que são menos utilizadas na atualidade.

A Figura 1.6 apresenta um modelo ilustrativo de topologia de rede em malha

Figura 1.6 | Topologia de rede em malha

Fonte: elaborada pelo autor.

2.  Topologia em barramento: trata-se de um modelo de ligação física de


hosts em uma rede de computadores cujos dispositivos são ligados em um
sistema multiponto, por meio de um cabo de rede que atua como link

principal, chamado de backbone. Nessa topologia para redes locais, a

vantagem econômica é a utilização de um único cabo para ligação dos hosts,

porém essa ligação também é vista como desvantagem, uma vez que a

interrupção desse cabo único representa a paralização total da rede. Esse


modelo de conexão foi comum nos primeiros sistemas de redes de

computadores, porém deixou de ser utilizado para redes locais. Um exemplo

em uso atual é a ligação de acesso para internet cabeada em residências,

oferecida pela operadora de serviços de internet. A gura 1.7 apresenta um

modelo ilustrativo de topologia de rede em barramento.

Figura 1.7 | Topologia de rede em barramento

[Link] 17/33
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

3.  Topologia em anel: é um modelo em que cada dispositivo tem uma

conexão direta e dedicada (ponto a ponto) com outros dois hosts, de forma

que o conjunto de hosts forme um anel físico de hosts interconectados por

enlaces de comunicação. Quando um host recebe um sinal destinado a outro,

seu repetidor regenera os dados e encaminha-os para o destino. 

Essa topologia foi implantada em redes conhecidas como Token Ring. Sua principal

vantagem é a facilidade de instalação, já a desvantagem é que os dados são

transmitidos em uma única direção. A Figura 1.8 apresenta um modelo ilustrativo

de topologia de rede em anel.

Figura 1.8 | Topologia de rede em anel

Fonte: elaborada pelo autor.

[Link] 18/33
03/03/2021 lddkls211_red_sis_dis

4.  Topologia em árvore: é uma topologia em hierarquia em que hosts estão

organizados abaixo de dispositivos de rede, conforme rami cações de

elementos, e utilizada, por exemplo, para ligação de dispositivos

repetidores/gerenciadores de rede. A vantagem desse tipo de topologia é a

0
organização da estrutura de dispositivos, o controle de hosts e o

Ver anotações
gerenciamento da rede. Como desvantagem, existe a necessidade de se
prover sistemas redundantes para que a rede não seja prejudicada quanto a

falhas em dispositivos. A Figura 1.9 apresenta um modelo ilustrativo de

topologia de rede em árvore.

[Link] 19/33
03/03/2021 lddkls211_red_sis_dis

Figura 1.9 | Topologia de rede em árvore

0
Ver anotações
Fonte: elaborada pelo autor.

5.  Topologia em estrela: é uma topologia em que cada host tem um link

direto (ponto a ponto) dedicado apenas com o concentrador/controlador de


rede, que pode ser um hub, switch ou roteador. Os hosts são controlados

pelos dispositivos concentradores, o que representa um modelo mais seguro

de conexão e gestão de dados em rede. Essa topologia é amplamente

utilizada em redes locais e sua vantagem principal é a centralização de

conexões em um dispositivo de controle, que pode gerenciar todas as

conexões. A desvantagem é dada quando há problema no dispositivo central,


o que é tratado com redundância, juntamente a outros dispositivos, para que

a rede não seja paralisada. A Figura 1.10 apresenta um modelo ilustrativo de

topologia de rede em estrela. 

Figura 1.10 | Topologia de rede em estrela

[Link] 20/33
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

[Link] 21/33
03/03/2021 lddkls211_red_sis_dis

HARDWARE E INFRAESTRUTURA DE REDE


As redes de computadores são formadas por hardwares e softwares especí cos

que operacionalizam a transmissão e o controle das informações transmitidas em

0
uma rede. Entre os principais dispositivos, podemos citar as placas de rede ou NIC

Ver anotações
(Network Interface Card), os cabos, switches, roteadores, patch panels, racks,

servidores e estações de trabalho. A seguir, apresentamos alguns desses

dispositivos de hardware com mais detalhes.

PLACA DE REDE
Nomeada como NIC (Network Interface Card), representa o elemento de

comunicação de entrada e saída de dados para um dispositivo computacional, que

o caracterizará como host, conforme de ne Tanenbaum (2011). 

A Figura 1.11 apresenta três tipos de interfaces de rede; a primeira para rede

cabeada e as duas seguintes para redes wireless.

Figura 1.11 | Exemplos de placas de redes

Fonte: elaborada pelo autor.

ASSIMILE 

NIC ou Network Interface Card é o nome dado à placa de rede ou interface

de rede responsável pela interface de entrada e saída de dados de rede em

um dispositivo computacional. Ela acomoda um endereço físico de rede

chamado MAC (Media Access Control), atribuído de forma única pelo seu

fabricante com um conjunto de seis números hexadecimais

([Link]), e será con gurada com um endereço de rede IP


(Internet Protocol).

CABEAMENTO ESTRUTURADO

Conjunto de equipamentos e cabos para suporte e interligação de dispositivos de

rede de computadores. Nesse contexto, estão associados os racks de servidores e


de passagem de cabos, os dispositivos de concentração e gestão de comunicação

[Link] 22/33
03/03/2021 lddkls211_red_sis_dis

como repetidores, hubs, switches, roteadores e dispositivos complementares,

como caixas de passagens, condutores, patch panels, conectores e cabos em geral.

A seguir, apresentaremos alguns dos principais cabos para redes de

computadores.

0
Cabo coaxial: cabo com condutor interno (mina) circundado por um condutor

Ver anotações
externo (malha). Possui maior largura de banda, utilizado para backbone, CATV,

link em serviços de telecomunicações e internet; apresenta melhor imunidade


a ruído que o par trançado sem blindagem; é mais barato que o par trançado

blindado e mais caro que o par trançado sem blindagem. Para redes locais,
utiliza-se um cabo de 50 Ω, já para CATV, um cabo de 75 Ω.

Cabo de par trançado: cabo com dois ou quatro pares de os enrolados em

espiral dois a dois, de forma a reduzir o ruído e manter as propriedades

elétricas do meio ao longo de todo o seu comprimento. Ele possui certa


imunidade a ruídos devido a uma técnica chamada Cancelamento (informação

duplicada no segundo o do par com a polaridade invertida: um par realiza a

transmissão (TD) e outro a recepção (RD). Os cabos Shielded Twisted Pair (STP)

possuem uma blindagem para proteção contra ruídos, enquanto cabos

Unshielded Twisted Pair (UTP) não possuem isolamento completo. Além disso,
há um limite de dois dispositivos por cabo e tamanho de 100 metros por

segmento, bem como padrões estabelecidos, como o Fast Ethernet em redes


de 100 Mbps, Gigabit Ethernet em redes 1000BaseT, 10 Gigabit Ethernet em

redes de 10gBaseT, entre outros.

A Figura 1.12 traz exemplos de cabos UTP e STP para veri cação de material de

isolamento.

Figura 1.12 | Exemplo de cabo de rede de par trançado nas categorias Cabo UTP (à esquerda) e cabo
STP (à direita)

Fonte: elaborada pelo autor.

Cabo óptico: chamado de bra óptica, realiza a transmissão por sinal de luz

codi cado, na frequência do infravermelho, em um lamento de sílica ou

plástico 24. Esse tipo de cabo possui total imunidade a ruído eletromagnético e

[Link] 23/33
03/03/2021 lddkls211_red_sis_dis

menor taxa de atenuação. Utiliza-se duas bras: uma para transmissão e outra

para recepção. Esses cabos são classi cados como monomodos ou multimodos
e dimensionados em distância, em conformidade com um conjunto de

requisitos técnicos. A Figura 1.13 apresenta exemplos de cabos de rede.

0
Ver anotações
Figura 1.13 | Exemplos de cabos de rede (coaxial, par-trançado e óptico)

Fonte: elaborada pelo autor.

SERVIDOR DE REDE

Computadores categorizados como minicomputadores ou mainframes ou, ainda,

microcomputadores com maior poder de processamento e armazenamento de


dados, que suportam um sistema operacional de rede para controle e gestão do

sistema de redes.

IOT (INTERNET OF THINGS)

Dispositivos diversos que possuem conexão com a rede de computadores e com a


internet. Considere que um host é considerado um dispositivo de hardware com

interface e endereço de rede. Dessa forma, qualquer tipo de equipamento

eletrônico na atualidade pode ter algum tipo de conexão com uma rede de

computadores.

SAIBA MAIS 

IoT (Internet of Things) ou, em português, Internet das Coisas é um conceito

em ascensão que considera que dispositivos diversos podem fazer parte de

um sistema computacional interconectado por uma rede de computadores.

No contexto de redes de computadores, empresas de conectividade já


oferecem soluções completas para gestão desses dispositivos que já fazem

parte das redes e deverão, ainda, ter incremento signi cativo nos próximos

anos. É importante um pro ssional de redes e de sistemas distribuídos

entender que sistemas domésticos, industriais e de gerenciamento podem

receber um volume muito grande de dados de sensores instalados em

máquinas e equipamentos industriais, carros e eletrodomésticos

espalhados pelos departamentos da empresa e mesmo no corpo humano.

[Link] 24/33
03/03/2021 lddkls211_red_sis_dis

REFLITA

O volume de hosts, como elemento de uma rede de computadores, deverá

ser imensamente acrescido nos próximos anos devido à tendência de

conectar qualquer dispositivo em ambientes computacionais em rede,

0
como sustenta a IoT (Internet of Things) ou Internet das Coisas. Conforme

previsão de Diamandis e Kotler (2018) para o ano de 2020, haverá mais de

Ver anotações
50 bilhões de dispositivos ou coisas conectadas à internet e mais de 10

trilhões de sensores em 2030, o que dá origem a um novo conceito: a


computação in nita.

[Link] 25/33
03/03/2021 lddkls211_red_sis_dis

SWITCH

Dispositivo concentrador que opera nas camadas de Enlace e Rede do modelo de

referência Open System Interconnection (OSI), responsável pela concentração e

0
segmentação de dados da rede com base em endereços MAC (Media Access

Ver anotações
Controle) de cada NIC. Além disso, é utilizado para conectar equipamentos que
compõem uma LAN a uma topologia física em estrela, enviar os quadros de dados
somente para a porta de destino do quadro, garantir velocidade por porta e, ainda,

criar VLANs (Virtual LANs e segmentação entre as portas do switch). Vale destacar

que roteadores e switches que operam na camada de rede fazem segmentação de

broadcast. A Figura 1.14 apresenta um exemplo de switch de rede.

Figura 1.14 | Switch de rede

Fonte: Shutterstock.

ROUTER OU ROTEADOR

É um dispositivo concentrador ou ponte que opera na camada de Rede do modelo

de referência OSI. Ele tem a capacidade de interligar com duas ou mais redes

diferentes, analisar datagramas produzidos pelos protocolos de alto nível (TCP/IP),


trabalhar com o endereço lógico do host, ou seja, com o endereço IP e oferecer

ferramentas de roteamento, gerenciamento de rede e segurança de dados com

sistemas de mapeamento e con guração de portas lógicas, criptogra a e ltragem

de pacotes. A Figura 1.15 apresenta dois modelos de roteadores de rede, sendo

um para redes cabeadas (à esquerda) e outro para redes wireless (à direita).

Figura 1.15 | Exemplos de roteadores de rede (roteador de rede cabeada e roteador wireless )

[Link] 26/33
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: Shutterstock.

[Link] 27/33
03/03/2021 lddkls211_red_sis_dis

EXEMPLIFICANDO 

Conhecendo a ferramenta Cisco Paket Tracer

O Packet Tracer é um software muito interessante que nos permite

0
planejar, testar e ajustar as redes de computadores conforme as

Ver anotações
necessidades e a disponibilidade de equipamentos e tecnologias. Para

entender a potencialidade desse software, suas características e o

funcionamento dos equipamentos de redes de computadores, observe um

exemplo na Figura 1.16 e crie um primeiro projeto, simples, para um


departamento administrativo de uma pequena empresa. Escolha os

dispositivos de rede, arraste-os para a área de trabalho do software, em

seguida, clique duas vezes no dispositivo e explore as características de

cada dispositivo de rede. Por m, você verá como o sistema é interessante

ao trazer as características reais de cada equipamento e as possibilidades

de simulação da rede.

Figura 1.16 | Exemplo de topologia no Packet Tracer

Fonte: elaborada pelo autor.

Nesse exemplo, foram utilizados os seguintes dispositivos para compor

uma rede de computadores simples de um pequeno escritório


administrativo: um servidor de rede, um switch 24 portas, uma impressora,

três estações de trabalho desktops, um roteador wireless e três

smartphones. Naturalmente, o volume de estações de trabalho e


smartphones pode ser acrescido na topologia conforme as necessidades e
capacidades dos switches e roteadores disponíveis no Packet Tracer.

[Link] 28/33
03/03/2021 lddkls211_red_sis_dis

Nesta seção, foram apresentadas informações para identi cação da tecnologia de

redes de computadores por meio de um breve histórico de redes e da internet,

que, juntas, suportam, praticamente, todas as aplicações da atualidade,

considerando sua natureza distribuída. Além disso, tivemos contato com a

0
arquitetura cliente-servidor como modelo de implementação e gestão da maior

Ver anotações
parte das estruturas de redes de computadores, vimos os três tipos de

comunicação de sinais e, em seguida, observamos as diferentes classi cações das

redes. Analisamos, também, as topologias de redes e pudemos observar que há

uma diversidade de possibilidades de arquiteturas de conexões e que o padrão de

topologia em estrela é o principal modelo para reses locais. Para nalizar a

unidade, zemos uma análise dos principais hardwares de rede.

PESQUISE MAIS 

Um livro de referência de redes é Redes de computadores e a internet, de

James Kurose e Keith Ross.

KUROSE, J. F.; ROSS, K. W. Redes de computadores e a internet: uma

abordagem top-down. 6. ed. São Paulo: Pearson Education do Brasil, 2013.

(Disponível em: Biblioteca Virtual 3.0 Universitária.)

As redes sem o representam um importante assunto no contexto de redes

de computadores e podem ser estudadas na seguinte obra de Alexandre

Moraes: 

MORAES, A. F. Redes sem Fio – instalação, con guração e segurança.

São Paul: Érica. 2010. (Disponível na Biblioteca Virtual em Minha Biblioteca.)

TELECO. Teleco: inteligência em telecomunicações. 2020. 

No site o cial da Cisco, empresa de referência em soluções de rede, é

possível conhecer dispositivos como roteadores e switches disponíveis no

mercado e que podem ser utilizados em projetos de rede. Essas

informações estão disponíveis em: 

CISCO. Roteadores. [s.d.].

CISCO. Switches. [s.d.]. 

[Link] 29/33
03/03/2021 lddkls211_red_sis_dis

FAÇA A VALER A PENA


Questão 1

Redes de computadores representam um recurso presente e necessário para a

0
operação e gestão de atividades pessoais e pro ssionais, com presença quase que

Ver anotações
ubíqua nos ambientes tecnológicos da atualidade. São estruturas que podem ser

diferenciadas e classi cadas conforme tamanho, ou seja, abrangência geográ ca e,

assim, caracterizadas com serviços e protocolos especí cos para sua operação.

Assinale a alternativa que apresenta o acrônimo de uma classi cação de rede de

computadores que abrange uma grande área geográ ca, com frequência, um país

ou continente. Podem ser conectadas por os, como no caso de uma empresa com

liais em diferentes cidades.

a.  PAN. 

b.  LAN.

c.  MAN. 

d.  WAN.

e.  GAN

Questão 2

A topologia de uma rede de computadores refere-se à forma física em que os

enlaces de comunicação são organizados, bem como apresenta a arquitetura da

rede, assim como os caminhos físicos que a transmissão terá como base para ser

operacionalizada.

A seguir, assinale a alternativa correta, que apresenta a topologia de rede de


computadores em que um host de rede é conectado com um cabo ou por meio de

um enlace wireless a um dispositivo central de controle, que pode ser um switch


ou um roteador, e que também tem a possibilidade de segmentação da rede para
que a comunicação ocorra diretamente entre o host de origem e o host de destino.

a.  Malha.

b.  Barramento.

c.  Anel.

d.  Árvore.

e.  Estrela. 

[Link] 30/33
03/03/2021 lddkls211_red_sis_dis

Questão 3

As redes de computadores, originárias da década de 1960, rapidamente se


desenvolveram e criaram uma nova estrutura juntamente aos computadores

pessoais. É possível considerar que os modelos de negócio da empresa, na

0
atualidade, dependem das redes de computadores para provisão de infraestrutura

Ver anotações
do atual e-business, que a Internet das Coisas está levando para qualquer
dispositivo ou lugar. Dessa forma, a computação e a conectividade passaram a ter
uma característica de ubíquas ou onipresentes, principalmente nas empresas, e

apenas sua ausência passa a ser percebida.

Com relação à computação e às redes, bem como sua presença em todos os


ambientes pro ssionais, são feitas as seguintes a rmações:

A computação pessoal e a computação móvel representada pelos smartphones


e pelas redes de computadores fazem parte da estrutura das empresas e da

vida da maioria das pessoas, bem como suportam a maioria de suas atividades
pro ssionais.

A computação móvel suportada pelas redes de telecomunicações e pelas redes

de computadores associadas ao termo de redes convergentes incrementa o


conceito de computação ubíqua, pois as tecnologias de computação sem o
auxiliam nessa mobilidade.

A computação pervasiva de ne que os meios de computação estarão


distribuídos em todos os lugares de forma imperceptível.

Com o computador conectado em todos os ambientes, uma questão que

deixará de ser preocupante é a segurança. Os novos sistemas não deverão


permitir que ocorram invasões ou ataques em busca de coleta e alteração de

dados digitalizados e distribuídos nos dispositivos em rede.

É correto o que se a rma:

a. I, II e III, apenas.

b. I, II e IV, apenas.

c. I e II, apenas.

d. II e III, apenas.

e. I, II, III e IV.  

[Link] 31/33
03/03/2021 lddkls211_red_sis_dis

REFERÊNCIAS

COMER, D. E. Redes de computadores e internet. Porto Alegre: Bookman, 2016.

Disponível em: [Link] Acesso em: 11 nov. 2020.

0
DEITEL, H. M.; DEITEL, P. J.; CHOFFNES, D. R. Sistemas operacionais. 3. ed. São

Paulo: Pearson Prantice Hall, 2005.

Ver anotações
DIAMANDIS, P. H.; KOTLER, S. Bold: oportunidades exponenciais: um manual
prático para transformar os maiores problemas do mundo nas maiores

oportunidades de negócio. Rio de Janeiro: Alta Books, 2018.

FOROUZAN, B. A. Comunicação de dados e redes de computadores. 4. ed. Porto


Alegre: AMGH, 2010.

KUROSE, J. F.; ROSS, K. W. Redes de computadores e a internet: uma abordagem


top-down. 6. ed. São Paulo: Pearson Education do Brasil, 2013.

LAUDON, K. Sistemas de informações gerenciais. 11. ed. São Paulo: Pearson

Prentice Hall, 2014.

[Link] 32/33
03/03/2021 lddkls211_red_sis_dis

LOPER, A. A.; SILVA, N. S.; LOPES, G. M. B. Projeto de redes e sistemas

distribuídos. Londrina: Editora e Distribuidora Educacional S.A., 2019. 

MEDEIROS, J. C. O. Princípios de telecomunicações: teoria e prática. 5. ed. São

0
Paulo: Érica, 2015. 

Ver anotações
ROBERTS, M. J. Fundamentos de sinais e Sistemas. Porto Alegre: AMGH Editora,
2009.

STALLINGS, W. Redes e sistemas de comunicação de dados. Rio de Janeiro:

Elsevier, 2016. Disponível em: [Link] Acesso em: 11 nov. 2020

TANENBAUM, A. S. Redes de computadores. 5. ed. São Paulo : Pearson Prentice

Hall, 2011. 

[Link] 33/33
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

INTRODUÇÃO A REDES DE COMPUTADORES

0
Renato Cividini Matthiesen

Ver anotações
REDES DE COMPUTADORES E INTERNET
Para a entender a grande importância dos sistemas conectados via redes de computadores
para o nosso cotidiano, é necessário conhecer os conceitos históricos e as tecnologias utilizadas
para implantação e con guração de uma rede de computadores.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR


RELATÓRIO DO PROJETO DE REDES: TOPOLOGIA E HARDWARE DE
REDE
Conforme solicitação, foi analisado o layout de CoWorking da empresa solicitante

do trabalho de consultoria. Diante disso, foi proposto o desenvolvimento de um


estudo da topologia, que pode variar conforme necessidades e ajustes, para se

construir a solução de conectividade via rede de computadores.

[Link] 1/5
03/03/2021 lddkls211_red_sis_dis

O Packet Tracer, software livre oferecido pela Cisco, foi utilizado para a ilustração
básica da topologia em formato de estrela, necessário para a estruturação do

sistema de redes de computadores via cabeamento estruturado. Conforme


solicitado pelo cliente, nessa primeira parte do projeto, foi estruturado o

0
cabeamento estruturado para a rede somado a pontos de acesso para os

Ver anotações
dispositivos de comunicação wireless, que serão instalados em outro momento.

Foram considerados pontos de acesso para estações de trabalho desktops e


notebooks e mais pontos para Access Point para o sistema wireless. De forma
sintética, os cabos serão lançados abaixo de piso elevado, de forma a enviarem os

lances de cabos para uma Consolidation Point, que abrigará os Patch panels e
switches, a m de que possam servir, de forma centralizada, de ponto de
consolidação, bem como abrigar switches gerenciáveis, monitorados e controlados
via servidor. Considerando a distância dos equipamentos, os enlaces podem ser

instalados com cabeamento metálico, utilizando-se cabos de par trançado do tipo


Cat6. 

Um estudo sobre a topologia da rede segue conforme desenho abaixo,


apresentado para ser avaliado. Lembre-se de que os testes e as simulações de

tipos de equipamentos, modelos e estrutura podem variar, e o que se apresenta é


uma das soluções possíveis para a topologia da rede. Recomenda-se que a equipe

faça simulações diversas com a ferramenta Packet Tracer para veri car os
melhores equipamentos e as disposições da topologia em rede.

Figura 1.17 | Simulação de topologia de rede

Fonte: elaborada pelo autor.

A seguir, segue uma breve descrição dos dispositivos que farão parte da rede,

reservando-se espaços para que os modelos e as marcas sejam adequadamente

pesquisados e escolhidos pela equipe de consultoria para posterior apresentação

[Link] 2/5
03/03/2021 lddkls211_red_sis_dis

ao cliente. A consultoria pode, também, apresentar mais de uma opção de

equipamentos e valores para que o cliente tenha oportunidade de analisar

orçamentos e as características de cada equipamento para a solução solicitada.

0
Quadro 1.2 | Dispositivos de rede

Ver anotações
Equipamento Tipo Modelo Qtd Finalidade

Servidor de Servidor Modelo 2 Servidor de dados e de acesso.

rede X,
empresa

Estações de Desktop Modelo 40 Estação de trabalho xa.

trabalho X,

empresa
X

Cabo de rede CAT 6 Modelo 2000 interligação dos desktops e

X, roteadores wireless.

empresa

Conector RJ45 Modelo 140 Instalação em cabos.


X,

empresa

Tomadas Modelo 50 Instalação de terminais nas

outlet RJ45 X, estações de trabalho e ambiente.


empresa

Switch 24 Modelo 5 Interligação dos desktops e

portas X, roteador wireless com o servidor

empresa de dados.
X

[Link] 3/5
03/03/2021 lddkls211_red_sis_dis

Equipamento Tipo Modelo Qtd Finalidade

Patch Panel 24 Modelo 2 Organização de cabos de rede para

portas X, ligação com os pontos

0
empresa estruturados da rede e o switch.

Ver anotações
X

Roteador IEEE Modelo 2 Distribuir o sinal wireless.


Wireless 802.11 X,

ac empresa

Impressora Laser Modelo 3 Impressão de documentos.

X,

empresa
X

Fonte: elaborado pelo autor.

AVANÇANDO NA PRÁTICA

REDES SEM FIO (WIRELESS) DENTRO DE AMBIENTES CORPORATIVOS


As redes LANs (Local Area Networks) ou sem o (wireless) tornaram-se um recurso

importante dentro das organizações. Além de oferecer mobilidade para com os

dispositivos físicos de rede, como notebooks e smartphones, as pessoas, em geral,


acabam por ter maior produtividade pro ssional, pois conseguem acessar

sistemas e informações necessárias para a execução do seu trabalho, o que,

normalmente, aumenta a produtividade.

Para oferecer um ambiente com disponibilidade de sinal de rede wireless, é


solicitado que o pro ssional responsável pela gestão de TI de uma organização

desenvolva um relatório com informações técnicas a respeito de dispositivos Wi- ,


como as tecnologias de redes sem o que podem ser utilizadas em uma LAN.
Nesse momento, o objetivo não é descrever as características dos protocolos de

redes sem o e sim apresentar um exemplo de topologia descrita pelo Packet


Tracer de uma WLAN (Wireless LAN). O relatório será chamado de Relatório do
Projeto de redes: análise de hardware wireless e deverá estar acompanhado de
um desenho simples da topologia da WLAN, utilizando-se a ferramenta Packet
Tracer.

RESOLUÇÃO 

[Link] 4/5
03/03/2021 lddkls211_red_sis_dis

As redes wireless são um recurso importante para melhorar a mobilidade e a

produtividade dentro de ambientes corporativos. A implantação de sistemas


que ofereçam acesso wireless em redes locais pode contar com investimentos

0
relativamente pequenos mediante a ganhos de produtividade. Implantar
Access Points dentro de uma rede local é tarefa que aumenta a capacidade da

Ver anotações
rede e a mobilidade de pro ssionais. A instalação de um ou mais Access Points

ou roteadores sem o precisa levar em consideração a velocidade oferecida, o


número de pontos de acesso (estações de trabalho), assim como questões de
con guração de segurança dentro dos próprios Access Points. A seguir, na

Figura 1.18, veremos um breve descritivo de topologia de rede planejada via


software Packet Tracer que pode ser instalada em um ambiente corporativo.

Figura 1.18 | Simulação (parcial) de topologia de rede wireless

Fonte: elaborada pelo autor.

[Link] 5/5
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

O MODELO DE REFERÊNCIA OSI E TCP/IP

0
Renato Cividini Matthiesen

Ver anotações
O MODELO DE REFERÊNCIA E OS PROTOCOLOS DE REDES DE COMPUTADORES
Apresentação do modelo de referência ISO/OSI e TCP/IP como modelos de referência que
classi cam e organizam os protocolos de rede em camadas virtuais que regem toda a
comunicação em redes e garantem a interoperabilidade de sistemas computacionais
distribuídos.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

PRATICAR PARA APRENDER

Caro aluno, esta seção trará a você informações importantes a respeito da


organização dos protocolos e serviços de comunicação em redes de computadores
dentro de uma estrutura em camadas chamada de modelo de referência.

Você será apresentado ao modelo de referência International Organization for


Standardization/Open Systems Interconnection (ISO/OSI), que está estruturado em
um conjunto de sete camadas hierárquicas que alocam os protocolos de

comunicação conforme sua operação na rede. Em seguida, você conhecerá uma


arquitetura que traz um conjunto de protocolos utilizados na estrutura de redes e

da internet chamado de Transmission Control Protocol/Internet Protocol (TCP/IP),

que, apesar do nome, não representa apenas dois protocolos e sim um conjunto

[Link] 1/16
03/03/2021 lddkls211_red_sis_dis

de quatro camadas que, a exemplo do modelo OSI, também alocam os protocolos


de rede de computadores pertinentes a cada nível de referência aos serviços de

rede.

0
Com essas informações, você será capaz de organizar o conhecimento sobre os

protocolos de rede e serviços de rede de forma a serem independentes, ou seja,

Ver anotações
que promovam a interoperabilidade entre diferentes sistemas de hardware e

software dentro do cenário das redes de computadores.

Você poderá compreender que o conceito de encapsulamento é utilizado em um

sistema de redes de computadores de forma que um computador, com um


hardware especí co, com seu sistema operacional também especí co, possa se
comunicar com outro hardware e sistema operacional diferentes em um sistema
de rede, pois os dados que trafegam entre as diferentes camadas de rede recebem

cabeçalhos com dados adicionais que os preparam para adequada interpretação


nos níveis superiores ou inferiores e, assim, podem ser transmitidos dentro de um

ambiente tecnologicamente heterogêneo.

Você foi contratado como consultor para avaliar um cenário de tecnologia de redes

de computadores, propor uma breve explicação sobre a organização e a utilização


de protocolos de rede para uma empresa e conduzir os seus principais gestores de

tecnologia a buscarem investimentos na área tecnológica para absorção de

Internet of Things (IoT) ou Internet das Coisas em seus sistemas industriais.

A empresa que contratou sua consultoria desenvolve projetos de automação


industrial em diversas áreas de produção e controle de suas linhas de produção e

está buscando soluções de conectividade de sensoriamento de atividades de


produção mediante emergente conceito de IoT, que permite que sensores diversos

sejam instalados em dispositivos também diversos.

Seu trabalho consiste em gerar um relatório chamado Relatório do projeto de

redes: análise de protocolos para elucidar e conduzir investimentos em tecnologias


emergentes que contribuam com a automação de processos e o enriquecimento

de sistemas de Business Intelligence (BI) com informações mais detalhadas e


precisas sobre as linhas de produção da indústria em questão. Esse relatório deve

trazer a descrição das camadas do modelo de referência TCP/IP com as suas

devidas funções, que serão operacionalizadas pelos protocolos de rede.

[Link] 2/16
03/03/2021 lddkls211_red_sis_dis

O estudo de modelos de referência em camadas levará o pro ssional a compreender e


vivenciar o conceito de independência de tecnologias de hardware e software dentro de
sistemas de redes de computadores. Sua correta compreensão, facilitará uma organização
didática e prática dos diversos protocolos de comunicação de sistemas em redes.

0
CONCEITO-CHAVE

Ver anotações
Caro aluno, vamos iniciar nossos estudos sobre o modelo de referência e os

protocolos de redes de computadores. Tais estudos são fundamentais para o


entendimento de como os diversos dispositivos e sistemas se comunicam em uma

rede de computadores, como se dá essa troca de informações e como os serviços

e as aplicações são oferecidos em uma rede de computadores.

Padrões de comunicação são de extrema importância quanto à transmissão de


dados entre computadores e sistemas em uma rede de computadores,

principalmente quando vemos a quantidade e a diversidade de dispositivos e

sistemas conectados à internet hoje. Antes da criação de um modelo de referência,

quando uma empresa desejava desenvolver uma solução de computação em rede,


ela precisava construir um sistema de informação baseado no conjunto de

hardware, software, redes, dados e serviços, e todos baseados em tecnologias


homogêneas, ou seja, era preciso que os computadores, os sistemas operacionais,

os cabos e as aplicações, por exemplo, utilizassem tecnologias padronizadas entre

os diferentes hosts (computadores) conectados a uma rede.

Com a evolução da tecnologia e o aumento de dispositivos de um sistema de

informação, houve a necessidade de se desenvolver um modelo que possibilitasse

que diferentes tecnologias interoperassem dentro de uma rede de computadores,

o que exigiu que as tecnologias de rede fossem divididas em camadas ou níveis e


organizadas em um modelo de referência. Nesse cenário, a ISO normatizou um

modelo de camadas de protocolos chamado OSI, que se tornou o modelo de

referência ISO/OSI para os sistemas de redes de computadores, sobretudo para

organização e interoperação dos protocolos de rede. Esse modelo foi


originalmente organizado em sete camadas (aplicação, apresentação, sessão,

transporte, rede, enlace e física) com funções bem de nidas, conforme sua

nomenclatura. Conforme a rmam Kurose e Ross (2013, p. 36-37), cada protocolo

de rede pertence a uma das camadas do modelo, e uma camada de protocolo


pode ser executada em softwares, hardware ou em uma combinação de ambos. A

Figura 1.19 apresentada a seguir nos mostra a estrutura de camadas do modelo

OSI.

[Link] 3/16
03/03/2021 lddkls211_red_sis_dis

Figura 1.19 | Modelo OSI

0
Ver anotações
Fonte: elaborada pelo autor.

De acordo com Tanenbaum (2011), as funções das camadas são as seguintes:

Camada de aplicação: camada mais próxima do usuário em que ocorre a

comunicação; responsável por operacionalizar os sistemas de


informação/aplicativos, de nindo como ocorre a comunicação entre esses

sistemas e os usuários e como as informações devem ser transmitidas e

recebidas via protocolos existentes. Um exemplo de protocolo dessa camada é

o Hyper Text Transfer Protocol (HTTP), utilizado para sistemas baseados em


hipertexto no universo da World Wide Web (WWW) e acessado via navegadores

(browsers).

 Camada de apresentação: responsável por de nir a apresentação e a

formatação dos dados. Essa camada tem por objetivo a compreensão dos
dados, considerando a sintaxe e a semântica das informações transmitidas

pela rede, direcionando os dados para aplicações nais na camada de


aplicação.

Camada de sessão: essa camada permite que os usuários, em diferentes hosts

ou em uma instância de navegador, como software de aplicação, estabeleçam


sessões de comunicação entre as aplicações.

 Camada de transporte: essa camada tem como função básica aceitar dados
da camada acima, dividi-los em unidades menores e determinar o tipo de

serviço a ser executado com um protocolo orientado à conexão ou com um


protocolo não orientado à conexão. O Transmission Control Protocol (TCP) e o
User Datagram Protocol (UDP) são exemplos de protocolos dessa camada.

[Link] 4/16
03/03/2021 lddkls211_red_sis_dis

 Camada de rede: essa camada tem como objetivo controlar as operações da


sub-rede, identi cando e gerenciando a maneira como os pacotes de dados

são roteados do host de origem até o host de destino e realizando, também, o


endereçamento lógico dos hosts de rede. Um exemplo de protocolo dessa

0
camada é o Internet Protocol (IP).

Ver anotações
Camada de enlace: essa camada tem como tarefa principal transformar um

canal de comunicação em uma linha de dados livre de erros. Alguns exemplos


de protocolos dessa camada são o IEEE 802.3 para redes cabeadas e o IEEE
802.11 para redes wireless, Asynchronous Transfer Mode (ATM) e Frame Relay.

Camada física: camada que trata a transmissão de sinais, o meio físico e onde

está situada toda a parte de hardware da rede, como placas, switches,


conectores, cabos, entre outros.

Conforme a rma Tanenbaum (2011), o modelo OSI segue os seguintes princípios:


uma camada deve ser criada onde houver necessidade de outro grau de abstração;

cada camada deve executar uma função bem de nida; a função de cada camada
deve ser escolhida tendo-se em visa a de nição de protocolos; e os limites de cada
camada devem ser escolhidos para minimizar o uxo de informações.

Os dados transmitidos em um sistema de redes são chamados de “carga útil” ou

payload, conforme Kurose e Ross (2013). Para cada camada, os dados (ou carga
útil) adicionados de informações de cada camada recebem nomes diferentes.
Considerando-se o modelo OSI, os dados da camada física são chamados de bits,

os dados na camada de enlace são chamados de quadros (frame), os dados na


camada de rede são chamados de datagramas (pacotes), os dados na camada de

transporte são chamados de segmentos ou, tecnicamente, de Transport Protocol


Data Unit (TPDU), os dados na camada de sessão são chamados de Section
Protocol Data Unit (SPDU), na camada de apresentação de Presentation Protocol
Data Unit (PPDU) e, por m, na camada de aplicação de mensagem ou Application
Protocol Data Unit (APDU).

[Link] 5/16
03/03/2021 lddkls211_red_sis_dis

Figura 1.20 | Terminologia de dados nas camadas do modelo OSI

0
Ver anotações
Fonte: elaborada pelo autor.

ENCAPSULAMENTO 
No conceito de arquitetura em camadas dos modelos de referência, a operação de

transportar dados entre as diferentes camadas de forma controlada, independente


e com dados adicionais de controle é chamada de encapsulamento. De forma
geral, essa técnica adiciona um cabeçalho com informações adicionais quando um

dado é encaminhado a outro nível, ou seja, para outra camada do modelo de


referência ou para outros protocolos de rede. Os diferentes nomes para os dados

que trafegam nas camadas de rede são dados aos que chamamos de dados +
cabeçalho. Pense em uma analogia para encapsulamento considerando que uma
carta enviada por você chega até uma agência de correios da cidade com um

conteúdo e os devidos dados, porém, como a carta é direcionada a outro estado, é


colocada dentro de outro pacote com mais informações que, por ser destinado a

outro país e com outros modelos de gestão das informações e de distribuição das
cartas, é colocado novamente em outro envelope com mais informações
detalhadas. A Figura 1.21 ilustra o caminho que um dado percorre, como é

formado e seus respectivos nomes.

Figura 1.21 | Conceito de encapsulamento de dados representado nas camadas de referência

[Link] 6/16
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: Kurose; Ross (2013, p. 40).

[Link] 7/16
03/03/2021 lddkls211_red_sis_dis

Nunes (2017) apresenta o trajeto de um dado conduzido pelos protocolos em rede


e pelas camadas conforme a técnica de encapsulamento. A sequência inicia com os
dados inseridos em um browser na camada de aplicação que realiza uma

solicitação ao site destino e encaminha os dados à camada de sessão para

0
gerenciamento da conexão. Em seguida, os dados são encapsulados na camada de

Ver anotações
transporte com o nome de segmento utilizando-se o protocolo orientado à
conexão (TCP) ou o protocolo não orientado à conexão (UDP), que o envia os
dados para a camada de rede com os seus endereços de host de origem e destino

adicionados e já com o nome Pacote (datagrama). Na camada de enlace, os dados


são divididos em quadros que seguem para a camada física para serem
transmitidos em formato de bits e adequados ao hardware, que realizará,

sicamente, o transporte dos dados até o seu destino.

CARACTERÍSTICAS E ARQUITETURA TRANSMISSION CONTROL


PROTOCOL/INTERNET PROTOCOL (TCP/IP)
O modelo TCP/IP foi uma evolução dos primeiros protocolos desenvolvidos para a

ARPANet e reúne um conjunto de protocolos padronizados para a utilização de

sistemas de rede juntamente à internet. Assim, o modelo TCP/IP foi incorporado


nas organizações para padronização dos sistemas de rede. Nesse modelo, existe a

classi cação dos protocolos em quatro camadas: aplicação, transporte, inter-rede

e host de Rede ou camada física. A Figura 1.22 apresenta um esquema dos


protocolos TCP/IP e as atribuições em camadas a exemplo do modelo OSI.

ATENÇÃO 

De acordo com Kurose e Ross (2013), o TCP/IP foi uma evolução dos
primeiros protocolos desenvolvidos para a ARPANet e abrange diversos

outros protocolos. Tanenbaum direciona o TCP/IP como um modelo, de

fato; já Kurose e Ross (2013) fazem referência ao TCP/IP como arquitetura


em camadas e Forouzan (2010) como conjunto de protocolos.

A arquitetura TCP/IP representa uma arquitetura de um conjunto de

protocolos de rede que não se limita apenas aos protocolos de transporte

TCP e de rede IP. Outros protocolos fazem parte desse conjunto de


protocolos e compõem o conjunto de protocolos utilizados, na atualidade,

nos sistemas de redes de computadores. O TCP é considerado o principal

protocolo de camada de transporte por ser orientado à conexão e garantir

[Link] 8/16
03/03/2021 lddkls211_red_sis_dis

a entrega dos pacotes; já o IP é considerado o principal protocolo de

endereçamento e roteamento de camada de Rede e possui duas versões

atuais, o IPv4 e o IPv6.

0
Ver anotações

[Link] 9/16
03/03/2021 lddkls211_red_sis_dis

Figura 1.22 | Modelo TCP/IP

0
Ver anotações
Fonte: elaborada pelo autor.

A arquitetura ou conjunto de protocolos TCP/IP é, na realidade, um nome dado a

um conjunto de protocolos de rede organizados em uma estrutura dividida em


quatro camadas. As suas quatro camadas e suas funcionalidades serão descritas a

seguir:

Camada de aplicação: ou application layer é uma camada composta por

protocolos de rede de nível de aplicação que são responsáveis pela


operacionalização de sistemas e aplicações nais para o usuário. Nessa

camada, são de nidos como os programas vão se comunicar com as aplicações

de rede e como se dará o gerenciamento da interface e o que o usuário vai


utilizar para executar a aplicação. Normalmente, mas não exclusivamente, as

aplicações são executadas em um browser (navegador) de internet. Alguns dos

principais protocolos de camada de aplicação são: HTTP, Simple Mail Transfer

Protocol (SMTP), Domain Name System (DNS), Simple Mail Transfer Protocol
(SNMP) e File Transfer Protocol (FTP).

Camada de transporte: ou Transport Layer é uma camada composta por

protocolos de transporte de dados em rede que fornecem, à camada de

aplicação, serviços de empacotamento e comunicação de duas formas, sendo


uma delas via serviços orientados à conexão e a outra via serviços não

orientados à conexão. Ela tem como função realizar e gerenciar conexões

ponto a ponto para garantir a integridade dos dados por meio de


sequenciamento de pacotes segmentados no envio e recebimento de

mensagens. Seus dois principais protocolos são o TCP e o UDP.

Camada de inter-rede: ou Internet Layer ou, ainda, camada de Rede é

responsável pela de nição do endereçamento de um host de rede por meio do


endereço de rede e também de roteamento dos pacotes de dados pelos

dispositivos de rede. O principal protocolo dessa camada é o IP, responsável

[Link] 10/16
03/03/2021 lddkls211_red_sis_dis

pelos endereçamentos de hosts na rede. Outros protocolos de camada de

Inter-rede são: Internet Control Message Protocol (ICMP), Address Resolution


Protocol (ARP) e Reverse Address Resolution Protocol (RARP).

0
Ver anotações

[Link] 11/16
03/03/2021 lddkls211_red_sis_dis

EXEMPLIFICANDO 

A arquitetura TCP/IP, como conjunto de protocolos de rede, apresenta, em


sua camada de Inter-rede, protocolos que são utilizados na prática para a

0
con guração de hosts de rede. O Protocolo IP (Internet Protocol) deve ser

Ver anotações
atribuído de forma única em cada host de rede, ou seja, em cada
dispositivo que venha a fazer parte de uma rede. Por exemplo, para que um

notebook seja ativo dentro da rede local de uma empresa, ele precisa
receber um endereço IP válido, como [Link] ou [Link] ou,
ainda, [Link], em conformidade com a política de endereçamento da

empresa. O mesmo ocorre para qualquer outro dispositivo de rede, como

impressoras e smartphones, por exemplo. Se for um endereço para um

host em rede pública, uma organização de atribuição de endereços na


internet, como a IANA (Internet Assigned Number Authority) e seus

representantes locais, deverá atribuir o endereço.

Camada host de rede: ou network access layer, como no modelo OSI, é a


camada em que se localizam os dispositivos físicos da rede e as funções de

enlace para acesso aos dispositivos físicos da rede. Entre suas atribuições,

estão o monitoramento de tráfego de rede e o endereçamento em nível físico


de dispositivos de rede para se realizar a transmissão de dados. São exemplos

de protocolos de camada de host de rede: IEEE 802.3, IEEE 802.11 e IEEE

802.16, em que IEEE representa uma instituição internacional que organiza,

regulamenta e padroniza sistemas de comunicação de rede em nível de


hardware.

Com o objetivo de organizar alguns dos principais protocolos de comunicação de

rede de computadores com as camadas do modelo TCP/IP, a Figura 1.23 ilustra

exemplos de protocolos.

Figura 1.23 | Exemplos de protocolos das camadas do modelo TCP/IP

Fonte: elaborada pelo autor.

[Link] 12/16
03/03/2021 lddkls211_red_sis_dis

ARQUITETURA E SERVIÇOS DE REDES TCP/IP


Quando se aborda serviços oferecidos pelos protocolos de redes, uma análise de

protocolos pode ser vista como essencial. Em redes de computadores, são


oferecidos serviços orientados à conexão e serviços não orientados à conexão.

0
Serviços orientados à conexão são aqueles que necessitam de garantia de entrega

Ver anotações
dos dados. O protocolo de nível de transporte que realiza esse tipo de serviço é o

TCP, e os protocolos de nível de aplicação que utilizam esse tipo de serviço são o
HTTP, FTP, Telnet e SMTP. Esses protocolos são utilizados por aplicações que

transmitem dados como arquivos, imagens, textos e que precisam ter garantia de

entrega para completar a transmissão.

Um exemplo de serviço orientado à conexão é o Internet Banking, em que, para se


nalizar uma transação bancária, é necessário que a entrega da totalidade dos

dados seja concluída.

Outro tipo de serviço em redes de computadores é o não orientado à conexão, em

que a rapidez para transmissão de dados é mais relevante do que a entrega na


totalidade dos dados. Esse serviço, por sua vez, transporta dados sem a

con abilidade entre os hosts da rede. O protocolo de camada de transporte que

realiza esse tipo de comunicação é o User Datagram Protocol (UDP), e alguns


exemplos de protocolos de nível de aplicação que utilizam esse serviço são:

Dynamic Host Control Protocol (DHCP), Domain Name System (DNS), Simple
Network Management Protocol (SNMP) e Network File System (NFS). Esse tipo de
serviço é utilizado em aplicações de streamings de áudio e vídeo, em que a perda

de um ou mais dados não interfere com grande impacto na comunicação. Esse tipo

de serviço é comum em sistemas de transmissão de streaming de áudio e vídeo

ou, ainda, em uma ligação pelo WhatsApp, por exemplo, em que ocorre a
degradação do serviço, mas os pacotes não são retransmitidos.

Para melhor entendimento, apresentaremos, a seguir, uma comparação entre as

estruturas do modelo de referência ISO/OSI e TCP/IP. A partir dela, podemos

observar que existe apenas uma reorganização conceitual dos níveis de protocolos
e nomenclatura, que se referem, na prática, ao mesmo contexto.

Figura 1.24 | Modelos ISO/OSI e TCP/IP

[Link] 13/16
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: Lorem ipsum dolor sit amet.

ASSIMILE

O modelo de referência ISO/OSI e a arquitetura (conjunto de protocolos)


TCP/IP são referenciais que buscam organizar os protocolos que executam

os serviços de transmissão e interpretação de dados em um sistema

distribuído em redes de computadores. O modelo ISO/OSI é considerado


um modelo referencial desenvolvido no início das tecnologias de rede; já a

arquitetura de protocolos TCP/IP é considerada um conjunto de protocolos

que representa, na prática, a distribuição dos protocolos utilizados, na

atualidade, em redes de computadores e na internet.

Chegamos ao nal da seção, que nos apresentou como é estruturado o modelo de

referência OSI e a arquitetura TCP/IP, estruturas que visam garantir a

interoperabilidade de uma rede e possibilitam oferecer serviços padronizados para


transferência de dados em redes com independência de tecnologias de hardware e

software.

FAÇA VALER A PENA


Questão 1

O modelo de referência ISO/OSI e a arquitetura ou o conjunto de protocolos TCP/IP

são estruturas que organizam os protocolos de redes de computadores em

camadas. Além de organizar os protocolos de redes de computadores, eles


garantem a interoperabilidade de um sistema computacional quando um bit inicia

sua trajetória dentro do sistema pela camada de host de rede, passando pelas

diferentes camadas, até ser apresentado como mensagem na camada de


apresentação. Esses bits ganham cabeçalhos e informações de controle conforme

passam de uma camada mais básica (em níveis menores) para as mais superiores.

O caminho inverso também faz uso da interpretação dos bits para o transporte
dos dados do outro lado da comunicação.

[Link] 14/16
03/03/2021 lddkls211_red_sis_dis

Assinale a alternativa que apresenta a técnica que adiciona informações aos dados

de camadas inferiores para as camadas superiores em um sistema de redes de


computadores.

0
a.  Serviço.

Ver anotações
b.  Protocolo.

c.  Encapsulamento.

d.  Endereçamento.

e.  Cabeamento.

Questão 2

O modelo de referência OSI e a arquitetura (ou conjunto de protocolos) foram

criados para organizar os protocolos de comunicação em redes de computadores


de forma didática, a m de que os dados possam ser tratados de forma

interoperável entre hosts, passando pelas diferentes tecnologias de hardware,

software e algoritmos nos diversos sistemas computacionais distribuídos mundo


afora.

Considerando o modelo de referência TCP/IP, analise as a rmativas a seguir:

O conjunto de protocolos TCP/IP é um modelo de organização de protocolos de

redes de computadores dividido em quatro camadas: aplicação, transporte,

inter-redes e host de rede.

A camada de aplicação da arquitetura (conjunto de protocolos) TCP/IP é


composta por protocolos responsáveis pela operacionalização de sistemas e

aplicações nais para o usuário. São exemplos desses protocolos o: HTTP,

SMTP e o SNMP.

O modelo de referência TCP/IP é um modelo conceitual, sem aplicabilidade na


prática e que não apresenta o conjunto total de protocolos de uma rede de

computadores.

O conjunto de protocolos TCP/IP é uma estrutura de organização de protocolos

de redes de computadores formado por dois protocolos: o TPC, que rege a

comunicação na camada de transporte, e o IP, que rege a comunicação na

camada de inter-redes.

Considerando o contexto apresentado, é correto o que se a rma em:

a.  I e II, apenas.

[Link] 15/16
03/03/2021 lddkls211_red_sis_dis

b.  II e III, apenas. 

c.  I, II e IV, apenas. 

d.  I e IV, apenas. 

0
e.  I, II e III, apenas.  

Ver anotações
Questão 3

Os serviços oferecidos pelos protocolos de redes para um sistema computacional

distribuído utilizam duas abordagens, sendo a primeira serviços orientados à

conexão e a segunda serviços não orientados à conexão.

Assinale alternativa correta que apresenta dois protocolos de nível de aplicação

que fazem uso de serviços de natureza orientada à conexão.

a.  HTTP e DNS.

b.  FTP e SNMP.

c.  DHCP e DNS.

d.  SNMP e NFS.

e.  FTP e SMTP.

REFERÊNCIAS

COMER, D. E. Redes de computadores e internet, 6. ed. Porto Alegre: Bookman,

2016.

FOTORUZAN, B. A. Comunicação de dados e redes de computadores. 4. ed.


Porto Alegre: AMGH, 2010.

KUROSE, J. F.; ROSS, K. W. Redes de computadores e a internet: uma abordagem

top-down. 6. ed. São Paulo: Pearson Education do Brasil, 2013.

NUNES, S. E. Redes de computadores. Londrina: Editora e Distribuidora

Educacional S. A. 2017.

TANENBAUM, A. S. Redes de computadores. 5. ed. São Paulo: Pearson Prentice


Hall, 2011. 

[Link] 16/16
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

O MODELO DE REFERÊNCIA OSI E TCP/IP

0
Renato Cividini Matthiesen

Ver anotações
ANÁLISE DE PROTOCOLOS TCP/IP
Descrição das camadas do modelo de referência TCP/IP com as suas devidas funções, que serão
operacionalizadas pelos protocolos de rede.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR


RELATÓRIO DO PROJETO DE REDES: ANÁLISE DE PROTOCOLOS
O conjunto de protocolos TCP/IP é uma estrutura em camadas que organiza e
formaliza os protocolos de rede e identi ca a forma com que os serviços de rede
são estabelecidos dentro do ambiente distribuído e heterogêneo dos sistemas de

informação nas empresas.

[Link] 1/4
03/03/2021 lddkls211_red_sis_dis

De forma a contribuir com as análises e decisões gerenciais para com os


investimentos em tecnologia da informação da empresa, esse relatório pretende

apresentar, de forma simples, a atuação das tecnologias de rede com os seus


protocolos nas diferentes camadas do modelo, que podem ser vistas como partes

0
do sistema de redes de computadores.

Ver anotações
Dessa forma, as informações a respeito do gerenciamento de protocolos e

tecnologias em cada camada do modelo relacional das redes poderão ser


compreendidas, bem como a independência de dispositivos e tecnologias entre as

camadas ou partes diferentes da rede e a implementação de novas tecnologias de

automação como foco principal da análise poderão ser observadas.

Tendo como início a camada de host de rede, popularmente conhecida como


camada física, a empresa precisa observar tecnologias de dispositivos de hardware

e de acesso ao meio de comunicação para interoperação dos equipamentos de


tecnologia conectados em rede com os sistemas de controle das redes de

computadores. Nesse nível, estão os computadores, switches, roteadores e

sensores de automação, por exemplo. Aqui, especi camos interfaces de entrada e


saída, especi cações elétricas e meios de transmissão (cabos, wireless).

A segunda camada da arquitetura TCP/IP é chamada de inter-rede, ou Internet,

mas não confunda com a rede mundial de computadores, por favor. Também

pode ser chamada de rede e, nela, existe a necessidade de que os pro ssionais
especializados con gurem os endereços lógicos, aqueles bem conhecidos como IP,

em seus dispositivos de rede. Cada dispositivo de rede que possui um endereço IP


recebe o nome de host, e seus novos equipamentos e sensores precisam ser

con gurados. Essa camada também possui a gestão do roteamento de rede, ou


seja, a con guração de dispositivos como roteadores para se gerenciar as

melhores rotas de transporte de dados por meio dos protocolos de rede.

A próxima camada é a de transporte, que tem a principal função a alocação dos

protocolos de transporte dos dados da rede. Nessa camada, os dados


transportados chamam-se pacotes ou datagramas, e a forma como serão

transmitidos pelos seus novos sensores poderá ser orientada à conexão, quando
houver a necessidade de envio e recepção de arquivos, imagens e pacotes que

necessitam de controle de entregas, ou não orientada à conexão, se os sensores

forem apenas de controle e precisarem de maior rapidez no sistema, como em


transmissões de vídeos de controle e outras informações, por exemplo.

[Link] 2/4
03/03/2021 lddkls211_red_sis_dis

Por m, caro gestor, a camada de aplicação será aquela melhor compreendida,

considerando-se que, nela, estão os protocolos que regem as aplicações nais,

normalmente executadas em um browser de internet. As informações coletadas

pelos sensores serão apresentadas ao analista via informações de áudio, vídeo,

0
textos ou grá cos que possam contribuir com o processo de gestão da automação

Ver anotações
dos novos sistemas.

Espero que tenhamos apresentado um texto didaticamente e ciente para

compreensão das tecnologias de redes de computadores e seus protocolos para


gestão de sistemas de automação.

AVANÇANDO NA PRÁTICA

CARACTERÍSTICAS DOS PROTOCOLOS IEEE 802.11 DE COMUNICAÇÃO


WIRELESS.
As redes Local Area Networks (LANs) ou Wireless Local Area Network (WLANs) se

tornaram um recurso importante dentro das organizações e na vida pessoal de

grande parte das pessoas. Elas oferecem mobilidade para atividades com
notebooks e smartphones, melhorando as possibilidades de conexão e
mobilidade.

Com o objetivo de reconhecer os protocolos de comunicação em níveis de host de

rede do modelo TCP/IP, é solicitado que o pro ssional de TI descreva, em um breve


relatório, os padrões IEEE.802.11 (Wi- ) para se buscar novos dispositivos de

pontos de acesso ou Access Points (AC) para melhorar a qualidade do sinal e sua

abrangência dentro de uma empresa, bem como manter a comunicação com

outros AC e hosts com tecnologias legadas.

RESOLUÇÃO 

Uma rede Wi- é caracterizada por ser uma rede local sem o (wireless do tipo

WLAN) e por utilizar o protocolo 802.11, que possui diversas tecnologias. Uma
rede Wi- mais antiga, originária da primeira metade da década de 2000,
deverá utilizar padrões em hosts e equipamentos como o IEEE 802.11a, IEEE

802.11b ou IEEE 802.g ou, ainda, 802.11n, padrão mais recente. Os novos

equipamentos deverão utilizar um padrão atual, chamado de IEEE 802.11ac.

IEEE 802.11a: 1. Frequência na faixa de 5 GHz; 2. Velocidade de 54 Mbps,


podendo chegar a 1080 Mbps com determinados fabricantes; 3. Cobertura

aproximada de 120 metros.

[Link] 3/4
03/03/2021 lddkls211_red_sis_dis

IEEE 802.11b: 1. Faixa de frequência de 2.4 GHz; 2. Velocidade de 11 Mbps;

3. Abrangência de área coberta aproximada de 140 metros; 4. há

interferência por utilizar a mesma faixa de frequência de telefones, micro-


ondas, por exemplo.

0
IEEE 802.11g: 1. Faixa de frequência de 2.4 GHz; 2. Velocidade de 54 Mbps;

Ver anotações
3. Cobertura aproximada de 140 metros; 4. Autenticação WPA (Wireless

Protec Access); 5. Compatível com IEEE 802.11b.

IEEE 802.11n: 1. Faixa de frequência de 2,4GHz e/ou 5.8GHz; 2. Velocidades

de 65 Mbps a 450 Mbps; 3. Abrangência de sinal aproximada de 250 metros

indoor e 400 metros outdoor; 4. Compatível com a versão protocolos a, b e


g; 5. Método de transmissão: MIMO OFDM com utilização de 2 antenas.

IEEE 802.11ac: 1. Frequência na faixa de 5GHz (menos interferência); 2.

Velocidade de até 1300Mbps, como por exemplo o 802.11n propaga ondas

de modo uniforme para todas as direções; 3. Roteadores Wi-Fi reforçam o

sinal para os locais onde há computadores conectados; 4. Acesso


simultâneo com diversos aparelhos conectados ao roteador; 5. Economia

de energia nos dispositivos móveis 6. Utiliza a técnica de MIMO: múltiplas

antenas (até 8 antenas), cada uma transmitindo informações, o que garante

maior velocidade de acesso a múltiplos hosts. 6. 802.11ac wave 2 permite


que o AP se comunique com mais de um dispositivo (não sendo possível,

anteriormente, nos outros padrões).

[Link] 4/4
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

PROTOCOLOS DE REDES

0
Renato Cividini Matthiesen

Ver anotações
PROTOCOLOS DE REDES DO MODELO TCP/IP 
Apresentação dos diversos protocolos de rede em suas respectivas camadas de aplicação,
transporte, inter-rede e host de rede ou física dentro do modelo TPC/IP.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

PRATICAR PARA APRENDER

Caro aluno, a seção tem como objetivo apresentar os diversos protocolos de rede
de computadores distribuídos em suas quatro camadas, bem como suas principais
características e aplicações dentro de um sistema distribuído baseado em redes de
computadores e na tecnologia mundialmente utilizada da internet. Iniciaremos
nossos estudos com a análise da camada de aplicação, que será melhor
compreendida por representar as aplicações de um sistema computacional em

rede. Nela, tanto o pro ssional de tecnologia da informação como o usuário

comum interagem com o sistema por meio de interfaces grá cas ou mesmo linhas
de comando. Enquanto o usuário utilizará aplicações nais para desenvolver suas

atividades pro ssionais e pessoais, o pro ssional de TI deverá, além de utilizá-las,

[Link] 1/30
03/03/2021 lddkls211_red_sis_dis

enquanto usuário de sistemas, também interagir para veri car informações de


protocolos de rede por comandos ou aplicações de gerenciamento de redes, bem

como con gurar e programar sistemas distribuídos. Nessa camada, estão os


protocolos de Hipertexto (HTTP), correio eletrônico (SMTP, POP3, IMAP),

0
transferência de arquivos (FTP), gerenciamento de redes (SNMP), terminal remoto

Ver anotações
(TELNET), entre outros.

[Link] 2/30
03/03/2021 lddkls211_red_sis_dis

Na camada de transporte, situam-se dois protocolos muito importantes nas redes

de computadores, o TCP e o UDP, que serão, mais uma vez, explorados para

reconhecimento de comportamento do transporte de dados em uma rede,

conforme a de nição do serviço a ser utilizado. Há, também, outros protocolos que

0
atuam nessa camada, como o SCTP. Entre a camada de aplicação e transporte,

Ver anotações
também há protocolos, como o SSL, que suporta segurança em aplicações em

rede.

Seguindo para a camada de Internet (Inter-Rede), vamos explorar o protocolo mais


conhecido nas redes, o protocolo IP, responsável pelo endereçamento de redes; o

ARP e o RARP, que trabalham para prover a relação de endereços físicos e lógicos

em uma rede; e o ICMP, um protocolo de apoio ao IP.

Para nalizar a unidade, exploraremos a camada de host de rede, que faz o

controle de acesso aos enlaces e rede física. Nela, há o acesso aos diversos

dispositivos físicos da rede, como cabos, enlaces wireless, roteadores, switches,

entre outros equipamentos regidos também por protocolos CSMA/CA e CSMA/CD,

que suportam os padrões IEEE 802.3 e IEEE 802.11 para redes locais.

Aqui, vimos muitas siglas e protocolos que trouxeram curiosidade a você. Agora, e

nas seções que compõem esta unidade, vamos conhecer o signi cado, as

características e as aplicações de cada um deles.

Caro aluno, você foi, mais uma vez, acionado para dar continuidade à consultoria

que está realizando para implantação de uma rede de computadores em uma

empresa de Coworking que necessita saber, neste momento, de maiores detalhes

dos serviços que estarão disponíveis em nível de aplicação em sua nova rede.

Nesse novo desa o, a consultoria contratada cou encarregada de fazer uma

apresentação para os proprietários da empresa de Coworking que desejam ter

maiores esclarecimentos a respeito dos serviços e protocolos de rede que deverão

ser implementados na rede local de nida, a m de conhecerem os serviços que

serão oferecidos em nível de aplicação e reconhecer os investimentos em


hardware e software (sistema operacional de rede) com consultorias

especializadas.

Dessa forma, sua equipe foi direcionada a elaborar uma descrição dos principais
protocolos de rede em camada de aplicação que serão utilizados para a

implantação dos sistemas de informações baseados em Web, com utilização de

browsers navegados e informações contidas em um site da empresa, um serviço

[Link] 3/30
03/03/2021 lddkls211_red_sis_dis

de correio eletrônico, que será implantado também via servidor local, a m de que

os colaboradores possam trocar informações internas, bem como a utilização de

sistemas de e-mail e de um sistema de transferência de arquivos para que possam


enviar e receber arquivos sobre os negócios que vierem a praticar no ambiente

0
compartilhado de trabalho.

Ver anotações
Estudar os protocolos de redes do modelo TCP/IP é importante para compreender o
funcionamento de redes de computadores em seus diferentes níveis. Da camada de
aplicação, perceptível pelo uso de aplicativos dentro do sistema operacional, até a camada
de host de rede, que vai tratar os dados recebidos dos meios físicos durante a transmissão,
o estudo é fantástico e levará o pro ssional de TI a vivenciar, na prática, as redes de
computadores.

CONCEITO-CHAVE

Caro aluno, seja bem-vindo à seção que tratará dos protocolos de redes, que

funcionam como regras que de nem o que e como ocorrerá um evento ou serviço
de toda a rede. Por exemplo: imagine como uma máquina conectada à internet vai

se comunicar com outra máquina já conectada.

Os protocolos de redes funcionam como uma língua universal entre computadores


que não depende de fabricantes e nem de sistemas operacionais especí cos,

viabilizando que qualquer computador se comunique com a rede mundial de

computadores.

Existe uma grande quantidade de protocolos e cada um apresenta um objetivo e


uma funcionalidade; entre eles, temos o conjunto de protocolos TCP/IP, que pode

ser considerado um modelo destinado à organização e padronização de sistemas

de redes de computadores juntamente à internet. Conforme apresenta Nunes

(2017), a arquitetura do modelo TCP/IP foi dividida em quatro camadas, e um


conjunto de aplicações é utilizado para prover os diversos serviços de rede. A

Figura 1.25 ilustra a distribuição de protocolos dentro das quatro camadas do


modelo TCP/IP, de modo a reconhecer a localização e a funcionalidade de cada
protocolo. Os protocolos e suas siglas serão apresentados na sequência.

Figura 1.25 | Relação do conjunto de protocolos TCP/IP

[Link] 4/30
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

A m de que possa compreender o uso de protocolos em sistemas de redes de


computadores, traremos um conceito prévio sobre portas de comunicação. Na

camada de transporte, os protocolos TCP e UDP utilizam-se de portas para acessar


os serviços de camada de aplicação, conforme Kurose e Ross (2013). Tais portas

possibilitam a utilização de diferentes serviços de comunicação de rede em um


mesmo nó de rede (host), fazendo a interface entre um aplicativo e a rede e
con gurando o ponto nal de comunicação que permite a um host uma conexão

para um aplicativo. Por exemplo, ao acessar um site por meio de um navegador


(browser) ou o seu e-mail ou fazer downloads e uploads de arquivos ou realizar

algum acesso remoto, você utiliza protocolos de redes especí cos que estão
associados a portas de comunicação também especí cas. Nesse sentido, há uma
grande quantidade de portas utilizadas para que um sistema de redes de

computadores identi que um protocolo de rede.

No total, existem 65.536 portas em uma rede de computadores, porém apenas


65.535 são úteis. Dessas portas, cada aplicação programada em um sistema para
atuação em rede deverá alocar uma porta para sua execução. Por padrão, portas

entre 1 e 1.024 são reservadas para protocolos já de nidos e são conhecidas como
portas bem de nidas. Os protocolos apresentados serão também associados às
suas portas de comunicação padronizadas, exempli cando a utilização de portas

juntamente aos protocolos de camadas de transporte e aplicação.

Figura 1.26 | Mapa mental com os principais protocolos do modelo TCP/IP

[Link] 5/30
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

PROTOCOLOS DA CAMADA DE APLICAÇÃO


A camada de aplicação é uma camada composta por protocolos de rede de nível

de aplicação, que são acessadas e possuem interação direta com usuários. Esses
protocolos são responsáveis pela operacionalização de sistemas e aplicações nais

para o usuário.

Conforme de nido por Tanenbaum (2011), as camadas abaixo da camada de

aplicação têm a função de oferecer um serviço de transporte con ável, mas, na


verdade, elas não executam nenhuma tarefa para os usuários. Há protocolos nas

camadas inferiores que entregam serviços de transporte con ável e não con ável.

A camada de aplicação de ne como os programas vão se comunicar com as

aplicações de rede e como se dará o gerenciamento da interface com o que o


usuário irá utilizar para executar a aplicação. Em geral, as aplicações são

executadas em um browser (navegador) de internet.

A seguir, vamos descrever alguns dos principais protocolos da camada de

aplicação:

[Link] 6/30
03/03/2021 lddkls211_red_sis_dis

HTTP 

Protocolo de transferência de hipertexto utilizado em sistemas de WWW para


representação de sistemas dentro de navegadores. Trata-se de um protocolo com

0
intenso uso na atualidade, pois a grande parte dos sistemas da internet é

Ver anotações
executada utilizando-se esse protocolo. Conforme Kurose e Ross (2013), o HTTP
de ne como os clientes requisitam páginas aos servidores e como eles as

transferem aos clientes. Esse protocolo está no coração da Web; é por meio desse
padrão de comunicação em redes que as páginas de conteúdo dos Websites são
programadas e distribuídas via internet.

De acordo com Laudon e Laudon (2014), a WWW, formatada pelo HTTP, refere-se a

um sistema de padrões universalmente aceitos para armazenar, recuperar,


formatar e apresentar informações utilizando-se o modelo cliente/servidor em
sistemas de redes de computadores. O protocolo TCP utiliza a porta 80 ou a porta

8080 para acessar o HTTP.

ASSIMILE 

O HTTP é representado pelo conjunto de letras no início de um endereço

dos serviço de WWW seguido do nome de domínio que especi ca o


servidor de arquivos que será identi cado pelo Uniform Resource Locator
(URL) no aplicativo de navegação de internet (browser). Um exemplo

completo de URL é: [Link]

Existem diversos browsers (navegadores) disponíveis para acesso ao


conteúdo da WWW. O primeiro a utilizar interface grá ca foi o Mosaic, que
deu origem à Netscape, e os mais conhecidos na atualidade são: Google

Chrome, Mozilla Firefox, Microsoft Edge, Microsoft Internet Explorer, Safari


e Apple Opera.

SMTP

Protocolo de gerenciamento e distribuição de sistema de mensagens eletrônicas

para sistemas de e-mail. De acordo com Kurose e Ross (2013), o correio eletrônico
existe desde o início da Internet e era uma das aplicações mais populares em seu

início. Em um sistema de correio eletrônico, há três componentes principais na


operação do serviço: agentes de usuário, servidores de correio eletrônico e o
protocolo SMTP. Os agentes de usuário são compostos por aplicativos como

Microsoft Outlook, Google Mail, entre outros e permitem que os usuários

[Link] 7/30
03/03/2021 lddkls211_red_sis_dis

veri quem seus e-mails, leiam, respondam, encaminhem suas mensagens. Os


servidores formam a infraestrutura principal do sistema, mantendo caixas postais
em servidores. Por último, o SMTP, como protocolo de aplicação desse serviço,

utiliza um serviço con ável de transferência via TCP para transferir as mensagens

0
do servidor do correio do remetente para o destinatário. O protocolo TCP utiliza a

Ver anotações
porta 25 para acessar o SMTP; considerando-se o uso de criptogra a, o TCP utiliza
a porta 465 para o SMTP.

[Link] 8/30
03/03/2021 lddkls211_red_sis_dis

POST OFFICE PROTOCOL (POP3) E INTERNET MAIL ACCESS PROTOCOL (IMAP)

Adicionalmente ao SMTP, existem outros dois protocolos na gestão de sistemas de

correio eletrônico. O POP3 é um protocolo utilizado também para sistemas de

0
correio eletrônico para o gerenciamento de e-mails, assim como o IMAP. O POP3

Ver anotações
realiza o download das mensagens de e-mail ao acessar uma caixa de correio

eletrônico para a caixa de entrada no sistema gerenciador, liberando o espaço

ocupado pelas mensagens no servidor de e-mail, enquanto o IMAP é um protocolo


de correio eletrônico que acessa a caixa de e-mail e sincroniza as pastas da conta

do usuário, mas não faz seu download. Esse protocolo é melhor para usuários que

utilizam o sistema de correio eletrônico em diversas plataformas. O protocolo TCP


utiliza a porta 110 para o protocolo POP3 e a porta 143 para o protocolo IMAP.

Considerando-se o uso de criptogra a, o TCP utiliza a porta 995 para POP3 e porta

993 para o IMAP. A Figura 1.27 apresenta uma tela de con guração (parcial) de

conta utilizando protocolos de acesso ao serviço de correio eletrônico.

Figura 1.27 | Exemplo de con guração de conta em e-mail via protocolo POP3

Fonte: Wikimedia Commons.

DOMAIN NAME SYSTEM (DNS)

Protocolo utilizado para o sistema de nomes de domínio que faz a interconexão de


URL, ou seja, nomes de endereços de sites da internet com endereços IP. Para que

endereços de camada de Internet IP tenham sua localização em um sistema

distribuído mundialmente, é necessário que exista, no mundo, um sistema de


nomes de domínios para a organização dos servidores na rede. Esse sistema é

[Link] 9/30
03/03/2021 lddkls211_red_sis_dis

chamado Domain Name System (DNS) e seu objetivo é organizar os servidores na

internet para que endereços IP sejam convertidos em nomes, como [Link],

por exemplo, e vice-versa.

0
Esse sistema é uma estrutura hierárquica em que, no topo, há um servidor-raiz

interligado a servidores de domínios de níveis inferiores, de primeiro e segundo

Ver anotações
níveis. Os domínios primários são chamados de servidores DNS de domínio de

alto nível (TDL), aqueles referenciados por: .com, .gov, .mil, .edu entre outros
adicionados das informações dos países, como: .br, .uk .it. Os domínios de

segundo nível, servidores DNS autoritativos, possuem duas partes, designando-

se os nomes de primeiro e de segundo nível, como exemplo: [Link]. Um


nome de host designa o computador nal, especí co na internet, em uma rede

privada. O protocolo TCP utiliza as portas 53 e 953 para acessar o DNS, e o

protocolo UDP utiliza a porta 53 para seu acesso. Para tratar da questão da escala,
o DNS usa um grande número de servidores, organizados de maneira hierárquica

e distribuídos por todo o mundo. Nenhum servidor DNS isolado tem os

mapeamentos completos para hosts da Internet. Os mapeamentos são


distribuídos pelos servidores DNS por meio de três classes de servidores DNS: raiz,

de domínio de alto nível (Top-Level Domain — TLD) e servidores DNS autoritativo,

conforme ilustrado na Figura 1.28.

Por exemplo, considere que um cliente DNS deseja determinar o endereço IP para
o nome de host [Link]. Na primeira aproximação, o cliente contatará

um dos servidores raiz, que retornará endereços IP dos servidores TLD para o

domínio de alto nível com. Em seguida, o cliente contatará um servidor TLD, que

retornará o endereço IP de um servidor autoritativo para [Link]; por m, o


cliente contatará um dos servidores autoritativos para [Link], que

retornará o endereço IP para o nome de host [Link] (KUROSE; ROSS,

2013).

Figura 1.28 | Parte da hierarquia de servidores DNS

[Link] 10/30
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: Kurose; Ross (2013, p. 99).

SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP)

Protocolo de gerenciamento de redes simples que realiza coleta e mensuração de

performance de rede. Conforme Forouzan (2010), o gerenciamento de redes


refere-se a monitoramento, teste, con guração e diagnóstico de componentes de

rede para atender a um conjunto de exigências de nidas por uma organização.

Esse protocolo realiza o gerenciamento de con guração, falhas (reativas,


proativas), desempenho (capacidade, tráfego, throughput, tempo de resposta),

segurança e contabilização. O protocolo UDP utiliza as portas 161 e 162 para

acessar o SNMP.

FILE TRANSFER PROTOCOL (FTP)

Protocolo de transferência de arquivos entre dispositivos em uma rede de

computadores. Tanto o HTTP quanto o FTP são protocolos de transferência de

arquivos, como a rmam Kurose e Ross (2013).

O protocolo TCP utiliza as portas 20 e 21 para acessar e gerenciar o FTP; ele utiliza
duas portas para conexão via camada de transporte pois uma é utilizada para

conexão de controle e a outra para a conexão de dados. O FTP oferece maior

facilidade de comunicação entre computadores para transferência de arquivos


com maior velocidade, praticidade e sem necessidade de dispositivos externos.

São exemplos de aplicativos que operacionalizam o serviço de transferência de

arquivos via protocolo FTP: FileZila, um dos mais conhecidos programas por ser de

fácil uso e trazer ferramentas completas; Classic FTP; Fere FTP; e Cyberduck com
código aberto e compatibilidade com diversas plataformas.

TELEPHONE NETWORK (TELNET)

[Link] 11/30
03/03/2021 lddkls211_red_sis_dis

Protocolo de conexão remota utilizado por meio de um terminal, representado por

um prompt de comando nos sistemas operacionais. O protocolo TCP utiliza a porta


23 para acessar o Telnet.

0
A camada de aplicação traz um volume grande de protocolos, alguns mais novos,

desenvolvidos, por exemplo, para a realidade da internet atual, em que aplicações

Ver anotações
em HTTP necessitam de transmissão de streaming de vídeos. Um exemplo é o
protocolo Hypertext Transfer Protocol Live Streaming (HLS), que se utiliza das

novas tecnologias e velocidades de transmissão em sistemas móveis para

protocolos de nível de transporte con áveis para distribuição de conteúdo de

streaming em velocidades compatíveis com as necessidades dos sistemas. Novos


protocolos são desenvolvidos constantemente para provisão de segurança em

sistemas e adaptação às novas necessidades tecnológicas dos sistemas

distribuídos via internet.

REFLITA 

HTTPS = HTTP + SSL.

O protocolo HTTPS é o protocolo HTTP adicionado de serviço de segurança


provido pelo protocolo Secure Socket Layer (SSL), implementado sob a

camada de transporte e abaixo da camada de aplicação na arquitetura

TCP/IP. Esse protocolo oferece recurso de criptogra a para as informações

transmitidas do servidor até o navegador de internet do host. O HTTPS


utiliza a porta 443 via TCP. A versão do SSL3 é denominada Transport Layer

Security (TLS). Mesmo com essas tecnologias implementadas para melhorar


a segurança nas aplicações em rede, ainda existem fragilidades que podem
deixar sua conexão vulnerável, como podemos ver no artigo HTTPs não

quer dizer seguro, da empresa de soluções de segurança Kaspersky.

[Link] 12/30
03/03/2021 lddkls211_red_sis_dis

PROTOCOLOS DA CAMADA DE TRANSPORTE


A camada de transporte ou Transport Layer é uma camada composta por

protocolos de transporte de dados em rede que fornecem à camada de aplicação

0
serviços de empacotamento e comunicação de duas formas, sendo uma delas via

Ver anotações
serviços orientados à conexão e a outra via serviços não orientados à conexão. Ela

tem como objetivo principal gerenciar conexões ponto a ponto para garantir a
integridade dos dados por meio de sequenciamento de pacotes segmentados no

envio e recebimento de mensagens. Suas principais funções são: tratar questões

de transporte entre hosts, contabilizar o transporte de dados, estabelecer circuitos

virtuais, detectar e recuperar falhas e controlar o uxo de informações. Ademais,


nessa camada, há o endereçamento via portas das informações, via protocolos de

camada de aplicação.

De acordo com Tanenbaum (2011), quando um processo de aplicação deseja

estabelecer uma conexão com um processo de aplicação remoto, é necessário


especi car a aplicação com a qual ele vai se conectar, o que ocorre por meio da

de nição de um endereço de transporte, chamados de portas ou Transport Service

Access Point (TSAP), que se associam a sessões de acesso, chamadas de Socket.


Exempli cando, quando um usuário solicita o acesso a um site de internet, ele

digita o URL referente ao site, que vai abrir uma sessão no browser identi cada

pelo endereço IP relacionada a URL e seguida do número da porta, que identi ca o


serviço. O usuário ainda poderá solicitar uma nova página, em uma nova aba do

navegador, com o endereço adicionado do número de porta, que é a mesma

referente ao serviço de HTTP, porém com um TSAP diferente, que identi ca um


novo socket.

A Figura 1.29 mostra um exemplo de comunicação utilizando-se as portas dentro

de um sistema de rede de computadores. Na gura, podemos perceber que no

segmento A-B, o número da porta de origem serve como parte de um endereço de


retorno (por exemplo, quando B quer enviar um segmento de volta para A, a porta

de destino no segmento B-A toma seu valor do valor da porta de origem do

segmento A-B). Observe, também, que o endereço de retorno completo é o

endereço IP adicionado do número da porta de origem de A. Utilizando o UDP, por


exemplo, o servidor usa um método recvfrom() para extrair o número de porta

[Link] 13/30
03/03/2021 lddkls211_red_sis_dis

cliente-servidor de origem do segmento que recebe do cliente e envia um novo

segmento ao cliente com o número de porta que extraiu, servindo como o número
de porta de destino desse novo segmento.

0
Ver anotações

[Link] 14/30
03/03/2021 lddkls211_red_sis_dis

Figura 1.29 | Comunicação em redes de computadores por meio de portas (TSAP)

0
Ver anotações
Fonte: Kurose; Ross (2013, p. 142).

Tanenbaum (2011) a rma que a camada de transporte juntamente à camada de

rede formam o núcleo da hierarquia de protocolos. A seguir, apresentaremos a

descrição de seus principais protocolos.

USER DATAGRAM PROTOCOL (UDP)

É um protocolo de nível de transporte não orientado à conexão utilizado para

transmissões que necessitam de maior velocidade de entrega, porém ele não

garante a entrega dos dados e é utilizado, por exemplo, em aplicações de


streaming de áudio e vídeo, em que a falta de um fragmento da mensagem não é
relevante. A camada de transporte mapeia o pedido de transmissão de host feito

ao serviço não orientado à conexão fornecido pela camada de inter-rede.

As principais características de um protocolo UDP são:

1. Protocolo de transporte sem conexão.

2. Transporta dados sem con abilidade entre hosts.

3. Realiza transmissão sem conexão e de forma não con ável.

4. Não tem tratamento de erros;

5. Não garante a entrega das mensagens;

6. Sem controle de congestionamento.

7. Sem controle de uxo.

8. Não reagrupa mensagens.

As aplicações desse protocolo são para streaming media, teleconferência, telefonia

IP e controles.

[Link] 15/30
03/03/2021 lddkls211_red_sis_dis

Um segmento UDP é simples, tem uma estrutura formada por campos de

cabeçalho com os números de porta de origem e destino do host de rede, o

comprimento do número de bytes do segmento e o campo com informação de


veri cação dos erros no segmento e, naturalmente, o campo de dados

0
(mensagem). A Figura 1.30 apresenta a estrutura de um segmento UDP. Observe

Ver anotações
que o cabeçalho UDP tem apenas quatro campos com 2 bytes cada. Os números

de porta permitem que o host destinatário passe os dados da aplicação ao

processo correto que está funcionando no sistema nal do destinatário. O campo

de comprimento especi ca o número de bytes no segmento UDP (cabeçalho mais

dados). A soma de veri cação é usada pelo host receptor para veri car se foram
introduzidos erros no segmento. Por m, o campo de comprimento especi ca o

comprimento do segmento UDP, incluindo o cabeçalho, em bytes.

Figura 1.30 | Estrutura do segmento do UDP

Fonte: Kurose; Ross (2013, p. 148).

O UDP é um protocolo não orientado à conexão, sem garantia de entrega, utilizado

para aplicações que necessitam de velocidade de acesso e não obrigatoriamente

da entrega de 100% dos dados, como transmissões de áudio e vídeo pela internet,

jogos online e sistemas de mensagens instantâneas, como o WhatsApp, por

exemplo. Os principais protocolos de aplicação que utilizam esse tipo de


transmissão são: TFTP, DHCP, SNMP, NFS e DNS.

TRANSMISSION CONTROL PROTOCOL (TCP)

É um protocolo de nível de transporte orientado à conexão utilizado em aplicações

que exigem que a totalidade e a integridade dos dados sejam realizadas com
garantia de entrega, como na transmissão de um documento, uma mensagem ou

uma gura, por exemplo, em formato de arquivo. O serviço de transporte oferece

meios para se estabelecer, manter e liberar conexões de transporte entre pares de

hosts por meio dos Services Access Points (SAP). De forma geral, o protocolo TCP

[Link] 16/30
03/03/2021 lddkls211_red_sis_dis

divide as mensagens vindas da camada de aplicação em segmentos e as

encaminha para o host de destino, que a reconstruirá com informações

adicionadas no cabeçalho do protocolo. Esse protocolo cuida da con rmação do

recebimento da mensagem, estabelece uma conexão m a m e escolhe o

0
caminho con ável de transporte da mensagem.

Ver anotações

[Link] 17/30
03/03/2021 lddkls211_red_sis_dis

As principais características de um protocolo TCP são:

Fornece um circuito virtual entre aplicações nais.

Orientado para conexão.

0
Realiza controle de uxo para garantir a con abilidade na transmissão.

Ver anotações
Divide as mensagens enviadas em segmentos;

Utiliza o conceito de janelas deslizantes para segmentação e controle;

Reagrupa as mensagens no host destino.

Realiza controle de congestionamento. As aplicações para esse protocolo são

para transmissão de dados.

Um segmento TCP é formado por campos de cabeçalho e campo de dado. Os

campos de cabeçalho contêm as portas de origem (porta de origem #) e destino da

transmissão (porta de destino #), um número de sequência (número de

sequência), um número de reconhecimento para veri cação de integridade de

dados (número de reconhecimento), campos da janela de recepção para o controle

de uxo (URG, ACK, PSH, RST, SYN, FIN), campo de comprimento de cabeçalho,
campo de opções para controle em redes de alta velocidade (opções), sinalizadores

de reconhecimento (soma de veri cação da Internet) e o campo de dados. A Figura

1.31 mostra a estrutura do segmento TCP.

Figura 1.31 | Estrutura do segmento do TCP

Fonte: Kurose; Ross (2013, p. 172).

[Link] 18/30
03/03/2021 lddkls211_red_sis_dis

O TCP é um protocolo orientado à conexão com garantia de entrega, também

chamado de protocolo elástico, utilizado para acesso a sites em formato de

hipertexto nos sistemas Web, Internet Banking, correio eletrônico e transferência

de dados por exemplo. Os principais protocolos de aplicação que utilizam esse tipo

0
de transmissão são: HTTP, FTP, SMTP e DNS.

Ver anotações

[Link] 19/30
03/03/2021 lddkls211_red_sis_dis

PROTOCOLOS DA CAMADA DE INTERNET


De acordo com Tanenbaum (2011, p. 222), a camada de inter-rede ou Internet

Layer ou, ainda, Rede, está relacionada à transferência de pacotes da origem para

0
o destino. Ela é responsável por reconhecer a topologia da rede, escolher os

Ver anotações
caminhos mais apropriados para entrega dos pacotes entre hosts na rede e

também pela de nição do endereçamento de um host de rede por meio do

endereço de rede. A exemplo do endereçamento realizado pelo TSAP na camada


de transporte, na camada de inter-rede um endereço de rede é dado pelo

chamado NSAP, exempli cados pelo endereço IP (Internet Protocol), responsável

pelo endereçamento de hosts na rede de forma prática. Os principais protocolos

da camada de inter-rede são:

IP

Protocolo mais conhecido de camada de inter-rede, uma vez que é o responsável

pelo endereçamento lógico dos hosts de rede, informado pelo pro ssional de

tecnologia da informação ou mesmo pelo usuário para identi cação única do host

dentro de um segmento de rede.

Faz-se importante saber que, para que um computador ou dispositivo possa fazer

parte de uma rede, ele, obrigatoriamente, necessita ser con gurado recebendo um

endereço IP válido no segmento de rede. Esses endereços também podem ser

atribuídos de forma automática de rede, com um servidor de endereços IPs ativo

em um sistema operacional de rede, como o DHCP.

O protocolo IP é utilizado em duas versões disponíveis: Internet Protocol 4 (IPv4) e

Internet Protocol 6 (IPv6), ambas ativas e com possibilidades de utilização

conforme políticas de atribuição de endereços que serão estudadas na Unidade 2

deste livro. A Figura 1.32 apresenta a con guração de um endereço de IPv4

estático em um ambiente Windows.

Figura 1.32 | Exemplo de con guração de conta em e-mail via protocolo POP3

[Link] 20/30
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: captura de tela elaborada pelo autor.

[Link] 21/30
03/03/2021 lddkls211_red_sis_dis

ICMP

Protocolo utilizado para gerenciar os erros de processamento de datagramas do

protocolo IP. Esse protocolo é exempli cado por: bu er full, que indica se um

0
bu er atingiu sua capacidade máxima de processamento; hops, que mostra

Ver anotações
quantos saltos são necessários para que uma mensagem chegue ao destino; ping,

que identi ca se a interface de rede é ativa por meio de um teste; e traceroute

(Linux) ou tracert (Windows), que mapeia os saltos e traz informações sobre o


tempo entre nodos de rede e seus nomes. Esses são comandos que podem ser

utilizados para a operação de testes e análises de rede com o protocolo ICMP. Um

exemplo de utilização desse protocolo é a utilização do comando tracert [Link]

apresentado na Figura 1.33, em que o endereço IP [Link] é do Google e o retorno

do comando apresenta dados do rastreamento da rota para o servidor

[Link].

Figura 1.33 | Exemplo de utilização de tracert

Fonte: captura de tela elaborada pelo autor.

ARP

Protocolo que reconhece o endereço físico de uma placa de rede, chamado Media

Access Control (MAC) por meio de seu endereço IP. Exemplo: para se veri car o
mapeamento dos endereços MAC e IP, é possível digitar arp -a no prompt de
comando.

[Link] 22/30
03/03/2021 lddkls211_red_sis_dis

RARP

Protocolo que reconhece o endereço lógico de uma rede, ou seja, reconhece o

endereço IP por meio de um endereço MAC.

0
Ver anotações

[Link] 23/30
03/03/2021 lddkls211_red_sis_dis

EXEMPLIFICANDO

As redes de computadores são organizadas em camadas dentro do modelo

de referência OSI e/ou TCP/IP. Em cada camada dos modelos de referência,

0
os dados transferidos possuem endereços para que a informação possa ser

Ver anotações
transmitida de um host de origem para um host de destino. Dispositivos
conectados em rede possuem um endereço MAC atribuído à camada do

TCP/IP de Host de rede gravado em uma placa de rede como endereço

físico e único, formado por uma sequência de seis dígitos em formato

hexadecimal. Exemplo: 00-14-CE-5B-3A-93.

Já o endereço IP é um endereço lógico, de camada de inter-rede, atribuído

manualmente ao host ou por meio de um servidor DHCP de um serviço de

rede. Um IPv4 é um endereço de 32 bits constituído por um conjunto de 4

números decimais que representam quatro números binários de 8 bits

cada. Exemplo de IPv4 é [Link]. Na versão IPv6, ele é representando

por um conjunto de 128 bits. Exemplo:


[Link].

Outros protocolos de camada de inter-rede são utilizados para o trabalho de

roteamento interno e externo de pacotes em rede, operando-se em roteadores.

Alguns exemplos desses protocolos são: Routing Information Protocol (RIP), Open

Shortest Path First (OSPF), Interior Gateway Routing Protocol (IGRP), Enhanced
Interior Gateway Routing Protocol (EIGRP) e Border Gateway Protocol (BGP).

PROTOCOLOS DA CAMADA DE HOST DE REDE 


A camada host de rede ou network access layer, como no modelo OSI, é a camada

em que se localizam os dispositivos físicos da rede com as funções de enlace para

acesso aos dispositivos físicos da rede. Entre suas atribuições, estão o

monitoramento de tráfego de rede, a detecção e a correção de erros e o


endereçamento, em nível físico de dispositivos de rede para a transmissão de

dados. Aqui, destacam-se os protocolos de acesso múltiplo ao meio Carrier Sense

Multiple Access (CSMA) implementados com especi cações de detecção de colisão


ou de colisão evitada nos padrões, também chamados de protocolos dos

dispositivos físicos de rede, sendo os mais utilizados: IEEE 802.3, IEEE 802.11 e IEEE

[Link] 24/30
03/03/2021 lddkls211_red_sis_dis

802.16, em que IEEE representa uma instituição internacional que organiza,

regulamenta e padroniza sistemas de comunicação de rede em nível de hardware.

A seguir, serão apresentados dois protocolos de acesso múltiplo ao meio.

0
Ver anotações

[Link] 25/30
03/03/2021 lddkls211_red_sis_dis

CARRIER SENSE MULTIPLE ACCESS WITH COLLISION DETECTION (CSMA/CD)

O protocolo CSMA utiliza um único meio de transmissão (cabo de rede, por

exemplo) para suportar a transmissão de todos os hosts da rede. Seu

0
funcionamento ocorre por meio de acesso múltiplo com detecção de onda

Ver anotações
portadora, chamada de CSMA/CD, independentemente da topologia da rede. A

transmissão é feita quando o cabo está livre, e existe controle de colisão quando
mais de um host transmite dados ao mesmo tempo, implementado por meio de

um algoritmo com mecanismo de gestão de colisão e transmissão. Conforme

Forouzan (2010), nesse método, a estação monitora continuamente o meio de

transmissão após transmitir um frame para: veri car se a transmissão foi bem

sucedida, nalizar a transmissão ou, se houver colisão na transmissão,

providenciar a retransmissão. O algoritmo detecta a colisão do sinal transmitido e


controla sua retransmissão com a de nição de um tempo aleatório para transmitir

e retransmitir os dados conforme a disponibilidade do meio (cabo), por meio de

protocolos de revezamento. Esse padrão é implementado nas redes padrão

Ethernet, normatizadas pela IEEE 802.3.

CARRIER SENSE MULTIPLE ACCESS WITH COLLISION AVOIDANCE (CSMA/CA)

Protocolo que de ne o formato de utilização de um meio de comunicação

compartilhado por meio de prevenção de colisão de onda portadora. Seu

funcionamento é realizado a partir da análise do meio pelo qual o sinal será

transmitido, e ao se veri car que o canal está livre, a transmissão é iniciada. Como

apresentam Kurose e Ross (2013), durante a transmissão em uma rede de

computadores, cada host veri ca o canal antes de transmitir e abstém-se de


transmitir quando percebe que o canal está ocupado. Esse é um padrão utilizado

pelas redes sem o (wireless) e normatizado pela IEEE 802.11.

Essa camada é composta também por outros protocolos que regem a

comunicação em redes de telecomunicações e redes convergentes no contexto de


integração entre redes de telecomunicações e redes de computadores.

SAIBA MAIS 

Protocolos de redes de computadores são os padrões desenvolvidos via


programação que regem o funcionamento dos serviços em redes de

computadores. Além das aplicações dos protocolos de redes de

computadores e suas funções, existe uma preocupação quanto a questões

[Link] 26/30
03/03/2021 lddkls211_red_sis_dis

de segurança em redes, que transcendem a funcionalidade de cada

protocolo e é suportada por protocolos adicionais, que operam em

camadas ou mesmo em subcamadas. Segundo Stallings (2015), o SSH é um

protocolo para comunicações seguras de rede projetado para que sua

0
implementação seja relativamente simples. Aplicações SSH cliente e

Ver anotações
servidor são encontradas na maioria dos sistemas operacionais e utilizadas

para login remoto e tunelamento (termo utilizado nas VPN – Virtual Private

Network).

Caro aluno, nesta seção foram apresentados alguns dos principais protocolos de

camada de aplicação àqueles que estão mais próximos ao pro ssional de

tecnologia da informação e mesmo de usuários, que regem as aplicações nais dos

serviços distribuídos em redes de computadores. Passamos por uma análise dos


dois principais protocolos de camada de transporte, o TCP e o UDP,

caracterizando-os pelas orientações à conexão e não orientação à conexão e

relacionando-os com protocolos e natureza de aplicações. Na camada de inter-

redes, pudemos conhecer as funções de endereçamento pelo seu principal

protocolo, o IP, bem como ter uma breve descrição de protocolos de roteamento.

Para nalizar, mostramos alguns protocolos de camada de host de rede, que


de nem a forma com que os dispositivos físicos implementam protocolos de

comunicação e tratativas de erros.

PESQUISE MAIS

Conheça a seção 17.2 Secure Socket Layer, do capítulo 17, Segurança na

camada de Transporte, do livro Criptogra a e Segurança em redes:


princípios e práticas, de Stallings (2015). Trata-se de um importante livro
dentro do contexto de redes e traz conteúdo referente à criptogra a e

segurança de redes.

Conheça a seção 17.3 Transport Layer Security, do capítulo 17, Segurança

na camada de Transporte, do livro Criptogra a e Segurança em redes:


princípios e práticas, de Stallings (2015). Trata-se de um importante livro
dentro do contexto de redes e traz conteúdo referente à criptogra a e à

segurança de redes.

STALLINGS, W. Criptogra a e segurança de redes: princípios e práticas. 6

ed. São Paulo: Pearson Educacional do Brasil, 2015.

[Link] 27/30
03/03/2021 lddkls211_red_sis_dis

Conheça o site da revista eletrônica Wired. Trata-se de uma revista de


referência mundial sobre redes de computadores que acompanha toda a

história das redes. 

0
WIRED - Magazine. Revista eletrônica.

Ver anotações
Conheça o site da revista eletrônica Network World. O site é uma

referência mundial de informações sobre redes de computadores.

FAÇA VALER A PENA


Questão 1

As redes sem o (wireless) são comumente utilizadas em ambientes domésticos


para acesso à internet via desktops, notebooks, smartphones, smartTVs entre os

diversos dispositivos com interface de rede. No ambiente de trabalho, as redes

sem o também são de grande importância, pois permitem ao pro ssional

atividades operacionais e administrativas com mobilidade. Defendido por Kurose e

Ross (2013) as redes que fazem uso dos protocolos IEEE 802.11 projetadas para

comunicação sem o estão presentes no local de trabalho, em casa, em

instituições educacionais, em cafés, aeroportos e esquinas.

Assinale a alternativa que traz o protocolo em nível de host de Rede que suporta o

padrão IEEE 802.11 utilizado para as redes Wi-Fi.

a.  CSMA/CD.

b.  HTTP.

c.  CSMA/CA.

d.  UDP.

e.  FTP.

Questão 2

Na camada de transporte da arquitetura do TCP/IP (Transmission Control

Protocol/Internet Protocol), os serviços de transporte de dados podem ser


orientados à conexão e assim fazerem transmissões com a garantia de entrega dos

dados, ou serviços não orientados a conexões, que não tem esta garantia, pois

neste protocolo a velocidade de entrega é mais importante do que a completude.

Esses serviços são regidos por protocolos especí cos: o TCP e o UDP, que possuem

abordagens diferentes em sua operação. Ambos os protocolos possuem grande

importância no cenário de aplicações distribuídas, logo, deve ser uma escolha de

[Link] 28/30
03/03/2021 lddkls211_red_sis_dis

igual importância quando um programador decide desenvolver um sistema ou

aplicativo de transferência de informações em aplicação distribuída em rede de

computadores.

0
Assinale a alternativa que apresenta um protocolo de camada de transporte do

modelo TCP/IP, que é utilizado com os protocolos de camada de aplicação SMTP e

Ver anotações
FTP.

a.  UDP.

b.  TCP. 

c.  DNS.

d.  DHCP. 

e.  NFS. 

Questão 3

Na camada de transporte, os protocolos TCP e UDP utilizam-se de portas lógicas

para acessar os serviços de camada de aplicação. Assim, há números de portas


utilizadas para que um sistema de redes de computadores identi que um

protocolo de rede.

Sobre as portas utilizadas como TSAP em redes de computadores, analise as

a rmativas a seguir:

1. O protocolo TCP utiliza, de forma padronizada, a porta 80 para os serviços de

protocolo HTTP.

2. O protocolo UDP utiliza, de forma padronizada, as portas 161 e 162 para os

serviços de protocolo SNMP.

3. O protocolo TCP utiliza, de forma padronizada, a porta 8080 para os serviços de

protocolo FTP.

4. O protocolo TCP utiliza, de forma padronizada, a porta 25 para os serviços de

protocolo SMTP.

a.  I e II, apenas.

b.  I, II e III, apenas.

c.  II e III, apenas. 

d.  I, II e IV, apenas. 

e.  I, II, III e IV.  

[Link] 29/30
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações

[Link] 30/30
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

PROTOCOLOS DE REDES

0
Renato Cividini Matthiesen

Ver anotações
SERVIÇOS E PROTOCOLOS DE REDE EM NÍVEL DE APLICAÇÃO
Descrição dos principais protocolos de rede em camada de aplicação que serão utilizados para
a implantação dos sistemas de informações baseados em Web, um serviço de e-mail ou correio
eletrônico e a utilização de um sistema de transferência de arquivos.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR

RELATÓRIO DO PROJETO DE REDES: ANÁLISE DE PROTOCOLOS E


SERVIÇOS EM NÍVEL DE APLICAÇÃO
Caro cliente, esta consultoria apresentará um relato simpli cado sobre os serviços

que poderão ser utilizados em sua nova rede de computadores.

[Link] 1/4
03/03/2021 lddkls211_red_sis_dis

O primeiro serviço a ser apresentado é o de Web services, que permite que


usuários da rede façam uso de sistemas baseados na WWW, que utiliza o protocol

HTTP. Esse protocolo é chamado protocolo de transferência de hipertexto e é


usado para representação de sistemas dentro de navegadores de internet que

0
suportam o formato de hipertexto e sistemas multimídia. O HTTP de ne como os

Ver anotações
clientes requisitam páginas aos servidores e como eles as transferem aos clientes.
A WWW, formatada pelo HTTP, refere-se a um sistema de padrões universalmente

aceitos para se armazenar, recuperar, formatar e apresentar informações


utilizando o modelo cliente/servidor em sistemas de redes de computadores.

Faz-se importante também informar que o protocolo HTTPS é também suportado


para que sistemas baseados em segurança possam ser utilizados. Esse serviço

pode ser implementado em uma empresa mediante instalação e con guração de


um servidor Web, provido pelo IIS para plataformas Windows e Apache Server, por

exemplo, para uma plataforma Linux.

O segundo serviço suportado pela estrutura de rede é o serviço de e-mail ou

correio eletrônico suportado pelo protocolo SMTP. Esse protocolo gerencia e


distribui mensagens eletrônicas para sistemas de e-mail. O POP3 é um protocolo

utilizado também para sistemas de correio eletrônico, para o gerenciamento de e-


mails, assim como o IMAP. O POP3 realiza o download das mensagens de e-mail ao

acessar uma caixa de correio eletrônico para a caixa de entrada no sistema


gerenciador, liberando o espaço ocupado pelas mensagens no servidor de e-mail,

enquanto o IMAP é um protocolo de correio eletrônico que acessa a caixa de e-


mail e sincroniza as pastas da conta do usuário, mas não faz seu download. O

Windows Server possui recurso para instalação de servidores de e-mail; em Linux,


pode-se utilizar o Post x e o Dovecot, por exemplo, como servidores de e-mail.

O terceiro serviço é o de transferência de arquivos, promovido pelo protocolo FTP.


Tanto o HTTP quanto o FTP são protocolos de transferência de arquivos. Esse

protocolo permite a transferência de arquivos de forma especí ca para outros


sistemas. São exemplos de aplicativos que operacionalizam o serviço de

transferência de arquivos via protocolo FTP: FileZila, um dos mais conhecidos


programas por ser de fácil uso e trazer ferramentas completas; Classic FTP; Free

FTP; e Cyberduck — este último com código aberto e compatibilidade com diversas
plataformas.

Caro cliente, esperamos que as informações técnicas aqui apresentadas possam

auxiliá-lo quanto à qualidade e aos serviços que estarão disponíveis em sua rede.

[Link] 2/4
03/03/2021 lddkls211_red_sis_dis

AVANÇANDO NA PRÁTICA

ESCOLHA DE PROTOCOLOS PARA CONFIGURAÇÃO DE SERVIÇOS EM


REDE
Protocolos da arquitetura TCP/IP estão distribuídos em camadas e operacionalizam

0
a transmissão de dados dentro e uma arquitetura de rede com independência de

Ver anotações
dispositivos e tipos de aplicação. Na camada de transporte existem os protocolos
TCP e UDP responsáveis por fazer o transporte de dados m a m e entregá-los

aos protocolos de camada de aplicação que determinarão os serviços visíveis ao

usuário.

Para o pro ssional de tecnologia da informação, a identi cação do protocolo de


transporte que atuará na transferência de dados é importante dentro da

programação de um sistema distribuído na rede. Essa identi cação determina o

uso do protocolo TCP, se os dados necessitam de con abilidade e garantia de

entrega, como em uma aplicação de transferência de arquivos, por exemplo, ou,


ainda, o uso do UDP, se a prioridade é a velocidade da transmissão, em que o

protocolo em nível de transporte privilegia a velocidade de entrega e não a

garantia de sua totalidade, como em sistemas de transmissão de streaming de

áudio e vídeo, por exemplo. Mas também há outras opções de protocolos a serem
utilizados para a transmissão de vídeos esportivos utilizando-se o TCP, como o

HLS.

Considere que você é o pro ssional da área de tecnologia da informação

responsável por desenvolver um sistema de informações para Web que será


utilizado para transmissão de jogos esportivos. No desenvolvimento do sistema

que será carregado via browser, haverá a necessidade de escolha e utilização de

um protocolo de camada de Transporte adequado para esse tipo de transporte de

dados e a escolha entre os protocolos TCP e UDP relatada. Apresente um relatório


com a descrição técnica do protocolo de nível de transporte a ser utilizado

juntamente aos HLS no sistema a ser desenvolvido para aplicação em formato de

HTTP. O que se espera é conhecer as características e utilidades do HLS junto ao

protocolo de nível de transporte utilizado, bem como as características que o

levam a ser uma tecnologia utilizada na atualidade.

RESOLUÇÃO 

O protocolo UDP é um protocolo não orientado à conexão, ou seja, a camada


de transporte mapeia o pedido de transmissão de uma máquina em um

pedido feito pela camada de rede. Ele é um protocolo que garante maior

[Link] 3/4
03/03/2021 lddkls211_red_sis_dis

rapidez em aplicações, porém não garante a entrega de pacotes. Essa tarefa

deve car para outra camada. É um protocolo importante para aplicações de

streaming de áudio e vídeo.

0
O protocolo TCP é um protocolo orientado à conexão, ou seja, o serviço de

transporte fornece meios para estabelecer, manter e liberar conexões de

Ver anotações
transporte entre um par de usuários, por meio de pontos de acesso ao serviço

de transporte (SAP). Ele é utilizado para aplicações HTTP, FTP e SMTP.

Considerando-se as de nições e aplicações do protocolo de transmissão de

streaming HLS, sua utilização é realizada com o protocolo TCP e não com o

protocolo UDP. As razões para utilização do HLS com TCP é que o HLS é

transmitido para o protocolo de aplicação HTTP em um momento em que os


sistemas para internet possuem maiores velocidades de transmissão (quando

o streaming foi desenvolvido e a velocidade de transmissão via conexão era

menor). As velocidades de transmissão em sistemas móveis atuais são

compatíveis com velocidades de entrega de vídeos com as garantias de nidas


pelo protocolo TCP. Outro motivo é que o HLS não precisa ser em tempo real,

como nas videoconferências, considerando-se a transmissão da partida

esportiva. Além disso, a ausência de um dado poderia ter maior impacto do

que sua entrega atrasada no máximo em dez segundos.

[Link] 4/4
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

REDES E SUB-REDES

0
Renato Cividini Matthiesen

Ver anotações
O QUE É IPV4?
O IPv4 (Protocolo de Internet versão 4) é a quarta versão do Protocolo de Internet (IP) e é
utilizado para a con guração de computadores, impressoras e nós de rede com o famoso
endereço IP.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

CONVITE AO ESTUDO

Caro aluno, seja muito bem-vindo à segunda unidade da disciplina de Redes e


Sistemas Distribuídos: arquitetura e tecnologia de redes. Esta é uma unidade de
ensino que tem por objetivo levá-lo ao estudo sobre endereçamento IP (Internet
Protocol) de uma rede, compreensão e con guração de endereços e máscaras de
rede e de sistemas de nomes de domínio. Adicionalmente, o estudo também

abrange conceitos de Ethernet, operação de rede com interoperabilidade de


protocolos e gerenciamento de desempenho e con guração de uma rede de

computadores. O adequado estudo desta unidade fará com que a construção do


conhecimento em redes possa seguir para abordagens técnicas e práticas

[Link] 1/30
03/03/2021 lddkls211_red_sis_dis

embasadas em tecnologias de comunicação de dados e estruturas de redes de


computadores e levar o pro ssional de redes à construção de soluções

computacionais distribuídas.

0
A primeira seção, Redes e sub-redes, abordará conceitos sobre endereçamento IP,

notação e classes de endereço, atribuição de endereço, con guração de máscaras

Ver anotações
de rede, segmentação de uma rede local e utilização de um servidor DNS (Domain

Name System). A compreensão sobre endereços IP e sua utilização é fundamental


para o trabalho de um pro ssional de tecnologia da informação no cenário das

redes de computadores.

Em seguida, a segunda seção, Ethernet e IPv6, apresentará conceitos de Ethernet

e domínios de broadcast e de colisão, operação, velocidade e comutação em redes.


Este estudo lhe levará a compreender melhor o funcionamento de uma rede

baseada no protocolo IEEE 802.3 e analisar a performance de uma rede em função


da operação dentro de um canal compartilhado e com controle de colisão.

Conheceremos informações e características do endereço IPv6 (Internet Protocol

version 6) e veremos também as diferenças entre o IPv4 e o IPv6, explorando os


tipos de endereços, coexistência, interoperabilidade e comandos de testes e

conectividade. Aqui, você se aprofundará nas atividades de endereçamento e


testes de rede, para que tenha conhecimento em planejar redes com as versões

adequadas de endereços IP, assim como a coexistência de ambos os endereços em


uma rede.

Para nalizar, temos a terceira seção, Gerência de desempenho, con guração e


contabilização, que trará conceitos e prática para análise e con gurações de uma

rede de computadores, análise de gargalos, tempo de resposta, latência de rede,


QoS (Quality of Services) e análise de trá co. Faremos também uma introdução ao

protocolo VLAN Trunk e ao serviço de acesso remoto com o SSH (Secure Shell). Os
conhecimentos adquiridos nesta seção levarão o pro ssional de tecnologia da

informação a gerenciar uma rede de forma técnica e utilizar ferramentas de


monitoramento e gerenciamento da rede.

Com os conhecimentos assimilados desta unidade, você será capaz de fazer o


planejamento de um esquema de endereçamento de redes utilizando os

protocolos IPv4 e IPv6, o planejamento e a de nição de máscaras de sub-redes e a

con guração de um servidor DNS, além de realizar o gerenciamento de uma rede


de computadores com análise de desempenho e contabilização via ferramentas de

análise, redes virtuais e acesso remoto.

[Link] 2/30
03/03/2021 lddkls211_red_sis_dis

PRATICAR PARA APRENDER

Caro aluno, esta seção traz para você um conteúdo referente à arquitetura e

tecnologia de redes, focando em endereçamento IP de uma rede de computadores


local (LAN – Local Area Network). O endereçamento de uma rede local deve levar

0
em consideração a análise de volume de endereços para os dispositivos da rede, a

Ver anotações
topologia da rede e a estrutura organizacional. O endereçamento de uma rede

local necessita seguir critérios preestabelecidos referente a classes (ou sem


classes) e números de endereços IPs a serem utilizados, assim como sua

distribuição e organização em sub-redes, o que é realizado através do uso de

máscara de rede.

A atribuição de endereços de rede para hosts de uma rede local irá, em primeiro
lugar, levar em consideração o número de dispositivos que poderão fazer parte da

rede. Tendo em vista o número de hosts a serem endereçados, o administrador da

rede de nirá a classe IP para sub-rede, ou fará o seu cálculo da máscara da sub-

rede utilizando a técnica de CIDR (Classless Inter-Domain Routing).

Aprofundaremos nossos estudos sobre redes conhecendo o DNS (Domain Name

System), ou sistema de nomes de domínio, que estrutura uma rede dentro de um


serviço de nomes de domínio para que as pesquisas possam utilizar nomes

de nidos por URL (Uniform Resource Locator) na tradução de endereços IPs para
nomes utilizados nos browsers de internet.

Tendo as informações sobre endereços de rede e máscara de rede, podem ser

informados manualmente os endereços e as máscaras nos dispositivos, ou fazê-lo

de forma automática, utilizando-se de um servidor DHCP (Dynamic Host


Con guration Protocol), através do serviço de mesmo nome em um sistema
operacional de rede.

A empresa de coworking que contratou sua consultoria para análise e implantação

de um sistema de redes de computadores precisa, nesta segunda fase do projeto,


de uma análise mais aprofundada sobre o seu sistema de endereçamento de

redes, com um estudo e planejamento de utilização de intervalo de endereços IP a

serem atribuídos para os dispositivos que estarão conectados nesta rede. Desta

forma, a rede interna precisa ser adequadamente con gurada com endereços IPs
e máscara de sub-rede, para que todo o sistema computacional possa ser

executado sem ocorrer falhas ou lentidões mediante a possibilidade de

con gurações de endereços repetidos por usuários do ambiente.

[Link] 3/30
03/03/2021 lddkls211_red_sis_dis

Com o objetivo de manter uma con guração pro ssional dos computadores e

dispositivos da rede na empresa, deve ser proposto segmentar a rede em cinco

sub-redes (Gerência, Sistemas, Reuniões, Clientes e Visitantes), dentro de uma


estrutura de rede em Classe C, com a rede [Link] e máscara de rede

0
[Link]. A topologia da rede é mais uma vez representada na Figura 2.1 a

Ver anotações
seguir.

Figura 2.1 | Topologia de estudo para con guração de HTTP e DNS

Fonte: elaborada pelo autor.

Seu trabalho consiste em gerar um relatório, chamado de Relatório do projeto de

redes: con guração do endereçamento da rede.

O endereçamento de rede através da atribuição de números IPs para cada


dispositivo é uma tarefa envolvente, que leva o pro ssional de tecnologia da

informação a praticar os conceitos sobre arquitetura de redes de computadores e

atribuir endereços lógicos internos para as redes de computadores de nidos pelas

classes e pelas sub-redes e desenhados através das máscaras de rede.

CONCEITO-CHAVE

Você já imaginou como toda a internet funciona? Já pensou que cada dispositivo

conectado à internet possui um endereço único, dentro do domínio de sua rede, e


que ele pode se comunicar com outro dispositivo localizado do outro lado do
mundo? Pois bem, este sistema funciona graças ao protocolo IP e aos critérios de

endereçamentos público e privado.

A seguir, desenvolveremos o conhecimento para que possamos realizar o


endereçamento de nossas máquinas e nossas sub-redes.

[Link] 4/30
03/03/2021 lddkls211_red_sis_dis

ENDEREÇO IP (INTERNET PROTOCOL)

De acordo com Stallings (2016), na maioria dos casos, uma rede local ou uma rede
remota não é uma entidade isolada, e necessita de um sistema que possa fazer
com que tenha acesso a outras redes. 

0
Ver anotações
Nesta seção, trabalharemos o conceito e a aplicação do protocolo IPv4
(Internet Protocol version 4) para a con guração de computadores,

impressoras e nós de rede com o famoso endereço IP. A versão IPv6


(Internet Protocol version 6) também será abordada, porém na Seção 2

desta unidade.

Conforme relata Forouzan (2010), o IPv4 é um protocolo de datagramas sem

conexão e não con ável, ou seja, um serviço de entregas chamado de best-e ort, o
que signi ca que o IPv4 não possui mecanismos de controle de erros ou de uxo,
com exceção da detecção de erros no cabeçalho. Isto nos remete a relembrar que

um protocolo adicional de camada de transporte deverá assumir a


responsabilidade de realizar a conexão e a entrega con ável dos dados, tarefa
realizada pelo protocolo TCP (Transmission Control Protocol). As de nições

técnicas sobre o protocolo IP estão formalizadas na RFC 791 da IETF.

Observação: IETF (Internet Engineering Task Force) e RFC (Request of

Comments). A RFC 791 de ne as especi cações e questões técnicas a


respeito do protocolo IP.

Figura 2.2 | Formato do datagrama IPv4

Fonte: Kurose e Ross (2013, p. 246).

[Link] 5/30
03/03/2021 lddkls211_red_sis_dis

A seguir, é apresentada uma breve descrição dos campos do datagrama IPv4.


Versão: versão do protocolo IP (4 ou 6).

Comprimento do cabeçalho: tamanho do cabeçalho.


Tipo de serviço: prioridade do pacote.

0
Comprimento do datagrama: tamanho total do pacote (datagrama), com

Ver anotações
cabeçalho e dados.
Identi cador de 16 bits: fragmento do pacote IP original.
Flag: MF, usado para o deslocamento dos datagramas e sua reconstrução; DF,
utilização para autorização de fragmentação.
Deslocamento de fragmentação: ordem dos pacotes no processo de

remontagem.
Tempo de vida: TLL (Time to Live). Indica o “tempo de vida” que o pacote possui a
cada salto pelos nós da rede.

Protocolo da camada superior: repassa os dados para os protocolos das


camadas superiores.

Soma de veri cação do cabeçalho: informa os erros no cabeçalho.


Endereço IP de origem: endereço do remetente.
Endereço IP de destino: endereço do receptor.

Opções: implementações opcionais.


Dados: dados a serem transmitidos.

Observada a composição do fragmento IP na rede, re etiremos sobre como é feito


o endereçamento de cada dispositivo conectado em uma rede de computadores.

Por exemplo, no sistema telefônico, a composição de um número local é

estruturada em um conjunto de números, em que parte do número identi ca o


país, outra parte a região, outra ainda a central telefônica e outra o número do
assinante.

Exemplo de número telefônico: 55 19 3555 0001

55: identi ca um país.

19: identi ca uma região.

3555: identi ca a central telefônica.

0001: identi ca o número do assinante (número hipotético).

[Link] 6/30
03/03/2021 lddkls211_red_sis_dis

A composição do endereço IP também segue esta estrutura, em que parte do


número identi ca a rede que o dispositivo pertence e parte determina o endereço
do próprio dispositivo.

0
Exemplo de número IPv4: [Link]

Ver anotações
192.168.5: identi ca a rede ou sub-rede que o dispositivo pertence.

114: identi ca o dispositivo dentro da rede em que ele pertence.

Kurose e Ross (2013) de nem o IP como um endereço lógico, criado para que um
dispositivo em rede possa se comunicar com outro dispositivo em rede. Trata-se

de um endereço formado por 32 bits (ou 4 bytes), o que permite que sejam
de nidos 232 endereços de rede, ou seja, mais de 4 bilhões de endereços, o que
pode parecer o su ciente para endereçar todos os dispositivos em rede, mas não é

na verdade.

REFLITA

O contexto atual de IoT (Internet of Things), ou Internet das Coisas, faz com

que diversos dispositivos possam ser conectados a uma rede de


computadores e à internet. Diamandis e Kotler (2018) sustentam que, no
ano de 2020, já deve haver mais de 50 bilhões de dispositivos conectados

em rede, e que em dez anos, ou seja, no ano de 2030, o número deverá


chegar a 10 trilhões. Todos estes dispositivos precisarão de um endereço IP

para seu funcionamento.

Um endereço IPv4 é um número binário, formado por quatro conjunto de


números, chamados de octetos, que normalmente são representados por notação

decimal. Um exemplo de endereços IP é: [Link]; outro exemplo é:


[Link]; e outro ainda é: [Link]. Perceba que, se o endereço é

formado por 4 bytes, cada 1 byte corresponde a 8 bits. Por exemplo, o endereço IP
[Link] tem o número decimal 200, equivalente aos 8 primeiros bits do
endereço; 241 é o decimal do segundo conjunto de 8 bits; 120 é o terceiro; e 25, o

quarto. Este número IP é a representação do número binário:


11000001.00100000.11011000.00001001. A Figura 2.3 apresenta um exemplo de

endereço IPv4 dividido em octetos binários com as devidas representações.

Figura 2.3 | Formato do endereço IPv4

[Link] 7/30
03/03/2021 lddkls211_red_sis_dis

0
Fonte: elaborada pelo autor.

Ver anotações
Um endereço IPv4 é dividido em duas categorias:

Pública, que o identi ca como endereço único atribuído e alocado

de nitivamente e globalmente único para um dispositivo na internet. Para


obter um endereço desta categoria, é necessário solicitá-lo a uma instituição de
registro de internet.

Privada, na qual um endereço IPv4 deve estar de nido dentro de um intervalo

de endereços com números limitados a um conjunto de classes e/ou sub-redes


que podem ser utilizados livremente em redes privadas, sem acesso direto à

internet.

SAIBA MAIS

Os endereços IP dos hosts de uma rede de computadores podem ser de

natureza pública ou privada. Os endereços de natureza pública são


atribuídos e controlados pela IANA (Internet Assigned Numbers Authority),

organização responsável pela atribuição e pelo controle de endereços IPs

no mundo. Já os endereços privados são atribuídos utilizando-se de faixas


autorizadas dentro das classes de endereços IPs. Você está convidado a

visitar o site da IANA. A entidade brasileira correspondente à IANA é a

[Link], que também pode ser visitada na internet.

CLASSES DE ENDEREÇOS IPV4

Um endereço IP privado está condicionado a um intervalo de nido, que pode ser


utilizado para con guração manual ou automática dentro de uma rede privada.

Para melhor aproveitamento e gestão de uma rede, os endereços IPs privados

estão divididos em cinco classes: A, B, C, D e E. As classes A, B e C são aquelas úteis


e con guráveis dentro de uma rede local.

Endereços de classe A estão compreendidos dentro do limite de [Link] até

[Link].

Endereços de classe B, de [Link] até [Link].

[Link] 8/30
03/03/2021 lddkls211_red_sis_dis

E endereços de classe C, de [Link] até [Link].

Figura 2.4 | Classes de endereços IPv4

0
Ver anotações
Fonte: Tanenbaum (2011, p. 282).

O endereço IP de um host pode ser visualizado através do comando ipcon g/all,

quando estiver utilizando sistemas operacionais Windows, e ifcon g se estiver

com um sistema Linux. A Figura 2.5 demonstra um exemplo de informação sobre


endereço IP apresentado em console via comando ipcon g/all e ifcon g .

Figura 2.5 | Visualização (parcial) de endereço IP de um host

[Link] 9/30
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

Além da utilização de endereços dentro de intervalos de nidos pelas classes A, B e

C em uma rede local privada, há ainda outras regras de endereçamento que


necessitam ser observadas. As regras são:

1. Não pode haver duas ou mais estações com o mesmo endereço IP na mesma

rede.

2. A mesma sub-rede deve ser de nida em um endereço IP para que dois hosts se

comuniquem diretamente.

3. Para determinar qual parte da rede IP signi ca a rede, é usado o artifício de


sub-rede, identi cado no próprio endereço IP. De forma complementar, o

Quadro 2.1 traz algumas regras sobre a composição de um endereço IP que o

invalidam quando utilizados para o endereçamento de um host de rede.

Quadro 2.1 | Regras de endereçamento IP reservados

Endereço

inválido Razão

[Link] 10/30
03/03/2021 lddkls211_red_sis_dis

Endereço
inválido Razão

[Link] Um endereço IP não pode começar com zero quando

0
atribuído a um host.

Ver anotações
O identi cador de rede 0 é utilizado para indicar que está na
mesma rede.

[Link] Um endereço IP não pode começar com o número 127.

Este número é reservado para testes internos (loopback).

[Link] Nenhum identi cador de rede pode ser 255 e nenhum

xxx.255.255.255 identi cador de host pode ser composto apenas de endereços

[Link].255.255 255. Este número na posição de identi cação do host é

reservado para broadcast.

xxx.0.0.0 Nenhum identi cador de host pode ser composto apenas de

zeros.

[Link].255 Nenhum endereço de host de classe C pode terminar com 0


ou com 255, pois os endereços com o primeiro e o último

número do intervalo são reservados.

Fonte: elaborado pelo autor.

Endereço de broadcast: são endereços destinados para comunicação

simultânea com todos os hosts da rede. Por exemplo, um servidor de

endereços IP, como o DHCP (Dynamic Host Con guration Protocol), o utiliza
para que as estações possam receber seus endereços IP quando se conectam à

rede. Os endereços de broadcast utilizam o 255 na identi cação do host de

rede, por exemplo: xxx.255.255.255, [Link].255.255 ou [Link].255.

Conforme relata Kurose e Ross (2013), quando um host envia um datagrama


com o endereço [Link], a mensagem é entregue a todos os outros

hosts da mesma sub-rede.

Endereço de loopback: o endereço IPv4 [Link] é um endereço reservado

para realizar testes de comunicação interprocessos da interface da rede pelo


próprio dispositivo. Quando uma aplicação usa o endereço de loopback como

destino, o software do protocolo TCP/IP devolve os dados sem gerar tráfego na

rede. É uma forma simples de fazer com que um cliente local de rede se

[Link] 11/30
03/03/2021 lddkls211_red_sis_dis

comunique com o servidor local de forma a testar a própria interface de rede.

Este endereço é importante para testar o próprio dispositivo de rede (placa de


rede ativa). Você pode testar sua interface digitando ping [Link]. A Figura

2.6 apresenta um exemplo de teste de interface com o comando ping.

0
Ver anotações
Figura 2.6 | Teste de interface de rede com o comando ping e endereço de loopback

Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

Se você não deseja conectar diretamente seu dispositivo à internet, você pode

utilizar qualquer faixa de endereço, conforme apresentado. Para evitar con itos, se

for conectar seu computador à internet, é necessário que se utilize uma das faixas
de endereços reservadas, com as classes A, B ou C em sua rede interna. O Quadro

2.2 apresenta as faixas de endereços reservados mais comuns.

Quadro 2.2 | Faixas de endereços IPs comuns

Classe Faixa Redes e hosts

A 10.x.x.x 10 é o endereço da rede, e x.x.x são os endereços de

hosts.
Composição: [Link]

B 172.16.x.x 172.16 é o endereço da rede, e x.x é o endereço de hosts.

Composição: [Link]

C 192.168.1.x 192.168.1 é o endereço da rede, e x é o endereço de


hosts.

Composição: [Link]

Fonte: elaborado pelo autor.

EXEMPLIFICANDO

[Link] 12/30
03/03/2021 lddkls211_red_sis_dis

Para ilustrar a utilização destes endereços, vamos observar alguns

exemplos:

O endereço de classe A: endereço [Link] informa que 10 é o

0
endereço da rede, e 0.0.85 é o endereço do host.

Ver anotações
O endereço de classe B: endereço [Link] informa que 172.16 é o

endereço da rede, e 25.85 é o endereço do host.

O endereço de classe C: endereço [Link] informa que 192.168.0 é

o endereço da rede, e 85 é o endereço do host.

Em uma rede privada, os endereços devem seguir:

Classe A: [Link] a [Link].

Classe B: [Link] a [Link].

Classe C: [Link] a [Link].

Em redes públicas, os endereços IP precisam ser atribuídos pelo órgão

regulamentador e serão utilizados por servidores, como o [Link],

que identi ca o servidor do Google.

MÁSCARA DA SUB-REDE

Uma máscara de rede é uma técnica utilizada para de nir a porção do número IP

que está designada para identi car a rede e a porção utilizada para identi car o

host. A Figura 2.7, apresentada a seguir, demonstra que o endereço IPv4 da rede é
[Link], e sua máscara da rede é [Link], de forma que os três

primeiros octetos (255.255.255) representam a rede, e o quarto octeto (0)

representa o host. Podemos perceber também que há um endereço que identi ca

o Gateway Padrão ([Link]), que representa o caminho de saída das


mensagens da sub-rede. Este endereço é normalmente identi cado do IP de um

dispositivo concentrador/controlador de rede, representado por um switch ou

roteador.

Figura 2.7 | Exemplo de con guração de número IP, máscara de sub-rede e gateway

Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

[Link] 13/30
03/03/2021 lddkls211_red_sis_dis

O Quadro 2.3 busca complementar as informações anteriores com a distribuição

dos octetos do endereço IP em conformidade com as classes de rede.

Quadro 2.3 | Máscaras de sub-rede

0
Endereço IP Classe Rede Host Máscara

Ver anotações
[Link] Classe 10. 158.201.85 [Link]
A ([Link])

[Link] Classe 172.16. 189.85 [Link]

B ([Link])

[Link] Classe 192.168.12. 85 [Link]


C ([Link])

Fonte: elaborado pelo autor.

Observamos que o endereço IP permite que uma rede seja dividida em redes
diferentes. A composição de um endereço IP de ne, conforme vimos, que um host

tem sua identidade única e pertence a uma rede. Considerando que uma rede

pode ser segmentada, ou seja, dividida em sub-redes, o endereçamento também


precisa ser utilizado para formalizar esta identi cação. Imagine que uma empresa

precise isolar os departamentos X, Y e Z dentro de uma rede interna. Isso é

possível por meio da manipulação da máscara de redes. Conforme apresentam


Kurose e Ross (2013), para determinar as sub-redes, cada interface deve ser

destacada de seu hospedeiro ou roteador, criando ilhas de redes isoladas com

interfaces fechando as terminações das redes isoladas. As sub-redes são o termo


técnico destas ilhas isoladas. Além da atribuição de mais endereços dentro das

classes A, B e C, que permitem a con guração de sub-redes, outro método

também foi criado com o objetivo de melhor aproveitar os endereços IPs dentro

das redes, chamado pelos autores de CIDR (Classless Inter-Domain Routing). Esta é
uma estratégia de atribuição de endereços conhecida como roteamento

interdomínio sem classes, a qual generaliza a noção de endereçamento de sub-

rede.

Da mesma forma que ocorre com o endereçamento de sub-rede utilizando as


classes mencionadas, no CIDR o IP de 32 bits é dividido em duas partes,

conservando a notação decimal com quatro grupos de números (octetos)

separados por ponto, mas adicionado de um novo número separado pela barra.

[Link] 14/30
03/03/2021 lddkls211_red_sis_dis

Como exemplo, um endereço na notação CIDR segue o seguinte formato: x.x.x.x/y,

onde o y identi ca o número de bits da primeira parte do endereço que identi ca a


rede. O restante dos bits identi cará os hosts.

0
Em uma rede classe C, por exemplo, temos os três primeiros octetos (formados

cada um por 8 bits) de nindo a rede, o que daria uma máscara em notação CIDR

Ver anotações
da seguinte forma: [Link]/24, onde 24 representa a soma dos bits dos três
octetos que identi cam a rede. Em uma rede classe B, temos os dois primeiros

octetos de nindo a rede, o que daria uma máscara de notação CIDR:

172.16.189,85/16, onde 16 representa a soma dos bits dos dois octetos que
identi cam a rede. Estas máscaras fazem com que muitos endereços IP dentro das

classes não sejam utilizados, o que representa um desperdício de endereços.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc semper venenatis

libero a fringilla. Nam blandit pellentesque neque, non vulputate dolor dapibus
vitae. Nulla fermentum cursus sem, ullamcorper dapibus leo mollis vulputate.

Quisque scelerisque, ex sit amet posuere commodo, leo dui tempus dui, nec

facilisis est dolor non lorem. Mauris non tincidunt lorem, non pulvinar turpis.
Aliquam pretium, metus et lobortis suscipit, tellus nunc tempus arcu, sit amet

hendrerit mi dolor et enim.

O CIDR permite que a notação que de ne a máscara de rede (/24 ou /16, por

exemplo) tenha números diferentes, utilizando um volume maior de bits nos


octetos que de nem a rede, o que divide o número de hosts para sub-redes e,

desta forma, aproveita-se o número de endereços para hosts dentro de uma rede

segmentada em sub-redes.

DIVISÃO DE UMA REDE EM SUB-REDES

Uma rede A, B o C pode ser dividida em sub-redes para que uma rede com um
número determinado de dispositivos possa ser con gurada de forma otimizada.

De acordo com Tanenbaum (2011), a segmentação de uma rede, ou divisão em


sub-redes, oferece alguns benefícios, como:

1. Reduzir o tráfego da rede, considerando que os hosts de uma sub-rede fazem

domínio de broadcast.

2. Simpli car o gerenciamento da rede com identi cação de falhas através do

mapeamento de endereços.

3. Controlar os recursos da rede através de sua segmentação.

[Link] 15/30
03/03/2021 lddkls211_red_sis_dis

Vamos tomar como exemplo uma rede classe C de nida como 192.168.123.x.

Conforme exemplo apresentado pela Microsoft (2020), se houver uma rede com

150 hosts em uma única rede, podemos apenas atribuir os endereços dentro do
intervalo de rede de nição (classe C com intervalo de endereços de [Link]

0
até [Link]). Porém, ser tivermos redes separadas sicamente, divididas

Ver anotações
em três redes de 50 hosts cada, pode-se utilizar a classe C e um endereço

[Link], utilizando os endereços úteis de [Link] até [Link]

que comportam os 150 hosts, mas precisaremos dividi-la em sub-redes. 

Lembre-se das regras de endereçamento que excluem os endereços

[Link] (primeiro endereço da sub-rede) e [Link] (último


endereço da sub-rede). Este é o exemplo de endereços que precisam ser

desconsiderados para atribuição aos hosts no exemplo da rede

[Link], pois, como temos três sub-redes, teremos três endereços de

rede e três endereços de broadcast.

Para dividir uma rede em quatro sub-redes, por exemplo, utiliza-se uma máscara

de sub-rede, que torna o endereço de rede maior (utilizando mais bits

emprestados dos bits do endereço da rede) e o número de endereços de hosts


menor (pois empresta bits do octeto do host), ou seja, utiliza-se de alguns dos bits

utilizados para identi car os hosts para identi car parte da rede. Por exemplo, a

máscara de sub-rede [Link] (11111111.11111111.11111111.11000000

binário) oferece quatro redes de 62 hosts cada. Os dois primeiros bits do último

octeto se tornam endereços de rede e possibilitam que se tenha redes adicionais.

Usando uma máscara de rede [Link], a rede [Link] dispõe de


quatro redes, sendo a primeira sub-rede [Link], a segunda [Link],

a terceira [Link] e a quarta [Link], com 62 hosts endereçáveis

em cada uma delas.

Para calcular as sub-redes através de um exemplo adaptado de Nunes (2017) e


poder melhor entender a divisão da rede apresentada anteriormente, seguiremos

estes passos:

Passo 1: fazer a conversão da máscara de rede de [Link] para binário, que

resulta em 1111111.11111111.11111111.00000000.

EXEMPLIFICANDO 

[Link] 16/30
03/03/2021 lddkls211_red_sis_dis

Na conversão de número binário para decimal, devemos somar os valores

numéricos representados pela posição do número binário 1 na posição em

seu octeto. Veja a tabela a seguir.

0
1 1 1 1 1 1 1 1 8 Bits

Ver anotações
128 64 32 16 8 4 2 1 Valor Binário

128+ 64+ 32+ 16+ 8+ 4+ 2+ 1+ =255

Exemplo de conversão:

Binário 0 1 0 0 1 0 0 1

Decimal 0+ 64+ 0+ 0+ 8+ 0+ 0+ 1+ =73

Na conversão de números decimais para binário, devemos dividir o número

decimal por 2 até que o resultado seja 0 ou 1. O número nal e os restos da


divisão são posicionados no octeto do byte de forma invertida.

Exemplo de conversão do número 73 decimal para binário:

Decimal        73/2=36 36/2=18 18/2=9 9/2=4 4/2=2 2/2=1

Binário 73=   1 0 0 1 0 0

O número 73 em decimal = 1001 0010 em binário (o oitavo bit é

naturalmente 0).

Passo 2: fazer o cálculo da quantidade de hosts para cada uma das sub-redes,

considerando o número (n) de bits necessários para:

A rede: 2n = 22 = 4, ou seja, para fazer quatro sub-redes será necessário alocar
dois bits da máscara de rede. Note que podemos ter dois ou quatro (ou mais,

desde que sejam números pares), assim como precisamos dividir nossa rede

em três sub-redes, utilizaremos o cálculo com quatro sub-redes.

Hosts de sub-rede: 2n = 26 = 64, com possibilidade de até 64 hosts em cada
sub-rede. Considere que, para converter os octetos, são utilizados: 1, 2, 4, 8, 16,

32, 64 e 128. Como foram utilizados dois bits para a de nição das redes,

sobraram outros seis bits para os hosts.

[Link] 17/30
03/03/2021 lddkls211_red_sis_dis

Passo 3: elaborar a tabela ou o racional com os endereços da sub-rede.

Novamente, lembre-se das regras de endereçamento, que excluem todos os

endereços de rede e de broadcast, por exemplo, os endereços [Link] e


[Link].

0
Sub-rede 1: [Link]: hosts que variam de [Link] até

Ver anotações
[Link], e broadcast [Link].

Sub-rede 2: [Link]: hosts que variam de [Link] até

[Link], e broadcast [Link].

Sub-rede 3: [Link]: hosts que variam de [Link] até

[Link], e broadcast [Link].

Sub-rede 4: [Link]: hosts que variam de [Link] até

[Link], e broadcast [Link].

Passo 4: identi car a máscara da rede. Considere que a máscara de rede

11111111.11111111.11111111.00000000 binário ([Link] decimal) utilizou

dois bits do octeto do host para adicionar nos octetos da rede (sub-rede), O

primeiro bit da máscara representa o número decimal 128, e o segundo bit, 64;
desta forma, temos 128 + 64 = 192, cando a máscara da rede como

11111111.11111111.1111111.11000000 binário ([Link] decimal). Em

notação CIDR, temos a máscara binária 11111111.11111111.11111111.11000000

com 26 bits de nindo a máscara da rede, o que resulta em uma notação decimal

de um endereço IP como [Link]/26, onde [Link] é um dos

endereços da rede e /26 identi ca a sub-rede, formada pela somatória dos bits que

identi cam a rede. A notação para a nova máscara de sub-rede é: [Link],


ou /26.

ASSIMILE

Um número binário pode tomar os valores de 0 e 1, ou seja, dois valores


numéricos. Um número binário de dois dígitos pode tomar as posições 00,

01, 10, 11, ou seja, quatro valores numéricos. Esta sequência se dará

exponencialmente até 256 valores numéricos em um octeto, ou seja, em

um número binário de oito dígitos, como um octeto de um endereço IP.

Como pode ser visto na representação a seguir, dois bits do octeto que

forma o endereço de host de um endereço de classe C foram adicionados


aos outros três bits que identi cam a rede para a formatação do número a

ser utilizado para representar a sub-rede, no quarto octeto da máscara.

[Link] 18/30
03/03/2021 lddkls211_red_sis_dis

Perceba que, quando temos o bit 0, o valor decimal representado no octeto

é desconsiderado na soma da máscara da rede; quando temos o bit 1,

somamos os valores decimais para a composição da máscara da sub-rede.

0
Bits da rede Bits do host

Ver anotações
128 64 32 16 8 4 2 1

1 1 0 0 0 0 0 0

Os endereços IPs e as máscaras (e sub-rede, se desejado) precisam ser informados

em cada host da rede. Segue, na Figura 2.8, um exemplo de con guração de

endereço IP e máscara de rede em um sistema Windows.

Figura 2.8 | Exemplo de con guração de endereço IP

Fonte: captura de tela elaborada pelo autor.

DNS (DOMAIN NAME SYSTEM)

O DNS é um protocolo utilizado para um sistema de domínio que faz a

interconexão de URL (Uniform Resource Locator), ou seja, nomes de endereços de

sites da internet com endereços IP. Este protocolo implementa um serviço

importante de resolução de nomes mediante endereços IPs externos, localizados

dentro de uma estrutura hierárquica na internet. As empresas também utilizam


servidores de DNS para que suas redes locais possam encontrar informações

mediante a utilização de nomes, inseridas como URL no lugar de endereços IPs,

utilizando-se de um servidor de DNS.

De acordo com Kurose e Ross (2013), o DNS costuma ser empregado por outras
entidades da camada de aplicação, como o HTTP, SMTP e FTP, para traduzir nomes

de hosts fornecidos por usuários para endereço IP. De forma sintética, para que

[Link] 19/30
03/03/2021 lddkls211_red_sis_dis

uma URL informada em um navegador possa retornar o conteúdo do site, é

necessário que ele busque o seu endereço IP correspondente através de alguns

passos:

0
1. O host do usuário executa o lado cliente da aplicação DNS.

Ver anotações
2. O navegador extrai o nome do host do URL e passa o nome para o lado do

cliente da aplicação DNS.

3. O cliente DNS envia uma consulta com o nome do host para um servidor DNS.

4. O cliente DNS recebe uma resposta com o endereço IP do nome do host

pesquisado.

5. O navegador recebe o endereço do DNS e abre uma conexão TCP com o


processo servidor do HTTP via porta 80 naquele endereço IP.

O DNS é um protocolo que implementa um serviço de resolução (tradução) de

nomes, endereços de páginas de nidas por suas URL (Uniform Resource Locator)

em endereços IPs dentro de uma estrutura hierárquica de servidores espalhados


pelo mundo todo. Na internet, existem servidores DNS raiz que se interligam a

servidores de domínio de alto nível, chamados de TLD (Top Level Domain),

responsáveis por domínios, como .com, .org, .net, .edu e .gov, e por domínios de

alto nível de países, como .uk, .fr., .br. Abaixo destes servidores, estão os

servidores DNS autorizativos (de autoridade, ou locais), disponibilizados por

organizações que desejam oferecer hosts servidores para acesso público na


internet, e nalmente os servidores de nomes locais, que necessariamente não

pertencem a uma hierarquia e são chamados de servidores de nomes default. A

Figura 2.9 apresenta os servidores raiz do mundo em 2012.

Figura 2.9 | Servidores raiz no mundo em 2012

Fonte: Kurose e Ross (2013, p. 99).

[Link] 20/30
03/03/2021 lddkls211_red_sis_dis

Em sua funcionalidade básica, quando um resolvedor tem uma consulta sobre um

nome de domínio, ele a envia a um dos servidores de nomes local. Se o domínio

que estiver sendo buscado estiver sob a jurisdição do servidor de nomes, serão

retornados os registros com as informações de acesso. Caso o domínio for remoto

0
e não houver informações sobre o domínio solicitado no local, o servidor de nomes

Ver anotações
(DNS) enviará uma mensagem de consulta para o servidor DNS de nível superior,
buscando o domínio solicitado. Dois protocolos agem neste processo: o próprio

DNS que traduz nomes simbólicos em endereços IP e o LDAP (Ligh-weith Directory

Access Protocol), que organiza as informações como uma árvore e permite


pesquisas em diferentes componentes e realiza a busca pelas informações

solicitadas. A Figura 2.10 ilustra a relação hierárquica e distribuída entre servidores

de controle de DNS espalhados pelo mundo com servidores locais.

Conforme exempli cam Kurose e Ross (2013): um hospedeiro [Link] deseja

o endereço IP de [Link]. Considere que o servidor DNS local é

[Link] e que um servidor DNS autorizativo para [Link] seja

denominado [Link]. Como mostra a Figura 2.10, o hospedeiro


[Link] primeiro envia uma mensagem de consulta DNS ao seu servidor DNS

local [Link]. A mensagem de consulta contém o nome de hospedeiro a ser

traduzido, isto é, [Link]. O servidor DNS local transmite uma

mensagem de consulta a um servidor DNS raiz, que veri ca o su xo edu e retorna

ao servidor DNS local uma lista de endereços IP de servidores TLD responsáveis

por edu. O servidor DNS local retransmite a mensagem de consulta a um desses

servidores TLD, o qual, por sua vez, percebe o su xo [Link] e responde com o
endereço IP do servidor DNS autorizado para a instituição com [Link]. O

servidor DNS local reenvia a mensagem de consulta para [Link], que

responde com o endereço IP de [Link]. Para poder obter o

mapeamento para um único nome de hospedeiro, foram enviadas oito mensagens

DNS: quatro mensagens de consulta e quatro de resposta.

Figura 2.10 | Interação entre servidores de DNS

[Link] 21/30
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: Kurose e Ross (2013, p. 100).

Dentro de uma organização, é possível implementar um servidor de DNS para que


informações possam ser compartilhadas dentro da estrutura da rede. De acordo

com Northrup e Mackin (2009), a implantação de um servidor DNS é um

procedimento razoavelmente simples, especialmente em um controlador de

domínio. Kurose e Ross (2013) identi cam um DNS como um servidor organizado

de maneira hierárquica e distribuída. A seguir, temos um exemplo de topologia de

rede com um servidor DNS instalado e con gurado através da ferramenta Packet
Tracer, demonstrada na Figura 2.11.

Figura 2.11 | Servidor DNS em uma rede

[Link] 22/30
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

Em um sistema Windows Server, a ativação do servidor DNS se dá primeiramente

pela criação de uma zona DNS, que é um banco de dados com registros que

associam nomes a endereços para uma parte de nida de um espaço de nomes


DNS. Depois, o servidor DNS precisa ser con gurado para registros de DNS e, por

último, con gurar a replicação e transferência de zona. Já em distribuições Linux,

as con gurações podem ser feitas em menus do ambiente grá co ou via

con guração textual no arquivo /etc/[Link]. O arquivo localhost de ne

todas as con gurações de domínio local para informar o endereço de consulta ao

hostname localhost. O banco de dados do domínio é de nido pelos arquivos zona


e zona reversa.

ASSIMILE

De forma geral, o DNS trata da busca de endereços IPs para que você possa
fazer suas buscas e operações via sistemas em rede, dentro da WWW

(World Wide Web), por exemplo. Na prática, um conjunto de páginas web

em formato HTTP, chamado de site, é acessado através de um endereço

URL informado em um browser, que carrega a sua página principal,

chamada de home page, dentro de um ambiente WWW. Sites de busca

[Link] 23/30
03/03/2021 lddkls211_red_sis_dis

auxiliam na localização de URLs dentro desta estrutura hierárquica, como

Google, Yahoo, Bing, Baidu, entre outros. O Google representa, conforme


Laudon e Laudon (2014), mais de 83% das buscas realizadas na internet.

0
Junto à con guração do endereço IP do host e às informações de máscara de rede,

Ver anotações
deve também ser informado o endereço de DNS na rede. Segue, na Figura 2.12,

um exemplo de con guração de endereço de DNS em um sistema Windows.

Figura 2.12 | Exemplo de con guração de DNS

Fonte: captura de tela elaborada pelo autor.

DHCP (DYNAMIC HOST CONFIGURATION PROTOCOL)

O DHCP permite atribuir endereços IP, máscaras de sub-rede e outras informações

de con guração a computadores clientes em uma rede local. Uma rede que possui

um servidor DHCP disponível permite aos seus computadores obterem um


endereço IP através de solicitação e atribuição automática pelo servidor, conforme

defendem Northrup e Mackin (2009).

Um administrador de rede pode con gurar um serviço de DHCP para que

determinado host receba o mesmo endereço IP toda vez que se conectar, ou um


endereço IP temporário, diferente a cada conexão. Kurose e Ross (2013)

classi cam o DHCP como um protocolo plug and play, considerando sua

capacidade de automatizar os aspectos relativos à rede da conexão de um host.

Ademais, o DHCP é um protocolo cliente-servidor, no qual, em geral, um host

representa o cliente. A Figura 2.13 ilustra um servidor DHCP conectado à rede

[Link]/24, servindo o roteador de agente de repasse para clientes conectados às


sub-redes [Link]/24 e [Link]/24. Para um hospedeiro recém-chegado, o

protocolo DHCP e um processo de quatro etapas:

1. Descoberta do servidor DCHP.

2. Oferta dos servidores DHCP.

3. Solicitação DHCP.

4. Con guração de requisição DHCP.

[Link] 24/30
03/03/2021 lddkls211_red_sis_dis

Figura 2.13 | Servidor DHCP em uma rede

0
Ver anotações
Fonte: Kurose e Ross (2013, p. 256).

A seguir, temos um exemplo de topologia de rede com um servidor DHCP

instalado e con gurado através da ferramenta Packet Tracer, demonstrada na

Figura 2.14. A imagem refere-se ao departamento Servidor, no qual existe um

servidor de rede que suporta serviços de DNS, DHCP, HTTP, FTP, entre outros,
ligados a um Switch que interliga e serve toda uma rede de um departamento. A

parte inferior da gura a seguir mostra a con guração do serviço de DHCP no

Packet Tracer.

Figura 2.14 | Exemplo de con guração de servidor DHCP na ferramenta Packet Tracer

Fonte: elaborada pelo autor.

[Link] 25/30
03/03/2021 lddkls211_red_sis_dis

Em distribuições Linux, as con gurações podem ser feitas em menus do ambiente

grá co ou via con guração textual no arquivo /etc/[Link]. A sua ativação se


dá pela execução do programa ntsysv com a seleção da opção dhcpd. Ainda em

Linux, o servidor DHCP pode ser executado através do comando # service dhcpd

0
start.

Ver anotações
Em um ambiente Windows Server, a con guração do intervalo de endereços a
serem automaticamente atribuídos aos hosts se dá por meio do menu Iniciar >

Programas > Ferramentas Administrativas > DHCP. A Figura 2.15 apresenta as telas

de con guração de um servidor DHCP em plataforma Windows Server e cliente em

plataforma Windows.

Figura 2.15 | Con guração de intervalos de endereços IPv4

[Link] 26/30
03/03/2021 lddkls211_red_sis_dis

Fonte: captura de tela elaborada pelo autor.

REFLITA

A con guração manual de endereços IP em redes de computadores locais

0
pode ser uma estratégia mais assertiva quando se pensa em maior

segurança, porém adequa-se a ambientes com poucos dispositivos na rede,

Ver anotações
devido à di culdade de con guração individual e manual de cada

dispositivo. Em redes maiores, a utilização de um servidor DHCP traz maior


comodidade à gestão da rede, no entanto pode oferecer maiores riscos à

segurança da rede.

Assim, um servidor DHCP mantém um banco de dados dos endereços que

o servidor pode atribuir a hosts da rede. Quando um servidor DHCP atribui


um endereço a um computador na rede, este se torna um host ativo com o

endereço atribuído por seis ou oito dias por padrão.

PESQUISE MAIS

O site de suporte da Microsoft traz uma seção interessante, chamada

Noções básicas sobre endereçamento TCP/IP e sub-rede, que explica o

endereçamento IP de uma rede.

Con gurar uma rede com o IPv4 e sub-redes leva à utilização dos
endereços IPs em redes de classes A, B ou C, alocados em sub-redes. Esta

con guração deve seguir uma política de atribuição de endereços,

utilizando-se de máscaras de rede para a realização da divisão das redes. O

padrão CIDR (Classless Inter-Domain Routing) também é utilizado para

con guração de sub-redes. Adicionalmente, existe o VLSM (Variable Length

Subnet Masking), também utilizado para planejamento e con guração de


endereços IPs e máscaras em sub-redes. O site Hardware pode ser visitado
para um estudo complementar sobre este assunto junto ao

conteúdo: Faixas de endereços IP CIDR e máscaras de tamanho variável

(MONQUEIRO, 2007). 

Caro aluno, esta seção trouxe para você informações importantes para a

con guração de endereços IPv4 em hosts em uma rede. Os endereços podem ser

atribuídos de forma manual ou de forma automática por um servidor DHCP.


Também houve o aprendizado sobre máscaras de rede e a con guração de uma

sub-rede através de seus endereços e máscaras. Estas informações são

[Link] 27/30
03/03/2021 lddkls211_red_sis_dis

fundamentais para que você possa con gurar dispositivos adequadamente, em


conformidade com regras e técnicas de endereçamento IP, de forma a deixar sua

rede com performance superior a uma rede sem planejamento de endereçamento

IP.

0
Ver anotações
FAÇA VALER A PENA
Questão 1

Um endereço IP privado está condicionado a um intervalo de nido, que pode ser

utilizado para con guração manual ou automática dentro de uma rede privada.

Para melhor aproveitamento e gestão de uma rede, os endereços IPs privados

estão divididos em cinco classes: A, B, C, D e E. A classe A permite até 128 redes

com 16.777.214 milhões de endereços cada uma; a classe B permite 16.384 redes

com até 65.536 hosts; e a classe C permite, aproximadamente, 2 milhões de redes


com até 254 endereços cada uma delas (considerando que são reservados o

endereço 0 e 255 para broadcast). Conforme ressalta Tanenbaum (2011), esse é

um projeto hierárquico, no qual os tamanhos dos blocos de endereços são xos.

Assinale a alternativa que representa um endereço IPv4 de classe B válido para


atribuir a um host dentro de uma rede local:

a.  [Link]. 

b.  [Link].

c.  [Link].

d.  [Link].

e.  [Link].  

Questão 2

O protocolo IP (Internet Protocol) possui duas versões ativas que podem ser

utilizadas para o endereçamento de hosts em uma rede de computadores. Trata-

se de um protocolo de camada de inter-rede do modelo TCP/IP (Transmission

Control Protocol/Internet Protocol) utilizado para endereçamento e roteamento


das redes de computadores internas e conectadas à internet.

Sobre o protocolo IP em sua versão IPv4, analise as a rmativas a seguir:

I. É um protocolo de datagramas sem conexão e não con ável.

II. IPv4 não possui mecanismos de controle de erros ou de uxo, com exceção da

detecção de erros no cabeçalho.

[Link] 28/30
03/03/2021 lddkls211_red_sis_dis

III. Ele é formado por um conjunto de quatro números binários de oito bits cada

um, constituindo-se desta forma de um endereço de 32 bits.

IV. Um exemplo de endereço IPv4 é: [Link].

0
Considerando o contexto apresentado, é correto o que se a rma em:

Ver anotações
a.  I e II, apenas.

b.  I e III, apenas

c.  II e III, apenas. 

d.  I, II e III, apenas. 

e.  I, II, III e IV.  

Questão 3

A máscara de sub-rede é uma técnica de de nição de endereço de rede utilizado

para alocar a parte do endereço IP (Internet Protocol) que de ne o endereço da


rede e a parte que aloca o endereço e um host que faz parte da rede. As máscaras

podem ser de nidas junto aos endereços de classes de nidas, como as classes A, B

e C, chamado de endereçamento com classes, assim como pela distribuição dos

bits dos octetos que forma os quatro números de um endereço IP, de forma que

parte dos bits do host de nem a sub-rede no endereçamento sem classe.

Assinale a alternativa que apresenta uma máscara de sub-rede de classe C dividida

em duas sub-redes:

a.  [Link].

b.  [Link]. 

c.  [Link].

d.  [Link].

e.  [Link]. 

REFERÊNCIAS

DIAMANDIS, P. H.; KOTLER, S. Oportunidades Exponenciais: um manual prático

para transformar os maiores problemas do mundo nas maiores oportunidades de

negócio. Rio de Janeiro: Alta Books, 2018.

[Link] 29/30
03/03/2021 lddkls211_red_sis_dis

FOROUZAN, B. A. Comunicação de dados e redes de computadores. 4. ed. Porto

Alegre: AMGH, 2010.

KUROSE, J. F.; ROSS, K. W. Redes de computadores e a internet: uma abordagem

top-down. 6. ed. São Paulo: Pearson Education do Brasil, 2013.

0
LAUDON, K. C.; LAUDON, J. P. Sistemas de Informações Gerenciais. 11. ed. São

Ver anotações
Paulo: Pearson Prentice Hall, 2014.

MICROSOFT. Noções básicas sobre endereçamento TCP/IP e sub-rede. 2020.

Disponível em: [Link]

tcp-ip-addressing-and-subnetting-basics. Acesso em: 28 out. 2020.

MICROSOFT. Con gurando o serviço do servidor DNS. 2018. Disponível em:

[Link]

forest-recovery-con gure-dns. Acesso em: 29 out. 2020.

MONQUEIRO, J. C. B. Faixas de endereços IP, CIDR e máscaras de tamanho variável.


Hardware, 2007. Disponível em: [Link]

ip-cidr/[Link]. Acesso em: 28 out. 2020.

NORTHRUP, T.; MACKIN, J. C. Con guração do Windows Server: infraestrutura de

rede. Porto Alegre: Bookman, 2009.

NUNES, S. E. Redes de Computadores. Londrina, PR: Editora e Distribuidora

Educacional S. A., 2017.

STALLINGS, W. Redes e Sistemas de Comunicação de Dados. Rio de Janeiro:

Elsevier, 2016. Disponível em:

[Link] Acesso em: 21


out. 2020.

TANENBAUM, A. S. Redes de computadores. 5. ed. São Paulo: Pearson Prentice

Hall, 2011

[Link] 30/30
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

REDES E SUB-REDES

0
Renato Cividini Matthiesen

Ver anotações
SISTEMA DE ENDEREÇAMENTO DE REDES
Segmentação da rede interna em cinco sub-redes, con guração dps endereços Ips e máscara
de sub-rede.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR


RELATÓRIO DO PROJETO DE REDES: CONFIGURAÇÃO DO ENDEREÇAMENTO DA
REDE

A rede interna da empresa de coworking deve ser segmentada em cinco sub-redes,


utilizando-se a classe C de endereçamento IP, de forma que a rede será

[Link], e a máscara de rede será [Link], considerando o volume de

equipamentos que precisam se conectar à rede.

A máscara da sub-rede [Link] (em notação decimal) representa

11111111.11111111.11111111.00000000.

[Link] 1/8
03/03/2021 lddkls211_red_sis_dis

A rede: 2n = 23 = 8, ou seja, para fazer cinco sub-redes será necessário alocar


três bits da máscara de rede. Note que podemos ter dois ou quatro (ou mais,

desde que sejam números pares), assim, como precisamos dividir nossa rede
em cinco sub-redes, utilizaremos o cálculo com oito sub-redes.

0
Hosts de sub-rede: 2n = 25 = 32, com possibilidade de até 32 hosts em cada

Ver anotações
sub-rede. Considere que, para converter os octetos, são utilizados: 1, 2, 4, 8, 16,

32, 64 e 128. Como foram utilizados três bits para a de nição das redes,
sobraram outros cinco bits para os hosts.

Temos, assim, as seguintes sub-redes:

Sistemas: [Link]: hosts [Link] a [Link] e broadcast

[Link].

Gerência: [Link]: hosts [Link] a [Link] e broadcast

[Link].

Clientes: [Link]: hosts [Link] a [Link] e broadcast

[Link].

Reuniões: [Link]: hosts [Link] a [Link] e broadcast


[Link].

Visitantes: [Link]: hosts [Link] a [Link] e broadcast


[Link].

A máscara de rede calculada cou como: 11111111.11111111.1111111.11100000.

Veja que utilizamos três bits (emprestado o octeto, que de ne o endereço do host

para que um endereço de sub-rede possa ser gerado e segmentar a rede).

Considerando a tabela de bits do octeto, temos:

Bits da rede Bits do host

128 64 32 16 8 4 2 1

1 1 1 0 0 0 0 0

Isso remete a 128 + 64 + 32 (bits que representarão a sub-rede) = 224.

[Link] 2/8
03/03/2021 lddkls211_red_sis_dis

Na notação CIDR, ou em barra (/), considerando a somatória de todos os bits de

rede (oito do primeiro octeto, oito do segundo octeto, oito do terceiro octeto e três

do quarto octeto), temos 8+8+8+3 = 27.

0
Assim, a nova máscara de sub-rede se torna [Link], ou /27.

Ver anotações
AVANÇANDO NA PRÁTICA
CONFIGURAÇÃO DE SERVIDORES DNS E DHCP
Com o objetivo de oferecer um sistema de informação apoiado por um conteúdo
informativo dentro do projeto de rede desenvolvido para uma empresa de

coworking, a consultoria em desenvolvimento de sistemas em redes de

computadores foi solicitada para desenvolver um site, no qual haverá informações

sobre o ambiente de trabalho, como regras de utilização dos espaços, sistemas de

acesso e um sistema com conteúdo gerais de interesse dos usuários do espaço de


trabalho. Para uma equipe especializada em desenvolvimento de sites, é

necessário que os serviços de HTTP (Hypertext Transfer Protocol) e DNS (Domain

Name System) no servidor instalado na topogra a da rede de computadores sejam


con gurados anteriormente ao desenvolvimento do novo site. O nome do
endereço escolhido para o site solicitado é [Link]. A

topologia desenvolvida na etapa anterior de consultoria (situação-problema da

Seção 1 da Unidade 1), apresentada na Figura 2.16, pode ser utilizada para

con guração dos serviços de rede no servidor.

Figura 2.16 | Topologia de estudo para con guração de HTTP e DNS

Fonte: elaborada pelo autor.

Seu trabalho consiste em gerar um relatório, chamado de Relatório do projeto de


redes: con guração de protocolos.

RESOLUÇÃO 

Relatório do projeto de redes: con guração de protocolos.

[Link] 3/8
03/03/2021 lddkls211_red_sis_dis

Para as atividades de con guração dos serviços de DHCP, HTTP e DNS como

parte da con guração e do teste de implantação de uma estrutura e serviços

de rede de computadores de uma empresa de coworking, a consultoria


contratada deverá utilizar o protótipo desenvolvido anteriormente na

0
elaboração da topologia de redes e con gurar os serviços dentro da

Ver anotações
ferramenta Packet Tracer. Esta ferramenta permite a simulação de todo

processo de con guração com atribuição de endereços estáticos e dinâmicos,


iniciação e con guração dos serviços de rede e seus testes.

Con guração do servidor de HTTP (Figura 2.16):

1. Clique no servidor (canto direito) da estrutura de rede, acesse a aba

Desktop, procure a opção IP Con guration, de na e anote o número do


IP Address como [Link]. Veja a Figura 2.17 e a Figura 2.18 com as
con gurações.

Figura 2.17 | Con guração de IP no Packet Tracer

Fonte: captura de tela do Packet Tracer elaborada pelo autor.

Figura 2.18 | Con guração de número de IP no Packet Tracer

[Link] 4/8
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: captura de tela do Packet Tracer elaborada pelo autor.

2. Acesse a aba Services, selecione com um clique do mouse a opção HTTP e

ative com a opção On os serviços de HTTP e HTTPS. Lembre-se de que o


HTTPS oferece serviços de segurança com criptogra a e autenticação. Veja
a Figura 2.19 com as con gurações.

Figura 2.19 | Con guração HTTP Packet Tracer

Fonte: captura de tela do Packet Tracer elaborada pelo autor.

Con guração do servidor de DNS (Figura 2.16):

1. Clique novamente no servidor (canto direito da imagem), acesse a aba


Services, clique com o mouse na opção DNS, clique em On para ativar o

[Link] 5/8
03/03/2021 lddkls211_red_sis_dis

serviço e de na o nome do servidor em Name com


[Link].

2. Acesse a aba Address e insira o número do IP do servidor de nido na

0
etapa anterior: [Link].

Ver anotações
3. Clique em Add para adicionar o servidor ao serviço.

4. Veja a Figura 2.20 com as con gurações.

Figura 2.20 | Con guração de DNS no Packet Tracer

Fonte: captura de tela do Packet Tracer elaborada pelo autor.

Con guração do servidor de DHCP (Figura 2.16):

O serviço de DHCP atribuirá e controlará os endereços IP das estações de


trabalho que fazem parte da rede. Para con gurar o serviço em um servidor, o

administrador da rede precisa determinar o endereço do Gateway, do DNS, o


endereço inicial a ser atribuído às estações e o número de endereços a serem
atribuídos dentro da rede.

Con guração dos desktops:

Para que os desktops, notebooks e smartphones acessem o site, deve-se fazer

o apontamento para o servidor DNS em todos os dispositivos de rede que


devem ser con gurados.

1. Clique com o mouse no dispositivo (desktop, por exemplo), selecione a aba


Desktop e a opção IP Con guration e de na o número do DNS Server
através da opção Static, marcando a opção DHCP.

[Link] 6/8
03/03/2021 lddkls211_red_sis_dis

2. Veri que se o número do servidor DNS ([Link]) apontado na


con guração do roteador aparece em DNS Server.

3. Veja a Figura 2.21 com as con gurações.

0
Figura 2.21 | Con guração de IP e de nição de DNS Server no Packet Tracer

Ver anotações
Fonte: captura de tela do Packet Tracer elaborada pelo autor.

Teste de acesso ao site:

Para fazer um teste das con gurações realizadas, clique em um computador

da empresa (topologia), escolha a aba Desktop e, em seguida, selecione Web


Browser. No navegador de internet, digite o endereço do site, de nido como
[Link], no campo de URL. Veja a Figura 2.22 e a Figura

2.23 com as con gurações.

Figura 2.22 | Teste do site no Packet Tracer

[Link] 7/8
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: captura de tela do Packet Tracer elaborada pelo autor.

Figura 2.23 | Teste do site via DNS no Packet Tracer

Fonte: captura de tela do Packet Tracer elaborada pelo autor.

[Link] 8/8
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

ETHERNET E IPV6

0
Renato Cividini Matthiesen

Ver anotações
O QUE É IPV6?
O IPv6 é a versão mais atual do Protocolo de Internet, que veio suprir o IPv4, principalmente em
relação na excassez de endereços IPs na internet.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

PRATICAR PARA APRENDER

Caro aluno, seja bem-vindo a esta segunda seção da unidade, na qual serão
tratadas informações a respeito do padrão Ethernet, utilizado nas redes locais com
grande intensidade, e sobre o protocolo IPv6, o qual, em conjunto com o IPv4,
suportam o endereçamento e o roteamento das redes atuais. Considerando o
padrão Ethernet, abordaremos também questões de cabeamento de redes.

As tecnologias de comunicação da camada de host de rede do conjunto de


protocolos TCP/IP (Transmission Control Protocol/Internet Protocol) utilizam o

padrão Ethernet para redes cabeadas na maioria dos sistemas de redes locais. Este

padrão acompanha o cenário das redes locais desde a década de 1970 e vem

[Link] 1/26
03/03/2021 lddkls211_red_sis_dis

sendo modi cado, considerando novas tecnologias de materiais para cabeamento,


porém ainda mantém a sua essência para transmissão e controle da onda

portadora no canal de comunicação.

0
Já o protocolo IPv6 deverá se tornar o padrão de endereçamento para redes na

internet, considerando que o IPv4 possui limitações de volume de endereços

Ver anotações
disponíveis, mesmo considerando as técnicas de NAT (Network Address Translator)

e o CDIR (Classless Inter-Domain Routing), que levam ao endereçamento


alternativo e suportam a imensidão de dispositivos parametrizados dentro de

redes locais de computadores.

Após nalizarmos os estudos do projeto de topologia, protocolos de rede,

segmentação para a divisão da rede em sub-redes e de nição de endereçamento


IP mediante uma política estabelecida com endereços e máscaras de sub-rede no

projeto de redes para o espaço de coworking, daremos sequência ao estudo de


redes.

Convidamos você a estudar estes dois conceitos e dar seguimento ao projeto de


redes na empresa de coworking através de uma nova etapa do projeto para

implantação de estrutura de cabeamento e dispositivos na rede local com a


utilização do protocolo IEEE 802, ou seja, o padrão Ethernet, o que re ete a

instalação física de dispositivos e a de nição de domínios de colisão e broadcast.

Para que a empresa de coworking, para a qual sua consultoria de rede está

desempenhando uma consultoria de projeto de redes, tenha documentado toda a


estrutura física implantada, é necessário um relatório apresentando os

equipamentos, cabos e domínios de colisão e broadcast que serão utilizados para


operacionalizar a rede implantada.

A compreensão sobre domínios de colisão e broadcast em uma rede Ethernet, a


de nição de equipamentos físicos e a de nição de um novo padrão de

endereçamento IPv6 devem melhorar ainda mais o projeto de rede que está em
planejamento e seu desempenho.

Em uma nova fase da consultoria para implantação de um sistema de redes de


computadores em uma empresa de espaços compartilhados para trabalho

(coworking), houve uma nova solicitação para que a equipe de desenvolvimento do

projeto pudesse apresentar informações mais detalhadas sobre os dispositivos


que fazem parte da rede, a m de identi car os equipamentos disponíveis em cada

um dos setores do ambiente (Sistemas, Gerência, Clientes1, Reuniões, Clientes2,

[Link] 2/26
03/03/2021 lddkls211_red_sis_dis

Visitantes), conforme relatado na Figura 2.24, e também possam ser descritos os

domínios de colisão e de broadcast da rede. Esta análise fará com que a rede

tenha uma documentação mais completa e deverá de nir os domínios da

topologia implementada via padrão Ethernet, ou seja, para a parte da rede

0
cabeada.

Ver anotações
A análise a ser realizada deverá levar em consideração a segmentação da rede com

os dispositivos comutadores, que tem a capacidade de de nir domínios de colisão

e broadcast. O relatório deve apresentar os equipamentos da rede, o número de


domínios de colisão e o número de domínios de broadcast, de acordo com a

topologia proposta a seguir:

Figura 2.24 | Topologia de rede para análise dos domínios de colisão e broadcast

Fonte: elaborada pelo autor.

Deverá ser gerado o Relatório do projeto de redes: equipamentos de rede e

análise de domínios de colisão e broadcast.

Reconhecer como são realizadas as operações de acesso ao meio (cabos) e

dispositivos de rede no padrão Ethernet é importante para que se possa

desenvolver uma rede de computadores com os dispositivos de repetição e

gerenciamento de rede dentro de domínios de colisão e broadcast adequados. O


endereçamento dentro do padrão IPv6 também contribui para o adequado

controle de endereçamento e performance da rede.

As redes locais formam as estruturas chamadas de Local Area Network (LAN), que

con guram os ambientes operacionais onde se localizam a maioria dos


dispositivos conectados indiretamente à internet.

Em sua essência, a internet é descrita por Kurose e Ross (2013) como uma

infraestrutura de redes que fornece serviços para aplicações distribuídas,

interconectando centenas de milhões de dispositivos de computação ao redor do

[Link] 3/26
03/03/2021 lddkls211_red_sis_dis

mundo. Estas aplicações distribuídas são operacionalizadas dentro de dispositivos

dentro de redes local.

A seguir, conheceremos o padrão Ethernet como tecnologia utilizada na

0
interconexão de redes locais, relacionada aos padrões e protocolos de nidos na

camada de host de rede da arquitetura TCP/IP. Se olharmos para o modelo OSI,

Ver anotações
estes protocolos atuam na camada de enlace de dados, que de ne e controla os

dados transmitidos via dispositivos da camada física da rede.

CONCEITOS DE ETHERNET, DOMÍNIOS DE BROADCAST E DE COLISÃO

Muitos padrões de rede foram desenvolvidos nestes últimos anos, dentre eles,

projetos para redes pessoais, redes locais e redes metropolitanas, padronizados

como IEEE 802 (Institute of Electrical and Electronic Engineers, e 802 de ne um

padrão de redes). Segundo Forouzan (2010), o IEEE subdividiu a camada de enlace


do modelo OSI em duas subcamadas: LLC (Logical Link Control) e MAC (Media

Access Control) e criou vários padrões de camada física para diversos protocolos

LAN. As normas de nidas pelo IEEE 802 trazem diversas tecnologias para

implementação de redes locais, algumas com ampla utilização na atualidade,


outras ainda em desuso. O Quadro 2.4 apresentado a seguir mostra os subgrupos

que perfazem as normas IEEE 802.

Quadro 2.4 | Padrões de redes de nidos pelo IEEE 802

Padrão De nação/Padrão

IEEE 802.1 Primitivas de interface e gerência

IEEE 802.2 LLC (Logical Link Control)

IEEE 802.3 CSMA/CD Ethernet

IEEE 802.4 Token Bus

IEEE 802.5 Token Ring

IEEE 802.6 Redes Metropolitanas

IEEE 802.7 Redes Metropolitanas

IEEE 802.8 Redes de Fibra Óptica

IEEE 802.10 Segurança em LAN

[Link] 4/26
03/03/2021 lddkls211_red_sis_dis

Padrão De nação/Padrão

IEEE 802.11 CSMA/CA Wireless

0
IEEE 802.12 AnyLAN

Ver anotações
IEEE 802.15 Rede PAN Bluetooth

IEEE 802.16 Rede Metropolitana Wi-Max

Fonte: adaptado de Tanenbaum (1997, p. 254).

Conforme relata Comer (2016), a Ethernet é uma tecnologia LAN desenvolvida pela
Xerox PARC e padronizada pela Digital Equipment Corporation, pela Intel e pela
Xerox. O responsável pela tecnologia foi Robert Metcalfe, que trabalhava na Xerox

na década de 1970 e que mais tarde fundou a 3Com. A tecnologia Ethernet foi
padronizada pelo IEEE em 1985 e vem sendo utilizada por 35 anos como a principal

tecnologia de rede local. Embora os dispositivos de hardware, cabeamento e meios


usados com ela tenham mudado, o seu funcionamento continua praticamente o
mesmo.

ASSIMILE

Os padrões de rede que se mantiveram ativos e são atualmente utilizados


nas redes locais e pessoais são o IEEE 802.3, padrão para redes locais

cabeadas, de nido como Ethernet; o IEEE 802.11, mais recente e padrão


para redes locais sem o (wireless), conhecido como Wi-Fi; e o IEEE 802.15,
usado em redes pessoais sem o e conhecido como bluetooth.

A seguir, faremos um estudo mais aprofundado sobre o padrão IEEE 802.3. O


conceito de Ethernet é considerado por Tanenbaum (2011) como o padrão de

redes locais mais utilizado no mundo. Este tipo de rede é classi cado pelo autor
como Ethernet clássica, que resolve problemas de acesso múltiplo ao meio
compartilhado, e a Ethernet comutada, utilizada em dispositivos, como switches,

para conectar os dispositivos da rede. A Ethernet comutada oferece velocidades e


tecnologias físicas de conexão diferentes, mas utiliza o mesmo padrão de controle

de colisões de onda portadora ao utilizar um meio compartilhado, ou seja, o cabo


de rede. A Figura 2.25 apresenta um estudo original de uma rede Ethernet, em que
um mesmo meio de comunicação é compartilhado por diversos dispositivos

conectados na rede.

[Link] 5/26
03/03/2021 lddkls211_red_sis_dis

Figura 2.25 | Desenho do padrão Ethernet de Robert Metcalfe

0
Ver anotações
Fonte: Computer History.

Em uma rede com padrão Ethernet, há dois assuntos importantes. O primeiro diz
respeito ao meio de conexão, ou seja, ao cabo de rede. A segunda se refere à

operação na utilização de um mesmo canal de comunicação e controle da


transmissão.

CABEAMENTO

Os cabos e os conectores utilizados nesta tecnologia compõem o meio físico da

comunicação. No passado, foram utilizados cabos coaxiais; depois, cabos metálicos


de par trançado, úteis nos dias atuais junto aos cabos de bra óptica.

Veja a seguir uma linha do tempo da evolução do padrão Ethernet.

Para visualizar o objeto, acesse seu material digital.

PADRÕES ETHERNET
Evolução do padrão Ethernet para cabos metálicos de par trançado

100Base-TX  10Base-T
IEEE 802.3u IEEE 802.3an
100 Mbps 10 Gbps
Cat 5e Cat 6a

FAST ETHERNET 10 GIGABIT ETHERNET


1990 1999

1995 2006
ETHERNET GIGABIT ETHERNET

10Base-T  100Base-T
IEEE 802.3 IEEE 802.3ab
10 Mbps 1000 Mbps ou 1Gbps
Cat 5 Cat 6

[Link] 6/26
03/03/2021 lddkls211_red_sis_dis

Comer (2016) resume que, da mesma forma que as versões anteriores das redes
Ethernet, a primeira tecnologia de par trançado operava a 10 Mbit/s, denominada
10BaseT. Uma versão nomeada formalmente de 100BaseT que opera a 100 Mbit/s

é conhecida comercialmente como Fast Ethernet. Uma terceira versão, chamada

0
Gigabit Ethernet, ou Gig-E, opera a 1.000 Mbit/s, o que equivale a 1 Gbit/s. O

Ver anotações
hardware para as redes Ethernet de maior velocidade detecta automaticamente
quando um dispositivo de baixa velocidade está conectado e reduz sua velocidade
de acordo com ele para que a operação seja adequada ao dispositivo e à

tecnologia conectada. O Quadro 2.5 mostra alguns padrões Ethernet.

Quadro 2.5 | Padrões Ethernet

Comprimento

Padrão Cabo Capacidade (m)

10base2 Coaxial no 10 Mbps 185

10base5 Coaxial grosso 10 Mbps 500

10baseT Par trançado CAT3 10 Mbps 100

100baseTX Par trançado CAT5 100 Mbps 100

1000baseT Par trançado CAT5/6 1000 Mbps 100

10GbaseT Par trançado CAT 6 10 Gbps 55 ou 100

100BaseFX Fibra óptica multimodo 100 Mbps 2000

1000BaseLX Fibra óptica 1000 Mbps 550


monomodo/multimodo

1000BaseSX Fibra óptica multimodo 1000 Mbps 550

10GBaseSR Fibra óptica multimodo 10 Gbps 550

10GBaseLX4 Fibra óptica multimodo 10 Gbps 550

Fonte: adaptado de Filippetti (2008, p. 55-57).

ASSIMILE

As versões mais conhecidas do padrão IEEE 802.3 são:

[Link] 7/26
03/03/2021 lddkls211_red_sis_dis

IEEE 802.3u: de ne os padrões da Fast Ethernet com velocidade de


transmissão de 100 Mbps, representada pelos padrões 100BaseTX,
100BaseT e 100BaseFX.

0
IEEE 802.3z: de ne os padrões da Gigabit Ethernet com utilização de

cabo de bra óptica e velocidade de 1000 Mbps, representada pelos

Ver anotações
padrões 1000BaseLX, 1000BaseSX e 1000BaseCX.

IEEE 802.3ab: de ne os padrões da Gigabit Ethernet com utilização de


cabo metálico e par trançado e velocidade de 1000 Mbps e padrão

1000Base-T.

IEEE 802.3ae: de ne o padrão da 10 Gigabit Ethernet com velocidade de

10 Gbps com utilização de cabo de bra óptica e utilizada para


backbones e representada pelos padrões 10GBaseZR, 10GBaseSR,
10GBaseLRM e 10GBaseCX4.

IEEE 802.3an: de ne o padrão da 10 Gigabit Ethernet com velocidade de

10 Gbps com utilização de cabo metálico de par trançado.

Mais recentemente, em 2012, houve a publicação do padrão IEEE 802.3-

1012 com de nições de e ciência energética, redes veiculares, data center e


distribuição de conteúdo com velocidades de 40 a 100 Gbps.

O cabeamento metálico para redes Ethernet exige que se utilizem um padrão de

pinagem, para que os pares de os que compõem um cabo de par trançado


realizem a transmissão de forma adequada. O Quadro 2.6 traz a sequência de

pinagem (sequência de os na ligação com o conector RJ 45) padronizada como

TIA/EIA T568A. No quadro, o TX representa transmissão; RX, recepção; BI,


comunicação bidirecional; D1-4, o caminho em que o o está posicionado.

Quadro 2.6 | Padrão de operação de um cabo de par trançado

Pino Cor do o Função

1 Branco-verde TX D1+

2 Verde TX D1-

3 Branco-laranja RX D2+

4 Azul BI D3+

[Link] 8/26
03/03/2021 lddkls211_red_sis_dis

Pino Cor do o Função

5 Branco-azul BI D3-

0
6 Laranja RX DE-

Ver anotações
7 Branco-marrom BI D4+

8 Marrom BI D4-

Fonte: adaptado de Comer (2016, p. 227).

De forma ilustrativa, a Figura 2.26 apresenta os padrões TIA/EIA T568A e T568B,

que podem ser utilizados na montagem de um cabo de rede de par trançado junto

ao seu conector RJ45.

Figura 2.26 | Padrões de conexão de cabos Ethernet TIA/EIA T568A (esquerda) e T568B (direita)

Par 1: + Azul-branco e – Azul

Par 2: + Laranja-branco e – Laranja

Par 3: + Verde-branco e – Verde


Par 4: + Marrom-branco e – Marrom

Fonte: Wikimedia Commons.

EXEMPLIFICANDO

As redes Ethernet utilizam, aa maioria dos projetos, dois tipos de cabos

para conexão física dos dispositivos de rede. Um deles é o cabo metálico de

par trançado, e o outro é o cabo de bra óptica. Ambos os tipos de cabos


possuem especi cações para cada categoria de rede Ethernet. Uma rede

[Link] 9/26
03/03/2021 lddkls211_red_sis_dis

local normalmente utiliza um cabo de par trançado Cat6 que opera em

velocidade de 1 Gbps, mas permite velocidades até 10 Gbps com

comprimentos de enlace até 100 metros. Cabos Cat7 e Cat8 também são
padrões utilizados em redes locais e oferecem velocidades maiores, porém

0
com menores comprimentos de enlace. Os cabos de bra óptica são

Ver anotações
utilizados normalmente para backbones (linhas principais de interligação de
redes), que interligam switches e canais de comunicação com operadoras,

mas também são utilizados para conexão local de dispositivos.

O cabeamento óptico nas redes Ethernet utiliza bras ópticas em formato de cabos

sempre em pares, sendo um o utilizado para a transmissão de dados e outro para


recepção.

Os cabos ópticos são classi cados em cabos monomodo e multimodo. Os cabos

monomodo, chamados de Single Mode Fiber (SMF), têm um maior desempenho e

possuem espessura em torno de 10 mícron. Já os cabos multimodo, chamados de


Multiple Mode Fiber (MMF), são mais grossos, com espessura de 50 a 62,5 mícron.
Conforme apresenta Tanenbaum (2011), enquanto um cabo multimodo varia de

300 metros até 2.000 metros de comprimento, cabos monomodo podem chegar a
40.000 metros (ou 80.000, segundo alguns fabricantes) sem a utilização de

repetidores. As redes locais utilizam as bras multimodo em sua implementação.

Importante salientar que estes padrões e tecnologias estão em constante


evolução. A Figura 2.27 apresenta o comportamento do sinal luminoso dentro da

bra óptica em suas janelas de operação em bras monomodo e multimodo.

Figura 2.27 | Cabos de bra óptica monomodo e multimodo

Fonte: adaptada de Wikimedia Commons.

OPERAÇÃO, VELOCIDADES E COMUTAÇÃO

[Link] 10/26
03/03/2021 lddkls211_red_sis_dis

Caro aluno, conhecemos a tecnologia Ethernet e um pouco mais sobre o

cabeamento metálico de par trançado. Agora, veri caremos sobre os meios de

transmissão dentro desta tecnologia.

0
O protocolo Ethernet é um padrão de comunicação que compartilha um mesmo

meio de comunicação (cabo) com todos os dispositivos de rede (hosts). Para

Ver anotações
transmissão, um dispositivo veri ca a disponibilidade do canal e transmite. Caso

haja outro dispositivo também transmitindo, ocorrerá uma colisão, a transmissão é


interrompida e refeita em um tempo aleatório controlada pelo algoritmo do

protocolo de acesso múltiplo ao meio compartilhado. Este protocolo é o CSMA

(Carrier Sense Multiple Access), o qual, conforme Forouzan (2010), faz a


transmissão em um meio compartilhado via três algoritmos:

1. CSMA não persistente: se o meio de transmissão estiver ocupado, o dispositivo

aguarda um tempo para retransmitir.

2. CSMA 1 persistente: o dispositivo veri ca a rede até que o meio que livre para

transmissão.

3. CSMA p-persistente: o algoritmo calcula a probabilidade de colisão e, quando

livre e com baixa possibilidade de colisão, realiza a transmissão.

O CSMA/CD (Carrier Sense Multiple Access with Collision Detection) utilizado no

padrão Ethernet tem um mecanismo de detecção de colisão, no qual os


dispositivos da rede veri cam colisões e controlam a retransmissão dos dados no

canal compartilhado.

De acordo com Filippetti (2008), o padrão Ethernet com o CSMA/CD utiliza uma

topologia em estrela e de ne uma rede comutada por um elemento central


chamado de switch (antes eram utilizados apenas hubs) ou roteadores. A

apresentação de uma topologia de rede comutada no padrão Ethernet é

apresentada na Figura 2.28 a seguir.

Figura 2.29 | Rede em topologia estrela com um comutador (switch)

[Link] 11/26
03/03/2021 lddkls211_red_sis_dis

Fonte: elaborada pelo autor.

Em uma rede Ethernet, podem ocorrer colisões de duas formas, sendo uma pelo

domínio de colisão e outra pelo domínio de broadcast.

0
No domínio de colisão, os pacotes da rede têm a possibilidade de efetuar colisão

Ver anotações
uns com os outros, o que leva à degradação da performance da rede, pois faz com
que muitas retransmissões sejam necessárias. Esta situação se agrava ainda mais

quando há equipamentos de comutação (hubs) em formato de cascata, ou seja,

interligados, formando uma topologia híbrida de estrela e árvore para expansão

do número de dispositivos na rede.

Já no domínio de broadcast é possível determinar o limite que o pacote pode

chegar utilizando-se um dispositivo comutador de rede local que operacionalize a

comunicação com outro dispositivo sem que seja utilizado um roteador.

Os dispositivos comutadores possuem, desta forma, um importante papel para a


performance de uma rede de computadores em domínios de colisão e broadcast.

Estes dispositivos podem ser:

Hub: são dispositivos concentradores que fazem comutação em uma rede com
a repetição das mensagens para todas as suas portas de conexão, formando
um único domínio de colisão e broadcast. Estes dispositivos foram muito

importantes no cenário das redes, mas encontram-se praticamente em desuso

na implantação de novas redes pois, conforme Stallings (2016), estes

equipamentos foram substituídos pelos switches de camada 2 e têm seu nome


também atribuído de switching hub ou ponte de rede multiporta.

Switch: dispositivo capaz de formar um domínio de colisão em cada porta de


comunicação e formar um único domínio de broadcast. Dispositivo

fundamental na operação das redes de computadores na atualidade, os


switches estão divididos em switches de camada 2 e switches de camada 3.

Como sustenta Stallings (2016), um switch de camada 2 tem maior

desempenho e pode incorporar as funções de uma ponte, assim novas


instalações tipicamente incluem switches de camada 2 com funcionalidades de

ponte em vez de pontes. Estes switches de camada 2 são boas opções para

utilização em redes, nas quais usuários utilizam 80% do tempo se comunicando


com dispositivos no segmento local. Os switches de camada 3 são de nidos por

Stallings (2016) como um roteador baseado em hardware. Eles têm a função de

gerenciar melhor as redes, identi cando os uxos dos pacotes IP com a mesma

[Link] 12/26
03/03/2021 lddkls211_red_sis_dis

origem e destino, segmentando em sub-redes e quebrando os domínios de

broadcast. Importante salientar que apenas switches de camada 3 podem


desempenhar a função de gerenciamento.

0
Router: ou roteador, é um dispositivo que opera na camada 3 (inter-rede) do
conjunto de protocolos TCP/IP e quebram o domínio de broadcast, pois

Ver anotações
operacionalizam roteamento na rede. São dispositivos utilizados nas redes de
computadores da atualidade.

Bridge: ou ponte, são dispositivos que podem separar domínios de colisão,


porém não separam os domínios de broadcast. Estes dispositivos podem ainda

ser sua implementação realizada por switches.

A Figura 2.29 traz um exemplo de uma rede um pouco mais complexa, na qual os
dispositivos de rede são utilizados para implementar o modelo Ethernet para uma

rede local com domínio de colisão. Veri que que o roteador separa os domínios de

broadcast em três domínios. No domínio de colisão à direita do roteador, a


topologia é conectada por hubs, formando um único domínio de colisão e

broadcast. À esquerda do roteador, há dois domínios de colisão, formados pelos


switches, e abaixo do roteador há um domínio de colisão formado por um único
switch.

Figura 2.29 | Rede em topologia com domínio de colisão

Fonte: adaptada de Nunes (2017).

[Link] 13/26
03/03/2021 lddkls211_red_sis_dis

Assim nalizamos nosso estudo sobre operação de uma rede Ethernet,

observando que esta tecnologia utiliza o método CSMA/CD para compartilhamento


de um único canal de comunicação e dispositivos de rede, como hubs, switches,

roteadores e pontes para de nição de domínios de colisão e broadcast. Este

0
planejamento faz com que uma rede tenha a performance adequada dentro das

Ver anotações
possibilidades de utilização de equipamentos de comutação.

SAIBA MAIS

O cabeamento utilizado dentro do padrão IEEE 802.3, ou seja, o padrão


Ethernet, teve importantes evoluções tecnológicas nos últimos 50 anos.

Comer (2016) relata que desde a versão original, na década de 1970, a

Ethernet passou por várias alterações, sendo que a mais signi cativa foi no
cabeamento. O cabo de rede utilizado no primeiro padrão Ethernet era

chamado de Thicknet, ou cabo Ethernet grosso, passando pelos cabos

Thinnet, chamados de cabo Ethernet, ou coaxial no, pelos cabos de par


trançado e hubs, utilizou diferentes tipos de conectores e chegou a padrões
de cabos metálicos de par trançado mais atuais, que suportam redes

Gigabit Ethernet.

A leitura da Seção 15.7, Evolução da Ethernet e cabos Thicknet, do Capítulo

15, Tecnologias de LAN com o (Ethernet e 802.3), do livro Redes de


Computadores e internet, de Comer (2016), é prazerosa e traz informações
sobre a evolução histórica e aplicada na prática de cabos de rede no padrão

Ethernet.

IPV6 (INTERNET PROTOCOL VERSION 6)

Conforme sustentam Kurose e Ross (2013), o projeto de endereçamento IPv6 teve

início na década de 1990, mediante um aumento expressivo de número de

computadores e dispositivos que se interconectavam às redes de computadores.


Atualmente, o conceito de IoT (Internet of Things) corrobora com um aumento

exponencial no número de sensores e dispositivos que estão sendo conectados à

internet. Importante observar que o esgotamento do IPv4 ocorreu em 2014.

O projeto do IPv6 foi liderado pela IETF (Internet Engineering Task Force) e contou
com a participação da LACNIC (Latin American and Caribbean Internet Addresses

Registry), com um estudo e monitoramento a respeito do esgotamento de


endereços IPv4 disponíveis no mundo.

[Link] 14/26
03/03/2021 lddkls211_red_sis_dis

Com a intenção de desenvolver um novo protocolo de endereçamento e

roteamento de rede, o IPv6 veio para suprir algumas necessidades além das
possibilidades do protocolo IPv4:

0
1. Resolver a escassez de endereços IPs na internet.

Ver anotações
2. Simpli car o cabeçalho do endereço IP.

3. Deixar como opcional alguns campos de cabeçalho IP, para facilitar o

roteamento de pacotes na rede.

4. Melhorar a segurança das transmissões, adicionando o IPSec (Internet Protocol


Secure).

A Figura 2.30 apresenta o formato de um datagrama IPv6.

Figura 2.30 | Formato do datagrama IPv6

Fonte: Kurose e Ross (2013, p. 264).

É importante salientar que o datagrama IPv6 também pode ser composto por 64

bits, conforme sustenta [Link] (2020).

A seguir, é apresentada uma breve descrição dos campos do datagrama IPv6.

Versão: (4 bits) versão do protocolo IP (4 ou 6).

Classe de tráfego: (8 bits) campo para prioridade.

Rótulo de uxo: (20 bits) identi ca o uxo de datagramas.

Comprimento da carga útil: (16 bits) tamanho total do pacote (datagrama).

Próximo cabeçalho: (8 bits) identi ca o protocolo ao qual o conteúdo será

entregue (TCP ou UDP).

Limite de saltos: (8 bits) limite de saltos em roteadores.

Endereço IP de origem: (128 bits) endereço do remetente.

Endereço IP de destino: (128 bits) endereço do receptor

[Link] 15/26
03/03/2021 lddkls211_red_sis_dis

Dados: dados a serem transmitidos.

Comer (2015) sustenta que, da mesma forma que o IPv4, o IPv6 atribui um

endereço exclusivo para cada conexão entre um computador e uma rede física.

0
Um endereço IPv6 possui 128 bits, o que permite um total de 340 undecilhões de

endereços (2128), em um formato de oito grupos de quatro dígitos hexadecimais.

Ver anotações
Conforme apresenta Stallings (2016), a combinação de endereços longos e diversos

por interface permite melhor e ciência de roteamento pelo IPv4. Ainda de acordo
o mesmo autor, a notação para um endereço IPv6 usa oito números hexadecimais

para representar os oito blocos de 16 bits no endereço de 128 bits, com os

números separados por dois pontos (:). Exemplo:

[Link]. Este número realmente é muito

grande e su ciente para que possamos endereçar os dispositivos das redes

pessoais, locais, metropolitanas, globais e os dispositivos de IoT na internet. A

Figura 2.31 apresenta a composição de um endereço IP de 128 bits.

Figura 2.31 | Formato do endereço IPv6

Fonte: elaborada pelo autor.

Um endereço IPv6 tem sua composição diferenciada de um endereço IPv4, apesar

de ter uma mesma abordagem na atribuição aos hosts. Como nos endereços em

notação CDIR (Classless Inter-domain Routing), a divisão entre parte da rede

(pre xo) e parte do host (sul xo) no endereço ocorre em limites exíveis na
utilização de seus bits. O endereço IPv6 possui três níveis de hierarquia, conforme

sustenta Comer (2015). Um pre xo inicial é um valor único e global usado para

roteamento na internet, atribuído a uma organização. A segunda parte do

endereço identi ca a sub-rede (ou seja, a própria rede) da organização. A terceira

parte especi ca o host de rede.

[Link] 16/26
03/03/2021 lddkls211_red_sis_dis

Um endereço IPv4 tem tamanho variável e de nido por um ISP (Internet Service

Provider), ou servidor de serviços de internet, em conformidade com a


necessidades de volume de hosts de uma empresa cliente. A terceira parte do

endereço tem tamanho xo de 64 bits, formando um pre xo global de /64. A

0
Figura 2.32 apresenta a estrutura de um endereço IPv6.

Ver anotações
Figura 2.32 | Formato do endereço IPv6

Fonte: Comer (2015, p. 316).

Segundo Stallings (2016), o protocolo IPv6 permite a de nição de três tipos de

endereços: unicast, anycast e multicast.

Unicast: possui um identi cador para uma única interface de rede, ou seja,
para um único host, sendo que um pacote enviado para um endereço unicast é

entregue para a interface identi cada pelo endereço.

Anycast: possui um identi cador para um conjunto de interfaces (em


diferentes nós de rede), sendo que um pacote enviado para um endereço

anycast é entregue para uma das interfaces identi cadas por esse endereço (o
mais próximo na distância de roteamento).

Multicast: possui um identi cador para um conjunto de interfaces (em


diferentes nós de rede), sendo que um pacote enviado para um endereço

multicast é entregue para todas as interfaces identi cadas pelo endereço.

ASSIMILE

Os blocos de um endereço IPv4 são chamados de octetos, pois possuem

oito símbolos binários (bits), que variam de 00000000 a 11111111. Os

blocos de um endereço IPv6 são chamados de decahexateto ou duocteto,

pois possuem quatro símbolos hexadecimais, os quais variam de 0000 até

FFFF. Veja a composição do endereço IPv6 exempli cado no texto:


[Link].

Com o objetivo de manter os dois protocolos coexistentes e interoperáveis, ou

seja, que possam ser utilizados e se prover de endereçamento e roteamento nas

redes de computadores que podem ser con guradas apenas com endereços IPv4,

[Link] 17/26
03/03/2021 lddkls211_red_sis_dis

apenas com endereços IPv6 ou com os dois protocolos, o que se chamou de Pilha

Dupla (Dual Stack). Dispositivos de rede que suportam o conceito de Pilha Dupla

defendido por Kurose e Ross (2013) os hosts con gurados com IPv6 também
devem possuir uma implementação IPv4 completa, o que os determinará como

0
IPv6/IPv4. Na operação de um dispositivo con gurado como Pilha Dupla, as

Ver anotações
mensagens oriundas da camada de Aplicação serão encapsuladas na Pilha Dupla,

para que a mensagem enviada à camada de enlace e física (host de rede no TCP/IP)

seja enviada ao meio disponível, onde podem ocorrer duas situações: 1.

Mensagem com formato IPv4 é encapsulada com Ipv6; 2. Mensagem com formato
IPv6 é encapsulada com IPv4.

EXEMPLIFICANDO

Dispositivos de rede, ou seja, hosts que estiverem con gurados com o


protocolo IPv6, deverão também ter uma implementação IPv4. Ao interagir

um host IPv4, um host IPv6/IPv4 poderá usar datagramas IPv4; ao interagir

com um host IPv6, poderá utilizar o IPv6. Hosts IPv6/IPv4 possuem

endereços IPv6 e IPv4. Dispositivos de rede, como computadores, câmeras

IP, impressoras, smartphones e dispositivos de IoT, devem estar

con gurados com a opção de Pilha Dupla.

Os endereços IPv6s e as máscaras (e sub-rede, se desejado) precisam ser


informados em cada host da rede. Segue, na Figura 2.33, um exemplo de

con guração de endereço IPV6 e máscara de rede (e/ou sub-rede) em um sistema

Windows. Os servidores DHCP também podem ser con gurados para con guração

automática de endereços em hosts em uma rede.

Figura 2.33 | Exemplo de con guração de endereço IPv6

[Link] 18/26
03/03/2021 lddkls211_red_sis_dis

Fonte: captura de tela elaborada pelo autor.

TRADUÇÃO DE ENDEREÇOS E COEXISTÊNCIA

A comunicação entre hosts que operam em um ambiente onde as duas versões do

0
protocolo IP são utilizadas também pode contar com um protocolo de tradução de

Ver anotações
endereços, como o Network Address Translation (NAT). Este protocolo

implementa um mecanismo de tradução de endereços IPv4 em endereços IPv6

com equivalência de valor.

Como exemplo de tradução de endereço IP, tomaremos o número IPv4


[Link]. Para fazer a conversão do endereço, faça as seguintes etapas:

Converta o endereço IPv4 para notação binária:

[Link] = 11000000.10101000.00000000.00000001

Separe os números binários em grupos de quatro dígitos:

1100 0000 . 1010 1000 . 0000 0000 . 0000 0001

Utilize as bases 8, 4, 2 e 1 para converter os grupos dos números binários:

1100 = 12 e 0000 = 0

1010 = 10 e 1000 = 8

0000 = 0 e 0000 = 0

0000 = 0 e 0001 = 1

Converta os números encontrados em cada um dos oito grupos para a notação

hexadecimal:

1100 = 12 = C e 0000 = 0 ➔ O primeiro duocteto ca C0.

1010 = 10 = A e 1000 = 8 ➔ O segundo duocteto ca A8.

0000 = 0 e 0000 = 0 ➔ O terceiro duocteto ca 00.

0000 = 0 e 0001 = 1 ➔ O quarto duocteto ca 01.

Desta forma, o endereço IPv4 [Link] é representado em IPv6:

C0A8:0001.

Adicione o 0 nos cinco primeiros grupos de 16 bits, seguido de FFFF:

[Link]OA8:0001.

[Link] 19/26
03/03/2021 lddkls211_red_sis_dis

O IPv6 ainda permite a representação de seu endereço de forma reduzida,

abstendo-se de apresentar os endereços com 0:

[Link].

0
Com os dispositivos con gurados nas redes, os hosts devem ter também um

Ver anotações
mecanismo para que o roteamento das mensagens ocorra. Os hosts con gurados

com IPv4/IPv6 possuem suporte aos dois protocolos, não necessitando de técnicas

de transição. Já um dispositivo con gurado apenas com IPv4 ou IPv6 suportará

operações de roteamento somente conforme o protocolo con gurado.

Outra técnica adotada para a coexistência e interoperabilidade entre as diferentes

versões do IP é o mecanismo de 6to4, o qual permite que redes IPv6 tenham a

comunicação entre os roteadores de forma automática. Roteadores 6to4

encaminham os dois endereços (Ipv4 e Ipv6) dos hosts, e os dispositivos clientes

(hosts) devem estar con gurados com os endereços IPv4. A Figura 2.34 apresenta

uma topologia com exemplo de implementação de mecanismo 6to4.

O tunelamento na rede permite que o IPv4 possa encaminhar pacotes ao IPv6

através de algumas possibilidades:

1. Roteador a roteador: o IPv6 é encapsulado dentro de um pacote IPv4 no início

da transmissão.

2. Roteador a host: um host com IPv4 envia pacotes a um host IPv6, e o pacote

utiliza-se da con guração de Pilha Dupla do roteador para alcançar o host de


destino através de um túnel entre o roteador e o host destino.

3. Host a host: um host con gurado com Pilha Dupla se comunica com outro host

em uma rede con gurada com o protocolo IPv4 via tunelamento entre os

hosts.

Outro mecanismo, chamado de Tunel Broker, encapsula o pacote IPv6 dentro do

pacote IPv4 e permite que seja realizado o roteamento do pacote na rede através

de um túnel em redes con guradas como IPv4 e necessidade de

interoperabilidade com sites IPv4/IPv6.

A última técnica utilizada para interoperabilidade entre o IPv4 e IPv6 é a Intra-Site

Automatic Tunnel Addressing Protocol (ISATAP). Ela possibilita utilizar


endereços atribuídos pelo servidor DHCP (Dynamic Host Con guration Protocol)

com IPv4 para dispositivos com tunelamento de IPv6. Interessante observar que o

[Link] 20/26
03/03/2021 lddkls211_red_sis_dis

ISATAP é default para sistemas operacionais Windows. Você pode reconhecer o

endereço ISATAP com a utilização do comando ipcon g no prompt de comando. A

Figura 2.34 apresenta um exemplo com topologia de túnel 6to4.

0
Figura 2.34 | Exemplo de topologia para implementação de técnica de túnel 6to4

Ver anotações
Fonte: adaptada de LabCisco.

DIFERENÇAS ENTRE IPV4 E IPV6

As principais diferenças entre os protocolos IPv4 e IPv6 referem-se ao tamanho do

endereço, à quantidade de endereços disponíveis para utilização, à representação

do endereço, ao roteamento, à segurança e às questões de qualidade de serviço

(Quality of Services – QoS). O Quadro 2.7 apresenta um comparativo de algumas

características entre o endereço IPv4 e IPv6.

Quadro 2.7 | Comparação entre os protocolos IPv4 e IPv6

Área IPv4 IPv6

Endereços 232 2128

Campos 14 8

MTU mínimo 576 bytes 1280 bytes

Representação 4 grupos de 8 bits 8 grupos de 16 bits

Roteamento Tabela grande Cabeçalho

Segurança Não há IPSeg

QoS Não há Com garantia

[Link] 21/26
03/03/2021 lddkls211_red_sis_dis

Fonte: adaptado de Forouzan (2010).

Segundo Tanenbaum (2011), os administradores de redes e os provedores de

internet deverão suportar a interoperabilidade entre os dois protocolos, o IPv4 e o

0
IPv6, por algum tempo ainda, porém esta coexistência deverá trazer alguns

Ver anotações
problemas de gerenciamento. Alguns deles são:

Falhas: as redes deverão operar com o IPv4 e com o IPv6.

Contabilização: recalcular limites de utilização de recursos.

Con guração: pela necessidade de coexistência entre os protocolos.

Desempenho: necessidade de adaptações para garantia de performance em

serviços.

Segurança: buscar técnica para garantia da interoperabilidade (coexistência)

sem riscos à segurança de sistemas.

As informações técnicas apresentadas suportam a con guração de ambientes de

rede de computadores com protocolos IPv4, IPv6 e, principalmente, com a

coexistência e interoperabilidade dos dois protocolos no mesmo ambiente.

REFLITA

Um endereço IPv4 é composto por quatro blocos de oito bits cada,

totalizando 32 bits, o que resulta em uma quantidade de endereços para

hosts diretamente interligados à internet de aproximadamente 4.3 bilhões,

ou seja, 232 endereços. A sua utilização em redes locais privadas, porém,

pode incrementar este número de endereços, por serem redes isoladas da


internet, através de seus servidores e controles de atribuição de endereços

pelos provedores de serviços de conexão à internet.

Já um endereço IPv6 é composto por oito blocos de 16 bits cada,

totalizando 128 bits, o que representa uma quantidade de endereços para


hosts diretamente interligados à internet de 340 undecilhões. O número é
grande, mesmo considerando previsões de termos mais de 10 trilhões de

dispositivos de IoT (Internet of Things) interconectados até o ano de 2030,

conforme previsto por Diamandis e Kotler (2018).

Qual deverá ser a versão de IP para endereçamento de dispositivos de IoT

adequado? 

[Link] 22/26
03/03/2021 lddkls211_red_sis_dis

Caro aluno, esta seção trouxe para você importantes conceitos a respeito do

padrão Ethernet (IEEE 802.3) e suas diferentes versões utilizadas para

implementação de sistemas de redes de computadores locais através de cabos,

com uma tecnologia amplamente utilizada nos últimos 30 anos. De forma

0
complementar, e com grande importância, trouxe também informações sobre o

Ver anotações
IPv6 como uma versão atualizada do protocolo IP para endereçamento e

roteamento de redes, que deverá ser utilizado como padrão de endereçamento de

redes junto à versão IPv4. Estas informações são fundamentais para que um

pro ssional de tecnologia da informação possa projetar e implementar uma rede

de computadores com performance adequada.

FAÇA VALER A PENA


Questão 1

O padrão Ethernet para redes de computadores pode utilizar cabos metálicos e

cabos ópticos na implementação física do meio de transmissão em camada de

host de rede do conjunto de protocolos TCP/IP (ou camada física no modelo de


referência OSI). A comunicação de dados em nível de enlace ocorre utilizando um

protocolo de acesso múltiplo ao meio compartilhado nestas redes, de forma que

um único cabo é utilizado para a comunicação entre hosts.

Assinale a alternativa que apresenta o nome do protocolo de acesso ao meio

compartilhado utilizado no padrão Ethernet:

a.  CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance).

b.  CSMA/CD (Carrier Sense Multiple Access with Collision Detection).

c.  PPP (Point to Point Protocol).

d.  UDP (User Datagram Protocol).

e.  TCP (Transmission Control Protocol).  

Questão 2

Conforme sustentam Kurose e Ross (2013), a partir da década de 1990, a

comunidade responsável pelas tecnologias de rede de computadores,


especi camente pelo protocolo IP, passou a buscar uma alternativa para

substituição do protocolo utilizado no nal do século XIX, que já vinha sendo

utilizado desde o surgimento da ARPAnet (Advanced Research Project Agency

Network).

[Link] 23/26
03/03/2021 lddkls211_red_sis_dis

Com a intenção de desenvolver um novo protocolo de endereçamento e

roteamento de rede, o ____________ veio para suprir algumas necessidades além


das possibilidades do protocolo __________, que eram: 1. Resolver a ____________ de

endereços IPs na internet; 2. Simpli car o cabeçalho do endereço IP; 3. Deixar

0
como opcionais alguns campos de cabeçalho IP para facilitar o roteamento de

Ver anotações
pacotes na rede; 4. Melhorar a segurança das transmissões, adicionando o

____________ para prover segurança ao protocolo.

Assinale a alternativa que preenche corretamente as lacunas:

a.  IPv4; IPv6; escassez; IPsec.

b.  IPv4; IPv6; padronização; UDP.

c.  IPv6; IPv4; escassez; IPsec.

d.  IPv6; IPv4; escassez; TCP.

e.  IPv6; IPv4; padronização; TCP. 

Questão 3

O planejamento de topologia de uma rede padrão Ethernet precisa levar em

consideração o volume de dispositivos conectados e endereçados na rede

mediante a utilização de dispositivos chamados de comutadores, os quais buscam

comutar a transmissão com os hosts na rede. Os dispositivos estão dentro de um


ambiente de acesso múltiplo ao meio compartilhado e têm um importante papel

referente à performance da rede.

Considerando as características de uma rede Ethernet e os dispositivos

comutadores que pertencem a este padrão de rede, analise as a rmativas a seguir:

Em uma rede Ethernet, podem ocorrer colisões de duas formas, sendo uma

pelo domínio de colisão e outra pelo domínio de broadcast.

No domínio de colisão, os pacotes da rede têm a possibilidade de efetuar

colisão uns com os outros, o que leva à degradação da performance da rede,

pois faz com que muitas retransmissões sejam necessárias.

Um hub é um dispositivo que faz comutação em uma rede com a repetição das
mensagens para todas as suas portas de conexão, formando um único domínio

de colisão e broadcast.

Um switch é um dispositivo capaz de formar um domínio de colisão em cada

d f ú d í d b d
[Link] 24/26
03/03/2021 lddkls211_red_sis_dis

porta de comunicação e formar um único domínio de broadcast. Dispositivo

fundamental na operação das redes de computadores na atualidade.

Considerando o contexto apresentado, é correto o que se a rma em:

0
a.  I e II, apenas.

Ver anotações
b.  I, II e III, apenas.

c.  I e IV, apenas.

d.  I, III e IV, apenas.

e.  I, II, III e IV. 

REFERÊNCIAS

COMER, D. E. Redes de Computadores e Internet. 6. ed. Porto Alegre, RS:


Bookman, 2016.

DIAMANDIS, P. H.; KOTLER, S. Oportunidades Exponenciais: um manual prático

para transformar os maiores problemas do mundo nas maiores oportunidades de

negócio. Rio de Janeiro: Alta Books, 2018.

FILIPPETTI, M. A. CCNA 4.1: Guia completo de estudos. Florianópolis, SC: Visual

Books, 2008.

FOROUZAN, B. A. Comunicação de dados e redes de computadores. 4. ed. Porto

Alegre, RS: AMGH, 2010.

GOMES, A. IPv6: entenda por que este padrão é indispensável. Olhar Digital, 2020.
Disponível em: [Link]

indispensavel/109920. Acesso em: 1º out. 2020.

[Link]. Cabeçalho. 2020. Disponível em: [Link]

em: 14 nov. 2020.

KUROSE, J. F.; ROSS, K. W. Redes de computadores e a internet: uma abordagem

top-down. 6. ed. São Paulo: Pearson Education do Brasil, 2013.

NUNES, S. E. Redes de Computadores. Londrina, PR: Editora e Distribuidora

Educacional S. A., 2017.

STALLINGS, W. Redes e Sistemas de Comunicação de Dados. Rio de Janeiro:

Elsevier, 2016. Disponível em:


[Link] Acesso em: 21

[Link] 25/26
03/03/2021 lddkls211_red_sis_dis

out. 2020.

TANENBAUM, A. S. Redes de computadores. 4. ed. Rio de Janeiro: Campus, 1997.

TANENBAUM, A. S. Redes de computadores. 5. ed. São Paulo: Pearson Prentice

0
Hall, 2011.

Ver anotações

[Link] 26/26
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

ETHERNET E IPV6

0
Renato Cividini Matthiesen

Ver anotações
IDENTIFICAÇÃO DE DISPOSITIVOS DA REDE
Apresentação de informações detalhadas sobre os dispositivos que fazem parte da rede, a m
de identi car os equipamentos disponíveis em cada um dos setores, e também a descrição dos
domínios de colisão e de broadcast da rede.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR


RELATÓRIO DO PROJETO DE REDES: EQUIPAMENTOS DE REDE E ANÁLISE DE
DOMÍNIOS DE COLISÃO E BROADCAST

Após a análise da topologia da rede e distribuição de hosts junto aos dispositivos


comutadores, a equipe de consultoria pode apresentar informações de descrições

dos equipamentos de rede que pertencem ao ambiente de coworking e se utilizam

do padrão Ethernet para transferência de dados na rede, de acordo com a


topologia a seguir:

[Link] 1/5
03/03/2021 lddkls211_red_sis_dis

Figura 2.35 | Topologia de rede para análise dos domínios de colisão e broadcast mapeados

0
Ver anotações
Fonte: elaborada pelo autor.

Lista de equipamentos da rede:

Sistemas: um servidor, uma impressora, dois desktops e um switch.

Gerência: um switch, duas impressoras e três desktops.

Clientes1: um switch e quatro desktops.

Reuniões: um roteador.

Clientes2: um switch, um hub e quatro desktops.

Visitantes: um roteador.

Domínio de colisão: há quatro domínios de colisão, considerando que cada switch

na topologia forma um domínio de colisão. Importante apresentar que o hub não


implementa um domínio de colisão e, caso a empresa tenha interesse em

substituí-lo por um switch, poderá ter uma rede com menor colisão dentro de sua
topologia.

Domínio de broadcast: há dois domínios de broadcast, considerando que cada


roteador da topologia apresentada forma um domínio de broadcast.

Na atualidade, os hubs podem ser substituídos por switches devido à evolução dos
equipamentos nos últimos anos e ao custo com o equipamento ter diminuído,

possibilitando sua utilização em maior escala em projetos de rede. Neste estudo, o

hub está sendo utilizado como elemento de comutação para exempli car à
empresa que seu uso atende parcialmente às necessidades da rede.

AVANÇANDO NA PRÁTICA

CONVERSÃO DE ENDEREÇAMENTO IPV4 PARA IPV6

[Link] 2/5
03/03/2021 lddkls211_red_sis_dis

Um escritório de contabilidade solicitou uma consultoria para análise e

implantação de uma nova estrutura de rede local de computadores e precisa

entender melhor como utilizar o endereçamento IPv6 como alternativa a

con gurações locais do IPv4. Esta empresa vem atuando no ramo de contabilidade

0
e possui um escritório com 30 estações de trabalho (desktops e notebooks) para as

Ver anotações
atividades pro ssionais de seus colaboradores. Com o objetivo de prover

conhecimento aos proprietários da empresa, sua equipe foi desa ada a fazer um

cálculo de tradução do endereço de IPv4 para o formato de IPv6 como forma de


conhecimento do novo sistema de endereços IPv6 em relação ao endereço antigo.

Adicionalmente, a empresa também solicitou que se apresentem três mecanismos

de convivência de endereços IPv4 e IPv6 dentro da rede. Como referência, vamos

considerar que o endereço do servidor de rede é [Link], número este que


será utilizado para exempli cação do novo endereço no padrão IPv6. A topologia

da rede pode ser veri cada na Figura 2.36.

Figura 2.36 | Topologia de rede do escritório de contabilidade

Fonte: elaborada pelo autor.

RESOLUÇÃO 

A comunicação entre hosts que operam em um ambiente onde as duas

versões do protocolo IP são utilizadas também pode contar com um protocolo

de tradução de endereços, como o Network Address Translation (NAT). Este

protocolo implementa um mecanismo de tradução de endereços IPv4 em


endereços IPv6 com equivalência de valor.

Como exemplo de tradução de endereço IP, vamos considerar o endereço do

servidor da empresa de contabilidade com IPv4 [Link].

Conversão do endereço IPv4 para notação binária:

[Link] = 11000000.10101000.00000000.11010010.

Ou:

[Link] 3/5
03/03/2021 lddkls211_red_sis_dis

1100 0000 . 1010 1000 . 0000 0000 . 1101 0010.

Conversão dos grupos binários de bases 8, 4, 2 e 1:

1100 = 12 e 0000 = 0

0
1010 = 10 e 1000 = 8

Ver anotações
0000 = 0 e 0000 = 0

1101 = 13 e 0010 = 2

Conversão dos números grupos para a notação hexadecimal.

1100 = 12 = C e 0000 = 0 ➝ O primeiro duocteto ca C0.

1010 = 10 = A e 1000 = 8 ➝O segundo duocteto ca A8.

0000 = 0 e 0000 = 0 ➝ O terceiro duocteto ca 00.

1100 = 13 e 1001 = 2 ➝ O quarto duocteto ca D2.

O endereço parcial IPv6 respectivo ao IPv4 proposto é: C0A8:00D2.

Adicionando os grupos de 0 e FFFF para completar o endereço:

[Link]OA8:00D2.

Ou ainda: [Link].

Para conhecimento dos mecanismos que podem ser implementados na

empresa de contabilidade, o consultor procurou conhecer as técnicas 6to4,

tunelamento, túnel broker e ISATAP (Intra-suite Automatic Tunnel Addressing

Protocol) e descreveu sucintamente suas funcionalidade e possibilidades em


um quadro resumo.

Quadro 2.8 | Mecanismos de tradução de endereços IPv4 e IPv6

Mecanismo Funcionalidades Possibilidades

6to4 Roteadores encaminham os Con guração dos dois


dois endereços (IPv4 e IPv6) dos endereços nos hosts e

hosts para a rede. roteamento automático.

Tunelamento Permite utilização de Roteador a roteador,


infraestrutura com IPv4 para Roteador a Host e Host a

encaminhamento de pacotes Host.


IPv6.

[Link] 4/5
03/03/2021 lddkls211_red_sis_dis

Mecanismo Funcionalidades Possibilidades

Túnel Broker Permite que o pacote IPv6 seja Roteamento através de


encapsulado dentro do pacote túnel.

0
IPv4.

Ver anotações
ISATAP Permite atribuição de endereço ISATAP determina a
pelo serviço de DHCPV4. entrada e saída do túnel

IPv6.

Fonte: elaborado pelo autor.

[Link] 5/5
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

GERÊNCIA DE DESEMPENHO, CONFIGURAÇÃO E


CONTABILIZAÇÃO

0
Renato Cividini Matthiesen

Ver anotações
O QUE É GERENCIAMENTO DE UMA REDE DE COMPUTADORES?
O gerenciamento de redes pode ser de nido como o monitoramento, o teste, a con guração e
o diagnóstico de componentes de rede para atender a um conjunto de exigências de nidas por
uma organização, as que se relacionam com a operação estável e e ciente da rede e que
fornece a qualidade prede nida de serviços aos seus usuários. (FOROUZAN,2010)

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

PRATICAR PARA APRENDER

Caro aluno, esta seção apresentará a você conceitos, estratégias e ferramentas


para o gerenciamento de sistemas de redes de computadores. Abordaremos, em
um primeiro momento, as cinco áreas do gerenciamento de redes, as quais
abarcam: con guração, falha, desempenho, segurança e contabilização. Em
seguida, apresentaremos alguns comandos para análise e con gurações de rede,
seguidos dos padrões de gerenciamento de rede, dentre os quais se destaca o

protocolo SNMP (Simple Network Management Protocol). Para dar sequência ao

aprendizado de gerenciamento de redes, mostraremos indicadores de gerência de


desempenho, con guração, contabilização, disponibilidade de rede e QoS (Quality

of Services). Esses indicadores são vistos através de ferramentas de gerenciamento

[Link] 1/27
03/03/2021 lddkls211_red_sis_dis

de redes, muitas delas disponíveis através de comandos ou aplicativos dos


sistemas operacionais Linux e Windows, sendo que algumas das ferramentas

operam em ambos os ambientes e são de utilização livre. O Microsoft Network


Monitor e o Wireshark são dois aplicativos que podem ser utilizados para análise e

0
mensuração de alguns indicadores de gerenciamento de rede.

Ver anotações
Na segunda parte desta seção, trataremos de informações sobre comandos para

reconhecimento, avaliação e con guração de sistemas de redes de computadores.


O protocolo VLAN Trunk Protocol será apresentado como ferramenta para

gerenciamento e customização de atividades em redes, e o protocolo SSH (Secure

Shell), como ferramenta de conexão remota em sistemas de rede. Estas aplicações


permitem que o administrador de um sistema de redes de computadores possa

fazer a conexão remota com os sistemas e buscar a melhor administração da rede,


independentemente de sua localização física.

Um determinado escritório de contabilidade possui uma rede de computadores

instalada que suporta todas as atividades pro ssionais desenvolvida no ambiente

interno para cerca de 30 estações de trabalho (desktops e notebooks) para as


atividades pro ssionais de seus colaboradores. A topologia do escritório é

apresentada na Figura 2.37 a seguir, na qual se pode perceber as distribuições dos


computadores que realizam os trabalhos internamente.

Neste escritório, a rede se tornou muito lenta em um determinado período do dia,


quando todos os colaboradores estão atuando em suas atividades pro ssionais. O

diretor da empresa solicitou que um pro ssional de tecnologia da informação


pudesse apresentar uma análise sobre as atividades desenvolvidas na rede, pois

entende que há colaboradores utilizando a infraestrutura de rede para fazer


downloads de arquivos em formato de vídeo, atividade fora do escopo das

atividades convencionais desenvolvidas no escritório. Neste primeiro momento, a


consultoria deverá buscar uma solução, com a implantação de um sistema de

sni g, para que se possa coletar os dados da rede. O sistema sugerido para
implantação é o Wireshark, que tem interface simples e natureza de utilização livre.

O Microsoft Network Monitor também pode ser utilizado para esta análise.

A consultoria cou responsável por apresentar a topologia de rede descrita a

seguir, utilizando-se da ferramenta Packet Tracer e adicionando à estrutura a

representação do sni er. Também foi solicitado que o relatório contenha pelo
menos uma tela de dados capturados pelo monitoramento realizado pelo

Wireshark.

[Link] 2/27
03/03/2021 lddkls211_red_sis_dis

Figura 2.37 | Topologia de rede do escritório de contabilidade

0
Ver anotações
Fonte: elaborada pelo autor.

A consultoria deve apresentar as informações de análise e orientações de


utilização da ferramenta de monitoramento de rede através de um relatório

chamado de Relatório de projeto de redes: monitoramento de rede via sni g.

Um sistema de redes de computadores necessita ser devidamente planejado,

implantado e gerenciado. A simples implementação de infraestrutura, sistema


operacional e aplicações distribuídas em rede não se faz su ciente para que a

performance de todo este sistema seja e caz. As tecnologias e as ferramentas de

gerenciamento de redes são fundamentais para que o pro ssional de tecnologia

da informação possa desenvolver uma rotina, na qual o monitoramento e os


ajustes do sistema sejam aliados, a m de que as empresas tenham suporte

adequado para que seus sistemas distribuídos possam operar adequadamente.

CONCEITO-CHAVE
GERÊNCIA DE DESEMPENHO

Nesta terceira e última seção da unidade de Arquitetura e tecnologia de redes,

conheceremos as áreas que formam o gerenciamento de redes e nos

aprofundaremos na gerência de desempenho. Trabalharemos conceitos e

aplicações da análise e con guração de redes e utilizaremos o protocolo VLAN

Trunk Protocol como estratégia para gestão de redes e o SSH (Secure Shell) como
ferramenta de gestão e acesso remoto em redes de computadores.

Forouzan (2010) de ne gerenciamento de redes como o monitoramento, o

teste, a con guração e o diagnóstico de componentes de rede para atender

a um conjunto de exigências de nidas por uma organização. As exigências

relacionam-se com a operação estável e e ciente da rede que fornece a


qualidade prede nida de serviços aos seus usuários.

[Link] 3/27
03/03/2021 lddkls211_red_sis_dis

Ainda de acordo com o autor, o gerenciamento de redes abarca cinco áreas,

conforme descritas a seguir:

Gerenciamento de con guração: sistema utilizado para conhecimento sobre

0
o estado de cada entidade da rede e sua relação com as outras entidades. Este

gerenciamento pode ser um subsistema de recon guração ou de

Ver anotações
documentação. Na recon guração, há o ajuste dos componentes e das

características da rede no que se refere ao hardware, ao software e às contas


de usuários. Já na documentação há o registro das con gurações da rede sobre

o hardware, o software e as contas de usuário.

Gerenciamento de falhas: relaciona-se à área do gerenciamento que trata das

falhas de rede através de dois subsistemas: um reativo e outro proativo. No


subsistema reativo, existe a detecção, o isolamento, a correção e o registro de

falhas. No subsistema proativo, o sistema procura impedir a ocorrência de

falhas.

Gerenciamento de desempenho: esta área está relacionada ao


gerenciamento de falhas e tenta monitorar e controlar a rede para garantir que

ela seja executada de forma e ciente. Conforme sustenta Forouzan (2010), esta

área busca quanti car o desempenho de uma rede de computadores usando

quantidades mensuráveis, como: capacidade, throughput (vazão), tráfego e


tempo de resposta (latência). A capacidade da rede deve ser monitorada,

porque as redes possuem capacidades de infraestrutura, hardware e software

limitadas; o tráfego também necessita de monitoramento interno e externo,

medido pelo número de pacotes transmitidos (no tráfego interno) e pela troca
de pacotes (no tráfego externo); o throughput de um dispositivo (roteador, por

exemplo) pode ser medido para analisar a performance da rede; e o tempo de


resposta é medido durante a transmissão e obedece a parâmetros mínimos de
retorno. Adicionalmente, o Jitter, que é uma medida de variação no atraso da

transferência de dados e a perda de pacotes também in uenciam no


desempenho da rede.

Gerenciamento de segurança: é a área responsável pelo controle de acesso à


rede e considera uma política de rede prede nida pela empresa. Tem relação

com os sistemas de segurança computacional e prevê a utilização de sistemas


de proteção à rede para monitoramento de ameaças e ataques. Neste
gerenciamento, são consideradas questões de ameaças, ataques e

vulnerabilidade de sistemas e utilizam-se dispositivos, como rewall, Intrusion

[Link] 4/27
03/03/2021 lddkls211_red_sis_dis

Detection Systems (IDS), Intrusion Prevention Systems (IPS), sistemas de


monitoramento e captura de dados de rede, como os farejadores, ou sni ers, e

sistemas de monitoramento em geral.

0
Gerenciamento de contabilização: é a área relacionada à quanti cação do
acesso e à utilização de recursos de rede pelos usuários, departamentos ou

Ver anotações
divisões. Este gerenciamento é importante para que usuários não

monopolizem recursos da rede, impedir que o sistema seja utilizado de forma


ine ciente e para que os administradores da rede possam analisar sua
utilização e desenvolver planos sobre o uso da rede, conforme sua demanda.

Firewalls, IDS, IPS, sistemas farejadores e monitoramento auxiliam também


nesta atividade.

ASSIMILE

Os princípios do gerenciamento de rede são de nidos por Kurose e Ross


(2013) através de três atividades:

Coleta de dados: refere-se à coleta de dados da rede, realizada por um


sistema de sni g¸ por exemplo.

Análise e diagnóstico: refere-se à organização dos dados coletados na

rede para tomada de decisão de forma manual ou utilizando softwares


especí cos.

Controle: refere-se a ações para a gestão da rede, a m de cessar,


mitigar ou minimizar os impactos de informações trafegadas na rede.

SNIFFER

Um sistema de sni g, ou uma aplicação sni er, é um aplicativo de software que


busca realizar a análise e interceptação do registro de dados de um sistema de

redes de computadores. São aplicativos que auxiliam os administradores de rede


na análise do tráfego da rede e na checagem da sua performance mediante os
parâmetros de operação estabelecidos. Estas ferramentas permitem também

controlar o tráfego de um dispositivo de rede e capturar dados das transmissões


nela realizadas. Os aplicativos que realizam estas atividades são chamados de

farejadores e executam um algoritmo que captura uxos de dados especi cados


pelos gestores de sistemas da empresa em sua con guração através de e-mail,
login, texto e históricos de acesso à internet, por exemplo. A Figura 2.38 apresenta

um exemplo de tela de uma ferramenta sni g, o Wireshark.

[Link] 5/27
03/03/2021 lddkls211_red_sis_dis

Estas ferramentas representam, por um lado, um aliado ao gestor de redes de


computadores, pois analisam e geram relatórios de análise da rede, porém

também podem representar um ponto de atenção, porque representam uma


ferramenta que impacta a vulnerabilidade de sistemas e trazem questões contra a

0
segurança da rede.

Ver anotações
EXEMPLIFICANDO

Alguns programas estão disponíveis para download e implantação de


aplicativos de sni g de forma livre. A seguir, apresenta-se dois exemplos de

aplicativos que podem ser utilizados para análise e captura de dados da


rede.

Wireshark (antes chamado de Ethereal).

Microsoft Network Monitor.

A Figura 2.38 demonstra uma tela inicial da interface grá ca da ferramenta


Wireshark. A ferramenta permite que se ltrem informações clicando nas
interfaces ou informando-as.

Figura 2.38 | Tela de informações do Wireshark

[Link] 6/27
03/03/2021 lddkls211_red_sis_dis

Fonte: Wikimedia Commons.

PADRÕES DE GERENCIAMENTO DE REDE

De acordo com Kurose e Ross (2013), os padrões de gerenciamento de rede

0
começaram a amadurecer no nal da década de 1980, sendo que o CMISE

Ver anotações
(Common Management Service Element), ou Elemento de Serviço de

Gerenciamento Comum, e o CMIP (Common Management Information Protocol),


ou Protocolo de Informação de Gerenciamento Comum, formavam o ISO
CMISE/CMIP e o SNMP (Simple Network Management Protocol), ou Protocolo

Simples de Gerenciamento de Rede, e emergiram como os dois padrões mais


importantes. O SMNP se tornou a estrutura de gerenciamento de rede mais usada
e disseminada no mundo. Importante salientar que estes padrões de

gerenciamento de redes são utilizados pelos pro ssionais de tecnologia da


informação para análise de dados e tomada de decisões gerenciais, com o objetivo

de manter uma infraestrutura de rede que garanta o QoS (Quality of Services), ou


qualidade de serviços da rede.

SNMP (SIMPLE NETWORK MANAGEMENT PROTOCOL)

É um protocolo utilizado para realizar monitoramento de dispositivos e serviços de


rede, que pode ser usado por dispositivos de diferentes arquiteturas e sistemas
operacionais.

Defendido por Kurose e Ross (2013), ao contrário do que o nome possa sugerir, o

gerenciamento de rede na internet é muito mais do que apenas um protocolo para


transportar dados de gerenciamento entre uma entidade gerenciadora e seus
agentes.

O SNMP é formado por quatro componentes básicos:

Agentes ou Dispositivo gerenciado: são os nós (host ou roteador, impressora,

etc.) gerenciados na rede de computadores.

Agente de Gerenciamento de rede: são as estações de gerenciamento na

rede.

MIB (Management Information Base): são as informações de gerenciamento


da rede reunidas em um banco de dados com informações de con guração e
status dos dispositivos gerenciáveis da rede.

SNMP: é o protocolo propriamente dito de gerenciamento de rede instalado

em dispositivos gerenciáveis da rede (computador, impressoras, câmeras IP,

[Link] 7/27
03/03/2021 lddkls211_red_sis_dis

switches).

CMISE (COMMON MANAGEMENT SERVICE ELEMENT)

É formado por dois protocolos, o CMIS (Common Management Information

0
Service), que de ne como os serviços serão oferecidos às aplicações de rede, e o

Ver anotações
CMIP (Common Management Information Protocol), que é um protocolo de
gerenciamento de referência, no qual as trocas das informações seguem a mesma

estrutura entre o gerente e o agente nos processos de gerenciamento.

COMANDOS PARA ANÁLISE E CONFIGURAÇÕES DE REDE

A análise e a con guração de redes de computadores fazem uso de comandos em


prompt de comando nos sistemas operacionais Microsoft Windows e de
distribuições Linux, para que pacotes de software sejam implementados no

sistema e possam ser utilizados pelo administrador da rede para gerir os host e
dispositivos de rede em geral e, assim, con gurar hardware e software e gerenciar
o tráfego na rede. A seguir, serão apresentados alguns comandos básicos de

gestão de redes.

PING

O comando ping é usado para testar a capacidade de um host de rede de se


comunicar com outro. Ele retorna dados referente a um teste simples de conexão

de rede e à qualidade de entrega de pacotes. A Figura 2.39 apresenta a saída do

comando ping utilizado junto ao endereço IP ([Link]) de um servidor do Google.

Podem ser observadas informações sobre a conexão, como tempo de resposta e


TTL (Time To Live) da mensagem, uma estatística de pacotes enviados como

pacotes perdidos e a latência da rede, com mínimo, máximo e média.

Figura 2.39 | Exemplo de utilização do comando ping

Fonte: captura de tela do prompt de comando do sistema elaborada pelo autor.

TRACERT

[Link] 8/27
03/03/2021 lddkls211_red_sis_dis

O comando tracert é semelhante ao ping, mas com a função adicional de enviar

solicitações de eco do ICMP (Internet Control Message Protocol) e do TTL (Time to

Live) da solicitação, para que se veri que a lista de roteadores pelos quais os
pacotes estão passando em cada salto. Este comando apresenta o caminho de um

0
pacote percorrido na rede. Em distribuições Linux, utilize o comando traceroute

Ver anotações
para esta nalidade. A Figura 2.40 apresenta a saída do comando tracert utilizado
junto ao endereço IP de um servidor do Google.

Figura 2.40 | Exemplo de utilização do comando tracert

Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

IPCONFIG

O comando ipcon g exibe informações básicas de con guração do endereço IP do

host. Pode-se utilizar a opção ipcon g /all para veri car informações detalhadas.

Em distribuições Linux, utilize o comando ifcon g para realizar a operação


realizada pelo ipcon g em sistemas Windows. A Figura 2.41 apresenta a saída do

comando ipcon g utilizado no computador local. Veja que há um volume

importante de informações de endereçamento do host, com o endereço IPv6, o

endereço IPv4 de con guração automática, considerando que há um servidor de


endereços no sistema (DHCP – Dynamic Host Con guration Protocol), a máscara de

rede e o gateway padrão da rede, onde o host está se conectando localmente.

Figura 2.41 | Exemplo de utilização do comando ipcon g

[Link] 9/27
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

HOSTNAME

O comando hostname retorna o nome do dispositivo (computador) local. A Figura

2.42 apresenta um exemplo de saída do comando hostname com o devido nome


do host local.

Figura 2.42 | Exemplo de utilização do comando hostname

Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

NETSTAT

O comando netstat apresenta uma estatística da rede. Este comando possui


várias funções, sendo que o comando netstat -e mostra um resumo das

estatísticas da rede. A Figura 2.43 apresenta a saída do comando netstat -e com

informações da rede. Veja que é apresentado um relatório com bytes recebidos e


enviados, pacotes unicast, pacotes não unicast, descartados e erros. Com essas

informações, o gestor pode reconhecer a performance da rede.

Figura 2.43 | Exemplo de utilização do comando netstat

[Link] 10/27
03/03/2021 lddkls211_red_sis_dis

Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

NSLOOKUP

O comando nslookup apresenta um diagnóstico de problemas de resolução de

0
nomes DNS (Domain Name System) apresentando o endereço IP do servidor DNS
padrão do dispositivo. Conhecendo o nome do servidor DNS, pode-se digitar os

Ver anotações
nomes de hosts. Ele faz uma consulta de nomes de servidores de DNS na internet.

A Figura 2.44 apresenta a saída do comando nslookup [Link].

Figura 2.44 | Exemplo de utilização do comando netstat

Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

ARP

O comando arp corresponde a um protocolo de resolução de endereços através


do mapeamento de endereços IP junto ao endereço MAC (Media Access Control). A

Figura 2.45 apresenta a saída do comando arp com o mapeamento dos endereços

lógicos (IP) e físicos (MAC) de um dispositivo.

Figura 2.45 | Exemplo de utilização do comando arp

Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

ROUTE

[Link] 11/27
03/03/2021 lddkls211_red_sis_dis

O comando route exibe as tabelas de roteamento do dispositivo e permite

observar informações de direcionamento de pacotes de uma sub-rede para outra.


A Figura 2.46 apresenta a saída parcial de um comando route print, atributo que

imprime as tabelas de roteamento local.

0
Ver anotações
Figura 2.46 | Exemplo de utilização do comando route

Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

Aqui, apresentamos alguns comandos básicos para análise e con guração de

dados de rede, porém ainda há diversos outros comandos e sistemas operacionais


que podem ser utilizados na con guração e gestão de redes de computadores.

INDICADORES DE GERÊNCIA DE DESEMPENHO, CONFIGURAÇÃO, CONTABILIZAÇÃO E QOS


(QUALITY OF SERVICES)

Conforme de ne Comer (2016), as principais medidas de desempenho de uma

rede de computadores são: latência ou atraso, throughput, vazão, capacidade ou


taxa de transferência e jitter ou variação da latência. Outros indicadores também

são importantes, como perda de pacotes e disponibilidade.

LATÊNCIA OU ATRASO

A primeira propriedade das redes que pode ser medida quantitativamente é

latência ou atraso. A latência especi ca quanto tempo leva para os dados viajarem
através da rede de um computador para outro, medida em frações de segundo. Ela

pode ser também considerada como o intervalo de tempo durante a emissão e a

con rmação de recebimento de um pacote na rede. Há diversos fatores que


impactam na latência de uma rede. O Quadro 2.9 apresentado a seguir mostra os

tipos de atraso em uma rede de computadores.

[Link] 12/27
03/03/2021 lddkls211_red_sis_dis

Quadro 2.9 | Tipos de atraso

Tipo de

atraso De nição

0
Propagação Tempo necessário para deslocamento no meio físico da rede.

Ver anotações
Acesso Tempo necessário para obtenção de acesso ao meio físico

(cabo de rede, por exemplo).

Comutação Tempo necessário para processamento do encaminhamento de


um pacote na rede.

En leiramento Tempo necessário que um pacote gasta na memória de um

comutador de rede ou um roteador da rede esperando a


transmissão.

Servidor Tempo necessário para um servidor da rede enviar uma

resposta a uma requisição de um host na rede.

Fonte: adaptado de Comer (2016, p. 412).

THROUGHPUT

Comer (2016) de ne a taxa de transferência ou throughput como uma medida da


velocidade na qual os dados podem ser enviados através da rede, em bits por

segundo (bit/s). Os fatores que in uenciam no throughput da rede são: topologia

da rede, número de usuários da rede e taxa de interfaces de rede. A Figura 2.47


apresenta um exemplo de mensuração de throughput de rede realizado através da

ferramenta Wireshark.

Figura 2.47 | Throughput em uma rede medida pela aplicação Wireshark

[Link] 13/27
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: captura de tela da ferramenta Wireshark elaborada pelo autor.

ASSIMILE

A maioria das redes de comunicação de dados oferece uma taxa de

transferência de mais de 1 Mbit/s, e as redes de maior velocidade operam

mais rápido do que 1 Gbit/s. Casos especiais surgem quando uma rede tem
uma taxa de transferência inferior a 1 kbit/s.

JITTER

O jitter é uma medida de variação no atraso da transferência de dados. Ela se

tornou importante mediante as novas tecnologias de comunicação baseadas em

streaming, com a transferência de voz e vídeos em tempo real via internet. Duas
redes podem ter o mesmo atraso médio, mas diferentes valores de jitter. Por

exemplo, se todos os pacotes que percorrem uma determinada rede têm o mesmo

atraso X de um pacote e Y de outro pacote, a rede não tem jitter. Porém, se os


pacotes alternam entre atrasos diferentes (com um atraso X de um pacote

diferente de um atraso Y de outro pacote), a rede tem a mesma média de atraso,

mas tem um jitter diferente.

Como um exemplo de importância da análise de jitter, considere que as


transmissões de voz ou vídeo via internet devem utilizar um protocolo que

compensa o jitter. Como o uso de protocolos em tempo real é mais econômico do

que a construção de uma rede isócrona (onde há envio de mensagens


ininterruptamente com intervalos conhecidos e xos), as empresas de telefonia

estão atenuando os requisitos rigorosos de redes isócronas.

[Link] 14/27
03/03/2021 lddkls211_red_sis_dis

REFLITA

Conforme a rma Comer (2016), medir o desempenho da rede pode ser

surpreendentemente difícil por quatro motivos:

As rotas podem ser assimétricas.

0
As condições podem mudar rapidamente.

Ver anotações
A própria medição pode afetar o desempenho.

O tráfego é em rajadas.

Ao contrário do tráfego telefônico de voz, o tráfego de dados ocorre em


rajadas.

O desempenho de uma rede de computadores é considerado estável

dentro do que se chama de redes convergentes, nas quais redes de dados e

redes de telefonia estão operando através de linhas de distribuição de


dados uni cada?

PERDA DE PACOTES

A perda de pacotes na rede refere-se à situação em que se encaminham

informações pela rede, porém estas não respondem com a totalidade da sua

entrega. Pode ocorrer devido à capacidade de armazenamento de pacotes nos


roteadores, considerando que estes possuem capacidade de memória limitada. É

possível veri car a resposta de perda de 25% dos pacotes enviados através do

comando ping [Link] no teste de rede apresentado na Figura 2.48.

Figura 2.48 | Perda de pacotes na rede

Fonte: captura de tela do prompt de comando do sistema operacional elaborada pelo autor.

EXEMPLIFICANDO

Redes padrão Ethernet (802.3) são baseadas em conexões realizadas

através de enlaces físicos por cabos. Os cabos metálicos de par trançado

UTP (Unshield Twisted Pair) é o tipo mais comum em redes locais e


possuem comprimento limitado (100 metros), para garantir a qualidade do

[Link] 15/27
03/03/2021 lddkls211_red_sis_dis

sinal eletromagnético. A instalação adequada dos cabos dentro dos limites

de comprimento estabelecidos, assim como os graus de curvatura que são

submetidos, in uenciam na perda de pacotes em uma rede.

0
Outra medida importante para prevenir a perda de pacotes é a escolha

adequada do padrão de rede Wi-Fi (802.11), que possui diversas

Ver anotações
especi cações, com diferentes faixas de frequência e cobertura. Por

exemplo, uma rede 802.11ac trabalha na faixa de frequência de 5,8 GHz,


velocidade de até 1,3 Gbps e possui menor distância de operação e menor

capacidade de transpassar obstáculos, o que pode ocasionar perda de

pacotes na rede. Outro padrão recente é o 802.11ad, com frequência de 60

GHz, que possui maior di culdade para transpassar obstáculos devido à

alta frequência.

DISPONIBILIDADE

Como sustenta Comer (2016), as redes de computadores são compostas por

diversos equipamentos, como nodos, computadores, servidores, cabeamentos,


entre outros, e todos esses dispositivos podem sofrer algum tipo de falha. A

disponibilidade de uma rede é a capacidade que seus equipamentos possuem de

manterem-se em operação de forma ininterrupta dentro de um determinado

período de tempo.

Alguns conceitos referentes à disponibilidade de uma rede de computadores são:

Mean Time Between Failures (MTBF): ou tempo médio entre falhas, é uma
previsão por modelo estatístico/matemático do tempo médio entre as falhas. É

útil para prever as manutenções necessárias dentro de um sistema de redes de


computadores. Para o cálculo, utiliza-se a fórmula:

MTBF = ∑ (FINAL – INICIAL) / NÚMERO DE FALHAS

Mean Time to Repair (MTTR): ou tempo médio para reparos, é uma previsão
por modelo estatístico/matemático do tempo médio para se realizar o reparo

da rede após a ocorrência de uma falha. Para o cálculo, utiliza-se a fórmula:

MTTR = TEMPO DE PARADA POR FALHA / NÚMERO DE FALHAS

Mean Time to Failure (MTTF): ou tempo médio para falha, é o tempo de vida
de uma rede que compreende os períodos alternados de operação de falhas.

Este termo é utilizado para efetuar o cálculo de disponibilidade de uma rede de

[Link] 16/27
03/03/2021 lddkls211_red_sis_dis

computadores por meio da função de frequência com que as falhas ocorrem e

do tempo necessário para reparo, de nido pela fórmula:

D = MTTF / (MTTF + MTTR)

0
Por exemplo: considere que um sistema de rede de computadores possui um

Ver anotações
MTTF de 8.760 horas de operação no ano (referente a um sistema que opera 365

dias por 24 horas) e um MTTR de 288 horas anual (com sistema o -line 12 dias por

ano). Nesse caso:

D = MTTF / (MTTF + MTTR)

D = 8760 / (8760+288)

D = 96,816

A disponibilidade da rede é de 96,82% ao ano.

QOS (QUALITY OF SERVICE)

Comer (2016) de ne que o objetivo da medição de redes é o provisionamento da

rede: projetar uma rede para fornecer um nível especí co de serviço e, em termos

gerais, isto é conhecido como Qualidade de Serviço, ou Quality of Service (QoS).

Ela pode ser vista como o conjunto de regras, mecanismos e tecnologias que

objetivam a utilização e caz do sistema. Como vimos anteriormente, os fatores

que in uenciam na performance da rede são a latência, o jitter, a perda de pacotes

e a largura de banda disponível. O QoS busca garantir ao usuário ou gestor da rede


de computadores controle adequado sobre sua estrutura de rede. Uma aplicação

de utilização de QoS é determinar quais dispositivos da rede e quais serviços de

rede precisam de prioridade na conexão.

O atendimento às necessidades de performance dos sistemas de redes de


computadores, a QoS, utiliza-se de dois modelos conceituais:

IntServ: utiliza o uxo dos dados por meio do protocolo no caminho que a

mensagem deve percorrer e garante o envio e recebimento de mensagens m

a m.

Di Serv: utiliza uma marcação no pacote transmitido pela rede para classi cá-

lo e efetuar os tratamentos necessários de forma independente para os

pacotes.

[Link] 17/27
03/03/2021 lddkls211_red_sis_dis

De acordo com Comer (2016), o IETF (Internet Engineering Task Force) criou uma

série de tecnologias e protocolos relacionados à QoS. Os três mais signi cativos

são: RSVP/COPS (Resource ReSerVation Protocol / Common Open Policies Services),


Di Serv e MPLS (Multiprotocol Label Switching).

0
RSVP/COPS: modelo baseado no IntServ, no qual o IETF desenvolveu dois

Ver anotações
protocolos para fornecer QoS: o protocolo de reserva de recursos (RSVP) e os

serviços abertos de políticas comuns (COPS). O RSVP é uma versão de QoS, em


que a reserva de recursos é necessária para cada sessão TCP ou UDP. O COPS é

um protocolo usado conjuntamente com o RSVP para especi car e aplicar

políticas.

Di Serv: uma vez abandonados os IntServ, o IETF criou os serviços


diferenciados (Di Serv, ou Di erentiated Services) para de nir um mecanismo

de QoS que de ne como as classes podem ser especi cadas para o cabeçalho

IPv4 ou IPv6, para especi car a classe de um datagrama.

MPLS: é um mecanismo de comunicação orientado à conexão construído em


cima do IP. Para usar o MPLS, um gerente con gura caminhos de

encaminhamento através de um conjunto de roteadores com o MPLS

habilitado.

A análise da performance da rede que considera a qualidade dos serviços, a


disponibilidade da rede, a capacidade de processamento e o armazenamento é

determinada pelo termo Service Level Agreement (SLA), ou seja, um acordo de

nível de serviço de nido e medido constantemente.

INTRODUÇÃO AO VLAN TRUNK PROTOCOL

O VLAN Trunk Protocol (VTP) é um protocolo de camada 2 (inter-rede),

desenvolvido pela Cisco e utilizado para con guração de Virtual Local Area

Network (VLAN), com o objetivo de facilitar a administração dos sistemas. Este


protocolo de ne uma estrutura do tipo cliente-servidor, na qual as alterações são
feitas necessariamente no servidor e replicadas aos clientes da rede. Importante

apontar que esta técnica é utilizada por administradores de redes para melhorar o

controle do sistema.

ASSIMILE

[Link] 18/27
03/03/2021 lddkls211_red_sis_dis

Uma VLAN é uma forma de criar sub-redes virtuais em uma estrutura de

rede local implementada em switches, onde cada interface de rede (host)

pode se comportar como uma VLAN e de nir seu próprio domínio de

broadcast.

0
Ver anotações
Com a utilização do VLAN Trunk Protocol, o trabalho de con guração de redes

locais virtuais é reduzido, pois o gestor da rede con gurará apenas um switch, que
será o responsável pela função de distribuir e sincronizar as informações para os

outros switches da rede. Esta tecnologia oferece redução de atividades de

con guração e recon guração e minimização de erros através da centralização das

con gurações em um switch chamado de VLAN Trunk Protocol Server. Na VLAN,

nos switches que fazem parte de uma rede com VLAN, as tabelas de roteamento

são atualizadas, isso porque as VLANs são criadas na interface de rede do switch. A

estrutura de uma rede con gurada com o VLAN Trunk Protocol é:

Server VTP: dispositivo responsável por criar, deletar, renomear e de nir o


domínio e as con guração das VLANs.

Client VTP: dispositivos que compõem a VLAN, porém não podem con gurá-la.

Transparent VPT: switch com VLANs con guradas manualmente, que não
participa do VTP.

A Figura 2.49 mostra uma estrutura formada pelo VLAN Trunk Protocol (VTP).

Fonte: elaborada pelo autor.

REFLITA

Caso um administrador de redes tenha desejo de implementar redes locais


virtuais, ele deverá fazer a con guração manualmente em cada switch da

rede. Isto é simples em uma rede com dois ou três switches, porém se

torna inviável em uma rede maior, com uma estrutura mais complexa e

suscetível a erros de con guração.

[Link] 19/27
03/03/2021 lddkls211_red_sis_dis

O VTP pode ser a tecnologia adequada para gestão de redes com múltiplos

switches?

ACESSO REMOTO – SERVIDOR SSH

0
O protocolo de rede SSH (Secure Socket Shell ou Secure Shell) permite que se faça

Ver anotações
comunicação com segurança (criptografada) entre um host cliente e um servidor

de rede, permitindo fazer o gerenciamento de dados e informações deste servidor

de forma remota (em local físico diferente de sua localização). Através do SSH, um

usuário ou gestor da rede pode fazer login em outro computador da rede e

executar comandos como se estivesse diretamente operando um sistema servidor

local. A interface é realizada através de um Shell remoto, que executa os comandos

digitados e faz a ponte entre a máquina do usuário e o servidor remoto

Os comandos de interação são realizados através de um terminal, chamado de

Shell, responsável pela interpretação dos comandos do usuário junto ao sistema


operacional de rede. Trata-se de um serviço que possui um protocolo que

estabelece a administração remota de um servidor. É baseado em interação via


texto, porém sua utilização é simples, através de um conjunto de recursos que

permitem desde a transferência de arquivos entre cliente e servidor até a

instalação e con guração de serviços de gerenciamento de redes de forma remota.

O SSH é originalmente desenvolvido para sistemas operacionais, UNIX, adaptados


em distribuições baseadas em Linux. No entanto, também é possível utilizá-lo em

sistemas operacionais baseados em plataforma Windows com aplicativos

adicionais e a partir da sua versão 10 sem utilização de aplicações

complementares.

O comando SSH segue a seguinte estrutura:

SSH USER@HOST

ssh: indica o uso do comando para abertura de conexão remota criptografada.

user: exempli cado como a conta à qual se deseja conectar remotamente


(necessário ter direitos de administrador (Windows) e root (Linux).

host: indica o computador que se deseja acessar, identi cado através do


endereço IP ou nome de domínio.

[Link] 20/27
03/03/2021 lddkls211_red_sis_dis

Após a digitação do comando para inicialização dos serviços de SSH, será

necessário informar nome de usuário e senha de acesso à conta, de nidos no

servidor SSH em um sistema operacional de rede. A Figura 2.50 apresenta um

exemplo de conexão de SSH realizada pelo Laptop-1 SSH Client com um SSH Server

0
em uma localização física diferente.

Ver anotações
Figura 2.50 | SSH Conexão remota com SSH

Fonte: elaborada pelo autor.

A seguir, a Figura 2.51 apresenta um exemplo de utilização de cliente SSH para

acesso remoto a um servidor determinado.

Figura 2.51 | SSH Cliente no Windows 10

Fonte: Hostmidia.

EXEMPLIFICANDO

Para habilitar a ferramenta SSH no Windows, siga os seguintes passos:

1. Abra as con gurações do Windows.

2. Acesse Aplicativos.

3. Clique em “Aplicativos e Recursos”.

4. Clique em “Recursos Opcionais”.

5. Selecione o OpenSSH, caso não apareça.

[Link] 21/27
03/03/2021 lddkls211_red_sis_dis

6. Clique em “Adicionar um recurso”; Localize “Cliente OpenSSH”, caso

deseje instalar o cliente ou “Servidor OpenSSH” para o servidor e clique


em Instalar.

0
Para utilizar o SSH, é necessário que se tenha acesso à internet e privilégios

de administrador. Se for distribuição Linux, deverá ter acesso como root

Ver anotações
(administrador). Os dados de acesso como conta do usuário, senha e porta
do servidor também são necessários para que se realize uma conexão SSH.

Para melhor compreender a instalação e execução do Open SSH no

Windows 10, você pode visitar o site da Microsoft com as devidas

orientações e a página OpenSSH.

Outras ferramentas para implementação de SSH:

PuTTy: cliente SSH para a plataforma Windows e Unix (Linux).

SmarTTY: um cliente SSH.

XShell: clientes SSH versátil.

Esta unidade buscou trazer conceitos importantes sobre o gerenciamento de redes

de computadores e a aplicação de comandos e ferramentas para veri cação,

análise e gerenciamento de redes, observando informações de con guração de

dispositivos da rede e o seu tráfego. Estas ferramentas são importantes para que o

pro ssional de tecnologia da informação possa conceber e operar sistemas de

redes de computadores, porém com naturalidade, visto que não abarca todo o
conhecimento necessário para uma gestão completa de redes. Neste cenário,

bibliogra as complementares e ferramentas foram sugeridas para que você possa

se aprofundar na área de redes de computadores e se tornar um pro ssional de

excelência.

SAIBA MAIS

A utilização de comandos e aplicativos para con guração e gestão de redes

de computadores não se restringe aos exemplos dados e pode ser

conhecida com maiores detalhes em literaturas especí cas de cada

plataforma operacional.

Para con gurações de sistemas Windows, pode ser consultado o livro

Con guração do Windows Server 2008: infraestrutura de rede, de T.


Northrup e J. C. Mackin, disponível na biblioteca virtual.

[Link] 22/27
03/03/2021 lddkls211_red_sis_dis

Para con gurações de sistemas Linux, pode ser consultado o livro Manual

completo do Linux: guia do administrador, de Eve Nemeth, Garth Snyder e


Trent R. Hein, disponível na biblioteca virtual.

0
Para con gurações de sistemas Linux, pode ser consultado o livro

Dominando o Linux: Red Hat e Fedora, de Bill Ball e Hoyt Du , disponível na

Ver anotações
biblioteca virtual.

Para conhecimento de projeto de interconexão de redes, pode ser


veri cado o livro Projeto de Interconexão de redes: Cisco Internetwork

Design – CID, de Matthew Birkner, disponível na biblioteca virtual.

Considerando a segurança dos sistemas nas áreas onde tem Wi-Fi, a

escolha do equipamento com recursos providos e con guráveis é


importante. Sugerimos a leitura do texto Porque você precisa se preocupar

com o gerenciamento do Wi-Fi na sua empresa, da página Olhar Digital

(2017).

PESQUISE MAIS

Para contribuir com a compreensão e o uso de ferramentas de

gerenciamento de redes, é sugerida a leitura das informações do texto

Conheça as Principais Ferramentas de Gerenciamento de Redes de


Mercado, de Marcelo Brenzink do Nascimento.

Para realizar análise de performance e gerenciamento de redes, é

importante a utilização de ferramentas de software. Fica a sugestão para

conhecer as seguintes ferramentas:

1. Wireshark.

2. Capsa.

3. Microsoft Network Monitor.

4. SLAView.

5. Zenoss.

6. Cisco Prime Network Analysis.

FAÇA VALER A PENA


Questão 1

[Link] 23/27
03/03/2021 lddkls211_red_sis_dis

Forouzan (2010) de ne gerenciamento de redes como o monitoramento, o teste,

a con guração e o diagnóstico de componentes de rede para atender a um


conjunto de exigências de nidas por uma organização. As exigências relacionam-

se com a operação estável e e ciente da rede que fornece a qualidade prede nida

0
de serviços aos seus usuários. Este gerenciamento relaciona-se a cinco áreas:

Ver anotações
con guração, falhas, desempenho, segurança e contabilização.

Assinale a alternativa que corresponde à área de gerenciamento de redes que

monitora e controla a rede para garantir que ela esteja rodando de forma

e ciente. Esta área avalia variáveis mensuráveis, como: capacidade, chamada de

throughput ou vazão, tráfego e tempo de resposta.

a.  Gerenciamento de con guração.

b.  Gerenciamento de falhas.

c.  Gerenciamento de desempenho.

d.  Gerenciamento de segurança.

e.  Gerenciamento de contabilização. 

Questão 2

A análise e a con guração de redes de computadores fazem uso de comandos em

prompt de comando nos sistemas operacionais Microsoft Windows e de


distribuições Linux, para que pacotes de software sejam implementados no

sistema e possam ser utilizados pelo administrador da rede para gerir os host e

dispositivos de rede em geral e, assim, con gurar hardware e software e gerenciar

o tráfego na rede. Um dos comandos de gestão de redes emite o rastreamento de

rota para um determinado endereço de IP (Internet Protocol), conforme

apresentado na gura a seguir.

Fonte: elaborada pelo autor.

Assinale a alternativa que apresenta o comando para saída de dados com o


[Link] 24/27
03/03/2021 lddkls211_red_sis_dis

q p p

rastreamento da rota para o servidor [Link], conforme a gura apresentada:

a.  ping [Link].

b.  tracert [Link]. 

0
c.  Ipcon g /all.

Ver anotações
d.  hostname [Link].

e.  netstat -e.   

Questão 3

O gerenciamento de uma rede de computadores toma como parâmetro alguns


indicadores quantitativos de performance na rede. Conforme de ne Comer (2016),

as principais medidas de desempenho de uma rede de computadores são:

latência, throughput e jitter, porém outros fatores também são quanti cados e

utilizados para medir a performance da rede.

Avalie as assertivas apresentadas a seguir e sua relação com a performance de

uma rede de computadores:

I. A perda de pacotes na rede refere-se a não entrega de dados durante a

transmissão na rede e pode ocorrer devido à capacidade de armazenamento


de pacotes nos roteadores, considerando que estes possuem capacidade de

memória limitada.

II. A latência é uma medida de variação no atraso da transferência de dados. Esta

medida se tornou importante mediante as novas tecnologias de comunicação


baseadas em streaming, com a transferência de voz e vídeos em tempo real via

internet. Duas redes podem ter o mesmo atraso médio, mas diferentes valores

de jitter. Por exemplo, se todos os pacotes que percorrem uma determinada

rede têm o mesmo atraso, X e Y, a rede não tem jitter. Porém, se os pacotes

alternam entre atrasos diferentes (com X diferente de Y), a rede tem a mesma

média de atraso, mas tem um jitter diferente.

III. Taxa de transferência ou throughput é uma medida da velocidade por meio da

qual os dados podem ser enviados através da rede, em bits por segundo (bit/s).

Os fatores que in uenciam no throughput da rede são: topologia da rede,

número de usuários da rede e taxa de interfaces de rede.

IV. O jitter especi ca quanto tempo leva para os dados viajarem através da rede

de um computador para outro; ela é medida em frações de segundo. A latência

[Link] 25/27
03/03/2021 lddkls211_red_sis_dis

pode ser também considerada como o intervalo de tempo durante a emissão e

con rmação de recebimento de um pacote na rede.

Sobre indicadores de desempenho de redes de computadores, é correto o que se

0
encontra nas assertivas:

Ver anotações
a.  I, II, III e IV.

b.  II, III e IV, apenas. 

c.  I, III e IV, apenas. 

d.  I e III, apenas. 

e.  II e III, apenas.  

REFERÊNCIAS

BALL, B.; DUFF, H. Dominando o Linux: Red Hat e Fedora. São Paulo: Pearson

Makron Books, 2004.

BIRKNER, M. H. Projeto de interconexão de redes: Cisco Internetwork Design –

CID. São Paulo: Pearson Education do Brasil, 2003.

CAPSA. Disponível em: [Link] Acesso em: 19 abr.

2020. 
CISCO PRIME NETWORK ANALYSIS. Disponível em:

[Link]

network-analysis-module-software/[Link]. Acesso em: 15

nov. 2020.

COMER, D. E. Redes de Computadores e Internet. 6. ed. Porto Alegre, RS:

Bookman, 2016.

FOROUZAN, B. A. Comunicação de dados e redes de computadores. 4. ed. Porto

Alegre, RS: AMGH, 2010.

KUROSE, J. F.; ROSS, K. W. Redes de computadores e a internet: uma abordagem

top-down. 6. ed. São Paulo: Pearson Education do Brasil, 2013.

MICROSOFT NETWORK MONITOR. Disponível em: [Link]

us/download/[Link]?id=4865. Acesso em: 16 nov. 2020.

NASCIMENTO, M. B. Conheça as principais ferramentas de gerenciamento de redes

de mercado DLTEC 2019 Disponível em:


[Link] 26/27
03/03/2021 lddkls211_red_sis_dis

de mercado. DLTEC, 2019. Disponível em:


[Link]

gerenciamento-de-redes-de-mercado/. Acesso em: 31 jan. 2021.

NEMETH, E.; SNYDER, G.; HEIN, T. R. Manual completo do Linux: guia do

0
administrador. São Paulo: Pearson Makron Books, 2004.

Ver anotações
NORTHRUP, T.; MACKIN, J. C. Con guração do Windows Server 2008:

infraestrutura de rede. Porto Alegre, RS: Bookman, 2013.

NUNES, S. E. Redes de Computadores. Londrina, PR: Editora e Distribuidora

Educacional S. A., 2017.

OLHAR DIGITAL. Por que você precisa se preocupar com o gerenciamento do Wi-Fi
na sua empresa?. Olhar Digital, 2017. Disponível em: [Link] Acesso

em: 31 jan. 2021.

PAKET, C. Construindo redes Cisco de acesso remoto. São Paulo: Pearson

Education do Brasil, 2003.

SLAVIEW. Disponível em: [Link]

de-performance/. Acesso em: 15 nov. 2020.

WIRESHARK. Disponível em:

[Link]

Acesso em: 16 nov. 2020.

ZENOSS. Disponível em: [Link] Acesso em: 14 nov.


2020.

[Link] 27/27
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

ASPECTOS DE PROJETO DOS SISTEMAS DISTRIBUÍDOS

0
Caique Silva Pereira

Ver anotações
EXEMPLOS E DESCRIÇÕES DE FRAMEWORKS
Pesquisa, comparação e apresentação de frameworks atuais que facilitem atingir escalabilidade
em sistemas distribuídos.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR

Você continua trabalhando no sistema de controle de manutenção preventiva para


várias frotas de veículos de grandes transportadoras no estado de Minas Gerais.
Seu papel nesse projeto é orientar toda sua equipe para utilização de sistemas
distribuídos, para que, ao nal, o produto seja robusto e funcional.

Agora é hora de avançar no projeto, pesquisando e apresentando frameworks


atuais, utilizados por grandes empresas no segmento de serviços em TI, para que o

sistema esteja apto a ser comercializado. Prepare um relatório e uma

apresentação com exemplos e descrições desses frameworks.

[Link] 1/2
03/03/2021 lddkls211_red_sis_dis

É muito importante que a equipe enxergue também as di culdades em se


implementar um sistema distribuído. Assim, para que isso aconteça, identi que, de

acordo com o material apresentado nesta seção, três desa os que podem surgir
ao implementá-lo. Pense também em como você pode justi car esta resposta, ou

0
seja: por que esses seriam desa os para que o sistema distribuído atinja seus

Ver anotações
objetivos? Além disso, você deve apresentar soluções para a escalabilidade do seu
sistema distribuído, para isso, faça um relatório comparando três frameworks

atuais que facilitam atingir a escalabilidade desejada em sistemas distribuídos e


aponte a melhor opção para esse projeto. Ao nal, crie uma apresentação para sua

equipe, com os três desa os escolhidos e a comparação dos três frameworks


pesquisados. 

Para solucionar essa tarefa, utilize os conteúdos apresentados nesta seção.


Sugerimos basear-se nos aspectos de projetos: segurança, escalabilidade,

resiliência e heterogeneidade. Para enriquecer sua apresentação, fale sobre os


desa os encontrados para atingir êxito nos aspectos de projetos escolhidos.

Para a pesquisa e comparação dos frameworks, você pode consultar as seguintes


documentações:

Java RMI.

CORBA.

[Link].

JAX-WS.

Após a comparação dos frameworks, você deve escolher o que melhor auxilia a
escalabilidade do projeto, não se esquecendo de justi car sua escolha para

impressionar a equipe. Você pode comparar as linguagens de programação

utilizadas por cada um dos frameworks, veri cando sua popularidade, o conteúdo
disponível para aprendizado na internet, os requisitos mínimos para execução e

desenvolvimento na linguagem, entre outros aspectos. Você também pode


comparar os recursos necessários para execução de cada um dos frameworks,

descobrindo, assim, qual é mais viável para este tipo de sistema.

[Link] 2/2
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

CONCEITOS DE SISTEMAS DISTRIBUÍDOS

0
Caique Silva Pereira

Ver anotações
O QUE É UM SISTEMA DISTRIBUÍDO?
Um sistema distribuído é um conjunto de computadores que são interligados via rede, porém,
para o usuário nal das aplicações que são executadas através deles, aparenta ser um sistema
único, como uma única máquina ou um único software (TANENBAUM; STEEN, 2017). 

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

CONVITE AO ESTUDO

Caro aluno, você sabia que entender os conceitos de sistemas distribuídos é de


extrema importância atualmente? Grande parte das aplicações mais populares
utilizam esse modelo, em que várias máquinas são interligadas por meio de redes
de computadores. Você já parou para pensar como os sistemas computacionais
evoluíram até os dias atuais?

Nesta unidade, vamos compreender essa evolução, passando por todas as suas

etapas até chegar nos sistemas distribuídos. Você sabe classi car os diferentes

sistemas computacionais e distinguir suas características? Após completar esta


Unidade, você será capaz de realizar essa tarefa, utilizando seu raciocínio crítico e

[Link] 1/27
03/03/2021 lddkls211_red_sis_dis

criatividade para resolução dos problemas propostos. É fato que a demanda por
pro ssionais com conhecimento em implantação de sistemas distribuídos tem

aumentado principalmente em consultorias de TI que prestam serviços


especializados para seus clientes nos mais diversos segmentos.

0
Iniciaremos agora os estudos sobre os sistemas distribuídos, o que lhe

Ver anotações
proporcionará um leque de oportunidades no mercado de trabalho, assim como

conhecimentos importantes em relação a tecnologias atuais. Importante frisar que


quanto mais você se dedicar, mais poderá aproveitar os ensinamentos

transmitidos neste material.

PRATICAR PARA APRENDER

Nesta seção, trabalharemos conceitos e de nições de sistemas distribuídos e

veremos as diferenças entre clusters e grids, além de exemplos de sistemas


distribuídos e de sincronização de relógios no sistema operacional Windows.

Você sabia que, para o funcionamento correto de uma aplicação distribuída, os


relógios de todas as máquinas devem estar sincronizados? Além disso, já ouviu

falar em um servidor NTP, o qual serve como base para sincronizar os relógios das
máquinas?

Caro aluno, você foi contratado por uma startup de desenvolvimento de sistemas
bem-sucedida nos negócios, a qual iniciou projetos de sistemas para grandes

empresas. Em seu primeiro dia, você recebeu um e-mail para uma reunião on-line
de boas-vindas, mas percebeu que, ao responder e con rmar a reunião, ocorreu a

indicação de horário equivocada, ou seja, o horário de recebimento do e-mail


original apareceu como posterior ao horário do e-mail de resposta, conforme

mostrado na Figura 3.1 a seguir.

Figura 3.1 | Exemplo de problema em uma caixa de e-mails

Fonte: captura de tela do Microsoft Outlook.

[Link] 2/27
03/03/2021 lddkls211_red_sis_dis

A Figura 3.1 ilustra um problema de sincronização de relógios nos sistemas

computacionais que se comunicam em rede.

Sua primeira missão como analista na startup é reportar um erro de sincronização

0
de aplicações que rodam em diferentes máquinas de um cliente de lojas de varejo.

Assim que começou sua análise, você percebeu que os relógios das máquinas que

Ver anotações
rodam a aplicação não estão sincronizados, então, para resolver isso, você deverá

preparar um relatório mencionando o problema e como resolver esse ajuste de

horas, para que um técnico de campo seja enviado até o local.

Após seus relatórios e apresentações entregues ao dono das lojas, este percebe

que você sabe do que está falando e confessa que não entende como os

computadores podem conversar entre si. Entre outras coisas, você fala da
importância do sincronismo entre as máquinas e decide mostrar que sistemas em

rede não são tão complicados assim.

Você já parou para pensar quais são as con gurações e os comandos necessários

para que essa sincronização funcione adequadamente? Qualquer computador


pode ser usado para realizar a con guração ou é necessário um servidor especí co

para essa tarefa? Se for necessário um servidor, qual é o mais utilizado? Para

esclarecer essas dúvidas, você decide exempli car o funcionamento de um sistema

em rede de maneira simples e prática, acessando remotamente e sincronizando o

relógio local dos computadores das três lojas com a internet, por meio do seu
notebook, fazendo, assim, um acesso remoto, utilizando comandos especí cos,

relacionados aos servidores NTP. Para que o proprietário consiga fazer o

procedimento quando a sua loja adquirir uma nova máquina, crie um relatório

técnico com os comandos necessários, passo a passo, para que ele mesmo
sincronize a nova máquina com as demais.

Para completar esse desa o, nesta seção, você verá em detalhes o funcionamento

desse processo de sincronização de relógios, incluindo comandos especí cos a

serem utilizados tanto para a con guração como para a constatação de que o
serviço de sincronização está funcionando de maneira adequada. Ficou curioso?

Espero que você se sinta motivado a dedicar seu tempo e seus esforços a um

estudo que lhe proporcionará chances reais de assimilar os conceitos e as práticas

que você utilizará na sua vida pro ssional.

CONCEITO-CHAVE
DEFINIÇÃO E EXEMPLOS DE SISTEMAS DISTRIBUÍDOS

[Link] 3/27
03/03/2021 lddkls211_red_sis_dis

Mesmo que não saiba, hoje mesmo você já deve ter acessado um sistema

distribuído. Ao abrir o navegador de sua preferência e acessar uma página de

internet, você está usando um sistema distribuído. Essa simples ação rotineira em
nosso dia a dia, por meio de um smartphone ou computador, utiliza um sistema

0
distribuído. Mas, a nal, o que é um sistema distribuído?

Ver anotações
Um sistema distribuído é um conjunto de computadores que são

interligados via rede, porém, para o usuário nal das aplicações que são

executadas através deles, aparenta ser um sistema único, como uma única

máquina ou um único software (TANENBAUM; STEEN, 2017).

Um de seus principais aspectos é que os computadores que fazem parte de


sistemas distribuídos têm o funcionamento independente, ou seja, cada um age

por si próprio e, muitas vezes, os sistemas e hardwares dessas máquinas são

totalmente diferentes, mas aparentam ser uma coisa só para o usuário. Esses

computadores estão ligados por meio de uma rede, e só assim é possível seu

funcionamento de forma distribuída.

ASSIMILE

As principais aplicações e sistemas da atualidade utilizam modelos

distribuídos. Esse conceito faz com que o sistema não dependa apenas de

uma máquina, pois toda a carga do ambiente estará distribuída entre várias

máquinas. Assim, os sistemas distribuídos ocultam o conjunto de máquinas

que o fazem funcionar, aparentando ser algo único.

Conforme Tanenbaum e Steen (2017, p. 2), “Os modelos de sistemas distribuídos

servem para de nir a forma como os diversos objetos distribuídos se comunicam e


interagem entre si”. Os sistemas distribuídos seguem tendências e modelos para
seu funcionamento. Por exemplo, se pensarmos em variados sistemas

operacionais, a ação de abrir uma pasta é representada por dois cliques do mouse.

Quando trabalhamos com sistemas distribuídos, temos objetivos claros a serem


alcançados em nosso sistema, com sua criação, a saber:

Disponibilidade alta e fácil acesso ao sistema e a todos os seus recursos, tanto


pelas máquinas que fazem parte do sistema distribuído como pelo usuário

nal.

[Link] 4/27
03/03/2021 lddkls211_red_sis_dis

Devemos também ocultar ao usuário que os recursos de nosso sistema são


distribuídos; essa é uma característica muito importante.

O sistema distribuído deve ser aberto, ou seja, deve facilitar a inclusão de novas

0
máquinas e recursos no ambiente em funcionamento, sendo assim, esse
sistema pode ser expandido facilmente.

Ver anotações
REFLITA

Você conheceu alguns conceitos de sistemas distribuídos e percebeu o

quanto eles são utilizados em aplicações modernas. Agora que você já os


conhece, consegue identi car quais seguem esse modelo dentre os serviços

que mais utiliza? Além disso, será que algum serviço que você utiliza pode
ser otimizado aplicando esses conceitos? Re ita!

EXEMPLIFICANDO

Imaginaremos que queremos ver a página de notícias esportivas do nosso

time do coração em um portal de notícias X, o qual segue o modelo de


sistemas distribuídos. Sendo assim, a página acessada está sendo fornecida

por um conjunto de quatro servidores, os quais, para o usuário nal,


aparentarão ser algo único. Pensando nisso, uma das funções dos sistemas
distribuídos é que, mesmo que algum dos quatro servidores que estão

mantendo essa página no ar esteja desligado, os outros devem assumir sua


função, dividindo a carga, e o conteúdo deve estar no ar, assim como o
sistema precisa estar em funcionamento.

A principal motivação para construir e utilizar sistemas distribuídos é proveniente


do desejo de compartilhar recursos. O termo “recurso” é bastante abstrato, mas

caracteriza o conjunto de elementos que podem ser compartilhados de maneira


útil em um sistema de computadores interligados em rede. Ele abrange desde

componentes de hardware, como discos e impressoras, até entidades de nidas


pelo software, como arquivos, bancos de dados e objetos de dados de todos os
tipos, conforme indica Coulouris et al. (2013).

ASSIMILE

Um sistema distribuído é formado por vários nós/máquinas que executam


uma função dentro do sistema distribuído, de modo que, para o usuário

nal, aparentam ser uma única máquina.

[Link] 5/27
03/03/2021 lddkls211_red_sis_dis

Segundo Tanenbaum e Steen (2017), os sistemas distribuídos possuem três


objetivos principais: compartilhamento de recursos, con abilidade e desempenho,

conforme ilustra a Figura 3.2.

0
Figura 3.2 | Exemplos dos principais objetivos de um sistema distribuído

Ver anotações
Fonte: elaborada pelo autor.

COMPARTILHAMENTO DE RECURSOS
O compartilhamento de recursos refere-se à capacidade do sistema em

compartilhar o acesso a quaisquer recursos utilizados por ele entre as máquinas


que fazem parte da arquitetura (também chamadas de nós). Esses recursos são, na
maioria das vezes, bancos de dados, links de rede que se conectam à internet,

serviços de autenticação, entre outros. Apesar de não ser um objetivo exclusivo


dos sistemas distribuídos – uma vez que também é um objetivo dos sistemas de
rede –, é uma característica muito importante.

A vantagem de compartilhar recursos está na economia nanceira, uma vez que,

caso não haja tal possibilidade de compartilhamento, mais réplicas de um


determinado recurso devem estar presentes em cada nó do sistema, o que
impacta direta e indiretamente no custo. Entretanto, como aspecto negativo

associado a esse compartilhamento de recursos, temos a questão da segurança,


uma vez que o fato de mais máquinas terem acesso ao recurso implica que o

sistema possui mais pontos de acesso, os quais podem ser explorados por
hackers, tanto no sentido de rastreamento da comunicação quanto na própria
questão de invasão de privacidade e integridade dos dados (COULOURIS et al.,

2013).

CONFIABILIDADE

[Link] 6/27
03/03/2021 lddkls211_red_sis_dis

A análise morfológica da palavra con abilidade nos mostra que ela se refere à
probabilidade de um produto executar a sua função prevista de forma que atenda
ou exceda às expectativas, ou seja, está relacionada ao funcionamento adequado,

conforme foi planejado. Podemos confundir a con abilidade como algo

0
relacionado à segurança do sistema, porém não tem relação alguma, conforme

Ver anotações
observam Colouris et al. (2013).

A con abilidade nos sistemas distribuídos é maior que nos sistemas centralizados,

no entanto qualquer problema relacionado aos processos ou ao canal de


comunicação/transmissão pode surtir efeitos diretos sobre a execução do sistema.

Podemos observar, na Figura 3.3, como ocorre a comunicação entre processos nos
sistemas distribuídos, nos quais são aplicados os conceitos de con abilidade:

Figura 3.3 | Comunicação entre processos em um sistema distribuído

Fonte: elaborada pelo autor.

Podemos observar, na Figura 3.3, que, se ocorrer algum problema no canal de


comunicação, isso será re etido em todo o processo de comunicação e

funcionamento do sistema. A con abilidade de um sistema é baseada em três


pilares: consistência, disponibilidade e resiliência (tolerância a falhas), conforme o
Teorema CAP. Esse teorema é baseado nesses pilares, e sua sigla vem das palavras

consistência (consistency), disponibilidade (availability) e tolerância a falhas


(partition tolerance) (GREINER, 2014). Podemos observar, na Figura 3.4, a

representação desse teorema.

Figura 3.4 | Representação do Teorema CAP

[Link] 7/27
03/03/2021 lddkls211_red_sis_dis

Fonte: adaptada de Greiner (2014, [s.p.]).

Uma das características importantes do Teorema CAP, a qual pode ser observada

na representação da Figura 3.4, é que nunca podemos atingir os três pilares em

0
sua totalidade dentro de um sistema. A forma como foi elaborado permite que

Ver anotações
você tenha apenas dois dos pilares em evidência em seu sistema, ou seja, caso

selecione dois pilares em seu sistema, o terceiro cará enfraquecido.

Figura 3.5 | Disponibilidade e tolerância de partição

Fonte: elaborada pelo autor.

ASSIMILE

O Teorema CAP consiste em três pilares: consistência, disponibilidade e

resiliência (tolerância a falhas). Seu sistema só poderá ter foco em dois


deles, e o terceiro será enfraquecido. Por exemplo: se optar por

consistência e disponibilidade, seu sistema terá menor resiliência. E assim

ocorre em todas as suas combinações e possibilidades.

DESEMPENHO
Aumentar o desempenho de um sistema também é um objetivo dos sistemas

distribuídos. Se zermos uma comparação, os sistemas distribuídos, na maioria

dos casos, apresentam melhor desempenho do que os sistemas centralizados. Isto


ocorre porque, em um sistema distribuído, temos múltiplas instâncias, tanto de

hardware quanto de software, para realizar o processamento necessário. Como

podemos medir esse desempenho?

Conforme Coulouris et al. (2013, p. 83), podemos utilizar como parâmetros:

Tempo de resposta do servidor.

Throughput (taxa de transferência).

[Link] 8/27
03/03/2021 lddkls211_red_sis_dis

Quantidade de recursos consumidos pela rede.

Resultados de benchmarks (execução do sistema).

Tempo de transmissão dos dados.

0
Com os resultados das medições dos parâmetros listados, podemos identi car se

Ver anotações
o sistema distribuído é satisfatório.

Importa destacar que os sistemas distribuídos são mais utilizados em arquiteturas


do tipo cliente-servidor, as quais apresentam recursos compartilhados (tanto a

nível de hardware quanto a nível de software), a m de permitir que milhares de

clientes tenham acesso a esses recursos e possam utilizá-los como se houvesse


uma comunicação direta entre as máquinas e o cliente.

EXEMPLIFICANDO

A maioria dos jogos multijogadores on-line atuais utiliza a arquitetura


cliente-servidor para seu funcionamento. Esse tipo de jogo também é um

exemplo de sistema distribuído.

Imagine um jogo on-line de guerra em que você é o jogador X e está

enfrentando seu amigo, que é o jogador Y. Você, na verdade, tem três


avatares dentro de uma sessão de jogo: o primeiro é o avatar que você está

controlando e visualizando em seu dispositivo; o segundo é chamado de

imagem autoritária, isto é, a cópia de seu avatar feita pelo servidor do jogo,
a qual será enviada para que os outros jogadores possam te “enxergar”

dentro do jogo; esse segundo avatar, ao ser enviado aos outros jogadores,

funciona como o terceiro avatar, que será visualizado, por exemplo, no jogo
do seu amigo. Logo, você movimenta o seu avatar e a sua posição é enviada

ao servidor, o qual gera uma cópia com seu posicionamento e transfere-a

para o jogador Y. Com isso, temos a arquitetura cliente-servidor em

funcionamento.

Figura 3.6 | Exemplo de jogo multijogador on-line

[Link] 9/27
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: Shutterstock.

MIDDLEWARE
As redes estão por toda parte e servem de base para muitos serviços cotidianos
que agora consideramos naturais, por exemplo, a internet e a World Wide Web

associada a ela, a pesquisa na web, os jogos on-line, os e-mails, as redes sociais, o

e-commerce, etc. (COULOURIS et al., 2013). Os sistemas distribuídos podem ser


considerados como uma solução mais robusta em resposta aos sistemas

puramente de rede, isso graças ao componente conhecido como middleware. Ele é

um dos fatores principais para o bom funcionamento de aplicações distribuídas.

Middleware é uma camada oculta, um software, o qual se encontra entre os


sistemas operacionais e os aplicativos (programas criados) que são

executados neles. Portanto, é uma camada central, que permite o

gerenciamento e a comunicação de dados para o funcionamento de


aplicativos distribuídos. O middleware funciona como uma camada de

tradução para interligar o sistema operacional com os programas

(COULOURIS et al., 2013).

A Figura 3.7 ilustra as camadas que compõem um sistema distribuído.

Figura 3.7 | Camadas que compõem um sistema distribuído

[Link] 10/27
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

Alguns exemplos são: middlewares de banco de dados e servidores WEB e


ferramentas de mensageria. As mais diversas redes sociais que utilizamos hoje em

dia, com conteúdos multimídias, são exemplos de sistemas distribuídos, assim

como sites de pesquisas e plataformas de vídeos on line.

A Figura 3.8 ilustra um exemplo da atuação da camada middleware perante


diferentes computadores (máquinas), aplicações e sistemas operacionais.

Podemos observar que ela liga aplicações A, B e C com os sistemas operacionais 1,

2, 3 e 4. Essas aplicações e sistemas operacionais estão em diferentes

computadores (1, 2, 3 e 4). Eles interagirão entre si para a execução de um sistema


distribuído, e isso só é possível devido à camada do sistema distribuído, chamada

middleware.

Figura 3.8 | Middleware e sistemas distribuídos

Fonte: elaborada pelo autor.

ASSIMILE

Em uma aplicação escrita em diferentes máquinas, com sistemas

operacionais diferentes, é necessária a comunicação entre essas máquinas.

Cada uma delas fornece a própria representação de dados e formas de

comunicação e, nesse caso, o middleware atua como uma camada de


tradução para que seja possível a comunicação correta entre as máquinas

para o funcionamento do sistema.

[Link] 11/27
03/03/2021 lddkls211_red_sis_dis

COMPUTAÇÃO EM CLUSTER E COMPUTAÇÃO EM GRID


Os sistemas distribuídos podem ser classi cados em diferentes categorias, de

acordo com sua arquitetura e nalidade, sendo os mais comuns: computação em


cluster e computação em grid.

0
Ver anotações
CLUSTER
Agora, falaremos um pouco sobre algumas características da computação em

cluster. Esse tipo de computação é formado por um conjunto de máquinas com


hardwares semelhantes, ou seja, as máquinas que compõem o cluster possuem

características homogêneas (TANENBAUM; STEEN, 2017). O conjunto de máquinas

que compõem o cluster são ligadas por rede local (LAN).

Quando falamos da parte de software da computação em cluster, temos algumas


características importantes. Na maioria das vezes, o sistema operacional entre as

máquinas que formam o cluster é equivalente. Além disso, é frequente que um

único programa funcione de forma paralela, ou seja, um programa é subdividido


em partes menores, e cada parte é executada em uma máquina (ou nó) desse

cluster, de forma distribuída, a m de obter um aumento signi cativo de


desempenho e, consequentemente, executar determinada tarefa em menos

tempo. Geralmente, as máquinas desse tipo de sistema são fortemente acopladas


em suas ligações e, muitas vezes, podem até compartilhar a mesma memória RAM

entre várias máquinas.

Há sempre uma das máquinas que chamamos de nó mestre, isto é, a máquina

principal que gerencia o funcionamento da aplicação entre todos os nós. O nó


mestre faz a interface com o usuário, aloca tarefas e administra a la de tarefas. A

Figura 3.9 ilustra um cluster, que se encontra dentro do círculo pontilhado.

Figura 3.9 | Exemplo de cluster

[Link] 12/27
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

GRID
Agora que já conhecemos a computação em cluster, falaremos da computação em

grid, ou grades, e apontaremos algumas características. Conforme Tanenbaum e


Steen (2008), esse tipo de computação é formado por um conjunto de máquinas
com características diferentes, podendo o hardware e os sistemas operacionais

serem de fabricantes diferentes. Com isso, temos uma característica heterogênea

na computação em grid: essencialmente, um sistema de computação em grid


interliga vários clusters. Um exemplo de grid é o CINEGRID, que trabalha no

desenvolvimento de ferramentas colaborativas multimídia (CINEGRID BRASIL,

[s.d.]). Na Figura 3.10, vemos uma parte desse grid, com as ligações entre clusters

no Brasil; mas saiba que o CINEGRID interliga outros centros de pesquisa, em


várias partes do mundo.

Figura 3.10 | Exemplo de grid - CINEGRID

[Link] 13/27
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: CINEGRID BRASIL ([s.d.], [s.p.]).

DIFERENÇAS ENTRE CLUSTERS E GRIDS


Muitas vezes, pode parecer que clusters e grids são a mesma coisa, mas existe

uma característica fundamental que difere esses dois tipos de sistemas

distribuídos. Para facilitar o entendimento das diferenças entre eles, podemos


pensar que clusters são sistemas homogêneos, ou seja, são criados para

executarem alguma tarefa especí ca que, em geral, necessita de um alto poder de

processamento e, portanto, levaria muito tempo para ser executada em um


computador convencional.

EXEMPLIFICANDO

Um exemplo de tarefa que leva muito tempo para ser executada é o


treinamento de redes neurais arti ciais de aprendizagem profunda (deep

learning) para uso em ferramentas de chat on-line. Nesse tipo de aplicação,


os chamados bots – que, nesse caso, são o resultado da rede neural
treinada – conversam com e respondem a questionamentos dos clientes

(usuários) do serviço de chat on-line de uma determinada empresa.

Recentemente, muitos sistemas bancários têm utilizado esse tipo de


recurso. Supondo que para executar o treinamento desse tipo de rede em

computador convencional seriam necessários dois dias, ao executarmos

essa tarefa em um cluster, esse treinamento poderia ser realizado em

questão de minutos. 

[Link] 14/27
03/03/2021 lddkls211_red_sis_dis

Para diminuirmos o tempo de processamento, poderíamos executar esse tipo de

tarefa (treinamento de redes neurais arti ciais de aprendizagem profunda) em um


computador com alto poder de processamento, porém o custo desse tipo de

computador pode tornar essa opção inviável. Segundo o Lawrence Livermore

0
National Laboratory (2018), o sequoia é utilizado para realizar simulações

Ver anotações
numéricas referentes à física de armas nucleares. Assim sendo, este computador é

um cluster homogêneo, visto que executa uma pesquisa de nalidade especí ca.

Por sua vez, podemos pensar que os grids têm uma abordagem heterogênea, ou

seja, são criados para executarem diferentes tarefas, de certa maneira


relacionadas entre si, formando um centro de pesquisas de caráter

multidisciplinar. Uma maneira ainda mais simples de entender essa característica é

“pensar” em um grid como um conjunto de dois ou mais clusters, cada um deles


responsável por um certo tipo de pesquisa.

ARQUITETURA DESCENTRALIZADA
Na arquitetura descentralizada, os computadores são os próprios servidores da

aplicação (serviço ou recurso a ser compartilhado), o que se assemelha à

arquitetura ponto a ponto. Entretanto, diferentemente do que ocorre na


arquitetura ponto a ponto, o estado da aplicação (por exemplo, os valores atuais

das variáveis utilizadas na tal aplicação) é replicado entre todos os computadores

na rede, de maneira que exista um chamado consenso entre os computadores


nessa rede.

Figura 3.11 | Arquitetura descentralizada

[Link] 15/27
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

Há, ainda, a possibilidade de que alguns computadores simplesmente utilizem a

aplicação (em vez de serem servidores desta), tendo o papel puramente de

“clientes” nesse caso, o que remete à arquitetura cliente-servidor.

Essa é a arquitetura utilizada pelas plataformas baseadas em blockchain, e tem se


tornado mais popular após a advento do bitcoin. Aplicações que funcionam sobre

esse tipo de plataforma são chamadas de dApps (do inglês, decentralized

application). Uma das principais vantagens ao utilizar esse tipo de arquitetura é a


de que não há uma entidade que controle sua aplicação, como tipicamente ocorre

nas arquiteturas cliente-servidor. Por exemplo, seus e-mails do Gmail são

controlados pelo Google, que armazena os dados e poderia, hipoteticamente,

acessar dados privados ou decidir encerrar seus serviços – situação na qual você
estaria impossibilitado de optar por decisão contrária, caso não seja um acionista

da empresa. Na arquitetura descentralizada, há uma garantia de transparência aos

usuários de uma determinada aplicação, uma vez que a aplicação e seus dados são

armazenados por computadores dos próprios usuários que participam da rede, e

não por uma empresa somente.

Exemplos desse tipo de arquitetura podem ser vistos em qualquer sistema de

transações nanceiras das chamadas criptomoedas (como o próprio bitcoin), mas

não se limita apenas a esse tipo de aplicação. Um exemplo é a Steemit, aplicação

de rede social similar ao Twitter, porém faz uso da arquitetura descentralizada.

[Link] 16/27
03/03/2021 lddkls211_red_sis_dis

EXEMPLIFICANDO

Figura 3.12 | Como funciona a BlockChain

0
Ver anotações
Fonte: Shutterstock.

Conforme podemos observar na Figura 3.12, a BlockChain validadora de


transações é a principal tecnologia por trás do universo das criptomoedas,

que tem o bitcoin como sua principal moeda. De uma maneira simples, a

BlockChain pode ser considerada um livro compartilhado e distribuído, no


qual todos os usuários dessa rede mantêm uma cópia e todas as

transações de moedas cam registradas nessa rede. Portanto, esses

registros são imutáveis e con áveis.

A BlockChain armazena essas informações, esse conjunto de transações,

em blocos, carimbando cada um deles com um registro de tempo e data. A

cada período de 10 minutos é formado um novo bloco de transações, o

qual se liga ao bloco anterior. Os blocos são dependentes uns dos outros e

formam uma cadeia de blocos. Isso torna a tecnologia perfeita para o


registro de informações que necessitam de con ança, como no caso de

uma transação de moeda.

[Link] 17/27
03/03/2021 lddkls211_red_sis_dis

A rede do BlockChain é formada por mineradores que veri cam e registram

as transações no bloco.

Ao invés dessas informações carem armazenadas em um computador

0
central, no BlockChain, essa mesma informação ca armazenada em

milhares de computadores espalhados pelo mundo inteiro, um claro

Ver anotações
exemplo de aplicação distribuída.

Cada computador da rede ca com uma cópia integral do banco de dados,

o que torna as informações inseridas nele extremamente seguras e

con áveis, porque não há um ponto único de ataque. Logo, não podemos ir

a um computador central do BlockChain e roubar os registros de

transações e modi cá-los, porque cada computador dessa rede possui um


registro dessas informações. Se você tentar modi car o banco de dados de

um computador, ele será expulso pelo restante da rede (BASSOTTO, 2018).

COMPUTAÇÃO EM NUVEM
O termo computação em nuvem (do inglês, cloud computing) se refere a uma
tecnologia que possibilita acessar recursos e serviços via internet, sem a

necessidade de instalações de softwares em seu computador. Dessa forma, é

permitido que os usuários façam acessos por meio de qualquer dispositivo, seja

ele um computador ou telefone celular.

EXEMPLIFICANDO

Um exemplo de utilização de serviços em nuvem é quando você edita um

trabalho da universidade utilizando o Google Docs e esse trabalho ca

armazenado na nuvem. Outro exemplo é quando você escuta uma música

no Spotify, ou até mesmo assiste a um lme no Net ix. Todas essas


situações trazem um contato com a computação em nuvem. Elas têm em

comum o fato de não exigirem nenhuma instalação nem consumirem

recursos do seu dispositivo, todas são serviços on-line. Para acessá-los, só

precisamos de um navegador e ter conexão com a internet.

A Figura 3.13 ilustra múltiplos dispositivos acessando a nuvem, a qual contém

diversos tipos de dados. 

Figura 3.13 | Cloud computing

[Link] 18/27
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: Shutterstock.

O PAPEL DA VIRTUALIZAÇÃO EM SISTEMAS DISTRIBUÍDOS


Dois tipos de virtualização são muito úteis no contexto de sistemas distribuídos,

conforme Coulouris et al. (2013):

Virtualização de redes.

Virtualização de sistemas.

Os autores observam, muito adequadamente, que a vantagem da criação e

utilização de redes virtuais advém do fato de que uma rede virtual especí ca para

um determinado tipo de aplicação pode ser criada sobre uma rede física real, de
forma que a rede virtual possa ser otimizada para aquela aplicação em particular,

sem a necessidade de alterar as características da rede física.

EXEMPLIFICANDO

Imagine que você está desenvolvendo um sistema distribuído de um

serviço de streaming de vídeo que, obviamente, é composto por vários

elementos, como banco de dados, servidor web, servidor de e-mail,

servidor de autenticação, etc. Supondo que o arquiteto de sistemas da

empresa optou por utilizar dois bancos de dados diferentes: um para

armazenar informações gerais, como dados dos assinantes, datas de


vencimento de assinaturas, etc., do tipo SQL; e outro para armazenar os

vídeos em si, com características mais adequadas para otimizar a troca de

informações, do tipo NoSQL. Esses dois bancos de dados não precisam (e,

[Link] 19/27
03/03/2021 lddkls211_red_sis_dis

por questões de segurança, nem devem) saber da existência um do outro.

Para atingir esse objetivo, tipicamente as empresas criam duas redes

virtuais dedicadas, de forma que, além de estarem isoladas entre si, podem
ser otimizadas de acordo com a natureza do banco de dados, prevalecendo

0
a comunicação de segmentos UDP para o banco de dados NoSQL, por

Ver anotações
exemplo, em detrimento aos segmentos TCP.

Para Coulouris et al. (2013), a virtualização de sistemas é uma alternativa

interessante por permitir emular o hardware de uma máquina física, permitindo

que várias máquinas virtuais, cada uma com um sistema operacional, possam
coexistir e se comunicar. Os autores ainda salientam que a principal vantagem da

virtualização de sistemas está no fato de que aplicações já escritas e validadas, as

quais dependem de um sistema operacional em especí co, que necessitam se

comunicar e interagir com outra aplicação em um sistema operacional diferente,

podem assim fazê-lo através da virtualização dos sistemas operacionais, sem a

necessidade de que a aplicação seja reescrita novamente ou recompilada.

REFLITA

Pense na seguinte situação: na empresa que você trabalha, o sistema de

planejamento de recursos, conhecido simplesmente por ERP (do inglês,

Enterprise Resource Planning), utiliza um módulo de controle de estoque


escrito pelo próprio time de desenvolvedores de sua empresa, na

linguagem [Link], que, por sua vez, utiliza funcionalidades especí cas da

plataforma Windows, não sendo 100% compatível com alternativas, como o

.NET Core (recentemente aberto para a comunidade). Para economizar os

gastos e, principalmente, aumentar a disponibilidade do sistema ERP

utilizado pelos colaboradores da empresa, suas liais e seus representantes


comerciais, o Diretor Executivo, ou CEO (do inglês, Chief Executive O cer),

decide migrar para uma solução em nuvem, de algum provedor de cloud

computing de mercado. Por questões nanceiras, o Diretor de TI, ou CIO


(do inglês, Chief Information O cer), opta por utilizar um sistema

operacional GNU/Linux. Como fazer para adaptar o módulo de controle de

estoque? Reescrever o código seria uma opção, mas os desenvolvedores

que zeram esse módulo já não trabalham mais na empresa, e o código é

[Link] 20/27
03/03/2021 lddkls211_red_sis_dis

muito extenso e complexo, o que signi ca que sua reescrita impactaria em

um aumento signi cativo de tempo até que o “novo” ERP esteja disponível.

Qual seria sua solução para esse problema?

0
Se você já utilizou ou leu a respeito de computação em nuvem, deve saber que,

Ver anotações
independentemente do tipo de serviço que você contrata e do provedor desse

serviço, você já estará utilizando a virtualização em algum nível. Esses serviços são
tipicamente categorizados como IaaS (do inglês, Infrastructure as a Service), PaaS

(do inglês, Platform as a Service) e SaaS (do inglês, Software as a Service). Para

entender melhor essa ideia, veja a Figura 3.14.

Figura 3.14 | Serviços em nuvem e níveis de virtualização

Fonte: elaborada pelo autor.

SINCRONIZAÇÃO DE RELÓGIOS
Sistemas formados por múltiplos computadores necessitam sincronizar suas ações

entre si, e uma das maneiras mais utilizadas, dada sua simplicidade e

popularidade, é A sincronização horária, por meio do protocolo conhecido como

Network Time Protocol (NTP) (NTP, 2018). Esse protocolo, por sua vez, utiliza o
protocolo de transporte de dados User Datagram Protocol (UDP), operando na

porta 123. Essencialmente, esse protocolo é utilizado para sincronização do relógio

das máquinas locais (desktops, notebooks, servidores) e demais dispositivos de

rede.

A referência horária é dada por sistemas de altíssima precisão, como os relógios

atômicos (NTP, 2018). Dada a precisão desses sistemas, computadores conectados

a eles pertencem a uma camada de servidores chamada de estrato 1 (os sistemas

de alta precisão em si pertencem a uma camada topológica chamada de estrato 0).

[Link] 21/27
03/03/2021 lddkls211_red_sis_dis

Segundo NTP (2018), como não existem muitos servidores no mundo conectados

diretamente a relógios atômicos, outros servidores são conectados aos de estrato


1, os quais, por sua vez, formam uma segunda camada de servidores de horário,

chamada de estrato 2, e essa hierarquia se estende até os servidores de estrato 15,

0
conforme podemos ver na Figura 3.15. Os computadores dos usuários são

Ver anotações
con gurados para atualizarem a informação horária por meio da rede,

consultando servidores de estratos com valores mais altos.

Figura 3.15 | Sistema de servidores NTP

Fonte: elaborada pelo autor.

Aqui no Brasil, por exemplo, temos o Observatório Nacional (ON), que é o órgão

o cial responsável pela geração, conservação e disseminação da Hora Legal

Brasileira.

Um aspecto muito interessante do protocolo NTP é que ele é projetado para

veri car a latência (atraso, delay) entre a máquina cliente e a máquina servidora, e

a implementação disso é muito simples: essencialmente, de tempos em tempos, a

máquina cliente faz uma consulta a um servidor NTP para veri car em quanto seu

[Link] 22/27
03/03/2021 lddkls211_red_sis_dis

relógio está atrasado (ou adiantado) em relação ao servidor horário de referência,

processando a seguinte operação: (t4  −  t1)  −  (t3  −  t2), em que t1 é a hora,

minuto, segundo e milésimos de segundo (também chamada de timestamp) da

máquina cliente ao enviar uma requisição (através de um pacote, no contexto de

0
redes de computadores) para o servidor NTP; t2 é o timestamp do servidor ao

Ver anotações
receber essa requisição; t3 refere-se ao timestamp em que um pacote de resposta

a essa requisição é enviado ao cliente; e t4 é o timestamp em que o cliente recebe

a resposta do servidor NTP. Esse cálculo, portanto, resulta em quanto o sistema

operacional deverá atrasar (ou adiantar) o relógio da máquina local para que ela

esteja sincronizada com a referência horária em questão, por exemplo, a Hora

Legal Brasileira, em nosso caso. Um exemplo desse processo é ilustrado na Figura

3.16.

Figura 3.16 | Exemplo de sincronização através do protocolo NTP

Fonte: elaborada pelo autor.

Alguns serviços, como os de acesso remoto e de autenticação de usuários, podem

não funcionar adequadamente, caso haja uma diferença muito grande no horário

da máquina cliente (solicitante) em relação à máquina servidora (que roda e

disponibiliza o serviço). Por esse motivo, é muito importante saber como habilitar a

sincronização horária das máquinas utilizando o NTP. A con guração, bem como

suas etapas, varia entre os sistemas operacionais e entre suas versões.

[Link] 23/27
03/03/2021 lddkls211_red_sis_dis

EXEMPLIFICANDO

Um exemplo utilizando um sistema operacional Windows 10 a partir do

procedimento a seguir:

1. Abra o Prompt de Comando (CMD), que pode ser acessado pelo menu

0
iniciar, ou pelo campo de busca, digitando prompt ou cmd.

Ver anotações
2. Na janela do CMD, insira o código a seguir e pressione a tecla “Enter”
(Figura 3.17):

w32tm /config /syncfromflags:manual /manualpeerlist:[Link]

Figura 3.17 | Apontando para o servidor NTP

Fonte: captura de tela do Prompt de Comando do Windows 10.

Na Figura 3.17, podemos observar que, ao nal do comando, aparece a

mensagem “O comando foi concluído com êxito”. Lembre-se: para executar

os comandos, você deve estar como um usuário Administrador ou executar

o CMD como Administrador. Agora que zemos o apontamento para o

servidor NTP que utilizaremos, devemos reiniciar o serviço de data e hora

para aplicar as alterações:

3. Utilize os comandos net stop w32time e net start w32time para parar o

serviço e iniciar, reiniciando-o, conforme podemos observar na Figura

3.18:

Figura 3.18 | Reiniciando o serviço de data e hora

Fonte: captura de tela do Prompt de Comando do Windows 10.

Após isso, forçaremos uma sincronização de data e hora para veri carmos

se está tudo funcionando corretamente.

[Link] 24/27
03/03/2021 lddkls211_red_sis_dis

4. Force uma sincronização por meio do comando w32tm /resync

/rediscover, conforme observamos na Figura 3.19.

Figura 3.19 | Sincronizando data e hora

0
Ver anotações
Fonte: captura de tela do Prompt de Comando do Windows 10.

Por meio da saída da Figura 3.19, podemos observar a mensagem que será

dada, informando que nossa con guração foi feita com sucesso.

Continue rme em seus estudos, pois ainda vem muita coisa interessante e útil
pela frente. Assim nalizamos esta seção. Esperamos que o conhecimento

adquirido seja de importância para seu crescimento pro ssional. Bons estudos e

até a próxima seção!

FAÇA VALER A PENA


Questão 1

Os sistemas distribuídos têm muitas características semelhantes a quaisquer

outros sistemas de rede. Entretanto, uma diferença principal está no fato de que,
nos sistemas distribuídos, a aplicação é replicada (ou distribuída) entre as

diferentes máquinas, comportando-se como se estivesse rodando em uma única

máquina.

Considerando os conceitos inerentes aos sistemas distribuídos, analise as


a rmativas a seguir:

I. As aplicações se comportam como se estivessem rodando em uma única

máquina.

II. Os sistemas distribuídos possuem um elemento central (intermediário),

conhecido como middleware, entre o sistema operacional e a aplicação.

III. Sistemas distribuídos são, necessariamente, sistemas que possuem sistemas

operacionais especiais.

IV. Os sistemas distribuídos são utilizados em aplicações modernas de grande

porte.

[Link] 25/27
03/03/2021 lddkls211_red_sis_dis

V. Uma das características dos sistemas distribuídos é a facilidade para incluir

novas máquinas em um sistema em funcionamento.

É correto o que se a rma em:

0
a. I, apenas.

Ver anotações
b. II e III, apenas.

c. III, apenas.

d. I, II e IV, apenas.

e. I, II, III, IV e V.

Questão 2

Sistemas formados por múltiplos computadores, como os sistemas distribuídos,

necessitam sincronizar suas ações entre si, e uma das maneiras mais utilizadas,
dada sua simplicidade e popularidade, é a sincronização horária, a qual é

necessária para o funcionamento da maioria das aplicações.

Para fazer a sincronização horária entre os computadores que foram os nossos

sistemas distribuídos, utilizamos um protocolo muito popular. Assinale a


alternativa que corresponde ao protocolo utilizado para sincronização horária:

a. Transmission Control Protocol (TCP).

b. Network Time Protocol (NTP).

c. User Datagram Protocol (UDP).

d. HyperText Transfer Protocol (HTTP). 

e. SSH Remote Protocol (SSH). 

Questão 3

Os sistemas distribuídos estão presentes em quase todas as aplicações que

utilizamos atualmente. Além disso, podemos apontar vários tipos de sistemas

distribuídos, como computação em cluster e em grid, que são muito populares

quando falamos em sistemas distribuídos.

Considerando as características da computação em cluster e grid, analise as

a rmativas a seguir:

I. As máquinas que compõem um sistema com computação em grid têm


características homogêneas.

II As máquinas que compõem um sistema com computação em cluster têm


[Link] 26/27
03/03/2021 lddkls211_red_sis_dis

II. As máquinas que compõem um sistema com computação em cluster têm

características heterogêneas.

III. Entre a computação em cluster e grid, não conseguimos apontar diferenças.

IV. Geralmente, o sistema operacional e o hardware das máquinas que compõem

0
um sistema em computação em cluster são equivalentes.

Ver anotações
V. Geralmente, o sistema operacional e o hardware das máquinas que compõem

um sistema em computação em cluster são de fabricantes e con gurações

diferentes.

É correto o que se a rma em:

a. I, apenas.

b. II e IV, apenas.

c. IV, apenas.

d. V, apenas.

e. I e II, apenas.

[Link] 27/27
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

CONCEITOS DE SISTEMAS DISTRIBUÍDOS

0
Caique Silva Pereira

Ver anotações
O QUE É NTP?
NTP é um protocolo projetado para sincronizar os relógios dos computadores em uma rede.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR

Um dos clientes da startup de tecnologia que você trabalha mostrou que a


aplicação desenvolvida por sua empresa não está funcionando corretamente,
porém você notou que isso ocorre pela falta de sincronismo entre os relógios de
duas máquinas do cliente. Para que o cliente consiga fazer o procedimento nas

máquinas que não estão sincronizadas, seu chefe solicitou a criação de um


relatório técnico com os comandos necessários, passo a passo, para que o próprio

cliente sincronize a máquina com as demais.

[Link] 1/3
03/03/2021 lddkls211_red_sis_dis

Para ajudá-lo, ele informou que o sistema operacional da nova máquina é


Windows. A primeira informação relevante para o relatório é o sistema

operacional, pois, dependendo da escolha, o processo de con guração se difere.


Nesse caso, você deixará registrado como con gurar para o sistema Windows.

0
A segunda informação importante no seu relatório é o conceito de servidor NTP,

Ver anotações
portanto, usando suas palavras e ilustrações, inclua esse item no documento.

Agora vem a parte mais desa adora para quem não tem familiaridade com o
mundo da tecnologia: realizar a con guração da data e hora por meio dos

comandos necessários. Para que tudo funcione corretamente, é preciso que o


servidor NTP esteja instalado em todos os equipamentos, inclusive naquele que

fará a con guração. Faça a con guração da seguinte forma:

Abra o Prompt de Comando (CMD).

Na janela do CMD, insira o código a seguir e pressione a tecla “Enter”: w32tm


/config /syncfromflags:manual /manualpeerlist:[Link].

Utilize os comandos net stop w32time e net start w32time para parar o serviço
e iniciar, reiniciando-o.

Force uma sincronização através do comando w32tm /resync /rediscover.

Com isso, zemos o apontamento, reiniciamos o serviço e veri camos se a data e a


hora estão sincronizadas. Que tal impressionar seu cliente e complementar seu

relatório realizando uma pesquisa sobre a con guração para o sistema


operacional Linux?

AVANÇANDO NA PRÁTICA
SINCRONIZANDO RELÓGIO EM MÁQUINAS LINUX
Você está prestando uma consultoria para uma rede de supermercados e já
con gurou os computadores da rede para sincronizar os relógios com o servidor

NTP (NTP, 2018). Todas as máquinas com o sistema operacional Windows estavam

com seus relógios sincronizados. Contudo, o gerente lembrou que havia uma
máquina Linux, na qual estava hospedado o site da empresa em PHP, e gostaria
também de sincronizar o relógio dessa máquina como as outras. Você o informou

que isso era possível e se propôs a criar uma lista de comandos que ele mesmo

poderia realizar para resolver o problema.

RESOLUÇÃO 

[Link] 2/3
03/03/2021 lddkls211_red_sis_dis

Utilizando o a versão GNU/Linux Ubuntu (18.04), devemos, por meio do

Terminal, editar o arquivo de con guração NTP, utilizando o comando:

sudo nano /etc/[Link]

0
Em seguida, inseriremos as informações do servidor [Link] ([Link]) no

Ver anotações
local das informações de pool que estão no arquivo, portanto devemos

acrescentar a seguinte linha:

pool [Link]

Agora, devemos reiniciar o serviço NTP:

sudo service ntp restart

Assim, conseguimos sincronizar as informações de data e hora em uma


máquina Linux.

[Link] 3/3
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

PROCESSOS E COMUNICAÇÃO EM SISTEMAS DISTRIBUÍDOS

0
Marluce Rodrigues Pereira

Ver anotações
O QUE SÃO PROCESSOS E THREADS?
Processo é de nido como um programa em execução, e threads que são uxos ou linhas de
execução dentro de um processo (TANENBAUM; BOS, 2016).

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

PRATICAR PARA APRENDER

Caro aluno, nesta seção, você aprenderá conceitos importantes, os quais


permitirão a construção de sistemas distribuídos e cientes. O avanço da
tecnologia utilizada em processadores tem permitido a geração de processadores
para dispositivos cada vez menores, como smartwatches. Os smartphones
possuem uma grande capacidade de processamento, permitem o acesso à
internet e a execução de jogos e de vários outros aplicativos que demandam uso
de processamento. Os notebooks e desktops também possuem processadores
com múltiplos núcleos de processamento. Os sistemas operacionais são
adaptados e atualizados periodicamente, para adquirir a capacidade de gerenciar

essas alterações nos processadores. E quanto aos sistemas web, você sabe como

[Link] 1/18
03/03/2021 lddkls211_red_sis_dis

devem ser implementados para utilizar essa capacidade de processamento? O


processamento sequencial é su ciente para utilizar mais de um núcleo de

processamento?

0
Esta seção nos leva a re etir sobre como os sistemas distribuídos estão inseridos

neste contexto de avanço das tecnologias e como os sistemas web são

Ver anotações
desenvolvidos. Os conceitos de processos e threads são utilizados para permitir a

implementação de sistemas que melhor utilizem o processamento dos núcleos de


processamento, que podem estar em uma mesma máquina ou em máquinas

remotas. Quando os processos são executados em máquinas remotas, a

comunicação torna-se necessária para realizar a troca de informação entre eles.


Essa comunicação pode ocorrer somente entre dois processados ou entre todos os

processos de um grupo.

Sistemas web, como comércio eletrônico, correio eletrônico, máquinas de busca,


entre outros, são exemplos de sistemas distribuídos. Eles possuem o lado do

cliente (o usuário), que requisita um serviço, e o lado do servidor, que processa a

requisição e devolve a resposta para o cliente. Mas, você sabe como ocorre essa
“conversa” entre cliente e servidor em termos de sistema web? Será que cliente e

servidor estão executando na mesma máquina ou em máquinas diferentes? O


cliente é um processo, e o servidor, outro processo. Eles podem executar em uma

mesma máquina ou em máquinas remotas.

Considerando o exemplo de um sistema de máquina de busca, por exemplo, o

buscador Google, você pode se interessar pela busca na internet por páginas com
ocorrências do termo “pulseira inteligente”. Ao abrir um navegador na sua

máquina (smartphone, notebook, desktop, servidor, entre outros), iniciará a


execução de um processo. Ao digitar o termo e pedir para buscar, esse processo

comunica-se via rede com um processo servidor, que estará em uma máquina
remota e fará a busca de todos os endereços de páginas na internet onde o termo

está ocorrendo. Em seguida, a resposta da busca retornará para o cliente (sua


máquina). Para que todo o processamento seja realizado de forma rápida, várias

máquinas são consultadas, as quais guardam informações e possuem processos


executando para recuperar a informação.

A comunicação entre dois processos (cliente e servidor) via rede ocorre através de

uma interface de software denominada socket, que é uma interface entre a


camada de aplicação e a de transporte. Um processo envia uma mensagem, a qual

é empurrada via socket pela rede e chega ao outro processo, que a lê e realiza

[Link] 2/18
03/03/2021 lddkls211_red_sis_dis

alguma ação. Para saber o caminho a ser percorrido na rede, o socket leva ao

endereço do processo destino. Após a troca de várias mensagens, os sistemas web

conseguem atender o usuário, gerando a informação solicitada, permitindo

concluir uma compra on-line, realizar uma conversa entre duas ou mais pessoas,

0
entre outras ações.

Ver anotações
Você foi contratado como trainee de uma empresa de transportes de mercadorias

que atua em todo o Brasil. Essa empresa possui mais de 200 colaboradores, sendo

100 deles motoristas de caminhão. Foi atribuída a você a tarefa de auxiliar a


equipe de desenvolvimento na elaboração de uma solução utilizando os conceitos

de processos, threads e sockets, a m de implementar um chat (aplicação de

conversação) que permita que os motoristas troquem mensagens de texto. Neste

contexto, elabore um relatório que responda a todas as questões a seguir e, após


isso, crie uma apresentação da solução do problema:

a. Como você implementaria o chat no modelo cliente-servidor?

b. Para qual tipo de dispositivo deve ser implementada a parte da aplicação que
tem o processo cliente? E para o processo servidor?

c. Como poderá ser implementada a comunicação realizada entre os

colaboradores? Pense na linguagem de programação, na biblioteca ou API e

como coordenar a troca das mensagens.

Como o servidor poderá ser implementado para atender a um número maior de

conexões?

O entendimento sobre o funcionamento dos sistemas web, como os processos se

comunicam e como implementar sistemas mais e cientes utilizando esses


conhecimentos é de fundamental importância na formação do analista de

sistemas. Portanto, vamos nos aprofundar um pouco mais nesses conceitos. Bons

estudos!

CONCEITO-CHAVE

Caro aluno, os processadores atuais possuem mais de um núcleo de


processamento e estão presentes em smartphones, notebooks, desktops,

servidores, pulseiras inteligentes, entre outros. A utilização dos núcleos de

processamento depende de como o sistema operacional escalona os programas

para utilizá-los. Desta forma, a elaboração dos algoritmos precisa ser adaptada de
forma que o sistema operacional consiga escalonar parte das computações para

[Link] 3/18
03/03/2021 lddkls211_red_sis_dis

mais de um núcleo de processamento ao mesmo tempo e use os recursos de

forma mais e ciente. Portanto, os conceitos de processos e threads são

importantes para permitir a descrição de algoritmos que funcionem de forma


e ciente.

0
Ver anotações
PROCESSOS E THREADS
Em sistemas operacionais, um conceito muito importante é o de processo, o qual é

de nido como um programa em execução, e threads que são uxos ou linhas de

execução dentro de um processo (TANENBAUM; BOS, 2016). Como exemplo de


processo, podemos considerar um editor de texto executando em um desktop ou

um aplicativo de calendário executado em um smartphone.

Um processo possui um espaço de endereçamento de memória que armazena o

código executável, os dados referentes ao programa, a pilha de execução, o valor


do contador de programa, o valor do apontador de pilha, os valores dos demais

registradores do hardware e outros recursos, como informações sobre processos

lhos, arquivos abertos, alarmes pendentes, tratadores de sinais, entre outras

informações necessárias para a execução do programa.

Muitas vezes, a construção de software usando um único processo pode não ser

e ciente na utilização dos núcleos de processamento disponíveis nos

processadores atuais, pois apenas um núcleo de processamento é utilizado. Por

isso, existe a necessidade de construir aplicações paralelas e distribuídas, que


permitam a execução simultânea de processos e/ou threads, deixando o software

com execução mais rápida. O ato de gerenciar e executar múltiplas computações

ao mesmo tempo, seja por troca de contexto no uso do núcleo de processamento

ou pelo uso de diferentes núcleos de processamento é denominado concorrência.

Por exemplo, uma máquina com processador contendo quatro núcleos de


processamento executando dez programas diferentes necessita que o sistema
operacional escalone fatias de tempo para que todos os programas consigam

utilizar os núcleos de processamento por meio de revezamento. Estes programas


estarão executando de forma concorrente, dando ao usuário a impressão de que

cada programa está utilizando os recursos do computador de forma dedicada.


Quando há execução de computações simultaneamente em diferentes núcleos de
processamento, tem-se paralelismo. Assim, processos e threads podem ser

[Link] 4/18
03/03/2021 lddkls211_red_sis_dis

executados de forma concorrente e paralela. Por exemplo, um navegador com


duas abas abertas, cada aba sendo um thread executado em um núcleo de

processamento diferente, representa uma situação de execução paralela.

0
Um processo pode possuir um ou mais threads, permitindo que um programa
execute mais de um trecho de código simultaneamente. Cada thread é um uxo de

Ver anotações
controle sequencial isolado dentro de um programa capaz de utilizar CPU (Central

Processing Unit). É composto de identi cador (ID) de thread, contador de


programa, conjunto de registradores e uma pilha de execução. Cada thread pode
compartilhar com outros threads pertencentes ao mesmo processo a sua seção de

código, seção de dados e outros recursos do sistema operacional, arquivos abertos


e sinais.

A Figura 3.20 ilustra cinco possíveis situações em que existem processos e threads
sendo executados em um notebook.

Figura 3.20 | (A) Notebook executando um processo com um thread; (B) Notebook executando quatro
processos com um thread cada; (C) Notebook executando um processo com quatro threads; (D)
Notebook executando quatro processos com dois threads por processo; (E) Sistema distribuído com
dois notebooks executando vários processos e threads

Fonte: elaborada pelo autor.

Na imagem (A), há um processo com um único thread executado. O conjunto de

instruções desse processo é executado de forma sequencial. Por exemplo, um


programa que calcula a soma das notas inseridas pelo professor.

[Link] 5/18
03/03/2021 lddkls211_red_sis_dis

A imagem (B) apresenta quatro processos, cada um com um único thread, e os


processos podem executar simultaneamente em núcleos de processamento, de

acordo com escalonamento do sistema operacional.

0
Já na imagem (C), há um processo com quatro threads, e cada thread possui seu

uxo de controle, que pode ser executado concorrentemente a outros threads,

Ver anotações
pois há um único núcleo de processamento. Por exemplo, um programa que

realiza a soma de um conjunto de dados, distribuindo os dados entre cada thread


para que haja a soma parcial simultânea da porção de dados recebido e, por m,
realiza a soma total.

Vários processos com vários threads por processo são ilustrados na imagem (D),

gerando a execução de vários uxos de controle ao mesmo tempo e executando


em núcleos de processamento diferentes. Por exemplo, vários programas, como
navegador e editor de texto, , executando em um computador com quatro núcleos

de processamento.

Por último, na imagem (E), tem-se um sistema distribuído composto por máquinas
interligadas via um switch. Cada máquina pode ter mais de um processo
executando mais de um thread. Os sistemas distribuídos são construídos sobre

sistemas operacionais e utilizam processos e threads para realizar a execução de


um programa. A comunicação entre os processos e/ou threads precisa ser
realizada de forma especial, usando bibliotecas especí cas. Na paralelização de um

programa utilizando threads que executam em uma mesma máquina, podem ser
utilizadas bibliotecas, como OpenMP (OPENMP, 2021) ou Pthreads (Posix Threads)

(BARNEY, 2021). Os programas podem ser desenvolvidos para serem executados


utilizando mais de um processo e em máquinas remotas. A comunicação entre os
processos deve utilizar bibliotecas de troca de mensagens, como Message Passing

Interface (MPI) (OPENMPI, 2021) e de sockets, assunto que será abordado


posteriormente.

Você sabia que os programas que coloca para executar no seu notebook, no seu
desktop ou mesmo no seu smartphone são processos? Mas, como pode-se criar

um novo processo e nalizar (término de um processo)?

A criação de processos pode ocorrer em uma das seguintes situações:

Pelo usuário, para iniciar a execução de um programa (via linha de comando ou

duplo clique no mouse).

[Link] 6/18
03/03/2021 lddkls211_red_sis_dis

Por funções especí cas que independem do usuário (chamadas de serviços


(daemons) ou executando em background sem intervenção do usuário), por
exemplo, na recepção e no envio de e-mails, serviços de impressão, etc.

0
Usando chamadas de sistema dentro de um programa.

Ver anotações
Nos sistemas operacionais UNIX e Unix-like (como o Linux), os processos são

criados utilizando a chamada de sistema fork(). No sistema operacional Windows, a


criação ocorre pela chamada CreateProcess() (TANENBAUM; STEEN, 2007).

O término de processos pode ocorrer de algumas formas. Uma delas é quando o


programa termina sua execução pela chamada exit no sistema operacional Unix-

like, e ExitProcess no sistema operacional Windows; por algum erro ocorrido que
não permitiu que o processo pudesse ser nalizado ou por um erro fatal; causado
por algum erro no programa (bug), como divisão por 0 (zero), referência à memória

inexistente ou não pertencente ao processo e execução de uma instrução ilegal


(TANENBAUM; STEEN, 2007).

Dentro de um processo, poderá existir tarefas que podem ser executadas de


forma concorrente utilizando melhor os núcleos de processamento. A execução

dessas tarefas pode ser realizada utilizando threads, que são escalonadas pelo
sistema operacional para utilizarem os núcleos de processamento.

A decisão de quando criar threads dentro de um processo depende de quais


características o problema que está sendo resolvido possui, ou seja, suas

subtarefas. Assim, podem ser criadas quando há subtarefas que possuem


potencial de carem bloqueadas por um longo tempo; usam muitos ciclos de CPU;
devem responder a eventos assíncronos; tenham importância maior ou menor do

que outras tarefas e podem ser executadas em paralelo com outras tarefas.

EXEMPLIFICANDO

A criação de processo nas linguagens C/C++ é realizada no Linux com a

chamada de sistema fork, utilizando duas bibliotecas: sys/types.h e


unistd.h. Essa chamada de sistema deve ser inserida no código
implementado pelo usuário, que, ao ser compilado e executado, gera uma

chamada ao sistema operacional, o qual cria um processo lho com um


número identi cador único. O processo que gerou a execução do programa

é denominado processo pai, e o processo criado com a chamada fork() é


denominado processo lho.

[Link] 7/18
03/03/2021 lddkls211_red_sis_dis

No momento da criação, o processo lho é uma cópia do pai e possui os


mesmos atributos dele (variáveis, descritores de arquivos, dados, etc.). Após
a criação do processo lho, ele é executado, e o que acontece em um

processo não ocorre no outro, são processos distintos agora, cada um

0
seguindo seu rumo, tornando-se possível mudar o valor de uma variável

Ver anotações
em um e isso não alterará o valor desta variável no outro processo.

A função fork() retorna um número identi cador do processo (PID – Process

Identi cation). No trecho de código executado pelo processo lho, PID tem
valor igual a 0 (zero). Dentro do processo pai, PID tem valor igual ao

identi cador do processo lho, retornado pelo sistema operacional. A


função fork() retorna valor menor do que 0, caso ocorra algum erro na
criação do processo.

A função getpid() retorna o valor do identi cador do processo em execução.

A seguir, apresenta-se um código, no qual é criado um processo lho com a

chamada fork():

1 #include <iostream>
2 #include <sys/types.h>

3 #include <unistd.h>
4 using namespace std;

5
6 int main(){

7 pid_t pid;
8 pid = fork();

9 if (pid < 0){


10 cerr << "Erro ao criar processo" << endl;
11 exit(1);

12 }
13 if (pid ==0){

14 // Código executado somente no processo filho


15 cout << "Identificador do processo filho: " << getpid()

<< endl;
16 } else {

17 // Código executado somente no processo pai


18 cout << "Identificador do processo pai: " << getpid() <<

endl;
19 }

20 return 0;

[Link] 8/18
03/03/2021 lddkls211_red_sis_dis

21 }

PROCESSOS CLIENTE-SERVIDOR

0
O modelo cliente-servidor é o modelo de computação distribuída em que um

Ver anotações
programa é dividido em duas partes: servidor e cliente (COULOURIS et al., 2013.;

KUROSE; ROSS, 2013). O servidor é executado em um processo, e o cliente, em

outro processo diferente, que pode estar na mesma máquina ou em uma máquina

remota. O servidor tem acesso direto ao recurso de hardware ou software que o


cliente quer usar. Na maioria dos casos, o cliente está localizado em diferentes

máquinas clientes. 

Tipicamente, há um relacionamento muitos-para-um entre o servidor e os clientes,

isto é, há, geralmente, um servidor atendendo às requisições de muitos clientes. O


servidor é o mediador do acesso a grandes bases de dados, a um recurso de

hardware caro ou a uma coleção importante de aplicações. O cliente faz

requisições para ter acesso a dados e obter o resultado de um cálculo e outros


tipos de processamento. A Figura 3.21 ilustra o funcionamento de um sistema

cliente-servidor, no qual há um conjunto de processos cliente enviando requisições

para o processo servidor, que é o responsável por realizar as computações


necessárias e responder aos clientes.

Supondo que o servidor implementa a soma de dois valores, um cliente envia dois

valores, e o servidor realiza a soma e retorna o valor resultante.

Figura 3.21 | Modelo cliente-servidor

Fonte: elaborada pela autora.

[Link] 9/18
03/03/2021 lddkls211_red_sis_dis

Outro exemplo é uma máquina de busca no modelo cliente-servidor, que é usada

para localizar informação na internet ou em intranets corporativas e

organizacionais. Neste caso, o processo cliente é executado no navegador para


obter a palavra-chave ou frase sobre o tema que o usuário está interessado. O

0
processo cliente envia a requisição para o servidor. O processo servidor, por sua

Ver anotações
vez, realiza uma ampla busca pela palavra-chave ou frase do usuário, pois este tem
acesso direto à informação ou a outros servidores que têm acesso à informação.

Posteriormente, o servidor retorna as informações ao cliente. Embora os

processos cliente e servidor sejam programas separados em computadores


diferentes, eles trabalham em uma única aplicação. Quando o processo pode

funcionar como cliente e servidor ao mesmo tempo, temos um sistema Peer-to-

Peer (P2P).

ASSIMILE

No contexto de comunicação entre um par de processos, o processo que

inicia a comunicação é o cliente, e o processo que espera pela requisição é


o servidor. Na web, o navegador é o processo cliente, e o servidor web é o

processo servidor (KUROSE; ROSS, 2013).

COMUNICAÇÃO ENTRE PROCESSOS E EM GRUPO


Após a criação dos processos, eles são executados de forma independente e
possuem regiões de memória independentes. Entretanto, há aplicações que

necessitam trocar dados (comunicação) entre processos ou entre threads. Para

haver comunicação entre processos, é necessária a utilização de mecanismos

especí cos. O sistema operacional implementa “canais” de comunicação entre


processos em um mesmo computador (tais canais podem ser implícitos ou

explícitos) ou em computadores diferentes.

A Figura 3.22 ilustra a comunicação entre dois processos, que estão em uma

mesma máquina, gerenciados pelo mesmo sistema operacional. A comunicação


entre processos através de chamadas de sistema pode ocorrer com o uso de pipes

ou alocação de memória compartilhada.

Figura 3.22 | Canal de comunicação entre dois processos

[Link] 10/18
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pela autora.

A Figura 3.23 ilustra o processo 1 na máquina 1 se comunicando com o processo 2


na máquina 2 através de chamadas a funções de uma biblioteca de passagem de

mensagens, como MPI.

Figura 3.23 | Processos em máquinas diferentes se comunicando por passagem de mensagens

Fonte: elaborada pela autora.

O modelo de passagem de mensagens entre processos possui a operação básica

send-receive. Outras operações de comunicação, como broadcast, reduction,


scatter e gather, são derivadas da básica.

A operação send-receive ocorre somente entre dois processos (Figura 3.24). Um

processo envia o dado e o outro processo recebe o dado.

Figura 3.24 | Operação send-receive

Fonte: elaborada pela autora.

[Link] 11/18
03/03/2021 lddkls211_red_sis_dis

A operação de broadcast é uma operação entre um grupo de processos

conhecidos. Consiste no envio de um dado presente em um processo para os


demais processos do mesmo grupo.

0
Figura 3.25 | Operação broadcast

Ver anotações
Fonte: elaborada pela autora.

Na Figura 3.25, o processo 1 envia o dado para os demais processos do mesmo

grupo de processos. Ao nal da comunicação, todos os processos do grupo

conhecem o dado.

Para implementar aplicações que utilizem a troca de mensagens entre processos,


existem bibliotecas, como sockets, sobre as quais trataremos posteriormente, e

MPI (Message Passing Interface) (OPENMPI, 2021; TANENBAUM; STEEN, 2007).

MPI é um padrão de comunicação que permite a troca de mensagens entre

processos pertencentes a um grupo de processos criado no início da execução do


programa. Cada processo recebe um identi cador único dentro deste grupo,

facilitando a comunicação entre pares de processos ou grupo de processos. É

possível identi car qual é o processo emitente e o receptor da mensagem. Dentro


de um mesmo processo, é possível criar threads, que podem se comunicar através

de troca de mensagens ou acesso à memória compartilhada.

Na Figura 3.26, há quatro threads executando em um mesmo processo. Esses

threads compartilham memória e trocam informação através do acesso à memória


compartilhada. Para gerenciar o acesso à memória compartilhada, são utilizadas

bibliotecas, como OpenMP (OPENMP, 2021) e PosixThreads (BARNEY, 2021).

Figura 3.26 | Threads de um mesmo processo acessando a memória compartilhada

[Link] 12/18
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pela autora.

CONCEITOS DE SOCKETS
A padronização da interface da camada de transporte permitiu que os protocolos
de troca de mensagens sejam utilizados pelos programadores no desenvolvimento

de aplicações que envolvam mais de uma máquina. Uma mensagem enviada de

um processo para outro deve passar pela rede, e uma forma de realizar a
implementação dessa comunicação é utilizando a interface de software

denominada socket. É uma interface entre a camada de aplicação e o protocolo da

camada de transporte.

“Socket é um terminal de comunicação para o qual uma aplicação pode

escrever dados que devem ser enviados pela rede subjacente e do qual

pode ler dados que chegam.” (TANENBAUM; STEEN, 2007, p. 85).

Figura 3.27 | Comunicação entre dois processos via socket

Fonte: elaborada pela autora.

[Link] 13/18
03/03/2021 lddkls211_red_sis_dis

A Figura 3.27 ilustra a comunicação utilizando socket entre dois processos de

máquinas diferentes. A seta vermelha indica a origem e o destino da mensagem.


Para que o Processo 2 receba uma mensagem do Processo 1, é necessário que a

mensagem trafegue pela rede. Como o Processo 1 é o processo emissor, é

0
necessário que, quando a mensagem for enviada por ele, contenha o dado, o

Ver anotações
endereço e o identi cador do processo receptor da mensagem. Na camada de

rede da internet, o endereço é fornecido pelo IP (Internet Protocol), que identi ca a

máquina destino de forma única. O identi cador do processo receptor é um

número de porta. Aplicações mais utilizadas possuem um número de porta


padrão, como é o caso do servidor web, que é identi cado pela porta 80, e o

servidor de e-mail, pela porta 25.

A interface socket pode utilizar os protocolos de transporte TCP (Transmission

Control Protocol) ou UDP (User Datagrama Protocol). Sockets utilizando TCP/IP


possuem as primitivas sintetizadas no Quadro 3.1.

Quadro 3.1 | Primitivas da interface socket para TCP/IP

Primitiva Signi cado

socket Criar um novo terminal de comunicação.

bind Anexar um endereço local a um socket.

listen Anunciar a disposição de aceitar conexões.

accept Bloquear o chamador até chegar a uma requisição de comunicação.

connect Tentar estabelecer uma conexão ativamente.

send Enviar alguns dados pela conexão.

receive Receber alguns dados pela conexão.

close Encerrar a conexão.

Fonte: adaptado de Tanenbaum e Steen (2007, p. 85).

Uma chamada socket retorna um descritor de arquivo que será utilizado em


outras chamadas.

A chamada bind designa um endereço para o socket no servidor.

[Link] 14/18
03/03/2021 lddkls211_red_sis_dis

A chamada listen aloca espaço para a la de chamadas recebidas ao mesmo

tempo.

Accept é utilizada para bloquear a espera por uma conexão de entrada.

0
Connect bloqueia o responsável pela chamada e inicia o processo de conexão.

Ver anotações
Send e receive são usadas para transmitir e receber dados em uma conexão
full-duplex.

Quando ambos os lados executarem close, a conexão será encerrada.

A implementação de programas no modelo cliente-servidor envolve a

implementação de um processo cliente e um processo servidor, que utilizam


sockets para comunicação. Os serviços de ssh (secure shell) e ftp ( le transfer
protocol) são exemplos de implementações que utilizam sockets. O programa ssh
é usado para realizar conexão entre duas máquinas e possui um processo cliente
denominado ssh e um processo servidor denominado sshd (ssh deamon). O

programa ftp é usado para transferência de arquivo entre duas máquinas e possui

um processo cliente denominado ftp e um processo servidor denominado ftpd (ftp


deamon). 

Os sockets TCP são orientados à conexão e têm um canal exclusivo de

comunicação entre cliente e servidor. Uma aplicação que faz transações bancárias

é um exemplo de aplicação que pode usar sockets TCP.

Várias linguagens de programação, como Java, PHP e Python, fornecem socket ao


desenvolvedor API, para facilitar o desenvolvimento das aplicações.

REFLITA

Atualmente, existem muitos jogos que você pode jogar com seus amigos,
por exemplo, Minecraft, League of Legends e Among Us. Você já pesquisou

como são implementados esses jogos? Como um jogador é capaz de

visualizar os movimentos do outro jogador? É necessária a criação de


processos e threads? Há comunicação entre processos ou

compartilhamento de dados entre threads? 

PESQUISE MAIS 

O conteúdo desta seção pode ser complementado pela leitura de livros

sobre sistemas distribuídos e redes de computadores disponíveis na

Biblioteca Virtual, indicados a seguir:

[Link] 15/18
03/03/2021 lddkls211_red_sis_dis

KUROSE, J. F.; ROSS, K. W. Redes de computadores e a internet: uma

abordagem top-down. 6. ed. São Paulo: Pearson, 2013.

TANENBAUM, A. S.; STEEN, M. V. Sistemas Distribuídos: princípios e

0
paradigmas. 2. ed. São Paulo: Pearson Prentice Hall, 2007.

Ver anotações
TANENBAUM, A. S.; WETHERALL, D. Redes de Computadores. 5. ed. São
Paulo: Pearson Prentice Hall, 2011.

Nesta seção, você aprendeu sobre a utilização de processos e threads no contexto

de sistemas distribuídos, como ocorre a comunicação entre processos, processos

cliente e servidor e sockets. Agora, você é capaz de entender melhor as aplicações

existentes, identi car quais são cliente-servidor e aplicar estes conceitos em

aplicações em desenvolvimento de forma a ter melhor desempenho. Bons

estudos!

FAÇA VALER A PENA


Questão 1

De uma forma geral, os sistemas operacionais implementam mecanismos para

garantir a independência entre processos, com suporte de hardware para proteção

de memória. No entanto, quando há necessidade de troca de informações entre

processos, existem mecanismos apropriados para isso.

Assinale a alternativa correta:

a. A comunicação entre processos em computadores diferentes pode ser feita utilizando sockets.

b. A comunicação entre processos em um mesmo computador pode ser feita através de acesso direto à
memória, sem uso de bibliotecas especí cas.

c. A comunicação entre threads de um mesmo processo não pode ocorrer, pois um thread interrompe a
execução do outro.

d. A comunicação entre threads em máquinas diferentes pode ocorrer através do uso de uma biblioteca
especí ca para troca de mensagens entre threads.

e. A troca de informação entre processos pode gerar resultados incorretos, pois altera a região de memória
do processo remoto.

Questão 2

O processamento digital de imagens demanda grande capacidade de


processamento. Por isso, os softwares precisam ser implementados de forma que

haja distribuição do processamento em vários núcleos de processamento em uma

[Link] 16/18
03/03/2021 lddkls211_red_sis_dis

mesma máquina ou em máquinas remotas em uma mesma rede de

computadores.

Assinale a alternativa correta:

0
a. Para que o processamento ocorra em uma máquina remota, é necessário que seja criado um thread
remoto e esse se comunique com os demais por memória compartilhada.

Ver anotações
b. A distribuição do processamento em núcleos de processamento de uma mesma máquina pode ser feita
pela criação de threads que se comunicam por memória compartilhada.

c. Para que o processamento ocorra em uma mesma máquina, é necessário que seja utilizado somente um
processo e um único núcleo de processamento.

d. A distribuição do processamento entre máquinas remotas é feita pelo sistema operacional.

e. A distribuição do processamento entre máquinas remotas pode gerar resultados incorretos, pois altera a
região de memória do processo remoto.

Questão 3

Mapas são amplamente utilizados em várias aplicações, e o compartilhamento de

coordenada/localização em tempo real é de fundamental importância. A

atualização da coordenada pode ser realizada usando socket.

Analise as a rmativas sobre sockets a seguir:

I. Socket é uma interface entre a camada física e a de rede.

II. Cada ponto nal na interface socket para TCP/IP é identi cado por uma tupla

contendo porta TCP e endereço IP.

III. Através da conexão entre sockets é possível conectar pontos nais e fazer
operações de E/S.

IV. Sockets não podem ser utilizados para realizar a comunicação entre processos

cliente e servidor.

É correto o que se a rma em:

a. I e IV, apenas.

b. II e IV, apenas.

c. I e II, apenas.

d. III e IV, apenas.

e. II e III, apenas.

[Link] 17/18
03/03/2021 lddkls211_red_sis_dis

REFERÊNCIAS

BARNEY, B. POSIX Threads Programming. Computing, 2021. Disponível em:

[Link] Acesso em: 13 fev. 2021.

0
COULOURIS, G.; DOLLIMORE, J.; KINDBERG, T.; BLAIR, G. Sistemas Distribuídos:
conceitos e projetos. Porto Alegre, RS: Bookman, 2013.

Ver anotações
KUROSE, J. F.; ROSS, K. W. Redes de computadores e a internet: uma abordagem

top-down. 6. ed. São Paulo: Pearson, 2013.

OPENMP. Disponível em: [Link] Acesso em: 13 fev. 2021.

OPENMPI. Disponível em: [Link] Acesso em: 13 fev. 2021.

TANENBAUM, A. S.; BOS, H. Modern operating systems. Pearson, 2015.

TANENBAUM, A. S.; STEEN, M. V. Sistemas Distribuídos: princípios e paradigmas.


2. ed. São Paulo: Pearson Prentice Hall, 2007.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc semper venenatis

libero a fringilla. Nam blandit pellentesque neque, non vulputate dolor dapibus

vitae. Nulla fermentum cursus sem, ullamcorper dapibus leo mollis vulputate.
Quisque scelerisque, ex sit amet posuere commodo, leo dui tempus dui, nec

facilisis est dolor non lorem. Mauris non tincidunt lorem, non pulvinar turpis.

Aliquam pretium, metus et lobortis suscipit, tellus nunc tempus arcu, sit amet

hendrerit mi dolor et enim.

[Link] 18/18
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

PROCESSOS E COMUNICAÇÃO EM SISTEMAS DISTRIBUÍDOS

0
Marluce Rodrigues Pereira

Ver anotações
MODELO DE COMUNICAÇÃO ENTRE PROCESSOS CLIENTE-SERVIDOR
A comunicação entre dois processos (cliente e servidor) via rede ocorre através de uma
interface de software denominada socket, que é uma interface entre a camada de aplicação e a
de transporte.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR

a. A implementação do chat com mensagens de texto pode ser realizada


utilizando sockets e um modelo de comunicação entre processos cliente-
servidor. No contexto desta atividade, o cliente e o servidor poderiam ter as
seguintes características:
Servidor: é o processo que centraliza todas as mensagens (requisições) de

clientes recebidas via socket. Tem como responsabilidade o envio de


mensagem com resposta a cada requisição recebida. Quando uma

requisição chega ao servidor, é criado um thread para atender àquela


requisição.

[Link] 1/3
03/03/2021 lddkls211_red_sis_dis

Cliente: o usuário cria uma instância do processo cliente que faz uma
requisição ao servidor via socket. Na requisição do cliente, são informados

o endereço do servidor e a respectiva porta.

0
O servidor do chat utiliza sockets e aguarda por conexões de clientes. A cada

cliente que requisita uma conexão, é criado um novo thread para controle dele.

Ver anotações
O cliente é formado por um processo principal, o qual habilita o console para envio

de mensagens, porém há um thread que aguarda por mensagens que venham do


servidor, as quais vieram de outros clientes.

b. Para qual tipo de dispositivo deve ser implementada a parte da aplicação que
tem o processo cliente? E para o processo servidor?

A parte cliente da aplicação deve ser implementada para smartphone com acesso
via navegador ou aplicativo instalado localmente, já que permite acesso mais fácil

por motoristas. Para haver conexão com o servidor, o smartphone deverá ter
acesso à internet por rede de dados celulares ou rede sem o.

A parte servidor da aplicação deverá ser implementada para uma máquina que
tenha maior capacidade de processamento e que deverá executar em alta

disponibilidade (24 horas por dia, 7 dias por semana).

c. Como poderá ser implementada a comunicação realizada entre os

colaboradores? Pense na linguagem de programação, na biblioteca ou API e


como coordenar a troca das mensagens.

A comunicação poderá ser implementada utilizando API de sockets da linguagem

adotada pela empresa para desenvolvimento, como C++, Python ou Java. A troca
de mensagens é realizada passando pelo gerenciamento do servidor que coordena

a ordem das mensagens.

d. Como o servidor poderá ser implementado para atender a um número maior

de conexões?

O servidor poderá ser implementado usando vários threads de execução para

atender às requisições dos clientes.

AVANÇANDO NA PRÁTICA

IMPLEMENTANDO O JOGO LIG4, DA ESTRELA


O jogo possui quatro passos:

[Link] 2/3
03/03/2021 lddkls211_red_sis_dis

1. Separar as chas pretas e brancas, sendo 21 de cada, e sortear o jogador que

iniciará a partida. O jogador que começa a partida ca com as chas brancas.

2. Os jogadores intercalam a colocação de suas chas no quadro (tabuleiro com

0
seis linhas e sete colunas).

Ver anotações
3. O objetivo de cada jogador é en leirar quatro chas de sua cor, seja na

horizontal, na vertical ou na diagonal.

4. O vencedor é o primeiro jogador a en leirar quatro chas.

Descreva como este jogo pode ser implementado para dois jogadores usando um

modelo cliente-servidor, no qual os jogadores são os clientes e o servidor recebe as

requisições dos clientes (jogadas), atualiza o tabuleiro e sinaliza quando há

vencedor.

RESOLUÇÃO 

A solução para este problema envolve um modelo cliente-servidor, no qual os

jogadores são os clientes. Uma jogada é de nida no cliente de acordo com o


estado do tabuleiro e as jogadas possíveis, obedecendo às regras do jogo. Ao

fazer uma jogada, uma requisição é enviada para o servidor, que atualiza o

tabuleiro e envia um retorno para o cliente.

O servidor é responsável por sortear qual jogador começa o jogo e atender às


requisições. Quando um cliente envia requisição (jogada) para o servidor, este

veri ca se a jogada é válida e se há um ganhador. Se houver um ganhador, o

servidor deverá avisar qual é o vencedor e encerrar o jogo. Se não houver um

ganhador naquela jogada, o servidor deverá atualizar o tabuleiro e enviar para


o cliente, como resposta à requisição. A comunicação entre processos cliente e

servidor poderá ser realizada utilizando uma API de sockets da linguagem de

programação escolhida.

[Link] 3/3
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

ASPECTOS DE PROJETO DOS SISTEMAS DISTRIBUÍDOS

0
Caique Silva Pereira

Ver anotações
QUAIS SÃO OS ASPECTOS MAIS RELEVANTES DE UM PROJETO DE IMPLANTAÇÃO DE
UM SISTEMA DISTRIBUÍDO?
Em um projeto de implantação de um sistema distribuído é necessário de nir alguns objetivos
como: abertura, concorrência, escalabilidade, heterogeneidade, segurança, tolerância a falhas e
transparência, alguns deles merecem uma atenção especial.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

PRATICAR PARA APRENDER

Caro estudante, nesta seção, exploraremos com maior detalhamento alguns dos
principais aspectos de projeto em sistemas distribuídos, nomeadamente:
segurança, escalabilidade, resiliência e heterogeneidade, que são diferenciais em
relação aos sistemas puramente de rede, mas que não sejam sistemas

distribuídos. 

Você já pensou em como os serviços de streaming de vídeo mais populares da


atualidade conseguem suportar uma quantidade enorme de acessos simultâneos?

Ainda, quando não há tanta demanda assim, será que empresas de grande porte

mantêm ligados centenas de servidores mesmo que não estejam em uso? Já


pensou no consumo de energia dessas máquinas ociosas? É exatamente nesta

[Link] 1/15
03/03/2021 lddkls211_red_sis_dis

seção que você notará que entender sobre escalabilidade, neste caso, ajuda as
empresas responsáveis por esses serviços a maximizarem seu faturamento,

evitando uso desnecessário de recursos, sem comprometer a usabilidade e a


consequente satisfação de seus clientes. Curioso para descobrir como? Então,

0
daremos seguimento aos nossos estudos.

Ver anotações
Você esteve no papel de um arquiteto de sistemas de uma empresa que estava

desenvolvendo um sistema distribuído para controle de manutenção preventiva de


veículos e identi cou os principais objetivos que esse sistema deve atingir. Agora, é

o momento de avançar no projeto, pesquisando e apresentando frameworks

atuais, utilizados por grandes empresas no segmento de serviços em TI, e garantir


que o sistema esteja apto a ser comercializado. Prepare um relatório e uma

apresentação com exemplos e descrições desses frameworks. É sempre bom unir


a teoria estudada com as práticas do mercado de trabalho, para que sua formação

seja o mais completa possível e, desta forma, você esteja preparado para pleitear
as melhores oportunidades. 

CONCEITO-CHAVE

Os sistemas distribuídos, normalmente, possuem alguns objetivos para atender


determinados requisitos. Alguns são considerados desa os importantes que os

pro ssionais da área devem considerar. Segundo Tanenbaum e Steen (2008), esses
objetivos são:

Abertura.

Concorrência.

Escalabilidade.

Heterogeneidade.

Segurança.

Tolerância a falhas.

Transparência.

Entretanto, eles devem ser analisados mais como desa os a serem atingidos, uma
vez que nem sempre o sistema distribuído conseguirá atingir todos de maneira

integral.

[Link] 2/15
03/03/2021 lddkls211_red_sis_dis

A seguir, descreveremos a que se refere cada uma dessas metas na visão de

Tanenbaum e Steen (2008), embora os itens Segurança, Escalabilidade, Tolerância

a Falhas e Heterogeneidade mereçam uma atenção especial.

0
ABERTURA

Ver anotações
No contexto de sistemas distribuídos, refere-se a quanto o sistema é modularizado

ou, em outras palavras, quanto é fácil integrar e alterar tecnologias e frameworks

sem que o sistema seja comprometido. Você já deve ter ouvido falar em micro

serviço, não é verdade? Esse nome é a maneira atual (hype) de dizer que o sistema

possui uma grande abertura. Importante observar que, independentemente do


que o termo "abertura" possa passar, é uma coisa positiva em sistemas

distribuídos. É importante ter em mente esse conceito, pois, à primeira vista, um

sistema mais "aberto" parece ser uma coisa negativa, no sentido de estar mais

vulnerável a falhas e, na verdade, em sistemas distribuídos, isso não é verdade.


Segurança não tem relação nenhuma com essa abertura, mas isso é um assunto a

ser detalhado em uma próxima oportunidade. Por exemplo, se o sistema utiliza

tecnologias não-proprietárias, dizemos que a abertura desse tal sistema é maior.

CONCORRÊNCIA
Refere-se à capacidade de o sistema poder ser acessado e utilizado de maneira
simultânea, concorrente (ao mesmo tempo), por vários usuários. Aqui, cabe

novamente a ressalva de que, no contexto de sistemas distribuídos, o termo

concorrência não tem uma conotação negativa (como ocorre, por exemplo, no

comércio), apenas refere-se a um sistema que dá suporte a acessos simultâneos.


Por exemplo, várias pessoas podem acessar um website de comércio eletrônico,

certo? Pois bem, isso é um acesso concorrente.

ESCALABILIDADE
Escalabilidade é um termo comum em redes de computadores e está relacionado

à capacidade de o sistema poder ser escalável, ou seja, ampliado ou reduzido para


suportar, por exemplo, uma maior quantidade de acessos simultâneos ou realizar

uma tarefa mais rapidamente (ao ampliarmos a capacidade de processamento

desse sistema). Perceba como algumas metas podem estar inter-relacionadas nos

sistemas distribuídos, como é o caso da escalabilidade e da concorrência. Por

exemplo, quando uma empresa de games necessita aumentar a quantidade de

[Link] 3/15
03/03/2021 lddkls211_red_sis_dis

servidores de um determinado jogo on-line para possibilitar uma maior

quantidade de jogadores em uma partida multiplayer, ela está escalando o sistema

(nesse exemplo, aumentando a escala dele).

0
EXEMPLIFICANDO

Ver anotações
Imagine um site de comércio eletrônico no período de promoções, por
exemplo, no dia da Black Friday. O sistema deverá ser escalável para

permitir picos de acesso simultâneo, dessa forma, uma das maneiras é

aumentar a quantidade de nós/servidores, para que não inviabilize o

negócio, deixando o sistema indisponível.

Segundo Tanenbaum e Steen (2008), um sistema cujo desempenho aumenta com


o acréscimo de hardware e software, proporcionalmente à capacidade acrescida, é

chamado escalável. 

É importante notar, entretanto, que um sistema dito escalável permite que se

aumente ou diminua a quantidade de recursos. Você deve estar se perguntando:


por que eu diminuiria a capacidade do meu sistema?

EXEMPLIFICANDO

Imagine a seguinte situação: você criou uma aplicação web que distribui

conteúdo em vídeo para preparar estudantes para fazerem a prova do

ENEM. Você roda essa aplicação, de maneira replicada, em um conjunto de

servidores em nuvem de algum provedor de cloud computing conhecido do


mercado, digamos, com dez nós. Apesar de a ideia ser excelente, você nota

que a quantidade de usuários que utiliza sua plataforma cai drasticamente

entre os meses de novembro e junho, uma vez que os estudantes,

normalmente, começam a se preparar para esse exame – que ocorre


anualmente entre outubro e novembro – a partir de julho, quando estão de

férias. Supondo que você paga para esse provedor de cloud computing R$
150,00 mensais, para que este disponibilize os dez nós de maneira
contínua. Não seria interessante que, nos meses de menor demanda, você

diminuísse a quantidade de servidores pela metade, por exemplo, e


pagasse a quantia de R$ 75,00 mensais nesse período? Nesse cenário, sua

economia seria de R$ 600,00, que você poderia investir em outros projetos.


Esse é um exemplo típico de escalabilidade “para baixo”.

[Link] 4/15
03/03/2021 lddkls211_red_sis_dis

Dentre os termos relacionados ao escalonamento, temos dois muito utilizados:


escalonamento horizontal e escalonamento vertical.

ASSIMILE

0
O escalonamento horizontal possibilita o aumento de máquinas, tais

Ver anotações
como servidores, assim há uma divisão da carga de trabalho entre eles, não

sobrecarregando um servidor especí co. No sistema e-commerce, em que


temos os picos de acessos dos clientes simultaneamente, esse tipo de
escalonamento é muito utilizado em sistemas distribuídos e em nuvem.

Já o escalonamento vertical permite aumentar recursos de

processamento, como CPU e memória em máquinas existentes. Quando se


deseja maior desempenho, ou na ocorrência de falhas de uma CPU, essa
pode ser uma abordagem importante.

Dois aspectos importantes a serem levados em consideração em relação à


escalabilidade são em termos geográ cos e administrativos.

Escalabilidade em termos geográ cos refere-se ao sistema, o qual, apesar de se


apresentar como único para o usuário, está rodando em várias réplicas, em dois

ou mais data centers geogra camente distintos. Podemos, por exemplo, utilizar
um determinado provedor de cloud computing que possua data centers no estado

de São Paulo, no Brasil, e no estado do Arizona, nos EUA. A Figura 3.28 ilustra tal
cenário.

Figura 3.28 | Exemplo de escalabilidade geográ ca

[Link] 5/15
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

O benefício desse tipo de con guração é fornecer uma melhor experiência, em


termos de conectividade e latência (atrasos na rede), para os usuários. Aqueles que

estão mais próximos do Hemisfério Norte podem acessar a aplicação através dos
data centers nos EUA, enquanto os usuários do Hemisfério Sul podem acessar a
aplicação através dos data centers no Brasil. Outra vantagem é que, na ocorrência

de um desastre, por exemplo, um furacão passar pelo Arizona, que comprometa o


data center, todos os usuários poderão acessá-lo de outra localidade, incluindo os

usuários mais próximos ao data center atingido (ainda que a usabilidade, do ponto
de vista desses usuários, seja ligeiramente comprometida, devido a uma maior
distância desse data center).

Escalabilidade em termos administrativos, refere-se ao escopo administrativo,

que é afetado pela escalabilidade geográ ca e é um conceito bastante simples de


ser compreendido, embora muitas vezes ignorado. Imagine que, no cenário da
Figura 3.28, os links de comunicação do lado dos EUA sejam fornecidos por

provedores de internet daquela região, ao passo que os links de comunicação no


lado do Brasil sejam fornecidos por provedores de internet daqui. Caso o link no
lado dos EUA que indisponível, não adiantará entrar em contato com o provedor

de internet daqui do Brasil, pois é uma empresa diferente da que fornece o serviço
nos EUA, administrativamente falando. Portanto, o escopo administrativo foi

[Link] 6/15
03/03/2021 lddkls211_red_sis_dis

inerentemente ampliado, o que signi ca que o responsável pelo sistema


distribuído terá mais trabalho para administrá-lo, incluindo, por exemplo, a
necessidade de abrir um chamado de suporte técnico em outro idioma.

0
EXEMPLIFICANDO

Ver anotações
A escalabilidade pode ser alterada, isto é, aumentada ou diminuída, de
maneira automatizada, sem a intervenção do desenvolvedor, por meio de

ferramentas, como Chef e Ansible. Podemos exempli car a função de


ambas as ferramentas em um cenário de um portal de notícias, que tem,
durante a madrugada, baixa demanda de acessos. As ferramentas exercem

o papel de diminuir automaticamente os recursos utilizados. Em outro


exemplo, quando sai uma notícia muito esperada e os acessos ao portal

sobem drasticamente, as ferramentas exercem o papel de aumentar os


recursos disponibilizados para garantir o bom funcionamento.

HETEROGENEIDADE 
O termo heterogeneidade vem de heterogêneo, ou seja, algo desigual, que

apresenta estrutura, função ou distribuição diferente. Portanto, aplicando isso ao


conceito de computação, quando temos heterogeneidade, estamos falando de um

sistema que contenha em sua composição máquinas (nós) de sistemas


operacionais, recursos (hardware) e até mesmo fabricantes diferentes. Esse é um
dos aspectos mais frequentes de um sistema que utiliza arquitetura distribuída.

Geralmente, o sistema é composto por máquinas de diversas características


diferentes que se comunicam para manter o funcionamento.

Dessa forma, o sistema distribuído é capaz de funcionar em uma arquitetura


heterogênea, tanto em termos de hardware quanto de software. Em termos de

hardware, signi ca que o sistema distribuído consegue operar em nós com


características de hardware diferentes, por exemplo, entre máquinas com
diferentes valores de memória principal (RAM), memória de armazenamento (HD,

SSD, etc.) e capacidade de processamento (clock dos processadores). Em termos


de software, signi ca que o sistema distribuído suporta, por exemplo, diferentes

sistemas operacionais, com alguns nós utilizando MS-Windows, enquanto outros


utilizam alguma distribuição GNU/Linux. Isso pode parecer difícil de ser alcançado,
mas existe um elemento que facilita nosso trabalho, o middleware, o qual, como o

nome sugere, é uma camada de software que ca situada entre a sua aplicação e o
sistema operacional. Não se preocupe se esse termo e seu papel não estiverem

[Link] 7/15
03/03/2021 lddkls211_red_sis_dis

claros ainda, pois detalharemos esse assunto em uma aula posterior. Por exemplo,
quando um website roda em máquinas com diferentes sistemas operacionais ou
características de hardware (por exemplo, uma máquina do tipo servidor que

possui mais memória RAM que outra máquina dentro do mesmo sistema

0
distribuído), dizemos que se trata de um sistema distribuído heterogêneo.

Ver anotações
Os protocolos de redes são fundamentais para que essa comunicação entre
máquinas diferentes ocorra, porém, na maioria das aplicações distribuídas,

precisamos também de um middleware.

O middleware pode ser considerado um conjunto de padrões e

funcionalidades que atua como uma camada central entre a nossa


plataforma, o sistema operacional e as nossas aplicações. Essa camada
central permite que em um sistema distribuído rodem diferentes aplicações

em diferentes plataformas e que todas elas consigam se comunicar

adequadamente

Existem vários frameworks utilizados para implementação de plataformas de

middleware, e os mais conhecidos são:

CORBA: framework de implementação de middleware baseado na linguagem

de programação C++.

.NET Remoting: framework de implementação de middleware, baseado no


ambiente de programação .NET, que pode utilizar várias linguagens diferentes,

por exemplo, Visual Basic, C#, entre outras.

[Link]: framework de implementação de middleware, baseado no

ambiente de programação .NET, que pode utilizar várias linguagens diferentes,


como Visual Basic, C#, entre outras.

 Java RMI: framework de implementação de middleware, baseado na

linguagem de programação JAVA.

 JAX-WS: framework de implementação de middleware, baseado na linguagem

de programação JAVA.

SEGURANÇA

[Link] 8/15
03/03/2021 lddkls211_red_sis_dis

Sem dúvida, um dos aspectos mais importantes no projeto de sistemas

distribuídos é a segurança. Tipicamente, seja qual for a aplicação desenvolvida,

sendo um sistema distribuído, funcionará em uma plataforma com várias


máquinas, chamadas de nós, que replicam tal aplicação e, conforme já sabemos, a

0
comunicação entre essas máquinas sempre ocorre por meio de redes de

Ver anotações
comunicação, tipicamente cabeadas. 

É muito importante sempre considerar aspectos de segurança no projeto de


sistemas distribuídos. Segundo Coulouris et al. (2013), em termos de sistemas

distribuídos, podemos pensar em dois níveis: o da con dencialidade e o da

integridade dos dados. A con dencialidade dos dados refere-se ao acesso ao dado
por indivíduos ou sistemas não autorizados, e a integridade dos dados refere-se,

além do acesso, à modi cação do dado. 

Conforme os autores, os pontos de atenção em relação à segurança no projeto de

sistemas distribuídos são:

Portas são expostas: sistemas distribuídos são construídos com base em um


conjunto de processos que oferecem serviços e compartilham informação. As

portas de comunicação pelas quais esses serviços se comunicam são,

intrinsicamente, abertas (para que clientes possam acessar tais serviços) e,


dessa forma, um hacker pode enviar mensagem a qualquer uma delas.

Redes de computadores não são seguras: remetentes de mensagens podem

ser falsi cados e endereços IP podem estar duplicados, de forma que alguém

malicioso possa receber as mesmas mensagens de um destinatário válido.

A validade das chaves criptográ cas deve ser limitada: quanto mais tempo
uma mesma chave estiver válida e ativa, maiores são as chances de estar

comprometida, por ter maiores chances de ser conhecida (e explorada) por

uma quantidade maior de pessoas e sistemas.

Algoritmos de criptogra a podem ter falhas: na atualidade, a melhor prática


é divulgar publicamente os algoritmos de criptogra a para que a comunidade e

as entidades especialistas possam validá-lo e sugerir melhorias, de forma que a

privacidade esteja garantida pela chave criptográ ca, e não pela


inacessibilidade ao algoritmo utilizado.

Hackers podem ter acesso a recursos poderosos: o custo dos recursos

computacionais tem diminuído cada vez mais, de forma que máquinas

poderosas estão acessíveis para a maioria da população. Assim, sempre

[Link] 9/15
03/03/2021 lddkls211_red_sis_dis

considere que ataques podem ocorrer de inúmeras fontes e podem explorar

vulnerabilidades, utilizando, inclusive, ataques do tipo força-bruta (que tentam

descobrir senhas por tentativa e erro, com simples “chutes”).

0
TOLERÂNCIA A FALHAS 

Ver anotações
Tolerância a falhas refere-se à capacidade de o sistema distribuído se

autorrecuperar na ocorrência de uma ou mais falhas. As falhas em um sistema

computacional podem ocorrer em vários momentos ao longo do uso de um


sistema, por uma série de razões, as quais serão detalhadas mais adiante.

Aproveitando, você sabia que, no nosso idioma, existe uma palavra para expressar

essa ideia de “capacidade do sistema distribuído se autorrecuperar na ocorrência


de uma ou mais falhas”? Isso mesmo, apenas uma palavra: resiliência. Então, da

próxima vez que quiser passar essa ideia de maneira mais concisa, utilize-a.

Quando falamos de aspectos no projeto de sistemas distribuídos, temos que falar

de resiliência de processos, pois é um dos principais objetivos a serem atingidos


em uma aplicação distribuída. A resiliência de processos está relacionada com o

sistema ter uma comunicação con ável entre as camadas de cliente e servidor. Sua

ideia básica é de que os processos da nossa aplicação sejam replicados em grupos,


isso faz com que o sistema tenha uma proteção contra falhas relacionadas a

processos. 

Para conseguir criar projetos tolerantes a falhas, temos que ter em nossos

sistemas uma detecção de falhas, assim como conseguir mascarar todas as falhas
apresentadas e a replicação de nosso sistema, para que ela seja imperceptível. Só

podemos atingir estas características de acordo com questões de projetos, e a

mais importante, neste caso, é veri car qual grupo de processos que a nossa

aplicação deverá conter. Para isso, entenderemos o que são os grupos simples e os
grupos hierárquicos e como esses processos são associados a eles.

Quando falamos de resiliência de processos, organizamos em grupos os processos

que são considerados idênticos. Portanto, quando uma mensagem é enviada a um

grupo de nosso sistema, a ideia é que todos os processos membros desse grupo
recebam a mensagem. Se ocorrer uma falha em um dos processos no tratamento

da mensagem, outro processo desse grupo deve tratar a mensagem no lugar do

processo com falha.

[Link] 10/15
03/03/2021 lddkls211_red_sis_dis

Em um sistema distribuído, temos grupos dinâmicos, ou seja, os processos podem

se mover entre os grupos que são criados. Um processo de um cadastro de

usuário do site XYZ pode enviar uma mensagem para a realização do cadastro a
um grupo de servidores sem precisar quantos existem e quem são eles.

0
Ver anotações
GRUPO SIMPLES E GRUPO HIERÁRQUICO

Quando falamos de grupos simples, todos os processos são iguais e todas as

decisões são tomadas entre todos os processos, ou seja, de forma coletiva. A


grande vantagem deste tipo de grupo é que não há um ponto único para falha.

Mesmo que ocorra falha ou caia algum processo, o grupo continua mantendo o

serviço em funcionamento. Portanto, a execução do sistema não é centralizada em

um só ponto.

A desvantagem que encontramos nesse tipo de grupo é que a tomada de decisão

tende a demorar mais, porque cada decisão deve ser priorizada pelos processos,

tendo uma votação antes da tomada de decisão.

Já os grupos hierárquicos, como o nome mesmo já diz, são baseados em uma


hierarquia, logo existem processos considerados mais importantes e que

controlam toda execução. Nesses grupos, temos um processo chamado

“coordenador”, e os demais chamamos de “operários”. Sempre que chega uma

nova requisição no sistema, ela é enviada ao processo coordenador, que decide o


melhor operário para executá-la.

A grande vantagem desse tipo de grupo é que as decisões são centralizadas,

portanto temos mais agilidade na tomada de decisão, o que gera um retorno mais

rápido. Já a grande desvantagem apontada é que, caso ocorra uma falha no


processo coordenador, o serviço todo para.

Podemos observar, na Figura 3.29, a estrutura dos grupos apresentados e como

seus processos se comunicam.

Figura 3.29 | Estrutura dos grupos e comunicação dos processos

Fonte: elaborada pelo autor.

[Link] 11/15
03/03/2021 lddkls211_red_sis_dis

Podemos observar que, na comunicação simples, os processos se comunicam

entre si e decidem em conjunto qual é o processo mais adequado para executar


determinada ação durante o funcionamento de um sistema. Já na comunicação

hierárquica, os processos estão divididos entre “coordenador” e “operários”, em

0
que o processo coordenador de nirá o processo operário mais adequado para

Ver anotações
executar determinada ação durante o funcionamento de um sistema.

TRANSPARÊNCIA
Por m, transparência refere-se, novamente, ao ponto de vista do usuário, o quão

transparente o sistema é, ou seja, quanto o cliente “desconhece” do

funcionamento interno do sistema, e isso é uma característica positiva: quanto


menos o usuário necessitar saber da implementação e do funcionamento do

sistema, ou seja, quanto mais transparente o sistema for, melhor para o usuário.

Na Tabela 3.1, podemos observar os tipos de transparência, segundo Tanenbaum

e Steen (2008):

Tabela 3.1 | Tipos de transparência

Tipo Descrição

Acesso Oculta diferenças na representação de dados e no modo de


acesso.

Localização O local do recurso é desconhecido.

Migração e O recurso pode ser movido, inclusive enquanto está em uso.


relocação

Replicação Múltiplas instâncias de um recurso podem ser utilizadas para

aumentar a con abilidade e o desempenho.

Concorrência Vários usuários podem compartilhar o mesmo recurso.

Falha A falha e a recuperação de um recurso não afetam o sistema.

Fonte: elaborada pelo autor.

Com o conteúdo estudado nesta seção, você está apto a entender os aspectos
mais relevantes de um projeto de implantação de um sistema distribuído.

Percebeu como é importante de nir esses objetivos em um projeto de sistemas

[Link] 12/15
03/03/2021 lddkls211_red_sis_dis

distribuídos? Agora, continuaremos os estudos e seguiremos em frente com mais

conceitos de sistemas distribuídos.

FAÇA A VALER A PENA

0
Questão 1

Ver anotações
Quando planejamos implantar um sistema distribuído, há vários fatores

importantes que devem ser levados em consideração. Podemos chamá-los de


aspectos de projeto, e os principais são: segurança, escalabilidade, resiliência e

heterogeneidade.

A capacidade de máquinas com diferentes sistemas operacionais se comunicarem

na execução de um sistema se relaciona ao aspecto de:

a. Segurança.

b.  Escalabilidade.

c.  Resiliência.

d.  Heterogeneidade.

e.  Transparência.

Questão 2

Um dos aspectos mais importantes no projeto de sistemas distribuídos é a

segurança. Tipicamente, seja qual for a aplicação desenvolvida, sendo um sistema

distribuído, esta funcionará em uma plataforma com várias máquinas, chamadas


de nós, que replicam tal aplicação. Essa plataforma tem a comunicação entre as

máquinas feita através de redes de comunicação.

Sabendo que a segurança é um aspecto muito importante, analise as a rmativas a

seguir com pontos de atenção em relação à segurança do sistema:

I. Máquinas de diferentes sistemas operacionais se comunicam.

II. Portas abertas.

III. Algoritmos de criptogra a podem ter falhas.

IV. Camada de middleware.

V. A validade das chaves criptográ cas. 

Em relação aos pontos de atenção relacionados à segurança, são corretas as

[Link] 13/15
03/03/2021 lddkls211_red_sis_dis

a rmativas:

a.  I e IV, apenas.

b.  I e II, apenas.

0
c.  II, III e V, apenas.

Ver anotações
d.  II e V, apenas.

e.  I e III, apenas. 

Questão 3

O termo escalabilidade trata de outro aspecto do projeto de sistemas distribuídos.

Um sistema, cujo desempenho aumenta com o acréscimo de hardware e software,


proporcionalmente à capacidade acrescida, é chamado escalável. Esse termo está

relacionado diretamente ao desempenho da aplicação e ao consumo de seus

recursos.

Sobre o aspecto do projeto de escalabilidade em um sistema distribuído, analise as

a rmativas a seguir e marque V para as verdadeiras ou F para as falsas:

(   ) Um sistema escalável é aquele que está disponível para acesso 100% do tempo.

(   ) Espera-se que um sistema distribuído escalável possa aumentar ou diminuir a

quantidade de seus recursos. 

(   ) Escalabilidade em termos geográ cos refere-se ao sistema que está rodando


em várias réplicas, em dois ou mais data centers geogra camente distintos.

(   ) O termo escalabilidade está relacionado à comunicação de máquinas e aos

processos na execução do sistema.

Assinale a alternativa que representa a sequência correta:

a.  V – V – V – F.

b.  F – V – V – V.

c.  V – F – V – F.

d.  F – F – V – F.

e.  F – V – V – F. 

REFERÊNCIAS

[Link]. Disponível em: [Link] Acesso em: 18 fev. 2021.

[Link] 14/15
03/03/2021 lddkls211_red_sis_dis

COULOURIS, G.; DOLLIMORE, J.; KINDBERG, T.; BLAIR, G. Sistemas Distribuídos:

conceitos e projeto. 5. ed. Porto Alegre: Bookman, 2013.

CORBA. Disponível em: [Link] Acesso em: 18 fev. 2021.

0
JAVA RMI. Disponível em: [Link] Acesso em: 18 fev. 2021.

Ver anotações
JAX-WS. Disponível em: [Link] Acesso em: 18 fev. 2021.

TANENBAUM, A. S.; STEEN, M. V. Sistemas Distribuídos: princípios e paradigmas. 2

ed. São Paulo: Pearson, 2008.

[Link] 15/15
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

ASPECTOS DE PROJETO DOS SISTEMAS DISTRIBUÍDOS

0
Caique Silva Pereira

Ver anotações
EXEMPLOS E DESCRIÇÕES DE FRAMEWORKS
Pesquisa, comparação e apresentação de frameworks atuais que facilitem atingir escalabilidade
em sistemas distribuídos.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR

Você continua trabalhando no sistema de controle de manutenção preventiva para


várias frotas de veículos de grandes transportadoras no estado de Minas Gerais.
Seu papel nesse projeto é orientar toda sua equipe para utilização de sistemas
distribuídos, para que, ao nal, o produto seja robusto e funcional.

Agora é hora de avançar no projeto, pesquisando e apresentando frameworks


atuais, utilizados por grandes empresas no segmento de serviços em TI, para que o

sistema esteja apto a ser comercializado. Prepare um relatório e uma

apresentação com exemplos e descrições desses frameworks.

[Link] 1/2
03/03/2021 lddkls211_red_sis_dis

É muito importante que a equipe enxergue também as di culdades em se


implementar um sistema distribuído. Assim, para que isso aconteça, identi que, de

acordo com o material apresentado nesta seção, três desa os que podem surgir
ao implementá-lo. Pense também em como você pode justi car esta resposta, ou

0
seja: por que esses seriam desa os para que o sistema distribuído atinja seus

Ver anotações
objetivos? Além disso, você deve apresentar soluções para a escalabilidade do seu
sistema distribuído, para isso, faça um relatório comparando três frameworks

atuais que facilitam atingir a escalabilidade desejada em sistemas distribuídos e


aponte a melhor opção para esse projeto. Ao nal, crie uma apresentação para sua

equipe, com os três desa os escolhidos e a comparação dos três frameworks


pesquisados. 

Para solucionar essa tarefa, utilize os conteúdos apresentados nesta seção.


Sugerimos basear-se nos aspectos de projetos: segurança, escalabilidade,

resiliência e heterogeneidade. Para enriquecer sua apresentação, fale sobre os


desa os encontrados para atingir êxito nos aspectos de projetos escolhidos.

Para a pesquisa e comparação dos frameworks, você pode consultar as seguintes


documentações:

Java RMI.

CORBA.

[Link].

JAX-WS.

Após a comparação dos frameworks, você deve escolher o que melhor auxilia a
escalabilidade do projeto, não se esquecendo de justi car sua escolha para

impressionar a equipe. Você pode comparar as linguagens de programação

utilizadas por cada um dos frameworks, veri cando sua popularidade, o conteúdo
disponível para aprendizado na internet, os requisitos mínimos para execução e

desenvolvimento na linguagem, entre outros aspectos. Você também pode


comparar os recursos necessários para execução de cada um dos frameworks,

descobrindo, assim, qual é mais viável para este tipo de sistema.

[Link] 2/2
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

VIRTUALIZAÇÃO

0
Caique Silva Pereira

Ver anotações
O QUE É VIRTUALIZAÇÃO?
A virtualização é a representação dos dispositivos físicos por meio de entidades de software os
quais são chamados de máquinas virtuais. Ela fornece uma versão virtual de tecnologias
essenciais como: redes, armazenamento, hardware, entre outros.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

CONVITE AO ESTUDO

Caro aluno, seja bem-vindo a mais uma unidade. Agora que já conhecemos os
papéis que as diferentes máquinas podem assumir, vamos veri car, na prática,
como instalar e con gurar máquinas com diferentes propósitos. Você já parou
para pensar em quantos sistemas operacionais diferentes existem? Será que há
um único sistema que pode ser instalado em uma máquina do tipo cliente e em
uma do tipo servidor? Além disso, qual é a melhor forma de testar e se familiarizar
com esses diferentes sistemas operacionais?

Nesta unidade, vamos entender conceitos muito importantes e como aplicá-los de


maneira prática, para que você consiga responder às questões anteriores e muitas

outras. Talvez você já tenha ouvido falar de máquinas virtuais, mas será que já

[Link] 1/13
03/03/2021 lddkls211_red_sis_dis

ouviu sobre conteinerização? Ainda que sim, de maneira prática, como você pode
conteinerizar uma aplicação web, por exemplo?

Se respondeu não a alguma dessas perguntas, não se preocupe! A ideia aqui é

0
mostrar que, caso você estude com a nco, pesquise e faça todas as atividades

sugeridas, aprenderá a implementar e con gurar contêineres para sistemas

Ver anotações
distribuídos.

Uma importante empresa do ramo de tecnologia que presta serviços a


praticamente todos os bancos corporativos está com uma vaga aberta de trainee

DevOp e, por isso, deu início a um processo seletivo. Interessado em ingressar


nessa empresa, você está disputando a vaga e, na última etapa do processo

seletivo, será preciso pôr seus conhecimentos à prova. Você será capaz de atingir
todos os objetivos conforme a necessidade da empresa?

Na primeira seção desta unidade, você entenderá quais são os princípios e as


melhores práticas relacionadas à ideia de virtualização. Já na segunda seção, será

apresentado ao – relativamente novo – conceito de contêineres e entenderá o


motivo de muitas empresas de grande porte, que possuem sistemas distribuídos

altamente escaláveis, estarem migrando cada vez mais para esse tipo de solução.
Por m, você terá a oportunidade de colocar em prática conceitos importantes

sobre conteinerização, por meio do uso de uma ferramenta largamente utilizada

no mercado de trabalho.

Chegou a hora de prosseguir com os estudos dos sistemas distribuídos, o que vai
lhe proporcionar conhecimentos e oportunidades no mercado de trabalho.

Lembre-se de que, quanto mais você se dedicar, mais poderá aproveitar os


ensinamentos transmitidos neste material.

CONCEITO-CHAVE

Caro estudante, você já deve ter ouvido falar de (talvez até utilizado) softwares
como o VirtualBox e o VMWare. Nessa seção vamos entender, conceitualmente e

de maneira prática, a importância desse tipo de tecnologia e quais problemas ela


veio solucionar. Saiba que sua importância vai muito além do simples fato de
testar ou “dar uma olhada” na nova versão de um sistema operacional. Na

situação-problema à qual você será exposto, terá que criar uma máquina virtual

com uma con guração previamente de nida, de forma que será necessário

entender os principais parâmetros que devem ser ajustados para tal. Caso não

saiba como fazer isso, a máquina nem passará da fase inicial de boot do sistema.

[Link] 2/13
03/03/2021 lddkls211_red_sis_dis

Você está participando de um processo seletivo para uma oportunidade muito

interessante e bem remunerada na área de DevOps da maior empresa nacional de

portal de notícias, cujos clientes que consomem o conteúdo disponibilizado por

essa empresa são bancos, em sua maioria. Na entrevista, além da Gerente de RH,

0
também está participando o Coordenador de Infraestrutura, que será o seu futuro

Ver anotações
gestor.

Inicialmente, o Coordenador pede para você criar uma máquina virtual e testá-la:

neste contexto, crie uma máquina virtual com o software VirtualBox. Esse tipo de
procedimento é rotineiro nesta empresa que necessita de máquinas para

execução de diversos serviços de tecnologia.

Utilize o seu conhecimento atrelado ao conteúdo da seção para solucionar a


situação-problema apresentada acima.

PRATICAR PARA APRENDER

A virtualização se torna cada vez mais popular com o passar dos anos e é

amplamente utilizada nos ambientes corporativos e, em alguns casos, até

domesticamente. O grande objetivo da virtualização é fornecer uma versão virtual


de tecnologias essenciais em computação, por exemplo, redes, armazenamento,

hardware, entre outros. Além disso podemos também, virtualizar aplicações.

Segundo Dawson e Wolf (2011, [s.p.]), a “virtualização desacopla as tarefas e a

parte funcional das aplicações da infraestrutura física necessária para seu

funcionamento, permitindo uma exibilidade e agilidade sem precedentes em


termos de armazenamento, servidores e desktops”.

ASSIMILE

Atualmente, é possível fornecer uma versão virtual de tecnologias

essenciais em computação. Por exemplo, para um site permanecer no ar

por 24 horas, não precisamos ter um servidor web/aplicação físico

mantendo seu funcionamento, podemos ter um servidor virtual ou


máquina virtual, como são chamadas, tipo de servidor que substitui ou

emula o funcionamento de um servidor físico.

Quando virtualizamos recurso de hardware, como memória RAM, processador,

placas de vídeo, placa de rede, entre outros, temos uma máquina virtual que

funciona com os recursos de hardware em formato virtual. Sabendo disso,

podemos instalar um sistema operacional sobre outro sistema, ou seja, sobre

[Link] 3/13
03/03/2021 lddkls211_red_sis_dis

nossa máquina física podemos ter várias máquinas virtuais. Esses recursos de

hardware são representados por softwares na virtualização. A mesma coisa

também pode ser feita com a rede: é possível criar uma infraestrutura lógica de
rede sobre uma rede física. Nela podemos personalizar e con gurar de formas

0
diferentes da rede física, conforme nossas necessidades. Também é possível ter

Ver anotações
em nossa residência uma rede física “A” composta pelas redes lógicas “B” e “C”.

Quando utilizamos virtualização, representamos os dispositivos físicos por meio de


entidades de software, assim, nossos servidores e workstations se tornam o que

chamamos de máquinas virtuais, ou VMs. A parte de armazenamento de dados é

conhecida como Software De ned Storage (SDS), ou armazenamento de nido por

software. Já a parte de rede é chamada de Software De ned Networking (SDN), ou


rede de nida por software. Unindo todos esses elementos com um conjunto de

máquinas virtuais, temos um Software De ned Data Center (SDDC), ou data center

de nido por software.

Portanto, as máquinas virtuais são abstrações de hardware de

computadores que permitem que uma única máquina física aja como se

fosse várias máquinas diferentes. Assim, podemos ter vários sistemas


operacionais distintos rodando em uma só máquina.

A virtualização contém três componentes principais, conforme o Portal Redhat

(2018):

Hospedeiro: como chamamos a máquina física em que existem máquinas

virtuais.

Convidado: como são chamadas as máquinas virtuais ou computadores

virtualizados.

Camada de virtualização: o software que permite criar sistemas convidados

sobre sistemas hospedeiros.

Podemos observar na Figura 4.1 a interação dos três componentes principais da


virtualização e exemplos de como são compostos:

Figura 4.1 | Elementos de máquinas virtuais

[Link] 4/13
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

Para o usuário nal, não faz diferença se a máquina acessada é física ou virtual,
pois as duas funcionam da mesma forma, o que acaba sendo imperceptível. Nesse

cenário de virtualização podemos ter em um mesmo servidor uma máquina virtual


com o sistema operacional Windows Server, uma máquina virtual com Linux e uma
máquina com FreeBSD, por exemplo. Os principais fatores que levam à utilização

de virtualização são:

Diminuição de espaço físico: muitas vezes, o ambiente corporativo não tem


espaço físico para suportar servidores, com todos requisitos necessários, como
a refrigeração adequada para eles.

Rapidez na implantação: máquinas virtuais são implantadas mais

rapidamente do que máquinas físicas.

Redução de custos administrativos: os custos administrativos para se manter

uma máquina física são bem maiores do que os custos referentes às máquinas
virtuais.

Economia de energia elétrica: como podemos ter várias máquinas virtuais


funcionando sobre apenas uma máquina física, consequentemente,

economizaremos energia, tendo menos máquinas alimentadas.

Aproveitamento da capacidade de computação e performance: é possível


aproveitar melhor os recursos de um servidor físico dividindo-os em várias
máquinas virtuais.

[Link] 5/13
03/03/2021 lddkls211_red_sis_dis

VIRTUALBOX
Existem vários softwares nos quais é possível criar e administrar máquinas virtuais,
e os mais populares são VirtualBox, VM Ware e Hyper-V Microsoft. Nesta seção
vamos utilizar o VirtualBox©, fabricado pela Oracle®. Esse software tem uma

0
licença do tipo GNU General Public License (Licença Pública Geral GNU), GNU GPL

Ver anotações
ou simplesmente GPL. A licença GPL permite a utilização e o estudo do software de

maneira livre para quaisquer ns.

O download do VirtualBox pode ser realizado no site do VirtualBox (VIRTUALBOX,

2018), escolhendo a versão adequada para o seu sistema operacional. No mesmo


site há uma extensa documentação que nos auxilia com todo processo de
manipulação da ferramenta, assim como informações sobre a tecnologia de

virtualização (ORACLE, 2018).

Após o download do instalador, devemos selecionar a opção “Next”. Agora


devemos escolher quais elementos da instalação queremos e qual será o local de
instalação. No nosso caso deixaremos tudo conforme o padrão. Lembrando que

você deve ter 175MB livres em seu HD para a instalação do VirtualBox. Após essas
con gurações devemos selecionar a opção “Next”, conforme a Figura 4.2:

Figura 4.2 | Instalando o VirtualBox

Fonte: captura de tela do VirtualBox.

Agora devemos escolher opções referentes a atalhos do VirtualBox e selecionar

“Next” novamente. Feito isso, é necessário selecionar “Install” para iniciar nossa
instalação. Agora devemos aguardar alguns minutos, o tempo de instalação varia

de máquina para máquina. Ao término, é preciso deixar marcada a opção que abre
o Virtualbox após a instalação e selecionar “Finish”. Podemos observar na Figura

[Link] 6/13
03/03/2021 lddkls211_red_sis_dis

4.3 a interface do Oracle VM VirtualBox, em que temos várias opções. A opção


“Novo” é a que permite criar nossas máquinas virtuais. Com elas são habilitadas as
opções de “Con gurações” sobre a máquina selecionada: “Descartar” e “Iniciar”.

0
Figura 4.3 | Tela inicial do Virtualbox

Ver anotações
Fonte: captura de tela do Virtualbox.

Dentro da opção “Novo” de nimos todas as con gurações de nossa máquina

virtual, como seu nome, sistema operacional, quantidade de memória RAM,


capacidade de disco rígido, processamento, entre outras.

O PAPEL DA VIRTUALIZAÇÃO EM SISTEMAS DISTRIBUÍDOS


Dois tipos de virtualização são muito úteis no contexto de sistemas distribuídos,
conforme Coulouris et al. (2013):

Virtualização de redes;

Virtualização de sistemas.

Esses autores observam, muito adequadamente, que a vantagem da criação e da

utilização de redes virtuais advém do fato de que uma rede virtual especí ca para
um determinado tipo de aplicação pode ser criada sobre uma rede física real, de

forma que a virtual possa ser otimizada para aquela aplicação em particular, sem a
necessidade de alterar as características da rede física.

EXEMPLIFICANDO

Imagine que você está desenvolvendo um sistema distribuído de um

serviço de streaming de vídeo que, obviamente, é composto por vários


elementos, como banco de dados, servidor web, servidor de e-mail,

servidor de autenticação etc. Suponha que o arquiteto de sistemas da


empresa tenha optado por utilizar dois bancos de dados diferentes, um

[Link] 7/13
03/03/2021 lddkls211_red_sis_dis

para armazenar informações gerais, como dados dos assinantes, datas de


vencimento de assinaturas etc., do tipo SQL, e outro para armazenar os
vídeos em si, com características mais adequadas para otimizar a troca de

informações, do tipo NoSQL. Esses dois bancos de dados não precisam (e,

0
por questões de segurança, nem devem) saber da existência um do outro.

Ver anotações
Para atingir esse objetivo, tipicamente as empresas criam duas redes
virtuais dedicadas, de forma que, além de estarem isoladas entre si, podem
ser otimizadas de acordo com a natureza do banco de dados, prevalecendo

a comunicação de segmentos UDP para o banco de dados NoSQL, por


exemplo, em detrimento dos segmentos TCP.

Para Coulouris et al. (2013), a virtualização de sistemas é uma alternativa


interessante por permitir emular o hardware de uma máquina física, permitindo,
assim, que várias máquinas virtuais, cada uma com um sistema operacional,
coexistam e se comuniquem. Os autores ainda salientam que a principal vantagem

da virtualização de sistemas está no fato de que as aplicações já escritas e

validadas, que dependem de um sistema operacional em especí co e que


necessitam se comunicar e interagir com outra aplicação em um sistema

operacional diferente, podem assim fazê-lo, através da virtualização dos sistemas

operacionais, sem a necessidade de que a aplicação seja reescrita ou recompilada.

REFLITA

Pense na seguinte situação: na empresa em que você trabalha, o sistema

de planejamento de recursos, conhecido simplesmente por ERP (do inglês


Enterprise Resource Planning), utiliza um módulo de controle de estoque
escrito pelo próprio time de desenvolvedores da companhia, na linguagem

[Link] que, por sua vez, utiliza funcionalidades especí cas da plataforma

Windows, não sendo 100% compatível com alternativas como o .NET Core
(recentemente aberto para a comunidade). Para economizar nos gastos e,

principalmente, aumentar a disponibilidade do sistema ERP utilizado pelos

colaboradores da empresa, suas liais e seus representantes comerciais, o


Diretor Executivo, ou CEO (do inglês Chief Executive O cer), decide migrar

para uma solução em nuvem, de algum provedor de cloud computing de

mercado. Por questões nanceiras, o Diretor de TI, ou CIO (do inglês Chief
Information O cer), opta por utilizar um Sistema Operacional GNU/Linux.
Como fazer para adaptar o módulo de controle de estoque? Reescrever o

[Link] 8/13
03/03/2021 lddkls211_red_sis_dis

código seria uma opção, mas os desenvolvedores que zeram esse módulo

já não trabalham mais na empresa, e o código é muito extenso e complexo,

o que signi ca que sua reescrita impactaria em um aumento signi cativo de


tempo até que o “novo” ERP esteja disponível. Qual seria sua solução para

0
esse problema?

Ver anotações
Se você já utilizou ou leu a respeito de computação em nuvem, deve saber que,
independentemente do tipo de serviço que você contrata e do provedor desse

serviço, você já estará utilizando a virtualização em algum nível, e esses serviços

são tipicamente categorizados como IaaS (do inglês Infrastructure as a Service),

PaaS (do inglês, Platform as a Service) e SaaS (do inglês, Software as a Service). Para
entender melhor essa ideia, veja a Figura 4.4.

Figura 4.4 | Serviços em nuvem e níveis de virtualização

Fonte: elaborada pelo autor.

ARQUITETURA DE VIRTUALIZAÇÃO
A maioria das pessoas, quando ouve falar de virtualização, pensa em um sistema
operacional “dentro” de um software como, por exemplo, o VirtualBox da Oracle,

instalado em uma máquina física obviamente com um sistema operacional

instalado. Partindo desse contexto, podemos destacar algumas características:


esse sistema operacional instalado “dentro” da máquina física refere-se a uma

máquina virtual, pois é similar à sua máquina física, porém, puramente emulada

via software. O software que permite emular uma máquina física é, de maneira
genérica, chamado de hypervisor e é responsável por desacoplar a máquina física

[Link] 9/13
03/03/2021 lddkls211_red_sis_dis

da virtual, bem como alocar os recursos da máquina física, de acordo com a

necessidade da máquina virtual, conforme artigo da VMWare, uma das empresas

mais conhecidas na área de virtualização (VMWARE, [s.d.]).

0
EXEMPLIFICANDO 

Exemplos populares de hypervisors são o VMWare Player, da VMWare e o

Ver anotações
VirtualBox, da Oracle. Existem várias outras opções de hypervisors
disponíveis no mercado, não tão populares, mas ainda assim bastante

utilizadas, como o caso do QEMU (abreviação para Quick Emulator), que é o

hypervisor utilizado pelo Android Studio (IDE o cial da Google para


desenvolvimento de aplicativos Android), para emular o sistema

operacional Android e poder testar os aplicativos em máquinas físicas com

sistemas operacionais MS-Windows, GNU/Linux e macOS, conforme artigo


do portal de desenvolvedores da Google: Start the emulator from the

command line (ANDROID, 2019).

Podemos instalar várias máquinas virtuais em uma única máquina física, limitando-

se, é claro, às capacidades de processamento, RAM e armazenamento da máquina


física. As máquinas físicas são tipicamente chamadas de hosts (hospedeiros), e as

máquinas virtuais são tipicamente chamadas de guests (convidados), embora não

seja tão comum a utilização dos nomes traduzidos para o nosso idioma. A Figura
4.5 ilustra esses elementos.

Figura 4.5 | Elementos de máquinas virtuais

[Link] 10/13
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

DICA

Você pode xar seu conhecimento acessando a documentação do

VirtualBox, que auxilia em todo processo de manipulação da


ferramenta, assim como fornece informações sobre a tecnologia de

virtualização.

Oracle® VM VirtualBox®. User Manual (ORACLE, 2018).

FAÇA VALER A PENA


Questão 1

A virtualização está dividida em três principais componentes: hospedeiros, camada

de virtualização e convidados. Cada um tem o papel fundamental em um processo

de virtualização, e entender a diferença entre eles é essencial.

As máquinas virtuais, ou computadores virtualizados são chamadas de

a.  Hospedeiros.

b.  Hosts.

c.  Camada de Virtualização.

d.  Convidados.

Software de Máquina Virtual.

[Link] 11/13
03/03/2021 lddkls211_red_sis_dis

Questão 2

Existem muitos fatores importantes que podem ser levados em consideração


como vantagens para se utilizar a tecnologia de virtualização em um ambiente

composto por vários servidores. Na atualidade, muitas empresas optam por

0
utilizar ambientes virtualizados devido à vasta lista de vantagens sobre ambientes

Ver anotações
físicos.

Sobre as características de virtualização, marque V para verdadeiro ou F para falso:

( ) Diminuição de espaço físico.

( ) Demanda mais tempo para implantação.

( ) Economia de energia elétrica.

( ) Melhor aproveitamento da capacidade de computação e da performance.

Assinale a alternativa que representa a sequência CORRETA:

a.  V - V - V - V.

b.  V - F - V - V.

c.  V - F - V - F.

d.  V - F - F - F.

e. V - V - F - V.

Questão 3

Com o software Oracle VM VirtualBox, podemos criar máquinas virtuais. Esse

software funciona como uma camada de virtualização entre as máquinas físicas e


virtuais, e nele é possível simular vários recursos de hardware de forma virtual

para utilização de máquinas virtuais.

Ao criar uma nova máquina virtual, deseja-se instalar o sistema operacional X, que

está em uma imagem (iso) na pasta de documentos do computador físico. Para


isso, é necessário criar um CD-ROM ou disco virtual com o caminho dessa imagem,

para que ele seja reconhecido dentro da máquina virtual. Assinale a alternativa

que apresenta a opção do menu de Con gurações devemos fazer essa tarefa.

a.  Discos e CDs.

b.  USB.

c.  Armazenamento.

d.  Pastas Compartilhadas.

[Link] 12/13
03/03/2021 lddkls211_red_sis_dis

e. Redes.

REFERÊNCIAS

0
ANDROID Studio. Start the emulator from the command line. Developers.

Ver anotações
Última atualização em: 2019. Disponível em: [Link] Acesso em: 7

fev. 2019.

COULOURIS, G. et al. Sistemas Distribuídos. Porto Alegre: Bookman, 2013.

DAWSON, P e WOLF, C. (Portal). Virtualization Key Initiative Overview. 22 jul.

2011. Disponível em: [Link] Acesso em: 03 nov. 2018.

GLASSDOOR. Website. 2021. Disponível em: [Link] Acesso em: 28


jan. 2021.

ORACLE. Oracle VM VirtualBox®: User Manual. 2018. Disponível em: [Link] Acesso em: 07 fev.
2019.

REDHAT. O que é virtualização? 2018. Disponível em: [Link] Acesso em: 27 nov. 2018.

UBUNTU. Downloads. 2019. Disponível em: [Link] Acesso em: 7 fev. 2019.

VIRTUALBOX. Download VirtualBox. 2018. Disponível em: [Link] Acesso em: 6 fev. 2019.

VMWARE. Virtualization. Disponível em: [Link] Acesso em: 4 fev. 2019.

[Link] 13/13
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

VIRTUALIZAÇÃO

0
Caique Silva Pereira

Ver anotações
CRIAÇÃO DE MÁQUINA VIRTUAL
O processo de criação de uma VM consiste na utilização do software de virtualização, para criar,
con gurar e instalar a máquina virtual.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR

Você está participando de um processo seletivo para uma oportunidade como


trainee na área de DevOps da maior empresa nacional de portal de notícias, cujos

clientes que consomem o conteúdo disponibilizado por essa empresa são bancos,
em sua maioria. Na entrevista, você será submetido a algumas atividades práticas

sobre virtualização, de nidas pelo Coordenador de Infraestrutura. Sua primeira


atividade é criar uma máquina virtual. Crie uma máquina virtual com o software

VirtualBox, com sistema operacional GNU/Linux, distribuição Ubuntu Desktop, nas

[Link] 1/5
03/03/2021 lddkls211_red_sis_dis

con gurações padrão, e acesse o website glassdoor (GLASSDOOR, 2021), a partir


da máquina virtual recém-criada, utilizando o navegador Firefox, da Mozilla. A

primeira coisa que devemos fazer é realizar o download do sistema operacional


Ubuntu na versão Desktop que foi solicitada, pode ser feito no site do Ubuntu

0
(UBUNTU, 2019). Agora, no VirtualBox, devemos ir até a opção “Novo”, conforme a

Ver anotações
Figura 4.6:

Figura 4.6 | Criando uma máquina virtual

Fonte: captura de tela do VirtualBox, elaborada pelo autor.

Agora, devemos de nir um nome para nossa máquina virtual, o tipo de sistema

operacional e a versão. É necessário também estabelecer a quantidade de


memória RAM que será usada pela máquina virtual. O próximo passo é selecionar

a criação de um novo disco virtual. Caso existam discos virtuais prontos, também
podemos utilizá-los. Na Figura 4.7 criamos um novo:

Figura 4.7 | Criando um disco virtual

Fonte: captura de tela do VirtualBox, elaborada pelo autor.

[Link] 2/5
03/03/2021 lddkls211_red_sis_dis

Agora que as con gurações estão de nidas e a máquina virtual já aparece na lista,

vamos até a opção “Con gurações”, representada pelo ícone de uma engrenagem,

para apontar o caminho de nossa imagem (iso) que contém o sistema operacional.

Podemos observar na Figura 4.8 que a opção “Con gurações” está habilitada:

0
Ver anotações
Figura 4.8 | De nindo as con gurações da máquina virtual

Fonte: captura de tela do VirtualBox, elaborada pelo autor.

A Figura 4.9 mostra como apontamos o caminho da imagem de instalação do


sistema operacional. Para isso ocorrer, devemos criar um leitor de CD virtual e

indicar a imagem como se fosse um CD-ROM. Acessamos o menu

“Armazenamento”, depois “Vazio” e, então, o ícone de um novo CD para localizar

nossa imagem.

Figura 4.9 | Caminho da imagem de instalação do sistema operacional

Fonte: captura de tela do Ubuntu, elaborada pelo autor.

[Link] 3/5
03/03/2021 lddkls211_red_sis_dis

Após a seleção, o local em que estava escrito “Vazio” passa ter o nome da imagem

do Ubuntu. Depois do apontamento do caminho da imagem, devemos pressionar

o botão “OK” e, então, o botão “Iniciar”, representado pelo ícone de uma seta na
cor verde. Feito isso, será aberta uma nova janela de execução da máquina virtual.

0
Agora, devemos pressionar a tecla “Enter” do teclado para iniciar nossa máquina

Ver anotações
via CD, assim, teremos a opção de instalar nossa máquina, seguindo as etapas de

instalação até a conclusão. Depois de nalizar a instalação, podemos ver a


execução da máquina virtual. Agora, só resta ir até o site do Mozilla Firefox, realizar

o download e a instalação e acessar o site glassdoor, conforme solicitado.

AVANÇANDO NA PRÁTICA

INSTALAÇÃO DE MÁQUINAS VIRTUAISUBUNTU SERVER PARA


AMBIENTE WEB
Você faz parte da equipe de infraestrutura de uma empresa, e foi solicitada a

criação de um ambiente com dez máquinas virtuais com sistema operacional

GNU/Linux e distribuição Ubuntu Server. Essas máquinas serão responsáveis por


manter uma aplicação web no ar. Sua parte nesse projeto é criar a primeira

máquina para que o restante da equipe “clone” as demais.

RESOLUÇÃO 

A primeira coisa a se fazer é realizar o download do sistema operacional

Ubuntu na versão Server, pelo site do Ubuntu (UBUNTU, 2019).

No VirtualBox, vá ir até a opção “Novo”.

De na um nome para a máquina virtual, o tipo de sistema operacional e a

versão.

É preciso estabelecer a quantidade de memória RAM que será utilizada

pela máquina virtual.

Agora, deve-se selecionar a criação de um novo disco virtual; caso existam


discos virtuais prontos, é possível utilizá-los.

Em seguida, de na o tamanho do HD da máquina virtual.

Agora que as con gurações foram efetuadas, a máquina virtual já aparece


na lista de máquinas. Vá até a opção “Con gurações”, representada pelo

ícone de uma engrenagem, para apontar o caminho de nossa imagem (iso)


que contém o sistema operacional.

[Link] 4/5
03/03/2021 lddkls211_red_sis_dis

Aponte o caminho da imagem de instalação do sistema operacional. Para


isso, é necessário criar um leitor de CD virtual e indicar a imagem como se

fosse um CD-ROM.

0
Acesse o menu “Armazenamento”, depois “Vazio” e, então, o ícone de um
novo CD para localizar a imagem.

Ver anotações
Após a seleção, o local em que estava escrito “Vazio” passa ter o nome da
imagem do Ubuntu.

Depois do apontamento do caminho da imagem, pressione o botão OK e,


em seguida, o botão “Iniciar”, representado pelo ícone de uma seta na cor

verde. Feito isso, será aberta uma nova janela de execução da máquina
virtual.

Pressione a tecla “Enter” do teclado para iniciar a máquina via CD. Assim,
tem-se a opção de instalar a máquina, seguindo as etapas de instalação até

a conclusão.

Depois de nalizar a instalação, é possível ver a execução da máquina


virtual.

[Link] 5/5
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

CONTEINERIZAÇÃO

0
Caique Silva Pereira

Ver anotações
O QUE É CONTEINERIZAÇÃO?
A conteinerização envolve a ação de encapsular um aplicativo em um recipiente com o seu
próprio ambiente operacional, pode ser considerado a emulação da aplicação. Ela é uma
alternativa mais leve que a utilização de uma máquina virtual.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

PRATICAR PARA APRENDER

Caro aluno, o desenvolvimento de um software, seja ele desktop, web ou um app


para smartphone, envolve a utilização de diversos recursos, por exemplo, um
sistema gerenciador de banco de dados, um (ou mais) ambiente integrado de
desenvolvimento, uma (ou mais) linguagem de programação etc. Ao fazer suas
escolhas e implementar a solução, o próximo passo é disponibilizá-la, mas, nesse

momento, muitos problemas de incompatibilidade podem ocorrer. Uma frase


típica é “mas no meu computador funcionou!”. Será que existem soluções para

evitar esse tipo de problema? Existem e começaremos a explorá-las!

[Link] 1/11
03/03/2021 lddkls211_red_sis_dis

Nesta seção vamos ter a oportunidade de conhecer uma tecnologia muito


requisitada no mercado de trabalho atualmente: os contêineres. Você já ouviu falar

de uma das implementações mais utilizadas de contêineres no mundo, o Docker?


Se não, aproveite a oportunidade. Sabia que há várias vagas de emprego

0
requisitando conhecimentos dessa implementação aqui no Brasil e mundo afora?

Ver anotações
Não perca o foco!

Você se lembra da sua entrevista para a tão cobiçada vaga na área de DevOps?
Avançando mais uma etapa, o coordenador pergunta se, na sua opinião, existem

tecnologias similares, porém, mais e cientes que a virtualização, para rodar

aplicações sem interferir no sistema operacional da máquina física, e você logo se


lembra dos contêineres. Sendo assim, deverá criar um relatório técnico indicando

o uso de uma tecnologia atual que traga vantagens e diminua o consumo de


recursos para a criação de um novo ambiente que execute um sistema ERP que

será implementado daqui a alguns meses na empresa. Os ERPs são sistemas


integrados de gestão empresarial, que interligam todos os dados e processos de

uma empresa dentro do sistema.

Portanto é um dos mais importantes para um bom funcionamento de uma

companhia, o que quer dizer que, quanto melhor for executado, mais pontos o
pro ssional que planejou sua execução vai ganhar com os seus superiores. Então,

chegou a hora de impressionar o coordenador em busca da vaga que você almeja,


está pronto?

CONCEITO-CHAVE

Uma das tecnologias mais populares que temos atualmente é o uso de contêineres
para a execução de sistemas dos mais variados tipos. Isso ocorre devido à

facilidade e à exibilidade que advêm do uso dos mesmos. O contêiner funciona


como uma tecnologia que dá o suporte para o funcionamento de uma aplicação e

pode ser considerado a emulação de nossa aplicação. Quando a aplicação é


executada através de um contêiner, ela tem todas as bibliotecas e os elementos

necessários para o funcionamento disponíveis dentro do contêiner. Uma maneira

simples para entender o que são os chamados contêineres é imaginar que eles
permitem a criação de ambientes virtuais isolados e independentes para serem

utilizados por aplicações, similar ao resultado do uso de máquinas virtuais.

Entretanto, um grande diferencial está no fato de que os contêineres são mais

leves que as máquinas virtuais, por possuírem uma arquitetura mais otimizada.

[Link] 2/11
03/03/2021 lddkls211_red_sis_dis

ASSIMILE

O contêiner traz muitas facilidades e é considerado uma das principais

tendências de TI. Sua utilização simpli ca a aplicação da metodologia

DevOps e facilita o desenvolvimento. Grandes empresas, como a Google,

0
usam essa tecnologia.

Ver anotações
Se fosse necessário desenvolver um sistema em linguagem C para o cadastro de

produtos do estoque de uma loja de varejo, poderíamos criar um contêiner que

tivesse todas as bibliotecas essenciais para o funcionamento do sistema e, assim,

nossa aplicação seria virtualizada através de um contêiner, sem a necessidade de

um sistema operacional, pois, neste caso, já precisaríamos de uma máquina


virtual.

Conforme pode ser visto na Figura 4.10, uma grande vantagem de contêineres em

relação às máquinas virtuais é que não há, obrigatoriamente, a necessidade de

instalar um sistema operacional completo, visto que as plataformas de


conteinerização aproveitam bibliotecas compartilhadas com o sistema operacional

hospedeiro. Por essa razão, os contêineres ocupam menos espaço em disco e

consomem menos RAM e processamento que as máquinas virtuais e, assim,

possibilita a utilização de mais contêineres em uma mesma máquina física,


favorecendo o uso de uma arquitetura mais modular para as aplicações.

Figura 4.10 | Comparação das arquiteturas de máquinas virtuais versus contêineres

Fonte: elaborada pelo autor.

REFLITA

Agora que conhecemos algumas vantagens dos contêineres em relação às


máquinas virtuais, quais benefícios uma empresa que executa aplicações

em máquinas virtuais poderia adquirir migrando a execução de suas

[Link] 3/11
03/03/2021 lddkls211_red_sis_dis

aplicações para contêineres? Você acredita que seria bené ca essa

migração?

Duas das principais características a favor da conteinerização são o baixo

0
acoplamento entre os contêineres e a facilidade de migração entre provedores de

Ver anotações
cloud computing. Ambas se devem ao fato de que a ideia do contêiner é
“empacotar” a sua aplicação em um módulo que é facilmente instalado em

qualquer sistema operacional que suporte o uso de contêineres (e os principais

sistemas operacionais utilizados em servidores possuem esse suporte).

No lugar do hypervisor, quando tratamos de máquinas virtuais, temos os

chamados contêiner engines (por vezes chamados de contêiner daemons). Existem

várias implementações para esses engines, como o Docker, o LXD, o Rkt, o Mesos e

o Windows Server Containers, mas o mais popular entre eles é o Docker, sobre o

qual aprenderemos na próxima seção. Porém, para começar a ter ideia do que se
trata, quando falamos do Docker, estamos na realidade falando de uma empresa –

chamada Docker – que foi responsável pela popularização dos contêineres, por

meio de eventos e divulgação de material técnico. Essa companhia criou sua

própria implementação que, coincidentemente, é chamada de Docker, cuja


instalação, con guração e gerenciamento (e, consequentemente, curva de

aprendizado) é relativamente mais simples comparando com outras

implementações (DOCKER, 2018).

LINUX CONTAINER
Existem implementações que podem ser consideradas contêineres de sistema, por
exemplo, os Linux. Essas tecnologias têm um comportamento muito parecido ao

de uma máquina virtual, mas, na verdade, são equivalentes a novas instâncias do


sistema utilizando todas as técnicas disponíveis para isso. Os contêineres Linux

funcionam compartilhando o kernel da máquina real onde estão em


funcionamento. Uma limitação encontrada nos contêineres é que, quando estão

compartilhando o kernel da máquina física ou até mesmo virtual em que estão


hospedados e em execução, tratam-se de contêineres Linux rodando em máquinas
Linux com o mesmo kernel do host, ou seja, mesmo que você substitua todas as

bibliotecas e frameworks utilizados pelo seu contêiner, o kernel será sempre o


mesmo do host que o hospeda.

[Link] 4/11
03/03/2021 lddkls211_red_sis_dis

Segundo Linux Container (2018), o projeto Linux container é o guarda-chuva por


trás do Linux Containers, que possuem as gerações LXC, LXD e LXCFS. O LXC é uma

interface de espaço de usuário para os recursos de contenção de kernel do Linux.


Por meio de uma API poderosa e ferramentas simples, permite que usuários do

0
Linux criem e gerenciem facilmente contêineres de sistema ou aplicativo. O LXD é

Ver anotações
um gerenciador de contêineres de próxima geração, que oferece uma experiência
de usuário semelhante às máquinas virtuais, mas usando contêineres do Linux. Já

o LXCFS é um sistema de arquivos simples do userspace projetado para contornar


algumas limitações atuais do kernel do Linux.

EXEMPLIFICANDO 

Podemos até mesmo testar um ambiente com contêineres Linux pelo

Portal Linux Containers (LINUX CONTAINER, [s.d.]). Esse portal disponibiliza


toda a documentação com comandos utilizados no LXC e no LXD. Conforme

mencionado, podemos praticar alguns comandos e testar ambos os


ambientes através do menu “try it online”, como podemos observar na
Figura 4.11:

Figura 4.11 | Área de treinamento do portal Linux Containers

Fonte: captura de tela do portal Linux Containers. 

Dentro da opção de treinamentos, é possível usar o “Terminal”, disponível para

executar alguns comandos e observar seu comportamento. Utilizamos o comando


abaixo para criar o contêiner através da implementação Linux Containers:

lxc launch ubuntu MeuPrimeiroConteiner

[Link] 5/11
03/03/2021 lddkls211_red_sis_dis

Pode-se observar o contêiner com o nome “MeuPrimeiroConteiner” sendo criado


no terminal e dando o retorno conforme é mostrado na Figura 4.12 a seguir.

Figura 4.12 | Criando um contêiner por meio do portal Linux Containers

0
Ver anotações
Fonte: captura de tela do portal Linux Containers.

Feito isso, é possível consultar a lista de contêineres criados no terminal utilizando


o comando abaixo:

lxc list

Pode-se observar na Figura 4.13 que o contêiner criado anteriormente já aparece


como resultado em nossa listagem. Além disso, informações como o status da

máquina e os números de seus respectivos IPV4 e IPV6 também aparecem, como


podemos ver a seguir:

Figura 4.13 | Listando os contêineres criados através do portal Linux Containers

Fonte: captura de tela do portal Linux Containers.

É possível executar comandos dentro de um contêiner utilizando o comando


abaixo:

lxc exec nomedocontainer – comando

Há opções de iniciar, parar e excluir contêineres usando os comandos:

lxc start

lxc stop

lxc delete

Além das informações do contêiner exibidas através da listagem que foi vista
anteriormente, podemos observar uma série de informações sobre nosso

contêiner como consumo de memória RAM, consumo de redes, entre outros


dados. Para isso, utilizamos o comando de sintaxe a seguir:

lxc info nomedocontainer

[Link] 6/11
03/03/2021 lddkls211_red_sis_dis

O PAPEL DA CONTEINERIZAÇÃO EM SISTEMAS DISTRIBUÍDOS


Os sistemas distribuídos fazem uso extensivo dos contêineres no contexto de

microsserviços. A ideia dos microsserviços está associada a empresas que


possuem sistemas altamente dinâmicos e ao termo modularidade. Um portal de

0
notícias por exemplo, é composto por vários elementos, como um (ou mais) banco

Ver anotações
de dados, um (ou mais) framework front-end utilizado para desenvolver interfaces,
framework back-end para desenvolver a parte dinâmica do sistema, frameworks
para gerenciar mensagens entre servidores e clientes (por exemplo, o RabbitMQ)
etc. Caso o sistema possua uma arquitetura monolítica, ou seja, uma forte

dependência entre esses elementos, será muito difícil substituir alguns dos
elementos citados anteriormente sem causar uma interrupção completa no
sistema. Por outro lado, em uma arquitetura baseada em microsserviços, esses

componentes têm um baixo acoplamento entre si, ou seja, o grau de dependência


entre os componentes é baixo, de forma que, caso você tenha de fazer uma
substituição, terá um impacto bem menor na indisponibilidade do seu sistema, e

os contêineres serão artefatos fundamentais para atingir esse baixo acoplamento,


pois cada um dos elementos pode ser criado e implantado em um contêiner

separado.

Dentre as vantagens de um sistema distribuído baseado em microsserviços,

podemos apontar que quanto menores são as partes, mais fácil entendê-las. Além
disso, cada microsserviço pode ser executado e escalado de maneira concorrente e

independente entre si. Outra vantagem decorrente disso é que, como esses
elementos possuem um baixo acoplamento entre si, um projeto de grande porte
pode ser trabalhado de maneira razoavelmente independente entre as equipes de

trabalho. A Figura 4.14 ilustra uma aplicação monolítica em relação a uma


aplicação baseada em microsserviços.

Figura 4.14 | Exemplo de aplicações baseadas em microsserviços

[Link] 7/11
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: elaborada pelo autor.

ASSIMILE 

Atualmente, existe uma grande tendência de empresas migrarem de


aplicações monolíticas para aplicações orientadas a microsserviços, por
vantagens como escalabilidade e independência entre seus elementos
(também conhecido como baixo acoplamento).

Como veremos na próxima seção (parte prática), apesar de a criação e o controle

de um contêiner ser feita com simples comandos, podemos observar pela Figura

4.14 que uma aplicação é composta por não apenas um, mas vários
microsserviços, cada um representando um ou mais contêineres. Gerenciar

dezenas ou centenas de contêiner, de maneira isolada, pode ser uma tarefa muito

trabalhosa, razão pela qual as empresas utilizam alguma ferramenta para criar,
gerenciar e remover contêineres. Esse tipo de ferramenta é conhecido no mercado

de trabalho como ferramenta de orquestração de contêineres. Acredita-se que a

ideia esteja relacionada ao fato de que, em uma orquestra, um maestro coordena


os músicos de maneira que o objetivo conjunto (obra tocada) seja o melhor

possível. Nessa analogia, as ferramentas de orquestração realizam o mesmo papel

do maestro, em que os músicos seriam os contêineres.

Atualmente, a ferramenta de orquestração mais popular e, portanto, mais


solicitada no mercado de trabalho é o Kubernetes, da Google, que serve para

orquestrar contêineres criados com o Docker. Importante notar que o próprio

framework do Docker possui uma ferramenta de orquestração nativa, instalada


automaticamente com o Docker. Essa ferramenta é chamada de Swarm. Em alguns
aspectos, inclusive pelo fato de ser uma ferramenta totalmente integrada com o

[Link] 8/11
03/03/2021 lddkls211_red_sis_dis

Docker, o Swarm é a mais indicada para um primeiro contato com o conceito de

orquestração de contêineres, razão pela qual essa será a ferramenta adotada

nesse livro.

0
O Swarm foi integrado ao Docker a partir da versão 1.12.0, com o chamado swarm
mode, em junho de 2016, conforme noticiado no blog o cial do Docker (DOCKER,

Ver anotações
[s.d.]) A Figura 4.15 ajudará a entender os componentes do Swarm e como eles

estão relacionados aos contêineres.

Figura 4.15 | Arquitetura do Swarm do Docker

Fonte: elaborada pelo autor.

Na Figura 4.15, o retângulo destacado em lilás representa o que o Docker chama


de Swarm, que nada mais é que um cluster (conjunto de computadores

interligados que funcionam como um grande sistema), formado por vários nós,

que podem rodar uma aplicação – no exemplo, o servidor web Nginx – de maneira
integrada e distribuída. Para que os nós possam estar integrados, de maneira que,

caso uma instância do Nginx falhe por conta de um dos nós escravos estar

indisponível, esta ser automaticamente instanciada em outro nó, é necessário que


exista um nó mestre que faça essa gestão. Podem existir vários nós com a função

de mestre do cluster (que o Docker chama de manager), para que, caso o nó

mestre falhe, outro nó mestre assuma seu lugar. Os nós escravos (que o Docker
chama de worker) rodam a quantidade de instâncias (frequentemente chamadas

de réplicas) solicitadas pelo nó mestre e, para tal, é preciso que exista um

contêiner “dentro” de cada nó escravo, o que está representado pelo retângulo


laranja. Caro aluno, chegamos ao m da seção e agora você já sabe o que é

contêiner e logo mais estará apto para utilizar essa importante tecnologia! Bons

estudos!

[Link] 9/11
03/03/2021 lddkls211_red_sis_dis

FAÇA VALER A PENA


Questão 1

Existem algumas ferramentas, chamadas de ferramentas de “orquestração de


contêineres”, que facilitam e automatizam o gerenciamento de um conjunto de

0
contêineres. Assim sendo, é de extrema importância a familiaridade com esse tipo

de ferramenta.

Ver anotações
Assinale a alternativa que apresenta somente ferramentas de orquestração de
contêineres.

a.  Docker e Kubernetes.

b.  Mesos e Docker.

c.  Mesos, Docker e Kubernetes.

d.  Kubernetes e Swarm.

e.  Docker e Swarm.

Questão 2

Os contêineres têm se popularizado cada vez mais devido a uma série de

vantagens desse tipo de tecnologia, se comparados à tecnologia antecessor, de


máquinas virtuais. Uma alternativa para implementação de contêiner é o Linux

Container, embora existam outras implementações.

De acordo com os comandos LXC do Linux Container, assinale a alternativa que

mostra corretamente a sintaxe para a criação de um novo contêiner ubuntu, com o


nome NovoConteiner.

a. lxc start NovoConteiner 

b. lxc start ubuntu NovoConteiner

c. lxc launch ubuntu NovoConteiner

d. lxc create ubuntu NovoConteiner 

e. lxc new NovoConteiner

Questão 3

O Linux Container LXC e LXD tem seu uso se tornando cada vez mais popular, tanto

que as ferramentas de orquestração de contêineres dão suporte a esta


implementação. Sendo assim, é importante que conheçamos alguns comandos

básicos dessa implementação.

[Link] 10/11
03/03/2021 lddkls211_red_sis_dis

Em relação ao seguinte comando, assinale a alternativa que apresenta a sintaxe

correta do comando que traz informações do contêiner como seu status de ligado

ou desligado, endereço de IPV4, endereço de IPV6, entre outras informações.


Vamos utilizar um contêiner chamado Conteiner_Kro.

0
a. lxc info Conteiner_Kro 

Ver anotações
b. lxc list 

c. lxc launch ubuntu Conteiner_Kro

d. lxc view infos Conteiner_Kro

e. lxc Conteiner_Kro status,ipv4,ipv6 show

REFERÊNCIAS

DOCKER, C. Docker Containerization Unlocks the Potential for Dev and Ops.

2018. Disponível em: [Link] Acesso em: 10 dez. 2018.

DOCKER (Portal). Swarm mode. [s.d.] Disponível em: [Link]

Acesso em: 10 dez. 2018.

LINUX CONTAINER. Infrastructure for container projects. Disponível em:


[Link] Acesso em: 10 dez. 2018.

[Link] 11/11
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

CONTEINERIZAÇÃO

0
Caique Silva Pereira

Ver anotações
TECNOLOGIA PARA OTIMIZAÇÃO DE UM SISTEMA ERP
Utilização de tecnologias de contêineres, similares a de virtualização, para rodar aplicações sem
interferir no sistema operacional da máquina física com mais e cência.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR

Continuando o processo seletivo para aquela tão cobiçada vaga na área de


DevOps, o coordenador o submete a um teste, no qual você deve criar um

relatório para indicar uma tecnologia que otimize o desempenho de um sistema


ERP, que logo será implementado na empresa.

Vamos auxiliá-lo com a resolução dessa situação-problema.

[Link] 1/4
03/03/2021 lddkls211_red_sis_dis

Depois de analisar o cenário de tecnologias atuais, foi decidido que criar um


ambiente com contêineres é a melhor opção para impressionar o coordenador,

devido à popularidade e às vantagens dessa tecnologia. Portanto, para justi car


essa escolha, abaixo estão citadas as vantagens que o uso de contêiner deve trazer

0
na execução de um sistema de ERP:

Ver anotações
1. Como um dos principais fatores é a economia de recursos, é possível justi car

a escolha apontando a melhor e ciência na execução do sistema e grande


economia de recursos, ainda mais se a equipe de desenvolvimento utilizar a

arquitetura de microsserviços.

2. Com o uso de contêineres, pode-se automatizar implantações e atualizações do

novo sistema. Como o sistema de ERP é novo na empresa, é normal que tenha
muitas atualizações até que chegue a uma versão estável que satisfaça todas

equipes, e o uso de contêineres vai facilitar muito as atualizações.

3. Garantia da escalabilidade do sistema ERP nos contêineres de maneira ágil e

otimizada.

4. Capacidade de orquestrar contêineres em múltiplos hosts.

5. Conforme apontado na primeira vantagem, o uso de contêiner permite o uso


do hardware de forma otimizada, ou seja, faz com que a redução do consumo

de recursos seja evidente.

Através do apontamento destas vantagens, o coordenador terá a certeza de que

você entende muito bem do que está falando e com certeza vai avançá-lo para a
próxima etapa da entrevista!

AVANÇANDO NA PRÁTICA

UTILIZANDO LINUX CONTAINER


A empresa na qual você trabalha está na vanguarda da tecnologia e, portanto, já
utiliza tecnologia de contêiner para rodar as aplicações fornecidas a seus clientes.

Entretanto, há uma reclamação de um dos grandes clientes da empresa: seu


principal sistema de CRM (auxiliam na gestão do relacionamento com o cliente)
está funcionando com alguns travamentos. Para começar a diagnosticar esse

problema, foi solicitado que o estagiário fosse até o cliente e criasse dois

contêineres utilizando a tecnologia Linux Container, recolhesse as informações de

consumo de memória de ambos e, após isso, parasse a execução e excluísse

[Link] 2/4
03/03/2021 lddkls211_red_sis_dis

ambos no ambiente de produção. Como o estagiário não conhece a tecnologia

Linux Container, foi solicitado que você criasse um tutorial passo a passo em uma

plataforma de testes e encaminhasse para o estagiário.

0
RESOLUÇÃO 

Ver anotações
Como deverá mostrar os comandos que devem ser utilizados pelo estagiário

no importante cliente, utilize a plataforma de Linux Contêiner online para

exempli car a utilização dos comandos, através do portal Linux Containers


disponível em:  [Link] Acesso em: 8 fev. 2019.

Como foi solicitada a criação de dois contêineres, deixe os comandos abaixo

como exemplo para o estagiário:

lxc launch ubuntu ConteinerTeste1

lxc launch ubuntu ConteinerTeste2

Agora que já tem a criação dos contêineres, você pode consultar o consumo de

memória através dos comandos:

lxc info ConteinerTeste1

lxc info ConteinerTeste2

É possível ver o parâmetro Memory usage como uma das saídas dos comandos
na Figura 4.16 a seguir:

Figura 4.16 | Listando as informações dos contêineres através do portal Linux Containers

Fonte: captura de tela da área do usuário do Portal Linux Containers.

Agora, você deve parar a execução dos contêineres e excluí-los do ambiente

usando os comandos a seguir:

[Link] 3/4
03/03/2021 lddkls211_red_sis_dis

lxc stop ConteinerTeste1

lxc delete ConteinerTeste1

lxc stop ConteinerTeste2

0
lxc delete ConteinerTeste2

Ver anotações
Feito isso, sua tarefa está nalizada!

[Link] 4/4
03/03/2021 lddkls211_red_sis_dis

NÃO PODE FALTAR Imprimir

SIMULANDO SISTEMAS DISTRIBUÍDOS COM DOCKER

0
Caique Silva Pereira

Ver anotações
O QUE É DOCKER?
O Docker é uma tecnologia de software que fornece contêineres, é uma das principais
plataformas de conteinerização.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

PRATICAR PARA APRENDER

Caro aluno, você já pensou de que maneira são orquestrados os serviços quando
acessamos um website? Uma das principais plataformas de conteinerização
utilizadas atualmente é o Docker, principal assunto desta seção. Aqui vamos
trabalhar com a instalação do Docker no sistema operacional GNU/Linux Ubuntu e
aprender alguns dos principais comandos que podem ser utilizados na plataforma
Docker. Você já parou para pensar em quais comandos devem ser usados para

que essa orquestração de serviços funcione adequadamente?

[Link] 1/17
03/03/2021 lddkls211_red_sis_dis

Quando falamos de sistemas distribuídos, é inevitável falar sobre virtualização e


conteinerização. Na prática, essas tecnologias são frequentemente utilizadas por

grandes empresas. Você concluiu seu curso e está participando de um processo


seletivo para uma oportunidade como trainee na área de DevOps da maior

0
empresa nacional de portal de notícias, cujos clientes que consomem o conteúdo

Ver anotações
disponibilizado por essa empresa são bancos, em sua maioria. Você está se saindo
muito bem no processo seletivo e agora será submetido ao teste nal, uma

atividade prática com Docker.

O coordenador está gostando de seu desempenho nos testes e diz que, caso você

consiga orquestrar o servidor web Apache em um cluster simples, a vaga será sua.
Desta forma:

[Link] 2/17
03/03/2021 lddkls211_red_sis_dis

1. Crie um cluster com cinco réplicas do servidor web Apache utilizando o Docker

Swarm;

2. Veri que em quais nós do cluster esse serviço está rodando;

0
3. Acesse a página de boas-vindas desse servidor Apache através do(s)

Ver anotações
endereço(s) IPv4 de cada nó onde esse serviço web estiver rodando.

Para completar o desa o, nessa seção você verá, em detalhes, como se utiliza o

Docker, incluindo comandos especí cos a serem utilizados, tanto para


con guração, quanto para constatação de que o serviço de Apache está

funcionando de maneira adequada. Ficou curioso? Vamos lá!

CONCEITO-CHAVE

O Docker é uma famosa plataforma genérica de conteinerização. Conforme já

estudamos, o conceito de conteinerização é parecido com virtualização, porém é


considerado “mais leve”. Contêineres são muito populares atualmente devido à

facilidade e à exibilidade que advêm de seu uso. Portanto, agora chegou a hora

de colocar a mão na massa e aprender a utilizar essa famosa ferramenta.

INSTALAÇÃO DO DOCKER

Vamos fazer a instalação do Docker em uma das distribuições populares

GNU/Linux, o sistema operacional Ubuntu, cuja versão utilizada foi a 14.04.5 LTS.

Para isso, devemos seguir os passos a seguir. Todo o procedimento deve ser feito
com um usuário com permissões de administrador. Nesse caso, utilizaremos o

root através do comando sudo su.

Você também pode instalar o Docker no sistema operacional Windows, fazendo o

download da versão mais atual no Portal Docker (DOCKER, [s.d.]). O processo de


instalação é bem simples, é preciso somente avançar as etapas do instalador.

ASSIMILE

Todos os procedimentos utilizados para instalação foram retirados da

documentação o cial do Docker, (DOCKER, [s.d.]). As ferramentas de

tecnologia atualizam-se a tal velocidade que somente acompanhando a

documentação o cial é possível manter-se atualizado. Portanto, como um


pro ssional engajado, procure sempre pelas fontes o ciais das

ferramentas.

[Link] 3/17
03/03/2021 lddkls211_red_sis_dis

Antes de instalar a ferramenta, devemos remover versões anteriores do Docker

que possam estar instaladas, usando o comando:

sudo apt-get remove docker docker-engine [Link]

0
Caso não tenha nenhuma versão instalada, será exibida a mensagem que foi

Ver anotações
impossível encontrar o pacote docker-engine.

[Link] 4/17
03/03/2021 lddkls211_red_sis_dis

Antes de instalar o Docker CE pela primeira vez em uma nova máquina host, você
precisa con gurar o repositório do Docker, atualizando os pacotes de sua

máquina. Depois, você pode instalar e atualizar o Docker do repositório. Portanto,


execute os comandos que vão atualizar a máquina:

0
sudo apt-get update

Ver anotações
O comando acima tem o objetivo de realizar uma atualização de pacotes do
Ubuntu. Na execução desse comando, o tempo pode variar de acordo com os

pacotes que precisam ser atualizados, da velocidade da máquina e da conexão


com a internet.

Através do comando abaixo atualizamos os pacotes necessários para a instalação


do Docker. Para obter uma instalação bem-sucedida, é bom ter os programas

utilizados nela em suas últimas versões:

sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-

properties-common

Após atualizar os repositórios, vamos adicionar o repositório de instalação do


Docker, usando o seguinte comando:

curl -fsSL [Link] sudo apt-key add -

Nesse comando, estamos fazendo o apontamento do caminho de instalação o cial


do Docker que o Ubuntu deve acessar quando queremos efetuar a instalação.
Após o apontamento da URL indicando o local para download o Docker para

Ubuntu, será possível adicionar o repositório no próximo comando:

sudo add-apt-repository \ "deb

[arch=amd64][Link] \ $(lsb_release -cs) \

stable"

O comando utiliza a permissão considerada admin nos sistemas operacionais da

família Linux, através da palavra sudo. Depois de usar a permissão de usuário do


sudo, utilizamos o add-apt-repository para adicionar o repositório, que pode ser
comparado a uma loja de aplicativos, responsável pelo download do Docker na

versão Ubuntu. O restante do comando é o caminho do repositório.

Após adicionar o repositório para download do Docker, como mostra a Figura 4.17,
devemos mais uma vez atualizar o apt-get, conforme o comando seguinte para
aplicar as alterações:

[Link] 5/17
03/03/2021 lddkls211_red_sis_dis

sudo apt-get update

Figura 4.17 | Saída do comando que adiciona o repositório de instalação do Docker

0
Ver anotações
Fonte: captura de tela elaborada pelo autor.

Agora vamos utilizar o comando de instalação do Docker. Lembrando que, para

que esse comando funcione, devemos seguir as etapas de apontar o repositório


em que o Docker está disponível e adicionar esse repositório em nossa lista. No
comando utilizamos o sudo para usar a permissão admin do sistema e o apt-get

install para a fazer a instalação, por último o nome do programa que vamos

instalar, no caso, o Docker (docker-ce).

sudo apt-get install docker-ce

Com todas as con gurações feitas para atualizar os pacotes necessários e


adicionar o repositório que contém o Docker, agora é possível fazer a instalação.

Veja na Figura 4.18 o comando sendo aplicado no terminal e também o início da


sua execução.

Figura 4.18 | Saída do comando que faz a instalação do Docker

Fonte: captura de tela elaborada pelo autor.

INICIANDO E TESTANDO O DOCKER

Para ver se o Docker foi instalado corretamente, devemos iniciar o serviço do


Docker e veri car se ele está em execução. Podemos fazer isso com os seguintes
comandos:

sudo service docker start

service docker status

[Link] 6/17
03/03/2021 lddkls211_red_sis_dis

O comando sudo utiliza a permissão de usuário administrador para execução do


restante da linha, e as instruções service docker start iniciam o serviço Docker que
foi instalado anteriormente.

0
Após a inicialização do Docker, utilizamos o comando service docker status que

mostra o status do serviço, ou seja, se ele está em execução ou parado.

Ver anotações
Caso ocorra algum erro ao iniciar e testar o Docker, você deve executar os dois
comandos seguintes e tentar novamente:

sudo apt-get update

sudo apt-get upgrade

Esses comandos utilizam a permissão de usuário administrador através do sudo e,

além disso, executam uma atualização de pacotes essenciais para o bom


funcionamento do sistema operacional, assim como o bom funcionamento dos

serviços que rodam através dele, como o Docker.

Agora que instalamos e veri camos seu funcionamento, o sistema está apto a

receber as especi cidades que queremos criar. Para isso, é possível usar o Docker
Swarm. Essa ferramenta é nativa e permite a criação de clusters de Docker. Nesse

cenário, é possível agrupar vários hosts em um mesmo pool de recursos, o que


facilita o deploy de contêineres (DIEDRICH, 2018). Esse framework é integrado ao
Docker Engine a partir da versão 1.12.0, com o chamado “swarm mode”.

DICA

Você pode consultar o site, a documentação e todos os repositórios


o ciais do Docker no Portal Docker, (DOCKER, [s.d.]).

Uma alternativa à instalação do Docker é o portal Play With Docker,


plataforma pela qual é possível testar o Docker utilizando seus
comandos diretamente via navegador, mediante um cadastro (PLAY

WITH DOCKER, [s.d.]).

EXEMPLIFICANDO

Após a criação do login na plataforma, teremos acesso a uma interface para

criação de instâncias como clusters e nós.

Através do botão Add new instance, podemos criar nós para o nosso cluster

e, então, é possível entrar com comandos na plataforma. Vamos conhecer


um dos principais comandos para depois interagirmos com a plataforma. A

Figura 4.19 exibe a interface após a criação de um nó:

[Link] 7/17
03/03/2021 lddkls211_red_sis_dis

Figura 4.19 | Plataforma Play With Docker

0
Ver anotações
Fonte: captura de tela elaborada pelo autor.

Através dos comandos listados abaixo podemos simular algumas características de


sistemas distribuídos com Docker, como criação de nós dos tipos mestre

(manager) e escravo (worker) dentro do nosso cluster, gerenciamento de contêiner,


réplica de serviços etc.

COMANDO EXECUTADO FORA DO(S) NÓ(S)

Agora vamos ver alguns comandos que são executados fora dos nós do ambiente
Docker. Um dos mais importantes é o de criação de um novo manager para o

cluster. Através do comando, criamos um manager chamado de mestre:

docker-machine create --driver virtualbox mestrext

O começo desse comando signi ca que estamos criando uma nova máquina
através do Docker. Utilizaremos docker-machine create como driver no VirtualBox e

daremos o nome de mestre para nossa máquina.

[Link] 8/17
03/03/2021 lddkls211_red_sis_dis

Agora, vamos fazer a criação de uma nova máquina: o comando segue o mesmo

padrão do anterior, mas desta vez vamos chamar a máquina de “escravo1”. Ela

será um worker para o cluster, conforme comando abaixo:

0
docker-machine create --driver virtualbox escravo1

Ver anotações
Podemos veri car o IP de qualquer uma das máquinas de nosso cluster utilizando

o comando docker-machine ip e, a seguir, consultamos o IP de nossa máquina

chamada “mestre”:

docker-machine ip mestre

Um dos comandos Linux mais populares utilizados para acesso de


máquinas/servidores é o ssh, que signi ca “Secure Shell”, em que fazemos um

acesso ou uma conexão através desse protocolo de rede criptográ ca, que aplica

mais segurança aos serviços de redes. Na utilização do Docker o mesmo comando


é usado com o objetivo de acessar os nós criados que, em nosso ambiente,

possuem os nomes “mestre” e “escravo1”.

docker-machine ssh mestre

docker-machine ssh escravo1

É possível veri car os nós (nodes) criados através do comando “ls”. Podemos criar

um escravo para o cluster com hardware diferente do padrão. Também pode-se


ver no comando a seguir que a máquina chamada “escravo5” que de nimos a

memória com o valor de 512 MB através da instrução virtualbox-memory “512” e

um disco rígido de 5 GB através da instrução virtualbox-disk-size “5000”:

docker-machine create --virtualbox-memory "512" --virtualbox-disk-size "5000" --

driver virtualbox escravo5

COMANDO EXECUTADO DENTRO DO(S) NÓ(S) MANAGER

Agora vamos ver os alguns comandos executados dentro do manager de nosso

ambiente Docker. O comando a seguir pode ser utilizado para iniciar o cluster

através do framework Swarm, de gerenciamento de contêineres.

docker swarm init --advertise-addr

Podemos consultar os nós que fazem parte do cluster utilizando o comando node
ls: docker node ls

[Link] 9/17
03/03/2021 lddkls211_red_sis_dis

Às vezes precisamos veri car informações sobre um nó especí co. Para isso,

utilizamos o comando Docker inspect. O exemplo a seguir contém informações

sobre o nó chamado “escravo1”:

0
docker inspect escravo1

Ver anotações
A seguir, é possível observar um exemplo de criação de um novo serviço (tarefa)

para o cluster. Nesse caso, criamos um serviço Web através do popular servidor

web nginx, que contém 3 réplicas:

docker service create --name WEB --publish 85:80 --replicas=3 nginx:1.12.1

No parâmetro name de nimos um nome para a execução do serviço, em nosso


caso, WEB. Através do parâmetro publish de nimos uma porta de execução para o

Docker e uma para o servidor web Nginx, no caso, “85” e “80” e, por último,

de nimos que o serviço terá 3 réplicas e utilizará o Nginx na versão 1.12.1.

Agora que criamos nosso serviço de internet chamado WEB, podemos utilizar o
comando ps seguido do nome do serviço para veri car suas informações. Portanto,

o comando a seguir mostra informações sobre um serviço especí co aqui

denominado como WEB:

docker service ps WEB

É possível usar os comandos a seguir para alterar a versão das instâncias do Nginx.
No primeiro comando atualizamos, através do comando update, a versão do

Nginx para 1.13.5 (anteriormente estávamos com a versão 1.12.1). Após isso,

utilizamos o comando ps com o parâmetro -f que signi ca lter ou nd, que pode
ser considerado um ltro para a busca, em que usamos a palavra-chave Running

para descobrir qual serviço está em execução e se sua versão foi mesmo

atualizada. O resultado dos comandos está ilustrado na Figura 4.20.

docker service update --image nginx:1.13.5 WEB

docker service ps -f "desired-state=Running" WEB

Figura 4.20 | Plataforma Play With Docker

[Link] 10/17
03/03/2021 lddkls211_red_sis_dis

0
Ver anotações
Fonte: captura de tela elaborada pelo autor.

Caso quiséssemos desfazer nossa atualização de versão das instâncias do Nginx,

podemos utilizar o comando update como parâmetro rollback aplicado sobre o


serviço WEB. Com isso, teremos a volta da versão das instâncias do Nginx para a

versão anterior. Que pode ser consultado através do mesmo comando ps utilizado

no exemplo anterior, conforme a seguir:

docker service update --rollback WEB

docker service ps -f "desired-state=Running" WEB

Caso seja necessário parar algum nó e seus serviços, podemos utilizar o comando

update seguido do parâmetro availability drain e o nome do nó que desejamos

parar, como em nosso exemplo, o nó denominado como escravo2:

docker node update --availability drain escravo2

Quando executamos esse comando, tanto o nó quantos os serviços que estão em


execução serão parados.

COMANDO EXECUTADO DENTRO DO(S) NÓ(S) WORKER

Agora vamos ver um dos comandos que são executados dentro dos nós escravos

(worker) do ambiente Docker. O comando a seguir pode ser utilizado para

adicionar um worker ao nosso cluster (Figura 4.21). Para isso, devemos acessar o
nó escravo que queremos adicionar a um cluster e executar o comando a seguir,

passando o token de segurança e o IP do nó mestre (manager) seguido por porta,

conforme a sintaxe representada no comando:

docker swarm join --token

Figura 4.21 | Plataforma Play With Docker

Fonte: captura de tela elaborada pelo autor.

[Link] 11/17
03/03/2021 lddkls211_red_sis_dis

COMANDO EXECUTADO DENTRO DE CADA UM DOS NÓS (MANAGERS E


WORKERS)

Agora vamos ver um dos comandos executados dentro dos nós tanto worker,

quanto managers de nosso ambiente Docker. Quando executamos o comando

0
Docker system prune com o parâmetro all dentro de um nó, ele será responsável

por apagar/deletar tudo o que foi feito dentro do mesmo. Observamos a seguir

Ver anotações
sua utilização:

docker system prune --all

Agora que já conhecemos alguns comandos, vamos através da plataforma Play

With Docker orquestrar um servidor web Apache em um cluster simples.


Primeiramente, você deve estar logado na plataforma de playground do Docker,

conforme orientações já apresentadas anteriormente. Uma vez que obteve acesso

à plataforma, você deverá:

1. Criar um cluster com 3 nós, que serão su cientes para analisarmos nosso
cluster sem comprometer a usabilidade da plataforma de testes do Docker.

Sendo assim, você deve adicionar 3 nós, que farão parte do cluster, através do

botão Add new instance.

2. No nó que você deseja que seja o mestre, digite o seguinte comando:


docker swarm init --advertise-addr

Este comando de ne o nó como manager do cluster. Repare que, ao executá-

lo, é apresentada uma saída com a mensagem: “Para adicionar um worker ao

swarm, execute o seguinte comando”, conforme pode ser visto (em inglês) na
Figura 4.22. Sendo assim, é necessário copiar a saída apresentada a você (que

vai ser diferente da destacada em amarelo na Figura 4.22), pois esse comando

deverá ser executado em cada um dos demais nós do cluster, adicionando-os


como workers desse cluster.

[Link] 12/17
03/03/2021 lddkls211_red_sis_dis

Figura 4.22 | Saída do comando docker swarm init

0
Ver anotações
Fonte: captura de tela elaborada pelo autor.

3. Agora que os nós estão criados e seus papéis de nidos, para criar o serviço

que estará rodando (de maneira        distribuída, replicada) do servidor web

Apache, digite o seguinte comando no nó mestre:

docker service create --name WEB --publish 80:80 --replicas=5 httpd

Esse comando cria 5 instâncias de um servidor web Apache, que responderá na

porta mapeada (80, nesse caso) e, para facilitar sua monitoração, demos um

nome “amigável” a este serviço: WEB.

4. Para saber em quais nós as 5 réplicas desse serviço estão sendo executadas,

digite o seguinte comando:

docker service ps WEB

No caso da Figura 4.23 abaixo, podemos ver que 2 instâncias estão rodando no
nó 1, e as outras 3 estão rodando no nó 2.

Figura 4.23 | Porta mapeada aparece como um hyperlink

Fonte: captura de tela elaborada pelo autor.

5.  Por m, precisamos acessar a página de boas-vindas desse servidor Apache

através do(s) endereço(s) IPv4 de cada nó em que esse serviço web estiver

rodando. Reparou que, ao criar o serviço, a porta que você mapeou aparece na
parte superior, como um hyperlink? Caso não tenha percebido, veja a porta 80,

destacada em vermelho na Figura 4.24. Para acessar a página de boas-vindas,

[Link] 13/17
03/03/2021 lddkls211_red_sis_dis

basta clicar nessa porta, em cada um dos nós onde esse serviço está rodando (no

caso, nós 1 e 2 do cluster), para vermos a famosa mensagem “It works!” do


Apache.

0
Ver anotações

[Link] 14/17
03/03/2021 lddkls211_red_sis_dis

Figura 4.24 | Porta mapeada aparece como um hyperlink

0
Ver anotações
Fonte: captura de tela elaborada pelo autor.

Esta sequência de comandos que utilizamos para orquestrar um servidor web

Apache em 3 nós é a con guração utilizada em sistemas distribuídos, para que os

acessos a um website sejam balanceados e, caso ocorra algum problema em um

dos nós que mantêm a aplicação, o outro nó assume a execução.

REFLITA 

Parou para pensar em quantas aplicações esses conceitos podem ser


aplicados? E quantas melhorias as implantações desses conceitos podem

trazer a um sistema web?

Nesta seção você conheceu alguns comandos Docker e aprendeu a fazer uma

con guração de cluster e de nós para servidor web.

Bons estudos!

FAÇA VALER A PENA


Questão 1

Com o Docker existe uma série de comandos que devemos utilizar para realizar

determinadas tarefas dentro do cluster, por exemplo, criação de nós e de nição de

papéis de nós, como o nó mestre (manager) e o nó escravo (worker). Com isso,


devemos estar atentos à sintaxe na utilização correta dos comandos.

[Link] 15/17
03/03/2021 lddkls211_red_sis_dis

De acordo com o texto, sabemos que há um comando para criação de nós em um

cluster. Assinale a alternativa que corresponde à sintaxe correta deste comando

para a criação de um nó chamado “mestre”.

0
a. docker-cluster create --driver virtualbox mestre

Ver anotações
b. docker-machine create --driver virtualbox mestre

c. docker-machine create node --driver virtualbox mestre

d. docker-machine new --driver virtualbox mestre 

e. docker cluster create --node mestre

Questão 2

Com o Docker existe uma série de comandos que devemos utilizar para realizar

determinadas tarefas dentro do cluster, por exemplo: acessar nós via nome. Com

isso, devemos estar atentos à sintaxe na utilização correta dos comandos.

De acordo com o texto sabemos, que há um comando para acesso de nó via nome.
Assinale a alternativa que corresponde à sintaxe correta deste comando para

acessar um nó chamado “mestre”.

a. docker ssh mestre

b. docker-machine acess mestre

c. docker-machine into mestre

d. docker-machine ssh mestre

e. docker-machine create mestre

Questão 3

A instalação do Docker em máquinas com o sistema operacional Ubuntu da

distribuição GNU/Linux segue uma lista de procedimentos de acordo com a

documentação o cial do Docker. Cada etapa é importante para que a instalação

seja encerrada com sucesso.

Assinale a alternativa que traz a ordem correta de procedimentos que devem ser

realizados para a instalação do Docker no sistema operacional Ubuntu.

a.  Remover as versões anteriores do Docker, atualizar os pacotes e os repositórios, adicionar o repositório


de instalação do Docker, fazer a instalação do Docker e veri car se foi instalado corretamente.

b.  Adicionar o repositório de instalação do Docker, fazer a instalação do Docker e veri car se foi instalado
corretamente.

[Link] 16/17
03/03/2021 lddkls211_red_sis_dis

c.  Atualizar os pacotes e os repositórios e fazer a instalação do Docker.

d.  Remover as versões anteriores do Docker, atualizar os pacotes e os repositórios, fazer a instalação do


Docker e veri car se foi instalado corretamente.

e.  Atualizar os pacotes e o repositório, pois o Docker já é nativo no sistema operacional Ubuntu. 

0
Ver anotações
REFERÊNCIAS

DIEDRICH, C. Docker Swarm. Disponível em: [Link] Acesso em: 5


dez. 2018.

DOCKER (Portal) Documentação. Disponível em [Link] Acesso

em: 23 nov. 2018.

PLAY WITH DOCKER. A simple, interactive and fun playground to learn Docker.

[s.d.] Disponível em: [Link] Acesso em: 8 fev. 2019. 

[Link] 17/17
03/03/2021 lddkls211_red_sis_dis

Imprimir

FOCO NO MERCADO DE TRABALHO

SIMULANDO SISTEMAS DISTRIBUÍDOS COM DOCKER

0
Caique Silva Pereira

Ver anotações
CRIAÇÃO DE UM CONTÊINER
Criação e con guração de um contêiner para um servidor web Apache através do Docker.

Fonte: Shutterstock.

Deseja ouvir este material?

Áudio disponível no material digital.

SEM MEDO DE ERRAR

Mais um passo e a tão cobiçada vaga naquela grande empresa será sua! O
coordenador está gostando de seu desempenho nos testes e diz que, caso você
consiga orquestrar o servidor web Apache em um cluster simples, será contratado!
Desta forma:

1. Crie um cluster com cinco réplicas do servidor web Apache utilizando o Docker

Swarm.

2. Veri que em quais nós do cluster esse serviço está rodando.

[Link] 1/5
03/03/2021 lddkls211_red_sis_dis

3. Acesse a página de boas-vindas desse servidor Apache através do(s)


endereço(s) IPv4 de cada nó onde esse serviço web estiver rodando.

Para resolver esse desa o, primeiramente você deve estar logado na plataforma

0
de playground do Docker, conforme orientações já apresentadas anteriormente.

Uma vez que obteve acesso à plataforma, você deverá seguir os passos abaixo:

Ver anotações
1. Como não foi especi cada a quantidade de nós do cluster, crie o mesmo com 3

nós, que serão su cientes para analisar o cluster sem comprometer a


usabilidade da plataforma de testes do Docker. Sendo assim, adicione 3 nós,

que farão parte do cluster, através do botão Add new instance.

2. No nó que você deseja que seja o mestre, digite o seguinte comando:

docker swarm init --advertise-addr

Este comando de ne o nó como manager do cluster. Repare que, ao executá-

lo, é apresentada uma saída com a mensagem: “Para adicionar um worker ao


swarm, execute o seguinte comando”, conforme pode ser visto (em inglês) na
Figura 4.22. Sendo assim, copie a saída que foi apresentada a você (que vai ser
diferente da destacada em amarelo na Figura 4.22), pois esse comando deverá

ser executado em cada um dos demais nós do cluster, adicionando-os como


workers desse cluster.

Figura 4.22 | Saída do comando docker swarm init

Fonte: captura de tela elaborada pelo autor.

3. Agora que os nós estão criados e seus papéis de nidos, para criar o serviço
que estará rodando (de maneira distribuída, replicada) do servidor web Apache,

digite o seguinte comando no nó mestre:

docker service create --name WEB --publish 80:80 --replicas=5 httpd

Esse comando cria 5 instâncias de um servidor web Apache, que responderá na

porta mapeada (80, nesse caso) e, para facilitar sua monitoração, demos um

nome “amigável” a este serviço: WEB.

[Link] 2/5
03/03/2021 lddkls211_red_sis_dis

4. Para saber em quais nós as 5 réplicas desse serviço estão sendo executadas,

digite o seguinte comando:

docker service ps WEB

0
No caso da Figura 3.23 abaixo, podemos ver que 2 instâncias estão rodando no

nó 1, e as outras 3 estão rodando no nó 2.

Ver anotações
Figura 4.23 | Porta mapeada aparece como um hyperlink

Fonte: captura de tela elaborada pelo autor.

5. Por m, precisamos acessar a página de boas-vindas desse servidor Apache

através do(s) endereço(s) IPv4 de cada nó onde esse serviço web estiver

rodando. Reparou que, ao criar o serviço, a porta que você mapeou aparece na
parte superior, como um hyperlink? Caso não tenha percebido, veja a porta 80,

destacada em vermelho na Figura 4.24. Para acessar a página de boas-vindas,

basta clicar nessa porta, em cada um dos nós onde esse serviço está rodando

(no caso, nós 1 e 2 do cluster), para vermos a famosa mensagem “It works!” do

Apache.

Figura 4.24 | Porta mapeada aparece como um hyperlink

Fonte: captura de tela elaborada pelo autor.

AVANÇANDO NA PRÁTICA

[Link] 3/5
03/03/2021 lddkls211_red_sis_dis

CRIANDO UM CONTÊINER PARA UM SERVIDOR WEB APACHE ATRAVÉS


DO DOCKER
Você deve criar um contêiner para um servidor web Apache através do Docker e

veri car se consegue acessar a página de boas-vindas desse servidor Apache,

0
através do endereço IP de localhost da máquina física e da porta que foi mapeada

Ver anotações
na criação do contêiner.

RESOLUÇÃO 

Para ajudá-lo nesta tarefa, siga as seguintes etapas:

1. Acesse o website Play with Docker (PLAY WITH DOCKER, [s.d]).

Esse website, desenvolvido pela própria equipe do Docker, dará acesso –

limitado de 4 horas – a um ambiente remoto no qual o Docker já está

instalado, bastando digitar os comandos para criação dos contêineres.

Perceba que você necessitará realizar um cadastro (gratuito) na plataforma,


para posteriormente realizar o login nesse ambiente.

2. Uma vez logado, você poderá digitar os comandos no terminal (área preta

do portal), conforme ilustrado abaixo, após clicar no botão Add New

Instance, conforme Figura 4.25:

Figura 4.25 | Acesso ao ambiente remoto do Docker

Fonte: captura de tela elaborada pelo autor.

3. Digite o seguinte comando:

docker run -d -p 80:80 httpd

4. Agora, como o servidor web apache, instalado no contêiner, já deve estar


rodando na porta 80, basta acessar a página de boas-vindas pelo

navegador web de sua preferência, com o link composto por:

ip< endereço IP público>-<indentificador do nó>-<porta

mapeada>.[Link]

[Link] 4/5
03/03/2021 lddkls211_red_sis_dis

As informações necessárias para formatar o link de acesso, conforme


padrão acima, podem ser obtidas através da cópia dos dados de acesso

via SSH, com um clique no respectivo botão, como destacado em


vermelho na Figura 4.26.

0
Ver anotações
Figura 4.26 | Informações de acesso

Fonte: captura de tela elaborada pelo autor.

5.  A título de exemplo, o link da gura acima, após adaptado com as


informações de acesso, cou da seguinte forma: ip172-18-0-96-
b [Link]/.

6. Caso você veja a mensagem It works!, parabéns: você passou para a

próxima – e última – etapa do processo seletivo! Caso não apareça essa


mensagem, certi que-se de que você montou o link corretamente,
comparando o padrão apresentado na etapa 4, substituindo com as

informações referentes à sua conexão.

[Link] 5/5

Você também pode gostar