IP Library Granted Patent US 9,438,641
Granted Patent B2
US 9,438,641 · App. 12/115,196 · Granted Sep 6, 2016

State machine profiling for voice over IP calls

Inventors: Sachin Garg (Bangalore, IN); Navjot Singh (Denville, NJ); Akshay Adhikari (Santa Clara, CA); Yu-Sung Wu (West Lafayette, IN)
Assignee: Avaya Inc.
H04L65/1079H04M3/436H04L12/585H04M2201/18
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 9,438,641
App. No.
12/115,196
Granted
Sep 6, 2016
Kind
B2
Abstract

An apparatus and method for detecting potentially-improper call behavior (e.g., SPIT, etc.) are disclosed. The illustrative embodiment of the present invention is based on finite-state machines (FSMs) that represent the legal states and state transitions of a communications protocol at a node during a Voice over Internet Protocol (VoIP) call. In accordance with the illustrative embodiment, a library of FSM execution profiles associated with improper call behavior is maintained. When there is a match between the behavior of a finite-state machine during a call and an execution profile in the library, an alert is generated.

Claims (40)

1. A method comprising:

generating, by a data-processing system, one or more execution profiles of a finite-state machine;

generating, by the data-processing system, one or more rules that characterize a relationship among the execution of multiple finite-state machines or among one or more finite-state machines across a plurality of calls, wherein a rule in the one or more rules comprises one or more of an identity of a caller, an identity of a called party, and a calling time;

building, by the data-processing system, a data store that comprises the one or more execution profiles and is for matching against an execution of an instance of the finite-state machine during a call; and

building, by the data-processing system, a data store that comprises the one or more rules and is for matching against the execution of the multiple finite-state machines or against the one or more finite-state machines across the plurality of calls;

wherein the finite-state machine corresponds to a state of a communications protocol at a node, wherein at least one of the execution profiles is associated with improper call behavior,

wherein the execution profiles associated with improper call behavior comprise one or more of an identity of a caller, an identity of a called party, a and calling time,

wherein at least one of the execution profiles comprises a metric that is based on how often the finite-state machine visits one or more particular states; and

wherein at least one of the execution profiles comprises a metric that is based on how long the finite-state machine spends in one or more particular states.

2. The method of claim 1 wherein at least one of the execution profiles is based on empirical data for one or more prior calls.

3. The method of claim 1 , wherein the improper call behavior is Spam over Internet Telephony.

4. The method of claim 1 , wherein at least one of the execution profiles comprises a sequence of visited states of the finite-state machine.

5. The method of claim 1 , wherein the call is a Voice over Internet Protocol call, and wherein the communications protocol is one of Session Initiation Protocol and Real-time Transport Protocol.

6. A method comprising:

receiving, by a server of a call-monitoring system, a notification related to a behavior of a finite-state machine during a call, wherein the finite-state machine corresponds to a state of a communications protocol at a node and wherein the behavior comprises at least one state transition of the communications protocol at the node;

comparing, by the server of the call-monitoring system, the behavior of the finite-state machine to a plurality of execution profiles, wherein one or more of the execution profiles comprise one or more of an identity of a caller, an identity of a called party, and a calling time;

when the behavior of the finite-state machine matches at least one of the plurality of execution profiles, generating, by the server of the call-monitoring system, a first signal that indicates a first possible occurrence of improper call behavior; and

when the behavior of the finite-state machine does not match at least one of the plurality of execution profiles:

comparing, by the server of the call-monitoring system, the behavior of the finite-state machine to a plurality of rules, wherein one or more of the rules comprise one or more of an identity of a caller, an identity of a called party, and a calling time; and

generating, by the server of the call-monitoring system, a second signal that indicates a second possible occurrence of improper call behavior when the behavior of the finite state machine matches at least one of the plurality of rules.

7. The method of claim 6 , wherein the improper call behavior is Spam over Internet Telephony.

8. The method of claim 6 , wherein the node is a first telecommunications terminal, and wherein the improper call behavior is engendered by a second telecommunications terminal.

9. The method of claim 6 , wherein the call is a Voice over Internet Protocol call, and wherein the communications protocol is one of Session Initiation Protocol and Real-time Transport Protocol.

10. The method of claim 6 , wherein at least one of the execution profiles comprises a sequence of visited states of the finite-state machine.

11. The method of claim 6 , wherein at least one of the execution profiles comprises a metric that is based on how often the finite-state machine visits one or more particular states.

12. The method of claim 6 , wherein at least one of the execution profiles comprises a metric that is based on how long the finite-state machine spends in one or more particular states.

13. A call-monitoring system comprising:

a server comprising a processor coupled to a memory, wherein the processor executes program code stored in the memory to:

receive a notification related to a behavior of a finite-state machine during a call, wherein the finite-state machine corresponds to a state of a communications protocol at a node and wherein the behavior comprises at least one state transition of the communications protocol at the finite-state machine;

compare the behavior of the finite-state machine to a plurality of execution profiles, wherein one or more of the execution profiles comprise one or more of an identity of a caller, an identity of a called party, and a calling time;

