Silicom Linux RDI Control Utility 1. Compiling, installing and loading the software. Compiling and installing fm10k driver tar xzvf fm10k-0.19.3.tar.gz cd fm10k-0.19.3/src make make install Load fm10k & uio drivers: modprobe uio modprobe fm10k Compiling and installing the rdif software in the system directory: # cd rdif-xxx # ./clean # ./install ======================================================================== NOTE: Use local=1 parameter for local build if needed: #./install local=1 NOTE: in case of user defined installation, please check that navl.txt will be at the same folder that rdifd. ======================================================================== 2. Software loading: # rdif start ========================================================================== NOTE: The command above performs rdifd daemon start in verbose mode; ========================================================================== 4. Using the software. Default mode is MON2 - egress disable for all ports. Please use set_port_mask command to permit egress ports list for specific ingress port, according to desired configuration. Example: rdifctl set_port_mask 5 1,2,3,4 ========================================================================== NOTE: ports 5 - Host Side; ports 1...4 - Network Side Please refer to RDIF Programmer Guide for more info. ========================================================================== ============================================================================ NOTE: lbg_create returns logical port number starting from 73; need to use this number for all LBG operation as lbg parameter and in rule assigment. Example: # rdifctl dir port 1 redir_port 73 ============================================================================ Usage: rdifctl [parameters] Commands List: set_cfg - set the device to predefined configuration get_cfg - get current configuration mode get_temp - get temperature get_port_link - get link status dir - add the rule of a port with direction matching packets to another port mir - add the rule of a port with mirror matching packets to another port drop - drop matching packets permit - permit matching packets set_vlan - set vlan set_vlan_pri - set vlan priority stat port - get statistic for specific port (port is mandatory) rule_stat - get statistic (pkts counter) for specific rule (rule_id is mandatory) query_list - query rule_id list clear - clear rule stack clear_group - clear rule stack for specific group set_port_mask - set egress port mask get_port_mask - get egress port list remove remove rule query query rule lbg_query_list - query LBG list lbg_query_port_list - query LBG ports list lbg_create - create LBG lbg_add_port - add port to LBG lbg_del_port - delete port from LBG lbg_del - delete LBG l3_hash - set l3 hash l2_hash - set l2 hash get_l3_hash - get l3 hash get_l2_hash - get l2 hash info - print Program Information. help - print this message. [parameters] : for 'permit', 'dir', 'mir' and 'drop' commands: rule_id src_ip dst_ip dst_port src_port src_ip_mask dst_ip_mask src_ip6 dst_ip6 src_ip6_mask dst_ip6_mask group number ip_proto src_port_mask dst_port_mask vlan vlan_tag 1, 2, 3 ,4 for none, standard, user A, user B vlan_mask ether_type src_mac dst_mac port <1...68> group - ACL number <0...15> redir_port <1...5> (mandatory for dir command) mir_port <1...5> (mandatory for mir command) for 'set_cfg': <5> for MON2 (default mode) - egress disabled for all ports for l3_hash: src_ip_hash, mask of src ip dst_ip_hash, mask of dst ip src_port_hash, mask of src port dst_port_hash, mask of dst port dscp_hash, 0x0-0xff isl_usr_hash, 0x0-0xff proto_hash, protocol mask flow_hash, 0x0-0xffff sym_l3_hash, on|off sym_l4_hash, on|off random_next_hop, on|off random_other, on|off random_only, on|off for l2_hash: profile_idx, 0...16 default 0 src_mac_hash, in MAC format dst_mac_hash, in MAC format ether_type_hash, 0x0-0xfff vlan_id_hash, 0x0-0xfff vlan_pri_hash, 0x0-0xf vlan2_id_hash, 0x0-0xfff vlan2_pri_hash, 0x0-0xf sym_mac_hash, on|off Entire numerical paramters are in decimal format (123) or hex format (0xabc), MAC is in aa:bb:cc:dd:ee:ff format. Example: rdifctl drop port 1 src_ip 196.0.0.126 rdifctl set_port_mask 5 1,2,3,4 5. Software unloading. # rdif stop