Re: [Hist Trivia] IP Protocol Layers

2001-07-23 Thread Joe Touch



Randy Bush wrote:
 
  I.e., layering is, IMO at least, a model. Fine for describing things, but
  not necessarily a good blueprint for an implementation.
 
 compilation systems can be constructed which will procuce efficient inlined
 code for nicely modularized (layered) source.  just not for programs which
 use type-free pointers and similar analysis-defeating features.
 
 randy

They can also do disastrous things, e.g., creating in-lined chunks
that thrash the instruction cache.

It's not just the layers that need to be spec'd, but the
interfaces between them. Even then all you have is a specification,
not necessarily an appropriate design for an implementation.

Greg Minshall wrote:
 
 ...i value protocol model AND mechanism correctness over
 some amount of last ounce optimization.

It's also not just about optimization - sometimes the best way
to think about a concept isn't the best (most flexible, simplest
to code, simplest to debug, ...) way to implement it.

Mahadevan Iyer wrote:
 
 A problem well-stated is a problem half-solved.

Agreed - half.

Joe




Re: [Hist Trivia] IP Protocol Layers

2001-07-23 Thread Henning Schulzrinne

Also seems to be a good electric fence - you can cross layers, but very
carefully.

Randy Bush wrote:
 
  I.e., layering is, IMO at least, a model. Fine for describing things, but
  not necessarily a good blueprint for an implementation.
 
 compilation systems can be constructed which will procuce efficient inlined
 code for nicely modularized (layered) source.  just not for programs which
 use type-free pointers and similar analysis-defeating features.
 
 randy




Re: [Hist Trivia] IP Protocol Layers

2001-07-23 Thread Bob Braden


  * From [EMAIL PROTECTED]  Tue Jul 17 13:21:47 2001
  * Date: Tue, 17 Jul 2001 14:58:35 -0500 (CDT)
  * From: Timothy J. Salo [EMAIL PROTECTED]
  * To: [EMAIL PROTECTED]
  * Subject: [Hist Trivia] IP Protocol Layers
  * X-Loop: [EMAIL PROTECTED]
  * 
  * Can anyone point me to an early reference describing the Internet
  * protocol layers in IP terms, rather than OSI terms?
  * 
  * One recent text used the following terms.  However, I don't know whether
  * this description has a long history, or is simply revisionist history.
  * 
  *Application
  *Transport (TCP, UDP)
  *Internet (IP, etc.)
  *Network Interface (LAN and WAN technologies).

Tim,

This is the Internet protocol stack as understood by the creators of
TCP/IP.  It is documented (at least) in section 1.1.3 (Internet
Architecture) of RFC 1122, a document that encapsulates a great deal
of the early wisdom on the Internet protocols.

Note, however, that RFC 1122 deliberately OSIzed the terminology
by using Link Layer instead of Network Interface.  Also, the
term transport was imported from OSIland; we did not really have
a name for that layer. See RFC 793, for example.

  * 
  * By 1983 the Internet protocols were already being recast in OSI terms.
  * Vint Cerf, in The DoD Internet Architecture Model, described the
  * following layers:
  * 
  *Application
  *Utility
  *Transport
  *Internetwork
  *Network
  *Link
  *Physical
  * 
  * In May 1979, Jon Postel in IEN-94 (Internet Protocol Handbook; it was
  * small then - 1209 bytes) use the following layers:

These were not layers, they were categories.

  * 
  * 
  * Internet Protocol Handbook
  * Table of Contents
  *  
  *  Gateway Level
  * Internet Datagram Protocol IEN-80
  * Gateway Routing: An Implementation Specification   IEN-30
  *  
  *  Host Level
  * User Datagram Protocol IEN-88
  * Transmission Control Protocol  IEN-81
  * Multiplexing Protocol  IEN-90
  *  
  *  Application Level
  * Name Server Protocol   IEN-89
  * Internet Message Protocol  IEN-85
  *  
  *  Appendices
  * Protocol Options   IEN-92
  * Address Mappings   IEN-91
  * Assigned Numbers   IEN-93
  * 
  * Does anyone have a pointer to an early, more traditional, non-OSI 
  * description of the TCP/IP protocol layers?
  * 
  * (By the way, I found the concept behind RFC 157, Invitation to the Second
  * Symposium on Problems in the Optimization of Data Communications Systems,
  * rather interesting.  I must admit that I hadn't thought of submitting
  * spam as an RFC.)

