.NET 2.0 Remoting TCP channel, is it bi-directional?

douglasp (or anyone for that matter!), please could you answer if the TCP channel in .NET 2.0 has been updated to support bi-directional communications by default

We have an application that is using a custom channel supporting bi-directional TCP and SSPI. However, the improvements in .NET 2.0 (native support of SSPI based security and the new IPC channel in .NET 2.0) are not easy to ignore given we could benefit from the use of the standard channels. Trouble is, we make use of the bi-directional channel to allow communications through network devices such as NAT routers, firewalls, etc. easier and losing this advantage would be significant.

I'd guess that it wouldn't be possible to extend the current TCP channel to do this either.

Thanks in advance.


Answer this question

.NET 2.0 Remoting TCP channel, is it bi-directional?

  • Jordan Sparks

    Hi,

    The TCPChannel in .NET 2.0 does not support bidirectional communication.

    Regards,
    Vikram

  • army

    A bi-directional TCP channel was discussed for .NET Remoting 2.0 but didn't make the cut.  Sorry.

    The TCP transport in Indigo does support bi-directional communications using a single TCP connection.  Take a look at the duplex contract example located here (http://winfx.msdn.microsoft.com/library/default.asp url=/library/en-us/indigo_samples/html/bc5de6b6-1a63-42a3-919a-67d21bae24e0.asp) and then combine that with the NetProfileTcpBinding sample here (http://winfx.msdn.microsoft.com/library/default.asp url=/library/en-us/indigo_samples/html/e8475fe6-0ecd-407a-8e7e-45860561bb74.asp) and you can build a service that re-uses the TCP connection established by the client to send back responses from the service.  This TCP connection can be re-used by the service to send back more than one response.

    Hope that helps.

    Matt



  • Sergio Arizmendi

    Hi,

    There is a good MSDN TV video of Matt Tavis on the new features of Remoting where he has discussed every new feature available :
    http://msdn.microsoft.com/msdntv/episode.aspx xml=episodes/en/20050120netmt/manifest.xml

    As for Indigo, yes the default communication mechanism is bidirectional. For more read the following article:
    http://www.15seconds.com/issue/050608.htm

    Regards,
    Vikram

  • Matt Snyder

    Thanks for the reply.

    I take it your response is based on plans for the final version of .NET 2.0

    Also, would Indigo eventually have such a capability. From what I've read thus far I'm not sure (some say yes, some no)!!


  • Daleep Kumar Malethia

    I checked out the MSDN TV download prior to my 1st post and it indeed was a good listen. I was sort of hoping that a feature like quite a few .NET Remoting users have needed would have just appeared as a quiet enhancement :)

    I'll have to investigate what Indigo does for me as it seems to be slightly differently pitched when compared to .NET Remoting (more akin to ES in .NET 1.x I'd guess). Some of the articles I'd seen didn't go into much detail on whether a single TCP connection was used for bi-directional communications or if it was bi-directional in that the server could talk to the client by way of another [random] port assignment! I'll check out the article you linked.

    Thanks again for your response.

  • dhol

    Oh, I did not know that, spent a whole afternoon trying to figure out why I got the security exception.
    Thanks to adamhearn and Vikram.

  • .NET 2.0 Remoting TCP channel, is it bi-directional?