From owner-freebsd-net@FreeBSD.ORG Thu Feb 11 04:11:28 2010 Return-Path: Delivered-To: net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A643A106566C; Thu, 11 Feb 2010 04:11:28 +0000 (UTC) (envelope-from qing.li@bluecoat.com) Received: from whisker.bluecoat.com (whisker.bluecoat.com [216.52.23.28]) by mx1.freebsd.org (Postfix) with ESMTP id 8F5378FC19; Thu, 11 Feb 2010 04:11:28 +0000 (UTC) Received: from bcs-mail03.internal.cacheflow.com ([10.2.2.95]) by whisker.bluecoat.com (8.14.2/8.14.2) with ESMTP id o1B4BSj4003304; Wed, 10 Feb 2010 20:11:28 -0800 (PST) X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Date: Wed, 10 Feb 2010 20:11:22 -0800 Message-ID: X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: ECMP enhancement Thread-Index: Acqq0EVTT28ES9OrQheQmTkpK9Aw7A== From: "Li, Qing" To: , Cc: qingli@freebsd.org Subject: ECMP enhancement X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Feb 2010 04:11:28 -0000 One of the advantages of enabling ECMP is to allow for connection load = balancing. Currently the address alias handling method is colliding with the ECMP = code. For example, when two interfaces are configured on the same prefix, only one prefix route is installed. So connection load balancing is not = possible. The other advantage of ECMP is for failover. The issue with the current = code, is=20 that the interface link-state is not reflected in the route entry. For = example,=20 if there are two interfaces on the same prefix, the cable on one = interface is=20 unplugged, new and existing connections should switch over to the other = interface.=20 This is not done today and packets go into a black hole. I discussed about these issues on the list about a month ago. Also, there is a small bug in the kernel where deleting ECMP routes in = the=20 userland will always return an error even though the command is = successfully executed. I have a patch that addresses the above issues. The patch is available = at: http://people.freebsd.org/~qingli/ecmp-linkstate-patch.diff This is not the final version. Your comments are welcome. -- Qing