P4程序咨询
parser ParserImpl(packet_in packet, out MPLS_Headers hdr, inout standard_metadata_t standard_metadata) {}
state start {
transition parse_ethernet;
}
state parse_ethernet {
packet.extract(hdr.ethernet);
transition select(hdr.ethernet.etherType) {
16w0x0800: parse_ipv4;
}
}
state parse_mpls {
packet.extract(hdr.Mpls.next);
transition select(hdr.Mpls.last.bos) {
1w0: parse_mpls;
1w1: accept;
}
}
state parse_ipv4 {
packet.extract(hdr.ip);
transition accept;
}
咨询下上面这个代码里, state parse_mpls 这步能执行到吗,顺便问下,P4程序里面是否可以添加打印信息,是否支持单步执行,查看代码执行过程?
1 个回复
applo - 生活不止眼前的苟且,还有。。。
赞同来自:
P4程序的执行过程可以debug的,在GitHub上有个使用说明,见下面链接
https://github.com/p4lang/beha ... de.md