Skip to main content
Question Protected by gnat
Problem Explain in detail
Source Link

ASituation: We have a web application is running on a server. This application needs to fetch data from some other PC(Clients), which are on a different network.

On the clients' pc there are WCF hosted in Windows Services using its owntheir local Sql db. That's why Server wantsi want to getmake duplex communication between server and clients for share data fromwith each other. data share mean share data-table,data-set,string etc between clients and client also want to get data from server  .

Problem :

1) I have no control over the firewall, proxy, NAT on the client side PC. Mostly company Employee PCs have lots of network security e.g firewall block ICMP traffic and some port too, some Router might be Disabled port-forwarding etc etc .

Put another way, client can change network place. I don't want to make something like duplexany setting on client side Router,proxy,firewall though . during communication between Serverhow can i handle that's kind of issue of client side? as you know skype is working perfect in that situation.

firewalls very often block inbound connections to clients; the client may not be reachable from the server, it may be using NAT translation behind a router and Client so that clientscannot be contacted without port forwarding being set up on the router and server are ablesome new router disabled port forwarding .

2) On clients side there is no IIS .

I don't want to share data among each otherallow remote access on clients PC.

eThere are more than 100 Clients and only one Server.g data share (data-table,data-set,string etc one server need communicate with many clients on different network ) between Server and Client.

Computer A (server PC)3) One side my client application is using window application and wcf hosted in window service ,Other side on my server i'm using Web-Page application (.Net) so its mean communication is between desktop pc and web pc , that's issue .

Computer B (client PC) isIf both using a Desktop Applicationweb application then it was not issue to make duplex communication.because i know WEBRTC is fit there lol.

Technology which i had already test and find issue

WSDualHttpBinding: Not work if client behind NAT.

MSMQ : its bad technique if clients more than 1 and performance issue also because its use RAM memory (WCF hosted in windows services) C#.

Xsocket: Its also not work if ICMP traffic block by firewall on client.

WebRTC: Its work fine but its support web to web communication .as my client side i have win app.

Computer CSocket.io: Its need to set up node.js and many other thing (Client PC) is using a Desktop Application, hard to implement because i need implement on existence application (WCF hosted in windows services) C#, i am not making new application.

All Computers AC# Socket Program: Its not work if client and B AND C aresever on different network and using Windows. There is no LAN networking between server and client pcs

Service Bus relay: Its not free even for testing .

On the client sidesocketPro: I don't wantstudied i find its good but i can't find any settingright sample on Router or proxy or Firewallgoogle . On clientsso that i could test that.

Genuine Channels: I can't find any sample on google .

Lets see SignalR issue which i get.: Server side therei run a console application and Client side i run two application ,one is no IISconsole and other web. when i don't want to allow remote access on clients PC too. There are morewas running console client application than 500 Client PCsit was not initiating connection with Server but when i was using web client application then it was working fine. I can't understand why thas??

Please tell me What is best most secure and fast way to handle this situation?

I have studied dual HTTP binding , MSMQ , Xsocket what approach should i use , Socket.io, SignalR, Websocket, WebRTC but I have too many questions to choose one.?

I need communication server to client and client to server, not client to clientThanks Advance .

A web application is running on a server. This application needs to fetch data from some other PC(Clients), which are on a different network.

On the clients' pc there are WCF hosted in Windows Services using its own local Sql db. That's why Server wants to get data from clients and client also want to get data from server.

I have no control over the firewall, proxy, NAT on the client side PC. Mostly company Employee PCs have lots of network security e.g firewall block ICMP traffic and some port too, Router might be Disabled port-forwarding etc .

Put another way, I want to make something like duplex communication between Server and Client so that clients and server are able to share data among each other.

e.g data share (data-table,data-set,string etc ) between Server and Client.

Computer A (server PC) is using Web-Page (.Net).

Computer B (client PC) is using a Desktop Application (WCF hosted in windows services) C# ..

Computer C (Client PC) is using a Desktop Application (WCF hosted in windows services) C#

All Computers A and B AND C are on different network and using Windows. There is no LAN networking between server and client pcs.

