Hi Daolin, You can see the code below in gtpu4_encap node, if you set gtpu4_encap as next node, the sw_if_index should be set correctly. In you case, it should be set to the gtpu tunnel1.
sw_if_index0 = vnet_buffer(b0)->sw_if_index[VLIB_TX]; A workable solution is add a node as the next node of gtpu_decap, set correct sw_if_index to sw_if_index[VLIB_TX] of the packet, then pass the packet to gtpu4_encap node. Best Regards, Chengqiang Yao From: vpp-dev@lists.fd.io [mailto:vpp-dev@lists.fd.io] On Behalf Of John Lo (loj) via Lists.Fd.Io Sent: Tuesday, October 23, 2018 10:23 PM To: Liu Daolin (刘道林) <liudao...@twsz.com>; vpp-dev@lists.fd.io Cc: vpp-dev@lists.fd.io Subject: Re: [vpp-dev] about gtpu encap I believe you can cross connect two gtpu tunnel interfaces on the VPP in your GW to achieve what you need: DBGvpp# set int l2 xconnect ? set interface l2 xconnect set interface l2 xconnect <interface> <peer interface> You need to set L2 xconnect on both gtpu tunnel interfaces to each other. Regards, John From: vpp-dev@lists.fd.io<mailto:vpp-dev@lists.fd.io> <vpp-dev@lists.fd.io<mailto:vpp-dev@lists.fd.io>> On Behalf Of Liu Daolin (???) Sent: Tuesday, October 23, 2018 3:51 AM To: vpp-dev@lists.fd.io<mailto:vpp-dev@lists.fd.io> Subject: [vpp-dev] about gtpu encap Hi, I have a question about gtpu encap node in VPP. My network topology is: [cid:image002.jpg@01D46AC2.C0DA7910] VPP is running on GW in Linux VM with two IP interfaces, and eNB & CN in the above graph are running on two different Linux VMs with only one IP interface. After starting VPP and some regular settings with CLI, I can ping CN from eNB side successfully, vice versa without any problem. Currently, my requirement is that setting gtpu tunnels between both eNB<->GW and GW<->CN, and then from the eNB side, it will send UDP packet to GW with gtpu (port 2152, src IP 192.168.2.2, dst IP 192.168.2.1), and VPP can decap this gtpu packet (teid 261) to get T-PDU data, and then re-encap gtpu (teid 262) and udp to send to CN (port 2152, src IP 192.168.3.1, dst IP 192.168.3.2). Something like this: [cid:image002.jpg@01D46B78.923DACB0] You can see below original packet from eNB side. [cid:image003.jpg@01D46B78.923DACB0] Actually, I don't need VPP to decode the payload in red color, i.e. T-PDU Data 4500…… I just want to keep this T-PDU Data and then fill the new teid and src & dst IP to send to CN side. The output packet should like this: [cid:image004.jpg@01D46B78.923DACB0] I run below command to set tunnels: vppctl create gtpu tunnel src 192.168.2.1 dst 192.168.2.2 teid 261 vppctl create gtpu tunnel src 192.168.3.2 dst 192.168.3.1 teid 262 and capture the original packet with "show trace" successfully. But the VPP treated the payload 4500…… as l2-input since I didn't set "decap-next node" in above command. But if I use below command: vppctl create gtpu tunnel src 192.168.2.1 dst 192.168.2.2 teid 261 decap-next node gtpu4-encap vppctl create gtpu tunnel src 192.168.3.2 dst 192.168.3.1 teid 262 decap-next node gtpu4-encap The VPP process will be crashed. Maybe I miss something or my command is not correct enough. Actually I found that there is no previous node for gtpu4-encap. I don't know why. Could you please show me what should I do to satisfy my requirement which is not complex in my mind? Thanks a lot! Best regards 刘道林 (Daolin Liu) T&W大连市共进科技有限公司 DALIAN GONGJIN TECHNOLOGY CO.,LTD 中国大连市高新园区软件园路1A-4-24层 Floor 24th, 1A-4 Software Park Road, Hi-tech Zone, Dalian, Liaoning, China 直线(TEL):(86-411)39996705 分机(EXT):76824 手机(Mobile):(86)13704090959 本电子邮件(包括任何的附件)为本公司保密文件。本文件仅仅可为以上指定的收件人或公司使用,如果阁下非电子邮件所指定之收件人,那么阁下对该邮件部分或全部的泄漏、阅览、复印、变更、散布或对邮件内容的使用都是被严格禁止的。如果阁下接收了该错误传送的电子邮件,敬请阁下通过回复该邮件的方式立即通知寄件人,同时删除你所接收到的文本。 This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#10932): https://lists.fd.io/g/vpp-dev/message/10932 Mute This Topic: https://lists.fd.io/mt/27566720/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-