bgp++_conf is a configuration utility for BGP++ simulator, its designed to expedite configuration for simulations. bgp++_conf creates two types of configuration files, a `.tcl' file describes the simulation, e.g. topology, BGP routers, traffic agents, while several `.conf' files configure individual BGP routers, i.e. there is one `.conf' file for each simulated BGP router. The command syntax of the `.conf' files is identical to syntax of GNU Zebra bgpd configuration files, although not all of the command are supported since some features of the original software have been removed in BGP++.
router info: router-level topology
--------------------------------------
Header: r1 r2 rel-type
r1 r2 : link between the routers identified by these router names
rel-type: type of relationship between r1 and r2 to be configured
Relationship types:
peer : ebgp policy peer
cust : ebgp provider-customer (r1 is provider; r2 is customer).Provider r1
announces only local routes to customer r2.
custfull : ebgp provider-customer. Provider r1 announces all carried routes
to customer r2.
ibgp : ibgp
Router names are encoded with the AS number and type of router:
A - router of AS A, which has a unique router
Ae1 - router of AS A, e.g. 701e1
Ae2 - router of AS A, e.g. 701e2
...
Aen - router of AS A, e.g. 701en
Example:
# AS 1 has three routers
13609 1e1 custfull
1e1 1e2 ibgp
1e2 1e3 ibgp
1e1 1e3 ibgp
1e3 2 custfull
prefix info: prefixes originated by each router
-----------------------------------------------
For independent prefixes:
column 1 : router ID
column 2 : keyword 'prefixes'
remaining columns: prefix:attr:routed
attr : assigns a numeric 'route attribute' to the prefix
routed: indicates if the prefix is routed ('true') or not ('false')
Example:
# two routed independent prefixes with the same route attribute:
701e1 prefixes 5.6.7.8/24:50:true 6.7.8.9:50:true
additional conf file: additional router-level BGP configuration
---------------------------------------------------------------
This file contains per-router BGP configuration text to be included as part
of the BGP configuration (`.conf' files) generated by bgp++_conf.
Each entry is formatted as:
'head' list of routers
tab-indented BGP configuration text
or:
'tail' list of routers
tab-indented BGP configuration text
Example:
head 701e1
! switch on debugging for updates
debug bgp updates
Depending on whether 'head' or 'tail' is specified the text is inserted near
the beginning or end of the `.conf' file. A router can appear in at most
one head entry and one tail entry.
"uniform min max",specify min and max in seconds "uniform-update min max",specify min and max in seconds "time"
0 -> debug NORMAL 1 -> debug FSM 2 -> debug KEEPALIVES 3 -> debug FILTERS 4 -> debug EVENTS 5 -> debug UPDATES
ping_pairs: list of ping pairs that will be created -------------------------------------------------- This file contains a list of ping pairs that define ping sessions that will be established. Header: source sink time Each entry is formatted as: 'source_id' source ping agent should be a valid router id. 'sink_id' router that will be pinged should be a valid router id. 'dst_ip' ip address of the destination this ip address will be assigned at the sink_id router and will be used for routing 'time' time(s) in sec to ping destination. Example: #source_id sink_id dst_ip time(s) 701e1 101 12.12.12.12 12 100 200 #leave a new line at the end
bgp++_conf generates a .tcl file that is parsed by ns to start the simulation. Independent of the options for bgp++_conf, each .tcl file can take a number of additional options:
Send bug reports and suggestion to fontas [you know what goes here] ece.gatech.edu.
Written by Xenofontas Dimitropoulos, Patrick Verkaik and George Riley.
This document was generated on 13 September 2004 using texi2html 1.56k.