Project

General

Profile

Bug #4949

List of "remote IPv4 endpoints" grows every time a peer reconnects

Added by laforge about 1 month ago. Updated 28 days ago.

Status:
Resolved
Priority:
Urgent
Assignee:
Category:
libosmogb
Target version:
-
Start date:
01/14/2021
Due date:
% Done:

100%

Spec Reference:

Description

After running the better part of the GBProxy_Tests test suite, the VTY output of osmo-gboroxy show ns looks like this:

NSEI 02003: UDP, DEAD
 NSVCI 02103: RESET DYNAMIC data_weight=1 sig_weight=1 udp)[127.0.0.1]:23000<2103>[127.0.0.1]:21030
NSEI 02002: UDP, DEAD
 NSVCI 02102: RESET DYNAMIC data_weight=1 sig_weight=1 udp)[127.0.0.1]:23000<2102>[127.0.0.1]:21020
NSEI 02001: UDP, DEAD
 NSVCI 02101: RESET DYNAMIC data_weight=1 sig_weight=1 udp)[127.0.0.1]:23000<2101>[127.0.0.1]:21010
NSEI 00102: UDP, DEAD
FSM Instance Name: 'GPRS-NS2-SNS-BSS(NSE00102-SNS)[0x6120000018a0]', ID: 'NSE00102-SNS'
 Log-Level: 'DEBUG', State: 'SIZE'
 Timer: 1
Maximum number of remote  NS-VCs: 8, IPv4 Endpoints: 4, IPv6 Endpoints: 0
Local IPv4 Endpoints:
 127.0.0.1:23000, Signalling Weight: 2, Data Weight: 1
Remote IPv4 Endpoints:
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:8888, Signalling Weight: 1, Data Weight: 1
 NSVCI none: UNCONFIGURED DYNAMIC data_weight=1 sig_weight=1 udp)[127.0.0.1]:23000<>[127.0.0.1]:8888
NSEI 00101: UDP, DEAD
FSM Instance Name: 'GPRS-NS2-SNS-BSS(NSE00101-SNS)[0x6120000015a0]', ID: 'NSE00101-SNS'
 Log-Level: 'DEBUG', State: 'SIZE'
 Timer: 1
Maximum number of remote  NS-VCs: 8, IPv4 Endpoints: 4, IPv6 Endpoints: 0
Local IPv4 Endpoints:
 127.0.0.1:23000, Signalling Weight: 2, Data Weight: 1

Remote IPv4 Endpoints:
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1
 NSVCI none: UNCONFIGURED DYNAMIC data_weight=1 sig_weight=1 udp)[127.0.0.1]:23000<>[127.0.0.1]:7777
UDP bind: 127.0.0.1:23000 DSCP: 0
  5 NS-VC: 
    NSVCI 00000: udp)[127.0.0.1]:23000<>[127.0.0.1]:8888
    NSVCI 00000: udp)[127.0.0.1]:23000<>[127.0.0.1]:7777
    NSVCI 02103: udp)[127.0.0.1]:23000<2103>[127.0.0.1]:21030
    NSVCI 02102: udp)[127.0.0.1]:23000<2102>[127.0.0.1]:21020
    NSVCI 02101: udp)[127.0.0.1]:23000<2101>[127.0.0.1]:21010

As we can see, there seems to be some bug that causes new

 127.0.0.1:7777, Signalling Weight: 1, Data Weight: 1

to show up for every test case execution.

I guess during the SNS-CONFIG procedure we somehow unconditionally create new objects rather than either
  1. first delete all objects, then create new ones, or
  2. check if the identical object already exists, and only create one if it doesn't

Associated revisions

Revision 7a7b20b7 (diff)
Added by lynxis about 1 month ago

gprs_ns2_sns: clear local and remote entries when SNS failed

The local and remote entries should be cleared on SNS Size.
Further it can be cleared when SNS failed (e.g. all NSVC become dead)
so VTY doesn't show old entries before entering SNS Size.

Related: OS#4949
Change-Id: Ie4db81acdd5f8ddf1a1f5dc7645d1144545d9c73

History

#1 Updated by lynxis about 1 month ago

  • Status changed from New to In Progress

#2 Updated by lynxis about 1 month ago

  • % Done changed from 0 to 90

#3 Updated by lynxis about 1 month ago

  • Status changed from In Progress to Feedback

#4 Updated by lynxis about 1 month ago

  • % Done changed from 90 to 100

merged.

#5 Updated by daniel 28 days ago

  • Status changed from Feedback to Resolved

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)