/[dynamips]/trunk/README.hypervisor
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /trunk/README.hypervisor

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6 - (show annotations)
Sat Oct 6 16:09:07 2007 UTC (16 years, 5 months ago) by dpavlin
Original Path: upstream/dynamips-0.2.6-RC5/README.hypervisor
File size: 13353 byte(s)
dynamips-0.2.6-RC5

1 Description of the hypervisor mode
2 ==================================
3
4 The hypervisor mode of dynamips allows you to run simultaneously
5 many virtual router instances, and to simulate ATM, Ethernet
6 or Frame-Relay networks.
7
8 Running dynamips in hypervisor mode
9 ===================================
10
11 dynamips -H <tcp_port>
12
13 Managing the hypervisor
14 =======================
15
16 You can connect directly to the TCP control port with telnet, or use
17 dynagen/dynagui that will pass commands transparently. The second method
18 is highly recommended.
19
20 The command syntax is simple: <module> <function> [arguments...]
21 For example: "c7200 start R1" starts virtual instance named "R1".
22
23 The modules that are currently defined are given below:
24
25 * hypervisor : General hypervisor management
26 * vm : General virtual machine (VM) management
27 * c7200 : Virtual instances of Cisco 7200
28 * c3600 : Virtual instances of Cisco 3600
29 * nio : Network Input/Output (NIO) descriptors
30 * nio_bridge : NIO bridges (shared media)
31 * atmsw : ATM switches
32 * frsw : Frame-Relay switches
33 * ethsw : Ethernet switches
34
35
36 Hypervisor management module ("hypervisor")
37 ============================================
38
39 * "hypervisor module_list" : Display the module list.
40
41 * "hypervisor cmd_list <module>" : Display commands recognized by the
42 specified module.
43
44 * "hypervisor close" : Close the current session.
45
46 * "hypervisor stop" : Destroy all objects and stop hypervisor.
47
48 * "hypervisor reset" : Destroy all objects (used to get an empty
49 configuration)
50
51 * "hypervisor working_dir <directory>" : Set the directory to use to store
52 files.
53
54 * "hypervisor save_config <filename>" : Save the configuration of all objects
55 into the specified file.
56
57
58 Virtual Machine module ("vm")
59 =============================
60
61 * "vm list" : List all VM instances (c7200, c3600).
62
63 * "vm set_debug_level <instance_name> <level>" : Set the debug level
64 (which is a number) for a VM. By default, no specific debug is enabled
65 (level = 0).
66
67 * "vm set_ios <instance_name> <ios_file>" : Set the IOS image file to
68 use. There is no default.
69
70 * "vm set_config <instance_name> <config_reg>" : Set the config register
71 value.
72
73 * "vm set_ram <instance_name> <ram_size>" : Set the RAM size, specified
74 in Mbytes.
75
76 * "vm set_nvram <instance_name> <nvram_size>" : Set the NVRAM size,
77 specified in Kbytes.
78
79 * "vm set_ram_mmap <instance_name> <0|1>" : Enable/Disable use
80 of a mapped file to simulate router memory. By default, a mapped file
81 is used. This is a bit slower, but requires less memory.
82
83 * "vm suspend <instance_name>" : Suspend execution of the instance.
84
85 * "vm resume <instance_name>" : Resume execution of the instance.
86
87 * "vm set_clock_divisor <instance_name> <clock_div>" : Set the clock
88 divisor value. The higher is the value, the faster is the clock in the
89 virtual machine. The default is 4, but it is often required to adjust it.
90
91 * "vm set_idle_pc <instance_name> <pc_value>" : Set the idle Pointer
92 Counter (PC). You must determine it through the method explained in the
93 main README file.
94
95 * "vm set_exec_area <instance_name> <area_size>" : Set the exec area
96 size. The exec area is a pool of host memory used to store pages
97 translated by the JIT (they contain the native code corresponding to MIPS
98 code pages).
99
100 * "vm set_disk0 <instance_name> <value>" : Set size of PCMCIA ATA disk0.
101
102 * "vm set_disk1 <instance_name> <value>" : Set size of PCMCIA ATA disk1.
103
104 * "vm set_conf_reg <instance_name> <value>" : Set the config register
105 value. The default is 0x2102.
106
107 * "vm set_con_tcp_port <instance_name> <tcp_port>" : Set the TCP port
108 to use for console. By default, no TCP port is chosen, meaning that you
109 cannot get access to the console.
110
111 * "vm set_aux_tcp_port <instance_name> <tcp_port>" : Set the TCP port
112 to use for AUX port. By default, no TCP port is chosen, meaning that you
113 cannot get access to the AUX port.
114
115 * "vm cpu_info <instance_name> <cpu_id>" : Show info about the CPU identified
116 by "cpu_id". The boot CPU (which is typically the only CPU) has ID 0.
117
118
119 Virtual Cisco 7200 instances module ("c7200")
120 ==============================================
121
122 * "c7200 list" : List all existing Cisco 7200 instances.
123
124 * "c7200 create <instance_name> <instance_id>" : Create a new router
125 instance. The ID must be unique and is used to name files on disk.
126
127 * "c7200 delete <instance_name>" : Delete the specified instance.
128
129 * "c7200 start <instance_name>" : Start the instance.
130 At least the IOS image must be set.
131
132 * "c7200 stop <instance_name>" : Stop the instance. The settings are kept.
133
134 * "c7200 set_npe <instance_name> <npe_name>" : Set the NPE model.
135 For example: npe-100, npe-400, ... The default is "npe-200".
136
137 * "c7200 set_midplane <instance_name> <midplane_name>" : Set the midplane
138 model, it can be either "std" or "vxr". The default is "vxr".
139
140 * "c7200 set_mac_addr <instance_name> <mac_addr>" : Set the base MAC
141 address of the router. By default, the address is automatically generated
142 with this pattern : ca<instance_id>.<process_pid>.0000 (Cisco format).
143
144 * "c7200 add_pa_binding <instance_name> <slot> <pa_type>" : Add a
145 Port Adapter binding for the specified slot.
146 For example: "c7200 add_pa_binding R1 1 PA-A1" adds a PA-A1 card into
147 slot 1.
148
149 * "c7200 remove_pa_binding <instance_name> <slot>" : Remove a Port Adapter
150 binding (if it exists) for the specified slot.
151
152 * "c7200 pa_bindings <instance_name>" : Display all PA bindings for the
153 router instance.
154
155 * "c7200 add_nio_binding <instance_name> <slot> <port> <nio_name>":
156 Add a NIO binding for the interface designated by "slot/port".
157 For example: "c7200 add_nio_binding R1 1 0 nio1" (with PA-A1 bound
158 to slot 1) binds the NIO called "nio1" to the interface ATM1/0.
159
160 * "c7200 remove_nio_binding <instance_name> <slot> <port>":
161 Removes the NIO binding for the interface designated by "slot/port".
162
163 * "c7200 pa_nio_bindings <instance_name> <slot>": Display NIO bindings
164 for all ports of the specified slot.
165
166 * "c7200 pa_enable_nio <instance_name> <slot> <port>" : Enable NIO for
167 the interface "slot/port" (used when NIO has to be changed while the
168 virtual router is online).
169
170 * "c7200 pa_disable_nio <instance_name> <slot> <port>" : Disable NIO for
171 the interface "slot/port" (used when NIO has to be changed while the
172 virtual router is online).
173
174 * "c7200 pa_init_online <instance_name> <slot>" : Initialize a Port
175 Adapter while the router is online (this triggers an OIR event).
176
177 * "c7200 pa_stop_online <instance_name> <slot>" : Stop a Port
178 Adapter while the router is online (this triggers an OIR event).
179
180 * "c7200 show_hardware <instance_name>" : Display virtual hardware info
181 about the instance.
182
183
184 Virtual Cisco 3600 instances module ("c3600")
185 ==============================================
186
187 * "c3600 list" : List all existing Cisco 3600 instances.
188
189 * "c3600 create <instance_name> <instance_id>" : Create a new router
190 instance. The ID must be unique and is used to name files on disk.
191
192 * "c3600 delete <instance_name>" : Delete the specified instance.
193
194 * "c3600 start <instance_name>" : Start the instance.
195 At least the IOS image must be set.
196
197 * "c3600 stop <instance_name>" : Stop the instance. The settings are kept.
198
199 * "c3600 set_chassis <instance_name> <chassis_name>" : Set the chassis model.
200 Possible values: 3620, 3640, 3660. The default is "3640".
201
202 * "c3600 set_mac_addr <instance_name> <mac_addr>" : Set the base MAC
203 address of the router. By default, the address is automatically generated
204 with this pattern : cc<instance_id>.<process_pid>.0000 (Cisco format).
205
206 * "c3600 add_nm_binding <instance_name> <slot> <pa_type>" : Add a
207 Network Module binding for the specified slot.
208 For example: "c3600 add_nm_binding R1 1 NM-1FE-TX" adds a NM-1FE-TX card
209 into slot 1.
210
211 * "c3600 remove_pa_binding <instance_name> <slot>" : Remove a Network Module
212 binding (if it exists) for the specified slot.
213
214 * "c3600 nm_bindings <instance_name>" : Display all NM bindings for the
215 router instance.
216
217 * "c3600 add_nio_binding <instance_name> <slot> <port> <nio_name>":
218 Add a NIO binding for the interface designated by "slot/port".
219 For example: "c3600 add_nio_binding R1 1 0 nio1" (with NM-1FE-TX bound
220 to slot 1) binds the NIO called "nio1" to the interface FastEthernet1/0.
221
222 * "c3600 remove_nio_binding <instance_name> <slot> <port>":
223 Removes the NIO binding for the interface designated by "slot/port".
224
225 * "c3600 nm_nio_bindings <instance_name> <slot>": Display NIO bindings
226 for all ports of the specified slot.
227
228 * "c3600 nm_enable_nio <instance_name> <slot> <port>" : Enable NIO for
229 the interface "slot/port" (used when NIO has to be changed while the
230 virtual router is online).
231
232 * "c3600 nm_disable_nio <instance_name> <slot> <port>" : Disable NIO for
233 the interface "slot/port" (used when NIO has to be changed while the
234 virtual router is online).
235
236 * "c3600 show_hardware <instance_name>" : Display virtual hardware info
237 about the instance.
238
239
240 Network Input/Output (NIO) module ("nio")
241 ==========================================
242
243 * "nio list" : List all exiting NIOs.
244
245 * "nio create_udp <nio_name> <local_port> <remote_host> <remote_port>" :
246 Create an UDP NIO with the specified parameters.
247
248 * "nio create_unix <nio_name> <local_file> <remote_file>" :
249 Create an UNIX NIO with the specified parameters.
250
251 * "nio create_vde <nio_name> <control_file> <local_file>" :
252 Create a VDE NIO with the specified parameters. VDE stands for "Virtual
253 Distributed Ethernet" and is compatible with UML (User-Mode-Linux) switch.
254
255 * "nio create_tap <nio_name> <tap_device>" : Create a TAP NIO. TAP devices
256 are supported only on Linux and FreeBSD and require root access.
257
258 * "nio create_gen_eth <nio_name> <eth_device>" : Create a generic ethernet
259 NIO, using PCAP (0.9.4 and greater). It requires root access.
260
261 * "nio create_linux_eth <nio_name> <eth_device>" : Create a Linux ethernet
262 NIO. It requires root access and is supported only on Linux platforms.
263
264 * "nio delete <nio_name>" : Delete the specified NIO. The NIO can be deleted
265 only when it is not anymore in use by another object.
266
267 * "nio set_debug <nio_name> <debug>" : Enable/Disable debugging for the
268 specified NIO. When debugging is enabled, received and emitted packets are
269 displayed at screen. It is mainly used to debug interface drivers.
270
271
272 NIO bridge mdoule ("nio_bridge")
273 =================================
274
275 * "nio_bridge list" : List all NIO bridges.
276
277 * "nio_bridge create <bridge_name>" : Create a NIO bridge. A NIO bridge
278 acts as a shared media (a kind of hub).
279
280 * "nio_bridge delete <bridge_name>" : Delete a NIO bridge.
281
282 * "nio_bridge add_nio <bridge_name> <nio_name>" : Add a NIO as new port
283 in a NIO bridge. The NIO must be created through the "nio" module.
284
285 * "nio_bridge remove_nio <bridge_name> <nio_name>" : Remove the specified
286 NIO as member of the NIO bridge.
287
288
289 Virtual Ethernet switch ("ethsw")
290 ==================================
291
292 * "ethsw list" : List all Ethernet switches.
293
294 * "ethsw create <switch_name>" : Create a new Ethernet switch.
295
296 * "ethsw delete <switch_name>" : Delete the specified Ethernet switch.
297
298 * "ethsw add_nio <switch_name> <nio_name>" : Add a NIO as new port in an
299 Ethernet switch. The NIO must be created through the "nio" module.
300
301 * "ethsw remove_nio <switch_name> <nio_name>" : Remove the specified NIO
302 as member of the Ethernet switch.
303
304 * "ethsw set_access_port <switch_name> <nio_name> <vlan_id>" :
305 Set the specified port as an ACCESS port in VLAN <vlan_id>.
306
307 * "ethsw set_dot1q_port <switch_name> <nio_name> <native_vlan>" :
308 Set the specified port as a 802.1Q trunk port, with native
309 VLAN <native_vlan>.
310
311 * "ethsw clear_mac_addr_table <switch_name>" : Clear the MAC address table.
312
313 * "ethsw show_mac_addr_table <switch_name>" : Show the MAC address table
314 (output format: Ethernet address, VLAN, NIO)
315
316
317 Virtual ATM switch ("atmsw")
318 =============================
319
320 * "atmsw list" : List all ATM switches.
321
322 * "atmsw create <switch_name>" : Create a new ATM switch.
323
324 * "atmsw delete <switch_name>" : Delete the specified ATM switch.
325
326 * "atmsw create_vpc <switch_name> <input_nio> <input_vpi>
327 <output_nio> <output_vpi>" :
328 Create a new Virtual Path connection (unidirectional).
329
330 * "atmsw delete_vpc <switch_name> <input_nio> <input_vpi>
331 <output_nio> <output_vpi>" :
332 Delete a Virtual Path connection (unidirectional).
333
334 * "atmsw create_vcc <switch_name> <input_nio> <input_vpi> <input_vci>
335 <output_nio> <output_vpi> <output_vci>" :
336 Create a new Virtual Channel connection (unidirectional).
337
338 * "atmsw delete_vcc <switch_name> <input_nio> <input_vpi> <input_vci>
339 <output_nio> <output_vpi> <output_vci>" :
340 Delete a Virtual Channel connection (unidirectional).
341
342
343 Virtual Frame-Relay switch ("frsw")
344 ====================================
345
346 * "frsw list" : List all Frame-Relay switches.
347
348 * "frsw create <switch_name>" : Create a new Frame-Relay switch.
349
350 * "frsw delete <switch_name>" : Delete the specified Frame-Relay switch.
351
352 * "frsw create_vc <switch_name> <input_nio> <input_dlci>
353 <output_nio> <output_dlci>" :
354 Create a new Virtual Circuit connection (unidirectional).
355
356 * "frsw delete_vc <switch_name> <input_nio> <input_dlci>
357 <output_nio> <output_dlci>" :
358 Delete a Virtual Circuit connection (unidirectional).
359

  ViewVC Help
Powered by ViewVC 1.1.26