SlideShare uma empresa Scribd logo
DevOps e Redes
SDN, NFV e Docker
Lucas Arbiza
Photo by Daria Sukhorukova; license: CC0
LUCAS ARBIZA
Acadêmico
Ciência da Computação:
- Mestrado UFRGS 2016
- Bacharelado UNIPAMPA 2011
Profissional
PoP-RS/RNP:
- Metropoa
- RSiX (PTT-RS)
- Rede Tchê
LICENSE
Except where otherwise noted, this presentation is licensed under a
Creative Commons Attribution 4.0 International license.
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
CONTEÚDO
- DevOps
- SDN
- NFV
- Docker
- “Now show me the code!”
4
DevOps
Photo by Eric Bailey; license: CC0
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
ORIGEM
2008
primeiras conversas -- Agile 2008
2009
Velocity, da O’Reilly -- Allspaw e Hammond -- termo DevOps
IDEIA: Agilidade para administração de infraestrutura
6
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
ORIGEM
Devs
7
Ops
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 8
By Devops.png: Rajiv.Pant derivative work: Wylve (This file was derived from Devops.png:) [CC BY 3.0 (http:
//creativecommons.org/licenses/by/3.0)], via Wikimedia Commons
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
Agilidade para a infraestrutura
9
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
Agilidade para a infraestrutura
10
Photo by Oliver Tacke; license: CC BY
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
SDN, NFV e DevOps?
Tudo junto?
11
SDN
Photo by Postcards from Inside; license: CC BY-NC-ND
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 13
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
ARQUITETURA SDN
14
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
FUNCIONAMENTO: REDES TRADICIONAIS
15
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
FUNCIONAMENTO: REDES SDN
16
? ?
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
BENEFÍCIOS COM O USO DE SDN
- Flexibilidade
- Programabilidade da rede
- Autonomia
- Abordagem centralizada
17
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
OPENFLOW
Flow entry:
18
Match fields Priority Counters Instructions Timeout Cookie
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
OPENFLOW WORKFLOW
19
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
OPENFLOW
Controlador <> switch
- Configuração:
- Proativa
- Reativa (packet in)
- Negociação de conexão
20
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
OPENFLOW
Controlador <> switch
- Features
- Adicionar flows
- Remover flows (explicita ou timeout)
- Atualizar flows
- Read-state
- Port-status (enviada pelo switch)
- Error
21
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
OPENFLOW
struct ofp_packet_in {
struct ofp_header header;
uint32_t buffer_id; /* ID assigned by datapath. */
uint16_t total_len; /* Full length of frame. */
uint8_t reason; /* Reason packet is being sent (one of OFPR_*) */
uint8_t table_id; /* ID of the table that was looked up */
uint64_t cookie; /* Cookie of the flow entry that was looked up. */
struct ofp_match match; /* Packet metadata. Variable size. */
//uint8_t pad[2]; /* Align to 64 bit + 16 bit */
//uint8_t data[0]; /* Ethernet frame */
};
OFP_ASSERT(sizeof(struct ofp_packet_in) == 32);
22
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
OPENFLOW
Controlador <> switch
- Perda de conectividade com o controlador:
- fail secure mode: continua como um switch OpenFlow
- fail standalone mode: opera como um switch L2 convencional
23
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
OPENFLOW
Recursos do OpenFlow:
- Group table
- Meter table
- Counters
24
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
OPENFLOW
Recursos do OpenFlow -- Actions:
- Action set:
- TTL
- Tags
- Sets
- QoS
- Group
- Output
- Action list
25
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
OPENFLOW CONTROLLERS
- Nox
- Pox
- Nox 1.3
- OpenDaylight
- OpenContrail
- Floodlight
- Ryu
- FlowVizor
- Libfluid
26
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS DE UTILIZAÇÃO
27
Photo by Jim Pennucci; license: CC-BY
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: Meu Mestrado
28
SDN no contexto de IoT : refatoração de middleware para
monitoramento de pacientes crônicos baseada em software-defined
networking
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT (Mestrado)
29
CENÁRIO: Projeto REMOA
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
30
Não configuráveis Configurável
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
31
Interconexão/Silo
FABRICANTE
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
32
Coleta de dados
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
33
Gerência
ICMP
SNMP
ICMP
SNMP
ICMP
SNMP
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
34
Segurança
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
35
Middleware proposto
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
36
Problemas
encontrados
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
37
REFATORAÇÃO
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
38
IoT != redes tradicionais:
- Diferentes dispositivos
- Diferentes formas de operar
- Diferentes propósitos
- Diferentes problemas
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
39
Refatoração
SDN
Chetty e Feamster (2012)
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
40
Yiakoumis et al. (2011)
Divisão da rede
em “fatias”
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
41
REFATORAÇÃO
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
42
REFATORAÇÃO
- Arquitetura
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
43
BENEFÍCIOS
- Desenvolvimento
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
44
?
BENEFÍCIOS
- Manutenção
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
45
BENEFÍCIOS
- Deployment
Leva pra lá.
SWITCH
OPENFLOW
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
46
BENEFÍCIOS
- Gerência para IoT
+1 pacote
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
47
BENEFÍCIOS
- Cooperação em IoT Flow a: # pacotes
Flow b: # pacotes
Flow c: # pacotes
...
Flow n: # pacotes
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
48
BENEFÍCIOS
- Cooperação em IoT
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
49
BENEFÍCIOS
- Cooperação em IoT
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
50
PIPELINE
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: SDN no cotexto de IoT
51
RECURSOS UTILIZADOS
CONTROLADOR E
APLICAÇÃO:
- C++(11)
- Boost++
- libfluid
ACCESS POINT:
- OpenWRT
- Open vSwitch
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: RouteFlow
52
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: OpenQoS
53
QoS tradicional:
- InfServ: reserva de recursos (Resource Reservation Protocol)
- DiffServ: filas e classificação
Proposta:
- Identificação de tráfego multimídia
- Roteamento por caminhos diferenciados
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: OpenRoads
54
Problema: handover
Proposta:
- Envio do mesmo pacote para mais de uma base
- Usuário com duas placas de rede
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: Gerência de redes
55
- Controlador: visão geral da rede
- Integração com outros protocolos e mecanismos de
gerência
Exemplos:
- Gerência de acesso a recursos a partir de eventos e políticas
de segurança
- Monitoramento de tráfego
- Autonomia e tomada de decisões
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
EXEMPLOS: iSDX
56
- Políticas L2/L3
- Definição de políticas por Json
- Coexistência com BGP
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
SDN substituirá
tudo?
57
By Unknown, scanned by Polaco77 [Public domain], via Wikimedia Commons
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 58
“Remember,
with great power
comes great
responsibility.”
(PARKER, Uncle Ben)
Image from Spider-Man movie; Columbia Pictures Corporation, Marvel Enterprises; 2002
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 59
Image from Spider-Man movie; Columbia Pictures Corporation, Marvel Enterprises; 2002
Funcionalidades da
rede:
ipservicesk9-mz.122-55.SE10.bin
by Cisco
manda-chuva-na-rede.py
by Equipe de TI
NFV
Photo by Pexels; license: CC0
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
NETWORK FUNCTIONS VIRTUALIZATION
Virtualização + Funções de rede
hummm…
Seria uma máquina virtual?
Sim!!! E não.
61
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 62
Photo by Nkululeko Masondo; license: CC BY-SA
“Uptime”
“Replacement”
By NASA (Great Images in NASA Description) [Public domain],
via Wikimedia Commons
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
NETWORK FUNCTIONS VIRTUALIZATION
- Rodar serviços em hardware de uso geral
- Implantar, remover e escalar funções facilmente
- Implantar funções onde elas são necessárias
- Entrega orquestrada e automatizada de serviços
63
Conteúdo de Cisco, “ NFV - Network Functions Virtualization”
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
NETWORK FUNCTIONS VIRTUALIZATION
BENEFÍCIOS:
- Menos custos com hardware específico
- suporte ao modelo “pay-as-you-grow”
- Menor custo de datacenter
- Reduz o tempo de entrega/produção
- Escala
64
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
NETWORK FUNCTIONS VIRTUALIZATION
Qual a relação com SDN?
Orquestração -- aplicação de SDN
SDN é essencial para NFV?
Não.
65
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
NETWORK FUNCTIONS VIRTUALIZATION
66
Imagem de SDxCentral, “What is NFV – Network Functions Virtualization – Definition?”
Docker
Photo by Tristan Taussac; license: CC BY-ND
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 68
Photo by Paul Townsend; license: CC BY-ND
CONTAINERS SÃO:
- (+-) 1 processo --
não é VM
- Finitos
- Imutáveis (cuidado
com os dados!)
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
DOCKER CONTAINERS: Rodando um container
69
## Rodando um bash em um container
$ docker run -ti --rm arbiza/alpine-bash
.
.
.
$ exit
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
DOCKER CONTAINERS: Criando imagens
70
## arquivo: Dockerfile
FROM alpine:latest
RUN apk add --update bash
ENTRYPOINT ["/bin/bash"]
## No diretório que contém o Dockerfile acima
$ docker build -t <usuário/nome-imagem>:<tag> .
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
DOCKER CONTAINERS: Comandos
docker images
docker ps (-a)
docker inspect …
docker run [-ti|-d] [--name] [-v] <imagem> comando
docker start/stop/restart
docker commit <container> <nome imagem>:<tag>
71
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
DOCKER CONTAINERS: Docker Hub
Endereço: hub.docker.com
- docker push <usuário/imagem>
72
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
DOCKER CONTAINERS: Docker Compose
73
## Arquivo docker-compose.yml
version: '2'
services:
www-volume:
build: .
container_name: www-volume
volumes:
- "./server-blocks:
/etc/nginx/conf.d"
- "/source/site1:/var/www/site1"
- "/source/site2:/var/www/site2"
# continua ali ->
…
www:
image: nginx:1.10.0-alpine
expose:
- "80"
- "443"
ports:
- "80:80"
- "443:443"
restart: always
container_name: www
volumes_from:
- www-volume
volumes:
- "/etc/nginx"
depends_on:
- www-volume
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
DOCKER CONTAINERS: Docker Compose
74
## No arquivo onde está o docker-compose.yml
$ docker-compose -d up
$ docker-compose down
$ docker-compose restart
$ docker-compose run www
Now show me the code!
Photo by Ryan McGuire; license: CC BY-SA
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Ferramentas
- Open vSwtch
- Docker
- Docker Compose
- ovs-docker
- Ryu Controller
- Terminal “bom” (Terminator, Tmux, etc.)
76
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Criando uma bridge/switch
### TERMINAL ROOT
# ovs-vsctl add-br ovs-sw
# ovs-vsctl set-controller ovs-sw tcp:127.0.0.1:6653
# ovs-vsctl set-fail-mode ovs-sw secure
77
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Verificando bridge-switch
### TERMINAL ROOT
### verificando detalhes da bridge
# ovs-vsctl show
#
### verificando flows
# ovs-ofctl dump-flows ovs-sw
78
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Criando containers
### TERMINAL USER
### Criando diretório para os arquivos de exemplo
$ mkdir <nome diretório>
$ cd <nome diretório>
$ vim docker-compose.yml
79
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Criando containers
### arquivo docker-compose.yml
version: '2'
services:
host:
image: arbiza/alpine-bash
network_mode: "none"
cap_add:
- ALL
80
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Criando containers
### TERMINAL HOST 1
$ docker-compose run --rm --name h1 host
81
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Criando containers
### TERMINAL HOST 2
$ docker-compose run --rm --name h2 host
82
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Verificando containers
### TERMINAL USER
## No diretório criado
$ docker-compose ps
## Em qualquer diretório
$ docker ps
83
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Conectando containers
### TERMINAL ROOT
# ovs-docker add-port ovs-sw eth0 h1
# ovs-docker add-port ovs-sw eth0 h2
84
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Conectando containers
### TERMINAL ROOT
# ovs-vsctl show
### TERMINAL CONTAINERS
# ip link sh
85
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Configurando containers
### TERMINAL HOST 1
# ip addr add 2001:db8::1/64 dev eth0
# ip addr add 10.0.0.1/24 dev eth0
# ip addr
86
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Configurando containers
### TERMINAL HOST 2
# ip addr add 2001:db8::2/64 dev eth0
# ip addr add 10.0.0.2/24 dev eth0
# ip addr
87
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Configurando containers
### TERMINAL HOST 1 - Ping Host 2
### O esperado é que não funcione.
# ping 2001:db8::2/64
# ping 10.0.0.2/24
88
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Instalando o controlador Ryu
89
Instalar dependências:
- python-eventlet
- python-routes
- python-webob
- python-paramiko
- python-oslo-config
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Instalando o controlador Ryu
90
Instalar OUTRAS dependências (TALVEZ):
- python-oslo-config
- python-msgpack
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Instalando o controlador Ryu
### TERMINAL USER
$ git clone git://github.com/osrg/ryu.git
$ cd ryu
$ sudo python ./setup.py install
91
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Instalando o controlador Ryu
### TERMINAL USER
### Rodando no diretório clonado
$ ryu-manager ryu/app/simple_switch.py
92
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Rodando o controlador Ryu
### TERMINAL ROOT
### Antes do ping
# ovs-ofctl dump-flows ovs-sw
93
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Configurando containers
### TERMINAL HOST 1 - Ping Host 2
### O esperado é que funcione.
# ping 2001:db8::2/64
# ping 10.0.0.2/24
94
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Rodando o controlador Ryu
### TERMINAL ROOT
### Depois do ping
# ovs-ofctl dump-flows ovs-sw
cookie=0x0, duration=3.028s, table=0, n_packets=4, n_bytes=472, idle_age=0,
in_port=2,dl_dst=e2:61:d9:55:8e:c1 actions=output:1
cookie=0x0, duration=3.027s, table=0, n_packets=3, n_bytes=354, idle_age=0,
in_port=1,dl_dst=fa:5f:0d:85:b3:8a actions=output:2
95
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: O OVS é um switch!
## Todos os comandos eu utilizei na prototipação para o MSc.
# ARP: encaminhamento normal
ovs-ofctl add-flow ovs "table=0, priority=100, dl_type=0x0806, actions=normal"
# Access Point: Input e Output
ovs-ofctl add-flow ovs "table=0, priority=10, dl_dst=2e:bb:00:f7:0c:44,
actions=resubmit(,1)"
ovs-ofctl add-flow ovs "table=0, priority=10, dl_src=2e:bb:00:f7:0c:44,
actions=resubmit(,2)"
# Table-miss
ovs-ofctl add-flow ovs "table=3, priority=0 actions=CONTROLLER:65535"
96
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: O OVS é um switch!
# SSH
ovs-ofctl add-flow ovs "table=3, priority=10, dl_type=0x0800, nw_dst=10.0.0.0/24,
nw_proto=6 , tcp_dst=22, actions=drop"
# Modificação de destino
ovs-ofctl add-flow ovs "table=4, priority=100, dl_type=0x0800, dl_src=08:00:27:5e:a2:
4d, nw_dst=8.8.8.8, nw_proto=6, tp_dst=80, actions=mod_nw_dst=200.132.0.100"
97
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
LAB NO NOTE: Limpando tudo!
## Remoção da bridge:
# ovs-vsctl del-br ovs-sw
## Containers:
## Apenas sair do terminal ou executar no diretório
## onde está o arquivo docker-compose.yml
$ docker-compose down
## Controlador:
$ Ctrl^C
98
Mantendo-se
atualizado
Photo by Tomás Fano; license: CC BY-SA
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
Updates
- SDxCentral
- LinkedIn
- Artigos/eventos
100
Meus planos
de P&D
Photo by 23am.com; license: CC BY
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
REFERÊNCIAS
Cisco, “ NFV - Network Functions Virtualization”, Online. http://www.cisco.com/c/en/us/solutions/service-
provider/network-functions-virtualization-nfv/index.html
Guto Carvalho, “O que é DevOps afinal?”, 2013. Online. http://gutocarvalho.net/octopress/2013/03/16/o-que-e-um-
devops-afinal/
H. E. Egilmez, S. T. Dane, K. T. Bagci, and A. M. Tekalp, “OpenQoS: An OpenFlow controller design for multimedia
delivery with end-to-end Quality of Service over Software-Defined Networks,” in Signal & Information Processing
Association Annual Summit and Conference (APSIPA ASC), 2012 Asia-Pacific, 2012, pp. 1–8.
L. M. R. Arbiza, L. M. R. Tarouco, L. M. Bertholdo, and L. Z. Granville, “SDN-Based Service Delivery in Smart
Environments,” in Intelligent Distributed Computing IX, P. Novais, D. Camacho, C. Analide, A. E. F. Seghrouchni, and C.
Badica, Eds. Guimarães, Portugal: Springer International Publishing, 2016, pp. 475–484.
L. M. R. Arbiza, L. M. Bertholdo, C. R. P. dos Santos, L. Z. Granville, and L. M. R. Tarouco, “Refactoring Internet of Things
Middleware Through Software-defined Network,” in Proceedings of the 30th Annual ACM Symposium on Applied
Computing, 2015, pp. 640–645.
102
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
REFERÊNCIAS
L. M. R. Arbiza, “SDN no contexto de IoT : refatoração de middleware para monitoramento de pacientes crônicos
baseada em software-defined networking,” Universidade Federal do Rio Grande do Sul, 2016.
L. M. R. Tarouco, L. M. Bertholdo, L. Z. Granville, L. M. R. Arbiza, F. Carbone, M. Marotta, and J. J. C. de Santanna,
“Internet of Things in Healthcare : Interoperatibility and Security Issues,” in IEEE International Conference on
Communications, International Workshop on Mobile Consumer Health Care Networks, Systems and Services, 2012,
pp. 6121–6125.
M. Chetty and N. Feamster, “Refactoring network infrastructure to improve manageability: a case study of home
networking,” SIGCOMM Comput. Commun. Rev., vol. 42, no. 3, pp. 54–61, 2012.
N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner, “OpenFlow:
enabling innovation in campus networks,” SIGCOMM Comput. Commun. Rev., vol. 38, no. 2, pp. 69–74, Mar. 2008.
“OpenFlow Switch Specication: Version 1.3.2.” The Open Network Foundation, ONF, 2013.
103
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
REFERÊNCIAS
RouteFlow, http://routeflow.github.io/RouteFlow/
R. Gomes and L. A. Bianchin. “ Docker para desenvolvedores”, 2016. Online. https://leanpub.
com/dockerparadesenvolvedores
S. Noble. “Network Function Virtualization or NFV Explained”, 2015. Online. Network Function Virtualization or NFV
Explained
“SDX, A Software Defined Internet Exchange Point”. Online. http://sdx.cs.princeton.edu/
SDxCentral. “What is NFV – Network Functions Virtualization – Definition?”. Online. https://www.sdxcentral.
com/nfv/definitions/whats-network-functions-virtualization-nfv/
“Software-Defined Networking: The New Norm for Networks.” The Open Network Foundation, p. 12, 2012.
104
DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016
REFERÊNCIAS
“Using all wireless networks around me”. Stanford's OpenFlow Channel on YouTube, 2010. https://www.youtube.
com/watch?v=ov1DZYINg3Y
Y. Yiakoumis, K.-K. Yap, S. Katti, G. Parulkar, and N. McKeown, “Slicing Home Networks,” in Proceedings of the 2Nd
ACM SIGCOMM Workshop on Home Networks, 2011, pp. 1–6.
105
?
KEEP
CALM
AND
ASK
QUESTIONS
CONTATO
Lucas Arbiza
lucas@pop-rs.rnp.br

Mais conteúdo relacionado

Mais procurados

São paulo docker meetup #2
São paulo docker meetup #2São paulo docker meetup #2
São paulo docker meetup #2Azuki
 
Primeiros passos com o Docker
Primeiros passos com o DockerPrimeiros passos com o Docker
Primeiros passos com o DockerWebSix
 
Introdução a Containers Docker
Introdução a Containers DockerIntrodução a Containers Docker
Introdução a Containers DockerMatheus Fidelis
 
TDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de DockerTDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de DockerStefan Teixeira
 
Docker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimentoDocker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimentoSérgio Lima
 
Re pensando-virtualização-através-linux containers
Re pensando-virtualização-através-linux containersRe pensando-virtualização-através-linux containers
Re pensando-virtualização-através-linux containersFrancisco Gonçalves
 
Desenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando DockerDesenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando DockerBruno Ricardo Siqueira
 
Containers em produção!
Containers em produção!Containers em produção!
Containers em produção!Evandro Couto
 

Mais procurados (20)

São paulo docker meetup #2
São paulo docker meetup #2São paulo docker meetup #2
São paulo docker meetup #2
 
Apresentação docker
Apresentação dockerApresentação docker
Apresentação docker
 
Bem vindo ao Docker
Bem vindo ao DockerBem vindo ao Docker
Bem vindo ao Docker
 
Introdução à plataforma Docker
Introdução à plataforma DockerIntrodução à plataforma Docker
Introdução à plataforma Docker
 
Primeiros passos com o Docker
Primeiros passos com o DockerPrimeiros passos com o Docker
Primeiros passos com o Docker
 
5. rodando containers docker na aws
5. rodando containers docker na aws5. rodando containers docker na aws
5. rodando containers docker na aws
 
Docker
DockerDocker
Docker
 
Oficina docker
Oficina dockerOficina docker
Oficina docker
 
Introdução a Containers Docker
Introdução a Containers DockerIntrodução a Containers Docker
Introdução a Containers Docker
 
Docker compose
Docker composeDocker compose
Docker compose
 
TDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de DockerTDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de Docker
 
Docker - Básico
Docker - BásicoDocker - Básico
Docker - Básico
 
Docker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimentoDocker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimento
 
O que é Docker?
O que é Docker?O que é Docker?
O que é Docker?
 
Re pensando-virtualização-através-linux containers
Re pensando-virtualização-através-linux containersRe pensando-virtualização-através-linux containers
Re pensando-virtualização-através-linux containers
 
O que é docker?
O que é docker?O que é docker?
O que é docker?
 
Freedomday2016 - Fique na caixinha, docker
Freedomday2016 - Fique na caixinha, dockerFreedomday2016 - Fique na caixinha, docker
Freedomday2016 - Fique na caixinha, docker
 
Desenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando DockerDesenvolvendo e implantando aplicações PHP utilizando Docker
Desenvolvendo e implantando aplicações PHP utilizando Docker
 
Introdução ao docker
Introdução ao dockerIntrodução ao docker
Introdução ao docker
 
Containers em produção!
Containers em produção!Containers em produção!
Containers em produção!
 

Destaque

Atividade5
Atividade5Atividade5
Atividade5abramo
 
Introdução ao NodeJS
Introdução ao NodeJSIntrodução ao NodeJS
Introdução ao NodeJSGiovanni Bassi
 
Discutindo DevOps na pratica, por Danilo Sato
Discutindo DevOps na pratica, por Danilo SatoDiscutindo DevOps na pratica, por Danilo Sato
Discutindo DevOps na pratica, por Danilo SatoThoughtworks
 
An Introduction to DevOps with Chef
An Introduction to DevOps with ChefAn Introduction to DevOps with Chef
An Introduction to DevOps with ChefJulian Dunn
 
Docker na vida real
Docker na vida realDocker na vida real
Docker na vida realFernando Ike
 
Package your Java EE Application using Docker and Kubernetes
Package your Java EE Application using Docker and KubernetesPackage your Java EE Application using Docker and Kubernetes
Package your Java EE Application using Docker and KubernetesArun Gupta
 
An Introduction to Kubernetes
An Introduction to KubernetesAn Introduction to Kubernetes
An Introduction to KubernetesImesh Gunaratne
 

Destaque (12)

Introdução ao Chef Ops
Introdução ao Chef OpsIntrodução ao Chef Ops
Introdução ao Chef Ops
 
Conhecendo mundo Node.js
Conhecendo mundo Node.jsConhecendo mundo Node.js
Conhecendo mundo Node.js
 
Atividade5
Atividade5Atividade5
Atividade5
 
Introdução ao NodeJS
Introdução ao NodeJSIntrodução ao NodeJS
Introdução ao NodeJS
 
Discutindo DevOps na pratica, por Danilo Sato
Discutindo DevOps na pratica, por Danilo SatoDiscutindo DevOps na pratica, por Danilo Sato
Discutindo DevOps na pratica, por Danilo Sato
 
An Introduction to DevOps with Chef
An Introduction to DevOps with ChefAn Introduction to DevOps with Chef
An Introduction to DevOps with Chef
 
Docker na vida real
Docker na vida realDocker na vida real
Docker na vida real
 
Webinar: Apresentando AWS Device Farm
Webinar: Apresentando AWS Device Farm Webinar: Apresentando AWS Device Farm
Webinar: Apresentando AWS Device Farm
 
Package your Java EE Application using Docker and Kubernetes
Package your Java EE Application using Docker and KubernetesPackage your Java EE Application using Docker and Kubernetes
Package your Java EE Application using Docker and Kubernetes
 
DevOps
DevOpsDevOps
DevOps
 
An Introduction to Kubernetes
An Introduction to KubernetesAn Introduction to Kubernetes
An Introduction to Kubernetes
 
reveal.js 3.0.0
reveal.js 3.0.0reveal.js 3.0.0
reveal.js 3.0.0
 

Semelhante a DevOps e redes -- SDN NFV e Docker

Aplicações 12 fatores, melhor com Docker
Aplicações 12 fatores, melhor com DockerAplicações 12 fatores, melhor com Docker
Aplicações 12 fatores, melhor com DockerWellington Silva
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014Giovanni Bassi
 
Utilização de DevOps
Utilização de DevOpsUtilização de DevOps
Utilização de DevOpsCaio Candido
 
VoltDB: as vantagens e os desafios dos banco de dados NewSQL
VoltDB: as vantagens e os desafios dos banco de dados NewSQLVoltDB: as vantagens e os desafios dos banco de dados NewSQL
VoltDB: as vantagens e os desafios dos banco de dados NewSQLLuiz Henrique Zambom Santana
 
WPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBREWPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBREFIBRE Testbed
 
TDC2018SP | Trilha Testes II - Descomplicando a montagem de ambientes de Test...
TDC2018SP | Trilha Testes II - Descomplicando a montagem de ambientes de Test...TDC2018SP | Trilha Testes II - Descomplicando a montagem de ambientes de Test...
TDC2018SP | Trilha Testes II - Descomplicando a montagem de ambientes de Test...tdc-globalcode
 
Descomplicando a montagem de ambientes de Testes com Docker - TDC 2018 - São ...
Descomplicando a montagem de ambientes de Testes com Docker - TDC 2018 - São ...Descomplicando a montagem de ambientes de Testes com Docker - TDC 2018 - São ...
Descomplicando a montagem de ambientes de Testes com Docker - TDC 2018 - São ...Renato Groff
 
TCC - O PROTOCOLO IPV6 E SUAS FORMAS DE IMPLANTAÇÃO
TCC - O PROTOCOLO IPV6 E SUAS FORMAS DE IMPLANTAÇÃOTCC - O PROTOCOLO IPV6 E SUAS FORMAS DE IMPLANTAÇÃO
TCC - O PROTOCOLO IPV6 E SUAS FORMAS DE IMPLANTAÇÃOEvandro Donel Foster
 
Instanciando a Arquitetura Lambda com GraphX e Elasticsearch 2.0 em uma apl...
Instanciando a Arquitetura Lambda com  GraphX e Elasticsearch 2.0  em uma apl...Instanciando a Arquitetura Lambda com  GraphX e Elasticsearch 2.0  em uma apl...
Instanciando a Arquitetura Lambda com GraphX e Elasticsearch 2.0 em uma apl...Luiz Henrique Zambom Santana
 
O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014
O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014
O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014Marcelo Dieder
 
Continuous Delivery com ArgoCD
Continuous Delivery com ArgoCDContinuous Delivery com ArgoCD
Continuous Delivery com ArgoCDRodrigo Souza
 
Instalando arquitetura Lambda com Graphx e Elasticsearch 2.0 em uma aplicação...
Instalando arquitetura Lambda com Graphx e Elasticsearch 2.0 em uma aplicação...Instalando arquitetura Lambda com Graphx e Elasticsearch 2.0 em uma aplicação...
Instalando arquitetura Lambda com Graphx e Elasticsearch 2.0 em uma aplicação...tdc-globalcode
 
LocalStack - TDC Porto Alegre 2020
LocalStack - TDC Porto Alegre 2020LocalStack - TDC Porto Alegre 2020
LocalStack - TDC Porto Alegre 2020Roberto Alves
 
Tecnologia java para sockets
Tecnologia java para socketsTecnologia java para sockets
Tecnologia java para socketslucascsoliveira
 
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...Renato Groff
 
Latinoware 2019 - Kubernetes a plataforma de grandes ideias
Latinoware 2019 - Kubernetes a plataforma de grandes ideiasLatinoware 2019 - Kubernetes a plataforma de grandes ideias
Latinoware 2019 - Kubernetes a plataforma de grandes ideiasRaul Leite
 
Internet das coisas - A revolução já começou
Internet das coisas - A revolução já começouInternet das coisas - A revolução já começou
Internet das coisas - A revolução já começouJose Wilker
 
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...Renato Groff
 
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...Renato Groff
 

Semelhante a DevOps e redes -- SDN NFV e Docker (20)

Aplicações 12 fatores, melhor com Docker
Aplicações 12 fatores, melhor com DockerAplicações 12 fatores, melhor com Docker
Aplicações 12 fatores, melhor com Docker
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014
 
Utilização de DevOps
Utilização de DevOpsUtilização de DevOps
Utilização de DevOps
 
VoltDB: as vantagens e os desafios dos banco de dados NewSQL
VoltDB: as vantagens e os desafios dos banco de dados NewSQLVoltDB: as vantagens e os desafios dos banco de dados NewSQL
VoltDB: as vantagens e os desafios dos banco de dados NewSQL
 
WPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBREWPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBRE
 
TDC2018SP | Trilha Testes II - Descomplicando a montagem de ambientes de Test...
TDC2018SP | Trilha Testes II - Descomplicando a montagem de ambientes de Test...TDC2018SP | Trilha Testes II - Descomplicando a montagem de ambientes de Test...
TDC2018SP | Trilha Testes II - Descomplicando a montagem de ambientes de Test...
 
Descomplicando a montagem de ambientes de Testes com Docker - TDC 2018 - São ...
Descomplicando a montagem de ambientes de Testes com Docker - TDC 2018 - São ...Descomplicando a montagem de ambientes de Testes com Docker - TDC 2018 - São ...
Descomplicando a montagem de ambientes de Testes com Docker - TDC 2018 - São ...
 
TCC - O PROTOCOLO IPV6 E SUAS FORMAS DE IMPLANTAÇÃO
TCC - O PROTOCOLO IPV6 E SUAS FORMAS DE IMPLANTAÇÃOTCC - O PROTOCOLO IPV6 E SUAS FORMAS DE IMPLANTAÇÃO
TCC - O PROTOCOLO IPV6 E SUAS FORMAS DE IMPLANTAÇÃO
 
Instanciando a Arquitetura Lambda com GraphX e Elasticsearch 2.0 em uma apl...
Instanciando a Arquitetura Lambda com  GraphX e Elasticsearch 2.0  em uma apl...Instanciando a Arquitetura Lambda com  GraphX e Elasticsearch 2.0  em uma apl...
Instanciando a Arquitetura Lambda com GraphX e Elasticsearch 2.0 em uma apl...
 
O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014
O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014
O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014
 
Continuous Delivery com ArgoCD
Continuous Delivery com ArgoCDContinuous Delivery com ArgoCD
Continuous Delivery com ArgoCD
 
Instalando arquitetura Lambda com Graphx e Elasticsearch 2.0 em uma aplicação...
Instalando arquitetura Lambda com Graphx e Elasticsearch 2.0 em uma aplicação...Instalando arquitetura Lambda com Graphx e Elasticsearch 2.0 em uma aplicação...
Instalando arquitetura Lambda com Graphx e Elasticsearch 2.0 em uma aplicação...
 
LocalStack - TDC Porto Alegre 2020
LocalStack - TDC Porto Alegre 2020LocalStack - TDC Porto Alegre 2020
LocalStack - TDC Porto Alegre 2020
 
Tecnologia java para sockets
Tecnologia java para socketsTecnologia java para sockets
Tecnologia java para sockets
 
Iptables layer7
Iptables layer7Iptables layer7
Iptables layer7
 
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
 
Latinoware 2019 - Kubernetes a plataforma de grandes ideias
Latinoware 2019 - Kubernetes a plataforma de grandes ideiasLatinoware 2019 - Kubernetes a plataforma de grandes ideias
Latinoware 2019 - Kubernetes a plataforma de grandes ideias
 
Internet das coisas - A revolução já começou
Internet das coisas - A revolução já começouInternet das coisas - A revolução já começou
Internet das coisas - A revolução já começou
 
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
Linux e Docker: novas possibilidades com tecnologias Microsoft - 2o. Stone Te...
 
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
 

DevOps e redes -- SDN NFV e Docker

  • 1. DevOps e Redes SDN, NFV e Docker Lucas Arbiza Photo by Daria Sukhorukova; license: CC0
  • 2. LUCAS ARBIZA Acadêmico Ciência da Computação: - Mestrado UFRGS 2016 - Bacharelado UNIPAMPA 2011 Profissional PoP-RS/RNP: - Metropoa - RSiX (PTT-RS) - Rede Tchê
  • 3. LICENSE Except where otherwise noted, this presentation is licensed under a Creative Commons Attribution 4.0 International license.
  • 4. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 CONTEÚDO - DevOps - SDN - NFV - Docker - “Now show me the code!” 4
  • 5. DevOps Photo by Eric Bailey; license: CC0
  • 6. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 ORIGEM 2008 primeiras conversas -- Agile 2008 2009 Velocity, da O’Reilly -- Allspaw e Hammond -- termo DevOps IDEIA: Agilidade para administração de infraestrutura 6
  • 7. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 ORIGEM Devs 7 Ops
  • 8. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 8 By Devops.png: Rajiv.Pant derivative work: Wylve (This file was derived from Devops.png:) [CC BY 3.0 (http: //creativecommons.org/licenses/by/3.0)], via Wikimedia Commons
  • 9. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 Agilidade para a infraestrutura 9
  • 10. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 Agilidade para a infraestrutura 10 Photo by Oliver Tacke; license: CC BY
  • 11. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 SDN, NFV e DevOps? Tudo junto? 11
  • 12. SDN Photo by Postcards from Inside; license: CC BY-NC-ND
  • 13. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 13
  • 14. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 ARQUITETURA SDN 14
  • 15. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 FUNCIONAMENTO: REDES TRADICIONAIS 15
  • 16. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 FUNCIONAMENTO: REDES SDN 16 ? ?
  • 17. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 BENEFÍCIOS COM O USO DE SDN - Flexibilidade - Programabilidade da rede - Autonomia - Abordagem centralizada 17
  • 18. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 OPENFLOW Flow entry: 18 Match fields Priority Counters Instructions Timeout Cookie
  • 19. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 OPENFLOW WORKFLOW 19
  • 20. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 OPENFLOW Controlador <> switch - Configuração: - Proativa - Reativa (packet in) - Negociação de conexão 20
  • 21. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 OPENFLOW Controlador <> switch - Features - Adicionar flows - Remover flows (explicita ou timeout) - Atualizar flows - Read-state - Port-status (enviada pelo switch) - Error 21
  • 22. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 OPENFLOW struct ofp_packet_in { struct ofp_header header; uint32_t buffer_id; /* ID assigned by datapath. */ uint16_t total_len; /* Full length of frame. */ uint8_t reason; /* Reason packet is being sent (one of OFPR_*) */ uint8_t table_id; /* ID of the table that was looked up */ uint64_t cookie; /* Cookie of the flow entry that was looked up. */ struct ofp_match match; /* Packet metadata. Variable size. */ //uint8_t pad[2]; /* Align to 64 bit + 16 bit */ //uint8_t data[0]; /* Ethernet frame */ }; OFP_ASSERT(sizeof(struct ofp_packet_in) == 32); 22
  • 23. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 OPENFLOW Controlador <> switch - Perda de conectividade com o controlador: - fail secure mode: continua como um switch OpenFlow - fail standalone mode: opera como um switch L2 convencional 23
  • 24. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 OPENFLOW Recursos do OpenFlow: - Group table - Meter table - Counters 24
  • 25. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 OPENFLOW Recursos do OpenFlow -- Actions: - Action set: - TTL - Tags - Sets - QoS - Group - Output - Action list 25
  • 26. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 OPENFLOW CONTROLLERS - Nox - Pox - Nox 1.3 - OpenDaylight - OpenContrail - Floodlight - Ryu - FlowVizor - Libfluid 26
  • 27. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS DE UTILIZAÇÃO 27 Photo by Jim Pennucci; license: CC-BY
  • 28. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: Meu Mestrado 28 SDN no contexto de IoT : refatoração de middleware para monitoramento de pacientes crônicos baseada em software-defined networking
  • 29. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT (Mestrado) 29 CENÁRIO: Projeto REMOA
  • 30. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 30 Não configuráveis Configurável
  • 31. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 31 Interconexão/Silo FABRICANTE
  • 32. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 32 Coleta de dados
  • 33. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 33 Gerência ICMP SNMP ICMP SNMP ICMP SNMP
  • 34. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 34 Segurança
  • 35. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 35 Middleware proposto
  • 36. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 36 Problemas encontrados
  • 37. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 37 REFATORAÇÃO
  • 38. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 38 IoT != redes tradicionais: - Diferentes dispositivos - Diferentes formas de operar - Diferentes propósitos - Diferentes problemas
  • 39. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 39 Refatoração SDN Chetty e Feamster (2012)
  • 40. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 40 Yiakoumis et al. (2011) Divisão da rede em “fatias”
  • 41. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 41 REFATORAÇÃO
  • 42. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 42 REFATORAÇÃO - Arquitetura
  • 43. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 43 BENEFÍCIOS - Desenvolvimento
  • 44. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 44 ? BENEFÍCIOS - Manutenção
  • 45. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 45 BENEFÍCIOS - Deployment Leva pra lá. SWITCH OPENFLOW
  • 46. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 46 BENEFÍCIOS - Gerência para IoT +1 pacote
  • 47. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 47 BENEFÍCIOS - Cooperação em IoT Flow a: # pacotes Flow b: # pacotes Flow c: # pacotes ... Flow n: # pacotes
  • 48. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 48 BENEFÍCIOS - Cooperação em IoT
  • 49. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 49 BENEFÍCIOS - Cooperação em IoT
  • 50. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 50 PIPELINE
  • 51. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: SDN no cotexto de IoT 51 RECURSOS UTILIZADOS CONTROLADOR E APLICAÇÃO: - C++(11) - Boost++ - libfluid ACCESS POINT: - OpenWRT - Open vSwitch
  • 52. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: RouteFlow 52
  • 53. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: OpenQoS 53 QoS tradicional: - InfServ: reserva de recursos (Resource Reservation Protocol) - DiffServ: filas e classificação Proposta: - Identificação de tráfego multimídia - Roteamento por caminhos diferenciados
  • 54. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: OpenRoads 54 Problema: handover Proposta: - Envio do mesmo pacote para mais de uma base - Usuário com duas placas de rede
  • 55. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: Gerência de redes 55 - Controlador: visão geral da rede - Integração com outros protocolos e mecanismos de gerência Exemplos: - Gerência de acesso a recursos a partir de eventos e políticas de segurança - Monitoramento de tráfego - Autonomia e tomada de decisões
  • 56. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 EXEMPLOS: iSDX 56 - Políticas L2/L3 - Definição de políticas por Json - Coexistência com BGP
  • 57. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 SDN substituirá tudo? 57 By Unknown, scanned by Polaco77 [Public domain], via Wikimedia Commons
  • 58. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 58 “Remember, with great power comes great responsibility.” (PARKER, Uncle Ben) Image from Spider-Man movie; Columbia Pictures Corporation, Marvel Enterprises; 2002
  • 59. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 59 Image from Spider-Man movie; Columbia Pictures Corporation, Marvel Enterprises; 2002 Funcionalidades da rede: ipservicesk9-mz.122-55.SE10.bin by Cisco manda-chuva-na-rede.py by Equipe de TI
  • 60. NFV Photo by Pexels; license: CC0
  • 61. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 NETWORK FUNCTIONS VIRTUALIZATION Virtualização + Funções de rede hummm… Seria uma máquina virtual? Sim!!! E não. 61
  • 62. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 62 Photo by Nkululeko Masondo; license: CC BY-SA “Uptime” “Replacement” By NASA (Great Images in NASA Description) [Public domain], via Wikimedia Commons
  • 63. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 NETWORK FUNCTIONS VIRTUALIZATION - Rodar serviços em hardware de uso geral - Implantar, remover e escalar funções facilmente - Implantar funções onde elas são necessárias - Entrega orquestrada e automatizada de serviços 63 Conteúdo de Cisco, “ NFV - Network Functions Virtualization”
  • 64. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 NETWORK FUNCTIONS VIRTUALIZATION BENEFÍCIOS: - Menos custos com hardware específico - suporte ao modelo “pay-as-you-grow” - Menor custo de datacenter - Reduz o tempo de entrega/produção - Escala 64
  • 65. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 NETWORK FUNCTIONS VIRTUALIZATION Qual a relação com SDN? Orquestração -- aplicação de SDN SDN é essencial para NFV? Não. 65
  • 66. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 NETWORK FUNCTIONS VIRTUALIZATION 66 Imagem de SDxCentral, “What is NFV – Network Functions Virtualization – Definition?”
  • 67. Docker Photo by Tristan Taussac; license: CC BY-ND
  • 68. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 68 Photo by Paul Townsend; license: CC BY-ND CONTAINERS SÃO: - (+-) 1 processo -- não é VM - Finitos - Imutáveis (cuidado com os dados!)
  • 69. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 DOCKER CONTAINERS: Rodando um container 69 ## Rodando um bash em um container $ docker run -ti --rm arbiza/alpine-bash . . . $ exit
  • 70. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 DOCKER CONTAINERS: Criando imagens 70 ## arquivo: Dockerfile FROM alpine:latest RUN apk add --update bash ENTRYPOINT ["/bin/bash"] ## No diretório que contém o Dockerfile acima $ docker build -t <usuário/nome-imagem>:<tag> .
  • 71. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 DOCKER CONTAINERS: Comandos docker images docker ps (-a) docker inspect … docker run [-ti|-d] [--name] [-v] <imagem> comando docker start/stop/restart docker commit <container> <nome imagem>:<tag> 71
  • 72. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 DOCKER CONTAINERS: Docker Hub Endereço: hub.docker.com - docker push <usuário/imagem> 72
  • 73. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 DOCKER CONTAINERS: Docker Compose 73 ## Arquivo docker-compose.yml version: '2' services: www-volume: build: . container_name: www-volume volumes: - "./server-blocks: /etc/nginx/conf.d" - "/source/site1:/var/www/site1" - "/source/site2:/var/www/site2" # continua ali -> … www: image: nginx:1.10.0-alpine expose: - "80" - "443" ports: - "80:80" - "443:443" restart: always container_name: www volumes_from: - www-volume volumes: - "/etc/nginx" depends_on: - www-volume
  • 74. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 DOCKER CONTAINERS: Docker Compose 74 ## No arquivo onde está o docker-compose.yml $ docker-compose -d up $ docker-compose down $ docker-compose restart $ docker-compose run www
  • 75. Now show me the code! Photo by Ryan McGuire; license: CC BY-SA
  • 76. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Ferramentas - Open vSwtch - Docker - Docker Compose - ovs-docker - Ryu Controller - Terminal “bom” (Terminator, Tmux, etc.) 76
  • 77. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Criando uma bridge/switch ### TERMINAL ROOT # ovs-vsctl add-br ovs-sw # ovs-vsctl set-controller ovs-sw tcp:127.0.0.1:6653 # ovs-vsctl set-fail-mode ovs-sw secure 77
  • 78. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Verificando bridge-switch ### TERMINAL ROOT ### verificando detalhes da bridge # ovs-vsctl show # ### verificando flows # ovs-ofctl dump-flows ovs-sw 78
  • 79. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Criando containers ### TERMINAL USER ### Criando diretório para os arquivos de exemplo $ mkdir <nome diretório> $ cd <nome diretório> $ vim docker-compose.yml 79
  • 80. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Criando containers ### arquivo docker-compose.yml version: '2' services: host: image: arbiza/alpine-bash network_mode: "none" cap_add: - ALL 80
  • 81. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Criando containers ### TERMINAL HOST 1 $ docker-compose run --rm --name h1 host 81
  • 82. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Criando containers ### TERMINAL HOST 2 $ docker-compose run --rm --name h2 host 82
  • 83. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Verificando containers ### TERMINAL USER ## No diretório criado $ docker-compose ps ## Em qualquer diretório $ docker ps 83
  • 84. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Conectando containers ### TERMINAL ROOT # ovs-docker add-port ovs-sw eth0 h1 # ovs-docker add-port ovs-sw eth0 h2 84
  • 85. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Conectando containers ### TERMINAL ROOT # ovs-vsctl show ### TERMINAL CONTAINERS # ip link sh 85
  • 86. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Configurando containers ### TERMINAL HOST 1 # ip addr add 2001:db8::1/64 dev eth0 # ip addr add 10.0.0.1/24 dev eth0 # ip addr 86
  • 87. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Configurando containers ### TERMINAL HOST 2 # ip addr add 2001:db8::2/64 dev eth0 # ip addr add 10.0.0.2/24 dev eth0 # ip addr 87
  • 88. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Configurando containers ### TERMINAL HOST 1 - Ping Host 2 ### O esperado é que não funcione. # ping 2001:db8::2/64 # ping 10.0.0.2/24 88
  • 89. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Instalando o controlador Ryu 89 Instalar dependências: - python-eventlet - python-routes - python-webob - python-paramiko - python-oslo-config
  • 90. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Instalando o controlador Ryu 90 Instalar OUTRAS dependências (TALVEZ): - python-oslo-config - python-msgpack
  • 91. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Instalando o controlador Ryu ### TERMINAL USER $ git clone git://github.com/osrg/ryu.git $ cd ryu $ sudo python ./setup.py install 91
  • 92. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Instalando o controlador Ryu ### TERMINAL USER ### Rodando no diretório clonado $ ryu-manager ryu/app/simple_switch.py 92
  • 93. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Rodando o controlador Ryu ### TERMINAL ROOT ### Antes do ping # ovs-ofctl dump-flows ovs-sw 93
  • 94. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Configurando containers ### TERMINAL HOST 1 - Ping Host 2 ### O esperado é que funcione. # ping 2001:db8::2/64 # ping 10.0.0.2/24 94
  • 95. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Rodando o controlador Ryu ### TERMINAL ROOT ### Depois do ping # ovs-ofctl dump-flows ovs-sw cookie=0x0, duration=3.028s, table=0, n_packets=4, n_bytes=472, idle_age=0, in_port=2,dl_dst=e2:61:d9:55:8e:c1 actions=output:1 cookie=0x0, duration=3.027s, table=0, n_packets=3, n_bytes=354, idle_age=0, in_port=1,dl_dst=fa:5f:0d:85:b3:8a actions=output:2 95
  • 96. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: O OVS é um switch! ## Todos os comandos eu utilizei na prototipação para o MSc. # ARP: encaminhamento normal ovs-ofctl add-flow ovs "table=0, priority=100, dl_type=0x0806, actions=normal" # Access Point: Input e Output ovs-ofctl add-flow ovs "table=0, priority=10, dl_dst=2e:bb:00:f7:0c:44, actions=resubmit(,1)" ovs-ofctl add-flow ovs "table=0, priority=10, dl_src=2e:bb:00:f7:0c:44, actions=resubmit(,2)" # Table-miss ovs-ofctl add-flow ovs "table=3, priority=0 actions=CONTROLLER:65535" 96
  • 97. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: O OVS é um switch! # SSH ovs-ofctl add-flow ovs "table=3, priority=10, dl_type=0x0800, nw_dst=10.0.0.0/24, nw_proto=6 , tcp_dst=22, actions=drop" # Modificação de destino ovs-ofctl add-flow ovs "table=4, priority=100, dl_type=0x0800, dl_src=08:00:27:5e:a2: 4d, nw_dst=8.8.8.8, nw_proto=6, tp_dst=80, actions=mod_nw_dst=200.132.0.100" 97
  • 98. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 LAB NO NOTE: Limpando tudo! ## Remoção da bridge: # ovs-vsctl del-br ovs-sw ## Containers: ## Apenas sair do terminal ou executar no diretório ## onde está o arquivo docker-compose.yml $ docker-compose down ## Controlador: $ Ctrl^C 98
  • 99. Mantendo-se atualizado Photo by Tomás Fano; license: CC BY-SA
  • 100. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 Updates - SDxCentral - LinkedIn - Artigos/eventos 100
  • 101. Meus planos de P&D Photo by 23am.com; license: CC BY
  • 102. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 REFERÊNCIAS Cisco, “ NFV - Network Functions Virtualization”, Online. http://www.cisco.com/c/en/us/solutions/service- provider/network-functions-virtualization-nfv/index.html Guto Carvalho, “O que é DevOps afinal?”, 2013. Online. http://gutocarvalho.net/octopress/2013/03/16/o-que-e-um- devops-afinal/ H. E. Egilmez, S. T. Dane, K. T. Bagci, and A. M. Tekalp, “OpenQoS: An OpenFlow controller design for multimedia delivery with end-to-end Quality of Service over Software-Defined Networks,” in Signal & Information Processing Association Annual Summit and Conference (APSIPA ASC), 2012 Asia-Pacific, 2012, pp. 1–8. L. M. R. Arbiza, L. M. R. Tarouco, L. M. Bertholdo, and L. Z. Granville, “SDN-Based Service Delivery in Smart Environments,” in Intelligent Distributed Computing IX, P. Novais, D. Camacho, C. Analide, A. E. F. Seghrouchni, and C. Badica, Eds. Guimarães, Portugal: Springer International Publishing, 2016, pp. 475–484. L. M. R. Arbiza, L. M. Bertholdo, C. R. P. dos Santos, L. Z. Granville, and L. M. R. Tarouco, “Refactoring Internet of Things Middleware Through Software-defined Network,” in Proceedings of the 30th Annual ACM Symposium on Applied Computing, 2015, pp. 640–645. 102
  • 103. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 REFERÊNCIAS L. M. R. Arbiza, “SDN no contexto de IoT : refatoração de middleware para monitoramento de pacientes crônicos baseada em software-defined networking,” Universidade Federal do Rio Grande do Sul, 2016. L. M. R. Tarouco, L. M. Bertholdo, L. Z. Granville, L. M. R. Arbiza, F. Carbone, M. Marotta, and J. J. C. de Santanna, “Internet of Things in Healthcare : Interoperatibility and Security Issues,” in IEEE International Conference on Communications, International Workshop on Mobile Consumer Health Care Networks, Systems and Services, 2012, pp. 6121–6125. M. Chetty and N. Feamster, “Refactoring network infrastructure to improve manageability: a case study of home networking,” SIGCOMM Comput. Commun. Rev., vol. 42, no. 3, pp. 54–61, 2012. N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner, “OpenFlow: enabling innovation in campus networks,” SIGCOMM Comput. Commun. Rev., vol. 38, no. 2, pp. 69–74, Mar. 2008. “OpenFlow Switch Specication: Version 1.3.2.” The Open Network Foundation, ONF, 2013. 103
  • 104. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 REFERÊNCIAS RouteFlow, http://routeflow.github.io/RouteFlow/ R. Gomes and L. A. Bianchin. “ Docker para desenvolvedores”, 2016. Online. https://leanpub. com/dockerparadesenvolvedores S. Noble. “Network Function Virtualization or NFV Explained”, 2015. Online. Network Function Virtualization or NFV Explained “SDX, A Software Defined Internet Exchange Point”. Online. http://sdx.cs.princeton.edu/ SDxCentral. “What is NFV – Network Functions Virtualization – Definition?”. Online. https://www.sdxcentral. com/nfv/definitions/whats-network-functions-virtualization-nfv/ “Software-Defined Networking: The New Norm for Networks.” The Open Network Foundation, p. 12, 2012. 104
  • 105. DevOps e redes: SDN, NFV e Docker - Lucas Arbiza - 06/2016 REFERÊNCIAS “Using all wireless networks around me”. Stanford's OpenFlow Channel on YouTube, 2010. https://www.youtube. com/watch?v=ov1DZYINg3Y Y. Yiakoumis, K.-K. Yap, S. Katti, G. Parulkar, and N. McKeown, “Slicing Home Networks,” in Proceedings of the 2Nd ACM SIGCOMM Workshop on Home Networks, 2011, pp. 1–6. 105