数据包未按OPNFV os-odl-sfc-noha方案中的预期使用SFC流?

问题描述

我在我的环境中建立了一个简单的服务功能链,如下所示。但是,在部署我的“呈现服务路径”(RSP)之后,却无法按预期使用SFF(br-int)中创建的流。

enter image description here

我有集成到Opendaylight的Openstack三节点体系结构。(OPNFV Iruya os-odl-sfc-noha)

Openstack版本:Stein Opendaylight版本:Neon

在Openstack中设置SFC:客户端(10.20.0.7)服务器(10.20.0.111)SF1(10.20.0.172)SFF(OVS上的Bridge br-int)

所有实例都通过br-int桥并在同一计算节点上连接到同一OVS。

这是带有网络服务标题的br-int上的流表:

cookie=0x8000001,duration=110918.044s,table=17,n_packets=1107,n_bytes=64794,priority=10,Metadata=0x9000740000000000/0xffffff0000000000 actions=load:0x187a8->NXM_NX_REG3[0..24],write_Metadata:0xb000740000030f50/0xfffffffffffffffe,goto_table:19
 cookie=0x8040000,Metadata=0xb000740000000000/0xffffff0000000000 actions=load:0x74->NXM_NX_REG1[0..19],load:0x1391->NXM_NX_REG7[0..15],write_Metadata:0xc000741391000000/0xfffffffffffffffe,goto_table:43
 cookie=0x6900000,n_packets=614,n_bytes=66236,Metadata=0x780000000000/0xffffff0000000000 actions=write_Metadata:0x4000780000000000/0xfffffffffffffffe,goto_table:210
 cookie=0x8000001,n_packets=385,n_bytes=39578,Metadata=0x800000000000/0xffffff0000000000 actions=load:0x186f4->NXM_NX_REG3[0..24],write_Metadata:0xb000800000030de8/0xfffffffffffffffe,goto_table:19
 cookie=0x6900000,n_packets=69889,n_bytes=3141935,Metadata=0x3a0000000000/0xffffff0000000000 actions=write_Metadata:0x40003a0000000000/0xfffffffffffffffe,n_packets=400,n_bytes=40642,Metadata=0x9000810000000000/0xffffff0000000000 actions=load:0x186f4->NXM_NX_REG3[0..24],write_Metadata:0xb000810000030de8/0xfffffffffffffffe,n_packets=48432,n_bytes=5157998,Metadata=0xb000080000000000/0xffffff0000000000 actions=load:0x8->NXM_NX_REG1[0..19],load:0x1389->NXM_NX_REG7[0..15],write_Metadata:0xc000081389000000/0xfffffffffffffffe,goto_table:43
 cookie=0x8000001,n_packets=69498,n_bytes=3102746,Metadata=0x9000760000000000/0xffffff0000000000 actions=load:0x187a8->NXM_NX_REG3[0..24],write_Metadata:0xb000760000030f50/0xfffffffffffffffe,goto_table:19
 cookie=0xf005ba1100000001,n_packets=0,n_bytes=0,Metadata=0x6b0000000000/0xffffff0000000000 actions=write_Metadata:0xa0006b0000000000/0xfffffffffffffffe,goto_table:100
 cookie=0x8000001,Metadata=0x9000780000000000/0xffffff0000000000 actions=load:0x186f4->NXM_NX_REG3[0..24],write_Metadata:0xb000780000030de8/0xfffffffffffffffe,n_packets=69884,n_bytes=3141485,Metadata=0x40003a0000000000/0xffffff0000000000 actions=write_Metadata:0x90003a0000000000/0xfffffffffffffffe,goto_table:100
 cookie=0xf005ba1100000001,Metadata=0x4000810000000000/0xffffff0000000000 actions=write_Metadata:0x9000810000000000/0xfffffffffffffffe,goto_table:100
 cookie=0x8040000,n_packets=65404,n_bytes=2770124,Metadata=0xb000760000000000/0xffffff0000000000 actions=load:0x76->NXM_NX_REG1[0..19],write_Metadata:0xc000761391000000/0xfffffffffffffffe,goto_table:43
 cookie=0x8030000,Metadata=0x810000000000/0xffffff0000000000 actions=write_Metadata:0x4000810000000000/0xfffffffffffffffe,goto_table:83
 cookie=0x6900000,Metadata=0x740000000000/0xffffff0000000000 actions=write_Metadata:0x9000740000000000/0xfffffffffffffffe,goto_table:210
 cookie=0x8040000,n_packets=587,n_bytes=63758,Metadata=0xb000780000000000/0xffffff0000000000 actions=load:0x78->NXM_NX_REG1[0..19],load:0x138f->NXM_NX_REG7[0..15],write_Metadata:0xc00078138f000000/0xfffffffffffffffe,goto_table:43
 cookie=0x8040000,n_packets=65787,n_bytes=2807354,Metadata=0xb0003a0000000000/0xffffff0000000000 actions=load:0x3a->NXM_NX_REG1[0..19],write_Metadata:0xc0003a138f000000/0xfffffffffffffffe,goto_table:43
 cookie=0xf005ba1100000001,Metadata=0x4000780000000000/0xffffff0000000000 actions=write_Metadata:0x9000780000000000/0xfffffffffffffffe,goto_table:100
 cookie=0x6900000,Metadata=0x760000000000/0xffffff0000000000 actions=write_Metadata:0x9000760000000000/0xfffffffffffffffe,Metadata=0xb000800000000000/0xffffff0000000000 actions=load:0x80->NXM_NX_REG1[0..19],load:0x138e->NXM_NX_REG7[0..15],write_Metadata:0xc00080138e000000/0xfffffffffffffffe,Metadata=0x90003a0000000000/0xffffff0000000000 actions=load:0x186f4->NXM_NX_REG3[0..24],write_Metadata:0xb0003a0000030de8/0xfffffffffffffffe,goto_table:19
 cookie=0x8000001,n_packets=56646,n_bytes=6377302,Metadata=0x80000000000/0xffffff0000000000 actions=load:0x186a0->NXM_NX_REG3[0..24],write_Metadata:0xb000080000030d40/0xfffffffffffffffe,n_packets=396,n_bytes=40332,Metadata=0xb000810000000000/0xffffff0000000000 actions=load:0x81->NXM_NX_REG1[0..19],write_Metadata:0xc00081138f000000/0xfffffffffffffffe,goto_table:43
