From owner-freebsd-net@freebsd.org Tue Aug 25 14:07:57 2015 Return-Path: Delivered-To: freebsd-net@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4878899A3C5 for ; Tue, 25 Aug 2015 14:07:57 +0000 (UTC) (envelope-from john@maxnet.ru) Received: from basic.maxnet.ru (mx.maxnet.ru [195.112.97.17]) by mx1.freebsd.org (Postfix) with ESMTP id C9920B6E for ; Tue, 25 Aug 2015 14:07:55 +0000 (UTC) (envelope-from john@maxnet.ru) Received: from [217.15.204.72] (John.Office.Obninsk.MAXnet.ru [217.15.204.72] (may be forged)) by basic.maxnet.ru (8.14.6/8.14.6) with ESMTP id t7PE7ldN014201 for ; Tue, 25 Aug 2015 17:07:48 +0300 (MSK) (envelope-from john@maxnet.ru) Message-ID: <55DC76B7.9060606@maxnet.ru> Date: Tue, 25 Aug 2015 17:07:51 +0300 From: Evgeny Khorokhorin User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: freebsd-net@freebsd.org Subject: FreeBSD 10.2 , ospf vs. aggregated static routes, performance issue Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Aug 2015 14:07:57 -0000 Hi, I have 10.2-STABLE, 2 CPU Intel E5-2643v3, network Intel XL710 with 1.4.0 driver from Intel I know that going through routing table is very fast (rn_match). But I decided to optimize routing table. I'm using 2 interfaces - ixl0 and ixl1. Behind ixl0 I have 304 networks 172.16.. from /28 to /24 all via the same gw 1.1.1.1 (because ip on ixl0 with /30 mask). And behind ixl1 I have default route via 2.2.2.2. That 304 172.16 networks I receive via OSPF (quagga). Now all is OK - on every interface I have up to 500kpps/395kpps, 4.5Gbps/1.57Gbps (rx/tx on ixl1 and tx/rx on ixl0). If I disable OSPF and in zebra add static route 172.16.0.0/12 via 1.1.1.1, the system works good until traffic grow up to 251kpps/181kpps , 2.27Gbps/637Mbps. After that the system is degrading: ixl's queue threads utilizes 100% CPU and I see many many traffic drops (netstat -i) If I turn on ospfd and receive 304 more specific routes the problem disappears. Where is the problem? Or I have misunderstanding about how FreeBSD uses routing table.. P.S. I use this machine as NAT. I checked this on ipfw and pf, all the same. -- Cheers, Evgeny