On a setup with Fat flow config and traffic through SI, fat flows are not aged out
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Juniper Openstack | Status tracked in Trunk | |||||
R3.0 |
Fix Committed
|
High
|
Naveen N | |||
Trunk |
Fix Committed
|
High
|
Naveen N |
Bug Description
R3.0 2710 Ubuntu 14.04 Kilo multi-node setup
vn1 : 10.1.1.0/24
vn2: 20.1.1.0/24
Policy applied between vn1 and vn2 to have all traffic through SIs si1 , si2 (in-network)
Fat flow is applied on tcp port 22 on VMI 20.1.1.3
10.1.1.3(on nodek2) does a ssh to 20.1.1.3(nodek1)
gcore of agent will be on http://
On nodek1, these flows are never aged out ...even when no traffic is rx/txed on this session
root@nodek1:~# flow -l
Flow table(size 269484032, entries 2105344)
Entries: Created 249926 Added 249926 Processed 249926 Used Overflow entries 0
(Created Flows/CPU: 18410 22011 16005 19271 10594 15547 3395 13282 28949 1985 6231 2800 17143 10604 10526 11833 976 0 5057 1 2924 8176 3618 6663 0 5200 5535 0 0 399 19 2772)(oflows 0)
Action:F=Forward, D=Drop N=NAT(S=SNAT, D=DNAT, Ps=SPAT, Pd=DPAT, L=Link Local Port)
Other:
Flags:E=Evicted, Ec=Evict Candidate, N=New Flow, M=Modified
TCP(r=reverse)
Index Source:
-------
174396<=>940756 20.1.1.3:22 6 (3)
(K(nh):44, Action:F, Flags:, TCP:, S(nh):44, Statistics:5/330 UdpSrcPort 55397
274096<=>414772 10.1.1.3:0 6 (3->4)
(K(nh):14, Action:F, Flags:, TCP:, S(nh):14, Statistics:0/0 UdpSrcPort 65382
414772<=>274096 20.1.1.3:22 6 (3->4)
(K(nh):44, Action:F, Flags:, TCP:, S(nh):44, Statistics:45/8328 UdpSrcPort 61505
940756<=>174396 20.1.1.2:0 6 (3)
(K(nh):44, Action:F, Flags:, TCP:, S(nh):7, Statistics:0/0 UdpSrcPort 61953
root@nodek1:~#
Changed in juniperopenstack: | |
assignee: | Hari Prasad Killi (haripk) → Naveen N (naveenn) |
When there are multiple flow tables enabled, partition for flow processing would be chosen
based on source port and destination port, during processing of flow agent masks
source port or destination port for fat flow, due to this request to delete the flow from
aging context would be enqueued different partition of flow table, hence the flow never
gets deleted.