IP Library Granted Patent US 11,025,782
Granted Patent B2
US 11,025,782 · App. 16/708,904 · Granted Jun 1, 2021

End-to-end session-related call detail record

Inventors: Thierry Boussac (Rennes, FR); Nicolas Cornet (Saint Aubin du Pavail, FR); Antoine Vallee (Guichen, FR)
Assignee: EXFO Solutions SAS
H04M15/41H04L65/1006H04L65/1069H04M15/43H04M15/55H04M15/8228H04W4/24H04M2215/0164
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,025,782
App. No.
16/708,904
Granted
Jun 1, 2021
Kind
B2
Abstract

A method, implemented in a distributed system including a plurality of processing devices, generates an end-to-end Call Detail Record (CDR) on voice and multimedia telecommunication sessions over a plurality of telecommunication network elements and interfaces. The method includes the steps of receiving CDRs generated in real-time and streamed by multiple network elements, each CDR referring to a specific interface or protocol, processing the received CDRs as they are received to identify the specific interface or protocol to which the received CDR refers and to identify a single telecommunication session based on a key associated with the received CDR, and creating an end-to-end CDR incrementally based on all of the received CDRs identified for the single telecommunication session, wherein at least two of the received CDRs have a different interface or protocol from one another.

Claims (45)

1. A method, implemented in a distributed system including a plurality of processing devices, for generating an end-to-end Call Detail Record (CDR) on voice and multimedia telecommunication sessions over a plurality of telecommunication network elements and interfaces, the method including the steps of:

receiving CDRs generated in real-time and streamed by multiple network elements, each CDR referring to a specific interface or protocol,

processing the received CDRs as they are received to identify the specific interface or protocol to which the received CDR refers and to identify a single telecommunication session based on a key associated with the received CDR, and

creating an end-to-end CDR incrementally based on all of the received CDRs identified for the single telecommunication session, wherein at least two of the received CDRs have a different interface or protocol from one another,

wherein the creating the end-to-end CDR is performed in real-time where the end-to-end CDR is incrementally created, and wherein the creating the end-to-end CDR is finalized based on a timeout value to address late or missing CDRs, and wherein the timeout value is based on a current state of the single telecommunications session and a completeness of the data gathered from the received CDRs.

2. The method of claim 1 , further comprising, in a sequence of identified CDRs for a given telecommunication session, determining a first CDR to contain fault data and incorporating this fault data into the end-to-end CDR for the given telecommunication session.

3. The method of claim 1 , further comprising identifying CDRs that correspond to the single telecommunication session using one or more of a timestamp corresponding to the telecommunication session, subscriber identifier corresponding to the telecommunication session and rules applied to identifiers available within the CDR.

4. The method of claim 1 , further comprising generating two end-to-end CDRs for one telecommunication session, each end-to-end CDR corresponding to one direction of said telecommunication session and incorporating data in each of the end-to-end CDR identifying the other of the end-to-end CDR.

5. The method of claim 1 , wherein the CDRs are from a plurality of different types of probes and at least two of the different types of probes have a different data structure for their corresponding CDRs.

6. The method of claim 1 , wherein the CDRs are for a voice session including any of legacy calls (2G or 3G); Circuit Switched Fallback (CSFB) calls: Internet Protocol Multimedia Subsystem (IMS) calls (4G or Wi-Fi); and Inter Radio Access Technology (RAT) Handover (HO) calls: 3G to 2G, 2G to 3G, Single Radio Voice Call Continuity (SRVCC) to 2G or 3G, 4G to Wi-Fi, Wi-Fi to 4G.

7. The method of claim 1 , wherein the specific interface includes any of a Service Gateway (SG) interface, an lu CS interface, an S1 interface, an Sv interface, a Session Initiation Protocol (SIP) interface, and an A interface.

8. A distributed system for generating an end-to-end Call Detail Record (CDR) on voice and multimedia telecommunication sessions over a plurality of telecommunication network elements and interfaces, the distributed system includes:

a plurality of processing devices configured to

receive CDRs generated in real-time and streamed by multiple network elements, each CDR referring to a specific interface or protocol,

process the received CDRs as they are received to identify the specific interface or protocol to which the received CDR refers and to identify a single telecommunication session based on a key associated with the received CDR,

create an end-to-end CDR incrementally based on all of the received CDRs identified for the single telecommunication session, wherein at least two of the received CDRs have a different interface or protocol from one another, and

generate two end-to-end CDRs for one telecommunication session, each end-to-end CDR corresponding to one direction of said telecommunication session and linking the two end-to-end CDRs for the one telecommunication session by incorporating data from one end-to-end CDR into the other for each of the end-to-end CDR identifying the other of the end-to-end CDR therein, wherein each end-to-end CDR is finalized based on a timeout value to address late or missing CDRs, and wherein the timeout value is based on a current state of the single telecommunications session and a completeness of the data gathered from the received CDRs.

9. The distributed system of claim 8 , wherein the plurality of processing devices are further configured to, in a sequence of identified CDRs for a given telecommunication session, determine a first CDR to contain fault data and incorporating this fault data into the end-to-end CDR for the given telecommunication session.

10. The distributed system of claim 8 , wherein the plurality of processing devices are further configured to identify CDRs that correspond to the single telecommunication session using one or more of a timestamp corresponding to the telecommunication session, subscriber identifier corresponding to the telecommunication session and rules applied to identifiers available within the CDR.

11. The distributed system of claim 8 , wherein the end-to-end CDR creation is performed in real-time where the end-to-end CDR is incrementally created.

12. The distributed system of claim 8 , wherein the CDRs are from a plurality of different types of probes and at least two of the different types of probes have a different data structure for their corresponding CDRs.

