►
From YouTube: Tech Session #2: Bisq's P2P network
Description
Manfred provides a technical overview of the Bisq's Tor-based P2P network. Slides at https://goo.gl/P9njwf
Tech Session 1: An Overview of Bisq (https://youtu.be/ulmUVh3XjRg)
A
Hello
welcome
everybody
to
the
second
basic
text
session.
This
session
is
going
to
be
on
bisques
peer-to-peer
network
and,
if
you're
not
familiar
with
this
series,
that
we
just
started
kicking
off
a
couple
of
weeks
ago,
one
second,
this
is
a
the
idea
behind
these
tech
sessions
is
to
is
to
create
a
series
of
resources
for
both
current
bisk
developers
and
new
bisk
developers
that
are
coming
along
to
have.
You
know,
sort
of
a
one-hour
session
on
each
major
technical
topic
inside
of
bisk.
A
Like
today's
of
this
acute
appear,
network
works
and
future
sessions,
we'll
go
deep
on
how
this
overall
trading
protocol
works,
and
so
on
the
first
session
that
we
did
that
you
can
see
a
link
to
it
down
below
here
on
YouTube,
that's
a
general
technical
overview.
So,
if
you're
just
getting
started,
you
have
no
familiarity,
that's
the
first
one
to
watch,
and
then
you
can
come
in.
You
know
pick
and
choose
which
one
you
want
to
watch
after
that,
and
with
that
I'm
gonna
hand
it
over
to
manfred.
A
I
just
heads
up.
The
presentation
that
he's
going
to
go
through
is
dense
right.
It's
you
know.
Gonna,
be
a
bunch
of
bullet
points
really
digging
into
all
the
particulars
about
the
peer-to-peer
network,
so
the
sort
of
the
way
to
watch
this
is
to
see
you
know
what
looks
like
it
might
be
of
interest
to
you.
What
would
you
want
to
go
deeper
on?
A
If
you
have
questions
you
can
queue
them
up
in
the
chat
window
if
you're
here
watching
it
with
us,
live
and
you'll
have
some
time
at
the
end
for
Q&A
and
of
course,
if
you're
watching
this
afterward,
you
can
always
come
and
chat
with
us
and
slack
about
anything
you
see
here.
They
want
to
go
deeper
on
in
the
bisque
p2p
channel
in
our
slack
workspace.
So
without
any
further
ado,
I'll
give
it
to
manfred.
B
Yeah,
hello,
hello,
buddy,
yeah,
let's
just
jump
directly
into
their
topic,
we'll
make
a
screen
sharing.
Do
you
see
my
screen?
Yeah
I
think
it
should
be
visible.
Yeah,
we'll
cover
basically
a
backbone
of
the
application
to
a
peer-to-peer
network.
It's
quite
the
tensor
Kenda
for
today,
so
I
will
try
to
get
through
everything
in
a
as
short
as
possible
and
then
at
the
end
we
have
time
for
discussion
discussing
open
questions.
So
first
I
want
to
give
an
hour
with
you
about
the
peer-to-peer
network.
B
Then
talk
about
tour
and
aspects
of
tour
endure
in
the
network
handling
the
way
how
the
connection
class
is
working,
the
different
types
of
messages,
then
the
bootstrapping,
the
seed
nodes,
peer
management
in
memory,
storage
and
persisted
storage,
the
threading
model,
and
then
we
are.
We
have
time
for
questions.
If
you
have
a
burning
question,
of
course,
it
just
interrupt
me
we
can-
or
we
can
stop
any
in
a
moment
or
answering
unclear,
open
questions
yeah.
B
So
there
are
busy
European
network
is
an
unstructured
flaw,
still
network
broadcast
network.
It's
basically
similar,
like
the
Bitcoin
peer-to-peer
network,
I,
actually
tried
to
mimic
the
Bitcoin
European
network,
but
do
lack
of
good
resources
and
documentation,
and
because
there
was
quite
some
complexity
in
the
way
how
the
peer
at
the
handling
of
the
peer
system
in
the
Bitcoin
network
I
decided
to
to
not
follow
it
too
closely.
But
the
basic
elements
are
similar.
B
Bisque
started
with
DHT
with
a
distributed
hash
table
in
the
very
beginning,
but
that
was
dropped
after
a
while,
because
we
never
got
it
working
in
there
in
the
real
internet
because
of
not
traversal
problems,
and
that
was
actually
one
of
the
main
reasons
why
we
ended
up
restore
because,
with
yeah
using
torrent,
towhead
services,
which
the
Sox
proxies,
we
got
rid
of
all
the
nut
progression
problems
and
got
the
privacy
and
many
other
problems
solved.
On
top
of
this,
in
there
yeah
and
the
Pisgah
PPO
Network
they're,
basically
only
two
types
of
messages.
B
There
are
either
broad
custom
messages
which
are
public
like
the
office.
Everybody
should
and
need
to
be
able
to
read
this,
so
it
doesn't
make
sense
encrypted
messages,
but
there's
a
little
sign,
for
they
are
to
be
sure
that
they're
really
coming
from
this
pier
with
with
meta
alpha,
and
then
there
are
private
direct
messages
like
in
the
trade
protocol.
When
you
are
dealing
with
you
at
appear,
it's
just
a
message
from
one
PHP
out
of
here
that's
encrypted,
and
nobody
else
is
part
of
this
or
of
this
traffic
yeah.
B
We
are
using
tor
hidden
services,
not
to
exit
notes,
but
come
a
little
bit
later
about
more
details
about
tor
tor
is
not
only
used
for
the
Bitcoin
peer-to-peer
network,
which
is
further
affordable,
Trading
protocol
and
everything,
but
also
for
the
Bitcoin
or
network
part,
that's
kind
like
optional
as
we
by
default.
It's
enabled
that
all
the
Bitcoin
or
traffic
is
going
over
tor
as
well,
but
in
the
settings
you
can
disable
this
and
then
you're
in
the
clear
net
and
an
important
part
is
that
a
peer-to-peer
network
is
different,
like
a
client-server
model.
B
Of
course-
and
you
don't
have
here-
you
have
eventually
consistency.
You
have
never
have
to
guarantee
that
your
message
arrives
that
ever
appear
and
you
have
to
build
in
a
lot
of
cautious
with
redundancy
it
doesn't.
It
has
very
different
scaling
properties.
The
big
the
big
benefit
of
such
a
network
type
is
that
it's
very
censorship
resistant.
That's
probably
the
reason
why
it's
used
by
Satoshi.
It
has
choosen
it
for
the
Bitcoin
peer-to-peer
network.
It's
and
the
downside
is
that
it's
not
so
efficient.
B
It's
not
done
scales
well
like
a
DHT,
for
instance,
or
like
a
like
normal
client-server
model.
So
yeah
has
its
special
nature
and
you
don't
get
everything
or
at
the
same
time
and
yeah
they're
always
have
a
compatibility
challenges.
So
every
change
we
made.
We
have
to
take
care
to
not
break
anything
in
the
for
pasture
for
all
the
versions
and
there
are
some
different
mechanisms
in
a
peer-to-peer
network
to
handle
this
challenges,
but
I'm
not
sure
we're
have
to
go
into
that
level
of
detail.
B
Oh
yeah
that
or
the
idea
came
from
beyond
Princeton
at
this
time
he
was
a
student
or
now
has
finished
his
study
and
in
Graz
in
Austria.
He
used
basically
also
a
Tom
peer-to-peer,
disty
HT
before
and
also
run
at
the
problem,
and
then
he
found
this
solution
we
store
and
to
use
tor
with
socks
proxy
as
the
network
layer
and
our
and
build
on
top
of
this,
your
own
peer
to
peer
network
and
yeah.
B
B
We
are
we're
not
the
way
I
really
of
Tor
we're
just
talking
to
it
to
the
sock
Serb
yet
to
the
socket
and
it's
just
one
class
basically,
which
is
which
is
wiring
up
the
socks
proxy
we
store
and
doing
all
the
startup
and
so
on,
and
then
there,
the
rest
of
the
network
class.
This
doesn't
know
anything
about
tor.
B
We
are
using
hidden
services,
so
onion
services
called
now
and
we
are
not
using
exit
node.
So
it
has
big
benefits,
because
the
exit
node
sent
over
a
little
bit
problematic,
both
from
bandwidth
and
from
Pollux,
but
also
for
a
privacy
reasons,
because
it
can
be
assumed
that
many
exit
nodes
are
probably
operated
by
by
agencies
or
so,
as
kind
of
like
you
are
trying
to
get
the
filling
into
the
network.
And
yes,
I,
said
before
a
main
benefit
of
the
solution
was
to
get
rid
of
all
the
natural
virtual
problems.
B
So
you
don't
have
to
configure
anything
like
with
this
DHT
solution.
You
you
needed
to
configure
your
router
to
to
have
port
forwarding,
enable
and
all
kind
of
stuff,
and
we
wanted
to
have
a
setup
where
a
user
don't
need
to
do
anything
and
don't
need
to
have
technical
skill
to
get
the
peer-to-peer
network
running.
B
Yeah
in
the
first
step,
when
you're
starting
to
connect
to
tor,
which
takes
usually
just
a
few
seconds
so
maybe
3
to
10
seconds
average,
you
are
starting
to
connect
to
the
Tor
network.
From
that
moment
on,
you
can
receive
data
from
you
can
yeah.
You
can
connect
to
the
signal
and
you
can
request
it,
but
you
say
it
is
no
dear.
You
are
not
fully
connected
node
because
you
are
not
reachable
from
outside
for
others.
B
It
was
usually
the
round-trip
time
in
the
monitoring
to
regress
the
data
from
the
seed
node
until
you
receive
the
data
was
taking
up
nearly
to
1
minute
vessel
and
now
it's
again
something
like
5
to
10
seconds,
which
is
like
it
expected,
but
it
has
shown
us
kind
of
vulnerable
and
dependents
in
bisque
we
store,
so
we
would
be
interested
to
get
alternative
implementation
with
I
to
pee
I'm,
not
very
familiar
with
I.
Do
pee
and
a
sink
tour
has
a
lot
of
advantages.
B
So
we
are
yeah.
It's
not
part
of
the
Java
space.
It's
really
our
own
process,
which
the
bisque
application
is
communicating
over
it
TCP
control
channel
with
this
native
tor
binary,
which
has
a
huge
benefit
that
we
are
always
up
with
the
latest
versions
of
Tor.
It's
a
super
efficient
at
C++,
and
so
if
we
would
use
a
Java
library
for
tour,
it
would
always
like
some
features
and
so
on.
So
I'm
pretty
happy
that
we
got
this
setup
done.
B
That's
actually
some
one
set
up,
which
I
have
a
little
bit
in
mind,
also
a
Bitcoin
that
we
are
running
Bitcoin
core
as
a
binary
and
communicate
with
this
over
RPC
and
then
have
to
benefit
to
have
always
too
late.
That's
not
the
best
version
at
the
reference
implementation
of
Bitcoin,
but
that's
not
a
topic
yeah
to
back
to
I
to
P,
as
it
would
be
great,
of
course,
to
support
both
at
the
same
time
toward
an
IP
but
I
assume
that
will
be
too
expensive
from
the
resource,
consumption
and
bandwidth
to.
B
Basically,
we
had
to
to
publish
your
messages
all
the
time
over
both
networks
and
both
and
all
the
nodes
are
consuming
their
messages
on
post
networks.
Maybe
it's
possible
I
fear,
that's
too
complex
from
all
aspects
from
bandwidth,
resources
and
effort.
But
who
knows
when
somebody
is
working
on
this?
We
can
figure
out.
If
there
are
some
ways
to
do
it
and
another
topic
is,
we
should
run
more
thoroughly
notes.
Sq
has
started
already
and
I
asked
him
that
he
will
promote
it
a
little
bit
more.
B
Basically,
I
would
like
that
we
are
like
we
are
paying
for
other
infrastructure
yeah
for
the
people
who
are
operating
infrastructure
node
like
seed
nodes,
that
people
who
are
running
to
early
notes
get
paid
psq.
We,
of
course
we
cannot
run
thousands
or
so,
but
would
be
great
to
run
at
least
something
like
20
or
whatever.
B
Yeah
a
main
class
in
that
or
peer
to
peer
project
or
is
the
connection
class.
It
handles
the
incoming
data
and
writes
to
the
socket
to
the
network
socket.
We
are
using
protocol
for
all
the
network
data
encoding
that
has
secured
earlier.
We
were
using
Java
serialization,
but
that
had
some
security
risks
and
the
year
ago
s
will
be
moved
over
to
proto
puffin.
B
We
are
very
restrictive
with
the
message
is
what
we
are
accepting,
so
we
started
if
we
if
there
arrives
any
message
which
is
not
known
in
the
codebase
it,
the
connection
will
be
rejected.
There
are
some
built-in
kind
like
dos
protection
and
yes,
kind
of
protection
or
mechanisms
in
the
in
the
connection
class
asset.
When
and
when
we
arrive
a
message
which
is
not
recognized
or
when
the
message
is
too
big
or
anything
else
which
is
not
expected
expected,
and
in
that
area
we
get
backward
compatibility
issues.
B
So
when
we're
adding
new
messages
like
now
for
the
Tau
they're,
all
that
all
the
time
we
are
getting
new
message,
types
added
and
all
clients
who
have
not
updated
and
would
reject
the
connection
and
to
be
able
to
support
this
or
there's
a
mechanism
which
is
called
capabilities.
So
you
as
a
as
a
note,
you
are
telling
the
network
which
kappa
bilities
you
have,
which
are
messages
you
know
and
before
you
were
sending
yeah
when
another
node
sends
you
today
that
he
knows
you
were
capable
of
handling
these
dos
data
or
not.
B
And
if
you
are
not
capable
of
handling,
for
instance,
new
messages
which
are
introduced
in
the
Tao,
then
the
other
node
will
not
send
you
this
messages.
So
you
don't
get
the
problem
with
getting
disconnected,
because
the
other
node
thinks
that
you
are
kind
of
like
yeah
attacking
this
node
with
unknown
messages
and
important
for
development
environment.
There
is
an
alternative
connect
or
not,
and
that
connection
last
pattern,
Network
class,
which
is
doing
all
the
startup
folder
for
the
tour
infrastructure.
B
So
for
local
development,
you
can
use
a
local
host
connection
and
then
everything
is
much
fast
and
you
don't
need
to
wait
30
seconds
for
having
your
node
fully
connected
yeah.
As
I
said.
Initially,
there
are
different
type
of
messages
or
historic
messages,
and
the
broadcast
message
means
basically,
the
direct
messages
are
encrypted
and
signed,
and
the
protocol
messages
are
public
and
we
have
this
flood-fill
or
mechanisms,
so
you
are
sending
out.
Are
your
messages
to
all
the
peers?
You
know
you're
usually
connected
to
something
like
8
to
12
peers.
B
So
when
you
are
creating
an
offer,
for
instance,
you
are
sending
out
to
offer
to
the
majority
of
those
peers
and
every
peer
who
is
receiving.
This
new
offer
will
as
well
send
the
message
to
their
connected
peers,
but
in
the
details
are
for
having
not
too
much
traffic,
there
are
yeah
us,
the
data
owner.
B
You
are
sending
out
a
message
to
all
your
peers,
but
when
you
receive
it
from
a
not
appear
when
you
are
not
the
Daytona
you're
only
sending
it
out
the
sink
to
50%
of
your
peers,
and
but
you
had
to
avoid
that
it
would
become
an
endless
flooding.
You'd
stop
to
grow
to
further
relay
messages
when
you
have
already
a
message
to
when
yeah.
B
When
note
a
is
sending
a
message
to
note,
B
and
note
B
is
sending
a
message
to
note
C
and
then
note
C,
we
received
a
message
again
from
note
a
it
will
not
reproach
custom
message
anymore,
because
yes,
alright
in
a
message,
so
that's
a
mechanism
to
to
have
a
kind
like
a
halt
for
the
flood
fill
and
that
it
not
get
ya
too
much
traffic.
But
with
this
flood
fill
mechanism
we
have
a
high
level
of
redundancy.
B
So
usually
you
are
receiving
a
message
not
only
once
you're
receiving
it
a
few
times
which
it
gives
quite
good
properties
in
regards
of
censorship,
resistance
and
it's
very
hard
to
sensor
nodes.
So
a
main
problem
in
such
networks
is
partitioning.
So
when,
when
are
the
network
for
some
reasons
like
in
the
bootstrap
with
the
seed
nodes
when
it
would
or
when
you
would
have
isolated
islands
that
are,
there
are
20
nodes
which
are
very
well
connected
it?
B
But
then
there
are
only
one
connection
to
another
Island
where
another
group
of
nodes
are
well
connected,
then
it
would
be
a
problem
because
then
there
is
only
this
one
connection
where
the
messages
flow
into
the
other
Island
and
when
this
connection
get
broken
or
get
controlled,
then
you
have
an
issue,
but
it's
very
difficult
to
to
attack
the
network
in
that
area
to
create
such
partitions
and
I.
Think
yeah
I
don't
see
at
the
moment
any
and
your
risk
in
that
area
and
yeah.
B
There
is
another
message
type
to
me:
box
messages
which
are
used
in
the
trade
protocol
by
Andy
are
appears
offline.
So
after
the
take-off
process
we
are
appear,
don't
need
to
be
online
anymore.
So
when
you
are
sending
I
have
sent
the
money
over
the
bank
transfer,
maybe
the
other
peers
array
offline.
Then
your
mess
you
first
you
try
to
send
it
directly.
The
message
when
yeah,
when
you
can
agree,
share
appear,
then
you
are
sending
a
mailbox
message
which
is
basically
a
broadcast
message,
but
it's
encrypted
and
or
nobody
can
read
the
message.
B
So
everybody
is
storing
this
message
locally
and
when
you're
trading
peer
goes
online,
he
will
receive
the
message
he
will
try
to
decrypt
the
message
and
when
he
can
decrypt
the
message
he
knows
the
message
was
for
him
and
then
he
will
send
a
remove
message
to
the
network.
So
every
node
will
remove
this
message
that
we
are
not
filling
up
the
network
and
that's
a
little
bit
of
special
message
fact,
because
usually
all
these
messages
have
the
public
key
included
for
checking
the
signature.
B
That's
specially
important
for
like
for
the
offer
that
or
that
a
us,
the
offer
creator,
the
only
one
who
can
remove
top
for
nobody
else
can
remove
it
off
and
that's
controlled
with
the
signature
and
with
the
public
key.
The
mailbox
message
has
to
two
public
keys:
one
is
for
verifying
the
owner.
This
is
the
sender
of
the
message
and
one
is
for
removing
the
message:
that's
the
receiver,
so
your
tradingview
will
receive
the
message.
B
It's
the
only
one
who
can
remove
the
message
and
you
you
have
as
if
the
trader
who
has
created
the
message,
you
are
yo,
just
signing
a
message
and
it
can
be
proven
that
the
that
you're,
the
valid
owner
after
of
the
message
and
the
creator
of
the
message,
and
to
avoid
that
every
peer
in
the
network
has
to
try
to
decrypt
the
message
which
has
a
little
bit
of
costs.
And
at
the
moment
we
do.
We
don't
have
any
issues
there,
usually
something
like
20
or
50
mailbox
messages
floating
around.
B
But
when
we
would
have
much
more
users
can
be
thousands
or
hundreds
of
mailbox
messages.
And
you
don't
want
to
spend
a
lot
of
computation
time
on
trying
to
decrypt
all
these
messages.
For
yeah,
for
having
this
optimization.
We're
using
a
prefix
filter
only
try
to
decrypt
those
messages
which
are
matching
the
first
bytes
of
your
onion,
addressing
or
of
your
public
key
or
whatever
some
data
which
unique
to
you.
B
And
then
you
only
try
to
decrypt,
maybe
something
like
10%
of
the
messages,
so
that
gives
enough
privacy
that
you
cannot
say
clearly
that
yeah,
the
one
who
has
decrypt
it
was
the
receiver,
because
we
have
was
the
prefix
that
can
be
many
different
notes
or
who
could
be
the
receiver
of
the
message?
It's
a
concept
which
were
poured
from
bit
message
and
probably
used
in
many
other
projects
as
well
yeah.
Then
some
messages
are
stored
in
there
in
memory
like
their
office.
B
When
you
send
out
the
offer,
every
node
is
keeping
their
life
office
in
in
run
when
you're
shutting
down
their
application
and
you're
starting
up.
You
have
basically
zero
off
and
you
have
to
request
it
again
from
the
seed,
node
and
yeah.
Most
of
them
at
those
messages
have
ownership
protection,
so
only
the
owner
can
remove
the
message
again
and
some
messages,
like
the
officer
or
most
of
those
messages,
have
a
time
to
live,
also
that
the
storage
doesn't
get
overfilled
so
or
also.
B
Usually
it
can
be
that
when
you
lose
your
network
connection
or
yeah,
when
you're
killing
your
application
without
shutting
down
the
application,
probably
then
your
office
would
stay
online
would
dangling,
and
that
would
have
the
disadvantage
that
other
piercing
you're
online.
They
try
to
take
your
front
and
have
to
wait
until
the
time
out
to
see
that
you
are
not
available
and
the
other
disadvantage
is
that
yeah,
your
storage
gets
flooded
with
too
many
offers
over
time
and
get
clocked.
So
to
avoid
this,
there
is
the
time
to
live
for
office.
B
It's
something
like
four
minutes.
So
when
you
lose
your
network
connection
without
sending
it
and
when
you
are
shutting
down
your
application,
you
are
sending
a
remove
message
from
your
office,
so
that
forget
the
information
that
you're
not
online
anymore
and
the
office
have
been
removed
and
when
you
go
online
again,
you
send
the
ad
message
and
your
office
get
added
again
with
the
time
to
leave.
B
So
this
doesn't
make
sense
to
remove
those
messages
and
with
account
witness
basically
the
same
in
that
visit
ow,
we
will
have
new
messages
which
will
be
persisted
and
will
be
removed,
so
that
has
been
extended
now,
but
don't
want
to
get
into
the
detail
of
this,
but
it's
basically
data
it's
similar,
like
storage
messages,
but
they
get
persisted
to
disk.
To
avoid
that,
you
have
to
request
too
much
data
at
the
beginning.
We
are
always
shifting
their
current
state.
B
So
with
a
new
version
of
bisque,
we
are
shipping
all
the
past
trade
statistics,
persisted
trade
statistic
data.
So
it's
a
new
client.
You
get
away
a
lot
of
data
and
when
you
are
first
starting
up,
you
only
request
the
data
which
is
missing.
So
we
have
data
handling,
but
maybe
a
little
bit
late
on
this
or
on
dedicated
slide
to
the
storage.
B
Yeah,
another
bigger
part
is
the
seed
nodes
as
a
completely
new
client.
Do
you
don't
know
anything
about
the
peer-to-peer
network?
So
you
need
to
you,
don't
know
any
peers,
so
you
need
to
you
need
to
have
some
well-known
entry
points
to
the
peer-to-peer
network.
Those
are
hard-coded
in
the
code.
You
can
also
set
it
by
program
argument
and
that's
a
usual
concept
in
such
networks.
Also
in
Bitcoin
you
have
those
seed
nodes
and
they
are
basically
delivering
our
nodes
in
the
work.
B
So
you
get
known
about
other
peers
in
the
network
and
you
can
connect
to
other
or
peers.
In
our
case,
our
signals
have
a
little
bit
more
features.
That's
mainly
for
efficiency,
because
they're
poor
connections
is
slower
end
up
in
the
Bitcoin
European
network,
it's
Thea
net,
so
it's
much
faster,
much
more
efficient
or
the
network
we
store.
Everything
is
slower.
B
We
don't
want
the
user
that
he
has
to
wait
10
or
20
seconds
until
he
is
connected
to
our
peers
before
I
can
receive
any
data,
and
for
that
and
also
we
all
the
other
peers
are
less
reliable.
So
it
can
be
that
you're
starting
up
you
get
yeah,
you
get
a
few
peers.
You
are
trying
to
connect
to
the
first
peer,
but
then
this
peer
is
not
responding
or
is
not,
is
very
badly
connected
or
just
the
shutdown
before
I
sending
you
that
later
and
then
or
your
startup
will
be
delayed.
B
B
We
are
using
a
date
delta
handling
area
come
to
this
latest
iteration.
So
basically
the
seed
not
delivers
you
all
the
data.
What
you
want
to
know
as
soon
as
you
are
connected
to
the
Tor
network,
that
takes
usually
just
a
few
seconds
five
seconds
or
something
with
that
way.
We
can
show
very
quickly
to
also
token
so
you
don't
have
to
wait
until
your
onion
service
is
published,
which
takes
usually
half
a
minute,
and
you
can
already
start
to
browse
off
a
book.
You
cannot
take
an
offer
because
you're
not
fully
connected.
B
Nobody
could
send
you
a
message
because
you're
only
an
address
is
not
known
in
the
network,
but
you
can
yeah.
You
can
receive
already
date.
Then
you
can
play
a
little
bit
around
then.
After
when
your
hidden
service
is
published,
you
are
fully
connected
and
you
are
requesting
again
from
the
seed
node
to
data,
because
in
the
meantime
it
can
be
that
you
miss
stator.
When
a
new
offer
has
been
published
in
between
this
half
minute,
you
would
not
have
received
it
because
yeah
you,
you
are
not
the
receiving
peer
in
this
time.
B
B
Jana
said
we're
using
a
beta
handling,
which
is
basically
using
the
hash
of
the
data
and
a
map.
So
you
are
sending
the
signal,
the
map,
of
all
the
hashes,
what
you
have
already
and
then
the
signal
is
only
sending
you
their
missing
data
item,
so
we
are
reducing
traffic
yeah
then
another
pic
apart
is
their
peer-to-peer
management.
B
You
tried
to
stay
connected
to
around
8
to
12
peers,
but
that
depends
a
little
bit
on
the
peer
type.
Also.
There
are
different
peer
types
like
the
seed
node,
the
direct
message
peer
or
normal
here,
and
that's
especially
when
you're
in
a
trade
process.
You
don't
want
to
get
disconnected
from
this
peer
because
yeah,
when
you
send
a
message
in
the
trade
protocol,
it
would
take
more
time
again
to
start
to
reconnect.
B
So
you
want
to
stay
connected,
so
those
are
kind
like
privileged
peer
when
you,
when
you
get
too
many
peers,
you
start
to
disconnect
peers
and
you
start
with
those
peers
yeah
with
the
normal
tiers,
which
don't
have
any
special
relationship
with
you
and
on
the
direct
message
peers
with
whom
you
have
already
exchanged.
Direct
messages
like
in
a
trade
protocol,
we
will
be
the
last
which
you
start
to
disconnect.
So
we
are
so
there
are
different
limits.
B
B
When
you
see
a
connector
so
idle
for
a
few
minutes
already,
then
you
were
disconnecting
those
first
instead
of
other
connection
which
are
more
active
yeah
this
in
memory
storage,
we
have
four
different
rocker
messages
like
at
data
message
or
remove
data
message.
They
are
packing
inside
then
different
payloads,
like
aurilla,
like
the
offer
they
get
yeah.
B
If
there's
only
few
protection
with
signature
and
public
key
so
when
when
anybody
would
send
a
remove
data
message
with
with
a
foreign
offer,
it
will
fail
because
you
don't
have
you
the
signature
will
fail,
you
don't
have
the
private
key
for
making
the
right
signature
and
for
yeah
for
keeping
the
office
alive.
We
are
using
a
refresh
refresh
message.
B
That's
kind
like
a
lightweight
message,
doesn't
contain
all
the
payload
of
the
offer
it
only
contains
or
the
other
hash
of
the
authorizing,
and
you
have
the
very
minimum
data
which
is
required
to
have
the
functionality
that
you
can
basically
signal.
The
last
message:
the
network
my
office
still
alive.
Please
update
their
time
to
live
so
this
this
nice
Inc
their
time
to
live
in
office.
Something
like
six
minutes
and
the
refresh
messages
are
sent
out
every
four
minutes.
So
usually
your
time
to
lift,
get
updated.
B
Every
four
minutes
and
it
often
ever
gets
removed,
would
be
just
yeah
when
you're
very
bad
connected
and
your
messages
don't
get
out.
Then,
after
six
minutes,
when
another
note
doesn't
receive
any
refresh
message
for
an
offer
in
six
minutes,
he
will
remove
the
offer
from
estate
the
map
and
from
his
self
a
book
and
I
said
before
the
mailbox
messages
are
also
a
little
bit
special.
B
B
Then
there
are
persistent
storage
where
we
are
storing
the
data
to
disk.
We
are
using
the
hash
of
the
payload
of
the
data
as
the
key.
We
have
two
different
types
of
persistence.
One
is
more
lightweight
where
we
try
to
really
have
the
data
as
small
as
possible,
because
we
expect
that
we
get
a
lot
of
data
like
the
account
witness
and
the
trade
statistics.
There
will
be
thousands
or
hundred
thousands
of
data
items
in
future
and
yeah.
B
We
have
to
take
care
that
this
data
storage
will
not
grow,
200,
100,
megabytes
or
gigabytes
and
at
the
moment
I
think
it's
something
like
1
megabyte
or
so.
But
with
the
trade
statistic
we
will
get
issue
someday
and
probably
we
will
just
not
go
back
in
history
forever
and
we'll
only
have
10
d'etre
statistic
for
the
last
two
months
or
something
and
then
when
you
want
motivator,
you
request
it
extra
from
a
special
service,
but
so
far
we
don't
have
an
issue.
Is
this?
B
The
same
waste
account
witness
that
a
super
small
data
about
there.
When
we
have
hundred
thousands
of
users,
we
will
have
100
thousands
or
millions
of
account
witness
data
and
will
sum
up.
So
that's
really
designed
to
have
very
minimal
data,
and
now
we
started
new
data
types
which
require
also
data,
because
those
other
are
basically
protected
by
the
Hesh
or
so
they
count
the
count
witness
its
unique
by
the
Hesh.
Nobody,
no
no
yeah
and
can
create
an
item
with
the
same
hash
with
your
data
so
basic.
B
It
has
no
risk
that
your
entry
for
the
data
map
would
be
occupied
by
somebody
else
who
who
squat
your
hash
and
because
the
data
never
removed.
There
is
no
requirement
for
having
a
public
key
in
the
data
which
occupies
quite
a
lot
of
data
sizes.
Oh
yeah,
those
lightweight
storage,
doesn't
use
public
keys
and
signatures,
and
so
on.
It's
really
just
a
pure
data
enter
and
the
hash
and
and
this
other
new
data
items
which
get
persisted
like
the
compensation
requests
and
the
row
things
they
will
be,
especially
the
compensation
requests.
B
You
can
also
remove
a
compensation
requests
so
yeah.
We
need
to
take
the
protection
so
and
we
are
not
expecting
that
we
can
millions
of
compensation,
requests
and
moat
items,
so
that
will
be
more
limited
data
amount.
So
we
have
a
little
bit
less
strict
requirements
or
and
that's
a
new
type
of
persisted
data
structure
which
just
got
added
a
few
weeks
ago
and
I
said
before
we
had
all
day
to
get
shipped
in
the
binaries.
B
B
Another
important
part
is
the
threading
model,
as
in
general,
in
biscuit
ride
to
avoid
multi-threading
as
far
as
possible
when
it's
not
really
required
because
of
edit
complexity
and
risks,
and
we
are
usually
mapping
or
from
reddit
context
to
the
user
threat,
which
is
in
their
disk
application.
The
UI
thread
at
the
point
where
we
are
where
we
are
having
interfaced
to
the
other.
They
are
to
the
other
layers
and
in
the
connection
class,
for
instance,
that
is
where
you're
receiving
the
message
that
on
message
handler
is
doing.
B
Then
the
map
tab
the
mapping
to
the
listeners.
So
when
you
want
to
listen
to
a
message
from
a
peer-to-peer
network,
you
get
your
handler
called
on
the
UI
thread,
because
the
connection
class
is
doing
the
mapping
with
or
yeah
doing
the
mapping
to
the
user
thread.
So
you
don't
have
to
deal
with
threading
but
of
course,
in
the
peer-to-peer
network
we
have
quite
a
lot
of
threading,
especially
the
connection
class
has
to
be
in
this
ratty
contact
contact
context
to
earth
startup
code
is
is,
of
course,
also
handling
handled
in
threads.
Persistence.
B
Yeah
we
have
now
I
think
he
is
not
showing.
Unfortunately,
we
have
a
new
developer,
who
will
join
very
soon
and
who
will
focus
on
peer-to-peer
network.
He
has
just
finished
his
PhD
or
under
university
in
Grasse
as
well.
He
is
a
friend
of
a
band
who
is
Thunder
net
layer,
library
and
he
specialized
on
security
and
networking,
so
a
perfect
candidate
for
that
area
and
yeah.
So
what
what
an
open
task
I
mean?
Basically,
that
peer-to-peer
network
works
very
reliable
and
stable
the
problems.
B
What
we
had
in
the
past
months
were
mainly
caused
by
tor
I
mean
we
did
add
a
few
improvements,
so
we
yeah
we
added
a
little
bit
more
resilience
against
those
issues,
but
of
course,
I
mean
there's
a
lot
to
improve
and
to
to
to
increase
scalability
and
so
on.
Our
Eddie
here,
just
a
few.
A
few
issues
were
which
obvious
work
for
me,
but
there
for
sure
much
more.
What
we
can
do
I
mean
the
most
important
thing
in
my
opinion
at
the
moment
is
we
have
really
good
monitoring
that
we
are
really
knowing?
B
Where
are
the
weak
points
where,
where
the
problems
mean
I
started
in
December
monitoring,
but
that's
very
primitive
on
monitoring,
it
has
to
be
improved
or
changed
and
yeah
to
have
really
good
monitoring
to
know
the
health
and
the
state
of
the
peer-to-peer
network
to
know,
for
instance,
how
many
live
notes
we
have
I
have
a
method
how
to
check
out
the
live
notes,
but
basically
it's
inter
monitoring.
It's
not
visible
at
the
moment,
and
that's
of
course
needed
when
we
do
some
improvements.
B
So
that
will
be
a
task
for
this
or
for
this
role
as
well,
and
also
to
get
more
in
contact
with
the
tour
community
that
they
are
aware
of
our
project,
to
exchange
more
knowledge
and
so
on,
and
or
back
that
also,
we
are
running
more
a
tour
relays,
so
we
are
supporting
two
to
four
networks
in
greater
extent
to
add
more
details,
protection
in
a
connection
glass.
There
is
already
quite
a
few,
but
we
should
get
more
DDoS
protection.
There's
one
very
interesting
feature
which
has
started
to
implement
at
the
beginning.
B
That
was
also
at
the
idea
board
from
band
is
to
use
a
kind
like
a
proof
of
work
against
DDoS
or
against
civil
attacks.
That
are
the
costs
for
creating
a
hidden
service.
Is
time
cost?
So
when
you
are
starting
up
a
load,
it
takes
your
minimum
half
a
minute
until
you
are
fully
connected.
So
we
could
use
this
as
a
kind
of
like
a
proof
of
work
yeah
when
somebody
would
like
to
start
up
thousands
or
millions
of
super
nodes
to
attack
the
network.
B
So
we
could
use
this
as
kind
like
her
that
you
are
not
allowed
yeah
that
you
are
basically
prevented
from
a
lot
of
features
when
you're
not
fully
connected
I
mean
that's
already
in
a
way
are
implemented
there
because
yeah,
you
cannot
send
data
and
you
cannot
do
a
lot,
but
it's
not
really
done
under
network
layer.
So
to
have
this
deeply
integrated
in
a
network
layer
would
be
a
good,
a
good
thought.
B
B
Another
important
part
would
be
to
get
test
frameworks.
That's
a
quite
a
tricky
area
to
have
really
a
framework
for
where
you
can
test
peer-to-peer
networks.
There
are
so
simulation
and
test
frameworks
out,
I'm,
not
very
familiar
with
them
and
I
would
not
owe
em
Phasis
the
results,
because
they're
always
different
like
the
real
network.
But
of
course
it
would
help
a
lot,
especially
when
starting
to
do
optimization
would
be
good
to
really
have
has
a
tool
to
check
if
the
optimization
willing
to
optimize
the
network,
because
it's
very
tricky
and
I've.
B
Seen
in
the
past,
when
I
tried
to
optimize
things,
it
turned
out,
it
was
doing
the
opposite
to
make
the
network
most
more
unstable,
for
instance,
to
try
to
decrease
a
little
bit
traffic
by
decreasing
the
number
of
users
where
you
were
relaying
your
message
when
you
are
even
a
message
in
you
and
up
the
data
on
your
and
you
are
connected
to
a
to
pierce,
your
own
lay
forwarding
it
to
for
I.
Think
random,
Pearson
and
I
played
a
little
bit
around
with
this
number
and
I.
B
Think
I've
decreased
it
to
something
like
three
or
two
and
then
discovered
that
or
we
got
more
problems
with
lost
messages
that
mailbox
messages
which
are
very
important
in
a
trade
protocol.
When
you
are
sending
your
peer
message
and
the
PIA
never
received
the
message,
because
the
message
was
not
well
propagated
there
than
the
trade
basically
ends
up
in
a
dispute
because
they
are
appear,
I
never
received
a
message
that
you
have
started
to
payment
and
open
the
dispute.
B
So
it's
very
critical
there
to
have
really
a
very
high
redundancy
and
reliability
and
to
play
around
with
this
parameter
can
be
very
dangerous.
So
I
have
experienced
that
or
even
quite
trivial
change
where
assault
yeah,
nothing
can
happen
and
nothing
can
go
wrong
and
it
was
wrong.
It
thinks
reword.
The
changes
was
very
conservative
after
this
and
to
have
some
test
frameworks
and
our
monitoring
would
be
a
good
precondition
to
start
to
optimize
the
area
network,
but
there
are
for
sure
a
lot
of
requirements
for
optimizes,
especially
from
scalability.
The
very
beginning.
B
I
did
some
tests
with
just
spinning
up
hundreds
of
nodes
and
hundreds
of
offers
and
and
check.
Basically,
if
the
European
network
can
handle
this
load
because
specially
the
offers
they
are,
when
you
have
hundreds
of
users
with
hundreds
of
offers,
every
offer
get
refresh
every
few
four
minutes.
So
it
creates
quite
a
lot
of
traffic
and
this
this
traffic,
this
churn,
can
can
be
a
little
bit
or
heavy
for
the
nodes
and
the
nodes
can
get
flooded
too,
with
too
much
traffic
and
then
maybe
the
DDoS
protection
get
triggered.
B
When
you
are
receiving
too
much
messages
from
peers,
you
start
to
block
it
or
to
throttle
it
down
and
so
on.
So
it
can
cause
troubles
and
there
are
for
sure
limits
for
the
scalability
I.
Don't
think
it's
a
big
problem,
because
we
will
never
have
thousands
or
millions
of
office
because
office
which
stick
to
long
are
so
after
their
network.
So
our
we
have
to
have
a
mechanism
that
office
should
get
taken
very
quickly
and
we
have
already
switched
the
fees
with
the
percentage
based
fees.
B
So
when
you
make
an
offer,
which
has
a
very
big
distance
to
the
market
price,
when
you
create
an
offer
with
20%
distance
to
market
price,
it
will
probably
stick
there
for
months
and
will
cause
just
cost
for
offer
for
the
network,
because
every
peer
has
to
we
have
to
relay
or
all
the
time
this
offers.
But
nobody
has
really
a
benefit
because
nobody
wants
to
take
the
offer.
B
For
that
reason,
such
an
off
is
very
expensive
and
with
that
we
have
to
kind
of
like
it,
this
incentive
for
the
users
that
they're
creating
such
offers-
and
there
shouldn't
be
thousands
of
such
office,
because
yeah
they're,
probably
not
too
many
users
who
are
willing
to
pay
a
very
high
trading
fee
for
that.
So
we
start
in
place
when
you
have
an
offer
with
a
wish
which
is
close
to
the
market
price.
B
So
you
can
basically
subscribe
to
your
interested
in
money
era
or
in
your
office
or
in
dollar
office,
but
you're
not
interested
in
office,
for
instance,
and
with
that
we
could
kind
of,
like
yeah
optimize
the
network
that
you
are
not
get
flooded
from
too
many
offers
only
from
those
office.
What
you
are
really
interested
in
and
said
before,
we
sigh
to
be
would
be
interesting
approach
to
see
or
if
we
yeah,
if
we
have
a
ability
to
add
support
for
i2p,
either
a
sec
only
as
a
backup.
B
Yeah
here
are
some
references.
There
is
some
technical
overview
that
are
outdated
or
I
wrote
this
when
I
was
building
the
peer-to-peer
network
three
years
ago.
Basically
so
are,
of
course
there
have
been
some
changes,
but
the
very
basics
are
still
intact,
so
they
have
not
been
really
fundamental
changes,
so
it
gives
a
kind
like
a
rough
overview.
But
probably
this
presentation
I'll
give
us
a
better
overview
and
of
course,
the
code
in
the
code.
B
We
are
using
that
library
from
parent
who
is
maintaining
it
and
basically
I,
don't
have
to
deal
with
this,
but
that
basically
it
delivers
you
all
their
wiring
up
of
the
Tor
binary,
which
the
tour
control
with
the
CCP
Channel
and
so
on,
and
we
are
just
starting
this
and
then
get
the
socket
out
of
it
and
talking
with
the
socket
yeah
I
think
I
covered
the
most
important
parts.
We
are
still
more
or
less
good
in
time,
15
minutes
yeah
are
there
any
questions.
B
B
A
A
B
The
same,
it's
the
same
with,
let
me
sink
so
technically,
it's
the
same
connection.
It's
the
same
connection
of
Berto,
it's
not
the
own.
It's
not
a
new
circuit
I,
don't
know
I
mean
the
main
reason
why
I
separated
it
in
the
code
was
because
the
inbound
connections
that
somebody
else
connect
you
and
starts
the
connection,
and
that
has
less
importance
like
an
outbound
connection.
When
you
start
earth
connect
to
somebody
like
in
a
trade
protocol.
B
So
when
you're
in
the
peer
management
when
I
start
disconnecting
peers,
because
we
have
too
many
connections,
we
are
first
disconnecting
they're
inbound
connections
and
also
for
the
DDoS
protection,
because
our
yeah,
when
you
get
attacked
or
so
they
are
inbound
connection,
so
there
are
connections
where
the
attacker
tries
to
make
hundred
thousand
hundreds
of
connections
to
you.
So
those
have
less
importance
like
the
outbound
connections,
the
connection
what
you
actively
are
doing
so
maybe
they
should
be
a
little
bit
yeah.
B
It
did
it's
a
little
bit
like
active
and
passive
connections
active
or
the
out
bonds.
What
you're
doing
passive
are
those
where
you
are
going
to
get
connected
from
outside,
and
the
active
connection
have
a
more
of
a
higher
priority
in
the
peer
handling.
That's
the
main
reason
why
they're
separated,
but
technically
their
bond
connection.
Okay,.
A
B
No
I
don't
remember
exactly
and
details
now
how
it's
handled
in
the
code
or
but
I
think
it
when
first
you're
looking
up.
If
you
have
it
in
one
of
the
maps
of
the
inbound
or
outbound,
and
only
if
you
don't
have
it,
you
are
adding
it.
Usually,
when
you
get
a
request,
you
are,
you
are
adding
it
to
inbound
connection
map.
B
B
B
The
peer-to-peer
network
is
intentionally
designed,
not
general-purpose
like
I
to
PF,
for
whatever
I
was
looking
in
the
time
when
I
was
looking
for
alternatives
for
a
peer-to-peer
network
when
I
discovered
that
their
DHT
solution
was
not
working,
I
was
looking
another
existing
approach.
It
like
I
to
P
that
had
to
be
IP,
FS
or
bit
message.
I
looked
also
closer,
but
at
the
end
none
of
those
were
really
a
good
fit
all
the
BitTorrent
itself.
B
They
were
built
with
other
use
cases
in
mind
which
are
not
our
main
use
cases
and
our
important
use
cases
like
data
protection
was
not
part
of
that
of
those
projects.
Usually
bit
message
had
a
lot
of
problems
with
the
proof
of
work.
It
was
really
slow
and
had
too
much
cost
with
this
and
but
yeah.
When
there
are
some
new
use
case,
like
I,
have
at
the
moment
with
the
Dow
that
there
are
a
requirement
for
persisting
data
which
are
data
protected
yeah
we
have
to
edit,
but
basically
we
have
to
be
conservative.
B
We
have
to
be
really
sure
that
it's
not
possible
to
add
it
to
existing
data
structures
and
the
existing
features
and
yeah.
But
I
said
it's
not
built
with
the
idea
to
have
a
general
curve
was
not
good
where
everybody
can
use
for
whatever
they
want
to
do.
Of
course
you
can
get
developed
in
this
direction
at
some
point.
But
yes,
at
the
moment
there
is
no
requirement.
We
don't
have
to
defer
Susanne
to
do
extra
stuff.
B
From
the
code
side,
it
doesn't
has
any
dependency
to
the
best
domain,
so
the
dependency
is
only
too
common
not
to
core
and
in
common,
is
basically
also
nothing
which
is
really
very
it's
nothing
which
is
really
bisque
to
mean
relevant,
so
the
peer-to-peer
network
does
not
basically
know
about
bisque.
Of
course,
it's
designed
with
bisque
in
mind,
but
yeah.
B
B
A
A
I'll
just
say
thanks
as
well
from
my
side
and
yeah,
we'll
do
another
one
of
these
next
week,
either
probably
Wednesday
or
Thursday.
We
can
find
it
out
but
yeah,
let's,
let's
try
to
keep
the
cadence
of
once
a
week
going
forward
and
and
I
just
want
to
reiterate
what
you
were
saying
there
a
moment
ago,
Manfred
about
the
nature
of
PvP
Network
and
the
best
p2p
repository
as
it
exists.
It
is
definitely
purpose-built,
like
you
say
right,
it's
not
intended
to
be
all
things
to
all
comers.
You
don't
have
general-purpose
peer-to-peer
network.
A
A
If
I
was
somebody
wanting
to
focus
on
this
I
would
be
very
interested
in
bisque
because,
as
you
found
out
the
hardest
way
possible,
Manfred
I
mean
literally
took
years
right,
going
iteration
after
iteration
of
you
know,
trying
to
find
a
suitable
solution
in
the
simple
fact
was
that
wasn't
right
actually
had
this
had
to
be
invented
and
I.
Think
it's
something
you
know
I
think
you're
modest
about
it.
That's
a
virtue,
but
I
think
this
I
mean
it's
really
be
proud
of.
B
It
was
actually
the
hardest
part
of
the
application
and
all
to
them,
probably
the
most
interesting
or
most
complex
I
mean,
of
course,
a
bit
compiled
as
well,
but
which
bitten
it's
already
old
there
and
we're
just
using
a
library
but
I
think
it's
the
biggest
challenge
for
building
a
application
yeah
when
you
don't
have
a
reliable,
well
working
peer-to-peer
network
you're
suck-
and
there
are
not
too
many
out
I
mean
I
to
be-
is
maybe
more
in
this
time
to
three
years
ago.
It
was
still
much
money,
but
it
was
already
kinda
like
prototype.
B
It
was
in
good
shape,
but
I
think
it
was
not
peddle
test
it
at
all
and
I'm,
not
sure
if
it's
now
and
yeah
BitTorrent,
of
course,
that
super-paddle
tested,
but
that's
very
special
purpose
for
large
data
storage
stuff,
but
doesn't
hangeul
a
use
case
as
well,
and
there
was
not
the
tht.
They
have
quite
a
lot
of
I'm
really
happy
that
we
get
rid
of
it,
because
that
would
have
had
a
lot
of
censorship.
B
Persistent
problem,
it's
very
easy
to
attack
a
DHT
network
with
civil
attack
or
Eclipse
attack,
and
there
are
basically
no
good
solutions
against
for
protecting
against
this.
The
best
solution
is
to
make
it
cost
you
that
you
have
to
pay
up
with
Bitcoin,
basically
to
get
you
no
doubt
whatever,
but
that
then
a
big
barrier
for
entrance
and
this
company
we
swore
to
get
all
the
privacy
from
tor.
That's
fantastic
and
I
mean.
Maybe
some
people
are
familiar
with
this
to
approach.
B
Arbitration
chat
system
is
basically
the
same.
It's
a
messaging
system
use
and
they'd
third
year
you
sent
messages
even
attachments
to
the
other
peer
with
or
with
this
mailbox
messages.
So,
even
when
the
peer
is
not
online,
he
receives
it's
a
piece
of
you
can
you
could
extract,
you
can
build
a
messaging
application.
Out
of
that
puts
they
are
already
influenced,
would
not
be
really
too
hard,
and
we
have
it
already
in
integrated
in
biscuit
could
be
a
standalone
application,
yeah
yeah
I'm,
really
looking
forward.
B
Also
that
we
found
I'm
really
lucky
that
we
found
our
florian
this
new
developer,
who
will
start
hopefully
soon
he
was
just
finishing
his
work
on
the
university
enter
and
PHP
and
her
and
yeah
probably
the
next
week.
So
so
he
will
start
to
get
into
the
code
and
are
probably
monitoring
and
so
and
yeah
great
to
have
really
specialists
in
the
fields
there
and
also
would
be
good
to
get
more
in
connection
with
the
to
a
community.
B
I
mean
I'm
I
started
a
little
bit
in
in
like
check
out
the
CCC
to
talk
with
with
the
tour
guides.
Answer
was
very
insightful,
but
yeah
would
be
good
that
they
are
a
little
bit
more
aware
of
how
approach
it
and
maybe
can
help
us
when
they
see
we
should
do
some
stuff
different
or
so
to
whatever,
to
use
it
to
a
network
in
a
better
way.