Invalidity dossier

US 7512707

Load balancing of server clusters

Current assignee: Adobe Inc

Added 9/11/2026, 11:07:34 PM

At a glanceNo PTAB challengesNo litigation on fileSoftware Technology & Computing Systems (T)

Active provider: DeepSeek · deepseek-v4-flash

Auto-generating section 1 of 2: Extensions

Each section takes ~30-60s with web-search grounding. Keep this tab open — sections will fill in below as they complete.

Patent summary

Title, assignee, inventors, filing/issue dates, abstract, and a plain-language overview of the claims.

✓ Generated

I'll run targeted searches for the exact patent number and for any CAFC 2026 activity.

No CAFC hit for the exact number. Let me probe further for any litigation, PTAB, or Federal Circuit activity tied to this exact patent.

US Patent 7,512,707 — Analysis and Docket Check

⚠️ Search-and-verification note (read first)

  • I searched for the exact number 7512707 across patent databases and for any CAFC 2026 / PTAB / district-court activity. No CAFC 2026 docket, appeal, IPR, or litigation record keyed to US 7,512,707 was returned. I cannot affirmatively state that litigation or an appeal exists — if any exists, it did not surface in these searches, and I have no authoritative source for it.
  • Searches for "7,512,707" consistently returned unrelated patents with visually similar numbers — e.g., 7,513,238 (Nissan v. Longhorn IPR2025‑01089), 8,273,707, and 7,428,707 — plus unrelated "’707" patents (Densys v. Align, Adaptive Avenue). These are different patents and are not to be conflated with 7512707.
  • The bibliographic data below is drawn from the authoritative Google Patents full text at https://patents.google.com/patent/US7512707/en (the same front-page data mirrored at https://uspto.report/patent/grant/7512707). I did not independently open USPTO Patent Center/PAIR; treat the legal-status line as an unverified database assertion, not a legal conclusion.

1. Bibliographic data

Field Value (as recorded)
Patent number US 7,512,707 B1
Title Load balancing of server clusters
Application no. 11/266,770
Inventors Srinivas Manapragada; Pritham Shetty
Original assignee Adobe Systems Inc (reassignment records also show a 2006‑04‑20 assignment from Macromedia, Inc.)
Current assignee of record Adobe Inc. (name change from Adobe Systems Incorporated, 2019‑04‑08)
Priority date 2005‑11‑03
Filing date 2005‑11‑03
Issue (publication) date 2009‑03‑31
Legal status Expired – Fee Related; adjusted expiration listed as 2026‑03‑09
Family / continuations Continuation 12/414,306 → US 7,991,912 B2 (filed 2009‑03‑30); continuation 13/194,807 → US 8,676,994 B2 (filed 2011‑07‑29)
Related application (incorporated by reference) U.S. Ser. No. 11/263,652, "NETWORK CONFIGURATION WITH SMART EDGE SERVERS"
Classifications H04L67/1008 (server selection based on server parameters), H04L67/1004 (server selection for load balancing), H04L67/1023 (hash over IP addresses/costs), H04L67/1001

Prosecution-lane caution: the two continuations (7,991,912 and 8,676,994) share the 2005‑11‑03 priority date. Any 2026 docket activity you may be tracking could sit on one of those siblings rather than on 7,512,707 itself — they are distinct patents and should be checked separately.


2. Abstract (verbatim)

"A load balancing scheme is described for a server cluster. An application identifier is received by the cluster from a client desiring to connect to the application. Each one of the servers in the cluster independently hashes the application identifier into a unique number. This unique number is used to determine a preferred one of the servers for the connection. The servers then each calculate a priority code using the unique number, a load level for each server, and/or a node identifier assigned to the servers in the cluster. If the preferred cluster server is available, it transmits its priority code to the client before the other servers transmit their priority codes. Otherwise, each of the available cluster servers transmits their priority codes to the client. The client selects the cluster server with the most favorable priority for making the connection."


3. Plain-language overview

Problem: In edge/content-delivery and real-time collaboration systems (the spec discusses Adobe/Macromedia BREEZE™ and Cisco WebEx™-style meetings), a server cluster fronts an application. Prior clusters were tightly coupled with heavy administration — adding or losing a server caused disruption. Additionally, meeting/streaming applications benefit from connection "stickiness" (all clients of one meeting served by the same cluster server to avoid duplicative caching), so a naïve round-robin load balancer is counterproductive.

Core idea — a loosely coupled, client-arbitrated election:

  1. Broadcast: A client wanting an application broadcasts the application identifier to the whole cluster.
  2. Deterministic hash: Every server independently hashes that identifier to the same unique number, then normalizes it (e.g., modulus N servers) so it maps onto one of the servers' node numbers — identifying the "preferred" server for that application (this yields stickiness, and spreads different applications evenly).
  3. Priority code: Each server computes its own priority/affinity code from the hash value, its node ID, and its current load (a heavily loaded server degrades its own code or stays silent).
  4. Head start: The preferred server replies immediately; the others reply after a delay Δt.
  5. Client-side window: The client opens a time window on the first reply received, stores all replies within it, and picks the most favorable code. If the preferred server is down/overloaded, its silence simply lets a different healthy server win — with no renegotiation.

Graceful handling of odd cases: duplicate node IDs (the spec explicitly gives servers 403 and 405 both node "3"), arbitrary server arrival/departure, and load skew all "self-resolve" via the priority race. New servers broadcast their chosen node ID; existing servers reply with theirs.


4. Independent claims in plain language

There are four independent claims — 1, 6, 12, 17.

Claim 1 — Method (cluster-side selection + client-side choice).

  • Receive, at the server cluster, a client request to connect to one of several distributed applications, the request containing that application's identifier.
  • Each server calculates its own priority code from the identifier.
  • Hash the identifier to a unique number; normalize it into the range of the node numbers labeling the servers; compare the normalized result against each node number; identify as "preferred" those servers whose node number matches.
  • Transmit the priority codes and the identification of the preferred servers to the client.
  • The client (expressly, by its own evaluation of the transmitted codes) selects and connects to one of the servers.

Claim 6 — Method (hash/modulus-based preferred-server determination + staggered transmission).

  • Receive an application identifier; each server hashes it to a unique number.
  • Apply a modulus operation to obtain a number drawn from the set of node identifiers.
  • Use that number to determine the preferred server.
  • Each server calculates its own priority code from one or both of: the unique number and its assigned node identifier.
  • Transmit to the client, with the preferred server transmitting before the others.

Claim 12 — Computer program product (mirror of claim 1, implemented as recorded code/logic).

  • Code at the cluster for receiving the application-identifying request; code at each server for calculating its own priority code from the identifier; code for hashing to a unique number; code for normalizing into the node-number range; code for comparing; code (responsive to the comparing) for identifying the preferred servers whose node numbers match; code for transmitting codes plus preferred-server identification; and code for connecting the server the client selects based on its evaluation of the transmitted codes.

Claim 17 — System, drafted in means-plus-function form (§ 112(f) style).

  • Means for receiving an application identifier; means at each server for hashing it to a unique number; means for applying a modulus to yield a number drawn from the servers' node identifiers; means for using that result to determine the preferred server; means at each server for calculating its own priority code using one or more of the unique number, a load level, and the node identifier; and means for transmitting the code with the preferred server transmitting first.

Selected dependents that narrow scope:

  • 2 / 13 — non-preferred servers delay transmission by a predetermined period.
  • 3 / 11 / 14 / 22 — dynamic cluster membership: a new server broadcasts its self-selected node ID and receives node IDs from existing servers.
  • 4 / 15 — priority code reflects a load intensity value folded into the normalized number.
  • 5 / 7 / 16 / 18 — the client-side messaging window: start a window on the first code received, store all codes received within it, and select on the stored set.
  • 8 / 19 — expresses the case where the preferred server is unavailable.
  • 9 / 20 — tie-break: client chooses the first received when codes are equal.
  • 10 / 21 — preferred server leads by a predetermined amount of time.

Claim-construction flags a practitioner would note: (i) claim 1 recites both "calculating a priority code … using said identifier" and, separately, hashing/normalizing/comparing steps, with an arguably loose antecedent structure; (ii) claim 1 makes client-side selection a positive limitation ("made by said one of said plurality of clients based upon an evaluation by said one of said plurality of clients"), which matters for divided-infringement analysis; (iii) claim 17's means-plus-function terms would require corresponding structure from the spec (the cluster servers of FIGS. 3–4, the FIG. 6 flowchart, and the FIG. 7 computer system).


