pespin has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-sigtran/+/39407?usp=email )
(
9 is the latest approved patch-set. No files were changed between the latest approved patch-set and the submitted one. )Change subject: AS loadsharing: Introduce AS rate_ctr tx:msu:sls:* ......................................................................
AS loadsharing: Introduce AS rate_ctr tx:msu:sls:*
Related: SYS#7112 Change-Id: Ia446e11ea24ecb021a3dddf5547aa2b3cdbbe60b --- M src/osmo_ss7_as.c M src/osmo_ss7_hmrt.c M src/ss7_as.h 3 files changed, 35 insertions(+), 0 deletions(-)
Approvals: osmith: Looks good to me, but someone else must approve laforge: Looks good to me, but someone else must approve Jenkins Builder: Verified daniel: Looks good to me, but someone else must approve pespin: Looks good to me, approved
diff --git a/src/osmo_ss7_as.c b/src/osmo_ss7_as.c index d50d113..ab40080 100644 --- a/src/osmo_ss7_as.c +++ b/src/osmo_ss7_as.c @@ -55,6 +55,7 @@ };
#define SS7_AS_CTR_RX_MSU_SLS_STR "Number of MSU received on SLS " +#define SS7_AS_CTR_TX_MSU_SLS_STR "Number of MSU transmitted on SLS " static const struct rate_ctr_desc ss7_as_rcd[] = { [SS7_AS_CTR_RX_MSU_TOTAL] = { "rx:msu:total", "Total number of MSU received" }, [SS7_AS_CTR_RX_MSU_SLS_0] = { "rx:msu:sls:0", SS7_AS_CTR_RX_MSU_SLS_STR "0" }, @@ -74,6 +75,22 @@ [SS7_AS_CTR_RX_MSU_SLS_14] = { "rx:msu:sls:14", SS7_AS_CTR_RX_MSU_SLS_STR "14" }, [SS7_AS_CTR_RX_MSU_SLS_15] = { "rx:msu:sls:15", SS7_AS_CTR_RX_MSU_SLS_STR "15" }, [SS7_AS_CTR_TX_MSU_TOTAL] = { "tx:msu:total", "Total number of MSU transmitted" }, + [SS7_AS_CTR_TX_MSU_SLS_0] = { "tx:msu:sls:0", SS7_AS_CTR_TX_MSU_SLS_STR "0" }, + [SS7_AS_CTR_TX_MSU_SLS_1] = { "tx:msu:sls:1", SS7_AS_CTR_TX_MSU_SLS_STR "1" }, + [SS7_AS_CTR_TX_MSU_SLS_2] = { "tx:msu:sls:2", SS7_AS_CTR_TX_MSU_SLS_STR "2" }, + [SS7_AS_CTR_TX_MSU_SLS_3] = { "tx:msu:sls:3", SS7_AS_CTR_TX_MSU_SLS_STR "3" }, + [SS7_AS_CTR_TX_MSU_SLS_4] = { "tx:msu:sls:4", SS7_AS_CTR_TX_MSU_SLS_STR "4" }, + [SS7_AS_CTR_TX_MSU_SLS_5] = { "tx:msu:sls:5", SS7_AS_CTR_TX_MSU_SLS_STR "5" }, + [SS7_AS_CTR_TX_MSU_SLS_6] = { "tx:msu:sls:6", SS7_AS_CTR_TX_MSU_SLS_STR "6" }, + [SS7_AS_CTR_TX_MSU_SLS_7] = { "tx:msu:sls:7", SS7_AS_CTR_TX_MSU_SLS_STR "7" }, + [SS7_AS_CTR_TX_MSU_SLS_8] = { "tx:msu:sls:8", SS7_AS_CTR_TX_MSU_SLS_STR "8" }, + [SS7_AS_CTR_TX_MSU_SLS_9] = { "tx:msu:sls:9", SS7_AS_CTR_TX_MSU_SLS_STR "9" }, + [SS7_AS_CTR_TX_MSU_SLS_10] = { "tx:msu:sls:10", SS7_AS_CTR_TX_MSU_SLS_STR "10" }, + [SS7_AS_CTR_TX_MSU_SLS_11] = { "tx:msu:sls:11", SS7_AS_CTR_TX_MSU_SLS_STR "11" }, + [SS7_AS_CTR_TX_MSU_SLS_12] = { "tx:msu:sls:12", SS7_AS_CTR_TX_MSU_SLS_STR "12" }, + [SS7_AS_CTR_TX_MSU_SLS_13] = { "tx:msu:sls:13", SS7_AS_CTR_TX_MSU_SLS_STR "13" }, + [SS7_AS_CTR_TX_MSU_SLS_14] = { "tx:msu:sls:14", SS7_AS_CTR_TX_MSU_SLS_STR "14" }, + [SS7_AS_CTR_TX_MSU_SLS_15] = { "tx:msu:sls:15", SS7_AS_CTR_TX_MSU_SLS_STR "15" }, };
static const struct rate_ctr_group_desc ss7_as_rcgd = { diff --git a/src/osmo_ss7_hmrt.c b/src/osmo_ss7_hmrt.c index 72d5adc..675b231 100644 --- a/src/osmo_ss7_hmrt.c +++ b/src/osmo_ss7_hmrt.c @@ -181,6 +181,8 @@ }
rate_ctr_inc2(as->ctrg, SS7_AS_CTR_TX_MSU_TOTAL); + OSMO_ASSERT(xua->mtp.sls <= 0xf); + rate_ctr_inc2(as->ctrg, SS7_AS_CTR_TX_MSU_SLS_0 + xua->mtp.sls);
switch (as->cfg.proto) { case OSMO_SS7_ASP_PROT_M3UA: diff --git a/src/ss7_as.h b/src/ss7_as.h index 67c0793..6a2b649 100644 --- a/src/ss7_as.h +++ b/src/ss7_as.h @@ -42,6 +42,22 @@ SS7_AS_CTR_RX_MSU_SLS_14, SS7_AS_CTR_RX_MSU_SLS_15, SS7_AS_CTR_TX_MSU_TOTAL, + SS7_AS_CTR_TX_MSU_SLS_0, + SS7_AS_CTR_TX_MSU_SLS_1, + SS7_AS_CTR_TX_MSU_SLS_2, + SS7_AS_CTR_TX_MSU_SLS_3, + SS7_AS_CTR_TX_MSU_SLS_4, + SS7_AS_CTR_TX_MSU_SLS_5, + SS7_AS_CTR_TX_MSU_SLS_6, + SS7_AS_CTR_TX_MSU_SLS_7, + SS7_AS_CTR_TX_MSU_SLS_8, + SS7_AS_CTR_TX_MSU_SLS_9, + SS7_AS_CTR_TX_MSU_SLS_10, + SS7_AS_CTR_TX_MSU_SLS_11, + SS7_AS_CTR_TX_MSU_SLS_12, + SS7_AS_CTR_TX_MSU_SLS_13, + SS7_AS_CTR_TX_MSU_SLS_14, + SS7_AS_CTR_TX_MSU_SLS_15, };
struct osmo_ss7_as {