home .. forth .. colorforth mail list archive ..

Re: Re: [colorforth] DARPA takes aim at IT sacred cows


From: kbk@xxxxxxxxx (Kurt B. Kaiser)
>IP is not designed to be reliable.  That's what TCP is 
>for.  It will keep trying until the message gets through.

No, the protocol won't -- the two endpoints will. (Okay,
sorry, that's part of the protocol.) But that's not the 
only way to get reliability; it's not a particularly good
way. There are alternatives; consider:

- router-based resending (if a mistransmission happens, 
the nearest computer corrects it, rather than requiring the
endpoints to correct it)
- bit fountains (don't divide the data into packets of bits;
instead run error-correcting-codes over the entire data, and
simply send the resulting ECCs until the other side reports
that it has enough ECCs to reconstruct your data)

Since they're talking about not using packets, I think the
latter is what they're thinking of. And I think it's
incredibly clever. There are lots of benefits to doing 
things that way -- not only does it give 100% reliability
without any concerns of round-trip time, it also allows
continuous broadcasting of the same information to multiple
receivers without any synchonization of the receivers.
(Any receiver can start with any ECC in the sequence; 
missed ECCs are absolutely insignificant, so long as
you get enough to reconstruct the data.)

>>The commander wants to be able to send a message and
>>have it delivered, completely, accurately and on time.

>That's what IPv6 is for.  No need to re-invent, just 
>adopt it.

But IP doesn't do that at all. That's TCP, and it's not
adequate.

>>Another aspects of the networking that DARPA wants 
>>to revise is the seven-layer OSI stack, long held as 
>>the basic foundation for building network protocols.

>*More* layers is a solution??  Or does he mean turn it 
>into a big, unmaintainable hairball?

The latter -- he mentioned that a more meshlike structure
is needed, with the former "layers" working together with
more than just two layers.

As for "unmaintainable" -- two points. First, network
maintainability is the whole point of what he's talking
about, and in spite of the vagueness of the journalist here
I suspect he does know his job. Second, there are NO 
existing succesful implementations of the seven-layer
model; it's purely abstract and conceptual. Every actual
implementation codes multiple layers together. So the
seven-layer model doesn't give network OR code 
maintainability.

>>This architecture, which defines the basic essential 
>>parts of a computer as the processor, control unit, 
>>memory and input-output devices, has been used as 
>>the basis for design for nearly all computers built 
>>since the 1940s.

>That's because it works.

Yes, up to a point. Then it fails. I'm glad some people are
admitting that (it's true of EVERY model) and looking around
for something else.

>We tried parallel computers a decade ago and
>nobody could figure out how to program them for general 
>purpose computing.

Partly because our model was bad.

>The day will come: today's computers are already not 
>strictly von Neumann because there are multiple 
>execution units "behind the curtain" of a Pentium,
>and SMP and distributed computing is common.

And yet you castigate someone for seeking a model that
actually DOES represent accurately how our computers 
actually work?

>>adversaries to attack the entire system. What military 
>>networks need, Gosh said, is a way to isolate software 
>>programs at the hardware level.

>Heaven's sake, that's what an operating system kernel is 
>for.

Well, not as stated -- but I do see your point here and 
agree. A new model isn't needed here, just a better use of
our current one.

On the other hand, our current model doesn't even account 
for memory protection... Our hardware has it, our software
uses it, yet the Von Neumann model doesn't say a word about
it. A model which DID account for it might show us some real
surprises!

>Either he means have several independent computers at 
>the "hardware level"

Nope, he means to redefine what a "computer" is. The result
*might* conceivably look like what you're describing, 
though.

> KBK

-Billy



---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@xxxxxxxxxxxxxxxxxx
For additional commands, e-mail: colorforth-help@xxxxxxxxxxxxxxxxxx
Main web page - http://www.colorforth.com