[Idr] draft-przygienda-idr-compressed-updates real life experiments

matecs <matecs@niif.hu> Mon, 07 August 2017 06:03 UTC

Return-Path: <matecs@niif.hu>
X-Original-To: idr@ietfa.amsl.com
Delivered-To: idr@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 02888127AD4 for <idr@ietfa.amsl.com>; Sun, 6 Aug 2017 23:03:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xqy5wzgftWBF for <idr@ietfa.amsl.com>; Sun, 6 Aug 2017 23:03:40 -0700 (PDT)
Received: from linzer.ki.iif.hu (linzer.ki.iif.hu [193.224.163.7]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4B667120227 for <Idr@ietf.org>; Sun, 6 Aug 2017 23:03:37 -0700 (PDT)
Received: from bolha.lvs.iif.hu (bolha.lvs.iif.hu [193.225.14.181]) by linzer.ki.iif.hu (Postfix) with ESMTP id 703AD4060EF; Mon, 7 Aug 2017 08:03:35 +0200 (CEST)
X-Virus-Scanned: Debian amavisd-new at bolha.lvs.iif.hu
Received: from linzer.ki.iif.hu ([IPv6:::ffff:193.224.163.7]) by bolha.lvs.iif.hu (bolha.lvs.iif.hu [::ffff:193.225.14.72]) (amavisd-new, port 10024) with ESMTP id 4TkZ_yUwsCg7; Mon, 7 Aug 2017 08:03:32 +0200 (CEST)
Received: from [IPv6:2001:db8:21:0:221a:6ff:fe6d:1304] (unknown [IPv6:2001:470:1f1a:308::dead:beef]) by linzer.ki.iif.hu (Postfix) with ESMTPSA id 9CF284060EC; Mon, 7 Aug 2017 08:03:31 +0200 (CEST)
From: matecs <matecs@niif.hu>
To: Idr@ietf.org
Message-ID: <c877e8ff-5549-de07-f0e3-e431ff1bd7b2@niif.hu>
Date: Mon, 07 Aug 2017 08:03:31 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 7bit
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/J4mK1Wkp-wIdvOCvhE7-S3kOlwo>
Subject: [Idr] draft-przygienda-idr-compressed-updates real life experiments
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Inter-Domain Routing <idr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/idr>, <mailto:idr-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/idr/>
List-Post: <mailto:idr@ietf.org>
List-Help: <mailto:idr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/idr>, <mailto:idr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 07 Aug 2017 06:03:43 -0000

hi,

i'm the author of http://freerouter.nop.hu/, and i've just finished the 
implementation of this draft,

and as a netadmin at as1955, i've enabled it on our infra to see the 
results.

first of all, my code puts a single prefix to an update, and immediately 
compresses it,

which is the worst case from the compression point of view, but the 
numbers are still nice!

1 and 2 are from dn42.net, ~600 prefixes, resulted 30% of the original.

3 and 4 are from my lab, ~100 prefixes, resulted 20% of the original.

5 and 6 are from live internet as seen at as1955,

rr1 is a subset, 2k prefixes, resulted 21% of the original.

rr2 is full table, 700k prefixes, resulted 14% of the original.

rr3 is not freerouter, so currently not supports compression.

7 and 8 are the detailed byte(packet) counters, connection means the 
bytes hit the line,

uncompressed is the bytes before the compression, without the 16 bytes 
marker.

9 and 10 are the raw compression and decompression times.

in summary, this feature taken the full table convergence time far below 
1 minute in our

geo-redundant rr cluster, and the implementation was fairly easy, so 
consider supporting it!

regards,

csaba mate

niif/hungarnet



1)
working-demo#show ipv4 bgp 1 compression
as          rx    tx    rx     tx     neighbor
4242428666  true  true  31.9%  34.7%  172.23.43.93
4242421955  true  true  24.6%  31.9%  172.23.199.100
4242428666  true  true  30.0%  32.1%  172.23.43.65
4242428666  true  true  22.9%  23.9%  172.23.43.66
4242428666  true  true  30.0%  32.1%  172.23.43.67
4242428666  true  true  30.0%  32.1%  172.23.43.68

