Project

General

Profile

Actions

Bug #2265

closed

OsmoMSC must DLCX after a voice call is done

Added by neels almost 7 years ago. Updated over 6 years ago.

Status:
Closed
Priority:
High
Assignee:
Category:
-
Target version:
-
Start date:
05/16/2017
Due date:
% Done:

100%

Resolution:
Spec Reference:

Description

embarrassingly enough, we don't yet DLCX and the voice stream channels stay open indefinitely after each voice call (3G calls and soon AoIP).
Add DLCX to openbsc/libmgcp/mgcpgw_client.c and use in osmo-msc when a call disconnects.


Related issues

Related to OsmoNITB - Feature #1712: 3G VoiceClosed05/14/2016

Actions
Related to OsmoMSC - Feature #2289: implement AoverIP (OsmoMSC side)Closeddexter05/24/2017

Actions
Related to OsmoMSC - Bug #2279: osmo-mgcp-gw: Fix: cleanup of transaction IDs aka port numbers to be used by the MGCP gwCloseddexter05/22/2017

Actions
Actions #1

Updated by neels almost 7 years ago

  • Parent task set to #1712
Actions #2

Updated by neels almost 7 years ago

  • Parent task deleted (#1712)
Actions #3

Updated by neels almost 7 years ago

Actions #4

Updated by neels almost 7 years ago

  • Related to Feature #2289: implement AoverIP (OsmoMSC side) added
Actions #5

Updated by dexter almost 7 years ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 50

The mgcp_client now supports the generation of DLCX messages. In msc_ifaces.c (looks like all mgcp related switching stuff is implemented here) I have added the following function, which sends a DLCX to the endpoint that is associated with the given transaction:

void msc_call_release(struct gsm_trans *trans)

For 2G I call this function from gsm_04_08.c. For 3G a suitable place has still to be found, perhaps neels knows best where to put it.

We also have another big problem: Assume the MSC has crashed and respawned. All ongoing calls will leave an open endpoint on the mgcp gateway. This endpoint will stay open for ever and it can not be re-used. My current hotfix is to send a DLCX to all endpoints at startup. This works fine, but is of course a little ugly. Another solution would be to send a DLCX before we want to seize a new endpoint. If there is still a lingering connection it would be closed then.

Actions #6

Updated by neels almost 7 years ago

  • Assignee changed from neels to dexter

dexter, please take this issue since you implemented the patches. Can this be resolved now?

Actions #7

Updated by neels almost 7 years ago

  • Related to Bug #2279: osmo-mgcp-gw: Fix: cleanup of transaction IDs aka port numbers to be used by the MGCP gw added
Actions #8

Updated by dexter almost 7 years ago

  • Status changed from In Progress to Resolved
  • % Done changed from 50 to 100

The DLCX message is now sent on the end of each call. I have added the missing "C" field today. Unfortunately I could not use trans->callref. For some reason this identifier gets lost. So I now use the endpoint id isself. This number is also unique, so it should fit the purpose.

See also patch on pmaier/aoip: 8761c965ff0b3d5f225a55411914313173758db9

I have created a new task for the problems we have with endpoints and restarts. This is the problem we currently solve with the DLCX befor CRCX method: See also: #2342

Actions #9

Updated by laforge over 6 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)