►
Description
Every other week, the Retrieval Market Builders get together to share progress in their projects in a demo format. We want to sincerely thank all of our collaborators for demoing their developments and helping to improve the FIL Retrieval Markets one demo at a time.
June 22, 2022, Demo Day: In this video, you can find quick demos from -
• Zhenyang Shi on FCR
• Ken Labs on Filecoin Green : Pando
A
Okay,
hello
and
welcome
to
this
week's
retrieval
market
demo
day.
Today's
date
is
wednesday,
the
22nd
of
june
2022.
on
the
schedule.
Today
we
have
jun
yang,
also
known
as
wcg
cyx
on
github
speaking
about
fcr,
far
coin
retrieval
client
and
network,
and
then
we've
got
william
from
from
excuse
me
from
ken
labs
speaking
about
falcon
green,
integrating
with
pando.
A
B
Cool
thanks,
patrick,
how
shall
my
green?
What
yeah
can
you
use
my
screen?
Yes,
yep.
That's
great
cool.
B
Cool
so
hi
everyone.
My
name
is
jin
young,
the
developer
of
what
I'm
going
to
present
today,
fcr
of
popcorn
secondary
tribal
client.
I
am
well
actually
in
the
middle
of
recovering
from
flu,
so
my
voice
might
sound
funny
and
I'll
try
not
to
randomly
cope
or
to
drink
water
during
the
presentation,
if
possible.
Before
that,
let
me
just
quickly
do
a
recap
of
fcr.
B
B
B
So
there
are
also
some
other
fields
contained
in
a
piece
software
which
I
won't
go
through
in
detail.
Today.
There
is
also
a
payment
network.
It
is
based
on
a
custom
peer-to-peer
protocol.
After
you
create
a
payment
channel
with
someone
else,
you
can
choose
to
serve
the
payment
channel
for
others
to
the
proxy
payment
at
a
given
price
similar
to
counter
network
in
order
to
make
a
proxy
payment.
B
Fcr
carries
for
payment
offer
and
a
payment
offer
essentially
is
an
offer
for
others
to
do
proxy
payment,
so
user
will
pay
a
certain
surcharge
to
the
proxy
payment
and
it
is
captured
in
price
per
period
and
a
period.
B
B
As
an
example
say,
we
have
three
nodes:
node
one
node
two
and
no
three
node
one
acts
as
a
user
node
two
x
as
a
payment
broker
and
no
three
x
as
a
provider.
So
let's
say
node
one
wish
to
retrieve
100
bytes
from
node
three
with
price
per
bytes
to
be
1.
However,
noteworth
only
has
a
payment
channel
established
with
node
2.,
so
I'm
not
one
in
this
case
can
choose
to
proxy
the
payment
beyond
node
2
to
node
3,
and
in
this
case
node
1
pays
105
tokens
to
node
2.
B
The
proxy
payment
is
multi-hop,
so
there
could
be
multiple
brokers
between
the
user
and
the
provider.
So
this
is
just
a
very
quick
recap.
So
if
you
are
interested
in
the
details
of
the
protocol
and
wondering
how
exactly
everything
works
feel
free
to
check
out
my
last
talk
today,
I'll
be
more
focusing
on
the
use
case
of
fcr.
B
So,
first
of
all,
the
first
release
of
fci
is
out
currently
with
the
support
for
five
point
calibration
network.
So
this
release
comes
with
a
number
of
features
at
the
first
of
all
fixed
a
bunch
of
small
bugs
some
issues
of
previous
poc.
B
B
Now
fci
is
capable
of
managing
multiple
payment
channels
to
one
recipient,
and
here
is
one
example
how
that
matters.
So
much
imagine
you
are
running
a
payment
broker
in
the
previous
fcr.
You
can
only
create
one
payment
channel
to
a
recipient.
B
B
What
you
can
do
now
with
fcr
is
that
you
can
create
multiple
channels
to
to
to
a
popular
recipient
or
popular
provider,
so
the
proxy
payment
request
can
be
processed
in
parallel.
B
Another
small
feature
of
fcr
is
that
it
now
supports
dedicated
payment
channel
for
proxy
payment.
This
is
more
for
people
who
wish
to
build
a
payment
network,
so
fcr
has
ability
to
have
one
or
more
dedicated
payment
channels
reserved
for
your
own
nodes,
so
the
payment
traffic
between
your
nodes
will
not
be
disrupted
and,
in
other
words,
fcr,
can
process
internal
payment
requests
and
external
payment
requests
separately.
B
B
Traditionally,
it
is
expensive
to
host
your
own
video
sharing
platform,
because
you
will
need
to
at
least
have
a
large
amount
of
storage
to
start
videos
and
a
large,
well
a
large
network
bandwidth
to
serve
the
videos
to
to
the
users.
However,
using
fcr
creators
can
upload
videos
to
retrieval
providers
of
a
filepoint
start
miner
with
fcr
rounding
in
parallel
the
website
or
the
video.
B
The
video
platform
will
only
need
to
serve
the
video
ids
to
the
user,
who
will
then
be
able
to
stream
videos
using
fcr
as
a
retrieval
client,
first
of
all,
I'll
go
through
the
demo
procedures
first,
so
it
starts
with
the
user
requesting
a
web
page
from
a
web
server,
and
the
web
server
returns
a
page
containing
only
the
content
ids
of
the
videos.
B
What
do
you
see
on
the
right
hand,
side
of
the
of
the
slides
is
a
web
page
with
three
videos.
However,
that
represents
a
cid's,
not
a
typical
network
address
of
assets
and
when
a
user
clicks
one
of
the
videos,
the
web
server
sends
a
request
to
a
browser
extension
that
can
further
talk
to
a
local
fcr
node
for
request.
Retrieval
fcr
then
retrieve
the
data
from
the
network.
The
data
will
be
returned
to
the
webpage
to
to
load.
B
It
doesn't
necessarily
to
be
videos,
it
can
be
image
or
some
text,
so
the
data
will
be
decoded
based
on
the
data
format
and
be
presented
to
the
user,
and
this
demo
specifically
involves
five
fcr
nodes,
one
fcr
node
of
the
user,
which
will
be
us
two
fcr
nodes,
acting
as
a
payment
brokers,
which
we
have
already
established,
the
payment
channels
and
two
fcr
nodes,
acting
as
the
retrieval
providers
who
are
actually
hosting
the
content.
B
Also
because
I
am
I
have
to
I-
I
have
to
say
that
I
am
a
terrible,
I'm
terrible
front-end
developer,
so
it
is
a.
It
is
a
little
bit
hard
for
me
to
develop
an
extension
that
can
talk
directly
to
the
fcr
node.
So
in
this
demo
I
will
also
be
running
a
smart
proxy
server
that
proxy
the
request
from
the
extension
to
fcr.
B
Okay,
so,
as
you
can
see,
I've
already
got
the
webpage
loaded
in
the
other
tab,
so
we've
got
like
five
videos
here
and
two
of
them
I
actually
downloaded
from
product
labs
youtube
channel
earlier
today,
so
we
have
also
got
the
extension
where
you
can
see
some
basic
information
of
fcr
and
do
some
basic
actions
on
fcr.
Let
me
let
me
just
do
this
so
so
you
can
clearly
see
what
is
happening
behind
the
thing.
B
So,
on
the
left
hand
side
you
can
see
like
six
terminals,
we
have
got
the
small
proxy
server.
I
mentioned
earlier
at
the
bottom,
one
fcr
node
that
belongs
to
the
user.
That
is
us
two
fcr
nodes,
acting
as
a
payment
brokers
in
the
middle
and
on
the
top.
We've
got
two
retrieval
providers
and
now,
let's
load
one
of
the
videos
and
it
fails
to
load.
That
is
because
I
have
turned
off
the
permission
to
retrieval
in
the
extension.
B
If
I
enable
the
permission
and
do
a
refresh
of
the
webpage,
you
can
immediately
see
that
the
video
is
playing
as
fcr
retrieves,
the
video
from
the
retrieval
provider,
oh
and,
and
also,
if
the
if
the
video
appears
laggy
from
from
your
end,
it's
probably
because
zoom
has
compressed
it.
The
actual
video
is
not
laggy
at
all.
From
from
my
end,
let
me
let
me
pause
it
for
now
and
do
some
explanations,
so
you
can
see
that
we
have
got
a
lot
of
retrieval
requests
from
the
webpage
to
fcr
through
the
proxy
server.
B
That
is
because
the
video
is
split
into
excuse
me
and
split
it
into
multiple
segments
of
data.
It
also
appears
that
the
retrieval
process
is
paused.
Now
that
is
because
chrome
only
caged
the
first
part
of
the
video
it
will
continue
to
cage
more.
If
I
press
on
play
and
as
we
approach
the
end
of
this
part,
every
retrieval
is
done
via
the
brokers
with
the
proxy
payment
and
because
the
two
retrieval
providers
are
running
on
my
local
machine.
B
So
what
you
can
see
is
that
the
requests
get
split
randomly
between
these
two
nodes
in
real-world
application,
assume
one
retrieval
provider
is
sitting
just
next
to
your
door,
be
your
neighbor,
while
the
other
one
is
sitting,
say
100
miles
away,
then
fcr
basically
will
prefer
to
retrieve
from
your
neighbor
because
they
will
be
the
first
to
respond
to
your
request
and
what
I'll
do
now
is.
I
will
resume
the
video
and
I
will
randomly
shut
down
or
restart
one
of
the
providers
or
the
or
the
brokers.
B
See
that
if
fci
fails
to
retrieve
a
content,
it
automatically
switch
to
the
other
provider
and
the
same
works
for
the
broker
as
well.
If
I
shut
down
one
of
the
brokers,
the
retrieval
still
works
and
the
video
is
still
like
playing,
so
the
user
won't
notice
any
difference.
B
So,
okay,
so
what
happens?
Is
that
fcr?
In
the
case
of
failing
to
retrieve
a
content
from
a
certain
provider,
it
will
automatically
choose
to
retrieve
from
the
other
provider.
That
is
because
content
is
well
addressed
by
its
content
id,
so
it
doesn't
really
matter
where
the
content
is
coming
from
the
same
works
for
the
payment
payment
network.
If
one
broker
isn't
working,
fcr
will
use
the
other
available
a
broker,
it
doesn't
matter
which
broker
it
uses
as
long
as
the
payment
is
delivered
to
the
final
recipient.
Everything
is
good
and
I'll.
B
Also
as
mentioned
somewhere
in
this
video
in
such
system,
there
won't
be
a
like
a
single
point
of
failure
and,
and
of
course,
you
can
like
jump
between
the
videos
it
just
work
like
normal
and.
B
Excuse
me,
and
so,
and
because
how
the
video
is
encoded
into
segments,
it
is
dynamically
loaded.
So
you
don't
need
to
pay
for
the
entire
video
you
don't
you
just
need
to
pay
for,
for
the
party
watched
or
maybe
actually
the
part
chrome
case.
Maybe
that's
a
that's
a
more
precise
way
of
saying
it.
So,
let's
go
back
to
the
slide.
B
Okay,
so
that's
a
short
but
hopefully
interesting
demo.
The
demo
has
been
released
by
the
way
so
feel
free
to
run
it
to
sell.
B
B
So
content
provider
is
a
person
who
wish
to
serve
content
perfect
for
payment.
It
could
be
a
five
point,
start
miner,
who
also
runs
an
fci
in
parallel,
or
it
could
just
be
a
retrieval
provider
and
in
order
to
maximize
reward,
it
will
prefer
to
cache
to
store
and
to
serve
content
listed
by
popular
content
platforms
and
the
payment
provider
is
a
person
who
delivers
payments
to
content
providers.
It
can
cost
a
number
of
nodes
to
form
a
payment
network.
B
Similarly,
in
order
to
maximize
rewards,
you
can
imagine
that
it
will
aim
to
build
a
network
with
high
coverage
of
content
providers
or
content
in
general,
for
example,
a
user
is
likely
to
choose
to
establish
a
payment
channel
with
a
broker
that
has
95
percent
coverage
of
popular
content
providers
over
another
broker,
let's
say
has
only
50
percent
of
coverage
and
a
content.
Consumer
generally
is
a
person
who
is
willing
to
pay
for
content.
B
What's
more
is
that
you
could
imagine
a
consumer
can
negotiate
a
deal
with
payment
brokers
to
have
itself
be
a
payment
destination
to
receive
payment
so
that
it
will
be
able
to
serve
any
content
that
has
been
cashed
locally.
For
example,
if
I
was
a
user
say,
I
watched
a
lot
of
videos
from
youtube.
B
First
of
all,
it
does
not
need
to
handle
startup
content
or
serving
a
content.
The
cost
of
operating
will
be
much
lower
and
I
would
say
that
even
small
studios
will
be
able
to
start
their
own
video
sharing
platforms
and
remember
that
at
start
of
kovit,
even
the
giant
youtube
starts
to
lower
the
video
quality,
because
there's
just
too
much
demand
on
the
bandwidth.
B
However,
if
youtube
videos
are
stored
in
a
peer-to-peer
way,
you
don't
need
to
stream
all
data
from
youtube
directly
part
of
it
can
come
from
the
retrieval
providers
in
your
local
city,
or
maybe
maybe
even
your
neighbors,
just
next
to
the
door
and
to
extend
that
a
little
bit.
We
now
have
the
possibility
of
serving
content
that
is
not
possible,
as
of
today
well
at
least
not
economically
feasible.
B
Well,
I
don't
know,
I
guess
you
will
need
to
watch
at
least
five
minutes
of
non-skippable
ads,
so
they
can
cover
the
cost
of
storage
and
bandwidth
cool,
so
yeah,
so
that
wraps
up
my
talk
today
again,
first
fcr
is
out
the
first
release
it
out
together
with
that
with
the
demo
I,
with
a
demo,
I
did
earlier.
A
list
of
boot
notes
for
fireplan
calibration
network
has
been
deployed,
feel
free
to
check
it
out.
Issues
are
more
than
welcome
and
more
documentations
are
working
progress.
A
Well,
thanks
jin
yang-
that
was
that
was
great.
I
just
just
one
clarification
to
add
is
that
the
term
content
providers
we've
been
using
to
refer
to
people
who
actually
provide
their
content
to
a
retrieval
network,
so
there
was
just
people
might
have
heard
slightly
different
definitions
of
that
term
across
different
talks
or
different
bits
of
documentation.
A
A
A
Awesome
thanks
jin
yang
right
well.
Next
is
william
from
ken
labs
to
speak
about
falcon
green
and
panda.
D
Actually,
I
have
talked
about
pando
and
a
bit
of
the
virgo
green
in
previous
demo.
So
today
I'm
going
to
show
you
what
exactly
can
labs
have
been
doing
and
what's
the
future
plan
in
the
falcon
green
first
of
all.
So
what
is
falcon
green?
Let
me
give
a
quick
introduction.
D
This
is
a
initiative
of
program
that
aims
to
measure
the
environment
impact
of
our
coin
and
verifiably
drive
them
below
zero.
So
it's
to
make
transparent
and
that's
substantive
environmental
claims.
So
this
is
firecoin
green
and
what
is
pando
so
pando
is
a
website
database
that
ensures
access
to
node
rights
data.
So
in
pando
ipod
is
a
first
class
citizen.
It
will
keep
data
storage
consistently
available
with
a
lightweight
unbiased
data
access.
D
They
also
discourage
historical
revisionism.
So
this
is
a
pando,
so
the
original
idea
of
pando
is
just
to
serve
as
a
side
chain
service
in
the
in
the
graph.
Here
you
can
see
as
a
key
component
of
a
reputation,
so
pando
will
receive
the
metrics
from
the
falcon
miner
and
the
client
can
then
fetch
the
data
from
pando
or
the
reputation
system.
So
this
is
the
workflow
of
the
initial
idea
of
handle.
D
D
D
The
last
thing
is
the
the
green,
the
business
logic.
It
requires
a
larger
feature
to
manage
the
data
changing
records,
so
I
will
show
you
why
we
are
talking
about
it
here.
D
This
is
currently
what
pando
has
supported
for
congregating,
so
there
are
four
components
here
in
the
graph
in
the
diagram.
So,
first
of
all,
it's
a
location
api
which
was
set
up
by
the
falcon
green
team.
This
is
the
web
2
hosted
resource,
it's
a
json
api
hosted
somewhere.
Now
I
think
it's
one
of
the
end
point
is
on
aws
the
json
api.
D
This
service
will
periodically
fetch
data
from
the
location
api,
so
it's
a
json
json
data,
a
piece
of
json
data
get
inject
to
pando
using
the
ipid
data.
So
this
is
the
specification
of
data
model.
Pando
is
using
so
primarily
green.
Sync,
the
two
things
fetch
the
data
periodically
and
that
transform
into
ipod
data
model
published
to
pando
on
top
of
the
the
panda
storage.
D
D
D
D
So
this
should
be
able
to
showcase
the
outputs
or
improvements
of
service,
provide
a
storage
provider
via
pando,
so
by
how,
by
comparing
that
to
the
estimate
based
on
five
coin,
green
methodology,
which
is
already
shown
on
the
firecoin.image
dashboard.
So
there's
a
estimate.
D
D
D
Okay,
we
hope
pando
can
make
falcon
green
reporting
more
transparent
than
the
verifiable,
and
now
I
can
show
you
a
small
dashboard.
So
this
is
a
dashboard
we
created
for
for
the
demo
purpose.
D
Falcon
green
has
a
similar
dashboard,
so
we
are,
we
need
to
to
see
how
much
and
if
this
part
of
the
feature
can
be
consolidated
or
how
we
can
merge
them
together
in
the
future.
So
now
this
is
just
for
demonstration
purpose,
so
you
can
see
from
the
map.
These
are
all
the
minor
locations
from
the
original
location
api.
The
data
is
fetched
from
the
panda
graphql
interface.
D
So
if
we
go
here
actually
so
these
are
the
locations.
So
if
we
try
to
click
some
location
actually
before
this
call,
I
have
checked
some
of
the
miner
location.
Some
has
valid
transaction
data
so,
for
example,
this
location,
this
miner,
it's
in
denmark.
D
D
D
So
if
you
see
here,
the
fact
is
that
there
are
very
few
transactions
data
available
from
the
miners
and
if
we
move
to
asia
to
be
more
specific
in
china,
I
also
see
a
couple
of
miners.
They
have
available
data
transaction
data
yeah
you
can
see.
So
this
is
basically
the
showcase
of
what
we
can
see
from
the
map
and
what
transactions
we
can
kind
of
transaction
data.
We
can
fetch
from
the
miners.
D
Okay.
So
this
is
a
simple
example:
demo
of
the
the
front-end
dashboard
behind
the
scene.
The
data
is
pre
auditly,
so
every
15
minutes
fetch
from
the
location
api
synchronize
to
get
synchronized
to
to
handle.
D
A
Awesome
thanks
william
I've
got
a
couple
questions.
One
is
about
green
sync,
so
the
sort
of
translation
layer
for
the
ingress
of
pando
is
that
generalizable
to
other
clients
who
want
to
store
data
in
pando.
A
Could
we
could
we
take
green
sync
and
and
turn
it
into
just
sort
of
a,
and
I
guess
just
like
an
ingress
module
for
pando
and
then
the
second
question
is
you're
using
graphql
to
fetch
data
back
out
of
pando
is:
are
there
other
options
there
as
well
or
is
it
is
and
what
sort
of
translation
do
you
have
to
do
between
the
graphql
query
and
then
fetching
from
the
ipa
and
ipld
data
store.
D
Okay,
thanks
for
the
questions
so
firstly
for
the
graphql
natively
pando
supports
graph
sync,
so
the
the
reason
for
graphql
is
simply
because
the
existing
dashboard
so
green
they
provide,
they
can
use
graphql
interface.
So
that's
part
of
the
the
work
we
have
done
in
past
couple
of
weeks
so
to
support
the
graphql
interface
so
that
it
can
be
easily
integrated
with
their
dashboard.
D
D
D
We
can.
We
can
think
this
is
a
good
idea,
so
I
we
can
think
of
the
the
solution,
so
we
make
it
more
generic
and
see
if
we
can
publish
as
a
module
so
that
share
with
the
community.
If
anybody
has
any
interest
so
feel
free
to
use.