IP Library Granted Patent US 9,755,949
Granted Patent B2
US 9,755,949 · App. 14/860,287 · Granted Sep 5, 2017

Network failover and loop detection in hierarchical networks

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,755,949
App. No.
14/860,287
Granted
Sep 5, 2017
Kind
B2
Abstract

Some embodiments provide loop detection and loop prevention mechanisms for messaging passing in between peers in a multi-tier hierarchy. In some embodiments, the messaging header is modified to track which peers have received a copy of the message. Each peer appends its identifier to the message header before passing the message to another peer. When selecting a receiving peer, the sending peer ensures that the receiving peer is not already identified in the message header. If the receiving peer has already received the message, then another peer from a next-peer list is selected to receive the message. If all peers in the next-peer have been traversed, the sending peer returns an error message via a reverse traversal of the peers in the message header.

Claims (38)

1. A method for loop prevention in a multi-tiered hierarchy, wherein the hierarchy comprises a plurality of tiers with each tier of the plurality of tiers comprising one or more peers, the method comprising:

sending a message from a first peer operating in a first tier of the plurality of tiers to a second peer operating in a second lower tier of the plurality of tiers;

detecting a failure in said sending at the first peer;

failing over from the first peer to a third peer operating in the first tier by sending said message with a first identifier identifying the first peer in the message header from the first peer to the third peer;

sending said message from the third peer to the second peer;

detecting a failure in said sending at the third peer;

selecting at the third peer, a next peer from a list of next peers configured to the third peer;

failing over from the third peer to the next peer operating in the first tier when the next peer is not identified by the first identifier in the message header; and

preventing failover from the third peer to the next peer when the next peer is identified by the first identifier in the message header.

2. The method of claim 1 , wherein failing over from the third peer to the next peer comprises sending said message with the first identifier and a second identifier identifying the third peer in the message header from the third peer to the next peer.

3. The method of claim 2 , wherein said first identifier and said second identifier are entered into one of a via header field or a forwarded header field of said message.

4. The method of claim 1 , wherein preventing failover comprises discarding said next peer and selecting a second next peer from the list of next peers configured to the third peer.

5. The method of claim 4 further comprising sending a response to said message when the list of next peers does not include another next peer.

6. The method of claim 5 further comprising failing over from the third peer to the second next peer when the second next peer is present in the list of next peers, wherein failing over comprises sending said message with the first identifier and the second identifier in the message header from the third peer to the second next peer.

7. The method of claim 1 further comprising receiving the message at the first peer from a user and determining that content requested in said message is not cached locally at the first peer.

8. The method of claim 1 , wherein the next peer identifies another peer operating in the first tier.

9. The method of claim 1 , wherein each peer at each tier of the plurality of tiers is one of a caching server or a content distribution server.

10. The method of claim 1 further comprising successfully obtaining content requested in said message by the next peer.

11. The method of claim 10 further comprising performing a reverse traversal based on said identifiers in the message header in returning the content to an original requestor.

12. The method of claim 11 , wherein performing the reverse traversal comprises sending said content from the next peer to the third peer as identified by a second identifier appended to said message header and further sending said content from the third peer to the first peer as identified by the first identifier appended to said message header.

13. A method for loop prevention in a multi-tiered hierarchy, wherein the hierarchy comprises a plurality of tiers with each tier of the plurality of tiers comprising one or more peers, the method comprising:

tracking within a header of a message, a set of identifiers identifying a set of peers operating in a first tier of the plurality of peers having unsuccessfully attempted to access a second-tier peer in a second lower tier of the plurality of peers;

detecting a failure in a path connecting a first peer in the first tier to the second-tier peer;

selecting at the first peer, a next peer in the first tier from a list of next peers configured on the first peer;

detecting a loop when said selecting selects a next peer that is identified in the set of identifiers of the message header; and

finding an alternate path to the second-tier peer by continually selecting different next peers from the list of next peers configured on the first peer until selecting a second peer in the first tier that is not identified in the set of identifiers of the message header.

14. The method of claim 13 , wherein finding the alternate path comprises appending an identifier identifying the first peer to the set of identifiers of the message header before passing the message to the second peer.

15. The method of claim 14 , wherein finding the alternate path further comprises sending the message over a path connecting the second peer to the second-tier peer.

16. The method of claim 15 , wherein finding the alternate path further comprises retrieving content requested by the message over the path connecting the second peer to the second-tier peer and forwarding said content from the second peer to the first peer over a path connecting the second peer to the first peer.

17. The method of claim 13 , wherein finding the alternate path comprises returning a response to said message when the list of configured peers does not include a peer that is not identified in the set of identifiers, wherein the response indicates that the second-tier peer is inaccessible.

18. A method comprising:

receiving at a distributed platform first server, a user request for content provider content;

obtaining at least one distributed platform server identifier from a header of said request when at least one attempt by the first server to retrieve said content is unsuccessful;

selecting a distributed platform second server from a next-tier server list configured on the first server;

forwarding said request to the second server when the second server is not identified by the at least one distributed platform server identifier obtained from the request header;

selecting a different distributed platform third server from the next-tier server list when the second server is identified by the at least one distributed platform server identifier.

19. The method of claim 18 , wherein said forwarding comprises appending an identifier identifying the first server to the at least one distributed platform server identifier in the request header.

20. The method of claim 18 further comprising returning a response to said request when the at least one distributed platform server identifier obtained from the request header comprises a specific number of identifiers.

Assignments (11)
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 065597/0406] Recorded Jul 9, 2025
From: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
To: UPLYNK, INC. (F/K/A EDGIO, INC.)
Reel/Frame 071875/0105 →
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 065597/0212] Recorded Jul 3, 2025
From: LYNROCK LAKE MASTER FUND LP
To: UPLYNK, INC. (F/K/A EDGIO, INC.); MOJO MERGER SUB, LLC
Reel/Frame 071817/0877 →
RELEASE OF PATENT SECURITY AGREEMENT [RECORDED AT REEL/FRAME 068763/0276] Recorded Jul 3, 2025
From: LYNROCK LAKE MASTER FUND LP
To: UPLYNK, INC. (F/K/A EDGIO, INC.); MOJO MERGER SUB, LLC
Reel/Frame 071818/0022 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2025
From: EDGIO, INC.
To: DRNC HOLDINGS, INC.
Reel/Frame 070071/0327 →
PATENT SECURITY AGREEMENT Recorded Aug 23, 2024
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 068763/0276 →
PATENT SECURITY AGREEMENT Recorded Nov 15, 2023
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 065597/0212 →
PATENT SECURITY AGREEMENT Recorded Nov 15, 2023
From: EDGIO, INC.; MOJO MERGER SUB, LLC
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 065597/0406 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2022
From: EDGECAST INC.
To: EDGIO, INC.
Reel/Frame 061738/0972 →
CHANGE OF NAME Recorded Mar 15, 2022
From: VERIZON DIGITAL MEDIA SERVICES INC.
To: EDGECAST INC.
Reel/Frame 059367/0990 →
CHANGE OF NAME Recorded Apr 25, 2016
From: EDGECAST NETWORKS, INC
To: VERIZON DIGITAL MEDIA SERVICES INC.
Reel/Frame 038511/0045 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2015
From: KHAKPOUR, AMIR REZA; PETERS, ROBERT J.; SHIELL, DEREK
To: EDGECAST NETWORKS, INC.
Reel/Frame 036614/0652 →