cookie=0x14,duration=110836.511s,table=83,priority=250,dl_type=0x894f actions=goto_table:86
 cookie=0x14,packet_type=(1,0x894f) actions=encap(ethernet),goto_table:86
 cookie=0x14,n_packets=44734,n_bytes=5006050,priority=5 actions=resubmit(,17)
cookie=0x14,duration=110303.568s,table=86,priority=550,dl_type=0x894f,nsh_spi=0x8000e3,nsh_si=255 actions=set_field:fe:16:3e:22:87:a6->eth_src,set_field:fa:16:3e:22:87:a6->eth_dst,goto_table:87
 cookie=0x14,nsh_spi=0x8000c0,nsh_si=254 actions=set_field:fe:16:3e:73:ed:f0->eth_src,set_field:fa:16:3e:73:ed:f0->eth_dst,nsh_spi=0xc0,nsh_si=255 actions=set_field:fe:16:3e:73:ed:f0->eth_src,nsh_spi=0x2b,nsh_si=254 actions=set_field:fe:16:3e:b0:2e:c6->eth_src,set_field:fa:16:3e:b0:2e:c6->eth_dst,nsh_spi=0xe3,nsh_si=255 actions=set_field:fe:16:3e:35:17:7a->eth_src,set_field:fa:16:3e:35:17:7a->eth_dst,goto_table:87
 cookie=0xba5eba1100000207,duration=110303.567s,table=87,priority=680,nsh_mdtype=1,nsh_si=254,nsh_c1=0xa010006,nsh_c2=0x0 actions=decap(),resubmit(,17)
 cookie=0xba5eba1100000207,nsh_si=253,17)
 cookie=0xba5eba1100000205,priority=660,nsh_c1=0xa010006 actions=move:NXOXM_NSH_C1[]->NXM_NX_TUN_IPV4_DST[],move:NXOXM_NSH_C2[]->NXM_NX_TUN_ID[0..31],decap(),36)
 cookie=0xba5eba1100000205,36)
 cookie=0xba5eba1100000202,priority=650,nsh_si=255 actions=load:0x1e00->NXM_NX_REG6[],220)
 cookie=0xba5eba1100000202,nsh_si=255 actions=load:0x8100->NXM_NX_REG6[],nsh_si=254 actions=load:0x2100->NXM_NX_REG6[],nsh_si=255 actions=load:0x6b00->NXM_NX_REG6[],nsh_si=254 actions=load:0x6b00->NXM_NX_REG6[],nsh_si=254 actions=set_field:0->tun_id,load:0x100->NXM_NX_REG6[],220)
 cookie=0xf005ba1100000001,table=100,priority=520,0x894f),nsh_si=254 actions=move:NXOXM_NSH_C4[]->NXM_NX_REG6[],220)
cookie=0xf005ba1100000002,duration=110867.253s,table=101,n_packets=70866,n_bytes=3246955,priority=10 actions=resubmit(,17)
 cookie=0xf005ba1100000004,table=222,priority=250 actions=encap(nsh),move:NXM_NX_REG2[8..31]->NXOXM_NSH_SPI[],move:NXM_NX_REG2[0..7]->NXOXM_NSH_SI[],load:0->NXM_NX_REG2[],move:NXM_NX_REG0[]->NXOXM_NSH_C1[],move:NXM_NX_TUN_ID[0..31]->NXOXM_NSH_C2[],move:NXM_NX_REG6[]->NXOXM_NSH_C4[],load:0->NXM_NX_TUN_ID[0..31],goto_table:223
 cookie=0xf005ba1100000005,table=223,nsh_spi=0xe3 actions=resubmit(,83)
 cookie=0xf005ba1100000005,nsh_spi=0x8000e3 actions=resubmit(,83)

客户端路由表:

enter image description here

SF:

enter image description here

服务器:

enter image description here

ACL和分类器是使用适当的源IP地址和目标IP地址创建的。分类器已映射到SFF(br-int)。

但是,当从客户端ping到服务器ping时,虽然数据包不使用网桥br-int(SFF)中相对于NSH的规则。

任何帮助将不胜感激。预先感谢。

解决方法

不要在vnf图形描述符中添加“ ip_dst_prefix”,它可以正常工作! vnf中的vxlan_tool.py可以显示NSH数据包,但是直到您按Ctrl + c才会停止。