Reputation: 15196
I have a WCF service running on the IIS with a ServiceHostFactory. It's running fine with the WSHttpBinding but because of the speed and everything being on the same network (no firewalls) i want to speed up things a bit using the NetTcpBinding instead.
When i try to do that i get this error:
Could not connect to net.tcp://zzz.xxx.yyy/MyService.svc. The connection attempt lasted for a time span of 00:00:01.0464395. TCP error code 10061: No connection could be made because the target machine actively refused it x.x.x.x:808.
I'm using SecurityMode.None
just to make sure that is not screwing me also i tried either of these on two different tries:
binding.Security.Message.ClientCredentialType = MessageCredentialType.None;
binding.Security.Message.ClientCredentialType = TcpClientCredentialType.Windows;,
Also i should point out, that i'm pulling quite a lof of data from one of the service calls, so i also put these (both on the http and the tcp attempts - setting maxMessageSize to 1000000)
binding.MaxReceivedMessageSize = maxMessageSize;
binding.ReaderQuotas.MaxArrayLength = maxMessageSize;
It should be pretty easy getting it to work, so what am I missing?
UPDATE: I added the TCP port 808 to the website identity and tried again. Now i get this error:
You have tried to create a channel to a service that does not support .Net Framing. It is possible that you are encountering an HTTP endpoint.
Upvotes: 21
Views: 74012
Reputation: 12402
Check out this post on enabling non-HTTP bindings in IIS 7.0. By default, you have to explicitly enable net.tcp in IIS 7.0.
Hope this helps.
UPDATE:
Saw your comment - unfortunately, net.tcp is not supported in IIS 6.0. Check out this link which details the supported WCF bindings for various hosts (including self-hosting, WAS, and IIS). Looks like only HTTP bindings work in IIS 6.0.
Upvotes: 14
Reputation: 177
I was also having this issue on Window Server 2008 R2
Just ensure that the Net.Tcp Port Sharing service is also started, as it is a dependency of the Net.Tcp Listener Adapter.
Upvotes: 1
Reputation: 26887
For anyone that stumbles accross this, my guide to trouble-shooting net.tcp WCF issues like this:
c:\windows\system32\inetsrv
, enter appcmd.exe set app "NameOfWebsite/" /enabledProtocols:http,net.tcp
Done.
Upvotes: 15
Reputation: 11
check if IIS has both protocol pointing to same port number,i just found if that is the case,it will not work.
Upvotes: 1
Reputation: 71
Once i start Net.Tcp Listener Adapter Service, service is working fine for me.
Upvotes: 7
Reputation:
If you are using Vista, then ensure the WAS and Net.Tcp Listener Adapter Services are running.
Upvotes: 23
Reputation: 29953
Could it be something as simple as your firewall rules on the service host disallowing port 808?
Upvotes: 1