Solved

Choose the Appropriate Network Communication Protocol for this Scenario

Posted on 2004-08-18
4
242 Views
Last Modified: 2012-05-05
Suppose I have the following scenario:  I have a server-based application which collects and sorts various data to send to various client Windows-based applications across a large area network.  The client application will initially request information from the server.  However, the server application should be able to send updates to the client applications throughout the day.  Does this scenario call for me to use TCP/IP or is there something else I should consider?  The part that I am most concerned with is having the server application send updates to the client applications after the initial request, since the socket will close after this initial data is sent (at least this is my understanding).  Can someone explain how I may make this work?  
0
Comment
Question by:jtrades
4 Comments
 
LVL 27

Assisted Solution

by:pseudocyber
pseudocyber earned 50 total points
ID: 11840142
After the initial conversation, the clients could be listening on a UDP port.  The server could then either unicast or multicast out traffic with UDP to the clients to get the updates.  The server wouldn't care about the connection, it would be up to the app to make sure it gets everything.  Alternatively, you could design it so the clients poll the server to see if there's any data to retrieve.
0
 
LVL 11

Expert Comment

by:rafael_acc
ID: 11841711
This in fact may vary with the kind of applications you are using. Thus, what do you want to remotely update? Is this an antivirus update? Are we talking here about sql server replication ...?
0
 
LVL 11

Accepted Solution

by:
PennGwyn earned 150 total points
ID: 11843875
Long-term TCP connections could be susceptible to a couple of problems.  These can be mitigated somewhat if the endpoints are relatively stable:  server-to-server or router-to-router.  Clients, though, are subject to random reboots and other instabilities.

Multicast is intended to address some parts of your problem, but may not be well-supported by all of the infrastructure, and your specification of a "large area" suggests that some of the internal links may be relatively low in bandwidth.  There's a risk that multicast traffic like this could saturate those links and interfere with other traffic.

Best bet might be some sort of triggered update:  When there's new data, the server sends a brief UDP alert packet to each known client.  Clients who receive these notifications can contact the server via TCP to pull down the latest info.  They can do that at intervals anyway, in case a UDP alert wasn't received.  Any client that doesn't connect to the server within some large window gets dropped from the list of known clients.

0
 

Assisted Solution

by:dstarfire
dstarfire earned 50 total points
ID: 11845276
I'd say tcp/ip is your best bet. Most of the other routable protocols can get very bandwidth intensive.

Using tcp/ip, you could configure the client to accept connections on an unused UDP port number, and have the server broadcast to each subnet on that port. This eliminates the problem of overloading low-bandwidth links, as long as the client doesn't need to reply to the server.

0

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
DHCP Server Service stops on SBS 2011 3 56
nexus filter logs 3 44
policy based routing with recursive added - Cisco 1 27
Connect two buildings 6 34
Data center, now-a-days, is referred as the home of all the advanced technologies. In-fact, most of the businesses are now establishing their entire organizational structure around the IT capabilities.
Meet the world's only “Transparent Cloud™” from Superb Internet Corporation. Now, you can experience firsthand a cloud platform that consistently outperforms Amazon Web Services (AWS), IBM’s Softlayer, and Microsoft’s Azure when it comes to CPU and …
Internet Business Fax to Email Made Easy - With  eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, f…
This video gives you a great overview about bandwidth monitoring with SNMP and WMI with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're looking for how to monitor bandwidth using netflow or packet s…

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question