ipfs/specs

gateway: CDN-Loop

lidel opened this issue · 0 comments

lidel commented

Problem

  • ipfs.io backed by saturn looping to itself
  • saturn looping to itself to the same L1 and always failing due to gaulty L1 and the internal ring hashing
  • any two gateway operators multiplexing on top of each other

Solution

Find and document a way for gateway operators and CDNs to avoid loops.

Prior Art

CDN-Loop seems to be the best candidate?

Ref.

Example

Request that was sent to ipfs.io, then hit saturn backend, and then hit one of Saturn L1s would have:

CDN-Loop: saturn-l1-id, saturn.tech; ipfs.io;  

This allows:

  1. ipfs.io to detect and drop requests that loop to itself
  2. saturn to either detect drop requests that loop to itself or route request to a DIFFERENT L1