Para uma melhor comunicação bi-direcional, um novo protocolo de comunicação, Net.TCP, foi apresentado no .NET Framework 3.0 como parte do WCF. O Net.TCP está agora disponível no próximo Silverlight 4 melhorando muito a produtividade e o número de conexões comparado ao HTTP Polling Duplex.
O Silverlight 3 apresentou a opção de fazer bind com HTTP Duplex Services o qual permite a aplicação consultar constantemente o serviço para atualizações, simulando, dessa maneira, uma comunicação duplex. O Silverlight 4 trouxe uma solução melhor, o Net.TCP Port Sharing Service (Serviço de compartilhamento de portas do NET.TCP). Diferentemente do HTTP, o Net.TCP oferece comunicação duplex nativa com ganhos significativos de performance, resultando em melhorias na aplicação As portas abertas podem ser compartilhados entre múltiplas aplicações, mas são limitadas ao intervalo 4502-4534, como para qualquer outra porta de acesso do Silverlight.
De acordo com Tomasz Janczuk, Gerente de Desenvolvimento da equipe do WCF na Microsoft, o Net.TCP oferece melhorias significativas sobre o HTTP Duplex nas seguintes áreas:
- produtividade - 5,5 vezes maior para a área de UI e 870 vezes maior para a área de desenvolvimento
- número máximo de clientes - de 5 a 6 vezes mais clientes conectados suportados por um servidor
O protocolo é adequado para aplicações Silverlight, onde a velocidade de comunicação é muito importante. Uma grande desvantagem é que ele usa uma série de portas que são normalmente bloqueadas por firewalls de modo que não é adequado para aplicações externas e públicas, mas é bastante adequado para intranets. Outro problema é que o SSL não é suportado tornando a aplicação insegura, questão que Janczuk mencionou em ser adicionada no futuro.
Recursos relacionados: SOAP / TCP Transportes para o WCF.