5. Prior art cited on the face (13 references) — context

Representative examiner-cited art includes US 6,128,279 (Web Balance, Inc., load balancing among network servers), US 6,055,564 (HP, admission control by priority indicator), US 7,062,570 (Avaya, server farm with tagging/pipelining), US 2002/0143965 (IBM, server-application-initiated affinity in workload balancing), US 2004/0197079 (Nokia, stateless load sharing for an IP server cluster), and non-patent literature including Microsoft's "Using Outlook Web Access with Windows Load Balancing Service" (2001) and Penchikala, "Clustering and Load Balancing in Tomcat 5, Part 1" (2004).


6. Explicit uncertainties

  1. No CAFC 2026 (or any) appeal / IPR / litigation record for 7512707 was found. I am not asserting it is litigation-free; I am reporting a negative search result and have no authoritative confirmation either way.
  2. Legal status / expiration (2026‑03‑09) is a database assertion from Google Patents; I did not verify against USPTO Patent Center's fee-history or term-adjustment records. "Expired – Fee Related" would normally mean a maintenance-fee lapse, which is a different event from term expiry and is worth confirming.
  3. Assignee chain: the front page lists Adobe Systems Inc as original assignee while a 2006 reassignment record names Macromedia, Inc. as an assignor — consistent with Adobe's 2005 Macromedia acquisition, but I have not independently verified the recorded chain of title.
  4. Some OCR/character issues appear in the delivered full text (e.g., "meetina," "Drawnng," "Custer"), which I treated literally and did not auto-correct.

Generated 9/12/2026, 12:45:38 AM

Cases on file (0)

Specific litigation cases in our database that name US patent 7512707. The free-form analysis below may also discuss cases beyond this list.

No cases on file mention this patent. Upload a CSV or add a case manually in Admin → Manage litigation cases.

Litigation summary

Past and pending lawsuits — plaintiffs, defendants, jurisdictions, outcomes, and notable rulings.

✓ Generated

I'll research litigation involving US patent 7512707. Let me search several sources.

Let me try more specific sources.

Summary of Findings

No litigation specifically involving U.S. Patent No. 7,512,707 ("Load balancing of server clusters") was identified in the sources I was able to search.

I want to be explicit about the limits of this answer, because a negative finding is only as good as the search behind it.

What I searched

I ran multiple web queries targeting patent-litigation sources, including:

  • Direct queries on the patent number ("7512707", "7,512,707") tied to litigation/lawsuit/defendant terms
  • Queries aimed at Unified Patents' litigation caselist and related portals
  • Broad queries associating the patent with its assignee (Adobe Systems / Adobe Inc.)

What the searches returned

None of the results concerned US 7,512,707. The hits I did get involved different patents and were not responsive:

Result Patent(s) involved Relevance to 7,512,707
Richardson v. Adobe, Inc., S.D.N.Y. 22 Civ. 7114 (PGG) (mem. op. Sept. 10, 2024) 7,388,587; 7,629,977; 8,035,644; 11,232,768; 11,263,998 None — different Adobe lawsuit, different patents
Jaffe v. Adobe, Inc., C.D. Cal. 2:23-cv-06224 (filed Aug. 1, 2023) 6,757,828 None
RPost v. Adobe/EchoSign (E.D. Tex.) 6,182,219; 6,571,334; 7,707,624; 7,865,557; 7,966,372 None
Drug-patent database hits 7,635,707; 9,707,182 None (false matches on similar-looking numbers)

Per the strict rule, I have not treated any of these as the patent in question — they are different numbers and different subject matter.

Patent 7,512,707 — key identifying details (for confirmation)

  • Title: "Load balancing of server clusters"
  • Inventors: Srinivas Manapragada; Pritham Shetty
  • Original assignee: Adobe Systems Inc. (current: Adobe Inc.)
  • App. No. 11/266,770; filed and priority date 2005-11-03; granted 2009-03-31
  • Status shown: Expired – Fee Related, adjusted expiration 2026-03-09
  • Family/continuations: US 7,991,912 (app. 12/414,306) and US 8,676,994 (app. 13/194,807)

Important caveats

  1. My search did not exhaustively cover PACER or the Unified Patents litigation caselist, which the request specifically cited. The tool results I received did not surface those dockets for this patent number, and I was unable to complete additional targeted lookups.
  2. A negative result here is not proof that no case exists. NPE/assertion activity, Westlaw/Lexis-only dockets, or cases where the patent number appears only in an exhibit list can be missed by open-web search.
  3. The patent is shown as expired (fee-related), with the last relevant family activity in the early 2010s. I have no confirmed record of it being asserted.

Recommended next steps to resolve definitively

  • PACER Case Locator (pacer.uscourts.gov) — search "7,512,707" and "7512707" across all districts; and check the Federal Circuit docket.
  • Unified Patents litigation portal / PTAB filings (portal.unifiedpatents.com) — check both litigation and any IPR/PGR involving this patent number.
  • USPTO Patent Center / Assignment records — review the "Patent Litigation" tab and any recorded assignments (e.g., transfers to an assertion entity), which often precede infringement suits.
  • CourtListener / RECAP and Docket Alarm full-text search on the exact number.

If you can tell me which of those you'd like me to prioritize, or provide docket access, I can run a more complete check. As of this response, based on the searches performed, I found no known litigation involving US 7,512,707.

Generated 9/12/2026, 12:45:25 AM

Proceedings on file (0)

All PTAB activity →

AIA trial proceedings (IPR / PGR / CBM) filed at the USPTO Patent Trial and Appeal Board against this patent. Sourced from the USPTO Open Data Portal and refreshed every six hours; each proceeding number deep-links to the PTAB E2E docket.

No PTAB proceedings on file. This patent has not been challenged via IPR, PGR, or CBM. The absence is itself a signal — well-asserted patents eventually attract IPRs. The LLM analysis below may surface filings the ODP feed hasn’t indexed yet.

PTAB challenges

AIA trial proceedings at the USPTO Patent Trial and Appeal Board — IPR, PGR, and CBM. Petitioners, judge panels, claim-level invalidation outcomes from Final Written Decisions, and Federal Circuit appeals. The single most important defensive datapoint after litigation history.

✓ Generated

I'll verify the structured "no proceedings" finding against the open web — including the two continuation patents in the same family, since PTAB petitions are sometimes filed against continuations rather than the parent.

The first pass found nothing. Let me probe the specific channels a defendant would use — Unified Patents' litigation/PTAB portal, CBM-era filings against Adobe software patents, and Federal Circuit activity.

Proceedings overview

Total AIA trial proceedings on US 7,512,707: zero — 0 active, 0 claims invalidated, 0 claims sustained, 0 settled, 0 institution denied. The bottom-line defensive posture is unusual and cuts both ways: there is no IPR/CBM record to lean on (no canceled claims to point to, no patent-owner admissions, no claim-construction findings in your favor), but there is also no estoppel cloud and, critically, no sign that this patent has ever been a repeat assertion target — well-litigated patents almost invariably attract an IPR within a year or two of a first complaint. Combined with the structured status showing the patent expired (adjusted expiration 2026-03-09, "Expired – Fee Related"), a defendant's best primary defense is likely a term/standing argument, not a validity attack.

Per-proceeding detail

There is nothing to detail. The canonical structured source in this prompt — the USPTO Open Data Portal "PTAB proceedings on file" block — returns no AIA trial proceedings for this patent, and my attempted web corroboration (IPR/PGR/CBM number queries on 7512707, 7,512,707, and the "Load balancing of server clusters" title) surfaced none either. I am therefore not presenting any proceeding headings, because I have no proceeding numbers or decisions to cite, and I will not generate placeholder ones.

No AIA trial activity on file

  • Type: N/A
  • Filed: N/A
  • Status: No proceedings indexed in the canonical ODP data (as of most recent ingest)
  • Judge panel: N/A
  • Petition grounds: N/A
  • Institution decision: N/A
  • Final Written Decision: N/A
  • Settlement / termination: N/A
  • Appeal: No PTAB FWD exists to appeal; I found no Federal Circuit docket tied to this patent number
  • Defensive value: You cannot obtain § 315(e)(2) estoppel against yourself, but you also have no free win. Any invalidity theory is unadjudicated and must be built from scratch — see the prior-art list in the patent's own "Citations" section (13 references, including US 6,128,279 to Web Balance, Inc.; US 5,991,808; US 6,055,564; US 2002/0143965 A1 on "Server application initiated affinity"; and US 2004/0197079 A1 on "stateless load sharing for a server cluster") and the three non-patent citations (Microsoft OWA/Windows Load Balancing Service, 2001-07-23; Chen et al., IEEE, 2000-01; Penchikala, "Clustering and Load Balancing in Tomcat 5, Part 1," 2004-03-31).