!? Hardly spam.  The early RFCs were used for all sorts of informal notes
and announcements among the small set of early participants in the ARPAnet.
There are several one-line RFCs that announce meetings, for example.

Bob Braden

  * 
  * Thanks,
  *-tjs
  * 




Re: [Hist Trivia] IP Protocol Layers

2001-07-20 Thread Jim Fleming

End-to-End Transparent Transport of the IPv4 TOS field would seem to be
a fundamental given for IPv4. It is an 8-bit field and what goes in should
come
out on the other end, unchanged. In my opinion, people and companies should
check with the carriers that they connect to, in order to make sure that the
TOS
field is transported unchanged. Assuming it is, then splitting that 8-bit
field into
two symmetric 4-bit fields allows the entire IPv4 Internet Address Space to
be
increased by a factor of x16. All of the major carriers seem to be willing
to go
on record as saying that they DO NOT CHANGE the TOS field. That seems to
be a start, at ending what some would consider to be layer violations.

http://www1.ietf.org/mail-archive/ietf/Current/msg12713.html
RFC-2001-07-11-000 IPv4+ and Testing of TOS Routing on New.Net Transport

Jim Fleming
http://www.unir.com/images/architech.gif
http://www.unir.com/images/address.gif
http://www.unir.com/images/headers.gif
http://www.ntia.doc.gov/ntiahome/domainname/130dftmail/unir.txt
http://msdn.microsoft.com/downloads/sdks/platform/tpipv6/start.asp
http://www.ietf.org/mail-archive/ietf/Current/msg12213.html
http://www.ietf.org/mail-archive/ietf/Current/msg12223.html

- Original Message -
From: Brian E Carpenter [EMAIL PROTECTED]
To: Mahadevan Iyer [EMAIL PROTECTED]
Cc: ietf [EMAIL PROTECTED]
Sent: Thursday, July 19, 2001 2:26 PM
Subject: Re: [Hist Trivia] IP Protocol Layers


 Interestingly enough, when we wrote RFC 1958 Architectural principles
 of the Internet, nobody suggested layer violation is evil as a
 principle. The arguments against layer violation tend to be pragmatic -
 certain types of layer violation (such as content based routing)
 could lead to complex failure modes - others (such as diffserv peeking)
 are probably safe. It certainly shouldn't be a religious principle.

Brian

 Mahadevan Iyer wrote:
 
  Jon Crowcroft wrote:
 
   In message v04220802b77bde136984@[10.83.97.216], Steve Deering
typed:
  
We used to use gateway instead of router (and a few still do),
and
  
   i lik the fact that if you type getaway by mistake you get what people
   are trying to do when they are routed ...
  
   i also like the fact that MOST fancy things we do in traffic treatment
   (firewall, diff/int serv, header compression, checksum) ignore this
   layering rubbish idea and look at the whole packet and the whole state
   of the systems where you need to..
 
  I always thought peeking into other layer headers to make better
decisions
  doesn't always destroy layering. It's when the implementation gets tied
to a
  specific other-layer technology,  or it *writes* into other layer
headers, or
  performs 'designated' other-layer functions, that layering is destroyed.
 
  Say, a diff serv implementation that tries to figure out what kind of
lower
  layer protocol is present and if it succeeds in doing so, uses the lower
layer
  information to make forwarding decisions, is not really destroying
layering,
  is it.
  I can still deploy this diff serv implementation readily over all kinds
of
  lower layer 'technologies' or standards, because it is not tied to any
  specific such technology. If it can recognise the lower layer
technology, it
  uses that extra lower layer information to try improve performance,
otherwise
  it just performs default operations. So for example, I can still easily
  transfer such an implementation from a wired-ethernet to some wireless
  standard without any rework. Now, isn't *that* kind of layering good? Or
am I
  missing something.





Re: [Hist Trivia] IP Protocol Layers

2001-07-19 Thread Mahadevan Iyer



Jon Crowcroft wrote:

 In message v04220802b77bde136984@[10.83.97.216], Steve Deering typed:

  We used to use gateway instead of router (and a few still do), and

 i lik the fact that if you type getaway by mistake you get what people
 are trying to do when they are routed ...

 i also like the fact that MOST fancy things we do in traffic treatment
 (firewall, diff/int serv, header compression, checksum) ignore this
 layering rubbish idea and look at the whole packet and the whole state
 of the systems where you need to..

