[ih] BGP vs EGP

Jack Haverty jack at 3kitty.org
Tue Aug 18 16:02:27 PDT 2009


Bob's recollections agree with mine.  

At the time, we had the problem that the infant Internet was being
pulled by two conflicting goals: operating as a high-reliability
communications service, and providing a platform on which new approaches
could be tried as new issues and needs surfaced.

EGP was created based on Bob Kahn's guidance that the Internet had to
develop a technology which allowed the Internet to evolve into a system
where the pieces were designed, constructed, deployed, operated, and
managed by many different organizations.  An Internet composed of
equipment which was all from one vendor, operated by one organization,
owned by one payer-of-the-bills, was not the goal.   An Arpanet-style
network, with all hardware/software/operations by BBN or any other
single organization, was not acceptable as a model for the Internet.

Eric had been deeply involved with the Arpanet operations, and in
particular knew lots about the kinds of things that could, and did,
happen in the operational environment to wreak havoc with routing
mechanisms and other such internals.   I spent many hours learning from
him why it wouldn't work, and that we didn't know how to create an
Internet with diverse equipment, software, programmers, etc.  We
especially didn't know how to go about developing such a network and
also keep it highly reliable at the same time.  There was also a
perennial list of to-be-solved problems, like the "expressway routing"
and "type-of-service routing" scenarios, which would need new mechanisms
and need experimental runtime.  Reliability and experimental don't mix.

EGP was defined specifically to enable different groups to try different
approaches to the different problems, each implementing a fragment of
Internet, interconnected so that it was likely possible to communicate
across boundaries.  It was an "internet of internets" technology.  As
Bob says, EGP did not attempt to be a routing protocol.  It was more of
a simple connectivity protocol, with a list of caveats - e.g., if you
interconnect in such a way to create loops (which implies routing
decisions), the result is undefined (but would be fascinating...)

EGP was also intentionally minimal, in order to make it easier to
actually get it into use and most likely to not cause problems.  In
addition to basic connectivity, it's other main function was to allow
individual "autonomous systems" to protect themselves internally from
outside influences to whatever extent they desired.  In particular, one
system didn't have to believe the information it got from outside, if it
had good reason to be suspicious.

This connectivity approach permitted the separate development of a
variety of technologies for different goals - e.g., NSFNets policy
rules.  But they all could be interconnected and with care basic
functions were reliable, e.g., email.

I think BGP was in a sense EGP 2.0 - based on experience gained in the
various internetwork fragments, BGP added more functionality to provide
better service for the particular problems that were most important, and
that had been figured out.  EGP was an enabling technology that
established the architecture and fostered the invention of BGP.

When I was involved in Oracle's internal internet in the early 90s, we
used an all-Cisco approach.  There was a single (DS3) interconnection to
"the Internet", probably using BGP (can't remember).  It was the
obvious, most likely to work, approach.  It had its ugly side - e.g., an
employee in Europe could exchange email with a customer who might be in
the same building, but all the traffic went through California.  As I
remember, a lot of customers' networks were similar "homogeneous"
configurations.  I wonder if that's what the overall Internet looks like
- a single-vendor system with different islands interconnected by single
paths.  And if so, is that because the general multi-player, rich
interconnection research isn't done yet, or showed it was too hard,
or ???

/Jack Haverty
Point Arena, CA
 

 


On Tue, 2009-08-18 at 13:59 -0700, Bob Braden wrote:
> Please repeat after me (and I am paraphrasing Dave Mills' oft-repeated 
> mantra): EGP was NOT a routing protocol, it was only a REACHABILITY
> protocol.  For inter-domain routing, Internet used essentially static 
> routing modulated by reachability information from EGP.
> 
> Early efforts by Mills and others to extend EGP into an inter-domain 
> routing protocol failed.  There was an effort to design a global 
> link-state routing protocol, but Eric Rosen (BBN) turned out a 
> hard-to-read but ultimately convincing note about why this would not work.
> 
> The advent of NSFnet forced the community to solve the problem of 
> inter-domain routing. Yakov Rekhter came up with the idea of path vector 
> roting, which solved the looping problem, and BGP was born.
> 
> Bob Braden
> 
> PS: The anecdote is completely correct.
> 
> 
> 
> 




More information about the Internet-history mailing list