Family check (do this before relying on the above)

The 7512707 family has two continuations that share the 2005-11-03 priority date, and PTAB petitions are frequently filed against the continuation that carries the asserted claims:

Patent App. No. Status (per structured data) PTAB activity found
US 7,512,707 11/266,770 Expired – Fee Related None
US 7,991,912 12/414,306 Expired – Lifetime None found
US 8,676,994 13/194,807 Expired – Fee Related None found

A demand letter citing "the Manapragada/Shetty load-balancing family" could target any of the three, so screen all three numbers independently.

Strategic summary

Claim status: entirely UNTESTED. All 22 claims — independent claims 1, 6, 12, and 17, plus their dependents — stand exactly as issued on 2009-03-31. No claim has been canceled, confirmed, or amended by the PTAB, and no Federal Circuit mandate has construed any term. There is therefore no claim-level "safe harbor" to invoke, and equally no adverse construction binding the patent owner.

Estoppel landscape. § 315(e)(2) estoppel runs only against petitioners and their privies in a proceeding that reached a final written decision. Because no IPR/PGR/CBM was ever instituted on this patent, no estoppel attaches to anyone. If you are being asserted against today, the full universe of prior art — printed publications, patents, and system art predating 2005-11-03 — remains available to you in district court. The corollary is that you cannot borrow someone else's work product either; there is no petitioner brief or panel decision to mine.

Pattern signals. No evidence of: (a) any repeat petitioner, (b) any patent-owner appeal practice before the Federal Circuit on this family, or (c) a defensive aggregator such as Unified Patents in the chain. Combined with the litigation record (the previously generated litigation section likewise found no asserted litigation), the picture is of a patent that has been essentially dormant — consistent with an asset whose owners (Macromedia → Adobe Systems → Adobe Inc.) never monetized it adversarially, and which is now at/near the end of its enforceable life.

Term point worth flagging. The structured data shows the patent as "Expired – Fee Related" with an adjusted expiration of 2026-03-09. Read literally against today's date (2026-09-12), the statutory term has run. Two caveats you should verify rather than assume: (1) "Expired – Fee Related" is ordinarily a maintenance-fee lapse designation, which could mean the patent actually became unenforceable on an earlier date than the adjusted-expiration figure; and (2) even a fully expired patent remains assertable for past infringement within the 35 U.S.C. § 286 six-year lookback. So expiration is a powerful but not self-executing defense — pin down the actual lapse/expiration date from USPTO Patent Center before relying on it.

Recommended next steps

  1. Confirm the negative directly at the source. Query the USPTO Patent Trial and Appeal Board's PTAB E2E / ODP endpoints for the application numbers 11/266,770, 12/414,306, and 13/194,807, and for patent numbers 7,512,707, 7,991,912, and 8,676,994. CourtListener is the right cross-check for any associated CAFC docket. Do this rather than relying on this summary, since my corroborating web searches were cut short.

  2. If no PTAB activity confirms out, say so plainly in your defense memo — and treat the absence as a signal, not a shield. The absence means the patent has not been stress-tested; it does not mean the claims are strong or weak. Expect the patent owner, if it ever asserts, to argue exactly that.

  3. Build the invalidity case from the patent's own cited art. Start with US 6,128,279 (Web Balance) and US 2004/0197079 A1 (Nokia, "stateless load sharing for a server cluster") — both are directly on-point for hash-based preferred-server selection, and both were before the examiner. A § 102/§ 103 combination built on references the examiner already considered requires a strong obviousness narrative, so pair them with the non-patent literature (Microsoft WLB, 2001-07-23) rather than re-arguing the same references.

  4. Verify the expiration/lapse date in USPTO Patent Center and check maintenance-fee history. If the patent lapsed for non-payment before the asserted damages window, that is likely dispositive as to post-lapse conduct.

  5. Check for asserted family patents before concluding there is no exposure. The identical specification and priority date mean the effort to invalidate one carries over to the others; if a complaint names only one, screen the other two anyway.

Caveats on this section: the searches I ran returned no PTAB hits, but I reached my tool-call limit before completing targeted lookups on the Unified Patents litigation/PTAB portal and the Federal Circuit docket. The structured ODP block is authoritative and says "no proceedings," and nothing I found contradicts it — but a negative is only as good as its search, so treat this as "no proceedings found," verified at the ODP level, and confirm at E2E before filing anything that depends on it.

Generated 9/12/2026, 12:45:58 AM

Ownership chain (3)

Asserters network →

Structured records extracted from the assignment-history narrative below. Each entity links to its full ownership-network profile.

  1. ? · recorded 2006-03-02 · Assignment

    Srinivas Manapragada; Pritham ShettyAdobe Systems Incorporated

  2. ? · recorded 2006-04-20 · Assignment

    Macromedia, Inc.Adobe Systems Incorporated

    acquisition

  3. ? · recorded 2019-04-08 · Change of Name

    Adobe Systems IncorporatedAdobe Inc.

    change of name only

Assignment history

Inventors, original assignee, and the chain of ownership recorded with the USPTO — including the correspondent attorney who recorded each assignment, since shell-LLC chains often share one repeat-player attorney even when the entity names look unrelated. Surfaces NPE / patent-troll patterns: shell-entity transfers, known asserters in the chain, repeat correspondent fingerprints, pre-litigation assignments, and bankruptcy fire-sales.

✓ Generated

I'll research the assignment record for US 7,512,707 across USPTO Assignment Center and related sources.

Let me search more specifically for the assignment records and correspondent data.

The searches aren't surfacing the actual recorded assignment data yet. Let me probe more directly for reel/frame and correspondent details.

Search limitations (read before the record below)

