Hi all, I am learning DPDK packet framework library for an APP development. I am going through the config files and the code. I found the below cfg file in a DPDK summit ppt. I have some doubts regarding the fields used in the cfg file. 1.What is the difference between dma_size and key_size? 2. How does the PASS-THROUGH pipeline work with given src_mask? 3. Are the FLOW CLASSIFICATION and ROUTING pipelines using the same key or hash values?
[PIPELINE0] type = MASTER core = 0 [PIPELINE1] type = PASS-THROUGH core = 1 pktq_in = RXQ0.0 RXQ1.0 RXQ2.0 RXQ3.0 pktq_out = SWQ0 SWQ1 SWQ2 SWQ3 dma_size = 8 dma_dst_offset = 0 dma_src_offset = 140; headroom (128) + 1st ethertype offset (12) = 140 dma_src_mask = 00000FFF00000FFF; qinq dma_hash_offset = 8; dma_dst_offset + dma_size = 8 [PIPELINE2] type = FLOW_CLASSIFICATION core = 1 pktq_in = SWQ0 SWQ1 SWQ2 SWQ3 pktq_out = SWQ4 SWQ5 SWQ6 SWQ7 n_flows = 16777216; n_flows = 65536 key_size = 8; dma_size = 8 key_offset = 0; dma_dst_offset = 0 hash_offset = 8; dma_hash_offset = 8 flow_id_offset = 64 [PIPELINE3] type = ROUTING core = 2 pktq_in = SWQ4 SWQ5 SWQ6 SWQ7 pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 n_routes = 4096 l2 = mpls mpls_color_mark = yes ip_hdr_offset = 150; headroom (128) + ethernet header (14) + qinq (8) = 150 color_offset = 68 Other than this, 4. How users can add user-defined actions? Can you please give an example, like push or pop VLAN label from the packet 5. How does port action handler works? How and where can we define actions for ports? Thanks for your reply and help. -- Regards, Nidhia Varghese