Educação, Computação e Web
Dr. José Palazzo Moreira de Oliveira

Professor Titular do Instituto de Informática da UFRGS

Home ] Acima ] Recursos ] Conceitos ] Fundamentos ] [ Conectividade ] Normas técnicas ] Dados ] 

Conectividade

 

 

1 Interfaces para conectividade

  • NetBIOS

  • IPX/SPX

  • Sockets

  • RPC

1.1     NetBIOS

NetBIOS desenvolvido originalmente por Sytek Inc. (agosto de 84)

  • localizado no IBM PC Network LAN Adaptor - LANA como uma extensão para o BIOS ROM

  • oferece um interface de programação no nível de sessão do modelo OSI

  • as aplicações interagem com o NetBIOS via uma estrutura denominada Network Control Block - NCB

  • a aplicação preenche o NCB e passa o controle para o NetBIOS

  • a aplicação chama NetBiosSubmit() para submeter uma NCB

  • dois tipos de tranferência: sessão e datagrama

  • até 244 sessões por adaptador

  • alguns comandos

    • NCB_LISTEN

    • NCB_CALL

    • NCB_SEND

    • NCB_RECEIVE

    • NCB_HANGUP

Oferece um sólido ambiente para desenvolvimento e  é um padrão de facto  para PC LANs. Entretanto é necessário um  longo desenvolvimento de produtos e debugging custoso.

1.3     Internetwork Packet Exchange / Sequenced Packet Exchange

Protocolos introduzidos pela Novell na NetWare LAN

  •      Internetwork Packet Exchange - IPX

    • É um serviço datagrama,  interface de programação no nível de transporte

    • É o protocolo de comunicação nativo da Novell para a NetWare e recomendado para a implementação da comunicação cliente/servidor

  •      Sequenced Packet Exchange - SPX

    •  interface de programação no nível de sessão

    •  entrega garantida dos pacotes

1.4     Sockets

Desenvolvido a partir do conceito de pipe do Unix

  • os pipes permitem a comunicação entre processos, IPC, em um mesmo nodo no sistema Unix

  • sockets são uma generalização de pipes

  • um socket é um ponto terminal de comunicação que pode ser associado a um identificador

  • cada socket pode estar ligado a um ou mais processos

  • os sockets tem tipos:

    •  stream socket

    •  sequenced packet socket

    •  datagram socket

    •  raw socket

Sockets - utilização

  • O cliente e o servidor devem criar um socket

    • call: socket( domain, type, protocol )

  • Para realizar a comunicação o server deve associar um nome ao socket

    • call: bind ( socket_no, local_name, name_length )

  • Após deve preparar a conexão

    • call:  listen ( socket_no, Nr de conexões pendentes )

    • call: {accept ( socket_no, .. ) | select ( socket_no, ... )}

  • O cliente inicia a conexão

    • call: connect ( socket_no, server_addess, size_of_address )

  • Após é possível realizar a comunicação

    • call: write ( socket_no, buffer, buffer_size )

    • call: read ( socket_no, buffer, buffer_size )

  • Fim da conexão

    • call: close ( socket_no )

A interface de programação, baseada em sockets, é de nível mais alto do que os métodos fornecidos pela NetBIOS ou IPX/SPX. Permite multiplexação no lado do servidor. As funções fornecem alguma abstração sobre o mecanismo de transporte.

1.8     RPC - Remote procedure call

Leituras totais em SD
 

Blog. do Prof. Palazzo