Nominating a forum post submits a request to create a new Knowledge Article based on the forum post topic. Please ensure your nomination includes a solution within the reply.
PCNSE
NSE
StrongSwan
PCNSE
NSE
StrongSwan
Just an update with some current stats in case anyone is still wondering. One of our guys did this with a FortiGate-VM this year to see how much memory it would consume.
At the time of the test (Feb-2018), full BGP table is around ~600k prefixes (depends which ISP you are peerd with) injected to a FGT-VM, consumed ~262MB of RAM.
As the others have rightly mentioned, you have to consider that even though you can do it on a FGT, do you really (really) need to?
If you do, what's the currently utilisation of the CPU and memory like, is there enough headroom to process routing changes/updates.
Below is the debug output from the FortiGate-VM to show the memory utilisation.
FGT-VM-1-KVM # get router info bgp summary BGP router identifier 192.168.2.100, local AS number 65000 BGP table version is 1 89183 BGP AS-PATH entries 4569 BGP community entries Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd 192.168.2.250 4 65001 8132714 11 0 0 0 01:11:24 599538 Total number of neighbors 1 FGT-VM-1-KVM # get router info bgp memory ================= XMEM ALLOCATOR INFO ====================== (1) 0x7fbe24b72f00: 4 1493 65536 1 0 (2) 0x7fbe24b72e70: 8 25385 65536 1 0 (3) 0x7fbe24b72de0: 12 8344 65536 1 0 (4) 0x7fbe24b72d50: 16 67281 131072 2 0 (5) 0x7fbe24b72cc0: 20 228621 327680 5 0 (6) 0x7fbe24b72c30: 24 5470557 5832704 89 0 (7) 0x7fbe24b72ba0: 28 598330 720896 11 0 (8) 0x7fbe24b72b10: 32 3308960 3473408 53 0 (9) 0x7fbe24b72a80: 36 170568 196608 3 0 (10) 0x7fbe24b729f0: 40 119726 131072 2 0 (11) 0x7fbe24b72960: 44 79863 131072 2 0 (12) 0x7fbe24b728d0: 48 61865 65536 1 0 (13) 0x7fbe24b72840: 64 273475 327680 5 0 (14) 0x7fbe24b727b0: 80 78452 131072 2 0 (15) 0x7fbe24b72720: 96 78391 131072 2 0 (16) 0x7fbe24b72690: 112 1542556 1638400 25 0 (17) 0x7fbe24b72600: 128 80938108 81723392 1247 0 (18) 0x7fbe24b72570: 160 167971096 198770688 3033 0 (19) 0x7fbe24b724e0: 192 747400 851968 13 0 (20) 0x7fbe24b72450: 224 378721 458752 7 0 (21) 0x7fbe24b723c0: 256 135864 196608 3 0 (22) 0x7fbe24b72330: 384 73825 131072 2 0 (23) 0x7fbe24b722a0: 512 9955 65536 1 0 (24) 0x7fbe24b72210: 640 2164 65536 1 0 (25) 0x7fbe24b72180: 768 0 65536 1 1 (26) 0x7fbe24b720f0: 896 824 65536 1 0 (27) 0x7fbe24b72060: 1024 2048 65536 1 0 (28) 0x7fbe24b71f00: 2048 1167 65536 1 0 (29) 0x7fbe24b71e70: 4096 23632 65536 1 0 (30) 0x7fbe24b71de0: 8192 73816 131072 2 0 (31) 0x7fbe24b71d50:16384 0 0 0 0 (32) 0x7fbe24b71cc0:32768 16608 65536 1 0 Total: 262489095 296222720 4520 1 ------------------------------------------------ (1) 0x7fbe24b70300: 161688 163840 (2) 0x7fbe24b70840: 161688 163840 Total: 323376 327680 ------------------------------------------------ Summary: 262812471, 296550400, 13 ================= END OF XMEM ALLOCATOR INFO =============== Timer: pending 6, added 8190304, expired 2379, deleted 8187919 bgp memory usage Memory type Alloc count Alloc bytes =================================== ============= =============== BGP structure : 2 323376 BGP VR structure : 2 480 BGP global structure : 1 112 BGP peer : 3 10752 BGP RIB : 599538 76740864 BGP attribute : 103036 14012896 BGP aspath : 89183 2853856 BGP aspath seg : 89183 2276438 BGP aspath str : 89183 11999236 Community : 4569 146208 Community val : 4569 156256 Community str : 4569 436642 BGP as list master : 1 32 Community list handler : 1 32 BGP Damp Reuse List Array : 2 8192 BGP table : 66 528 BGP node : 1093747 148749592 ----------------------------------- ------------- --------------- Temporary memory : 5226 173989 Hash : 7 280 Hash index : 7 57344 Hash bucket : 196797 4723128 Thread master : 1 224 Thread : 13 1976 Epoll data : 8 640 Link list : 37 1480 Link list node : 24 576 Show : 1 520 Show page : 3 12336 Show server : 1 64 Prefix IPv4 : 8 64 Prefix IPv6 : 4 80 Route table : 10 160 Route node : 50 4800 Vector : 2667 42672 Vector index : 2667 47440 Host config : 1 2 Message of The Day : 1 100 IMI Client : 1 824 VTY master : 1 40 VTY if : 9 3312 VTY connected : 6 336 Stream sock CB : 1 144 Circular queue buf : 1 4136 Message handler : 2 208 NSM Client Handler : 1 16608 NSM Client : 1 2528 Host : 2 256 Log information : 2 96 Context : 1 456 SYS ZEBOS IPC Server : 1 160 ----------------------------------- ------------- --------------- bgp proto specifc allocations : 257715492 B bgp generic allocations : 5096979 B bgp total allocations : 262812471 B
Very good post. Keep in mind BGP table memory and what's actually in the RIB is not the same. A single bgp ipv4 route is approx 256 bytes, a ipv6 route is approx 4x times bigger
Next the CPU util% in a single 24hour period, ( in my ISP peer we have had 388493 bgp path updates or notifications for my topology.
All of these and more so should be analyze when sizing bgp cpu/memory requirements. Use the following blog for suspect growth model
http://bgphelp.com/2017/01/01/bgpsize/
And use the following example for soft-reconfgure
http://socpuppet.blogspot.com/2013/09/bgp-table-received-only-demonstration.html
PCNSE
NSE
StrongSwan
Select Forum Responses to become Knowledge Articles!
Select the “Nominate to Knowledge Base” button to recommend a forum post to become a knowledge article.
User | Count |
---|---|
1713 | |
1093 | |
752 | |
447 | |
231 |
The Fortinet Security Fabric brings together the concepts of convergence and consolidation to provide comprehensive cybersecurity protection for all users, devices, and applications and across all network edges.
Copyright 2024 Fortinet, Inc. All Rights Reserved.