►
From YouTube: IRTF Open Session (ANRP Awards)
Description
In this open session of the Internet Research Task Force (IRTF), two of the winners of the Advanced Networking Research Prize (ANRP) will give their talks.
See https://datatracker.ietf.org/meeting/97/agenda/irtfopen/
and https://irtf.org/anrp
A
B
B
All
right,
this
is
the
IIT
fip
our
policy.
It's
basically
the
same
one
as
the
IETF
IPR
policy,
meaning
with
you
make
a
contribution.
You
are
required
to
disclose
any
IPR
that
you
hold
or
that
a
organization
that
you
work
for
holds
that
you
know
have
personal
knowledge
of,
and
we
request
that
you
file
other
IPR
and
contributions
that
you
know
about.
So
you
should
know
all
this.
If
you
don't,
you
should
really
read
it.
B
The
slides
are
uploaded.
My
slides
were
very
late,
so
apologize
for
that,
but
they're
up
now
you
can
dial
in
remotely.
You
probably
figured
this
out
already.
We
have
two
mailing
lists.
One
is
an
announced
list
that
sees
very
little
traffic.
Basically,
when
you
RFC's
get
published
and
new
group
start
and
stop
there's
a
discussion
list
that
sees
also
very
few
traffic
because
nothing
much
gets
discussed
that
is
I
ITF
wide.
Most
of
it
is
on
the
individual
research
group
lists.
B
Today
we
have
the
usual
like
five
to
ten
minutes
of
me,
telling
you
what
has
happened
in
the
last
couple
months,
followed
by
the
two
main
events,
which
are
the
applied
networking
research
prices.
These
are
the
last
two
prizes
for
2016.
We
had
six
in
total
because
we
had
a
pretty
large
number
of
submissions
arm
and
the
2017
selection
is
actually
going
on
at
the
moment,
maybe
a
little
bit
more
about
this
later.
So
where
are
we?
We
have
ten
research
groups
meeting,
which
is
a
lot.
B
We
have
11
charted
right
now,
so
almost
all
of
them
are
media
meeting,
except
for
Gaia,
including
a
new
one,
which
is
RG
measurement
analysis
for
protocols,
and
we
have
a
proposed
network
machine
learning.
Working
group
meeting
that'll
be
their
last
meeting
as
a
proposed
group,
and
after
this
me
and
Ellison,
who
is
going
to
succeed,
me
will
sit
down
and
decide
whether
we
want
to
charter
them
formally
or
whether
they
have
run
out
of
runway.
B
You
are
in
the
RTF
open
meeting
on
Thursday
morning
the
IAB
reviews,
one
of
the
research
groups
traditionally
during
each
meeting
this
time.
It's
the
human
rights
protocol
considerations
group,
which
had
a
meeting
earlier
today,
which
was
very
interesting
out
here.
I.
Wasn't
there
bit
more
nap
RG
since
it's
a
new
group
right?
So
this
is,
you
can
think
of
this
if
you're
been
around
long
enough.
This
is
the
second
iteration
of
the
imrg,
the
internet
measurement
research
group.
B
So
the
idea
is
that
there's
a
lot
of
measurement
efforts
going
on
in
academia
but
also
outside,
but
but
the
results
are
not
really
widely
used
to.
You
know
dr
engineering
and
and
the
ideas
to
bridge
that
gap.
So
there's
a
lot
of
things
that
are
in
scope
here
that
are
listed
in
these
bullets,
they're,
going
to
have
a
meeting
later
on
the
last
few
meetings
that
they
had
as
a
proposed
group
of
very
interesting.
So
I
have
sort
of
high
hopes
that
they
keep
up
the
history
of
interesting
presentations
that
I've
managed
to
invite.
B
We
have
a
new
addition
to
these
slides
that
I'm
going
to
do
from
that
one
until
I
stepped
on
march,
which
is
called
research
group
news.
So
far
we
have
one
news
item.
Unless
there's
something
in
my
inbox
that
I
missed
the
HRP
seated,
I
just
mentioned
human
rights
protocol
considerations.
They
have
their
first
draft
going
into
last
call
next
week.
It'll
be
a
long
last
call
and
they
asked
for
wide
reviews
and
it's
an
interesting
document,
because
it's
no
not
very
technical,
but
it
is.
B
You
know
interesting
in
that
it
makes
observations
about
how
protocol
design
can
impact
fundamental
human
rights.
So
in
it
it
is
broadly
applicable
to
basically
everything
we
do
in
the
IR
ITF
an
idea.
So
if
you
have
nothing
better
to
do
on
the
flight
home,
it's
so
good,
it's
a
good,
read
and
send
needles
on
the
guys
feedback.
B
We
have
an
IR
TF,
RFC
stream.
It
is
not
quite
as
busy
as
the
IETF
stream,
but
we
did
manage
to
publish
for
rfcs
since
the
last
meeting,
three
of
which
came
from
the
information-centric
networking
research
group
and
one
came
from
Gaia
their
first
document
and
a
few
more
in
the
queue
from
various
other
research
groups,
so
probably
going
to
see
a
few
more
by
Chicago.
B
These
are
the
four
that
were
published.
You
know:
research
challenges
nice
en
video
streaming
over
IC
and
security
considerations
for
ACN
n
gaya
has
a
tech
sauna
me
doc,
youment
on
alternative
network
deployments,
which
is
actually
an
interesting
read.
B
Last
time,
I
said
that
the
IB
wanted
feedback
on
the
candidates
for
I
RTF,
chair,
studying,
March
2017
you've
sent
feedback
that
was
very
helpful
to
the
IAB.
In
making
a
decision,
the
selection
was
Alison
Mencken,
who
is
not
really
a
newbie,
but
will
take
up
this
role.
There's
a
little
bio
there
that
those
of
you
in
the
first
row
can
probably
even
read
very
happy
with
the
selection.
Thank
you
for
volunteering
and
I
hope
you
have
a
good
time.
I
had
a
good
time,
she's
sitting
up
there.
B
All
right,
we
have
two
things
that
start
with
a
polite.
Networking
research
one
is
the
workshop
and
one
is
the
prize.
This
is
about
the
workshop,
so
the
URL
is
wrong
because
I
copied
us
from
Berlin,
so
it
should
be
2017
there.
So
we're
doing
this
again.
We
did
the
first
one
in
Prague
we're
doing
one
in
2017.
So
this
is
a
academic
peer-reviewed
workshop.
It's
it's
technically
co-sponsored
by
ACM
sigcomm.
B
We
have
to
tpc
chairs
for
next
year,
which
are
Renata
Teixeira
and
your
Cod
they're
both
on
the
sitcom
Executive
Committee,
which
tells
you
a
little
bit
that
sikkim
actually
takes
this
as
important
proceedings
are
open
access
and
the
plan
is
or
the
we
will
co-locate
us
with
TF
in
Prague.
It
will
be
on
the
Saturday
before
the
ittf
meeting
in
Prague.
It's
a
full
day
event.
B
The
call
for
papers
should
be
out
soon,
probably
still
this
year,
I'm
guessing
the
submission
deadline
will
be
somewhere
in
the
februari
time
frame,
maybe
march,
on
peer
review
takes
a
month.
So
notifications,
probably
April
May,
it's
it's
an
interesting
event.
So
if
you,
even
if
you
don't
send
anything
in,
you,
should
maybe
think
about
attending
it.
You
can
look
on
the
web
page
for
the
2016
meeting
to
see
what
the
papers
and
presentations
were
armed.
It
was
a
pretty
successful
event.
B
So,
if
you
are
in
Prague
on
Saturday,
because
you
wanna
arrive
early
to
get
rid
of
the
jet
lag
before
the
craziness
starts.
Come
to
this.
The
second
thing
that
starts
the
plight.
Networking
research
is
the
prize.
We've
been
doing
this
for
five
years
now,
so
this
should
not
be
new
anymore.
It's
together
with
I
sock.
We
had
53
nominations
for
2016,
which
is
the
largest
ever
for
2017.
The
nomination
period
just
ended
and
I
think
we
have
4d,
but
one
was
a
double
nomination,
so
we
have
39
that
entered
this
election.
B
B
So
I'm
expecting
we're
going
to
have
again
a
very
tough
decision
to
pick
a
few
of
these
for
the
prize
selection
committee
is
some
mighty
effort,
some
irt
efforts,
and
by
now
we've
also
added
a
few
of
the
usually
senior
professors
from
the
awarded
papers
over
the
last
few
years
and
I
think
we're
going
to
keep
doing
that
arm
so
that
we
actually
have
academic
representation
on
the
committee,
specifically
from
those
sort
of
people
that
seem
to
have
successfully
done
interesting
research
in
the
past.
Also
they
can
help
us
pick.
B
The
next
crop
and
part
of
the
award
is
the
talks
that
are
going
to
follow
this,
and
I
should
say,
comcast
is
again
extended
to
sponsor
this
for
I,
don't
know
how
many
years
were
committed,
but
at
least
at
least
one
year.
So
thank
you
very
much.
If
other
organizations
would
like
to
support
the
ni
p
met
fort
from
I
sock
will
be
super
thrilled
to
talk
to
you.
You
might
even
buy
you
a
beer
or
something,
but
but
all
kidding
aside
right.
B
So
this
helps
us
because
there
is
a
cost
associated
with
this,
because
it's
a
travel
grant
to
come
here.
It's
potentially
a
second
repeat
invitation
right.
So
a
lot
of
the
prizewinners
actually
go
on
and
participate
regularly
and
and
part
of
the
prizes
that,
if
you
start
to
get
engaged,
we
bring
you
back
a
second
time,
even
without
a
talk
and
without
an
award,
and
that
has
happened.
Actually,
I
think
we
had
26
winners
up
until
today.
B
Oh
no,
what
28
now
but
26
of
them
11
came
back
on
Isaac
money
and
13
came
back
on
their
own
dime,
so
there
is
quite
a
sort
of
good
history
of
pulling
people
in
through
the
price
and
and
the
sponsorship
helps
us
bring
the
people
back
right.
So
with
two
talks,
both
of
them
are
or
used
to
be
student
from
Olivia
Bonaventure,
which
is
pretty
impressive.
B
So
here's
a
two
prizes
going
to
you
see
Lavar
graduates
if
I
see
that
right
so
congrats
I
guess
to
do
to
the
group
and
and
even
more
impressively
deck
on
completely
different
topics,
one
as
well
Tea,
Party,
CBD,
other
one
is
routing.
So
that
is
also
very
interesting.
So
one
is
for
flipping
I!
Think
that's
the
one
we
go
first
and
the
second
one
is
a
application
control
for
a
multipath
TCP.
So
congratulations.
B
C
B
C
B
C
Sorry
really
close,
is
it
better
hi
I'm,
Olivia
I'm
from
Belgium
from
you,
Silva
supervise,
but
yet
another
review,
and
this
is
joint
work
with
Stephanie
avicii,
Shore
van
bebber
and
Jenny
4x4
whoo.
Well,
I've
worked
as
at
least
I
serves
me.
You
can
see
so
we'll
talk
about
fibbing,
so
some
people
yesterday
told
me
is
disciplined
yes,
it
is.
You
can
switch
to
the
next
one,
and
so
we
call
this
fitting
because
we
want
to
lie
to
the
rotors
to
control
their
fib
literally.
C
C
So
if
we
start
with
this
simple
this
simple
network,
so
we
have,
while
the
usual
results,
icons
that
are
from
cisco
and
a
bit
heavy.
If
we
switch
your
next
one,
it's
easier
for
us
as
we
search
or
to
just
use
graphs,
so
note
for
the
routers,
with
a
particular
name
and
edges.
Yes
again,
switcheroo
next
one,
and
so
in
for
routing.
C
When
you
we
speak
about
interior
traffic
in
introd
them
in
traffic,
we
use
link,
set
a
gps,
typically
such
as
first
pay
for
sis
and
these
protocols
basically
compute,
and
try
to
share
a
the
network
topology
in
order
to
can
switch
in
order
to
compute
the
shortest
path
on
the
graph
to
for
a
traffic
in
the
network.
So,
for
example,
here
I
had
a
prefix,
so
some
reachability
information
advertise
on
the
control
panel
on
the
left
and
the
protocol
managed
to
compute
their
shoulders
path.
C
32
for
the
traffic,
giving
the
pattern
shown
of
the
right
you
can
switch
so
and
traditionally,
with
this
set
of
protocols,
we
have
what
we
call
a
descriptive
minute,
descriptive
management
process.
So
that
is,
you
have
the
operator,
maybe
you
that
has
to
figure
out
what
he
wants
to
do.
You
can
switch
and
then
that
that's
to
figure
out
how
to
do
it
so
I
want
to
have
this
particular
policy
in
my
network.
I
want
this
set
of
pass,
and
now
I
have
a
bunch
of
routers
that
I
need
to
configure
so
I'll
provision.
C
The
configuration
for
each
of
them
you
can
switch
and
from
there
this
is
a
disputed
protocol,
so
we
have
every
router
that's
able
to
independently
compute
the
shortest
path
in
order
to
further
traffic,
as
we've
done
before.
So
they
take
some
input,
drive
fib
and
twist
and
push
them
in
the
line
card.
You
can
switch
so
in
the
research
role.
There's
been
actually
quite
a
lot
of
interest
over
the
past
few
years
towards
Sen
su
software-defined
networking.
So
we
had
people
open
flow
eight
years
ago.
I
know
the
the
new
trend.
C
The
new
hot
topic
is
before
so
the
wageworks
there
is
that,
instead
of
having
a
distributed
control
plane,
we
have
a
centralized
one.
So
some
software
running
some
when
the
networks
and
then
super
simple
devices
like
switches,
for
example,
you
can
switch,
and
so
in
this
management
model
we
have
what
we
call
a
declarative
management
model
for
the
operators,
because
the
operators
just
has
to
think
about
what
he
wants,
the
networks
to
do
and
so
express
requirements.
You
can
switch
to
this
centralized
control
plane.
C
So
let's
say
one
or
two
servers
that
need
some
configuration
input
and
this
centralized
controller
will
then
to
hold
the
heavy
lifting
on
its
behalf.
So
in
this
case
compute
the
part
that
match
the
requirements,
the
five
entries
that
need
to
be
set
up
on
every
single
switches
and
purge
these
fit
and
twist
towards
the
switches.
So
that's
on,
do
it,
but
there's
like
a
lot
of
errors.
Well,
that's
there's
one
errors
that
goes
to
this
to
the
controller
and
a
lot
of
errors
that
goes
out
to.
Basically
we
have
a
bottleneck
in
the
network.
C
So
we
have
this
huge
program,
that's
a
single
part
of
failure
and
while
they
are
quite
a
lot
a
lot
of
other
challenges,
it
was
yet
to
be
solved.
You
can
switch.
So
basically,
we
have
this
state-of-the-art
in
the
sense
that
we
have
on
the
left.
What's
been
major
mainly
used
up
to
today
so
distributed
protocols.
So
do
is
our
super
scalable,
while
the
internet
works
today
and
we
have
a
BGP
routing
table
that
has
over
600,000
prefixes
I
think
these
numbers
speak
for
themselves.
C
These
are
fairly
robust,
I
mean,
usually
you
have
access
to
the
internet
and
it
works,
and
on
the
other
hat
on
the
other
side,
we
have
at
the
end,
with
a
lot
of
all
the
promises
like
it's
easier
to
manage
because
they
just
want
centralized
controller,
it's
more
flexible,
because
we've
we've
opened
flowable,
for
example,
to
do
more
than
just
destination
base
forwarding.
You
are
not
restricted
anymore
to
plain
shoulders
by
floating,
because
that's
what
the
device
supports
you,
you
do
have
some
gains
there,
but
you
can
switch
but
yeah.
C
This
can
we
have
a
price,
and
so
the
focus
of
this
work
is
well.
We
are
looking
what's
in
between
these
two,
so
we
are
trying
to
find
a
bit
of
a
middle
ground
approach
you
can
switch,
which
we
call
fibbing
a
and
where
we
aim
to
be
as
manageable
and
close
to
as
flexible
as
pure
as
the
in
solutions,
but
we
still
want
to
be
able
to
scale
properly
and
to
be
robust
to
failures.
C
So,
for
example,
if
you
take
the
SD
in
wonder
easier,
the
easiest
failure
to
understand
is
you
lose
the
controller
where
nothing
happens
anymore.
The
switch
is
under
table
to
recover
some
themself,
you
use
on
a
GP,
you
break
a
router,
while
all
the
others
are
able
to
take
over.
You
can
switch,
and
so
that's
what
we
that's
what
we
are
going
to
cover
today,
which
is
well.
How
do
we
get
to
make
this
fitting
this
architecture?
C
That's
a
bit
in
media
in
between
these
two
paradigm
in
the
network
go
ahead,
so
we
start
from
the
same
basic
idea
in
a
sense
that
we
want
to
be
as
manageable
as
sdn.
So
we
have
a
centralized
control,
plane,
a
control
program,
a
single
interface
for
the
operators,
but
we
still
want
to
keep
the
distributed
aspect
of
the
control
plane
for
scalability
and
with
your
business
concerns
you
can
switch
so
in
this
particular
model.
We
have
the
operator
that
same
as
far
as
en
just
expressed
some
requirements
to
the
controller.
C
So
it's
easy
for
him.
It
just
has
to
state
what
he
wants
and
doesn't
need
to
care
how
its
implemented,
so
the
controller
itself
will
figure
out
how
it
what
are
the
paths
that
need
to
be
set
in
the
network
in
order
to
implement
these
requirements
you
can
skip,
and
then
we
want
to
play
with
this
part.
This
distributed
control
planes
which
has
still
which,
for
which
we
still
want
to
be
in
charge
of
programming
the
flips.
Basically,
so
we
don't
want
to
have
or
controller
touching
each
in
the
individual
hardware.
C
So
how
do
we
do
this?
While
we
use
a
well-defined
Appy
API,
which
is
the
IGP
message
themselves?
So
if
we,
if
you
think
of
of
SPF,
these
are
the
Ellises
that
you
have
so
these
are
in
a
way
some
form
of
API,
because
when
you
have
our
I
GPS
in
the
network.
Well,
you
know
that
each
of
them
will
only
be
able
to
run
shortest
path
computation,
but
they
will
do
so
on
a
particular
graph
that
when
for
this
graph
is
built
by
the
AGP
message
that
they
exchanged
between
each
other.
C
So
if
we
manage
to
send
submit
stage
that
we
control
the
intuition
here
that
we
can
basically
modify
the
input
of
the
computation
in
order
to
control
the
output,
which
is
well
the
set
of
paths
that
are
found
in
a
network,
we
can
switch.
So
how
does
does
it
work?
Well,
if
you
go
back
to
the
sample
network
we
had
before
so
in
this
network,
we
would
like
the
blue
the
path
towards
the
blue
/
ethics
to
take
a
different
focus
to
move
around
so
early
on
in
the
network.
C
You
add
every
single
path
from
a
be
going
to
router
to
towards
see-
and
in
this
case,
would
like
just
the
blue
prefix
to
go
all
the
way
around
so
a
bit
more
on
the
left
in
order
to
select
another
path
for
a
single
perfect.
So
that's
something
you're
not
you're,
normally
not
able
to
do
with
normal,
a
GPS,
because
both
prefixes
are
reachable
through
the
same
routers
and
well.
One
of
the
condition
for
GPS
to
work
is
that
we
don't
want
loops.
C
So
we
cannot
distance
run
path
for
these
prefixes,
but
that's
what
we
want
to
do
in
this
case.
Let's
assume,
for
example,
that
the
brute
prefix
requires
the
traffic
to
go
through
a
firewall.
That's
only
located
on
the
link
between
our
running
out
and
r2.
So
we
need
to
be
able
to
do
this
sort
of
distinction.
You
can
can
do
it
switch
sorry.
So,
with
this
information,
that's
been
fed
to
the
controller
by
the
operator.
C
It's
going
to
figure
out
what
are
the
modification
that
I
need
to
do
to
the
2d,
a
GP
topology
in
order
to
implement
this
new
path.
So
in
this
case
it
decides
you
can
switch.
So
in
this
case
it
decides
to
send
an
8gb
message
with
some
information
to
the
router
closes
to
itself,
so
through
the
AGP
adjacency.
This
is
a
link-state
protocol,
so
this
match
this
single
message:
that's
been
sent
by
the
controller
will
get
flooded
throughout
the
whole
network
and
even
truly
reach
every
single
router
in
the
network.
C
So
that's
easy
for
the
controller
to
speak
to
anyone.
It
just
has
to
send
it
to
its
closest
neighbor
and
the
protocol
will
relay
the
message
for
him.
You
can
switch
and
there
does
the
the
figuring
path,
so
we've
sent
a
message
asking
to
create
a
fake
node,
so
a
fake
router
in
the
topology
that
we've
called
FA
and
that
also
asked
to
create
a
fake
link
that
links
this
new
node,
this
new
router
to
an
existing
one.
C
So
if
you
just
look
at
this
topology
with
a
set
of
weight
of
link
weights
that
are
on
the
graph,
if
you
do
the
work
from
the
control
plane,
you
can
skip,
you
are
able
to
compute
some
new
shortest
path
on
the
graph.
So
if
you
take
the
shortest
path
towards
the
red
/
fix,
while
nothing
has
changed.
However,
if
you
compute
the
shortest
path
towards
the
blue
prefix
well
over
all
of
a
sudden,
you
prefer
to
use
for
router
a
the
next
step
fa.
C
So
this
new
fake
note
that
we've
added
on
on
dhcp
topology.
So
that's
well.
That
sounds
great
like
this,
but
that
does
a
control
plan
that
doesn't
tell
you
anything
about.
Where
is
the
traffic
going?
This
is
not
a
rear
rotor,
it's
not
evil
connected
to
a
real
in
physical
interface.
So
that's
what
enough
go
to
the
next
slide.
So
there
was
a.
There
was
a
third
line
on
the
adipic
on
da
gb
message,
which
was
a
physical
mapping
between
this.
C
These
fake
elements,
this
fake
node,
it's
wiggling
attached
to
the
router,
a
and
a
real
in
a
real
physical
element,
in
this
case
a
r1.
So
with
this
we
information
we
have
modified
the
control,
plane
topology.
So
we've
added
a
fake
note,
a
fake
note,
with
a
fake
lint
or
will
to
a
physical
router
with
speci.
We
have
selected
a
cost
that
caused
some
new
shoulders
path
to
be
computed,
and
then
we
have
some
information
on.
What's
the
actual
physical
interface,
I
need
to
use
to
reach
that
fake
node.
C
C
There's
motive,
that's
there's
more
to
it!
So
we've
started
with
a
single
fake
note
that
we
have
added
on
the
graph
in
order
to
change,
to
trigger
one
next
up
change.
We
could
do
it
more
often
than
that
you
can
skip
so
we've
change
a
requirement
to,
and
we
want
no
to
implement
a
path
that
goes
from
a
to
R
12
hour
4
and
10
20
to
blooper
ethics,
and
so
in
this
case
we
need
to
do
to
next
up
changes.
C
So
we
need
to
go
on
well
to
first
cause
a
to
change
its
net
up
to
pick
a
longer
and
longer
path
to
Egypt
prefix.
But
we
can.
We
need
to
do
we're
willing.
We
need
our
one
to
do
exactly
the
same,
so
we
can
say
we
can
send
twice
similar
information
to
add
new,
fake
notes
on
the
graph
new
fake
router
on
the
graph
with
chosen
cast
and
cool
in
cause.
C
You
can
skip
and
goes
the
path
to
be
constructed
and
to
follow
again,
these
new
shortest
path
that
we
have
on
the
control,
plane
and
sugar
on
the
data
pin
as
well,
there's
even
more
to
it.
So
if
added
to
fake
notes
on
the
graph
and
well,
if
you
think
of
a
network
that
has
let's
say
thousand
routers,
if
you
want
to
make
a
very
complex
path,
you
probably
don't
want
to
send
a
thousand
ls8
a
thousand
sgp
messages
to
go
to
implement
that
particular
path.
C
C
So
if
you
come,
if
you
look
yourself
on
the
right,
you
will
see
that
with
the
chosen
cost,
only
the
routers
that
are
supposed
to
change
an
X
up
will
do
so
and
we'll
do
it
accordingly
to
the
requirement
from
the
operator
still
leaving
the
path
towards
the
bird
prefix
unchanged.
You
can
go
to
the
next
one.
C
C
So
these
typologies
on
the
control
plate
side
with
the
new
elements
super
quickly,
so
to
give
a
rough
approximation
on
a
number
on
the
network
with
about
2,000
edges
and
three
on
three
hundred
routers
were
able
to
compute
a
rather
huge
amount
of
change
in
a
couple
of
milliseconds
rom,
two
or
three
anyway,
able
to
reduce
heavily
the
number
of
fake
note.
The
number
of
igp
messages
that
we
want
to
send
in
a
network
in
about
a
second
so
back
playing
with
these
two
algorithm,
to
gather
variable,
for
example,
to
react
quickly
to
failures.
C
So
if
we
see
a
failure,
we
are
able
to
compute
the
new
desired
state
of
the
network
within
milliseconds
and
optimize
it
over
the
longer
run
to
reduce
the
overhead
on
the
routers
can
see.
So
we
want
we
set
at
the
star
that
we
wanted
to
keep
the
desirable
properties
from
the
igp.
So
the
fact
that
this
scale
a
lot
to
huge
networks
and
that
they
are
robust
to
failures.
So
we
still
have
this.
We
still
using
entrada
main
routing
protocol
as
a
as
the
basis
for
control
plane.
C
So
we
are
still
able
to
withstand
failures
if
all
of
a
sudden
or
controller
fails,
while
network
is
still
working,
it's
still
an
energy
beer,
the
classical
one
that
you've
been
using
well
to
know-
and
we
can
do
a
bit
more
than
this-
you
are
able
to
implement
some
form
of
security
policies
such
as
Phil,
closed
or
open.
So
if
the
controller
fails
do
I
want
this
particular
traffic
flow
to
still
exist
in
the
network,
or
should
it
be
dropped
because
I
can
no
longer
in
force
the
sake
of
security
policies.
C
So
any
set
of
paths
that
does
not
create
a
loop
on
the
/
destination
basis
and
when
we
say
/
decision
basis,
that's
a
knight
be
perfect,
so
a
/
16,
/,
120
/,
full
/,
android
and
28
if
you're
in
ipv6.
So
we
have
a
resolution
that
ranges
from
a
single
physical
machine
to
a
whole
network
with
any
set
of
paths
without
affecting
the
others.
So
we
believe
that's
pretty
useful
actually,
and
so
we
have.
C
We
have
a
few
use
cases
that
we
developed
in
the
paper
and
in
other
labs
and
so
on
and
I'll
present
you
one
here.
You
can
skip
again
actually,
and
so
in
this
case
we've
built
as
a
demo
that
we
presented
a
few
month
ago
where
we
targeted
the
issue
with
flashcards
networks.
So
these
sudden
surges
of
traffic
so,
for
example,
one
of
your
friend
of
Facebook,
so
a
new
video.
That
is
that
we
really
liked
shade
it
to
all
of
its
friend.
We
did
the
same
in
Ovilus
all
of
a
sudden.
C
However,
you
see
want
the
people
to
be
able
to
see
that
particle
video.
So
what
are
the
solutions
if
you
skip
to
the
next
one?
Well,
currently,
operators
have
basically
not
sure
no
choices
to
over
provision,
so
it's
super
hard
to
protect
against
an
event
on
the
network
that
lasts
for
a
couple
of
minutes
and
probably
never
happens
again.
So
yeah
you
buy
back
bigger
pipes
and
that's
all
you
can
do
realistically.
So
we
wanted
to
look
a
bit
at
heard.
C
The
ability
to
program
an
AGP
could
help
to
solve
this
issue,
because
the
main,
the
main
reason
why
you
cannot
really
do
something
more
clever
than
just
over-provisioning
here,
is
that
if
you
want
to
change
the
fighting
set
of
GI
GP
as
of
now,
while
you
have
to
reconfigure
all
device
independently,
but
now
we
had
the
ability
to
do
it
centrally.
So,
if
you
go
to
next
one,
and
so
we
build
some
experiments
while
in
a
controlled
environment,
and
so
we
had
a
few
videos.
C
If
you
put
the
video
servers
on
the
tour,
if
you
attach
these
to
the
two
routers,
a
and
B
the
12
that
I've
drawn
on
the
right,
if
all
of
a
sudden,
you
have
a
lot
of
clients
hidden
behind
the
same
perfect
so
in
the
same
residential
area
that
all
start
to
want
to
access
videos
coming
from
that
part
of
the
network.
Well,
in
this
case,
we
have
a
bottleneck.
You
have
a
single
path,
that's
available
from
a
and
B
towards
see.
These
are
the
sames.
C
While
you
just
sum
up
the
load
over
the
links,
if
you
get
a
number
of
people,
that's
large
enough.
Well,
you
have
a
huge
link
utilization
in
balance,
the
network
or
congestion.
Depending
on
how
big
it
is.
You
can
skip
Sophie
being
lets
us
program
paths
in
the
network,
while
there's
an
easy
fix
here,
so
we
won't.
We
see
that
all
of
a
sudden
we
have
an
increased
load
over
the
same
central
path.
While
why
can't
we
just
spread
the
load,
so
link
set
a
GPS
party
simply
well
by
default
natively.
C
So,
in
this
case,
the
goal
is
well
I
want
to
use
multiple
paths,
for
example
starting
a
Trotter,
be
towards
rather
see
well,
let's
add
a
new
path
in
the
control
plane,
which
has
the
same
cost
than
the
old
one.
So
if
you
look
at
the
fig
Rutter,
that's
been
attached
to
the
router,
be
it's
advertised
with
a
cost
of
two
which
is
the
same
cost
than
the
old
PAP
you
had,
which
was
be
all
to
see,
so
no
rotor,
be
at
least
on
the
control.
C
C
If
we
do
that,
we're
able
to
spread
the
load
evenly
across
two
paths
can
go
to
the
next
one
and
we
can
do
even
more
than
that
by
adding
more
and
more
information
on
the
control
plane.
We
have
able,
for
example,
here
to
cause
an
even
load
to
introduce
an
evil
load
balancing
on
rotor
a
so.
If
I
had
two
different
fake
notes
on
rotor,
one
I
see
two
different
IP.
C
C
So
the
path
that
goes
from
B
to
towards
r3
to
spread
the
load
once
that's
the
first
reduction,
the
first,
the
first
drop
in
bandwidth,
consumption
that
you
have
on
the
graph
so
at
roughly
31
streams
and
then
again
when
we
started
to
add
more
and
more
demands
from
the
clients
behind
water.
Seeped
words,
the
second
streaming
service,
while
we
added
another
path,
starting
at
rotture,
a
to
decrease
again
d
/,
the
/
link
load.
C
So
if
we
do
this,
while
we
basically
were
able
to
increase
the
available
bandwidth
towards
rotor,
see
starting
at
rotor
a
and
B,
so
a
very
congestion
in
this
case
and
we've
been
to
do
to
react.
Like
this
in
milliseconds,
if
we
start
over
from
the
idea
of
flash
crowds
in
the
network
well,
once
the
event
is
done,
what
once
people
no
longer
want
to
access
the
content,
but
we
can
just
remove
these
extra
fake
elements
that
we
had
had
it
previously
in
the
control
plane
and
so
stop
using
this
new
paths.
C
So
we're
able
to
change
the
state
of
the
network
quite
fast
and
just
to
fix
temporarily
whatever
was
happening
based
on
the
policy
that
we
have
from
the
operators
should
go
to
the
next
one.
So
I've
said
that
we
made
an
experiment
for
that.
So
implicitly,
this
means
that
we're
able
to
get
to
well
a
working
prototype.
C
So
we
have
running
code
with
something
that
does
this
idea
of
lying
two
routers
in
order
to
change
the
next
step
selection,
and
so
this
works
using
SPF,
so
we're
leveraging
some
features
found
in
that
particular
GP,
because
at
selling
set
IGP.
It's
actually
super
easy
for
us
to
bootstrap
the
controller,
so
we
plug
it
into
a
physical
router
and
we
receive
the
whole
topology
directly
from
the
Ellises.
C
This
know
this
before
yeah
this
one.
This,
however,
one
single
draw
back
from
this,
which
is
the
fact
that
we
don't
want
yet
to
modify
the
prodigal,
which
is
that
we've
seen
on
the
previous
slides
that
sometimes
we
want
to
chain
to
change
these
fake
notes.
So
we
want
to
trigger
multiple
next
up
changes
for
the
same
destination
prefixes.
C
So
there's
one
sketch
with
type
of
Alice's
is
that
which
is
that,
if
you
want
to
send
multiple
lacs,
announcing
rich
ability
for
the
same
prefix
and
don't
want
these
to
collide,
you
basically
have
to
have
to
provision
several
ospf,
router
IDs,
and
so,
when
you
think
about
the
controller
that
we
have
in
the
network,
it's
actually
multiplexing
a
lot
of
visual
routers
to
generate
all
the
needed
router
IDs
in
order
to
chain
all
of
this,
that's
one
of
the
limitation.
We
currently
have
you
the
solution
which
will
see
what
people
could
get
for.
C
Cleaner
solution
should
go
to
next.
One
we've
run
extensive
benchmark,
also
held
by
the
cisco
lab
in
brussels,
and
so
we've
tested
this
with
a
hundred
thousand
Alice's
that
were
fed
to
the
routers.
In
order
to
change
to
cause
farting
changes
and
basically
there
was
no
impact
on
the
shortest
path
computation.
So
this
whole
process
of
sending
a
GPS
sending
control
in
message
to
change
paths,
etcetera
is
basically
for
free,
at
least
on
the
controller
side,
because
well
that's
one
of
the
quirks
of
the
ospf
implementation.
That's
a
vector
addition.
C
It
heats
basically
no
ram
on
the
routers,
so
10,000
LSA
it's
about
10
megabytes
of
ram,
so
that's
close
to
nothing
and
causing
triggering
one
except
change
is
almost
a
constant
time,
at
least
on
the
rotors
we've
measured
and
we're
able
to
send
which
to
cause
100,000
next
up
changes
in
the
fib
in
about
90
seconds.
So
that's
close
to
the
nine
hundred
microseconds
per
single
next
up
change
that
we
want
to
set
up.
So
it's
a
cliche
/
fast
to
do
this.
C
I've
mentioned
I've
started
to
mention
some
of
the
drawbacks,
so
we
using
unmodified
ospf.
Well,
we
first
of
all
are
limited,
but
what
I
space
of
SPF
offers?
So
we
are
not
yet
close
to
this
whole
idea
of
adding
a
fake
note
and
then
a
destination
we
kind
of
have
to
group
them
together
and
plug
them
on
the
router.
C
So
if
you
really
look
into
the
algorithm's,
while
there
are
different
index
passivity
models
and
it's
actually
a
bit
harder
to
do
whatever
we
want
with
pure
SPF
than
what
we
wanted
in
practice
practice,
there's
one
huge
limitation,
which
is
that
is
PF
ranks,
link
set
of
the
ties
meant,
depending
on
the
on
their
type
and
we'll
ignore
type,
five
or
seven
LSS.
If
it
has
received
another
route
toward
the
same
prefix
of
a
preferred
time
so
literally,
for
example,
an
intra-day
main
road.
C
So
to
get
this
to
work,
while
we
had
to
do
some
bit
of
engineering
just
to
show
that
it's
feasible
into
practice,
but
obviously
would
like
to
get
something
cleaner
in
the
end
and
I've
spoken
a
lot
about
ospf.
Well,
that's
because
it
doesn't
work
yet
we're
ice
is
so
we
don't
have
this
ability
to
send
a
message
that
gives
us
reach
ability
towards
an
IP
prefix,
given
an
IP
next
up
and
some
metric.
C
We
believe,
there's
value
to
expand
this
and
make
something
cleaner
skip
to
d1,
and
so
just
to
conclude,
so
we've
started
to
look
at
what
we
could
do
with
disability
to
program
path
na
in
nigp
and
the
more
we
looked
at
did
what
the
more
were
able
to
do
so,
for
example,
we've
seen
that
remedy
able
to
modify
path
and
cost
almost
independently
on
the
prefix
basis.
Well,
there
are
a
lot
of
protocols
that
we
are
on
the
path
and
the
curse
that
are
chosen
by
JP
I
gp's,
for
example.
C
The
BGP
decision
process
has
some
criterion
that
depends
on
the
cost
of
the
rod.
So
by
doing
against
some
feeling
there
we
are
about
to
control
the
output
of
the
BGP
decision
process.
So
in
order
to
control
a
bit,
what
would
be
the
path
chosen
by
the
transit
traffic
in
my
network
and
make
these
vary
over
time?
C
We
believe
that
having
the
ability
to
do
this
kind
of
exception
rotting
can
simplify
the
configuration
process
on
the
routers,
because
you
could
get
simpler
configuration
with
a
lotta
CCMP
new
networks,
example
and
program,
the
very
specific
path
that
you
need
for
the
proof,
the
few
prefixes
that
recur
special
treatments.
Maybe
the
data
centers,
the
entire
data
centers
traffic
that
require
a
separate
path.
And,
finally,
this
ability
to
program
the
network
within
milliseconds
opens
at
least
for
us
a
new
new
domain.
C
Why
we
are
able
to
do
real-time
traffic
engineering,
and
so
there
is
a
paper
at
the
upcoming
connects.
So
that's
in
about
a
month
that
implements
optimal
traffic
splitting
in
the
network
at
all
times,
so
that
ensure
that
you
are
always
able
to
maximize
the
link
utilization
in
your
network,
which
is
fairly
interesting
in
which
leverage
fibbing.
Actually,
the
closing
remarks
we
have
is
that
we've
built
this
whole
system
centered
on
the
fact
that
while
we
have
this
rotor
sitting
in
your
desk,
what
can
we
do
with
this?
C
D
Matthews,
so
I
have
2
comments.
First
of
all,
your
approach
looks
actually,
while
they're
similar
to
segment
routing.
Have
you
I,
don't
know
if
you've
looked
at
that
or
not,
but
it
has
similar
problems
and
similar
solutions
to
that.
So
just
the
suggestion
to
investigate
that.
The
second
comment
is
that
this
approach
works
well
for
certain
types
of
ISPs.
D
C
D
C
We're
actually
playing
with
segments
writing
on
the
side
quad
a
lot
more,
especially
most
specifically
the
ipv6
a
tablet,
because
that's
d1,
we
are
able
to
implement
the
internet
colonel,
so
we
believe
there's
different
use
case
for
both
so
segment
rotating
requires
you
to
attach
a
header,
a
stack
of
Bibles
to
every
single.
Well,
if
you
have
long
lift
flow,
you
might
just
not
want
to
do
it
for
a
reason
or
another
doing
an
even
load
balancing
with
Sigma
working,
at
least
for
the
solution.
C
We've
had
a
Pinto
yesterday
that
there's
anniversary
for
that,
but
in
our
solution
required
to
do
some
stateful
load,
balancing
which
was
not
very
stable
on
the
ennos
and
we
are
able
to.
We
have
this
idea
of
triggering
multiple
next
up
changes,
Network
right
with
a
single
message,
whereas
for
segment
version
you
have
to
reach
out
to
every
single
ingress.
So
that's
a
separate
part,
but
yeah
segment.
Routing
is
something
we
look
into
it
because
it
does
quite
11,
interesting
stuff
as
well
for
the
l3,
VP
and
stuff.
C
D
D
You
know.
You
still
want
to
influence
how
things
go
between
l3
VPN
instances
there,
which
may
be
different
than
what
you
want.
You
know
traffic
other
types
of
traffic
like
management
traffic,
which
is
typically,
you
know,
sent
a
straight
IP
traffic
around.
So
I,
don't
think
you
know-
and
you
know
in
that
case
you
probably
also,
if
you,
if
you
do
that
to
affect
one,
then
you
would
in
fact
affecting
you
know.
If
you
have
multiple
l3v
pnc
presume,
we
just
want
to
change
one.
C
Is
something
we
also
do
so
we,
since
we
control
the
cost,
we
can
change
the
curse
that
BG
pcs
between
the
different
addresses
and
so
by
again
doing
some
craft
engineering.
We
can
choose
bid.
You
set
cause
bgp
to
select
to
prefer
one
ingress
over
another
and
wrote
the
traffic
towards
a
egress
differently
and
goes
the
traffic
to
follow
it.
Basically,
but.
D
So
you're
talking
about
again,
it
sounds
like
you're
talking
about
changing
the
IGP
cost
effect,
how
bgp
changes.
But
I'm
saying
you
know,
at
least
from
my
point
of
view.
I
don't
think
that
would
be
the
way
an
operator
would
want
to
do
it.
Instead,
they
like
to
affect
the
actual
l3
VPN
routes
themselves
for
a
particular
l3
VPN,
but.
C
B
E
C
So
the
md5
mentioned
that
we
made
in
the
paper
is
a
statement
that
yeah.
Maybe
it
was
poorly
phrased,
but
we
have
the
controller
that's
seen
by
all
the
routers
in
the
network.
Just
as
one
of
them,
it
is
tablature
normal
RGB,
a
GP
adjacency,
so
we
shared
the
md5
key
between
the
controller
and
all
the
routers
and
from
then
on,
it's
seen
as
the
same
ospf
area.
E
B
B
F
Total
for
me,
okay,
like
this
all
right,
so
this
is
a
joint
walk
with
gravy.
Do
tell
Sebastian
ballet
clothes
on
oops
like
this.
Yes,
Raphael
Buddha
and
already
been
around
30
so
and
I
self,
but
announcements
from
UCL.
So
let's
go
to
the
first
side,
so
we
are
going
to
see
first,
the
very
simple
scenario
in
which
we
have
a
smartphone
on
the
left
side
and
also
on
the
right
side,
and
you
want
to
establish
the
connection
between
your
smartphone
and
the
server.
F
So
if
you
are
using
plain
TCP,
what
will
happen
is
that
you
will
have
to
do
establish
one
pass
next
slide.
Please
and
you
will
have
to
choose
between
the
Wi-Fi
or
next
tide.
You
will
use
the
LTE,
but
you
will
not
be
able
to
use
the
two
together
so
with
MP
TCP.
What
you
will
be
able
to
do
is
on
the
next
slide.
You
will
be
able
to
use
the
two.
F
F
The
next
slide
please,
and
the
idea
is
that
we
do
not
change
the
socket
interface
so
for
the
applications.
This
is
exactly
the
same
and
you
don't
have
to
do
any
modification
inside
the
application.
It
will
oddly
use
MPD
CP
by
default,
and
this
is
completely
hidden
to
the
application.
So
next
I
please
this
one
one
of
the
objective
design
in
mp
tcp.
F
We
want
to
support
a
modified
application.
So
let's
go
to
the
next
side,
but
there
are
various
uski
is
in
reality.
So
first
you
may
have
different
plans.
So,
on
the
first
side
we
saw
that
we
could,
it
could
be
a
smartphone,
but
it
could
be
able
to
router
or
next
side
again
a
smartphone
or
it
could
be
also
a
laptop
on
the
next
slide.
That's
not
the
only
thing
that
could
happen.
Some
other
stuff
may
also
be
different.
F
So
if
you
go
to
the
next
side,
sorry
about
this,
you
will
have
to
switch
it
up.
So
the
the
server
side
will
also
be
quite
different.
So
in
the
simple
serio
scenario,
you
have
only
one
server,
but
you
could
be
in
a
case
where
you
have
a
load
balancer.
So
this
may
also
be
a
problem
for
MP
tcp.
On
the
next
slide,
you
can
see
that
you
could
also
have
multiple
type
of
interface,
so,
for
instance,
you
can
have
a
Wi-Fi
interface,
which
is
really
different
from
a
satellite
link.
F
F
We
can
also
see
that,
even
if
you
have
all
of
that,
you
may
also
have
some
interface
that
have
cost
constraint
constrained.
Sorry,
you
may
also
have
security
constraint
and
so
on.
So
if
you
go
to
the
next
slide,
you
will
see
the
big
picture
you
have
all
of
this.
That
could
be
different
use
cases
for
MP
TCP
and
the
conclusion
of
this
is
the
on
the
next
slide.
We
probably
need
to
adapt
MP
TCP
based
on
the
context.
F
So
if
you
have
really
different
context,
probably
we
should
try
to
tune
MP
tcp
to
adapt
to
the
different
needs.
So
let's
go
to
the
next
slide.
We
will
first
now
introduce
a
bit
more
DMP
tcp
for
everyone
just
to
have
a
basic
idea
of
how
it
works,
and
especially,
we
will
talk
about
the
implementation
inside
the
Linux
kernel.
So
our
next
slide,
we
can
see
that
NP
TCP
itself
inside
the
Linux
kernel
is
already
divided
in
small
modular
and,
for
instance,
we
have
two
specific
model,
which
is
which
are
the
past
manager
and
schedule.
F
So
those
are
two
specific
model
that
we
can
change
inside
the
colonel
to
adapt.
The
behavior
of
mptp
based
on
the
need,
so
on
the
next
slide,
we
will
start
to
explain
what
is
the?
What
are
the
responsibilities
of
the
past
manager,
so,
first,
the
past
manager
will
establish
what
is
called
the
master
so
flow,
so
master
cyl
flow
is
the
first
up
flow
established
for
the
MP
TCP
connection.
F
So
you
you
can
see
here
that
you
exchange
the
key
and
both
the
client
and
the
server
keeps
the
the
key.
So
on
the
next
slide.
We
can
also
see
that
the
past
management,
the
vast
majority
sponsible,
to
establish
the
additional
sub,
though
so,
to
establish
an
additional
central.
You
have
another
MP
TCP
option
which
is
called
join.
You
will
use,
we
will
reuse,
sorry,
the
key
that
you
exchange
in
on
the
masters
of
flow
to
join
the
the
MP
TCP
connection,
okay
and
our
next
slide.
F
You
can
also
see
that
you
are
able
to
play
with
what
is
called
back
up
sub
flow,
so
back
up
is
not
really
defined
in
Saudi
FC
just
back
up
and
then
the
implement
the
implementation
needs
to
know
what
to
do
with
those
kind
of
sub
flow.
So
this
is
also
a
decision
of
the
past
measure.
The
next
slide.
We
can
also
see
that
the
past
manager
will
receive
some
events
from
the
connection.
F
So
in
this
one,
when
you
have
a
queue
of
packet
to
send
over
multipath
TCP
connection,
you
first
have
to
decide
which
packet
will
be
sent
next.
So
it's
not
clear
that
you
want.
You
want
to
send
the
head
of
the
of
the
of
the
queue
first,
because
if
the
tooth
of
flow
have
really
different
characteristic,
it
may
be
interesting
to
send
them
out
of
order
such
that
they
will
arrive
in
order
at
the
receiver.
So
first
you
pick
the
the
packet
that
you
want
to
send
in
the
second
time.
F
On
the
next
slide,
we
decide
on
which
sub
floor.
We
want
to
send
this
packet
once
we
have
once
we
have
decided,
we
send
the
packet
over
the
sub
flow
on
the
next
slide
and
we
add
a
specific
multipath
TCP
option
that
will
map
the
TCP
sequence
number
to
the
MP
TCP
sequence
number.
So
we
have
two
level
of
sequence
number
and
inside
the
NPT
cdss
option,
we
have
the
mapping
between
the
TCP
sequence
number
and
the
MP
TCP
sequence
number.
So
we
can
go
to
the
next
side.
F
So
if
you
are
just
a
small
summary
of
everything
that
is
modular
I'll
already
explained
all
the
little.
So
we
can
switch
to
the
next
side,
and
this
is
a
great
thing.
We
know
that
MP
TCP
is
modular,
so
you
can
switch
some
part
of
it
inside
the
colonel,
but
the
problem
is
that
it's
still
inside
colonel
and
it's
still
really
hard
to
develop
new
module
inside
the
colonel.
So
we
want
to
bring
all
the
modularity
from
the
colonel
and
push
it
up
to
the
to
the
user
space.
F
So
the
idea
really
of
this
work
is
try
to
move
the
pass
manager
from
the
colonel
side
to
the
user
space.
So
the
result
of
it
should
be
that
it
should
be
more
easy
and
more
flexible
for
the
user
to
develop
new
pass
manager
and
it
will.
It
should
ease
the
development.
So,
let's
go
to
the
next
side,
and
now
we
will
briefly
describe
the
solution
at
a
really
high
level
just
to
have
an
idea
of
how
it's
implemented.
F
We
have
one
part
that
is
implemented
inside
the
kernel
space
and
the
other
bodies
implemented
this
side
user
space.
So
let's
go
for
the
kernel
space.
We
have
a
module
that
replace
the
past
manager
on
top
of
the
already
existing
interface
inside
the
colonel
and
instead
of
taking
any
decisions.
Let's
go
to
the
next
slide.
What
we
do
instead
of
taking
any
decision
if
we
have
an
event
from
the
apt
speaker.
No,
we
translate
this
event
into
a
message
and
we
will
put
this
message
on
to
a
net
link.
F
F
So
this
is
an
example
of
even
that
we
could
have
so,
for
instance,
the
mptp
channel
could
say:
hey
I've
got
a
su
flow
that
is
destroyed
and
the
module
instead
of
taking
any
decision.
We
just
pack
the
information
inside
a
message
and
send
it
to
user
space.
So
on
the
other
side,
what
we
can
also
do
is
listening
to
the
message
cut
that
comes
from
the
user
space,
so
the
model
itself
will
listen
from
use
of
space
and
you
can
receive
new
messages
that
it
will
translate
into
MP
TCP
actions.
F
So
the
example
for
this
one
on
the
next
slide
is
create
a
new
subfloor,
so
the
user
space
will
tell
a
I
need
a
new
subfloor.
We
will
pack
the
message:
send
it
the
module
and
the
module
will
translate
the
message
in
2mb,
tcp
actions
suggest
such
that
a
new
subfloor
will
be
created.
So
after
that
we
have
on
the
next
slide
the
user
space
implementation.
F
So
in
user
space
we
just
add
a
library
that
is
able
to
listen
to
the
applications
themselves
and
the
application
can
send
a
message
to
the
library
and
the
library
will
translate
the
message
to
nothing.
So,
let's
go
for
the
example.
So
again,
just
the
library
just
listening
and
will
translate
it
all
the
way
down
to
who
NP
tcp
on
the
other
way
to
the
next
slide.
F
We
have
also
the
same
thing
on
the
reverse
pass
and
the
library
itself
allows
an
application
to
register
call
backs
so
that,
if
an
events
happen,
it
will
call
the
application
to
tell
to
tell
the
application.
I
I've
got
a
new
event
so
again,
I
think
we
have
a
small
example
on
the
next
slide.
So
this
is
the
same
as
previously,
so
the
supplies
destroy
it
goes
through
the
module,
then
to
the
library
in
the
library
itself
call
back
the
application
to
tell
the
application
that
we
have
a
sub
from
that
is
destroyed.
Alright.
F
So
let's
go
to
the
next
slide.
So
no,
we
have
the
basic
solution
that
has
been
described.
We
will
go
to
to
simple
use
case
to
simple
use
cases.
So
if
you
have
any
question,
I
forgot
to
tell
you
these
acts
now,
because
I
didn't
go
into
details
for
the
implementation.
But
if
you
have
any
question
about,
the
implementation
is
asked
right
early.
So
for
the
use
case
we
have
two
of
them
will
file.
We
will
start
with
the
first
one.
Let's
go
for
the
first
one.
F
You
are
in
a
simple
scenario
where
you
have
a
smartphone
and
you
have
a
Wi-Fi
access
and
lt
access,
and
you
want
to
connect
to
your
server.
So
in
today's
implement
implementation,
you
will
use
the
default
pass
manager,
which
is
called
the
full
mesh.
This
pass
manager
will
open
a
soup
flow
over
the
default
interface
on
the
next
slide
and
then
immediately
after
you
will
also
open
another
sub
flow
on
the
backup
interface,
even
though
it
does
not
plan
to
use
it.
F
So
it
will
still
open
this
subproblem
so
know
if
the
smartphone
user
is
moving
away
from
the
access
point
and
then
yes,
sorry
for
it
yep.
So
if
the
smartphone
users
is
moving
away
from
the
access
point,
what
could
happen
is
the
sub
flow
could
become
really
really
slow
and
if
the
sub
flow
is
still
there
and
PT,
CP
will
still
consider
it
as
active,
and
you
will
not
send
any
data
on
the
backup
interface.
F
One
of
the
things
that
is
important
here
is
that
slow
is
somehow
subjective
and
we
don't
know
where
they
went
to
consider
subfloors
slow.
So
this
might
be.
This
may
depends
in
the
application,
for
instance.
So
if
you
are
using
a
small
application
that
does
not
exchange
mini
data,
slow
can
be
enough,
for
instance,
but
if
you
are
looking
at
youtube
video,
for
instance,
maybe
just
a
few
kilobyte
will
not
be
enough
and
you
will
need
to
use
the
backup
interface
so
we'll
go
to
the
next
one.
F
E
F
So
now
we
have
implemented
something
different.
We
propose
something
different
and
we
implemented
inside
user
space
and
what
we
propose
is
to
use
the
same
default
interface
establish
the
subfloor
just
as
before,
but
now
in
this
case
we
are
not
using
the
backup
interface.
We
will
not
establish
any
sub
sub
flow
on
this
one.
So
let's
go
to
next
and
then
we
still
have
the
same
issue.
The
smartphone
is
still
moving
away
from
the
Wi-Fi
access,
but
now
we
detect
that
the
subfloor
is
considered
as
slow.
F
So
what
we
will
do
now
is
open
a
new
subfloor
on
the
backup
interface
and
we
do
not
describe
it
as
a
backup
and
we
will
start
to
use
it
immediately.
So
now
we
have
those
those
two
different.
So
the
difference
is
we
do
not
establish
the
backup
in
the
interface
immediately
and
then,
when
we
detect
the
slow
sub
flow.
We
open
a
news
of
when
we
use
it
immediately.
F
So
if
you
look
at
the
sequence,
number
evolution
of
the
two
days
pass
manager.
What
will
happen
so
here
we
have
a
graphic
with
the
sequence
number
on
the
y
axis
and
the
time
on
the
x-axis,
and
what
you
can
observe
here
is
the
sequence
number
at
the
MP
TCP
level.
So
in
green
you
have
the
master
soup
flow
and
in
red
you
have
the
backup
sub
flow.
F
So
here
you
can
see
that
we
are
not
using
at
all
the
backup
interface,
even
if
it's
there
and
the
Greens
of
flow
is
still
in
use,
even
though
it's
really
slow
and
we
do
not
manage
to
terminate
the
connection.
So,
let's
go
to
the
next
slide,
so
here
we
see
all
the
TCP
with
transmission.
So
at
this
point
we
know
that
there
is
a
problem,
but
we
do
not
do
anything
and
the
time
to
exchange
the
file
is
really
really
long.
F
So,
let's
go
to
next
slide
and
I
already
say
that
the
backups
of
flow
is
not
used,
but
if
we
use
a
new
definition
of
backup,
what
will
happen
is
at
start.
It's
exactly
the
same.
We
open
the
mastership
flow,
we
exchange
a
lot
of
data
and
then
after
one
second,
we
have
losses
if
equal
to
the
next
slide,
we'll
see
them.
We
have
losses
and
the
RTO
is
growing
and
then
MP
TCP
is
well.
F
The
user
space
base
manager
detect
that
the
RTO
is
growing
and
we
will
open
a
new
sub
flow
and
then
we
will
use
immediately
this
user
flow
and
we
will
be
able
to
terminate
the
connection
in
this
case
in
four
seconds
yeah.
So
in
this
case
we
complete
the
exchange
of
the
file
and
on
the
previous
case
we
did
not
complete.
F
So
that's
the
end
of
the
first
use
case
that
we
wanted
to
present
and
the
benefit
in
this
case
is:
you
can
probably
save
some
energy
on
the
smartphone,
because
you
don't
need
to
open
and
use
of
doing
immediately.
You
will
probably
save
money
because
you
still
have
to
in
the
first
class
you
see
left
to
exchange
the
scene
in
these
kids.
In
some
some
of
the
case,
you
will
not
even
exchange
the
scene
and
then
you
will
have
a
faster
recovery
so
on
the
next
slide,
we'll
go
to
the
second
to
scale.
F
So
this
one
is
totally
different.
Let's
go
to
the
first
side,
so
this
is
a
completely
different
use
case
for
MP
TCP
MP
TCP
could
be
used
when
stands
in
data
in
data
centers,
even
if
the
clients
and
the
server
have
only
one
interface
is
still
possible
to
use
MP
TCP.
So
in
this
simple
topology
we
have
ecmp
on
the
next
side
and
what
we
will
do.
F
We
will
use
the
IP
port
source
and
destination
and
you
will
urge
them
to
to
decide
on
which
pass
you
will
send
the
sub
pro
so,
for
instance,
the
idea
behind
this
one
you
can.
You
can
open
a
first
so
flow
and
we
go
on
the
first
pass
and
then
you
will
open
a
second
step
flow.
You
will
go
on
the
second
pass
and
then
a
third
one
and
fold
one,
and
the
idea
is
that
you
will
aggregate
all
the
values
of
all
the
bus
with
that.
F
So
we
want
to
know
if
it
works
on
that.
So
let's
try
a
small
experiment
again
and
we
use
the
same
topology
and
we
exchanged
a
file
over
this
topology
and
we
measure
the
completion
time,
so
maybe
good
the
next
one.
Yes,
so
we
just
use
five
as
a
parameter
for
n
default,
so
it
means
that
we
will
open
five
sub
flow
on
this
particular
topology.
So
here
the
result
of
the
completion
time
of
all
the
experiment,
and
we
can
see
that
there
are
three
tricky
cases.
So
what
happened
in
this
case?
F
What
will
see
it
on
the
next
slide?
So
there
is
nothing
to
prevent
all
the
sub-code
to
go
to
the
same
pass.
Actually,
because
you
don't
know
what
is
the
ash
function
exactly
so
what
may
happen?
Is
that
also
throw
me
and
on
the
same
path,
and
at
this
point
they
will
not
agree
get
banned
if
they
will
share
the
same
path.
So,
if
also
flow
use
the
same
pass,
you
will
not
gain
anything.
So,
let's
go
back
to
the
result.
He
actually.
What
we
did
is
that
we
found
200
code.
F
Sorry,
we
found
two
out
of
the
four
pass.
Then
we
found
only
we
found
free
on
the
next
slide.
We
found
three
of
the
four
pass
and
then
actually
found
all
of
the
pass
on
the
on
the
last
one.
Okay,
so
can
we
do
something
better
by
implementing
a
new
pass
manager
in
user
space?
Yes,
we
can.
We
can
try
to
do
something,
so
the
idea
is
trying
to
detect
when
two
sub
throws
share
the
same
path.
So
in
this
case
we
want
to
be
able
to
move
the
orange
pass
until
the
second
link.
F
So
how
do
we
do
that?
We
have
a
proposition
so,
instead
of
just
opening
an
nu
sub
flow,
what
we
do
is
we
start
by
opening
the
same
numbers
up
flow,
but
then
every
T
seconds,
which
must
be
defined,
we
will
measure
we
will
just
take
a
look
at
the
pacing
rid
of
all
the
sub
flow
and
then
take
the
sub
flow
with
the
lowest
pacing
rate.
Closing
this
some
flow
and
then
open
and
use
it
flow,
and
the
hope
is
that
we
will
find
the
sub
flow.
F
That
is
on
that
all
the
subfloor
that
are
on
the
same
path
and
then
try
to
find
all
the
paths.
So
let's
go
to
the
next
one.
So
we
retake
the
same
experiment
and
we
compare
the
two
solution
on
the
next
slide
and,
like
we
can
see
here,
is
that
with
all
solution
we
push
the
completion
time
to
the
left
and
we
are
always
small
s
finding
all
the
pass,
but
it
comes
at
a
cost
on
the
next
slide,
because
we
re
establishing
news
of
relief.
Why?
Currently?
F
We
are
often
in
the
slow
start
phase
of
the
TCP,
so
we
are
losing
a
bit
of
time
on
the
best
possible
time,
but
overall
we
are
still
pushing
the
completion
time
to
the
left.
So
we
can
go
to
the
next
one.
So
that's
it
for
the
use
cases,
and
now
we
just
take
a
few
time
few
minutes
to
describe
this
circuit
implementation.
So,
on
the
left
side,
you
have
the
solution
that
has
been
presented
inside
the
paper,
so
you
have
the
specific
model,
the
library
and
in
a
lot
of
stuff.
F
So
this
one
is
quite
huge
and
is
quite
flexible
and
on
the
right
side
you
have
the
circuit
option
solution.
So
this
one
is
much
much
easier
and
actually
what
we
did
is
extending
the
socket
interface
inside
the
Linux
kernel,
so
you
have
a
systems
of
circuit
that
is
already
defined
and
you
have
gettin
sick
and
set
suck
up
for
this
circuit
and
we
extend
those
to
be
able
to
control
MPDC
be
directly
from
the
application.
So
now
you
no
longer
have
all
this
auxiliary
staff.
F
You
have
control
immediately
from
the
application
to
to
the
colonel,
so
it
was
just
a
small
example,
so
this
was
intended
for
the
patent,
so
we
did
it
during
the
I
cotton.
This
weekend
we
use
the
API
and
we
produce
as
some
some
result.
If
you
are
interested,
we
have
a
list
of
result
that
we
had
this
weekend.
So
from
a
see
good,
you
had
just
able
to
create
a
new
structure
and
put
the
address
over
there
and
just
create
a
new
sub,
though
with
a
regular
get
scoped.
So
let's
go
to
the
next.
F
Here
is
the
just
a
simple
list
of
the
things
that
you
could
do
now
in
user
space
through
the
socket
API.
So,
basically,
you
are
able
to
get
a
list
of
all
the
sub,
though
you
are
able
to
know
which
software
use
which
address
and
port,
and
you
are
also
able
to
open
and
close
the
flow
inside
the
user
space
yeah,
let's
go
to
the
next
one.
F
So
in
conclusion,
what
we
add
here
is
a
new
flexible
API
proposal
for
MP
TCP,
past
management,
and
we
have
some
use
cases
to
prove
that
is
possible
to
do,
and
we
think
it
may
be
useful
in
the
future
to
be
able
to
have
more
deployment
for
MP
TCP.
So
another
diplom,
the
deployment
is
quite
small,
even
if
it
started
it's
still
quite
small,
and
we
think
that
with
this
kind
of
API
we
could
have
a
larger
deployment.
So
if
you
want
to
test,
it
is
possible.
Mp
TCP
is
always
available
at
will
be
pasty.
F
F
Yes,
so
when
we
designed
the
API,
we
had
a
lot
of
questions
such
as
what
should
be
the
right
abstraction
and
it's
we
find
that
it's
very
hard
to
get
an
idea
of
what
the
application
will
want.
So,
instead
of
having
a
liar
and
a
high
level
API,
we
started
with
something
simpler
with
the
idea
that
we
could
build
something
more
complex
and
more
abstract
with
this
simple
API.
B
So
it
seems
like
the
application
will
need
to
gain
a
whole
lot
of
knowledge
about
the
different
scenarios
it
can
be,
and
in
order
to
do
this
effectively
right
I
mean
the
data.
Centers
may
be
a
special
case,
because
there
you
have
a
pretty
rigid
topology,
but
but
an
application
that
runs
on
an
end
system.
That's
you
know
we
carry
around
all
right
could.
F
F
So
one
of
the
use
case
that
we
did
not
present-
it
was
the
streaming
use
case.
So,
for
instance,
if
you
know
that
you
need
minimal
bandwidth,
you
can
stick
to
one
sub
for
as
long
as
you
have
the
minimal
bandwidth
to
exchange
the
file
to
to
get
the
video
streaming
and
if
you
know
that
you
will
be
too
slow.
You
start,
for
instance,
to
open
an
user
flow
inside
the
application
to
get
fast
enough,
so
that
the
video
is
not
stopping,
for
instance.
So
that's
something
that
more.
There
is
more
for
the
application
itself.
B
I'll
keep
going
if
nobody
else
goes
so
you
in
your
example,
so
it
was
always
the
client
that
was
doing
stuff
yeah.
Do
you
have
an
MP
TCP
sec
on
the
server
which
also
has
this
API
and
which
can
also
try
to
express
its
wishes
yeah
and
what,
if
the
two
down
the
line?
What
do
you
think
what,
if
the
two
logics
on
the
client
and
the
server
try
to
do
different
things
to
the
connection
through
the
API
on
each
side,
yeah.
F
B
F
Something
that
we
discuss
it
seems
that
at
some
point
we
will
have
to
do
have
a
mechanism
to
exchange
the
high
level
requirement
between
the
server
and
the
client.
Probably
so,
we
could
also
start
to
insert
new
mechanism
to
let
the
server
and
the
client
talk
outside
of
the
data
or
the
over
the
TCP
option,
for
instance
to
know
what
are
their
objectives.
It.
B
Might
not
always
help
right
so,
for
example,
if
if
you
have
the
so,
if
the
server
would
prefer
to
use
there
a
path
that
goes
through
appearing
link,
for
example
right
well,
the
client
would
prefer
to
use
one
that
it
gives
better
performance,
but
is
not
appearing
linked
to
the
provider,
wins
right
or
we
have
come
to
yes
yasha.
Do
we
have
an
idea
of
how
that
how
they
play
out
I
mean
it
would
just
be
a
ping-pong
thing
or.