I attempted targeted lookups against the USPTO Assignment Center (https://assignmentcenter.uspto.gov/, legacy https://assignment.uspto.gov/patent/index.html), uspto.report/patent/grant/7512707, and Google Patents legal events. I was not able to retrieve the Assignment Center record page or the recorded assignment PDFs for this patent. Consequently:

  • The reel/frame numbers, execution dates, and correspondent (attorney/agent of record) fields could not be verified and are reported below as not retrieved. I am deliberately not inventing them.
  • What is available is the reassignment event list mirrored on Google Patents (the same front-page/legal-events data used in the prior sections of this analysis). Those entries give conveyance type, assignor, assignee, and recording date but not reel/frame or correspondent.
  • Because the gating fields for signals #3 (repeat correspondent) and precise #5 (pre-litigation timing) are exactly the fields I could not pull, those signals are scored unclear rather than "not present."

If you can supply Assignment Center access or the PDFs, the reel/frame + correspondent columns can be completed and signal #3 resolved.


Inventors

Inventor Employer at time of filing (2005‑11‑03)
Srinivas Manapragada Macromedia, Inc. (inferred — see note)
Pritham Shetty Macromedia, Inc. (inferred — see note)
  • The front page lists Adobe Systems Inc as original assignee, but the reassignment record dated 2006‑04‑20 shows Macromedia, Inc. assigning its interest to Adobe Systems Incorporated, and the inventors' own assignment to Adobe was recorded 2006‑03‑02. Given the Adobe–Macromedia deal (announced April 2005, closed 2005‑12‑03) and the filing date of 2005‑11‑03 — before the deal closed — the inventors were, on the balance of the record, Macromedia employees at filing, with their rights flowing to Adobe through the acquisition. I flag this as an inference from the assignment sequence, not a documentary fact.
  • No abnormal pattern: there is no evidence of both inventors departing the original assignee within 12 months of filing, and no evidence of any employee-inventor reassignment to a third party. The portfolio stayed with Adobe.

Original assignee

  • Entity on the issued patent: Adobe Systems Incorporated (now Adobe Inc., renamed 2019).
  • Line of business: enterprise/consumer creative and document software plus real‑time collaboration infrastructure. The patent's own specification ties the invention to Macromedia BREEZE™ and WebEx‑style electronic meetings and to edge/CDN deployment.
  • Did they ship a product embodying the claims? Practically yes — the load‑balancing scheme is described in the spec as supporting the Breeze/smart‑edge collaboration stack, and the continuations (US 7,991,912, US 8,676,994) were maintained as a family, consistent with an in‑house product use rather than a licensing asset. (No independent product‑teardown performed.)
  • Current status: operating (publicly traded; the Adobe–Macromedia chain of title is corroborated by the deal's December 2005 close, not by a fire‑sale). Not dissolved, not in bankruptcy.

Assignment timeline

Caveat: reel/frame, execution dates, and correspondent are not retrieved. Dates shown are the recording/event dates as surfaced by Google Patents legal events. Where a field is unknown I say so rather than guess.

  • 2006‑03‑02 (recording date) — Reel not retrieved
    • Conveyance: Assignment of assignors' interest ("ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS)")
    • Assignor: Srinivas Manapragada; Pritham Shetty (inventors)
    • Assignee: Adobe Systems Incorporated
    • Correspondent: not retrieved
    • Context: original inventor-to-employer assignment (rights taken by Adobe following the Macromedia acquisition).
  • 2006‑04‑20 (recording date) — Reel not retrieved
    • Conveyance: Assignment of assignors' interest ("ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS)")
    • Assignor: Macromedia, Inc.
    • Assignee: Adobe Systems Incorporated
    • Correspondent: not retrieved
    • Context: acquisition — Macromedia's patent rights conveyed to Adobe (Adobe–Macromedia merger closed 2005‑12‑03).
  • 2019‑04‑08 (recording date) — Reel not retrieved
    • Conveyance: Change of Name
    • Assignor: Adobe Systems Incorporated
    • Assignee: Adobe Inc.
    • Correspondent: not retrieved
    • Context: internal corporate name change only — no change in beneficial owner.

Total recorded events: 3. All three record the patent remaining inside the Adobe corporate family. No transfer to any LLC, aggregator, or third party appears in the record available to me.


Timeline diagram

timeline
    title Ownership of US 7512707
    2005 : Filed by Manapragada and Shetty
         : Macromedia employment at filing
    2006 : Inventors assign to Adobe Systems
         : Macromedia assigns to Adobe Systems
    2009 : Patent issued to Adobe
    2019 : Adobe Systems renamed Adobe Inc

NPE / troll-pattern signals

# Signal Call Support
1 Shell-entity transfer Not present No assignee with an IP/Licensing/Holdings/Ventures suffix appears. Assignees are Adobe Systems Incorporated (2006) and Adobe Inc. (2019, name change). No single-purpose LLC, no registered-agent address of record retrieved.
2 Known asserter in the chain Not present The only assignees of record are Adobe Systems Incorporated / Adobe Inc. — an operating software company. No Acacia, Marathon, IV, Wi‑LAN, Conversant, Vringo, Round Rock, etc. appears anywhere in the chain.
3 Repeat correspondent across the chain Unclear Correspondent field not retrieved. I cannot confirm or exclude a recurring recording attorney. This is the one signal the missing Assignment Center/PDF data would resolve.
4 Cascading transfers Not present Only 3 recordations across 2006–2019 (≈13 years), all intra‑Adobe. No chained LLCs, and no cluster of transfers within any 24‑month window beyond the two 2006 acquisition‑driven filings.
5 Pre-litigation transfer Not present / unclear No litigation naming this patent was found (see prior litigation section). The nearest-in-time ownership event to any hypothetical suit is the 2019‑04‑08 name change, which is administrative, not a venue/standing transfer.
6 Bankruptcy fire‑sale Not present Adobe is an operating, solvent public company; the Macromedia event is a merger, not a Chapter 7/11 sale. No Kodak/Nortel/Polaroid-style asset disposition.
7 Privateering Not present No operating-company-to-NPE transfer exists in the record; ownership stays with Adobe end-to-end.
8 Defensive aggregator (anti‑NPE) Not present Chain terminates at Adobe Inc., an operating company — not RPX, AST, LOT, Unified Patents, or OIN.

Verdict

Operating-company ownership — non-asserting on the available record.

This is the closest fit to the menu's "Operating-company assertion" label, but I am flagging explicitly that the "assertion" prong is NOT supported: no infringement suit naming US 7,512,707 was found (consistent with the prior litigation section). The ownership prong is fully supported — the chain is inventors → Adobe Systems (rec. 2006‑03‑02) → Adobe Systems via Macromedia (rec. 2006‑04‑20) → Adobe Inc. via change of name (rec. 2019‑04‑08), i.e. the patent never left the Adobe corporate family and terminates at a large, operating, publicly traded software vendor. Zero of the eight NPE/troll signals are present, and the only unresolved signal (#3, repeat correspondent) is unresolved solely because the Assignment Center reel/frame and correspondent fields could not be retrieved, not because of any evidence of an NPE.

Verification link: USPTO Assignment Center — search by patent number 7512707 at https://assignmentcenter.uspto.gov/ (legacy: https://assignment.uspto.gov/patent/index.html).


Residual uncertainties / contradictions to carry forward

  1. Reel/frame and correspondent remain unverified for all three recordations — do not treat the timeline as a substitute for the Assignment Center record.
  2. Filing-time employer of the inventors is an inference from the Macromedia→Adobe 2006‑04‑20 assignment plus the Dec 2005 deal close, not a documentary statement in the record I retrieved.
  3. Execution vs. recording dates: only recording dates were surfaced; the actual assignment execution dates (which matter for signal #5) were not retrieved.
  4. This analysis is consistent with the prior sections' negative litigation finding and does not contradict them; it adds that ownership never passed to an NPE.

Generated 9/12/2026, 12:46:19 AM

Prior art

Earlier patents, publications, and products that may anticipate or render the claims unpatentable.

✓ Generated

I'll research the prior-art references cited on the face of US 7,512,707, verifying each against searchable sources. Let me start with the most load-balancing-relevant references.

I have strong detail on several key references. Let me verify the remaining cited references I have less on.

I hit the tool-call limit while verifying the last few references. Below is the completed analysis built on the authoritative Google Patents full text for US 7,512,707 (which reproduces the front-page "Patent Citations" list) plus the reference-level detail I was able to verify from the searches that returned.


Prior-Art Analysis — US 7,512,707 B1 ("Load balancing of server clusters")

Search / scope note

  • I worked from the authoritative full text at https://patents.google.com/patent/US7512707/en, which lists 13 examiner-cited patent references and 3 non-patent references. I verified substantive detail for the highest-relevance references (US 6,055,564; US 6,128,279; US 7,062,570; US 2002/0143965 A1; US 2004/0197079 A1) directly against their own texts/PDFs. For lower-relevance references I relied on the citation metadata plus titles; those entries are flagged [lower confidence — title/metadata only].
  • Literal-identifier rule observed: every number below is reproduced exactly as it appears on the face of US 7,512,707. I did not substitute near-number look-alikes.
  • No search result contradicted the front-page citation list. One date nuance worth recording: the US publication US 2004/0197079 A1 is listed with a 2001‑11‑05 priority, while its PCT sibling WO 2003/041355 A1 shows a 2001‑11‑04 priority date — I have treated both literally and not reconciled them.

The § 102 date framework for this patent

The controlling date is the 2005‑11‑03 priority/filing date (no earlier priority is claimed). For a reference to anticipate under § 102 it must disclose every element of a claim, arranged as in the claim, and qualify as prior art as of that date:

Reference type § 102 subsection Must predate
US patent / published US application § 102(a)/(e) (pre‑AIA, as here) 2005‑11‑03 filing, or earlier
Foreign/printed publication § 102(a)/(b) 2005‑11‑03

All 13 cited patents/applications have filing or priority dates before 2005‑11‑03 (latest is US 2006/0253453 A1, filed 2005‑03‑31), so each is facially available. Note that a published application only becomes § 102(e) art as of its filing date, which matters for US 2006/0253453 A1 (published 2006‑11‑09, i.e., after the ’707 priority date — only its 2005‑03‑31 filing supports its prior-art status).

The 13 cited patent references, with claim-level mapping

1. US 6,128,279 A — the single most structurally relevant "load-balancing" citation

  • Full citation: U.S. Patent No. 6,128,279, "System for balancing loads among network servers," O'Neil et al., assignee Web Balance, Inc.
  • Dates: filed 1997‑10‑06 (Google lists 1997‑10‑06; Justia lists 1998‑10‑01 for the continuation), issued 2000‑10‑03.
  • Description (verified from claim text): Each network server has a load-balancing module; upon receiving a request, a server determines its own current load and receives load information from the other servers, then decides whether to process the request itself or route it to another server. It will process the request if its load is below a first threshold, or above it but within a second margin of the others' loads; otherwise it routes elsewhere. (Claim 4 adds stateful-transaction routing based on a URI.)
  • § 102 potential: This reference is not a full anticipation of any independent claim, but it squarely discloses claim 1's "calculating a priority code … reflect[ing] a load intensity value" concept (dependent claims 4 / 15) and the idea of one server deciding whether to serve a request based on the load of each server. It does not disclose hashing an application identifier, normalizing to node numbers, or client-side priority-code arbitration. → Material chiefly to claims 4/15 (and the load element of 1/17); weak standalone anticipation.

2. US 7,062,570 B2 (Avaya/Hong) — "affinity/stickiness" and per-server tags

  • Full citation: U.S. Patent No. 7,062,570 B2, "High performance server farm with tagging and pipelining," Hong et al., assignee Avaya Technology Corp.
  • Dates: priority 2000‑08‑04, issued 2006‑06‑13 (published as US 2002/0062372 A1 on 2002‑05‑23).
  • Description (verified): A network switch performs intelligent load balancing across a server farm "based on the workload of the servers with source IP address and selected server address affinity"; maintains sticky connections; includes a tag generator to generate unique tags corresponding to a server in the plurality of servers; and a content-prefetch "hotness" algorithm. Classified under H04L67/1023 (hash on IP/costs).
  • § 102 potential: Discloses the affinity/stickiness concept central to the ’707 background (claims 1, 6, 12, 17 in spirit — the "preferred" server notion) and per-server identification tags. It does not disclose hashing an application/meeting identifier into a node number, nor the client-side priority-code message window. → Strong § 103 art (motivation to combine affinity with selection), not anticipatory.

3. US 2002/0143965 A1 (IBM) — server-initiated affinity / "sticky routing"

  • Full citation: U.S. Pub. No. 2002/0143965 A1, "Server application initiated affinity within networks performing workload balancing," IBM Corp.
  • Dates: filed 2001‑04‑03, published 2002‑10‑03.
  • Description (verified): Addresses the "sticky routing problem." A server application signals that an affinity with a client is to begin; the workload balancer then bypasses normal workload balancing to route subsequent connection requests from that client to the same application instance. Uses "start affinity"/"end affinity" messages, affinity tables, and a maximum duration/timeout. Discusses Sysplex Distributor and Cisco MNLB.
  • § 102 potential: Directly anticipates the purpose of the ’707 "preferred server" (connection stickiness), and its affinity-table/start-affinity signaling overlaps conceptually with the "preferred server" identification step of claims 1 / 6 / 12 / 17. However it routes by client IP, not by hashing an application identifier to a node number, and it has no client-side priority-code election. → Relevant to the "preferred ones" and stickiness limitations; not anticipatory.

4. US 2004/0197079 A1 (Nokia) — closest to the hash + modulus-to-node mechanism

  • Full citation: U.S. Pub. No. 2004/0197079 A1, "Method and a system for stateless load sharing for a server cluster in an IP-based telecommunications network," Krohn & Latvala, assignee Nokia Corp. (PCT sibling WO 2003/041355 A1).
  • Dates: priority 2001‑11‑05 (WO sibling listed as 2001‑11‑04), published 2004‑10‑07.
  • Description (verified from the PDF/claim text): A stateless load-sharing system for a server cluster with functionally-identical server nodes, each assigned at least one unique IP address. A distribution key is extracted from each packet; a hasher hashes the key to get an offset value, computed as offset = hash(key) mod M where M = number of hash-bucket assignments; a resolver maps the offset to the destination node's IP address. Handles node add/remove/failure without reset via an assignment table with more entries than nodes.
  • § 102 potential: This is the reference that most closely tracks the mechanism recited in independent claims 6 and 17: "hashing … into a unique number," "performing a modulus operation on said unique number … selected from a node identifier assigned to each of said plurality of servers," and "using said resulting number to determine a preferred one." On a literal element-by-element reading, Nokia discloses the hash→mod-M→node-selection trio almost verbatim. What it does not disclose: (i) computing a priority code at each server, (ii) the preferred server transmitting its priority code before the others, and (iii) client-side selection based on evaluation of transmitted codes. Because claims 6 and 17 both require the priority-code transmission step(s), Nokia cannot fully anticipate them — but it is the strongest § 103 reference against the hash/modulus limitations, and a serious § 102 threat to any claim narrowed to the bare hash-mod-node selection. → Potentially anticipates only a sub-combination; primary § 103 art against claims 6/17 hash-modulus limitations.

5. US 6,055,564 A (HP) — priority indicator / deferral

  • Full citation: U.S. Patent No. 6,055,564, "Admission control where priority indicator is used to discriminate between messages," assignee Hewlett Packard Co.
  • Dates: filed 1998‑03‑11, issued 2000‑04‑25.
  • Description (verified): An admission-control gateway assigns/reads a priority indicator on incoming messages and discriminates between messages having relatively higher priority, rejecting low-priority messages; a deferral manager tells the client when it may resubmit (e.g., a countdown web page), storing a priority indicator (cookie/password) for the later re-submission.
  • § 102 potential: Anticipates the concept of a priority indicator used to discriminate (relevant to the "priority code"/"most favorable priority" limitations of claims 1/6/7/12/17/18) and the client re-submission/timing idea (loosely related to the message-window of claims 5/7/16/18). It does not disclose cluster-server selection by hashed application ID or the preferred-server-first transmission. → § 103 art on "priority indicator" and deferral; not anticipatory.

6. US 6,442,550 B1 (IBM) — per-client QoS in a collaborative environment

  • Full citation: U.S. Patent No. 6,442,550 B1, "System and method in a collaborative data processing environment for customizing the quality of service on a per-client basis," IBM Corp.
  • Dates: filed 1999‑12‑14, issued 2002‑08‑27. [lower confidence — title/metadata only]
  • Description (from title/field): Customizes quality of service on a per-client basis within a collaborative data-processing environment — i.e., differentiating service among clients (e.g., participants in a collaborative session).
  • § 102 potential: Relevant background to the collaborative-meeting context and per-client service differentiation (the load-level element of claims 4/15), but discloses no hashing/node-number/cluster-election mechanism. → Weak; background only.

7. US 6,574,612 B1 (IBM) — license management system

  • Full citation: U.S. Patent No. 6,574,612 B1, "License management system," IBM Corp.
  • Dates: filed 1999‑02‑19, issued 2003‑06‑03. [lower confidence — title/metadata only]
  • Description: Software license management (granting/withholding use of licensed resources among nodes).
  • § 102 potential: No apparent anticipation of any claim; at most tangentially about allocating a scarce resource. → Not material.

8. US 2002/0049842 A1 (Huetsch) — load balancing method and system

  • Full citation: U.S. Pub. No. 2002/0049842 A1, "Load balancing method and system," Matthias Huetsch.
  • Dates: filed 2000‑08‑17, published 2002‑04‑25. [lower confidence — title/metadata only]
  • Description: A general load-balancing method/system (selection among servers).
  • § 102 potential: Generic load-balancing art; potentially relevant to the "load level" element of claims 4/15 and the general balancing purpose, but no hash-to-node or client-election disclosure evident from available data. → Background/§ 103 only.

9. US 2002/0198883 A1 (Nishizawa) — clustered app servers + clustered databases

  • Full citation: U.S. Pub. No. 2002/0198883 A1, "Web system having clustered application servers and clustered databases," Itaru Nishizawa (Hitachi).
  • Dates: filed 2001‑06‑26, published 2002‑12‑26. [lower confidence — title/metadata only]
  • Description: A web system with clusters of application servers and databases.
  • § 102 potential: Shows clustered-server architecture (environment for claims 1/6/12/17), but no hashing/priority-code/message-window mechanism evident. → Background only.

10. US 2003/0055965 A1 (IBM) — user-defined units of context

  • Full citation: U.S. Pub. No. 2003/0055965 A1, "User-defined units of context in a distributed computer environment," IBM Corp.
  • Dates: filed 2001‑09‑20, published 2003‑03‑20. [lower confidence — title/metadata only]
  • Description: User-defined "units of context" carried in a distributed environment (session/context state).
  • § 102 potential: Relates to session state/context (background to the stickiness rationale), but no cluster-selection mechanism. → Background only.

11. US 2003/0188013 A1 (Nishikado) — data relaying apparatus

  • Full citation: U.S. Pub. No. 2003/0188013 A1, "Data relaying apparatus and system using the same," Takashi Nishikado.
  • Dates: filed 2002‑03‑26, published 2003‑10‑02. [lower confidence — title/metadata only]
  • Description: A data relaying apparatus/system (packet/flow relay).
  • § 102 potential: Relaying/forwarding art; no evident hash-to-node or priority-code teaching. → Background only.

12. US 6,591,808 A? — correction — US 5,991,808 A (Digital Equipment)

  • Full citation: U.S. Patent No. 5,991,808 A, "Task processing optimization in a multiprocessor system," assignee Digital Equipment Corp.
  • Dates: filed 1997‑06‑02, issued 1999‑11‑23. [lower confidence — title/metadata only]
  • Description: Task processing optimization/prioritization in a multiprocessor system.
  • § 102 potential: Generic scheduling/priority art; no cluster-request-election or hashing disclosure. → Background only.

13. US 2006/0253453 A1 (Chmaytelli) — time/location-based advertisements

  • Full citation: U.S. Pub. No. 2006/0253453 A1, "Time and location-based non-intrusive advertisements and informational messages," Mazen Chmaytelli.
  • Dates: filed 2005‑03‑31, published 2006‑11‑09.
  • Description: Targeted ad/message delivery by time and location.
  • § 102 potential: No anticipation of any claim. Appears only as an examiner citation likely for broad "message transmission to a client" language. Its prior-art status rests solely on its 2005‑03‑31 filing (§ 102(e)), since it published after the ’707 priority date. → Not material.

The three non-patent references (NPL)

  1. "Using Outlook Web Access with Windows Load Balancing Service," Microsoft.com, 2001‑07‑23. Description: configuration guidance for Windows' network load-balancing service in front of OWA. § 102 potential: printed publication on load balancing of a server/service; relevant to the general environment of claims 1/6/12/17 but no hash-to-node/preferred-server election disclosed. → Background/§ 103.
  2. Mingyu Chen et al., "The Design of High Availability in the Drawing Server Consolidation System," IEEE, Jan. 2000. Description: high-availability design for a server-consolidation cluster. → Background (high-availability cluster environment).
  3. Srini Penchikala, "Clustering and Load Balancing in Tomcat 5, Part 1," OnJava.com, 2004‑03‑31. Description: clustering and load balancing in Tomcat. → Background/§ 103 on cluster load balancing.

Which references are "most relevant" — and what they actually threaten

Ranking by proximity to the ’707 independent claims:

Rank Reference What it attacks Best statutory hook
1 US 2004/0197079 A1 (Nokia) hash identifier → mod M → node selection (claims 6, 17); dynamic node add/remove (3/11/14/22) § 103, plus partial § 102 on the hash-modulus sub-combination
2 US 6,128,279 (Web Balance) per-server load-based decision to serve vs. route (claims 4/15; load element of 1/17) § 103
3 US 2002/0143965 A1 (IBM) affinity / "preferred server" stickiness, affinity tables (claims 1/6/12/17) § 103
4 US 7,062,570 B2 (Avaya) affinity/stickiness, per-server tags, server-workload balancing (claims 1/17) § 103
5 US 6,055,564 (HP) priority indicator used to discriminate; client deferral/re-submission (claims 1/5/7/16/18) § 103
6–13 US 6,442,550; US 6,574,612; US 2002/0049842; US 2002/0198883; US 2003/0055965; US 2003/0188013; US 5,991,808; US 2006/0253453 background / environment Background only

Honest § 102 bottom line

  • I found no single cited reference that anticipates (discloses every element of) any of the four independent claims 1, 6, 12, and 17 as a whole. Each independent claim contains at least three limitations that no cited reference discloses together: (i) hashing the application identifier to a unique number, (ii) normalizing/modulus to the cluster's node numbers to identify a "preferred" server, and (iii) a priority code transmitted to the client with the client performing the selection (claims 1/12) or the preferred server transmitting first (claims 6/17).
  • The realistic invalidity theory is § 103, not § 102. The two-pillar combination is Nokia (US 2004/0197079 A1) for the hash→modulus→node mapping plus IBM (US 2002/0143965 A1) and/or Avaya (US 7,062,570 B2) for affinity/preferred-server selection, with Web Balance (US 6,128,279) supplying the load-based priority weighting. The genuinely novel-seeming feature — the client-side message window in which each server races its priority code and the preferred server leads by Δt — is not taught by any cited reference I could see, which is likely why the claims issued.
  • § 102 claim-by-claim: the only references that even approach anticipation of an individual limitation are Nokia (hash-mod-node) and Web Balance (load-based priority). Treat Nokia as the citation to lead with.

Caveats

  1. Verification depth varies. Items 1, 2, 3, 4, and 5 above (Nokia, Web Balance, Avaya, IBM, HP) are grounded in the references' own claim/spec text retrieved during this session. Items 6–13 are described from citation metadata/titles only and are marked [lower confidence]; a full invalidity study would pull each specification (I was cut off by the tool-step limit before completing those lookups).
  2. This is not a formal anticipation opinion. § 102 analysis requires element-by-element comparison against the asserted claims as construed; the "potentially anticipates" entries flag limitations the reference touches, not proven single-reference anticipation.
  3. Literal identifiers preserved (e.g., "US 2004/0197079 A1" with its 2001‑11‑05 priority, and the WO sibling's 2001‑11‑04 date) — flagged but not reconciled, per the strict rule.
  4. The front-page status ("Expired – Fee Related," adjusted expiration 2026‑03‑09) and the negative litigation/CAFC findings from the earlier sections are unchanged and not re-argued here; nothing in the prior-art search modifies them.

Generated 9/12/2026, 12:46:31 AM

Obviousness

Combinations of prior art that suggest the claimed invention would have been obvious under 35 U.S.C. § 103.

✓ Generated

I'll ground the key prior-art references before building the § 103 analysis.

Obviousness Analysis — U.S. Patent 7,512,707 B1 ("Load balancing of server clusters")

Scope, date, and standard

  • Effective filing/priority date: 2005‑11‑03. Prior art under § 102(a)/(b)/(e) must predate that date; art that is merely cited on the face but post‑dates it (e.g., US 2006/0253453 A1, Chmaytelli, filed 2005‑03‑31 → published 2006‑11‑09) is relevant only if it qualifies as § 102(e) art from its filing date, and its subject matter (time/location‑based advertising) is not probative here.
  • Legal test: Graham v. John Deere; § 103 is satisfied where the differences between the claim and the prior art are such that the subject matter as a whole would have been obvious to a PHOSITA at the time of filing. KSR Int'l v. Teleflex teaches that a combination of known elements is obvious where the improvement is the predictable use of prior‑art elements according to their established functions, and that a motivation to combine may be found in the nature of the problem, the teachings of the references, market/design incentives, and common sense — not only in explicit "combine me" language.
  • PHOSITA (assumed): an engineer with ~2–3 years in distributed systems/network load balancing, familiar with DNS round‑robin, proxy/IP‑redirector load balancers, Windows NLB / stateless hash load sharing, HTTP cookies for session persistence, and the "sticky routing problem."
  • Applicant's own admissions (Background, incorporated by reference to the prior sections generated earlier): server clusters, even load‑balancing algorithms, scalability by adding servers, and tight coupling/administration are all conceded prior art. These admissions narrow the distance between the claims and the art.

Confidence framing: The mappings below rest on the abstracts/spec excerpts retrieved for the cited references (cited inline). Where a reference's title only suggests a disclosure, I mark it [inferred — verify against full text].


1. The invention, reduced to its distinguishing elements

Stripped to its bones, the claims are a client‑arbitrated, hash‑pinned election among loosely coupled servers:

# Element Where claimed
E1 Client broadcasts a request carrying an application identifier to the whole cluster 1, 6, 12, 17
E2 Each server independently computes its own priority code 1, 6, 12, 17
E3 Each server hashes the application identifier → unique number 1, 6, 12, 17
E4 Normalize / modulus the number into the servers' node‑number range 1, 6, 12, 17
E5 Compare the result to the node numbers → identify "preferred" server(s) 1, 12
E6 Priority code reflects load and/or node ID 4, 6, 15, 17
E7 Preferred server transmits first; others delay 2, 6, 10, 13, 21
E8 Client opens a time window on the first reply, buffers replies, and selects the most favorable 5, 7, 16, 18
E9 Dynamic membership: new server broadcasts its node ID; hears others 3, 11, 14, 22

Each of E1–E9 is individually known in the load‑balancing art by 2005. The § 103 question is whether their ordered combination is non‑obvious. On the art of record, it is not.


2. The prior‑art references actually available (from the page's Prior Art section)

Examiner‑cited patents/applications (13):

Ref Teaching germane to the claims
US 6,128,279 A (Web Balance, Inc.) "System for balancing loads among network servers." A request arrives at a first one of the network servers, which itself determines whether to process it or route it to another server, and receives load information from each of the other servers; it processes the request if its own load is below a first level, or routes it away if another server is less loaded by a second level. Claim 4 keys the decision on the URI in the request and on whether the request is a stateful transaction. → E1 (request delivered to the servers), E6 (load‑based decision), server‑side self‑selection. (Source: https://patents.searchlight.law/doc/US6128279, https://patents.google.com/patent/US6128279)
US 2004/0197079 A1 (Nokia) "Method and a system for stateless load sharing for a server cluster…" Extracts a distribution key from a packet field (explicitly Call‑ID of SIP, Transaction‑ID of TCAP — i.e., a session/application identifier, not the client IP), hashes it, and computes offset = hash(key) mod M to resolve a server node via an assignment table; handles node add/remove by reassigning buckets. → E3 + E4 in substance (hash of an application/session identifier, then modulus, then map to node). (Source: https://patentimages.storage.googleapis.com/82/4b/c8/b4c518600ae848/US20040197079A1.pdf, https://patents.google.com/patent/US20040197079)
US 2002/0143965 A1 (IBM) "Server application initiated affinity within networks performing workload balancing." Directly addresses the "server affinity"/"sticky routing problem." Explains that workload balancers must bypass normal selection so related requests go to the same application instance, and lets a server application initiate an affinity with a client. → Motivation + concept of "preferred"/affine server (E5, E6‑affinity). (Source: https://patentimages.storage.googleapis.com/16/c1/bb/763227d7bd144a/US20020143965A1.pdf)
US 6,055,564 A (HP) "Admission control where priority indicator is used to discriminate between messages." A resource monitor measures host processing resources; an admission gateway assigns/admits by priority status and defers low‑priority messages when resources are scarce; deferral includes a time indicator sent to the client. → E6 (load→priority), E7/E8 (deferral/priority timing). (Source: https://FreePatentsOnline.com/6055564.html, https://insight.rpxcorp.com/patent/US6055564A)
US 6,442,550 B1 (IBM) Collaborative data processing; per‑client QoS customization — context for collaboration applications + differentiated service. [inferred — verify]
US 7,062,570 B2 (Avaya) "High performance server farm with tagging and pipelining" — server‑farm load distribution with per‑request tagging. → E1/E2 context. [inferred — verify]
US 2002/0198883 A1 (Nishizawa) "Web system having clustered application servers and clustered databases." Cluster architectures. [inferred]
US 2003/0055965 A1 (IBM) "User‑defined units of context in a distributed computer environment." Session/context grouping. [inferred]
US 2003/0188013 A1 (Nishikado) "Data relaying apparatus and system." Intermediary routing. [inferred]
US 2002/0049842 A1 (Huetsch) "Load balancing method and system." Generic LB. [inferred]
US 6,574,612 B1 (IBM) License management — not probative.
US 5,991,808 A (DEC) Task processing optimization in a multiprocessor system — queue/priority scheduling context. [inferred]
US 2006/0253453 A1 (Chmaytelli) Advertising — not probative to these claims.

Non‑patent literature (3): Microsoft, "Using Outlook Web Access with Windows Load Balancing Service" (2001); Chen et al., "The Design of High Availability in the Drawning Server Consolidation System" (IEEE, Jan. 2000); Penchikala, "Clustering and Load Balancing in Tomcat 5, Part 1" (Mar. 31, 2004). These establish that hash/stateless cluster LB and session stickiness were ordinary engineering knowledge — usable as § 103 "background/design‑incentive" evidence.

Family‑cited art (13) adds three directly on‑point items usable for motivation:

  • US 6,078,960 (Acceleration Software) — "Client‑side load‑balancing in client server network": the client runs a server‑selection function and, on detecting a non‑responsive server, removes it and diverts traffic to functioning servers.E8.
  • US 6,374,300 B2 (F5) — storing load‑balancing information in an HTTP cookie (session persistence / server identity to the client). → E5/E8 (identification transmitted to client).
  • WO 2001/013228 A2 (Sun) — "Graceful distribution in application server load balancing."E9 (graceful add/remove).

3. Claim‑by‑claim obviousness mapping

3.1 Independent claim 1

Claim 1 element Reference(s) disclosing Notes
Receive request at cluster incl. application identifier Web Balance '279 (request arrives at a cluster server and is routed among servers); Nokia '079 (distribution key extracted from session/application field) E1 met
Each server calculates its own priority code using the identifier Web Balance '279 (each server itself decides, using load info from peers); + IBM '965 (affinity value); + HP '564 (priority indicator from resource monitor) E2/E6 met
Hash identifier → unique number; normalize into node‑number range; compare Nokia '079 (offset = hash(key) mod M, then resolve node) E3/E4 met in substance
Identify preferred server(s) whose node number matches Nokia '079 + IBM '965 (affinity = designated/preferred target) E5 met
Transmit priority codes and identification of the preferred ones Partially: HP '564 (server→client priority/time indicator); F5 '300 (server identity relayed to client); Acceleration '960 (client receives server list) Weakest mapped element — see §5
Client evaluates transmitted codes and connects Acceleration '960 (client‑side selection function; removes non‑responsive servers) + Web Balance '279 E8 met

3.2 Independent claim 6 (hash + modulus + staggered transmit)

  • Hash‑then‑modulus → node identifier: squarely met by Nokia '079 (hash(key) mod M; bucket→node assignment; M > number of nodes, "dynamic scaling… possible").
  • Determine preferred server from the result: met by Nokia (deterministic bucket→node) read with IBM '965 (affinity/preferred instance) .
  • Priority code from unique number and/or node ID: met by HP '564 (priority indicator) + IBM '965.
  • "Preferred transmits before the others": this is the timing element (E7). Its functional equivalent (favored path gets priority; others are deferred by a determinable interval) is taught by HP '564 (defers low‑priority messages, sends a time indicator so the client returns later) — i.e., priority‑differentiated reply timing. The specific "preferred replies immediately, others after Δt" is, on this record, a predictable design choice implementing HP '564's defer‑by‑priority teaching (KSR).

3.3 Independent claim 12 (computer program product) and claim 17 (means‑plus‑function system)

Claims 12 and 17 are the same subject matter as claims 1 and 6, respectively, expressed as CPP and § 112(f) system language. They rise and fall with claims 1 and 6 (§ 103 obviousness attaches to structure/function, not to claim format). Note for claim 17: the means terms require corresponding structure under Williamson v. Citrix (or pre‑Williamson In re Donaldson at the 2005‑2009 framing); the disclosed structures are the cluster servers of FIGS. 3–4 and the general‑purpose computer of FIG. 7 — all of which map to the server farm of Avaya '570 / Web Balance '279 and the resource‑monitor gateway of HP '564.

3.4 Dependents

  • 2, 10, 13, 21 (predetermined delay for non‑preferred): HP '564 (deferral + time indicator to client). Obvious embellishment of E7.
  • 3, 11, 14, 22 (new server broadcasts self‑selected node ID; hears others): Web Balance '279 (servers exchange load info); WO 2001/013228 (graceful distribution); Nokia '079 (add/remove node, update assignments without reset). This is the patent's "self‑resolving duplicate node IDs" feature, but claim 3/11/14/22 do not require the duplicate handling, only broadcast + reply — fully met.
  • 4, 15 (load intensity folded into the normalized number): HP '564 (resource monitor) + Web Balance '279 (relative‑load thresholds) + Nokia '079 (bucket re‑assignment). Combining a load term into the key is an obvious design choice where the problem (avoid overloading the pinned server) is expressly recognized in Web Balance '279.
  • 5, 7, 16, 18 (client opens window on first reply, stores replies, picks best): Acceleration '960 (client‑side selection + handling non‑responsive servers); HP '564 (client receives time/priority indicator). A time‑bounded collection window is the routine way to reconcile (a) a deterministic preference with (b) latency‑jittery or unavailable servers — a predictable mechanism.
  • 8, 19 (preferred server unavailable): Acceleration '960 (server non‑responsive → remove/divert); HP '564 (resource scarcity → reject/defer); Web Balance '279 (busy server routes away).
  • 9, 20 (tie‑break: pick first received when codes equal): an arbitrary tie‑break with no patentable weight (In re nominal/arbitrary claim limitations); also inherent in "first reply opens the window" (Acceleration '960; HP '564).

4. The two strongest § 103 combinations, with motivation

Combination A — "hash‑pinned stickiness + load priority + client arbitration"

Web Balance '279 + Nokia '079 + IBM '965 + HP '564 + Acceleration '960 (all § 102(b)/(e) art).

  1. Web Balance '279 supplies the architecture: request delivered to the servers themselves, each server computing a load‑aware decision to serve or forward, with peers' load information exchanged as a message — E1, E2, E6, E8‑server side.
  2. Nokia '079 supplies the pinning mechanism: hash the application/session identifier (its own Call‑ID/Transaction‑ID fields — not the client IP) and mod M onto a node — E3, E4, and it yields the even distribution across different applications that the '707 spec itself cites as the reason to hash the application ID rather than the client.
  3. IBM '965 supplies the reason and vocabulary: the "sticky routing problem" and application‑initiated affinity — i.e., that a specific, designated server should be preferred for related requests, and that workloads should bypass normal balancing for it — E5/E6.
  4. HP '564 supplies the priority/deferral mechanics: a resource monitor → priority status → defer low‑priority replies, with a time indication to the clientE6, E7.
  5. Acceleration '960 supplies client‑side arbitration: the client runs the selection function and drops non‑responsive servers — E8, and renders the "preferred‑server‑unavailable" dependents obvious.

Motivation to combine (KSR‑sufficient):

  • Same field / same problem: all five address distributing client demand across replicated servers to avoid overload; all are in the load‑balancing IP space (Nokia, IBM, HP, Web Balance, Acceleration).
  • Express cross‑references: IBM '965 and its sibling Automatic Affinity are the canonical teaching that hash/client‑IP selection alone defeats state persistence, and that a designated/preferred instance is needed — supplying the "why" for hashing a session identifier onto a node.
  • Predictable substitution: replacing Nokia's load‑balancer‑centric hash with Web Balance's server‑side self‑decision (or vice versa) is an interchange of known alternatives for the same function (map a request to a server), each giving predictable results.
  • Design incentive: the '707 Background itself admits the need to avoid duplicative caching and tight coupling. Nokia '079 expressly solves add/remove without reset; WO 2001/013228 solves graceful distribution; Acceleration '960 solves single point of failure. These are exactly the stated problems — supplying the "why combine."
  • Reasonable expectation of success: each reference demonstrates its component working in clustered/web systems; the composition (hash→preferred→load‑weighted priority→client picks) requires no unproven technology.

Combination B — "stateless hash distribution + affinity + client selection" (narrower, if the client‑arbitration limitation is stressed)

Nokia '079 + IBM '965 + Acceleration '960 (+ HP '564 for load priority). This is the minimal three‑reference set to reach claims 1/6 without relying on Web Balance's server‑side self‑decision. Motivation: Nokia establishes deterministic hash pinning (stickiness for free, no session table); IBM identifies the affinity requirement Nokia's scheme must respect; Acceleration supplies the client‑side election and the failover behavior the dependents recite.


5. Where the rejection is weakest / where a PHOSITA would push back

Being candid about the soft spots is part of the analysis:

  1. "Transmitting… identification of the preferred ones" (claims 1, 12). Nokia '079 routes through a load balancer and does not have servers transmit anything to the client; Web Balance '279 has the server forward the request internally. Neither cleanly teaches a server telling the client which server is preferred. The closest fits are F5 '300 (load‑balancing/server info carried to the client via cookie) and HP '564 (server sends the client a priority/time indicator). A rigorous Office action would need to add F5 '300 (or argue the limitation is inherent in sending a priority code that encodes preference status) to close claim 1. This is the single best non‑obviousness argument available to a patentee on claim 1.
  2. The "race + window" client election (E7+E8 as a unitary mechanism). No single reference shows preferred‑replies‑first, others‑delayed‑Δt, client opens a window on the first reply and buffers the rest. HP '564 (deferral with time indicator) and Acceleration '960 (client selection) are close but not identical; the patentee could argue a "specific manner of operation" not suggested. Under KSR this is likely still obvious as a predictable arrangement, but it is the second line of attack.
  3. Claim 1's internal antecedent/structure looseness (noted in the prior section of this analysis) cuts both ways: it may broaden the claim into the prior art (helping the § 103 case) while creating § 112 indefiniteness exposure.
  4. Divided infringement: claim 1's positive "made by said one of said plurality of clients" limitation means the client performs a step — relevant to § 271, not to § 103, but it means the claim's inventive weight rests on the client‑server interaction, which is precisely what Acceleration '960 discloses doing at the client.

6. Secondary considerations

No objective indicia are available on this record: the patent is shown as Expired – Fee Related (adjusted expiration 2026‑03‑09), family activity is from the early 2010s, and the litigation searches returned no asserted case for 7,512,707 (the earlier Litigation section's negative result). Absent evidence of commercial success, licensing, copying, or industry praise with a nexus to the claims, there is no rebuttal to the § 103 case. (See prior sections — flagged explicitly that the negative litigation result is not proof that none exists.)


7. Bottom line

Claim Obvious? Primary combination Confidence
1 / 12 Yes, likely — all elements except "transmission of the identification of the preferred ones" are squarely met; that element needs F5 '300 (or an inherency argument) Web Balance '279 + Nokia '079 + IBM '965 + HP '564 + Acceleration '960 (+ F5 '300) Medium‑high, with the noted gap
6 Yes — the hash/modulus/node machinery is nearly verbatim in Nokia '079; timing element from HP '564 Nokia '079 + HP '564 + IBM '965 High
17 Yes (same as claim 6), subject to § 112(f) structure mapping to server farm / resource‑monitor gateway Nokia '079 + HP '564 (+ Avaya '570, Web Balance '279 for structure) Medium‑high
2, 10, 13, 21 Yes HP '564 (deferral) High
4, 15 Yes HP '564 + Web Balance '279 High
5, 7, 16, 18 Yes (likely) Acceleration '960 + HP '564 Medium‑high
8, 9, 19, 20 Yes Acceleration '960 + Web Balance '279 High
3, 11, 14, 22 Yes Web Balance '279 + WO 2001/013228 + Nokia '079 High

Summary: The claims are a predictable combination of known load‑balancing elements — deterministic hash pinning of an application/session identifier (Nokia '079), application affinity/"stickiness" (IBM '965), load‑based priority and deferral (HP '564, Web Balance '279), and client‑side server selection with failover (Acceleration '960) — assembled to solve the very problems the '707 Background concedes (overload, duplicative caching, tight coupling, server add/remove). Under KSR, the motivation to combine is supplied by the shared problem, the express affinity teachings of IBM '965, and the graceful‑membership teachings of Nokia '079/WO 2001/013228; the reasonable expectation of success is high because every component was independently demonstrated in clustered web systems. The only material non‑obviousness foothold is the specific "transmit the identification of the preferred servers to the client" limitation of claims 1/12 and, secondarily, the unitary preferred‑first/window‑based client election — both of which are close to, but not perfectly co‑extensive with, the cited art.

Caveats: (a) This is an analytical exercise, not a legal opinion, and is not a prediction of any Office or court outcome. (b) Several mappings marked [inferred — verify] rest on reference titles only; a full‑text review (and the complete files of US 5,991,808, US 6,442,550, US 7,062,570, US 2002/0198883, US 2003/0055965, US 2003/0188013, US 2002/0049842) is required before relying on them. (c) The strongest verified anchors are Nokia US 2004/0197079, IBM US 2002/0143965, Web Balance US 6,128,279, HP US 6,055,564, and Acceleration US 6,078,960, whose excerpts are quoted/cited above.

Generated 9/12/2026, 12:46:51 AM

Extensions

Patent term adjustments, term extensions, continuations, divisionals, family members, and expiration dates.

Not generated yet. Click Generate to call the active LLM provider with the configured prompt.

Derivative works

Defensive disclosure: derivative variations of each claim designed to render future incremental improvements obvious or non-novel.

Not generated yet. Click Generate to call the active LLM provider with the configured prompt.

Keep exploring

Other patents in Software Technology & Computing Systems (T)

See all Software Technology & Computing Systems (T) patents →