Upload
rrrighi
View
16
Download
0
Embed Size (px)
Citation preview
libVIP – Desenvolvimento em Nível de Usuário de uma Biblioteca de Comunicação que Implementa o
Protocolo de Interface Virtual - VIA
Rodrigo da Rosa Righi Orientador : Prof. Dr. Marcelo Pasin
Palavras-chaves: aglomerados, desempenho, redes, portabilidade
Sumário
Introdução A Arquitetura de Interface Virtual Motivação para construção da biblioteca VIP Características da biblioteca VIP Funcionamento biblioteca VIP Modalidades de Comunicação com a libVIP Análise de Resultados Conclusões Trabalhos Futuros
Arquitetura de Aglomerado de Computadores Comunicação por troca de mensagens
Protocolos tradicionais: TCP/IP e UDP/IP
Sistema operacional Sobrecarga de comunicação
Projeto de protocolos eficientes Arquitetura de Interface Virtual - VIA
Introdução (1/1)
Arquitetura de Interface Virtual – VIA (1/1)
Especificação VIA - 1996 API – Funções e semântica Idéia principal
Desviar o sistema operacional Interface Virtual – Ligação direta
entre o usuário e a interface de rede Fila de envio e recepção
Núcleo do Sistema operacional – Controle da conexão
Núcleo
Núcleo
U U U
U U U
Interface Virtual
Protocolos Tradicionais
Protocolo VIA
Adaptadores VIA difíceis de serem encontrados Bibliotecas VIA
Emular VIA para outros adaptadores Módulo VIA no núcleo
Motivação Desenvolvimento de uma biblioteca VIA sem
módulo VIA no núcleo do sistema operacional
Motivação para Construção da Biblioteca VIP (1/1)
Sistema operacional POSIX (Linux) Baseada na especificação VIA
Portabilidade com o TCP/IP Assíncrona Interfaces virtuais
Ponto final de comunicação Comunicação com descritores
Requisições de troca de mensagem
Características da libVIP (1/1)
Interface Virtual envio recepção
Funcionamento da libVIP (1/2)
Interface Virtual envio recepção
Operação de postagem de um descritor Operação de espera por um descritor completado 2 Fluxos de Execução – Demônios
Realizam a operação de troca de mensagem
Demônio Envio
Demônio Recepção
Funcionamento da libVIP (2/2)
Utilização da biblioteca Modelo assíncrono Modelo síncrono
Coloca_Descritor_1
Coloca_Descritor_2
Espera_Descritor_1
Espera_Descritor_2
Coloca_Descritor_1
Espera_Descritor_1
Coloca_Descritor_2
Espera_Descritor_2
Modelo síncrono Modelo assíncrono
Momento da criação de uma interface virtual Atributos de confiabilidade
libVIP alterada – Modificações no descritor de comunicação TCP_NODELAY SO_PRIORITY
libVIP padrão
Modalidades de Comunicação com a libVIP (1/1)
2 máquinas do aglomerado do LSC Adaptador de rede: 3C996-T Gigabit Ethernet 3 Aplicações
Latência de comunicação Largura de banda e tempo de comunicação Transmissão de um Fractal
Versões: libVIP normal, libVIP alterada e TCP
Avaliação de Resultados (1/7)
Avaliação de Resultados (2/7)
Latência Objetivo: Calcular sobrecarga na comunicação libVIP – Modelo assíncrono e síncrono Algoritmo
Repete de i= 0 até 10000
t1 = tempo_agora();
troca_de_mensagem();
t2 = tempo_agora();
verifica_menor_tempo( menor_tempo, ( t2 – t1 )/2 );
Avaliação de Resultados (3/7)
0 50 100
Assíncrono
SíncronoTCPlibVIP NormallibVIP Alterada
Microsegundos
Troca de mensagem
Avaliação de Resultados (4/7)
Tempo de Comunicação e Largura de Banda Objetivo: Verificar a libVIP assíncrona Aplicação Ping-Pong Mensagens de 10 bytes a 100 kbytes Algoritmo
t1 = tempo_agora();
Repete de i= 0 até numero_pacotes
troca_de_mensagem();
t2 = tempo_agora();
Calcula_tempo_Largura_banda( t2 – t1);
Avaliação de Resultados (5/7)
Avaliação de Resultados (6/7)
Avaliação de Resultados (7/7)
Transmissão do fractal de Mandelbrot Objetivo: Corretude da troca de mensagem Janela gráfica de 800x800 pixels Modelo A – Realizam-se 800 trocas de mensagem Modelo B – Realiza-se 1 troca de mensagem.
libVIP – Biblioteca assíncrona 2 fluxos de execução para a troca de mensagens Modelos para aproveitar o desempenho
libVIP atinge bons índices de desempenho com o assincronismo
libVIP implementa um subconjunto de 12 funções VIA Biblioteca é estável, portável e proporciona
segurança na transmissão de dados
Conclusões (1/1)
Portabilidade para ambiente Windows Escrever a biblioteca com o protocolo UDP Implementar as demais funções VIA Pesquisa sobre a Arquitetura Infiniband
Sucessora da Arquitetura de Interface Virtual
Trabalhos Futuros (1/1)