A full TCP stack is not a trivial
exercise, but you can steal most of the
code, and eliminate most of it.Still, its
a multi month project and much more work
than IP routing solutions
--------------------------------------------
On Tue, 11/5/13, Jonathan Leslie
m("yahoo.com","jleslie48");"><> wrote:
Subject: Re: [ts-7000] RE: ts-7800 how do
I make 4 (at least 2) identical network
stacks?
To:
m("yahoogroups.com","ts-7000");">""
m("yahoogroups.com","ts-7000");"><>
Date: Tuesday, November 5, 2013, 5:09 PM
LOL. I only run
as root. what about this IP stack, what's
the difference
if its running under userspace code or
part of the OS?
Seems like to me you are only changing
who owns the
code. So the ts-8700 has 4
NIC's???
From:
m("shaw.ca","bomr");">"" m("shaw.ca","bomr");"><>
To:
m("yahoogroups.com","ts-7000");">
Sent:
Tuesday, November 5, 2013 8:03 PM
Subject:
[ts-7000] RE: ts-7800 how do I make 4 (at
least 2) identical
network stacks?
You can use raw ethernet frames to
communicate
over a specific NIC under Linux. However,
this imposes the
requirement that any application using
that method must run
with root privilege. It also means having
to craft a
substantial portion of an already working
IP stack in your
own userspace code. Not trivial.
---In
m("yahoogroups.com","ts-7000");">,
m("...","jleslie48");"><> wrote:
when you say raw
ethernet are you talking sockets
connections or something
more "raw" than that?
From: Walter Marvin
m("...","walter.marvin");"><>
To:
m("yahoogroups.com","ts-7000");">
Sent: Tuesday, November
5, 2013 10:22 AM
Subject: Re:
[ts-7000] ts-7800 how do I make 4 (at
least 2) identical
network stacks?
The same effect, however, can be done
using raw
Ethernet on the receiving side
--------------------------------------------
On Mon, 11/4/13, Eric Robishaw
m("...","eric");"><> wrote:
Subject: Re: [ts-7000] ts-7800 how do I
make 4 (at least 2)
identical network stacks?
To:
m("yahoogroups.com","ts-7000");">""
m("yahoogroups.com","ts-7000");"><>
Date: Monday, November 4, 2013, 9:08 PM
Maybe this is too simple... But why not
just use
Udp broadcasting, let each device receive
all the
messages
and filter out what they don't need. No
need
for
special routing, etc..
On Monday, November 4, 2013, Walter Marvin
wrote:
The mac address can be easily found. The
problem
here is that Linux won't accept the same
sub network
on
two different interfaces and the IPs of
the remote boxes
can't be changed. This has to be handled
by routing
below the interface level, or raw
Ethernet.
--------------------------------------------
On Mon, 11/4/13, Joseph Bouchard
m("...","jbouchard");"><>
wrote:
Subject: Re: [ts-7000] RE: ts-7800 how do
I make 4 (at
least
2) identical network stacks?
To:
m("yahoogroups.com","ts-7000");">
Date: Monday, November 4, 2013, 5:39 PM
Hi,
I've been following along in the
background,
reading
about half of
what's been said, and understanding less,
but I
haven't seen anyone
suggest this...
Can you use ARP to an advantage here? The
normal way
I've used ARP is
when we have a terminal server which has
not yet been
configured... you
arp the mac address to a hostname on your
PC, then
connect
to the still
unconfigured box, and configure it. Your
computer
knows
how
to find
that remote box by it's mac address, even
if the
remote
box doesn't yet
know what it's IP address is yet. Can we
do that
here?
Imagine this implementation... You have 4
boxes which
all
want to have
the same IP address, but they all have
different MAC
addresses, which
I'll refer to MAC1, MAC2, etc. On your
TS7800 you
have
a plain old
single interface eth0 with the address of
your choice,
and
a
typical
socket listener. When a client connects,
you accept(),
like
you
normally would. It's been years since I've
dealt
with the addr structs
the sockets use, but I'm thinking there is
a way to
tie
a mac address to
the socket, or lacking that use arp. At
that point
your
file descriptor
is working correctly and you don't care
about IP
addresses, you are just
talking back and forth op that open
socket.
Maybe I've missed some critical detail,
but the
point
is
when you use
mac addresses, and/or hostnames, and you
don't
worry
about addresses any
more.
Good luck,
Joe