18
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

LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

  • Upload
    rrrighi

  • View
    16

  • Download
    0

Embed Size (px)

Citation preview

Page 1: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

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

Page 2: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

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

Page 3: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

  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)

Page 4: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

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

Page 5: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

  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)

Page 6: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

  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

Page 7: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

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

Page 8: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

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

Page 9: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

  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)

Page 10: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

  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)

Page 11: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

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 );

Page 12: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

Avaliação de Resultados (3/7)

0 50 100

Assíncrono

SíncronoTCPlibVIP NormallibVIP Alterada

Microsegundos

Troca de mensagem

Page 13: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

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);

Page 14: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

Avaliação de Resultados (5/7)

Page 15: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

Avaliação de Resultados (6/7)

Page 16: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

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.

Page 17: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

  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)

Page 18: LibVIP - Bacharel em Ciência da Computação (UFSM 2003)

  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)