• Hackathons
  • Features
  • Blog

CarbonBlocker

Like an AdBlocker, CarbonBlocker locks down traffic to specific services like non-critical software updates, messaging etc. when grid intensity is high. It is highly configurable in service selection.

  • 0 Raised
  • 15 Views
  • 0 Juries

Categories

  • This hackathon has categories available. Please select one if necessary.

Gallery

Description

Textual pitch submission on Taikai


The problem your project solves

Currently users behave when using network as if the network was 

a static resource.

Our tool, carbon blocker, shall bring the user some insight and awareness

of network transmissions having different carbon costs attached to them.

This empoweres the users to make informed decisions on if a network transmission

shall now be executed or if it can also wait until a later point in time where

the source or origin location for the transmission is on a greener grid.


The solution you bring to the table

Carbon Blocker is a static hostname based blocking mechanism that first leverages

the Carbon Aware SDK to identify if the user (target) and also the source (Download server) location is currently on green energy.

If so no blocking of network transmissions will be done.

However if the user is on non-green energy (> 50 gCO2/kWh ) then a pre-defined

set of hostnames will be blocked from DNS resolution via injection into the hosts

file and thus the network transmissions blocked.


This mechanism has the advantage of being very low overhead and extremely versatile

and general, as it applies to all applications that run on the operating system

without the need of writing plugins for every application on its own.


Also it is easily extendable and can leverage contributions to the static blocking list

in the same way that has proven to be successful for adblockers (eg. EasyList from Adblock).


 What you have done during the weekend

We have teamed up and discussed possible routes to integrate Carbon Blocker into the operating system

on Windows, macOS and Linux.


Also we sketched out the architecture and programming language we want to choose, 

as we want the project to be most general and approachable.


The solution’s impact to the 


The impact to the current carbon emissions of the ICT sector is tremendous, as 

the user can make insightful decisions that might lead to savings in the order 

of multiple GB (when we assume that the user for instance delays Netflix Streaming)

for 1 hour.


Since we targetet our tool particular to end users and not only to developers like

most of the submissions currently are it has an enormous potential user base.


These savings can quickly ad up as our mechanis applies to every version of 

Windows or Linux operating systems and to every application that makes network 

requests.


The necessities in order to continue the project


The current implementation of carbon blocker provides already many insights and 

puts the user in control of his network carbon emissions.

However it would be nice if the list of downloads is continuously updated 

by the community or the user itself.


We would like to integrate a platform with an easy community transparent contribution 

mechanism for potential entries into the blocking list

as well as a "popup" mechanic that allows the user to add URLs (Hostnames) that

Carbon Blocker currently does not know, but the OS would like to make a network 

connection to.

This means effectively developing or integrating a transparent reverse proxy / VPN

that can capture and handle these new network connections. Similar to tools like

ZoneAlarm / LittleSnitch.



The value of your solution(s) 

The value of our solution is that it can basically block all network operations 

from any app or website that the user does not want to make requests in carbon intesive times.


This makes it extremely general and saves developers from creating custom solutions

for every app or software out there.



The URL to the prototype [Github, Website,...]

https://github.com/green-coding-berlin/carbon-blocker