2)
working-demo#show ipv6 bgp 1 compression
as          rx    tx    rx     tx     neighbor
4242421955  true  true  22.9%  17.5%  fd40:bad:dead:babe::4
4242428666  true  true  18.0%  18.0%  fd40:2343:64:fa52::1
4242428666  true  true  27.0%  28.5%  fd40:2343:64:fa52::ccc:1
4242428666  true  true  21.3%  21.4%  fd40:2343:64:fa52::ccc:2
4242428666  true  true  27.0%  28.5%  fd40:2343:64:fa52::ccc:4

working-demo#



3)
safe-rr#show ipv4 bgp 65535 compression
as     rx     tx     rx     tx     neighbor
65535  true   true   88.8%  22.9%  10.1.252.252
65535  true   true   88.8%  22.8%  10.1.252.253
65535  true   true   88.3%  22.9%  10.1.252.254
65535  true   true   88.8%  22.8%  10.1.252.255
65535  true   true   89.2%  22.9%  10.4.4.254
65535  true   true   69.7%  22.8%  10.10.10.12
65535  false  false  ??%    ??%    10.10.10.16
65535  true   true   89.6%  22.7%  10.10.10.88
65535  false  false  ??%    ??%    10.10.10.220
65535  true   true   81.0%  22.8%  10.10.10.221
65535  true   true   88.1%  22.7%  10.10.10.222
65535  true   true   76.2%  22.7%  10.10.10.224
65535  true   true   62.9%  22.8%  10.10.10.225
65535  true   true   54.3%  22.7%  10.10.10.226
65535  false  false  ??%    ??%    10.10.10.227

4)
safe-rr#show ipv6 bgp 65535 compression
as     rx     tx     rx     tx     neighbor
65535  true   true   50.6%  17.0%  2001:db8:1101::12
65535  false  false  ??%    ??%    2001:db8:1101::16
65535  true   true   66.9%  17.0%  2001:db8:1101::88
65535  true   true   67.1%  17.0%  2001:db8:1101::4254
65535  false  false  ??%    ??%    2001:db8:1101::220:220
65535  true   true   61.4%  17.0%  2001:db8:1101::221:221
65535  true   true   66.4%  17.0%  2001:db8:1101::222:222
65535  true   true   61.8%  17.0%  2001:db8:1101::224:224
65535  true   true   51.7%  17.0%  2001:db8:1101::225:225
65535  true   true   49.0%  17.0%  2001:db8:1101::226:226
65535  false  false  ??%    ??%    2001:db8:1101::227:227
65535  true   true   67.6%  16.9%  2001:db8:1101::252:252
65535  true   true   67.2%  17.0%  2001:db8:1101::252:253
65535  true   true   67.2%  17.0%  2001:db8:1101::252:254
65535  true   true   66.9%  17.0%  2001:db8:1101::252:255

safe-rr#


5)
kaputt.debrecen3#show ipv4 bgp 1955 compression
as    rx    tx     rx     tx neighbor
1955  true  true   21.6%  110.3% <rr1>
1955  true  true   13.1%  110.3% <rr2>
1955  true  false  ??%    ??%     <rr3>

6)
kaputt.debrecen3#show ipv6 bgp 1955 compression
as    rx    tx     rx     tx     neighbor
1955  true  true   21.3%  55.0%  <rr1>
1955  true  true   14.1%  90.7%  <rr2>
1955  true  false  ??%    ??%    <rr3>

kaputt.debrecen3#

7)
kaputt.debrecen3#show ipv4 bgp 1955 neighbor <rr2> status | begin conn
connection = tx=266(12) rx=12240655(707665) drp=0(0)
uncompressed = tx=241(4) rx=93246779(707657) drp=0(0)
buffer = max=1024000 rx=0 tx=1024000

8)
kaputt.debrecen3#show ipv6 bgp 1955 neighbor <rr2> status | begin conn
connection = tx=127(11) rx=772121(41130) drp=0(0)
uncompressed = tx=140(2) rx=5445920(41121) drp=0(0)
buffer = max=256000 rx=0 tx=256000

kaputt.debrecen3#

9)
mc36@kaputt:~$ time zip zzz /data/bmp.mrt
   adding: data/bmp.mrt
         zip warning:  file size changed while zipping /data/bmp.mrt
  (deflated 80%)

real    0m8.248s
user    0m7.329s
sys     0m0.124s
mc36@kaputt:~$

10)
mc36@kaputt:~$ time unzip zzz
Archive:  zzz.zip
   inflating: data/bmp.mrt

real    0m1.790s
user    0m1.428s
sys     0m0.208s
mc36@kaputt:~$