Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support converged charging #76

Closed
wants to merge 32 commits into from
Closed

support converged charging #76

wants to merge 32 commits into from

Conversation

Roy-Hu
Copy link

@Roy-Hu Roy-Hu commented May 15, 2023

  1. PDU-based Charging: SMF collects charging information related to data volumes sent to and received by the
    UE per user per PDU session (achieved by flow-based charging with a specific rating group)
  2. Flow-Based Charging: SMF categorizes the service data flows within PDU session data traffic by rating group and/or
    combination of the rating group
  3. The PCC will define the flow's charging method(online/offline) and its rating group. Set the charging of default PCC (FlowDescription: "permit out ip from any to assigned" )to PDU-based Charging. All the data paths created for pcc need to additionally apply the URR created for this default pcc for recording all volumes in a PDU session.

@tim-ywliu
Copy link
Collaborator

@Roy-Hu @Tai-shang-chun
I rebased this PR and updated openapi/pfcp hash to the latest, but it will go test fail.
Please help fix it. Thanks.

if newURR, err := node.UPF.AddURR(uint32(urrId),
NewMeasureInformation(false, false),
SetStartofSDFTrigger()); err != nil {
logger.PduSessLog.Errorln("new URR failed")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SelectDefaultDataPath() shold free allocated URR ID before function returned.

if newURR, err := node.UPF.AddURR(uint32(urrId),
NewMeasureInformation(false, false),
NewVolumeThreshold(smContext.UrrReportThreshold)); err != nil {
logger.PduSessLog.Errorln("new URR failed")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SelectDefaultDataPath() shold free allocated URR ID before function returned.

internal/context/pcc_rule.go Outdated Show resolved Hide resolved
internal/context/sm_context.go Outdated Show resolved Hide resolved
internal/context/sm_context.go Outdated Show resolved Hide resolved
internal/context/sm_context_policy.go Outdated Show resolved Hide resolved
internal/context/sm_context_policy.go Outdated Show resolved Hide resolved
@ianchen0119 ianchen0119 force-pushed the PR branch 2 times, most recently from 40fa8c1 to b4a1941 Compare September 6, 2023 07:44
if node.UpLinkTunnel != nil && node.UpLinkTunnel.PDR != nil {
urrs = node.UpLinkTunnel.PDR.URR
} else if node.DownLinkTunnel != nil && node.DownLinkTunnel.PDR != nil {
urrs = node.UpLinkTunnel.PDR.URR
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

urrs = node.DownLinkTunnel.PDR.URR

if dlIPFilterRule.Src == "any" && dlIPFilterRule.Dst == "assigned" {
return PduSessionCharging, nil
} else {
// For pcc that have applicable for all datapath fpr a datapath, it's charging level will be flow based
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo?

)

func (smContext *SMContext) HandleReports(
UsageReportReport []*pfcp.UsageReportPFCPSessionReportRequest,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should rename to UsageReportRequest ?

@brianchennn brianchennn force-pushed the PR branch 3 times, most recently from 22bba06 to b91e5e4 Compare November 24, 2023 08:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants