IP Library Granted Patent US 9,049,162
Granted Patent B2
US 9,049,162 · App. 13/298,234 · Granted Jun 2, 2015

Compression of message information transmitted over a network

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,049,162
App. No.
13/298,234
Granted
Jun 2, 2015
Kind
B2
Abstract

Disclosed are systems and methods for providing message compression instructions by communicating with a plurality of sender machines and a plurality of receiver machines and monitoring one or more messages from the plurality of sender machines. The disclosed systems and methods may also identify a part of the one or more messages that is frequently included in a plurality of the messages sent by the plurality of sender machines, dynamically determine compression instructions to compress this part of the message, and provide the compression instructions to at least one of the plurality of sender machines, such that the compression instructions reduce size of the messages having the part of the message associated with the compression instructions.

Claims (28)

1. A facilitator server for providing message compression instructions, wherein the facilitator server is operable to:

communicate with a plurality of sender machines and a plurality of receiver machines;

monitor one or more messages from the plurality of sender machines to dynamically determine message data frequently included in a plurality of the messages sent by the plurality of sender machines to be compressed;

dynamically determine compression instructions to compress the frequently included message data; and

provide the compression instructions and a compression identifier associated with the compression instructions to at least one of the plurality of sender machines, wherein the compression instructions allow the at least one of the plurality of sender machines to create a compressed message by replacing the message data with a compressed form of the message data and the compression identifier;

provide the compression instructions to at least one of the plurality of receiver machines, wherein the at least one of the plurality of receiver machines decompresses the compressed message in accordance with the compression instructions.

2. The facilitator server of claim 1 , wherein the one or more messages comprise format information, and wherein the facilitator server is further operable to determine which format information is frequently included in the plurality of the messages, and wherein the compression instructions may compress one of the message data and the format information.

3. The facilitator server of claim 1 , wherein the facilitator server is further operable to monitor the one or messages sent by the plurality of sender machines and dynamically determine further compression instructions to compress other parts of the one or more messages.

4. The facilitator server of claim 1 , wherein the facilitator server is further operable to monitor the one or messages received by the plurality of receiver machines and dynamically determine further compression instructions.

5. The facilitator server of claim 1 , wherein the facilitator server is further operable to receive compression instructions from an administrator.

6. The facilitator server of claim 1 , wherein at least one of the plurality of receiver machines that receives the compression instructions can store the compression instructions for future message compression of messages sent or received by the at least one of the plurality of receiver machines without having to communicate with the facilitator server.

7. A method for providing message compression instructions, wherein the method comprises:

communicating, by a facilitator server, with a plurality of sender machines and a plurality of receiver machines;

monitoring, by the facilitator server, one or more messages from the plurality of sender machines to dynamically determine message data frequently included in a plurality of the messages sent by the plurality of sender machines to be compressed;

dynamically determining, by the facilitator server, compression instructions to compress the frequently included message data; and

providing, by the facilitator server, the compression instructions and a compression identifier associated with the compression instructions to at least one of the plurality of sender machines, wherein the compression instructions allow the at least one of the plurality of sender machines to create a compressed message by replacing the message data with a compressed form of the message data and the compression identifier;

providing, by the facilitator server, the compression instructions to at least one of the plurality of receiver machines, wherein the at least one of the plurality of receiver machines decompresses the compressed message in accordance with the compression instructions.

8. The method of claim 7 , wherein the one or more messages comprise format information, wherein the facilitator server is further operable to determine which format information is frequently included in the plurality of the messages, and wherein the compression instructions may compress one of the message data and format information.

9. The method of claim 7 , wherein the method further comprises monitoring the one or messages sent by the plurality of sender machines and dynamically determining further compression instructions to compress other parts of the one or more messages.

10. The method of claim 7 , wherein the method further comprises monitoring the one or messages received by the plurality of receiver machines and dynamically determining further compression instructions.

11. The method of claim 7 , wherein the method further comprises receiving compression instructions from an administrator.

12. The method of claim 7 , wherein the plurality of receiver machines that receives the compression instructions can store the compression instructions for future message compression of messages sent or received by the receiver machine without having to communicate with the facilitator server.

13. Logic for providing message compression instructions, the logic being embodied in a non-transitory computer-readable medium and when executed operable to:

communicate with a plurality of sender machines and a plurality of receiver machines;

monitor one or more messages from the plurality of sender machines to dynamically determine message data frequently included in a plurality of the messages sent by the plurality of sender machines to be compressed;

dynamically determine compression instructions to compress the frequently included message data of the message; and

provide the compression instructions and a compression identifier associated with the compression instructions to at least one of the plurality of sender machines, wherein the compression instructions allow the at least one of the plurality of sender machines to create a compressed message by replacing the message data with a compressed form of the message data and the compression identifier;

provide the compression instructions to at least one of the plurality of receiver machines, wherein the at least one of the plurality of receiver machines decompresses the compressed message in accordance with the compression instructions.

Assignments (15)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
CHANGE OF NAME Recorded Feb 7, 2023
From: TIBCO SOFTWARE INC.
To: CLOUD SOFTWARE GROUP, INC.
Reel/Frame 062714/0634 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
RELEASE REEL 052115 / FRAME 0318 Recorded Oct 3, 2022
From: KKR LOAN ADMINISTRATION SERVICES LLC
To: TIBCO SOFTWARE INC.
Reel/Frame 061588/0511 →
RELEASE (REEL 034536 / FRAME 0438) Recorded Sep 30, 2022
From: JPMORGAN CHASE BANK, N.A.
To: TIBCO SOFTWARE INC.
Reel/Frame 061574/0963 →
RELEASE (REEL 054275 / FRAME 0975) Recorded May 7, 2021
From: JPMORGAN CHASE BANK, N.A.
To: TIBCO SOFTWARE INC.
Reel/Frame 056176/0398 →
SECURITY AGREEMENT Recorded Nov 2, 2020
From: TIBCO SOFTWARE INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 054275/0975 →
SECURITY AGREEMENT Recorded Mar 6, 2020
From: TIBCO SOFTWARE INC.
To: KKR LOAN ADMINISTRATION SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 052115/0318 →
SECURITY INTEREST Recorded Dec 5, 2014
From: TIBCO SOFTWARE INC.; TIBCO KABIRA LLC; NETRICS.COM LLC
To: JPMORGAN CHASE BANK., N.A., AS COLLATERAL AGENT
Reel/Frame 034536/0438 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 6, 2014
From: SELPH, RUSSELL
To: TIBCO SOFTWARE INC.
Reel/Frame 033480/0394 →