Posts

Showing posts from July, 2008

Erlang BGP daemon

I'm writing a BGP daemon in Erlang . It can connect, parse update packets and announce routes. I started up an old Cisco 2620 router and sent route announcement to it until it cried: %SYS-2-MALLOCFAIL: Memory allocation of 65536 bytes failed from 0x8046F3C8, Pool: Processor Free: 79840 Cause: Memory fragmentation Alternate Pool: None Free: 0 Cause: No Alternate pool -Process= "BGP Router", ipl= 0, pid= 84 -Traceback= 804733A4 804754C8 8046F3CC 80851CDC 8081C7D8 80832848 80832F3C 8 %BGP-5-ADJCHANGE: neighbor 172.16.x.x Down No memory Muhahahaha! The program: git clone git://github.com/ThomasHabets/eggpd.git Update later that night I flooded the 2620 again for a few minutes and then disconnected the peer. It stopped responding. Well almost. It answers to ping (17 % packet loss), and my existing telnet session seems to be working somewhat, although there is a delay of about 10 minutes between ...