mfea_client.xif

来自「BCAST Implementation for NS2」· XIF 代码 · 共 246 行

XIF
246
字号
/* $XORP: xorp/xrl/interfaces/mfea_client.xif,v 1.5 2003/06/01 02:09:58 pavlin Exp $ *//* * Multicast Forwarding Engine Abstraction client XRL interface. */interface mfea_client/0.1 {	/**	 * Add a new vif.	 *	 * @param vif_name the name of the new vif.	 * @param vif_index the index of the new vif.	 */	new_vif		? vif_name:txt & vif_index:u32		/**	 * Delete an existing vif.	 *	 * @param vif_name the name of the vif to delete.	 */	delete_vif	? vif_name:txt		/**	 * Add an address to a vif.	 *	 * @param vif_name the name of the vif.	 * @param addr the unicast address to add.	 * @param subnet the subnet address to add.	 * @param broadcast the broadcast address (when applicable).	 * @param peer the peer address (when applicable).	 */	add_vif_addr4	? vif_name:txt					\			& addr:ipv4 & subnet:ipv4net			\			& broadcast:ipv4 & peer:ipv4	add_vif_addr6	? vif_name:txt					\			& addr:ipv6 & subnet:ipv6net			\			& broadcast:ipv6 & peer:ipv6		/**	 * Delete an address from a vif.	 *	 * @param vif_name the name of the vif.	 * @param addr the unicast address to delete.	 */	delete_vif_addr4? vif_name:txt & addr:ipv4	delete_vif_addr6? vif_name:txt & addr:ipv6		/**	 * Set flags to a vif.	 *	 * @param vif_name the name of the vif.	 * @param is_pim_register true if this is a PIM Register vif.	 * @param is_p2p true if this is a point-to-point vif.	 * @param is_loopback true if this is a loopback interface.	 * @param is_multicast true if the vif is multicast-capable.	 * @param is_broadcast true if the vif is broadcast-capable.	 * @param is_up true if the vif is UP and running.	 */	set_vif_flags	? vif_name:txt					\			& is_pim_register:bool & is_p2p:bool		\			& is_loopback:bool & is_multicast:bool		\			& is_broadcast:bool & is_up:bool		/**	 * Complete all transactions with vif information.	 */	set_all_vifs_done	/**	 * Test if the vif setup is completed.	 *	 * @param is_completed if true the vif setup is completed.	 */	is_vif_setup_completed	-> is_completed:bool			/**	 * Receive a protocol message from the MFEA.	 *	 * @param xrl_sender_name the XRL name of the originator of this XRL.	 * @param protocol_name the name of the protocol that sends a message.	 * @param protocol_id the ID of the protocol that sends a message	 * (both sides must agree on the particular values).	 * @param vif_name the name of the vif the message was received on.	 * @param vif_index the index of the vif the message was received on.	 * @param source_address the address of the sender.	 * @param dest_address the destination address.	 * @param ip_ttl the TTL of the received IP packet. If it has a	 * negative value, it should be ignored.	 * @param ip_tos the TOS of the received IP packet. If it has a	 * negative value, it should be ignored.	 * @param is_router_alert if true, the IP Router Alert option in	 * the IP packet was set (when applicable).	 * @param protocol_message the protocol message.	 */	recv_protocol_message4	? xrl_sender_name:txt			\				& protocol_name:txt & protocol_id:u32	\				& vif_name:txt & vif_index:u32		\				& source_address:ipv4			\				& dest_address:ipv4			\				& ip_ttl:i32 & ip_tos:i32		\				& is_router_alert:bool			\				& protocol_message:binary	recv_protocol_message6	? xrl_sender_name:txt			\				& protocol_name:txt & protocol_id:u32	\				& vif_name:txt & vif_index:u32		\				& source_address:ipv6			\				& dest_address:ipv6			\				& ip_ttl:i32 & ip_tos:i32		\				& is_router_alert:bool			\				& protocol_message:binary		/**	 * Receive a kernel signal message from the MFEA.	 *	 * @param xrl_sender_name the XRL name of the originator of this XRL.	 * @param protocol_name the name of the protocol that sends a message.	 * @param protocol_id the ID of the protocol that sends a message	 * (both sides must agree on the particular values).	 * @param message_type the type of the kernel signal message (TODO:	 * integer for now: the particular types are well-known by both sides).	 * @param vif_name the name of the vif the message was received on.	 * @param vif_index the index of the vif the message was received on.	 * @param source_address the address of the sender.	 * @param dest_address the destination address.	 * @param protocol_message the protocol message.	 */	recv_kernel_signal_message4	? xrl_sender_name:txt		\					& protocol_name:txt & protocol_id:u32 \					& message_type:u32		\					& vif_name:txt & vif_index:u32	\					& source_address:ipv4		\					& dest_address:ipv4		\					& protocol_message:binary	recv_kernel_signal_message6	? xrl_sender_name:txt		\					& protocol_name:txt & protocol_id:u32 \					& message_type:u32		\					& vif_name:txt & vif_index:u32	\					& source_address:ipv6		\					& dest_address:ipv6		\					& protocol_message:binary		/**	 * Add Multicast Routing Information Base information.	 * @param xrl_sender_name the XRL name of the originator of this XRL.	 * @param dest_prefix the destination prefix to add.	 * @param next_hop_router_addr the address of the next-hop router	 * toward the destination prefix.	 * @param next_hop_vif_name the name of the vif toward the	 * destination prefix.	 * @param next_hop_vif_index the index of the vif toward the	 * destination prefix.	 * @param metric_preference the metric preference for this entry.	 * @param metric the metric for this entry.	 */	add_mrib4	? xrl_sender_name:txt				\			& dest_prefix:ipv4net				\			& next_hop_router_addr:ipv4			\			& next_hop_vif_name:txt & next_hop_vif_index:u32 \			& metric_preference:u32				\			& metric:u32	add_mrib6	? xrl_sender_name:txt				\			& dest_prefix:ipv6net				\			& next_hop_router_addr:ipv6			\			& next_hop_vif_name:txt & next_hop_vif_index:u32 \			& metric_preference:u32				\			& metric:u32		/**	 * Delete Multicast Routing Information Base information.	 * @param xrl_sender_name the XRL name of the originator of this XRL.	 * @param dest_prefix the destination prefix to delete.	 */	delete_mrib4	? xrl_sender_name:txt				\			& dest_prefix:ipv4net	delete_mrib6	? xrl_sender_name:txt				\			& dest_prefix:ipv6net		/**	 * Complete a transaction with MRIB information.	 *	 * @param xrl_sender_name the XRL name of the originator of this XRL.	 */	set_mrib_done	? xrl_sender_name:txt		/**	 * A signal that a dataflow-related pre-condition is true.	 *	 * @param xrl_sender_name the XRL name of the originator of this XRL.	 * @param source_address the source address of the dataflow.	 * @param group_address the group address of the dataflow.	 * @param threshold_interval_sec the number of seconds in the	 * interval requested for measurement.	 * @param threshold_interval_usec the number of microseconds in the	 * interval requested for measurement.	 * @param measured_interval_sec the number of seconds in the	 * last measured interval that has triggered the signal.	 * @param measured_interval_usec the number of microseconds in the	 * last measured interval that has triggered the signal.	 * @param threshold_packets the threshold value to trigger a signal	 * (in number of packets).	 * @param threshold_bytes the threshold value to trigger a signal	 * (in bytes).	 * @param measured_packets the number of packets measured within the	 * measured interval.	 * @param measured_bytes the number of bytes measured within the	 * measured interval.	 * @param is_threshold_in_packets if true, threshold_packets	 * is valid.	 * @param is_threshold_in_bytes if true, threshold_bytes	 * is valid.	 * @param is_geq_upcall if true, the operation for comparison is ">=".	 * @param is_leq_upcall if true, the operation for comparison is "<=".	 */	recv_dataflow_signal4	? xrl_sender_name:txt			\				& source_address:ipv4			\				& group_address:ipv4			\				& threshold_interval_sec:u32		\				& threshold_interval_usec:u32		\				& measured_interval_sec:u32		\				& measured_interval_usec:u32		\				& threshold_packets:u32			\				& threshold_bytes:u32			\				& measured_packets:u32			\				& measured_bytes:u32			\				& is_threshold_in_packets: bool		\				& is_threshold_in_bytes: bool		\				& is_geq_upcall:bool			\				& is_leq_upcall: bool	recv_dataflow_signal6	? xrl_sender_name:txt			\				& source_address:ipv6			\				& group_address:ipv6			\				& threshold_interval_sec:u32		\				& threshold_interval_usec:u32		\				& measured_interval_sec:u32		\				& measured_interval_usec:u32		\				& threshold_packets:u32			\				& threshold_bytes:u32			\				& measured_packets:u32			\				& measured_bytes:u32			\				& is_threshold_in_packets: bool		\				& is_threshold_in_bytes: bool		\				& is_geq_upcall:bool			\				& is_leq_upcall:bool}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?