Home arrow FAQ arrow Firecoral FAQ
Firecoral FAQ

What is Firecoral?

Firecoral is a browser-based peer-to-peer content distribution network that enables mutually distrustful users to share their browser caches, yet ensures the authenticity of content and enables users to preserve privacy by expressing flexible content sharing policies.

Firecoral is implemented as a Firefox extension that interacts with unmodified websites, using a separate tracker for content discovery and a trusted signing service to ensure content integrity.

What is the aim of Firecoral?

Our aim is twofold. On one hand, we have end users for which our focus is to provide an easy to install, transparent experience such that web content can be downloaded from other users in a secure, flexible way. On the other hand, we have content providers for which our focus is not to interfere with advertisements and analytics, and give the option of adopting Firecoral for existing web servers in a backwards compatible way.

Where did the inspiration for FireCoral come from?

The inspiration mainly comes from news aggregation websites, such as Slashdot, that regularly bring down small websites they link to. This is a problem for both the content provider who wants to be available and the end user who wants to see the content. Some inspiration also came out of our frustrations with the limitations of previous work on CoralCDN.

Can't you just use existing P2P networks?

There is a fundamental design mismatch between existing peer-to-peer networks and the web. These existing networks are designed to provide scalability, fairness, and high-performance for downloading large files, while the web is made up of many independent small files. The latency involved with trying to use a file sharing P2P network to download web content is too high. Existing protocols also require software that is not easy to integrate into the web browser.

Is downloading content through Firecoral as fast as regular surfing?

There are four cases to consider here:
  1. If you compare downloading content through Firecoral from a peer on your local network to downloading the content directly from the origin website (also on your local network, for a fair comparison) then Firecoral is slower. There is an extra round-trip time (RTT) to contact the tracker, and the proxy server running in the web browser adds a small amount of latency.
  2. If the origin site is fast (e.g. CNN, Google, etc.) and the peer you're downloading from is slow (e.g. located half way around the world), Firecoral will be significantly slower. This is why we try to avoid this by maintaining a list of known well-provisioned websites that users can subscribe to.
  3. If the origin site is down but the content was previously cached in Firecoral, then Firecoral is inifinitely faster since the content is not available from its original source.
  4. If the origin site is overloaded (Slashdot effect) or located geographically far from you and you download the content from a local peer, Firecoral is faster.

Does Firecoral ensure privacy?

Yes. This is one of our top concerns. We never cache HTTPS traffic or content marked as "private" or "no-cache". We also never cache POST requests.

In addition, content from your browser cache is never shared unless it explicitly matched a Firecoral configuration rule. We use a very flexible configuration system with subscriptions for common websites.