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 for IMS video calling #1001

Merged
merged 2 commits into from
May 16, 2021
Merged

Support for IMS video calling #1001

merged 2 commits into from
May 16, 2021

Conversation

herlesupreeth
Copy link
Contributor

The 6cde7e2 commit addresses the issue seen when a video call is attempted by IMS registered UEs

Since the precedence in a TFTs under a DNN was set 0 to number of flow rules received via Gx. The UE was requesting deletion of TFTs for the bearer serving the audio (QCI 1) whenever a video call/another dedicated bearer creation under the same DNN was attempted. As per Table 10.5.162/3GPP TS 24.008: Traffic flow template information element,

The packet filter evaluation precedence field is used to specify the precedence for the packet filter among all packet filters in all TFTs associated with this PDP address. Higher the value of the packet filter evaluation precedence field, lower the precedence of that packet filter is.

Therefore, there is a need to provide different precedence value to the TFTs than the already existing/created TFTs under the same DNN. With this fix UE no longer requests to delete the TFTs of existing bearer and video call is successful

The 12d1cc8 commit addresses the fix for pre-release LTE 11, where previously the local IP address field and port both were replaced by any. However, with this commit only local IP address is replaced by any and port is retained (better to preserve the port from the security perspective as well)

In contnuation to support for calling in pre-rel. LTE 11 devices
, rather than removing the local IP addr field and local port remove
only the IP addr field
@herlesupreeth
Copy link
Contributor Author

Attaching the working video call for your reference
open5gs_video.zip

@acetcom acetcom merged commit b6a030d into open5gs:main May 16, 2021
acetcom added a commit that referenced this pull request May 16, 2021
@acetcom
Copy link
Member

acetcom commented May 16, 2021

Hi @herlesupreeth

When I was implementing this, I missed the fact that PF precedence should be assigned based on session(PDP address), not bearer. Thank you so much for discovering that the UE works that way through your hard work.

However, there may be problems in the following situations as shown below, so I have slightly modified the method of generating PF precedences.

### src/smf/s5c-handler.c
,,,
824         for (i = 0; i < tft.num_of_packet_filter; i++) {
825             pf = smf_pf_find_by_id(bearer, tft.pf[i].identifier+1);
826             if (!pf)
827                 pf = smf_pf_add(bearer);
828             ogs_assert(pf);
                   /* nothing to assign PF identifier in here */
...

Let me know if my understanding is wrong.

Thanks again!
Sukchan

@herlesupreeth
Copy link
Contributor Author

Wow!! Super clean solution you gave there. Thank you

@herlesupreeth herlesupreeth deleted the video branch May 16, 2021 08:35
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.

2 participants