Escolhendo um protocolo de rede
Para se conectar ao Mecanismo de Banco de Dados SQL Server, você deve ter um protocolo de rede habilitado. O Microsoft SQL Server pode atender a solicitações em vários protocolos ao mesmo tempo. Os clientes se conectam a SQL Server com um único protocolo. Se o programa cliente não souber em qual protocolo SQL Server está escutando, configure o cliente para tentar sequencialmente vários protocolos. Use SQL Server Configuration Manager para habilitar, desabilitar e configurar protocolos de rede.
Memória compartilhada
A memória compartilhada é o protocolo mais simples de usar e não precisa de configurações. Como os clientes que usam o protocolo de memória compartilhada só podem se conectar a uma instância SQL Server em execução no mesmo computador, isso não é útil para a maioria das atividades do banco de dados. Use o protocolo de memória compartilhada para solucionar problemas quando você suspeitar que outros protocolos estejam configurados incorretamente.
Observação
Os clientes que usam MDAC 2.8 ou anterior não podem usar o protocolo de memória compartilhada. Se tentarem usar, eles serão alternados automaticamente para o protocolo de pipes nomeados.
TCP/IP
TCP/IP é um protocolo comum amplamente utilizado na Internet. Ele faz a comunicação entre redes de computadores interconectadas que têm arquiteturas de hardware diferentes e vários sistemas operacionais. O TCP/IP contém padrões para roteamento do tráfego da rede e oferece recursos de segurança avançados. É o protocolo mais popular usado nas empresas atualmente. A configuração do computador para usar TCP/IP pode ser complexa, mas a maioria dos computadores em rede já estão configurados corretamente. Para definir as configurações de TCP/IP que não são expostas no SQL Server Configuration Manager, consulte a documentação do Microsoft Windows.
Pipes nomeados
Pipes nomeados é um protocolo desenvolvido para redes locais. Uma parte da memória é usada por um processo a fim de passar informações para outro processo, para que a saída de um seja a entrada do outro. O segundo processo pode ser local (no mesmo computador que o primeiro) ou remoto (em um computador de rede).
Pipes nomeados vs. soquetes TCP/IP
Em um ambiente de LAN (rede local) rápida, os clientes de soquetes TCP/IP e Pipes Nomeados são comparáveis no que diz respeito ao desempenho. No entanto, a diferença de desempenho entre os clientes de Soquetes TCP/IP e Pipes Nomeados se torna aparente com redes mais lentas, como WANs (redes de longa distância) ou redes de conexão discada. Isso ocorre devido às diferentes formas de comunicação entre mecanismos IPC (comunicação entre processos) par.
Para pipes nomeados, a comunicação de rede geralmente é mais interativa. Um mecanismo par não envia dados até que outro mecanismo par os solicite usando um comando de leitura. Uma leitura de rede geralmente envolve uma série de mensagens de verificação de pipes nomeados antes que a leitura dos dados seja iniciada. Essas mensagens podem ser muito custosas em uma rede lenta, causando excesso de tráfego, o que afeta outros clientes de rede.
Também é importante esclarecer se você está falando de pipes locais ou pipes de rede. Se o aplicativo de servidor estiver sendo executado localmente no computador que está executando uma instância de SQL Server, o protocolo local Pipes Nomeados será uma opção. Os pipes nomeados locais são executados no modo kernel e são muito rápidos.
Para Soquetes TCP/IP, as transmissões de dados são mais simplificadas e têm menos sobrecarga. As transmissões de dados também podem aproveitar os mecanismos de aprimoramento do desempenho de Soquetes TCP/IP, como janelas, confirmações atrasadas etc. Isso pode ser muito útil em uma rede lenta. Dependendo do tipo de aplicativos, tais diferenças de desempenho podem ser significativas.
Os Soquetes TCP/IP também dão suporte a uma fila de pendências. Isso pode fornecer um efeito de suavização limitado em comparação com pipes nomeados que podem levar a erros de pipe ocupado quando você está tentando se conectar a SQL Server.
Em geral, o TCP/IP tem preferência em uma LAN, WAN ou rede de conexão discada lenta, enquanto os pipes nomeados podem ser uma opção melhor quando a velocidade da rede não é o problema, pois ele oferece mais funcionalidade, facilidade de uso e opções de configuração.
Habilitando os protocolos
Para funcionar, o protocolo deve ser habilitado no cliente e no servidor. O servidor pode escutar ao mesmo tempo as solicitações em todos os protocolos habilitados. Os computadores cliente podem escolher um ou experimentar os protocolos na ordem listada em SQL Server Configuration Manager.
Para obter um breve tutorial sobre como configurar protocolos e se conectar ao Mecanismo de Banco de Dados, consulte Tutorial: Introdução com o Mecanismo de Banco de Dados.