Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

500pts: UDP/TCP to send a msg to users of a program?

Posted on 2006-11-10
4
Medium Priority
?
206 Views
Last Modified: 2010-04-16
Hi there,

I wonder if anyone can help, I have a program that is succesfully working, it is used by 100s of users. The program depends on webservices etc so from time to time i must take the program down.

I have no way of informing the users that the program is going offline so i was wondering if i could do this with udp or tcp. UDP i presume is a better choice..

Considering that the users probably don't have a FIXED ip.

Does anyone know of a sample where I could send a msg to 100's of users.

I presume i will have a small server program, and then i will build a small client into my program... this will receive a msg and then i will just used MEssageBox.Show to display it...

My confusion is.... which port do i use? and the server... does it need to send directly to IP (fixed) addresses.... I understand that with UDP i do not need to establish a connection so how would i send the info to the user then?

if there are 3 users for example that are in the same office connected by an adsl router then technically they would have the same IP address so how would this work?

I presume .net Vs2003 supports this?

Thanks in advance for any help

Ian
0
Comment
Question by:ianinspain
  • 2
4 Comments
 
LVL 15

Expert Comment

by:ozymandias
ID: 17915352
So your server program is going to send a message to the client warning that the system is goind down for a while.
Your client application will have to listen on a port for a message sent to its Ip adress. It can be any port.
The other possibility would be to use multicast or broadcast.
Or you could just have the message client poll a message queue on the server, say, every 10 seconds and if it finds a message its displays it to the user.
That way you could just publish the shutdown warning on the message queue and within 20 seconds or so be pretty sure that every client has received it.
0
 
LVL 15

Accepted Solution

by:
ozymandias earned 1000 total points
ID: 17915401
The polling may not be practical and multicasting is quite neat provided that it is supported.
Here is an example : http://www.codeproject.com/cs/internet/multicast.asp
0
 
LVL 3

Assisted Solution

by:bromose
bromose earned 1000 total points
ID: 17921445
Hi
I have a multicasting solution that will work on a LAN, but getting multicasting working across the internet is a different story. How ever if you have Your users on a virtual LAN, and the routers will allow multicasting - it's an option. Let me know if you want the multicast-code. Otherwise I must concur with ozymandias on his comments on polling the server.

Best regards,
Kaj Bromose
0
 

Author Comment

by:ianinspain
ID: 17966506
thanks guys!

0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

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

We all know that functional code is the leg that any good program stands on when it comes right down to it, however, if your program lacks a good user interface your product may not have the appeal needed to keep your customers happy. This issue can…
Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
Loops Section Overview
Is your OST file inaccessible, Need to transfer OST file from one computer to another? Want to convert OST file to PST? If the answer to any of the above question is yes, then look no further. With the help of Stellar OST to PST Converter, you can e…
Suggested Courses

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