13. The distributed system of claim 8 , wherein the CDRs are for a voice session including any of legacy calls (2G or 3G); Circuit Switched Fallback (CSFB) calls: Internet Protocol Multimedia Subsystem (IMS) calls (4G or Wi-Fi); and Inter Radio Access Technology (RAT) Handover (HO) calls: 3G to 2G, 2G to 3G, Single Radio Voice Call Continuity (SRVCC) to 2G or 3G, 4G to Wi-Fi, Wi-Fi to 4G.

14. The distributed system of claim 8 , wherein the specific interface includes any of a Service Gateway (SG) interface, an lu CS interface, an S1 interface, an Sv interface, a Session Initiation Protocol (SIP) interface, and an A interface.

15. A non-transitory computer-readable medium having instructions stored thereon for programming processing devices in a distributed system to perform the steps of:

receiving CDRs generated in real-time and streamed by multiple network elements, each CDR referring to a specific interface or protocol,

processing the received CDRs as they are received to identify the specific interface or protocol to which the received CDR refers and to identify a single telecommunication session based on a key associated with the received CDR,

creating an end-to-end CDR incrementally based on all of the received CDRs identified for the single telecommunication session, wherein at least two of the received CDRs have a different interface or protocol from one another; and

generating two end-to-end CDRs for one telecommunication session, each end-to-end CDR corresponding to one direction of said telecommunication session and linking the two end-to-end CDRs for the one telecommunication session by incorporating data from one end-to-end CDR into the other for each of the end-to-end CDR identifying the other of the end-to-end CDR therein wherein each end-to-end CDR is finalized based on a timeout value to address late or missing CDRs, and wherein the timeout value is based on a current state of the single telecommunications session and a completeness of the data gathered from the received CDRs.

16. The non-transitory computer-readable medium of claim 15 , wherein the instructions further program the processing devices to perform the steps of, in a sequence of identified CDRs for a given telecommunication session, determining a first CDR to contain fault data and incorporating this fault data into the end-to-end CDR for the given telecommunication session.

17. The non-transitory computer-readable medium of claim 15 , wherein the creating the end-to-end CDR is performed in real-time where the end-to-end CDR is incrementally created.

18. A distributed system for generating an end-to-end Call Detail Record (CDR) on voice and multimedia telecommunication sessions over a plurality of telecommunication network elements and interfaces, the distributed system includes:

a plurality of processing devices configured to

receive CDRs generated in real-time and streamed by multiple network elements, each CDR referring to a specific interface or protocol,

process the received CDRs as they are received to identify the specific interface or protocol to which the received CDR refers and to identify a single telecommunication session based on a key associated with the received CDR, and

create an end-to-end CDR incrementally based on all of the received CDRs identified for the single telecommunication session, wherein at least two of the received CDRs have a different interface or protocol from one another, wherein the end-to-end CDR creation is performed in real-time where the end-to-end CDR is incrementally created, and wherein the end-to-end CDR is finalized based on a timeout value to address late or missing CDRs, and wherein the timeout value is based on a current state of the single telecommunications session and a completeness of the data gathered from the received CDRs.

19. A distributed system for generating an end-to-end Call Detail Record (CDR) on voice and multimedia telecommunication sessions over a plurality of telecommunication network elements and interfaces, the distributed system includes:

a plurality of processing devices configured to receive CDRs generated in real-time and streamed by multiple network elements, each CDR referring to a specific interface or protocol,

process the received CDRs as they are received to identify the specific interface or protocol to which the received CDR refers and to identify a single telecommunication session based on a key associated with the received CDR, and

create an end-to-end CDR incrementally based on all of the received CDRs identified for the single telecommunication session, wherein at least two of the received CDRs have a different interface or protocol from one another, wherein the end-to-end CDR is finalized based on a timeout value to address late or missing CDRs, and wherein the timeout value is based on of a current state of the single telecommunications session and a completeness of the data gathered from the received CDRs,

wherein the CDRs are from a plurality of different types of probes and at least two of the different types of probes have a different data structure for their corresponding CDRs.

20. A non-transitory computer-readable medium having instructions stored thereon for programming processing devices in a distributed system to perform the steps of:

receiving CDRs generated in real-time and streamed by multiple network elements, each CDR referring to a specific interface or protocol,

processing the received CDRs as they are received to identify the specific interface or protocol to which the received CDR refers and to identify a single telecommunication session based on a key associated with the received CDR, and

creating an end-to-end CDR incrementally based on all of the received CDRs identified for the single telecommunication session, wherein at least two of the received CDRs have a different interface or protocol from one another,

wherein the creating the end-to-end CDR is performed in real-time where the end-to-end CDR is incrementally created, and wherein the creating the end-to-end CDR is finalized based on a timeout value to address late or missing CDRs, and wherein the timeout value is based on a current state of the single telecommunications session and a completeness of the data gathered from the received CDRs.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 29, 2025
From: EXFO SOLUTIONS SAS
To: TC FRANCE S.A.S.
Reel/Frame 073329/0624 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2025
From: EXFO INC.
To: EXFO SOLUTIONS SAS
Reel/Frame 070035/0499 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2023
From: EXFO SOLUTIONS SAS
To: EXFO INC.
Reel/Frame 065928/0957 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2020
From: BOUSSAC, THIERRY; CORNET, NICOLAS; VALLEE, ANTOINE
To: EXFO SOLUTIONS SAS
Reel/Frame 051847/0940 →
Continuity (2)
Provisional Application 62777882 · Dec 11, 2018
Related Publication 20200186651A1 · Jun 11, 2020
Cited By (3)
US 12,200,523 US 12,212,450 US 12,671,768