On the client side I don't want any setting on Router or proxy or Firewall . On clients side there is no IIS. i don't want to allow remote access on clients PC too. There are more than 500 Client PCs.

What is best most secure and fast way to handle this situation?

I have studied dual HTTP binding , MSMQ , Xsocket , Socket.io, SignalR, Websocket, WebRTC but I have too many questions to choose one.

I need communication server to client and client to server, not client to client.

Situation: We have a web application running on a server. This application needs to fetch data from some other PC(Clients), which are on a different network.

On the clients' pc there are WCF hosted in Windows Services using its their local Sql db. i want to make duplex communication between server and clients for share data with each other. data share mean share data-table,data-set,string etc between clients and server  .

Problem :

1) I have no control over the firewall, proxy, NAT on the client side PC. Mostly company Employee PCs have lots of network security e.g firewall block ICMP traffic and some port too, some Router might be Disabled port-forwarding etc etc , client can change network place. I don't want to make any setting on client side Router,proxy,firewall though . during communication how can i handle that's kind of issue of client side? as you know skype is working perfect in that situation.

firewalls very often block inbound connections to clients; the client may not be reachable from the server, it may be using NAT translation behind a router and so cannot be contacted without port forwarding being set up on the router and some new router disabled port forwarding .

2) On clients side there is no IIS .

I don't want to allow remote access on clients PC.

There are more than 100 Clients and only one Server. one server need communicate with many clients on different network .

3) One side my client application is using window application and wcf hosted in window service ,Other side on my server i'm using Web application . so its mean communication is between desktop pc and web pc , that's issue .

If both using a web application then it was not issue to make duplex communication.because i know WEBRTC is fit there lol.

Technology which i had already test and find issue

WSDualHttpBinding: Not work if client behind NAT.

MSMQ : its bad technique if clients more than 1 and performance issue also because its use RAM memory .

Xsocket: Its also not work if ICMP traffic block by firewall on client.

WebRTC: Its work fine but its support web to web communication .as my client side i have win app.

Socket.io: Its need to set up node.js and many other thing , hard to implement because i need implement on existence application , i am not making new application.

C# Socket Program: Its not work if client and sever on different network .

Service Bus relay: Its not free even for testing .

socketPro: I studied i find its good but i can't find any right sample on google .so that i could test that.

Genuine Channels: I can't find any sample on google .

Lets see SignalR issue which i get.: Server side i run a console application and Client side i run two application ,one is console and other web. when i was running console client application than it was not initiating connection with Server but when i was using web client application then it was working fine. I can't understand why thas??

Please tell me What is best most secure and fast way to handle this situation? what approach should i use ?

Thanks Advance .

Tweeted twitter.com/#!/StackProgrammer/status/551416330851975168
Source Link

Two way Communication between Server and Clients

A web application is running on a server. This application needs to fetch data from some other PC(Clients), which are on a different network.

On the clients' pc there are WCF hosted in Windows Services using its own local Sql db. That's why Server wants to get data from clients and client also want to get data from server.

I have no control over the firewall, proxy, NAT on the client side PC. Mostly company Employee PCs have lots of network security e.g firewall block ICMP traffic and some port too, Router might be Disabled port-forwarding etc .

Put another way, I want to make something like duplex communication between Server and Client so that clients and server are able to share data among each other.

e.g data share (data-table,data-set,string etc ) between Server and Client.

Computer A (server PC) is using Web-Page (.Net).

Computer B (client PC) is using a Desktop Application (WCF hosted in windows services) C# ..

Computer C (Client PC) is using a Desktop Application (WCF hosted in windows services) C#

All Computers A and B AND C are on different network and using Windows. There is no LAN networking between server and client pcs.

On the client side I don't want any setting on Router or proxy or Firewall . On clients side there is no IIS. i don't want to allow remote access on clients PC too. There are more than 500 Client PCs.

What is best most secure and fast way to handle this situation?

I have studied dual HTTP binding , MSMQ , Xsocket , Socket.io, SignalR, Websocket, WebRTC but I have too many questions to choose one.

I need communication server to client and client to server, not client to client.