From: Zoran s <s_zoran@yahoo.com>
To: bridge@lists.linux-foundation.org
Subject: [Bridge] New Custom Protocol on Ethernet Layer
Date: Fri, 30 May 2008 06:32:41 -0700 (PDT) [thread overview]
Message-ID: <312380.52171.qm@web35603.mail.mud.yahoo.com> (raw)
In-Reply-To: <alpine.DEB.1.00.0805200009020.6633@pandora.retrosnub.co.uk>
Hi everyone,
I need a help. I started recently investigating
ethernet layer. I have specific problem to solve. I'll
try to describe this problem, so you can see what is
all about. I do not know if this problem belongs to
bridging, certainly by its definition it is close to
it.
I have some ideas how to do this. But I would
appreciate any thought you might have, any direction.
The problem: there are number of workstations (up to
200) connected by LAN - ethernet, and they all are
running an application which is in need of real-time
updates. Within every timer tick defined (2
miliseconds) every workstation needs to communicate
certain data (broadcast) so all others can take these
data, compute data via algorithm and store such data
in their own proprietary database. The round time is
the same time (all 200 stations need to communicate
their data in this time frame).
One of the solutions to the problem will be to write
specific application in user space (choose some spare
ports, make UDP datagram and send it over as IP
broadcast). But I am affraid the turnaround time might
change from 2 miliseconds to 0.5 miliseconds, even
less. Then the Real Time processing could become an
issue.
Instead using user space, I think the better way to
handle this problem is to keep data inside the
ethernet layer itself. Saying this, the solution to
this problem will be to create specific customised
vendor destination address which will act similar to
broadcast (well known all ones) mechanismus, so each
workstation receiving this packet will be delivering
data to the specific for this case database cash,
embedded in ethernet layer, same way ARP works. The
application can access the data through driver
mechanismus (bypassing higher layers of IP protocol
stack), specificaly written for this case.
I start looking and exploring /net/core/dev.c, but I
don't see ARP entry code in there. Could anybody,
please, give me an advice where to look for ARP
resolution so I can explore further implementation
changes inside the kernel protocol stack (I need to
add entry which will do similar things).
The reason I sent this @ is that I think the bridging
implementation is in the same set of files (very close
to ARP), as a different option, so somebody might know
where to fit the entry for the idea I just described.
If there are misconceptions in my @ I appologise for
my ignorance related to this matter.
Best Regards,
Zoran
next prev parent reply other threads:[~2008-05-30 13:32 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-19 19:48 [Bridge] bridge protocol family Benoit PAPILLAULT
2008-05-19 23:12 ` Malcolm Scott
2008-05-30 13:32 ` Zoran s [this message]
2008-05-30 15:14 ` [Bridge] New Custom Protocol on Ethernet Layer Stephen Hemminger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=312380.52171.qm@web35603.mail.mud.yahoo.com \
--to=s_zoran@yahoo.com \
--cc=bridge@lists.linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.