# # bgp-schema.dml # # This is a schema for configuring an instance of BGP running on a router. # # Each individual BGP protocol session (BGP speaker) must be configured # separately, though certain global default values may be configured (refer # to the 'bgpoptions' attribute). That is, network attributes which apply to # multiple BGP speakers simultaneously (such as IBGP clusters) must be # configured individually at each speaker in such a way that they collectively # define the network attribute, just as done in actual networks. The # configuration of an individual BGP speaker takes place within a # 'ProtocolSession' attribute (refer to the SSFNet schema, # '.schema.Net.host.graph.ProtocolSession'). Such a 'ProtocolSession' # attribute must have a subattribute 'name' with a value of 'bgp' as well # as a subattribute 'use' with a value of 'SSF.OS.BGP4.BGPSession'. # For complete information on each attribute and how to use them, refer to the # documentation in the BGP4/doc/ directory. bgp_schema [ ProtocolSession [ name %S1!:bgp use %S1!:SSF.OS.BGP4.BGPSession autoconfig %S<1:(true|false) connretry_time %I1! min_as_orig_time %I1! reflector %S<1:(true|false) route_flap_damp %S<1:(true|false) neighbor %T:.bgp_schema.neighbor ] neighbor [ as %S1! address %S1! use_return_address %S1! hold_time %I1! keep_alive_time %I1! mrai %I1! ibgp %S<1:(reflector|client) infilter %T1!:.bgp_schema.policy.rule outfilter %T1!:.bgp_schema.policy.rule ] policy [ rule [ clause %T:.bgp_schema.ProtocolSession.clause ] clause [ precedence %I1! predicate %T1!:.bgp_schema.ProtocolSession.predicate action %T1!:.bgp_schema.ProtocolSession.action ] predicate [ atom %T:.bgp_schema.ProtocolSession.atomic_predicate ] atomic_predicate [ attribute %S1!:(nlri_ip|nlri_nhi|origin|as_path|nhi_path|next_hop_ip|next_hop_nhi|med|local_pref|atomic_agg|aggregator_ip|aggregator_nhi|communities|originator_id_ip|originator_id_nhi|cluster_list) matcher %S1! ] action [ primary %S1!:(permit|deny) atom %T:.bgp_schema.ProtocolSession.atomic_action ] atomic_action [ attribute %S1!:(origin|as_path|nhi_path|next_hop_ip|next_hop_nhi|med|local_pref|atomic_agg|aggregator_ip|aggregator_nhi|communities|originator_id_ip|originator_id_nhi|cluster_list) type %S1!:(set|append|prepend) value %S ] # This attribute configures presentation options (debugging, output, etc.). # Note that although the schema indicates that it is the same as the # 'bgpoptions' attribute, only those subattributes of 'bgpoptions' relevant # to debugging are allowed within the 'monitor' attribute. Global # behavioral options cannot be specified here. monitor %T:.bgp_schema.bgpoptions ] # end of policy container # The 'bgpoptions' attribute is a list of the DML attributes available for use # as global BGP default options, debugging options, output options, or # validation options. Using debugging, output, and validation options will # never change the functional behavior of BGP itself. The 'bgpoptions' # attribute, if utilized, must be an immediate subattribute of the top-level # 'Net' attribute. Details about each of the attributes, including their # default values, can be found in the documentation (see the BGP4/doc/ # directory). bgpoptions [ validation_test %I<1 base_startup_wait %F<1 startup_jitter_bound %F<1 use_nhi_addressing %S<1:(true|false) auto_advertise %S<1:(true|false) proc_delay_model %S<1 min_proc_time %F<1 max_proc_time %F<1 global_ebgp_mrai %I<1 global_ibgp_mrai %I<1 global_hold_time %I<1 global_keep_alive_time %I<1 wrate %S<1:(true|false) split_horizon %S<1:(true|false) ssld %S<1:(true|false) rate_limit_by_dest %S<1:(true|false) route_flap_damp %S<1:(true|false) punishLess %S<1:(true|false) newRFD %S<1:(true|false) always_run_dp %S<1:(true|false) jitter_masoi %S<1:(true|false) jitter_keepalive %S<1:(true|false) jitter_mrai %S<1:(true|false) auto_reconnect %S<1:(true|false) streaming %S<1:(true|false) printing %S<1:(true|false) show_id_data %S<1:(true|false) show_nb_info %S<1:(true|false) show_ibgp_clusters %S<1:(true|false) show_timer_config %S<1:(true|false) show_rfd %S<1:(true|false) show_jitter %S<1:(true|false) show_cpu_busy %S<1:(true|false) show_exec_state %S<1:(true|false) show_start_event %S<1:(true|false) show_stop_event %S<1:(true|false) show_transopen %S<1:(true|false) show_transclose %S<1:(true|false) show_transfail %S<1:(true|false) show_transfatal %S<1:(true|false) show_conn_estab %S<1:(true|false) show_hold_value %S<1:(true|false) show_ka_value %S<1:(true|false) show_snd_open %S<1:(true|false) show_rcv_open %S<1:(true|false) show_snd_ka %S<1:(true|false) show_rcv_ka %S<1:(true|false) show_snd_update %S<1:(true|false) show_snd_up %S<1:(true|false) show_rcv_update %S<1:(true|false) show_snd_notif %S<1:(true|false) show_rcv_notif %S<1:(true|false) show_set_ka %S<1:(true|false) show_set_hold %S<1:(true|false) show_set_mrai %S<1:(true|false) show_ka_exp %S<1:(true|false) show_connretry_exp %S<1:(true|false) show_hold_exp %S<1:(true|false) show_mrai_exp %S<1:(true|false) show_handle_update %S<1:(true|false) show_handle_event %S<1:(true|false) show_done_proc %S<1:(true|false) show_added_route %S<1:(true|false) show_dop_calc %S<1:(true|false) show_dec_proc %S<1:(true|false) show_ext_update %S<1:(true|false) show_fwd_table_add %S<1:(true|false) show_fwd_table_rmv %S<1:(true|false) show_fwd_tables %S<1:(true|false) show_aggregation %S<1:(true|false) show_no_msg_waiting %S<1:(true|false) show_state_changes %S<1:(true|false) show_socket_events %S<1:(true|false) show_reflection %S<1:(true|false) show_in_policy %S<1:(true|false) show_out_policy %S<1:(true|false) show_ribs_in %S<1:(true|false) show_loc_rib %S<1:(true|false) show_ribs_out %S<1:(true|false) dump_ribs_in %S<1:(true|false) dump_loc_rib %S<1:(true|false) dump_ribs_out %S<1:(true|false) dump_fwd_tables %S<1:(true|false) dump_stability %S<1:(true|false) radix_trees %S<1:(true|false) flat_aspaths %S<1:(true|false) linked_aspaths %S<1:(true|false) basic_attribs %S<1:(true|false) simple_policy %S<1:(true|false) ] ] # end of bgp_schema