With great virtualisation comes great responsibility!

By default, Windows has a 2 GB per process limit that (after including the memory used by the virtual router RAM, cygwin, libraries, and “scratch space”) you are bumping up against. 32-bit Linux has a 3 GB per process limit by default.


One workaround for this problem is to use the sparsemem option.

Another is to run multiple instances of Dynamips on the same system listening on different control ports like so:

On Windows:

Create two .cmd files: dynagen-1.cmd and dynagen-2.cmd. The contents of both can look something like:

DYNAGEN-1.CMD

@echo off
rem Launch a local copy of dynamips
set dynamips=%CD%\dynamips.exe
cd %TEMP%
start /belownormal /B /wait "Dynamips" "%dynamips%" -H 7200
pause

DYNAGEN-2.CMD

@echo off
rem Launch a local copy of dynamips
set dynamips=%CD%\dynamips.exe
cd %TEMP%
start /belownormal /B /wait "Dynamips" "%dynamips%" -H 7200
pause

On Linux/Unix:
nice dynamips –H 7200 &
nice dynamips –H 7201 &

The only issue is that the UDP NIOs that Dynagen picks to make the various connections will “collide” because Dynagen thinks they are different servers and therefore those UDP ports safe to re-use. The workaround is to use the new “udp” option to change the starting UDP port for NIOs on one of the servers. So the relevant sections would look something like this:
 
[localhost]      # Talk to the 1st dynamips process on the default port 7200
[[7200]]
[[ROUTER R1]]
f0/0 = R2 f0/0

[localhost:7201] # Talk to the 2nd dynamips process on port 7201
udp = 11000     # Change the base udp port to 11000 (the default is 10000)
[[7200]]
[[ROUTER R2]]

§54 · April 1, 2008 · Dynagen · · [Print]

1 Comment to “Dynagen process limit”

  1. anybody here know of a good site to find more info on linux virtual servers? I\’ve got this site bookmarked and im gonna keep checking it out, but i still would like to find a site that covers linux virtual servers a little more thoroughly..thanks

Leave a Reply