I always thought peeking into other layer headers to make better decisions
doesn't always destroy layering. It's when the implementation gets tied to a
specific other-layer technology,  or it *writes* into other layer headers, or
performs 'designated' other-layer functions, that layering is destroyed.

Say, a diff serv implementation that tries to figure out what kind of lower
layer protocol is present and if it succeeds in doing so, uses the lower layer
information to make forwarding decisions, is not really destroying layering,
is it.
I can still deploy this diff serv implementation readily over all kinds of
lower layer 'technologies' or standards, because it is not tied to any
specific such technology. If it can recognise the lower layer technology, it
uses that extra lower layer information to try improve performance, otherwise
it just performs default operations. So for example, I can still easily
transfer such an implementation from a wired-ethernet to some wireless
standard without any rework. Now, isn't *that* kind of layering good? Or am I
missing something.











Re: [Hist Trivia] IP Protocol Layers

2001-07-19 Thread Brian E Carpenter

Interestingly enough, when we wrote RFC 1958 Architectural principles
of the Internet, nobody suggested layer violation is evil as a
principle. The arguments against layer violation tend to be pragmatic -
certain types of layer violation (such as content based routing)
could lead to complex failure modes - others (such as diffserv peeking) 
are probably safe. It certainly shouldn't be a religious principle.

   Brian

Mahadevan Iyer wrote:
 
 Jon Crowcroft wrote:
 
  In message v04220802b77bde136984@[10.83.97.216], Steve Deering typed:
 
   We used to use gateway instead of router (and a few still do), and
 
  i lik the fact that if you type getaway by mistake you get what people
  are trying to do when they are routed ...
 
  i also like the fact that MOST fancy things we do in traffic treatment
  (firewall, diff/int serv, header compression, checksum) ignore this
  layering rubbish idea and look at the whole packet and the whole state
  of the systems where you need to..
 
 I always thought peeking into other layer headers to make better decisions
 doesn't always destroy layering. It's when the implementation gets tied to a
 specific other-layer technology,  or it *writes* into other layer headers, or
 performs 'designated' other-layer functions, that layering is destroyed.
 
 Say, a diff serv implementation that tries to figure out what kind of lower
 layer protocol is present and if it succeeds in doing so, uses the lower layer
 information to make forwarding decisions, is not really destroying layering,
 is it.
 I can still deploy this diff serv implementation readily over all kinds of
 lower layer 'technologies' or standards, because it is not tied to any
 specific such technology. If it can recognise the lower layer technology, it
 uses that extra lower layer information to try improve performance, otherwise
 it just performs default operations. So for example, I can still easily
 transfer such an implementation from a wired-ethernet to some wireless
 standard without any rework. Now, isn't *that* kind of layering good? Or am I
 missing something.




Re: [Hist Trivia] IP Protocol Layers

2001-07-18 Thread Marshall T. Rose

 And if the terminology really is the most important contribution of OSI -
 I think that this is amusing, ironic, and instructive all at the same
time.
 It's amusing and ironic because of the huge amount of effort that went to
 developing and promoting OSI.  It's instructive because it demonstrates
 that even something as simple as a well-thought-out taxonomy can be
 really beneficial.

keith - i think you're pretty close to damning with faint praise here, and
you don't realize it. in high earth orbit, i can certainly agree that the
high-level terminology was useful. in terms of any practical perspective
though, the terminology is meaningless without an architecture, and the OSI
architecture isn't all that helpful.

for example, one of my favorite OSI acronyms is IONL, which stands for the
internal organization of the network layer. ISO actually produced a standard
on this. why? well, because in the OSI architecture, you had to accomodate
both CL and CO network (sub)layers. this is simply not workable or even
rationale.

so, if the statement is that the OSI architecture was so general that it
could accomodate every possible existing and future architecture, i guess
i'd agree, but before doing so, i'd ask what's the point?

/mtr

ps: many of us still use router instead of intermediate-system and
host instead of end-system, so i guess i have to question just how
useful all that OSI stuff really was. (other than giving me the opportunity
to write several books ten years ago poking fun at it...)