p4_hlip安装及使用

from p4_hlir.main import HLIR
h = HLIR(<path_to_p4_program>)
h.build()

错误:<bound meoth......

没有报successful说明<path_to_p4_program>不正确,(<path_to_p4_program>是p4程序的相对路径,是字符串,需要用引号。当前路径用:import os,os.getcwd命令可以查看)

所有返回的结果都是OrderedDict(有序字典/键值对)的形式
h.p4_actions #包含p4程序中包含的action,还有一些action是p4程序没有包含的。
h.p4_control_flows #[('ingress',value1),('egress',value2)]
h.p4_headers #headers中定义的一些头部
h.p4_header_instances #同上
h.p4_fields #一些header以外的其它字段,如:ipv4_checksum_list
h.p4_field_lists #同上
h.p4_field_list_calculations #同上
h.p4_parser_exceptions #
h.p4_parse_value_sets #
h.p4_parse_states #parse部分的一些解析顺序和内容:start、parse_ethernet、parse_ipv4
h.p4_counters #
h.p4_meters
h.p4_registers
h.p4_nodes #table的集合
h.p4_tables #table的集合,和h.p4_nodes的区别未知
h.p4_action_profiles
h.p4_action_selectors
h.p4_conditional_nodes

上一篇:Javascript 扁平结构数组转树形结构


下一篇:jenkins【agent/node】汇总