IP Library Granted Patent US 9,197,676
Granted Patent B2
US 9,197,676 · App. 12/687,668 · Granted Nov 24, 2015

System and method for reducing message signaling

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,197,676
App. No.
12/687,668
Granted
Nov 24, 2015
Kind
B2
Abstract

A system for communicating a message using a second signaling protocol is disclosed. The second signaling protocol provides a session control channel between a user agent (UA) and a network node and may include, for example the I1 protocol. The system identifies a first string to be transmitted within a first message. The first message is encoded in accordance with a first signaling protocol. The system associates the first string with a first key, and stores the first string and the first key in a database. The database associates the first string and the first key. The system encodes the first key within a second message, and transmits the second message using the second signaling protocol. The first string may include a plurality of data values. The system sorts the plurality of data values into an ordering, and associates each of the plurality of data values with a key.

Claims (47)

1. A method for communicating using an I1 interface, the I1 interface providing a session control channel, the method comprising:

identifying a session initiation protocol (SIP) encoded message;

determining whether the SIP encoded message is to be transmitted using the I1 interface;

in response to determining that the SIP encoded message is to be transmitted using the I1 interface and the SIP encoded message is larger than a maximum payload of the I1 interface, reducing a size of the SIP encoded message by:

identifying a first string to be transmitted in a first information element of the SIP encoded message to at least one of a user agent (UA) and a network node, the first information element of the SIP encoded message including at least one of a uniform resource identifier (URI), a Public User Identity and a SIP UA capability;

identifying a synchronization table associated with the at least one of the UA and the network node;

using the synchronization table to identify a first key associated with the first string and the first information element of the SIP encoded message; and

when the first key associated with the first string and the first information element of the SIP encoded message is identified in the synchronization table:

encoding the first key within the first information element of the SIP encoded message instead of the first string, and

transmitting the SIP encoded message to the at least one of the UA and the network node using the I1 interface; and

in response to determining that the SIP encoded message is not to be transmitted using the I1 interface, not reducing the size of the SIP encoded message.

2. The method of claim 1 , wherein the first string is a Public User Identity selected from a plurality of Public User Identities, the plurality of Public User Identities being sorted in a priority ordering, the priority ordering determining a key associated with each of the plurality of Public User Identities.

3. The method of claim 2 , wherein the priority ordering of the plurality of Public User Identities is at least partially determined by a hashing algorithm.

4. The method of claim 1 , wherein the Public User Identity is a default Public User Identity.

5. The method of claim 1 , wherein the first key indicates the first string includes a default Public User Identity.

6. The method of claim 1 , wherein the first key associated with the first string is determined using a hashing algorithm.

7. The method of claim 1 , further comprising retrieveing the first key from memory, the memory being stored in an electronic storage medium.

8. A method for communicating a message using a second signaling protocol, the second signaling protocol providing a session control channel between a user agent (UA) and a network node, the method comprising:

identifying a first string to be transmitted within a first data element of a first message, the first message being encoded in accordance with a first signaling protocol, wherein the first string includes at least one of a plurality of Public User Identities and a plurality of SIP user agent (UA) capabilities;

associating the first string with a first key;

storing the first string and the first key in a database, the database associating the first string and the first key;

in response to determining that a size of a second message encoded in accordance with the first signaling protocol is larger than a maximum payload of the second signaling protocol:

identifying the first string to be transmitted within a second data element of the second message;

retrieving the first key from the database;

encoding the first key within the second data element of the second message in place of the first string; and

transmitting the second message using the second signaling protocol.

9. The method of claim 8 , wherein the first string includes a plurality of data values, the method further comprising:

sorting the plurality of data values into an ordering; and

associating each of the plurality of data values with a key, the key being at least partially determined by the ordering of the plurality of data values.

10. The method of claim 9 , wherein sorting the plurality of data values includes using a hashing algorithm to determine a hash value for each of the plurality of data values.

11. The method of claim 8 , wherein the at least one of the a plurality of Public User Identities and the plurality of SIP user agent (UA) capabilities are sorted in a priority ordering.

12. The method of claim 11 , wherein the priority ordering is used to identify a default Public User Identity.

13. The method of claim 8 , further comprising:

determining a hash value for each of the at least one of the plurality of Public User Identities and the plurality of SIP user agent (UA) capabilities; and

sorting the at least one of the plurality of Public User Identities and the plurality of SIP user agent (UA) capabilities into an ordering, the ordering being at least partially determined by the hash values.

14. An apparatus for communicating using an I1 interface, the I1 interface providing a session control channel, the apparatus comprising:

a processor;

a memory storing instructions that, when executed by the processor, cause the processor to:

identify a session initiation protocol (SIP) encoded message;

determine whether the SIP encoded message is to be transmitted using the I1 interface;

in response to determining that the SIP encoded message is to be transmitted using the I1 interface and the SIP encoded message is larger than a maximum payload of the I1 interface, reduce a size of the SIP encoded message by:

identifying a first string to be transmitted in a first information element of the SIP encoded message to at least one of a user agent (UA) and a network node, the first information element of the SIP encoded message including at least one of a uniform resource identifier (URI), a Public User Identity and a SIP UA capability,

retrieving a first key associated with the first string, encoding the first key within the first information element of the SIP encoded message, and

transmitting the SIP encoded message using the I1 interface; and

in response to determining that the SIP encoded message is not to be transmitted using the I1 interface, not reduce the size of the SIP encoded message.

15. The apparatus of claim 14 , wherein the first string is a Public User Identity selected from a plurality of Public User Identities, the plurality of Public User Identities being sorted in a priority ordering, the priority ordering determining a key associated with each of the plurality of Public User Identities.

16. The apparatus of claim 15 , wherein the priority ordering of the plurality of Public User Identities is at least partially determined by a hashing algorithm.

Assignments (10)
CORRECTIVE ASSIGNMENT TO CORRECT THE ADDED PATENT NUMBER TO REMOVE PATENT NO. 8,873,407 AT PREVIOUSLY RECORDED ON REEL 64066 FRAME 1. ASSIGNOR(S) HEREBY CONFIRMS THE NUNC PRO TUNC ASSIGNMENT EFFECTIVE DATE MARCH 20, 2023. Recorded Feb 2, 2026
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 074921/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT 12817157 APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 064015 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 5, 2023
From: OT PATENT ESCROW, LLC
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064807/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE COVER SHEET AT PAGE 50 TO REMOVE 12817157 PREVIOUSLY RECORDED ON REEL 063471 FRAME 0474. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 5, 2023
From: BLACKBERRY LIMITED
To: OT PATENT ESCROW, LLC
Reel/Frame 064806/0669 →
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064066/0001 →
NUNC PRO TUNC ASSIGNMENT Recorded Jun 16, 2023
From: OT PATENT ESCROW, LLC
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064015/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2023
From: BLACKBERRY LIMITED
To: OT PATENT ESCROW, LLC
Reel/Frame 063471/0474 →
CHANGE OF NAME Recorded Oct 16, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 034013/0848 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 11, 2011
From: RESEARCH IN MOTION CORPORATION
To: RESEARCH IN MOTION LIMITED
Reel/Frame 026260/0388 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2010
From: SHATSKY, ALEXANDER
To: RESEARCH IN MOTION LIMITED
Reel/Frame 024172/0306 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2010
From: BUCKLEY, ADRIAN; BAKKER, JAN HENDRIK LUCAS
To: RESEARCH IN MOTION CORPORATION
Reel/Frame 024172/0257 →