From owner-freebsd-net@freebsd.org Tue Aug 25 15:34:21 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 0E5A199A786 for ; Tue, 25 Aug 2015 15:34:21 +0000 (UTC) (envelope-from melifaro@ipfw.ru) Received: from forward19h.cmail.yandex.net (forward19h.cmail.yandex.net [IPv6:2a02:6b8:0:f35::a4]) by mx1.freebsd.org (Postfix) with ESMTP id BE0231332; Tue, 25 Aug 2015 15:34:20 +0000 (UTC) (envelope-from melifaro@ipfw.ru) Received: from web10h.yandex.ru (web10h.yandex.ru [IPv6:2a02:6b8:0:f05::20]) by forward19h.cmail.yandex.net (Yandex) with ESMTP id BAC0D219D5; Tue, 25 Aug 2015 18:34:17 +0300 (MSK) Received: from 127.0.0.1 (localhost [127.0.0.1]) by web10h.yandex.ru (Yandex) with ESMTP id 04CD2100017B; Tue, 25 Aug 2015 18:34:16 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfw.ru; s=mail; t=1440516857; bh=OXtrR02QUI1hMTgs7rr6RWnFtRi34KGox+gZNKI1w1Y=; h=From:To:In-Reply-To:References:Subject:Date; b=obXlb97AuQYQK2YbaYApKNnTgJE1o1UBPWsn/dXmyB/P1Eo87PzAD0brE7qaC8D/h MyLnRx0ssdSUx9BR/PHdnDpU0aZ33yO6Gwz4+yQZ1t0W7QLBvXBvL+mJ8w5z9VYASP eBIpl1CSTMOQ7U16CjtG2oZfuoc8esjCDqn1Bws4= Received: by web10h.yandex.ru with HTTP; Tue, 25 Aug 2015 18:34:16 +0300 From: Alexander V. Chernikov To: Julian Elischer , Evgeny Khorokhorin , "freebsd-net@freebsd.org" In-Reply-To: <55DC7F94.1080908@freebsd.org> References: <55DC76B7.9060606@maxnet.ru> <55DC7F94.1080908@freebsd.org> Subject: Re: FreeBSD 10.2 , ospf vs. aggregated static routes, performance issue MIME-Version: 1.0 Message-Id: <451201440516856@web10h.yandex.ru> X-Mailer: Yamail [ http://yandex.ru ] 5.0 Date: Tue, 25 Aug 2015 18:34:16 +0300 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=koi8-r 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 15:34:21 -0000 25.08.2015, 17:46, "Julian Elischer" : > On 8/25/15 10:07 PM, Evgeny Khorokhorin wrote: >> š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. > > without knowing anything, it looks like a lock on the route is a > bottleneck. > lots of routes spreads the pain.. Julian is absolutely right - there is currently a contention on individual route entries, so I'd better leave ospf (and keep static route so speed of ospf convergence won't hurt). Or if you want to totally get rid of dynamic protos, than yes, you will have to split this static route into smaller pieces to reduce contention.. > > try two manually added static routes 172.16.0.0/13 and 172.24.0.0/13 > (I hope I split that correctly) and see if it changes things.. > then try 4.. > >> š-- Cheers, >> šEvgeny >> >> š_______________________________________________ >> šfreebsd-net@freebsd.org mailing list >> šhttps://lists.freebsd.org/mailman/listinfo/freebsd-net >> šTo unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" > > _______________________________________________ > freebsd-net@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"