►
From YouTube: IETF108-ANRW-20200730-1410
Description
ANRW meeting session at IETF108
2020/07/30 1410
https://datatracker.ietf.org/meeting/108/proceedings/
A
Okay,
we're
ready
to
start
the
next
session
at
least
one
I'm
back.
We
also
have
a
lot
of
participants,
so
this
is
the
third
session
for
the
applied
networking
research
workshop.
We
have
today
there's
another
one
tomorrow
and
for
those
people
who
haven't
been
in
the
first
two
sessions,
we
quickly
announced
a
couple
of
things
again
so
on
the
next
slide.
A
We
definitely
want
to
thank
our
responders
again.
This
virtual
meeting
has
less
cost
than
usually,
but
without
the
sponsors
it's
not
possible.
Next
slide.
A
And
then
this
slide,
you
find
all
the
slides
in
the
proceedings
in
the
data
tracker,
so
you
can
also
go
there
and
download
the
slides
and
look
there,
because
here
you
find
the
link
to
join
the
slack
channel.
A
We
have
for
this
workshop
if
you
haven't
joined
yet
this
slack
channel
is
particular
useful
when
you
want
to
have
discussions
with
the
authors
after
this
session,
because
right
now
we
have
the
chat
in
session,
but
this
goes
away
after
the
session
all
papers
and
the
whole
program
is
also
not
only
in
the
data
tracker,
but
also
on
the
workshop
web
page
and
the
proceedings
are
for
free
available
from
the
acm
library.
A
One
quick
note.
As
all
itf
sessions
this
session
will
be
recorded
and
put
on
youtube
afterwards.
So
please
be
aware
of
that.
If
you
want
to
say
something
or
join
the
ceo,
whatever
next
slide.
A
Then
we
will
also
for
the
question
answer
session.
We
will
use
the
queueing
function
provided
in
meet
echo.
If
you
want
to
ask
a
question,
please
join
the
queue
by
pressing
this
little
button,
which
shows
a
microphone
and
a
hand
which
you
find
below
your
name
in
the
upper
left
corner
and
there's
also
more
information
on
how
to
use
mid
echo
somewhere
on
the
ietf
webpage
or
you
use
google
to
find
it
next
slide.
A
Okay
and
that's
where
we
are
right
now,
we
are
in
the
third
session.
We
have
four
talks
today.
So
if
everything
went
well,
we
have
a
little
bit
slack
time
at
the
end
and
we
can
take
some
more
questions
or
we
can.
You
know
finish
the
day
earlier.
We
have
two
long
papers
and
two
short
papers
so
actually
two,
we
call
them
short
papers
and
physician
papers
and
the
first
talk
will
be
held
by
corey
and
eldon.
B
B
B
B
B
So
in
this
scenario,
a
client
tries
and
establish
a
tcp
connection
by
sending
a
sync
packet
that
contains
a
given
tcp
options,
but
when
the
middle
box
receives
it,
it
removes
it
either
by
placing
it
with
zero
or
by
shrinking
packet
size
and
forwards
it.
So
the
feature
has
been
removed
and,
of
course,
obviously
you
can
have
a
change
feature
when
you
send
syn
packet,
which
feature
value.
A
a
middle
box
requires
it
from
a
to
b,
so
the
server
believes
client
sends
feature
value
b.
B
This
is
a
change
feature,
so
why
does
this
happen
to
well?
It
can
be
the
action
of
a
lot
of
different
policies
which
can
have
security
or
performance
purposes,
even
for
packet
marking,
which
is
not
strictly
speaking,
a
middle
box
behavior,
but
that
choose
to
consider
also
because
it
has
very
similar
consequences.
B
B
B
B
The
problem
is
that
parsing,
a
sac
block
means
parsing
a
link
list
potentially
on
every
packet,
and
this
is
something
that
you
want
to
avoid,
especially
on
highly
loaded
devices,
because
it
takes
a
lot
of
cpu
time
so,
most
of
those
middle
boxes.
They
just
ignore
the
suck
blocks
so
in
consequences.
When
the
sender
receives
it,
it
has
an
invalid
stack
block
in
it.
B
B
Vpp
stands
for
vector
packet
processing
and
is
a
kernel
bypass
framework
developed
by
cisco,
so
we
developed
mmb
in
order
for
it
to
be
flexible,
intuitive
and
fast.
Of
course,
we
want
it
to
be
fast
because
we
don't
want
it
to
be
an
extra
overhead
when
analyzing
the
impact
of
past
impairments
on
quality
of
service.
Of
course,
we
choose
to
study
the
impact
of
mass
impairment
on
tcp
by
focusing
on
those
three
tcp
features:
ecn,
sac
and
window
scaling
parameter
because
they
are
widely
used
and
because
they
are
so
widely
impaired.
B
B
To
this
end,
we
build
a
testbed
in
two
different
setups,
a
direct
and
an
indirect
setup.
Direct
setup
is
simply
two
traffic
generators,
communicating
together
exchanging
data
in
order
to
compute
baselines
and
in
the
indirect
setup
we
include
a
network
simulator
which
would
simulate
various
network
conditions,
as
well
as
various
past
conditions.
B
B
So
we
recreated
three
pass-impairment
scenarios:
first,
without
congestion,
a
disabled
ecn
scenario
with
a
router
systematically
changing
the
ipcn
bits
to
one
one.
So,
congestion
experience,
but
with
the
fallback
mechanism
of
ecn
enabled
a
blocked,
ecl
scenario
and
a
broken
ecm
scenario
which
is
similar
to
the
disabled
ecn,
but
which
is
done
in
a
way
that
the
fallback
mechanism
cannot
detect.
B
B
B
B
So
what
we
observe
here
is
that
disabling
sat
leads
to
a
higher
bandwidth
for
packet
loss
rates
lower
than
0.9
percent,
while
enabling
stock
leads
to
higher
bandwidth
for
packet
loss
rates
higher
than
this
value,
which
is
related
to
our
test
bed.
So
why
does
it
do
it?
Because
having
sac
block
enabled
means
parsing
suck
blocks
means
parsing
a
link
list
which
consumes
cpu
time
a
lot
of
cpu
time
and,
on
the
other
hand,
disabling
suck
leads
to
spurious
retransmissions.
B
So
you
have
to
retransmit
packets
that
you
already
received,
because
you
are
not
able
to
acknowledge
them,
and
we
see
that
for
packet
loss
rates
lower
than
zero
point.
Nine
percent
cpu
time
of
passing
stock
blocks
is
more
expensive
than
spurious
transmission
and
then,
after
d0.09
percent
of
packet
loss,
it
is
more
expensive
to
retransmit
all
those
packets
than
to
parse
those
stack
blocks.
B
And
finally,
the
broken
sack
is
at
the
bottom
of
the
figure
because
it
barely
transmits
any
packets
at
all,
at
the
exception
of
the
zero
percent
artificial
packet
loss.
But
basically,
as
soon
as
you
experience,
your
first
first
loss
event,
the
connection
stalls
completely.
This
is
because
the
sender
discards,
the
entire
act
packet.
Even
the
act
number
not
only
the
sag
block.
B
B
So
what
we
can
see
here
is
that
obviously
clipping
down
and
removing
the
window
scaling
parameter,
has
a
direct
impact
on
the
maximum
achievable
throughput
of
a
tcp
connection,
but
it
can
also
be
very
problematic.
For
instance,
let's
take
the
most
widespread
clipped
with
scale
value,
which
would
be
seven.
B
B
B
On
the
other
hand,
you
can
choose
to
ensure
ensuring
proofness
by
encryption
like
quick,
is
doing.
Thank
you.
A
Okay,
then
we
go
directly
into
the
question
answer
session.
Let's
see
we
have
korean
here
only
on
audio,
not
video,
but
we
can
take
questions.
A
Maybe
let
me
start
with
one
question,
and
this
is
a
little
bit-
maybe
not
like
to
the
heart
of
the
paper,
but
you
have
one
slide
in
there,
which
shows
some
measurements
from
a
previous
paper.
I
think
you
did
and
there
was
like-
I
don't
know,
six
percent
of
midbox-
that
break
tcp,
but
there
was
also
large
percent
of
middle
boxes,
which
seem
to
not
break
tcp.
Can
you
little
say
a
little
bit
more?
What
these
mailboxes
are
and
how
you
define
in
the
box.
A
B
It
depends
if
they
they
might
implement
some
kind
of
white
listing,
so
in
that
case
it
they
might
be
harmful
for
evolution.
But
we
cannot
tell
from
the
data
that
we
have.
A
Okay,
thank
you.
We
have
a
little
bit
time
for
more
questions.
C
Some
specific
middle
box
pathologies-
I
guess
it
wasn't
clear
to
me-
are
those
specific
impairments
ones
that
you
observed
in
real
networks
or
are
these
hypothetical
scenarios
that
you're
investigating.
B
The
most
widespread
one
is
the
sick
number
surfing
box
and
others
are
pretty
rare,
but
all
of
them
actually
exist
in
the
wild.
Yes,
okay.
C
A
A
A
University
in
bucharest,
I
completely
screwed
this
up.
I'm
very
sorry!
Maybe
you
can
tell
us
later
how
this
is
pronounced.
He
also
has
a
phd
from
the
same
university
and
which
he
made
in
2015,
and
he
is
very
much
working
on
active
and
passive
measurements,
but
also
programmable
data
planes,
sdns
and
quality
of
service
in
general,
and
we
start
with
this
talk
on
congestion
control
in
independent
offer.
As.
E
E
There
are
traditional
applications
like
gaming
voice,
transmission,
ssh
that
require
low
latency
for
good
user
experiences.
However,
these
applications
generate
low
throughput
traffic
that
do
not
build
up
queues
along
the
forwarding
paths.
In
this
case,
strict
priority
scheduling
seems
a
feasible
solution
for
ensuring
low
delay
for
the
selected
applications.
E
However,
with
the
technological
evolution
applications
requiring
highest
throughput
and
low
latency
at
the
same
time
have
emerged
just
think
of
hd
4k
video
conferencing,
augmented
reality
virtual
reality,
remote
control
of
robots
and
so
on.
In
this
case,
this
simple
priority
based
scheduling
is
not
enough.
It's
not
a
good
solution,
since
it
leads
to
starvation
of
normal
traffic,
so
how
to
ensure
low
latency
and
high
throughput
at
the
same
time.
So
this
is
a
complex
problem
and
it
is
affected
by
both
endpoints
and
the
network.
The
endpoints
we
can
use
different
congestion
controls
in
the
network.
E
There
are
buffers
of
various
sizes
and
aqms.
Most
applications
use
tcp
load
space
classic
construction
control
needs
large
buffers
to
have
full
link
utilization.
Actually,
these
loads
based
approaches
fill
the
intermediate
buffers
by
design
and
thus
the
results
in
large
queuing
delays.
Of
course,
aqms
can
reduce
the
queuing
delay
significantly,
but
still
for
full
utilization.
We
cannot
go
below
a
limit.
E
On
the
other
hand,
scalable
congestion
control
enables
much
finer
rate
control.
It
cannot
only
react
to
the
fact
of
congestion,
but
its
reaction
is
proportional
to
the
congestion
level
dcdcp
and
tcp.
Prague
are
two
well
known
examples
for
scalable
congestion
control,
but
the
recent
bbr
version
2
also
implements
a
dctcp-like
scalable
mechanism
in
general.
They
can
reduce
the
queueing
latest
significantly,
but
in
turn
require
ecm
support
and
are
too
accuracy
for
the
coexistence,
with
classic
congestion
controls
to
solve
these
incompatibly
issues
between
classic
and
scalable
sources.
Airfors
internet
service
has
recently
been
proposed.
E
It
promises
ultra
low
latency,
low
loss
and
scalable
throughput
for
f
less
traffic.
F4S
flows
apply
scalable
construction
control,
its
design
goals
include
isolation
of
l4s
and
classic
traffic,
and
it
also
aims
at
providing
window
fairness
between
forest
and
classic
flows,
enabling
their
coexistence
in
the
same
system.
The
current
state-of-the-art
l4s
aqm
is
dual
pi
square.
We
will
use
this
method
as
a
reference
aqm
in
the
evaluation
section.
E
The
main
reason
behind
the
incompatibility
of
l4s
and
classic
traffic
is
that
they
require
different
congestion
signal
intensities.
Dual
pi
square
solves
this
problem
by
applying
different
signal,
intensities,
ecm
marking
or
drop
probabilities
for
l4s
and
classic
traffic.
In
nutshell,
dual
pi
square
maintains
two
queues:
one
for
f4s
and
another
one
for
classic.
Packets
f4sq
is
controlled
by
a
native
aqm,
a
dc-tcp
like
step
or
red
aqm
and
marks
the
packets
with
easy
and
congestion
experienced
for
classic
queue.
Pi
square
is
a
ap
aqm
is
applied,
dropping
or
ecm,
marking
packets.
E
E
As
a
result,
this
coupling
methodism
leads
to
higher
signal
probability
for
alpharest
and
lower
for
classic
packets.
Dual
pi
square
works
very
well.
If
you
consider
a
single
classic
and
a
single
scalable
congestion
control
behavior,
it
ensures
different
signal
intensities
for
the
two
classes,
but
cannot
differentiate
between
the
flows.
Inside
the
same
congestion
control
family
in
the
recent
years,
several
congestion,
comp
congestion
control
proposals
have
emerged,
both
scalable
and
classic
ones
and,
for
example,
bieber
version.
2
can
also
work
in
both
classic
and
scalable
modes.
E
E
Let's
see
an
example
for
the
incompatibility
of
two
scalable
congestion
controls,
dc
tcp
and
bbr
version
2..
The
left
figure
illustrates
the
case
when
a
step
aqm
is
applied
which
is
similar
to
the
native
alpha
saqm
of
2
alpha
square.
Without
going
into
details,
we
can
clearly
see
that,
with
step
aqm
the
ctcp
flows
get
much
higher
share
than
bbr1s.
E
The
right
figure
shows
when
our
in-network
research
sharing
method
is
used.
We
can
see
reasonable
fairness.
The
key
problem
is
the
dct
cp
and
vbr
version.
2
require
different
signal.
Intensities,
however,
step
aqm
applies
the
same
ecm,
marking
probability
for
the
two
flows,
and
it
leads
to
amp
fairness.
E
On
the
other
hand,
our
early
core
status
equiam
proposal
can
provide
different
signal,
probabilities
for
dctcp
and
bbr
flows.
It
does
not
require
flow
identification
and
peripheral
clues,
but
this
early
version
of
our
aqm
cannot
satisfy
the
requirements
of
alpharescent
classic
traffic.
At
the
same
time,
it
also
requires
additional
packet
marking
before
the
battle
neck.
E
The
air
for
saqmb
propose
is
based
on
our
core
stateless
resource
sharing
framework
called
per
packet
value
ppv
in
the
per
packet
value
concept.
The
resource
sharing
policies
are
implemented
by
a
packet
marking
mechanism
that
assigns
a
packet
value,
actually
a
simple
number
to
each
packet.
The
packet
value
is
not
a
traffic
class,
but
an
incentive
expressing
the
importance
of
the
given
packet
in
the
traffic
mix
packet
marking
can
be
done
for
the
different
traffic
aggregates
independently
and
thus
can
be
implemented
in
a
distributed
way
for
different
traffic
classes.
E
E
They
solely
use
the
packet
value
carried
by
the
packet
in
the
decision
on
which
packet
to
drop
or
resee
and
mark
or
which
packet
to
forward
accordingly
in
case
of
congestion,
packets,
with
the
smallest
packet
values,
are
dropped
or
marked,
with
ecm
congestion
experienced
in
the
pair
packet
value
framework.
If
you
have
a
flow
and
we
apply
policy,
a
this
policy
determines
the
perhaps
value
distribution
of
packets
belonging
to
the
flow.
The
role
of
packet
marking
is
essential.
In
the
following
example,
we
assume
two
constant
bit
rate
flows
called
flow
number
one
and
flow
number.
E
Two.
The
marking
is
based
on
a
function
that
we
call
throughput
value
function.
In
this
example,
the
two
flows
represent
two
separate
traffic
aggregates
having
independent
packet
markers.
The
throughput
value
functions
used
for
packet
value.
Calculation
are
the
same.
It
means
that
in
case
of
congestion,
we
expect
fairly
so
share
between
the
two
flows.
E
In
this
example,
we
only
distinguish
down
different
packet
value
levels
from
1
to
10,
as
seen
in
the
figure
for
each
we
put
value.
The
associated
packet
value
is
seen
on
axis
epsilon.
The
throughput
value
function
defines
the
expected
contribution
of
packets
with
given
packet
values
and
the
total
traffic
of
the
flow.
E
E
Since
the
same
throughput
value
function
is
used
and
the
ascending
rates
are
high,
we
expect
fair
share
of
the
botona
capacity
dropping
packets
with
the
minimum
packet
value.
Let's
do
an
observable
packet
value
threshold
below
which
all
packets
are
dropped,
and
in
this
case
this
threshold
value
is
8
and
it
results
in
30
megabits
per
sec,
allo
traffic
or
alloy
throughput
for
both
flows.
E
E
Our
aq
method
also
maintains
two
virtual
cues
for
two
reasons.
First,
virtual
cues
can
be
used
for
reducing
queuing
latency
in
the
physical
buffers
and
secondary
can
keep
histories
of
packet
values
used
for
calculating
stable
congestion
threshold
values.
Each
alpharest
packet
updates
both
virtual
cues
with
its
size
and
the
packet
value.
E
C
E
Similarly,
to
traditional
virtua
queue,
concept,
pq0
and
vq1,
and
our
system
have
a
maximum
size
and
a
serving
rate
that
is
less
than
the
outgoing
capacity
packets
are
served
from
the
two
physical
queues
with
a
simple,
strict
priority
scheduler
for
us
first
and
then
the
classic.
You
can
recognize
that
virtual
q0
represents
the
value
distribution
in
the
alpha
s,
traffic,
where
which
are
q,
1
stores,
the
coupled
distribution
of
both
alphas
and
classic
packets.
From
these
distributions
and
the
predefined
serving
rates
and
delay
targets
of
the
virtual
queues,
two
congestion
threshold
values
can
be
calculated.
E
Ctv
0
is
applied
for
the
forest
traffic
only
while
ctv1
for
both
traffic
families.
They
are
simple
filters
for
airflow
as
packet.
If
its
packet
value
is
above
both
thresholds,
the
packet
is
forwarded.
Otherwise
we
mark
the
packet
with
acn
congestion
experienced
for
a
classic
packet.
We
only
check
ctv1
in
practice.
Congestion
threshold
values
can
be
translated
into
congestion
signal
intensities.
This
coupling
mechanism
is
similar
to
dual
pi
square
and
it
ensures
fairness
between
forest
and
classic
flows.
E
In
the
first
scenario,
we
compare
the
performance
of
the
two
aqms
under
changing
traffic
intensities,
using
dct
cps
alpha
s
and
cubic
as
classic
congestion
control
in
case
of
our
aqm.
All
flows
use
the
same
throughput
value
function,
meaning
equal
desired
resource
sharing.
The
experiment
consists
of
nine
phases,
varying
the
number
of
alpha
s
and
classic
flows.
Each
phase
lasts
20
seconds
and
the
number
of
l4s
and
classic
flows
can
be
seen
on
the
top
of
the
figures.
E
E
E
E
We
believe
that
this
is
mainly
due
to
the
differences
trick.
Priority
and
time
shifted,
fifo
scheduling
of
the
two
approaches,
the
nine
teams,
person
style
and
the
average
queueing
delays
are
similar
for
both
methods
developed
by
square
results
in
slice,
with
smaller
delays
for
alpharest,
but
our
approach
also
provides
average
delays
in
submillisecond
order,
except
some
temporal
peaks.
Significant
maximum
delay
can
only
be
observed
if
the
number
of
flows
is
limited,
as
the
more
flows
arrive
in
the
system.
The
maximum
delay
also
goes
below
1
2
milliseconds,
with.
D
E
We
can
clearly
see
that
dual
pi
square
cannot
control
vbr
traffic
well,
leading
to
increased
queuing
delays
and
significant
unfairness
between
l4s
and
classic
traffic
in
general.
If
the
number
of
bbr
flows
is
large,
classic
traffic
experience
is
a
very
low
throughput
share.
Bbr
applies
a
complex,
model-based
congestion
control.
We
assume
that
the
opposite,
chaotic
behavior
is
caused
by
that.
The
bbr's
model
is
not
prepared
for
this
complex
network
behavior,
with
our
core
status.
Aqm,
almost
perfect
fairness
can
be
seen
in
most
phases.
E
E
A
E
Provides
better
but
not
perfect
fairness,
while
ui
pi
square
cannot
handle
the
heterogeneity
and
rtts
well
with
our
method.
F4S
traffic
with
5
millisecond
rtt
occupies
more
bandwidth
than
their
fair
share,
which
is
more
visible.
When
flow
starts,
leaving
the
system,
it
seems
that
dc
tcp
flows
with
small
rtt
can
adapt
to
the
new
conditions,
much
faster
occupying
the
freed
resources.
E
We
also
repeated
the
experiment
with
bbrs
alpharest
congestion
control.
We
developed
by
square
the
unfairness
between
alpha
s
and
classic
classes
is
more
significant
than
with
the
ctcp
bbr
traffic
almost
fully
suppresses
cubic
flows.
On
the
other
hand,
our
core
set
as
atm,
provides
similarly
good
performances
with
dctcp.
E
In
the
next
scenario,
there
are
four
different
congestion
controls
in
the
same
system.
This
is
tcp
and
bb
are
used
as
alpha
rest
and
cubic
and
bbr
is
classic
congestion
controls.
Similarly,
to
previous
experiments,
we
varied
the
number
of
flows
in
the
traffic
mix,
as
shown
in
the
top
of
the
figures
for
our
aqm.
Fairness
is
reasonable
during
the
whole
measurement
in
the
marked
areas,
the
number
of
flows
is
the
same.
However,
the
classic
bbr
flows
cannot
restore
its
throughput
when
load
decreases.
E
In
the
last
phase,
we
assume
that
the
bbr's
model
stacks
in
a
wrong
state
and
cannot
add
up
to
the
change
network
conditions
for
dual
pi
square.
The
experience
awareness
is
much
worse
since
air
force,
bb
air
flows
take
the
most
throughput.
It's
done
time
more
than
the
first
share.
In
some
cases,
the
behavior
classic
bbr
flows
is
again
very
interesting.
At
the
start,
they
take
a
high
share,
while
in
the
end
they
have
the
lowest
share.
E
E
E
We
have
demonstrated
that
our
proposal
provides
different
signal
probabilities
for
different
congestion
controls
by
design
without
the
need
of
flow
identification
and
pair
flow
queues.
On
the
other
hand,
it
requires
packet
value
marking,
and
thus
its
deployment
can
only
be
visible
in
closed
networking
domains.
At
the
moment,
the
proper
algorithm
is
lightweight
and
we
are
working
on
its
implementation
in
p4.
Finally,
all
the
measurement
results,
including
the
scenarios
at
10
gigs,
are
available
in
our
website.
A
Okay,
thank
you
very
much.
It
turns
out.
I
just
broke
my
videos,
so
you
have
me
without
the
video,
but
at
least
we
have
sandra
here
on
video
and
roland,
so
you
can
see
them.
So
very
first
question
from
I
said:
how
do
you
pronounce
the
university.
A
Okay,
then
we
would
have
time
for
some
questions.
Maybe
I
can
go
with
the
first
question
first,
so,
as
mentioned
on
the
very
last
slide
you're
working
on
an
implementation.
So
can
you
say
something
about
implementation
complexity,
maybe
also
compared
to
the
dual
pi
algorithm.
E
I
think
the
complexity
is
very
similar
to
dual
price
first,
so
basically
our
ctv
based
method.
So
we
have
this
through
packet
value
filters.
I
mean
at
that
point
I
mean
implementing.
This
is
very
very
simple
because
you
have
the
packet,
the
packet
carries
the
packet
value
and
you
only
have
to
check
if
it
is
bigger
or
greater
than
the
the
actual
value,
and
you
can
update
these
filters
periodically,
similarly
to
dual
pi
square,
where
you
update
the
drop
probability
periodically
here
here,
you
do
the
same
with
the
threshold
values.
E
A
Okay,
then
we
go
to
greg
who's
in
the
queue
again.
C
Thank
you
very
interesting
work,
a
couple
of
comments,
one
as
noted
on
your
last
slide.
Congestion
control
evolution
is
ongoing.
You
know,
bbrb2
is
a
moving
target.
C
Also
dc
tcp
within
l4s
has
migrated
to
tcp
prod,
be
nice
to
see
evolution
of
your
work
tracking
those
congestion
controls
as
they
as
they
have
all,
maybe
be
running
with
with
the
current
version
of
prague,
and
that
sort
of
thing
second
comment
is
be
interesting:
to
see
a
comparison
of
your
algorithm
to
an
fq
implementation
that
supports
l4s,
ecn
signaling
as
well.
That
would
be
really
interesting
both
both
on
the
performance
side
and
the
complexity
side.
E
Yeah,
actually,
what
was
in
our
mind
so
first
of
all,
our
approach
has
the
benefit
that
we
don't
need
their
flow
cues
and,
for
example,
if
you
want
to
implement
it
in
a
high-speed
router.
Like
barefoot
of
you
know,
or
something
like
that,
you
cannot
work
with
lots
of
individual
queues,
so
you
have
very
limited
capabilities,
and
in
this
way
you
cannot
do
perfluo
queueing
and
in
our
approach
I
mean
at
the
moment
we
are
working
on
a
p4
implementation.
E
A
Okay,
do
we
have
more
questions.
A
And
we
go
on
with
the
next
talk,
so
that's
a
shorter
talk
because
that's
a
position
paper
and
the
talk
will
be
held
by
danny
lashes.
A
A
F
F
F
We
also
have
the
alto
client
sending
alto
queries
to
get
guiding
information
from
the
l2
server
and
the
alto
client
protocol
used
for
sending
alto
queries
between
an
alto
client
and
an
ultra
server.
The
other
working
group
in
the
ipf
started
in
2008
and
currently
also
discussing
proposal
on
recharging.
The
working
group
alto
already
provides
a
generic
framework
to
expose
network
information
for
applications.
F
In
particular,
alto
introduces
generic
mechanisms
such
as
information
resource
directory
information,
consistency
and
an
information
update
model
alto
also
introduces
extraction
modules
such
as
network
and
cost
maps
to
provide
network
location
grouping
and
a
cost
between
them.
The
patch
vector
abstraction
and
capability
maps
such
as
the
unified
property
maps
and
throughpings
capabilities.
F
Now
I
would
like
to
make
clear
what
we
mean
by
multi-domain,
so
a
multi-domain
is
considered
to
be
a
network
region
in
the
global
internet,
and
each
domain
has
a
network
view
from
the
perspective
of
the
network
region.
In
this
context,
a
network
region
can
be
an
autonomous
system,
a
set
of
autonomous
systems
or
hsps
transport
access,
networks,
etc.
F
Nowadays,
many
multi-domain
use
cases
are
emerging
where
the
traffic
from
a
source
to
a
destination,
traverses,
multiple
domains,
data
science,
applications
and
flexible
interdomain
routing
are
some
example
of
such
use
cases.
However,
the
current
altobase
protocol
is
not
decided
for
a
multi-domain
setting
of
exposing
network
information,
for
example.
Consider
this
peer-to-peer
deployment
using
alto
with
the
current
alto
client
protocol.
The
alto
server
in
each
domain
will
provide
only
local
information
to
alto
clients.
F
It
means
that
the
alto
client,
the
tracker
in
domain
a
will
receive
partial
e-network
information,
either
from
the
main
b
or
the
main
c.
On
the
other
hand,
an
alto
server
to
server
protocol
is
necessary
to
allow
alto
servers
to
exchange
information
so
that
the
alto
client
may
receive
entry
information.
F
On
the
other
hand,
before
the
application
can
run
a
resource
allocation
algorithm
to
execute
such
submitted
flows,
its
needs
to
gather
some
information
from
the
network.
First,
the
end-to-end
costs
across
multiple
domains,
because
in
terms
of
resource
availability
and
sharing,
for
example,
the
bandwidth
availability
and
second,
the
application
needs
to
find
a
sequence
of
domains
and
candidate
paths.
This
means
which
domains
are
involved
for
the
different
traffic
flows
and
one
or
more
potential
paths
connecting
such
domains.
F
Now
I
will
summarize
a
set
of
key
issues
in
the
core
and
alto
design
for
gathering
multi-domain
network
information
regarding
the
server
to
client
communication
in
multi-domain
scenarios,
it's
not
possible
to
optimize
the
traffic
with
only
locally
available
information.
Therefore,
the
communication
amount
multiplied.
Alto
server
is
necessary
to
exchange
network
information
of
multiple
domains.
F
F
The
connect
pivot
information
is
reachability
between
source
node
and
the
destination
nodes
in
order
to
find
the
resource
sharing,
an
application
needs
to
know
which
domain
are
involved
in
the
data
movement
of
each
node
pair.
Besides,
a
set
of
candidate
paths
need
to
be
computed
in
order
to
know
how
to
reach
a
remote
destination
node
once
the
multi-domain
connectivity
discovery
is
performed.
An
application
as
an
alto
client
needs
to
be
aware
of
the
pressing
and
the
location
of
the
alto
server
to
get
appropriate
guidance.
F
Thus,
alto
servers
will
be
located
in
different
domains
so
that
multi-domain
ultra
server
discovery
mechanisms
are
also
needed
in
the
current
alto
framework.
Each
domain
may
have
its
own
representation
of
the
same
network
inventory,
for
example,
in
this
figure
suppose
that
the
path
cost
for
domain
b
it
utilization
chair
is
thing
of
a
valuable
bandwidth.
In
this
case,
both
values
are
not
comparable
together
or
even
if
all
the
member
domain
have
the
same.
Utilis
utilization
share
property.
F
Applications
also
need
to
express
their
requirements
in
a
query,
for
example,
find
the
bandwidth
the
network
can
provide
for
flow
f1,
subject
to
reachability
requirements,
blacklist
of
devices,
quality
of
service,
metrics,
etc.
The
current
query,
interface
in
alto,
can
not
express
such
flexible
queries
regarding
the
scalability.
Optimization
problems
specified
by
the
application
requirements
can
be
computationally
expensive
and
time
consuming.
F
F
So
how
to
design
a
whole
alto
framework
in
this
table,
we
identified
the
relationship
between
the
alto
design
issues
and
their
corresponding
envisioning
mechanisms
to
allow
alto
to
expose
information
across
multiple
domains.
Regarding
this
server
to
server
alpha
communications,
alto
server
may
consider
hierarchical
or
mesh
architectural
deployment,
for
example,
when
a
hierarchical
architecture
is
used,
alto
servers
in
the
main
partition
cutter
locally
available
information
and
send
it
to
a
central
server
in
convention
deployments.
Alto
server
may
be
set
up
in
each
domain
independently
connected
to
each
other
and
gathering
the
network.
F
Information
from
other
domains,
multi-domain
mechanisms
combining
domain
sequence,
computation
and
paths
computations
need
to
be
defined
or
standardized
computation
protocols
can
be
leveraged
for
expiring
these
design
requirements
such
as
pgp,
vps
or
pce.
Here
we
have
a
couple
of
examples
following
the
pc-based
architecture
for
computing,
optimal
multi-domain
and
2m
paths
for
close
domain
alto
server
discovery,
the
rfc
a686
specify
a
procedure
for
identifying
alto
server
outside
of
the
alto
client's
domain.
Other
pce
or
bep
basic
mechanisms
could
be
also
used.
F
Multi-Domain
composition
mechanisms
are
also
required
so
that
the
network
information
from
alto
servers
in
multiple
domains
can
fit
into
a
single
and
consistent
virtual
domain
abstraction.
Here
we
have
three
proposal
using
mathematical
programming
constraints
for
multi-domain
composition,
lexus,
our
collaborative
network
scenario
again.
To
give
an
illustrative
example,
consider
each
domain
provided
debunded
property
using
a
set
of
linear
inequalities
where
x1
and
x2
represent
the
available
boundary
that
can
be
reserved
for
flock
1
and
flow
2
respectively.
F
Each
linear
inequality
represents
a
constraint
on
the
reservable
bandwidths
over
different
shared
resources
by
the
two
floats,
for
example.
This
linear
inequality
indicates
that
both
flows
share
a
common
resource
and
the
decision
of
their
bandits
cannot
accept
a
hundred
gigabits
per
second.
The
involved
domains
may
also
exchange
such
properties
and
apply
multi-domain
redundancy
optimization
to
remove
cross-domain
redundancy,
for
example.
F
Taking
a
look
at
the
set
of
inequalities,
one
can
conclude
that
the
constraint
in
domain
b
and
domain
c
can
eliminate
that
and
domain
a
and
finally,
a
unified
representation
can
be
created,
representing
multi-domain
network
resource
information
with
a
flexible
and
generic
query
language.
The
network
can
filter
out
a
large
number
of
unqualified
domains.
The
language
and
specification
could
be
inspired
in
a
standard
or
pre-standard
mechanism
implemented
with
a
user-friendly
grammar.
F
Alpha
servers
also
need
to
support
mechanisms
to
improve
the
scalability
and
performance
such
as
pre-computation
and
projection.
For
example,
the
altar
routing
state
abstraction
extension
describes
equivalent
transformation.
Algorithms
to
reduce
the
redundancy
in
the
network
view
as
much
as
possible,
while
still
providing
the
same
information
regarding
the
security
and
privacy
alto
needs
mechanisms
that
provide
accuracy,
sharing,
network
information
and,
at
the
same
time
protects
each
member
domain.
F
A
Okay
thanks
a
lot.
A
We
now
we
have
danny
in
the
audio,
so
we
would
be
available
for
questions.
A
Hello,
okay,
so
yeah.
We
can
hear
you
very
softly,
but
somehow
you
don't
show
up
on
my
screen
at
least,
can
you
say
something
again
hello?
Can
you
hear
me?
A
Yes,
yes,
can
you
guess,
okay,
that
seems
to
be
fine?
Okay,
we
have
one
question.
No,
we
somehow
somebody
requested
screen
sharing.
I
don't
think
that
was
the
intention.
So.
A
A
Issue:
okay,
let
let
me
actually
ask
one
question,
because
your
talk
was
maybe
a
little
bit
abstract
about
metrics.
Can
you
maybe
briefly
iterate
like
which
kind
of
metrics
could
be
shared
and
how
that
would
look
like
more
concrete,
I
mean
the
one
example
you
had
had
there
was
on
on
bandwidth,
but
bandwidth
might
be
actually
at
least
available.
It
might
might
be
changed
quickly.
So
what
are
other
examples?
Maybe
you
can
go
into
this
a
little
bit
yeah.
F
F
We
identified
two
type
of
transport
metric,
one
related
to
universal
metrics,
to
say
something
that
is,
for
example,
bandwidth,
latency,
and
so
on
with
that
we
can
try
to,
I
think,
or
we
think
that
it's
more
easy
to
generate
a
unified
representation
using
cu
or
minimum.
Something
like
that,
but
other
type
of
or
metric
than
not
are
universal,
unix
more
related
that
they
are
numerical
but
ordinal,
for
example,
it
is
more
tricky.
Maybe
it's
not
easy
to
provide
a
unified
representation.
Maybe
we
can
try
to
provide
a
vector
representation.
F
It's
it's!
It's
a
current
discussion
that
we
are
trying
to
to
to
get
more
and
more
ideas
on
that.
A
Otherwise,
thank
you
to
you
and
we
move
on
with
the
next
talk.
A
So
for
the
next
talk
we
have
stuart
stewart
is
a
researcher
at
futurewire
future
networks
in
santa
clara
and
also
visiting
professor
at
the
5g
innovation
center
at
university
of
surrey
he's
working
mainly
on
the
forwarding
layer
and
deployment
of
technologies
there,
and
he
used
to
be
a
former
era
director
routing
area
director
and
is
the
chair
of
the
paul's
working
group.
So
welcome
stuart
and
we
start
the.
D
D
D
The
way
we
do
this
is
in
the
data
plane
we're
only
going
to
put
the
ppr
id
call
it
little
d
in
the
packet,
but
in
the
control
plane
we
provide
ppr
id
d
plus
the
set
of
identifiers
that
it
must
pass
through
a
set
of
node
names.
It
must
pass
through
and
we
provide
this
in
the
control
plane,
and
this
allows
us
to
build
the
mapping
in
that
we
need
for
the
forwarding
plane
to
work.
D
So,
let's
look
at
a
little
example
case.
We
have
a
traffic
engineered
repair,
so
the
primary
path
is
abcd.
D
The
repair
path
is
a
e
f
g
d
and
we
have
some
subsidiary
connector
paths,
bf
and
cg,
to
deal
with
the
case
of
failures
of
the
bc
and
the
cd
link.
D
So
if
any
node
fails
any
path
fails,
we
can
repair
it
through
our
traffic
engineer,
repair
path.
Why
do
we
need
it
to
be
a
traffic
engineered
repair
path?
Well,
if
we
have
a
critical
sla
for
the
traffic,
that's
using
the
primary,
we
must
also
provide
the
same
sla
in
the
backup,
and
this
is
particularly
important
for
5g,
ultra
reliable
low
loss
communications
or
for
massive
iot
slices.
D
D
D
D
D
D
So
what
might
we
do?
What
were
we
thinking
of
doing
in
future
for
this?
Well,
every
path
can
have
its
own
individual
policy
installed
by
the
control
plane
for
each
specific
ppr
path.
For
example,
we
can
specify
the
queue
behavior
at
that
part
that
hop
or
we
can
specify
any
monitoring
or
om
behavior.
We
want
to
to
take
path
apart.
D
D
D
So
the
question
is:
how
do
we
define
a
resilient
flooding
reduction
system?
Because
we
have
to
do
this
without
compromising
one
of
the
central
tenants
of
link
state
protocols,
which
is
that
the
flooding
system
provides
a
lot
of
the
resilience.
D
D
So
the
question
is:
can
we
expand
the
ppr
graph
structures
to
provide
traffic
engineering
between
determine
between
debt
net
nodes
and
also
add
packet,
rep,
the
packet,
reputation,
elimination
and
reordering
functions,
and
can
we
do
use
this
to
provide
these
facilities
for
new
data
planes
such
as
ip
another
aspect
of
robustness?
That
we
think
is
worth
further
research,
and
that
is
to
that
is
to
consider
the
case
of
byzantine
robustness,
and
a
byzantine
system
is
one
that
can
withstand
active
lying
by
its
components.
D
We
know
how
to
make
link
state
protocols-
byzantine,
robust
radio
permanent-
showed
how
to
do
this.
Many
years
ago,
at
mit
we're
dealing
here
with
high
value
traffic
engineering
and
strategic
5g
services,
and
these
are
a
prime
target
for
attack,
so
we're
proposing
to
you
we're
present
using
a
link
state
protocol
to
set
up
these
te
paths.
So
the
research
question
is:
can
we
make
traffic
engineered
paths
that
are
robust
against
byzantine
attacks
or
accidents
that
have
the
same
characteristics.
D
A
Okay,
thank
you
for
the
presentation.
We
also
have
stuart
already
on
audio
and
video.
That's
great,
so
we
would
be
ready
for
questions
at
this
point.
A
So,
like
my
impression
is
that
you
still
have
a
lot
of
research
questions
there
that
you
need
to
tackle.
So
probably
there
are
many
open
issues
still
left,
but
the
one
thing
I
was
wondering
about
listening
to
the
talk
is
also
like:
how
do
you
actually
evaluate
this?
How
can
you
make
sure
that
what
you
propose
is
kind
of
better
or
more
secure.
D
How
do
we
make
sure
it's
it's
better
and
more
secure?
Well,
so
one
of
the
things
we
pick
up
is
the
natural
distribution
of
the
well
proven
distribution
of
information
through
a
link
state
routing
protocol,
which
means
that
we
can
distribute
the
the
information
without
having
to
set
up
a
per
node
connection
from
the
sdn
controller
to
every
node
in
the
in
the
network,
and
we
know
that
we
can,
for
example,
run
that
system
such
that
you
can
stop
that
information
being
corrupted
by
one
of
the
nodes
on
the
path.
D
That
was
the
the
byzantine
work
that
was
done
that
never
really
got
deployed,
because
nobody
ever
really
thought
it
was
a
high
enough
value,
but-
and
they
were
also
worried
about
the
cpu
overheads,
but
that
work
was
done
probably
30
years
ago
and
laying
in
the
bot
lane
in
the
toolbox
and
the
requirements
on
networks
have
significantly
changed.
Since
then,.
D
So
so,
yes,
we
we've
got
some
ideas.
We've
got,
we've
got
plenty
of
things
we
can
do
with
this.
We're
really
trying
to
find
out
whether
people
are
interested
in
working
with
us
on
this,
and
whether
people
are
interested
in
deploying
techniques
of
this
sort.
A
Yeah,
I
mean
that's
actually
a
good
point.
That
was
also
what
my
question
was
hinting
for,
because
I
think
you
need
to
actually
somehow
prove
that
there
is.
You
know
a
real
benefit
for
somebody
to
do
the
investment
and
to
do
the
employment
right
and
sometimes
that's
hard,
sometimes
easy
to
argue
that
something
is
different,
but
not
necessary
if
it's
too
much
better.
D
D
The
other
kind
of
alternatives
are
that
you
construct
large
numbers
of
sort
of
piles
and
purposely
put
them
in
the
network,
and
I've
done
quite
a
lot
of
work
on
fast
reroute
in
the
ietf
and
fast
reroute
is
a
useful
technology
that
people
want,
but
I
don't
think
it's
all
there
yet,
but
in
particular
around
the
the
need
to
maintain
traffic
engineering
of
fast
reroute
paths
of
repair
parts
and
also,
in
particular,
we're
moving
to
a
world
where
we're
being
much
more
picky
about
what
we
mean
by
assured
quality
of
the
of
the
path
and
the
the
new
work.
D
For
example,
that's
being
done
in
the
itu,
fg
focus
group
network
2030.
We
should
look
at
a
whole
new
class,
the
new
classes
of
services,
just
taking
a
service
that
you
really
really
engineered
or
a
network
slice,
for
example
you
really
engineered
and
then
just
throwing
it
in
the
best
effort
bucket,
doesn't
seem
a
good
idea.
So
you
know
one
of
the
things
we're
interested
in
is:
how
do
we
build
a
resilient
network
that
preserves
the
original
traffic
engineering
qualities
despite
the
fact
that
we've
gone
into
the
failure
mode?
D
And
how
do
we
do
this
quickly
enough?
You
know
the
failover
times,
for
these
things
are
some
50
milliseconds.
G
D
And
if
anyone's
interested
in
working
with
us
we'd
be
delighted
to
to
talk
to
other
people.
A
Okay,
let's
see
if
we
have
any
more
questions
in
the
queue.
Currently,
it
doesn't
look
like
it
going
one
going
two
going
three.
No,
that
means
we're
done
with
the
session
for
today,
as
you
can
already
see
on
the
on
your
screen,
probably
is
that
we
have
another
session
tomorrow.
It's
only
two
more
papers,
but
two
very
interesting
papers
around
monitoring
and
locking.