FW: [OT, Q] Architecture for Message Broadcasting

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

FW: [OT, Q] Architecture for Message Broadcasting

J J-6
Hrm, not sure why this stupid live hotmail wants to send all my messages directly to the sender instead of the list.


From: [hidden email]
To: [hidden email]
Subject: RE: [OT, Q] Architecture for Message Broadcasting
Date: Mon, 2 Jul 2007 16:51:38 +0000

> Date: Mon, 2 Jul 2007 12:38:41 +0200

> From: [hidden email]
> To: [hidden email]; [hidden email]
> Subject: Re: [OT, Q] Architecture for Message Broadcasting
>
> Hello S.J.Chun,
>
> Afaik broadcast is one single send and everybody listens.
>
> IIRC a special broadcasting address is used where everybody listens.
>
> I never done TCP myself but it feels very wrong to to resend the same
> message for each receiver.
>
> Cheers
>
>
> Herbert mailto:[hidden email]

No, TCP is a connection based protocol that abstracts a direct connection between one process and another, including automatic retransmit and failure detection.  It can only be between two ports, so if you use TCP you will have to send to each client individually.  You might take a look at the CORBA standard for the broadcast or subscription (don't remember which) server.

If you want to send one message and have everyone hear it then you have to use UDP, which is connectionless.  But UDP (User-datagram protocol) doesn't do any of the work for you.  If you want reliability you either have to write it yourself or find some protocol on the internet someone wrote that is close to what you want.  And note: this does not need any special IP addresses.

The "special addresses" that someone mentioned would be multi-cast, but that is an IP level protocol.  TCP can not run on it, though UDP can.  But as was mentioned, since it is at the IP level it requires help from the routers.  If you want to look more into this look up "mbone", an internet multi-cast backbone.  And lastly, you could just send to network broadcast addresses, but that isn't a good way to go and you can't anyway unless you know the subnet that each client is on (or they're all on the same).

Hope that was helpful,
Jason


Hotmail to go? Get your Hotmail, news, sports and much more! Check out the New MSN Mobile


Play free games, earn tickets, get cool prizes! Join Live Search Club.   Join Live Search Club!

Reply | Threaded
Open this post in threaded view
|

Re: FW: [OT, Q] Architecture for Message Broadcasting

Chun, Sungjin
>If you want to send one message and have everyone hear it then you have to use UDP, which is connectionless.

Can you elaborate on this? How could this be done? Any sample code or doc on this?

Thanks in advance.



Reply | Threaded
Open this post in threaded view
|

Re: FW: [OT, Q] Architecture for Message Broadcasting

Chun, Sungjin
In reply to this post by J J-6
>If you want to send one message and have everyone hear it then you have to use UDP, which is connectionless.

Can you elaborate on this? How could this be done? Any sample code or doc on this?

Thanks in advance.



Reply | Threaded
Open this post in threaded view
|

Re: FW: [OT, Q] Architecture for Message Broadcasting

Frank Shearar
J J said

> >If you want to send one message and have everyone hear it then you have
to use UDP, which is connectionless.


and S.J.Chun asks

> Can you elaborate on this? How could this be done? Any sample code or doc
on this?

J J's referring to sending UDP to multicast addresses. Basically, interested
parties signal (say, through the Internet Group Management Protocol, IGMP
(RFC 2236)) that they want to receive data sent to a particular multicast
address (RFC 3171 defines the (PIv4) multicast address range as 224.0.0.0 to
239.255.255.255. Likely you'd be interested in an address in the
224.0.0.0/24 block, which is for link local multicast.). Datagrams sent to
that multicast address are duplicated and sent to all the interested
parties.

http://en.wikipedia.org/wiki/IP_Multicast is a good starting point for
multicast.

One thing to bear in mind is that any routers between the sender/s and
receiver/s must support multicast.

frank


Reply | Threaded
Open this post in threaded view
|

Re: FW: [OT, Q] Architecture for Message Broadcasting

Igor Stasenko
In reply to this post by Chun, Sungjin
On 03/07/07, "S.J.Chun" <[hidden email]> wrote:
> >If you want to send one message and have everyone hear it then you have to use UDP, which is connectionless.
>
> Can you elaborate on this? How could this be done? Any sample code or doc on this?
>
> Thanks in advance.

UDP stands for Unix Datagram Protocol (IIRC)

This is message-based protocol, with which you can send short messages
to any destination IP/port, without caring about is it online or not.
In IP address space there are a special address space reserved for
multicast(or broadcast) IP addresses. They are mostly used inside
intranet - so any host within your local physical net will receive
message you sent. But, if you want same but using internet - there's
only one exit - send same message to each listener by iterating
through them.
There's also a protocol called unicast and global network of unicast
servers which supporting a broadcasting services for all interned, but
this requires even more complex steps to make it work (configuring own
server, register it global registry e.t.c)

Reply | Threaded
Open this post in threaded view
|

Re: [OT, Q] Architecture for Message Broadcasting

johnmci
In reply to this post by Frank Shearar
Technically support for this is in various unix flavors (osx) of the  
VM. I think.
You might need to set some TCP/IP options to exploit via the socket  
plugin prim interface
for setting options.

On the other hand I've not heard of anyone using it to confirm it works.
Can not speak for windows, no idea how XP would treat this or if  
support in the windows VM socket code.

In both cases you would need to cross check the source code.

On Jul 3, 2007, at 1:40 PM, Frank Shearar wrote:

> J J's referring to sending UDP to multicast addresses. Basically,  
> interested
> parties signal (say, through the Internet Group Management  
> Protocol, IGMP
> (RFC 2236)) that they want to receive data sent to a particular  
> multicast
> address (RFC 3171 defines the (PIv4) multicast address range as  
> 224.0.0.0 to
> 239.255.255.255. Likely you'd be interested in an address in the
> 224.0.0.0/24 block, which is for link local multicast.). Datagrams  
> sent to
> that multicast address are duplicated and sent to all the interested
> parties.
>
> http://en.wikipedia.org/wiki/IP_Multicast is a good starting point for
> multicast.
>
> One thing to bear in mind is that any routers between the sender/s and
> receiver/s must support multicast.
>
> frank

--
========================================================================
===
John M. McIntosh <[hidden email]>
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
========================================================================
===



Reply | Threaded
Open this post in threaded view
|

Re: [OT, Q] Architecture for Message Broadcasting

Joshua Gargus-2
Various versions of Croquet have used UDP broadcast for LAN  
discovery.  I haven't heard of anyone doing IP multicast in Squeak;  
as others have noted, support for IP multicast is not widespread on  
the internet at large.

We might be wandering away from solving S.J.Chun's real problem.  
Depending on what he (she?) is trying to accomplish, his original  
approach may be quite viable.  At a very high level of abstraction, a  
Croquet router could be said to work in that way.

Josh


On Jul 3, 2007, at 5:25 PM, John M McIntosh wrote:

> Technically support for this is in various unix flavors (osx) of  
> the VM. I think.
> You might need to set some TCP/IP options to exploit via the socket  
> plugin prim interface
> for setting options.
>
> On the other hand I've not heard of anyone using it to confirm it  
> works.
> Can not speak for windows, no idea how XP would treat this or if  
> support in the windows VM socket code.
>
> In both cases you would need to cross check the source code.
>
> On Jul 3, 2007, at 1:40 PM, Frank Shearar wrote:
>
>> J J's referring to sending UDP to multicast addresses. Basically,  
>> interested
>> parties signal (say, through the Internet Group Management  
>> Protocol, IGMP
>> (RFC 2236)) that they want to receive data sent to a particular  
>> multicast
>> address (RFC 3171 defines the (PIv4) multicast address range as  
>> 224.0.0.0 to
>> 239.255.255.255. Likely you'd be interested in an address in the
>> 224.0.0.0/24 block, which is for link local multicast.). Datagrams  
>> sent to
>> that multicast address are duplicated and sent to all the interested
>> parties.
>>
>> http://en.wikipedia.org/wiki/IP_Multicast is a good starting point  
>> for
>> multicast.
>>
>> One thing to bear in mind is that any routers between the sender/s  
>> and
>> receiver/s must support multicast.
>>
>> frank
>
> --
> ======================================================================
> =====
> John M. McIntosh <[hidden email]>
> Corporate Smalltalk Consulting Ltd.  http://
> www.smalltalkconsulting.com
> ======================================================================
> =====
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Re: [OT, Q] Architecture for Message Broadcasting

Chun, Sungjin
In reply to this post by J J-6
 Hi,

Thank you very much for your all answers. As I said in my previous mail,
I cannot assume that I can use multicast/broadcast support because there's
some routers which do not support these features.

It seems that my original idea - though TCP part could be replaced by UDP
for efficiency - might be my last choice. My current idea is that all clients
are connected to the server and between clients and server, single byte data
(kind of ping) is exchanged periodically and if the clients received some
new data is received to the server, then client fetched the data and
display. Any client can post new data to the server through another
transport(maybe TCP for this case?). I think this kind of application will be
helpful for broadcasting messages to the people(like flashmob :-)

Thank you again.

----- Original Message -----
   From: Joshua Gargus <[hidden email]>
   To: [hidden email], The general-purpose Squeak developers list <[hidden email]>
   Sent: 07-07-04 10:13:17
   Subject: Re: Re: [OT, Q] Architecture for Message Broadcasting

  Various versions of Croquet have used UDP broadcast for LAN  
discovery.  I haven't heard of anyone doing IP multicast in Squeak;  
as others have noted, support for IP multicast is not widespread on  
the internet at large.

We might be wandering away from solving S.J.Chun's real problem.  
Depending on what he (she?) is trying to accomplish, his original  
approach may be quite viable.  At a very high level of abstraction, a  
Croquet router could be said to work in that way.

Josh


On Jul 3, 2007, at 5:25 PM, John M McIntosh wrote:

> Technically support for this is in various unix flavors (osx) of  
> the VM. I think.
> You might need to set some TCP/IP options to exploit via the socket  
> plugin prim interface
> for setting options.
>
> On the other hand I've not heard of anyone using it to confirm it  
> works.
> Can not speak for windows, no idea how XP would treat this or if  
> support in the windows VM socket code.
>
> In both cases you would need to cross check the source code.
>
> On Jul 3, 2007, at 1:40 PM, Frank Shearar wrote:
>
>> J J's referring to sending UDP to multicast addresses. Basically,  
>> interested
>> parties signal (say, through the Internet Group Management  
>> Protocol, IGMP
>> (RFC 2236)) that they want to receive data sent to a particular  
>> multicast
>> address (RFC 3171 defines the (PIv4) multicast address range as  
>> 224.0.0.0 to
>> 239.255.255.255. Likely you'd be interested in an address in the
>> 224.0.0.0/24 block, which is for link local multicast.). Datagrams  
>> sent to
>> that multicast address are duplicated and sent to all the interested
>> parties.
>>
>> http://en.wikipedia.org/wiki/IP_Multicast is a good starting point  
>> for
>> multicast.
>>
>> One thing to bear in mind is that any routers between the sender/s  
>> and
>> receiver/s must support multicast.
>>
>> frank
>
> --
> ======================================================================
> =====
> John M. McIntosh <[hidden email]>
> Corporate Smalltalk Consulting Ltd.  http://
> www.smalltalkconsulting.com
> ======================================================================
> =====
>
>
>




Reply | Threaded
Open this post in threaded view
|

Re: Re: [OT, Q] Architecture for Message Broadcasting

Chun, Sungjin
In reply to this post by J J-6
 Hi,

Thank you very much for your all answers. As I said in my previous mail,
I cannot assume that I can use multicast/broadcast support because there's
some routers which do not support these features.

It seems that my original idea - though TCP part could be replaced by UDP
for efficiency - might be my last choice. My current idea is that all clients
are connected to the server and between clients and server, single byte data
(kind of ping) is exchanged periodically and if the clients received some
new data is received to the server, then client fetched the data and
display. Any client can post new data to the server through another
transport(maybe TCP for this case?). I think this kind of application will be
helpful for broadcasting messages to the people(like flashmob :-)

Thank you again.

----- Original Message -----
   From: Joshua Gargus <[hidden email]>
   To: [hidden email], The general-purpose Squeak developers list <[hidden email]>
   Sent: 07-07-04 10:13:17
   Subject: Re: Re: [OT, Q] Architecture for Message Broadcasting

  Various versions of Croquet have used UDP broadcast for LAN  
discovery.  I haven't heard of anyone doing IP multicast in Squeak;  
as others have noted, support for IP multicast is not widespread on  
the internet at large.

We might be wandering away from solving S.J.Chun's real problem.  
Depending on what he (she?) is trying to accomplish, his original  
approach may be quite viable.  At a very high level of abstraction, a  
Croquet router could be said to work in that way.

Josh


On Jul 3, 2007, at 5:25 PM, John M McIntosh wrote:

> Technically support for this is in various unix flavors (osx) of  
> the VM. I think.
> You might need to set some TCP/IP options to exploit via the socket  
> plugin prim interface
> for setting options.
>
> On the other hand I've not heard of anyone using it to confirm it  
> works.
> Can not speak for windows, no idea how XP would treat this or if  
> support in the windows VM socket code.
>
> In both cases you would need to cross check the source code.
>
> On Jul 3, 2007, at 1:40 PM, Frank Shearar wrote:
>
>> J J's referring to sending UDP to multicast addresses. Basically,  
>> interested
>> parties signal (say, through the Internet Group Management  
>> Protocol, IGMP
>> (RFC 2236)) that they want to receive data sent to a particular  
>> multicast
>> address (RFC 3171 defines the (PIv4) multicast address range as  
>> 224.0.0.0 to
>> 239.255.255.255. Likely you'd be interested in an address in the
>> 224.0.0.0/24 block, which is for link local multicast.). Datagrams  
>> sent to
>> that multicast address are duplicated and sent to all the interested
>> parties.
>>
>> http://en.wikipedia.org/wiki/IP_Multicast is a good starting point  
>> for
>> multicast.
>>
>> One thing to bear in mind is that any routers between the sender/s  
>> and
>> receiver/s must support multicast.
>>
>> frank
>
> --
> ======================================================================
> =====
> John M. McIntosh <[hidden email]>
> Corporate Smalltalk Consulting Ltd.  http://
> www.smalltalkconsulting.com
> ======================================================================
> =====
>
>
>




Reply | Threaded
Open this post in threaded view
|

Re: [OT, Q] Architecture for Message Broadcasting

Bert Freudenberg
In reply to this post by Joshua Gargus-2
On Jul 4, 2007, at 3:13 , Joshua Gargus wrote:

> Various versions of Croquet have used UDP broadcast for LAN  
> discovery.  I haven't heard of anyone doing IP multicast in Squeak;  
> as others have noted, support for IP multicast is not widespread on  
> the internet at large.

That might change with more widespread adoption of IPv6. We do have  
an IPv6 implementation for Unix (the OLPC mesh will be IPv6), other  
platforms will surely follow.

- Bert -



Reply | Threaded
Open this post in threaded view
|

Re: FW: [OT, Q] Architecture for Message Broadcasting

David T. Lewis
In reply to this post by Igor Stasenko
On Tue, Jul 03, 2007 at 11:47:27PM +0300, sig wrote:
>
> UDP stands for Unix Datagram Protocol (IIRC)

Actually, it is "User Datagram Protocol", there is no unix dependency.

Dave