The MPLS WG Archive

Cell Relay Retreat>MPLS WG Archive>month:2001-Jul> msg00295



[Date Prev][Date Next][Thread Prev][Thread Next]  
  [Date Index][Thread Index][Author Index][Subject Index]

fault tolerant TCP implementation

  • From: "Adrian Farrel" <afarrel@movaz.com>
  • Date: Wed, 18 Jul 2001 11:35:44 -0400
  • Cc: <danny@ambernetworks.com>, <pjb@dataconnection.com>, <philipma@nortelnetworks.com>, <mpls@UU.NET>, <mpls-ops@mplsrc.com>
  • X-OriginalArrivalTime: 18 Jul 2001 15:34:44.0565 (UTC) FILETIME=[2B69B850:01C10F9F]

In deed!

For example, a naïf implementer would look at the problem and decide that the
way to achieve TCP FT is to replicate the data in each packet between the two
TCP stacks.  Now depending on the hardware architecture, this may require a
significant amount of data shuffling across the backplane.  This is likely to
have some impact on performance.

Adrian
--
Adrian Farrel
Movaz Networks Inc.
afarrel@movaz.com
----- Original Message -----
From: "Eric Gray" <eric.gray@sandburst.com>
To: <Aditya@in.huawei.com>
Cc: <danny@ambernetworks.com>; <afarrel@movaz.com>; <pjb@dataconnection.com>;
<philipma@nortelnetworks.com>; <mpls@UU.NET>; <mpls-ops@mplsrc.com>
Sent: Wednesday, July 18, 2001 11:29 AM
Subject: Re: fault tolerant TCP implementation


> Aditya,
>
>     A big part of the difficulty may not be superficially obvious.  TCP
> has to maintain synchronization state on all unacknowledged packets
> as well as which packets it has already acknowledged for each entity
> with which it has established sockets.  Keeping synchroniztion across
> multiple redundant TCP implementations can keep a set of CPUs fairly
> busy.
>
>     What Danny is alluding to in his somewhat unsubtle plug is that you
> can come up with several architectural approaches to make it a little
> easier to do this.  However, the extent of dynamism involved in keeping
> even two redundant local TCP instances in synch (without involving any
> remote TCP instances) can make it difficult to architect a system that
> does this without coupling the two instances to such a high degree that
> many (if not most) of the things that would make one fail would have the
> same effect on the other.
>
> --
> Eric Gray
>
> Danny McPherson wrote:
>
> > > Dear MPLS Gurus,
> > > In the draft on ldp-FT (draft-ietf-mpls-ldp-ft-02.txt ) the authors
> > > write on Page 4, in section 2.2 that it  "Notoriously Hard
> > >
> > > to provide a fault tolerant implementation of TCP"...My question is WHY
> > > ? .Why is it so difficult to recreate a TCP connection ( across a
> > > switchover
> > >
> > > from Active Board to Standby Board ) if the connection is in ESTABLISHED
> > > state ?
> > > Later they go on to say that  "This is an issue familiar to implementers
> > > of other TCP applications such as BGP".
> > > If anyone could point me to any such related work,I would highly
> > > appreciate their help.
> >
> > I know of at least one vendor (deployed in production networks) that
> > provides this (i.e., stateful TCP failover for BGP, LDP, etc..).  It's
> > not impossible, it's just not "easy", especially when the system isn't
> > designed from the start to support it.
> >
> > -danny
>