►
From YouTube: Iroh: Efficient IPFS in Rust - Kasey Huizinga
Description
Iroh is a next-generation implementation of IPFS. It's a ground-up rethink of what IPFS can be, written in Rust by IPFS community veterans.
Kasey's talk will walk us through the first release of iroh, how you can use it, and where the project is headed.
A
A
It
is
compatible
with
Kubo
who's
it
built
by
built
by
Folks
at
number
zero.
We
are
a
group
of
ipfs
community
veterans,
so
we've
been
around.
We
have
opinions
it's
platform
specific,
so
our
release
today
was
specifically
aimed
toward
the
cloud
which
means
it
is
comprised
of
microservices.
That
split
out
the
different
concerns.
Major
concerns
that
we
have
in
ipfs,
so
they
can
be
scaled
independently.
A
A
Oh
hold
on:
oh,
oh,
okay.
So,
let's
start
with
just
the
help
text.
These
are
the
different
commands
that
you
can
run
to
interact
with
iro
in
order
to
interact
with
iro,
though
you
need
to
start
the
different
services
and
you
do
that
with
the
iro
start
command
and
it'll
launch
the
different
Services.
Now,
let's
try
to
fetch
some
content
from
our
Gateway
we're
going
to
grab
this
CID
and
our
Gateway
is
localhost.
9050,
that's
configurable
and
let's
see
how
great
obligatory
weird
cat
picture
that
you
have
to
do
in
your
thank
you.
A
Okay.
So
let's
stress
test
this
Gateway
now
we're
gonna
bombard
it
with
basically
bajillion
connections
and
I'm
gonna,
throw
up
h-top
here
so
that
you
can
see
how
it's
affecting
my
laptop.
When
I
was
doing
this
demo.
As
you
can
see,
if
you
can
see,
the
CPU
is
pretty
high,
but
our
memory
usage
is
relatively
low.
A
If
you
can't
see
it
look
at
it
in
the
slides
on
the
the
download
and
we
had
about
an
average
of
8
000
requests
a
second
and
a
throughput
of
just
under
a
gig.
So,
let's
see,
if
that
destroyed,
destroyed.
Anything
here
we're
gonna,
run
iro
status,
which
gives
us
the
status
of
the
different
services,
and
we
have
the
Gateway
in
the
store
running.
But
we
don't
have
the
P2P
note
up.
A
If
you
were
paying
attention
to
the
iro
start
command,
you
would
have
seen
that
it
actually
only
started
up
The
Gateway
in
the
store.
So
how
are
we
able
to
fetch
that
content
without
being
connected
to
the
peer-to-peer
Network?
Well,
our
Gateway
that
you
will,
you
are
able
to
the
Gateway
is
configured
to
hit.
A
It
is
configured
to
race,
different
gateways
and
instead
of
having
to
go
through
the
peer-to-peer
Network
here
we
have.
We
were
racing
between
dweb.link
and
our
own
Gateway
gateway.lol,
which
I'm
very
happy.
We
have
that
URL.
But
let
me
pause
here:
I,
don't
do
keybase
well,
so.
A
Anyone,
oh
here,
we
go!
That's
why
I
have
to
like
mystery.
Do
this
all
right?
Well,
you
know
what
you're
just
gonna
watch
the
beginning,
while
I
talk
to
you
about
this
decision,
so
iro's
primary
purpose
is
to
write
efficient,
I'm.
Sorry
number
zero's
primary
purpose
is
to
write
efficient
software,
how
we
knew
that
when
y'all
were
going
to
be
running
this
demo,
when
you
all
run
this
demo
later
on
your
own
on
your
laptops,
so
we
needed
to
make
sure
that
whatever
defaults
we
had
were
nice
to
your
computer.
A
This
configuration
on
my
laptop
right
now
and
you
shouldn't
have
to
worry
that
it's
taking
up
resources
so
until
our
P2P
node
is
up
to
our
standards.
We
have
it
configured
to
be
off
by
default.
You
can
change
that
in
your
own
configurations.
If
you
want
your
own
setup
to
do,
IO
start
and
but
because
we
are
set
up
with
microservices,
we
can
actually
turn
on
and
off
the
P2P
node
or
any
of
these
microservices
without
interrupting
anything
else
in
iro.
A
It
does
mean,
however,
since
our
P2P
node
is
not
running,
that
any
peer-to-peer
commands
will
error
out
and
that
will
be
demonstrated
in
a
second
I
timed
that
really
well
somehow
so
yeah
or
I
didn't
we'll
see.
It'll
come
up.
A
Cool
so
the
iro
P2P
peers
command,
which
should
list
your
peers
will
come
back
in
error
because
the
P2P
node
isn't
currently
running
it
gives
you
a
hand,
try
start
P2P
I,
try
rostar
P2P.
Let's
run
that
cool
we're
set
up.
Okay,
let's
look
at
this
Pierce
command.
See
who
we're
connected
to
here
and
the
iro
peer-to-peer
peers
command
will
give
you
a
list
of
the
multi-attors
of
the
peers,
you're
connected
to
we're
going
to
grab
one
and
we're
going
to
look
up
information
about
that
Pier
with
the
iro
P2P
lookup
command.
A
You
can
use
a
multi-hash
or
a
peer
ID,
and
here
you
can
see
this
is
a
Kubo
node
there's
we
have
its
peer
ID
and
some
protocols.
It
speaks.
Let's
add
some
content
to
iro
and
okay.
That
was
very
quick,
but
if
you
saw
we
had
some
beautiful
progress
bars
and
we
added
about
300
megabytes
of
video
data
to
iro
we're
going
to
grab
this
CID
and
we'll
check
it
out
on
the
Gateway.
If
you
notice
these
iro
defaults
to
using
CID
V1.
A
So
if
those
cids
look
different,
that's
why
and
in
honor
of
us
all
being
here
together
in
Lisbon
I
uploaded
some
beautiful
Lisbon
drone
data
to
the
network.
Here,
okay
I
promised
you
interop
with
Kubo.
So
let's
check
that
out
we're
going
to
run
the
Kubo
Damon
and
then
in
a
new
terminal,
try
to
fetch
that
data
cool
Damon's
running
and
while
we're
fetching
here,
if
you
guys
want
to
install
iro
on
your
machine
head
to
iro
dot
computer
slash,
install
iro.com
computer
is
our
website.
There
will
be.
A
A
If
you
want
to
monitor
your
status
instead
of
just
having
it
one
off,
you
can
do
iostatus
dot,
dash
W
and
we
can
actually
watch.
This
will
like
take
in
the
real-time
data
of
your
of
your
processes
that
are
running
and
you
can
run
iro
stop
to
close
these
processes.
So,
let's
watch
it
in
action
and
as
each
process
stops,
we
get
the
report
back
from
our
watch,
all
right
cool,
so
to
recap:
try
iro
grab
it
at
iro.computer,
install
file,
bug
reports
at
our
repo.
A
This
was
iro
specifically
made
Focus
toward
irocloud,
so
iro
comes
built
for
the
cloud.
That's
where
our
micro
service
architecture
can
really
shine.
There
is
a
lot
of
config
to
beef
up
The,
Individual
Services
on
bigger
machines.
It
has
metrics
collection,
Universal,
Trace
IDs
built
in
so
you
can
hook
into
something
like
Prometheus
and
grafana
for
fun.
Dashboards
like
this.
This
is
from
our
own
Gateway.
A
If
you
want
to
deploy
this
in
the
cloud,
please
please
come
talk
to
us.
We
can
help
here's
some
caveats.
This
is
a
0.1,
here's.
What
you
can't
do
with
Ira
right
now.
You
can't
delete
stuff.
That's
coming
soon.
A
There
are,
we
don't
have
any
pinning
or
what
we're
calling
caching
strategy
is
built
in
yet,
and
we
don't
currently
have
Windows
support,
there's
also
a
nasty
bug.
If
you
are
adding
deeply
nested
directories
that
causes
some
data
not
to
be
persisted,
it's
those
would
be
patch
releases
that
will
fix
these
issues.
A
What's
next
for
iro
horizontal
scaling
for
each
service
in
the
cloud
we're
going
to
work
on
iro
mobile,
which
is
ipfs
for
your
app
and
ira1
ipfs
for
your
computer,
so
we
are
planning
a
desktop
specific
implementation
of
iro
that
comes
as
a
single
binary
that
can
take
advantage
of
using
channels
to
talk
between
processes
and,
in
the
meantime,
our
install
script.
That
I
pointed
you
to
configures
cloud
with
sensible
defaults
for
the
desktop.
A
Where
can
you
learn
more?
We
work
in
the
open
that
is
our
GitHub
directory.
If
you
want
to
ask
us
a
question,
please
use
our
discussions
if
you
want
to
chat
GitHub
discussions
check
out
our
website.
That
is
also
where
we
have
our
docs.
So
I
wrote
computer,
slash,
docs
and
please
follow
us
on
Twitter
for
updates
and
also
we
are
hiring.
So
if
you
are
a
rust
engineer
who
wants
to
build
ipfs
come
talk
to
us.