when the behavior of the finite-state machine matches at least one of the plurality of execution profiles, generate a first signal that indicates a first possible occurrence of improper call behavior; and

when the behavior of the finite-state machine does not match at least one of the plurality of execution profiles:

compare the behavior of the finite-state machine to a plurality of rules, wherein one or more of the rules comprise one or more of an identity of a caller, an identity of a called party, and a calling time; and

generate a second signal that indicates a second possible occurrence of improper call behavior when the behavior of the finite state machine matches at least one of the plurality of rules.

14. The call-monitoring system of claim 13 , wherein the improper call behavior is Spam over Internet Telephony.

15. The call-monitoring system of claim 13 , wherein the node is a first telecommunications terminal, and wherein the improper call behavior is engendered by a second telecommunications terminal.

16. The call-monitoring system of claim 13 , wherein the call is a Voice over Internet Protocol call, and wherein the communications protocol is one of Session Initiation Protocol and Real-time Transport Protocol.

17. The call-monitoring system of claim 13 , wherein at least one of the execution profiles comprises a sequence of visited states of the finite-state machine.

18. The call-monitoring system of claim 13 , wherein at least one of the execution profiles comprises a metric that is based on how often the finite-state machine visits one or more particular states.

19. The call-monitoring system of claim 13 , wherein at least one of the execution profiles comprises a metric that is based on how long the finite-state machine spends in one or more particular states.

Assignments (25)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2024
From: AVAYA LLC
To: ARLINGTON TECHNOLOGIES, LLC
Reel/Frame 067022/0780 →
INTELLECTUAL PROPERTY RELEASE AND REASSIGNMENT Recorded Mar 25, 2024
From: CITIBANK, N.A.
To: AVAYA LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 066894/0117 →
INTELLECTUAL PROPERTY RELEASE AND REASSIGNMENT Recorded Mar 25, 2024
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: AVAYA LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 066894/0227 →
(SECURITY INTEREST) GRANTOR'S NAME CHANGE Recorded Sep 21, 2023
From: AVAYA INC.
To: AVAYA LLC
Reel/Frame 065019/0231 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063690/0359 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063705/0023 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001) Recorded May 18, 2023
From: GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT
To: AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC. (FORMER NAME OF AVAYA CLOUD INC.); HYPERQUALITY, INC.; HYPERQUALITY II, LLC; CAAS TECHNOLOGIES, LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 063779/0622 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 4, 2023
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 063542/0662 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 3, 2023
From: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; KNOAHSOFT INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB [COLLATERAL AGENT]
Reel/Frame 063742/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 45124/FRAME 0026 Recorded Apr 26, 2023
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: AVAYA HOLDINGS CORP.; AVAYA INC.; AVAYA MANAGEMENT L.P.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063457/0001 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 5, 2022
From: AVAYA INC.; INTELLISIST, INC.; AVAYA MANAGEMENT L.P.; AVAYA CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 061087/0386 →
SECURITY INTEREST Recorded Sep 25, 2020
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 053955/0436 →
SECURITY INTEREST Recorded Jan 23, 2018
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 045124/0026 →
SECURITY INTEREST Recorded Jan 10, 2018
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 045034/0001 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 025863/0535 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST, NA
To: AVAYA INC.
Reel/Frame 044892/0001 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 030083/0639 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVAYA INC.
Reel/Frame 045012/0666 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 029608/0256 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVAYA INC.
Reel/Frame 044891/0801 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001 Recorded Dec 15, 2017
From: CITIBANK, N.A.
To: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS INC.; OCTEL COMMUNICATIONS LLC (FORMERLY KNOWN AS OCTEL COMMUNICATIONS CORPORATION); VPNET TECHNOLOGIES, INC.
Reel/Frame 044893/0531 →
SECURITY INTEREST Recorded Jan 27, 2017
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS INC.; OCTEL COMMUNICATIONS CORPORATION; VPNET TECHNOLOGIES, INC.
To: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 041576/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 29, 2015
From: WU, YU-SUNG
To: AVAYA INC.
Reel/Frame 035926/0209 →
SECURITY AGREEMENT Recorded Mar 13, 2013
From: AVAYA, INC.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., THE
Reel/Frame 030083/0639 →
SECURITY AGREEMENT Recorded Jan 10, 2013
From: AVAYA, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 029608/0256 →
SECURITY AGREEMENT Recorded Feb 22, 2011
From: AVAYA INC., A DELAWARE CORPORATION
To: BANK OF NEW YORK MELLON TRUST, NA, AS NOTES COLLATERAL AGENT, THE
Reel/Frame 025863/0535 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2010
From: GARG, SACHIN; SINGH, NAVJOT; ADHIKARI, AKSHAY
To: AVAYA INC.
Reel/Frame 025104/0259 →
REASSIGNMENT Recorded Jun 26, 2008
From: AVAYA TECHNOLOGY LLC
To: AVAYA INC
Reel/Frame 021156/0734 →
Continuity (1)
Related Publication 20090274143A1 · Nov 5, 2009