Click here to Skip to main content
15,905,967 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Dear All,

I would like to propose the WCF (NetTcpBinding) for a hardware communication with a C#. Is it reliable when compared with socket communication. Can my messages go as fast as socket communication? Please suggest. Any latency maters here?


Regards,
Subrahmanyam Kota
Posted
Updated 29-Aug-11 0:29am
v2
Comments
DaveAuld 29-Aug-11 7:20am    
Shouldn't be any latency problems at the network level, what your code does though may slow things down. At the end of the day, you need to test your code to be sure it meets the specification for the project.
SKOTAJI 29-Aug-11 8:33am    
Is it means ! Is this communication also follows the Socket layers ? I have a doubt at uri part. Why NetTCPBinding requires http url like

ServiceEndpoint endPoint = userManagerHost.AddServiceEndpoint(typeof(IUserManager), binding, "net.tcp://localhost:4000/UserManagerEndPoint");

what it means. Please explain or plz send any relevant google links.

1 solution

NetTcp is built on top of TCP. Where TCP would normally be equivalent to a 'socket'.

So it can go as fast as but no faster than TCP.

Speed actually depends on what your question is really about.

If you are creating a hardware device and you want to create a protocol layer for it then if it was me I would use TCP, not NetTCP. The reason being that it means the market it potentially bigger. And it doesn't stop you from adding a library that presents it as NetTCP. Doing the reverse is possible but would be much odder.

I am rather certain that there is a message overhead with NetTcp. This would only have an impact if your device is intended to send high volumes of very small messages however.
 
Share this answer
 
Comments
SKOTAJI 30-Aug-11 0:33am    
Thank you very much. Its clear to me.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900