+*
+*/
+ int ethernet_header_offset = 0; /* to be filled by DPDK */
+ ethernet_header_t *eth = (ethernet_header_t *)(p0->data + ethernet_header_offset);
+ /* ensure the block current data starts at L3 boundary now for the subsequent nodes */
+ vlib_buffer_advance(p0, ethernet_header_offset + sizeof(ethernet_header_t) - p0->current_data);
+ if (clib_net_to_host_u16(eth->type) == ETHERNET_TYPE_IP4)