>> Jin Li: It's my great pleasure to introduce... degree from USTC, University of Science and Technology in China...

advertisement
>> Jin Li: It's my great pleasure to introduce Mr. Joe Jiang. Joe get his bachelor
degree from USTC, University of Science and Technology in China in 2003.
Then he went to Chinese University of Hong Kong for master. His supervisor is
John Lu [phonetic] and I mean Gary -- sorry, Doman Chu [phonetic]. And after
he get master, he went to Princeton University, and he's now a PhD student
supervised by Jennifer Rexford and Mung Chiang.
Without further delay let's hear what he has to say about cooperative content
distribution and traffic engineering in an ISP network.
>> Joe Wenjie Jiang: Thanks, Jin. And thanks everyone for coming to this talk.
And I'm very glad to present my talk here. And during the talk, you are free to
raise any questions and give any comments to improve my work.
So basically I would like to have this talk in two parts. Now, for the first part, I'm
really presenting this piece of work which is really recent. And about this
cooperation between ISP and content providers. And in the second part of the
work, I really like to grab some time to talk about my ongoing research and the
research road maps. I'm interested in doing peer assisted live streaming
assistance.
So okay. First talk about the first part. So this is -- this work is a collaboration
with Ray, who is a post-doc in my group, and also Jennifer and Mung. So
nowadays there are two types of people on the Internet today. One is the
Internet service providers, ISPs. So these people they deploy the services
providing connectivity to end users. So their main job is to make the decision
how to route a package. So here are a list of the major ISPs in America so they
are the tier one ISPs here. So as I say, their major job is to route packets.
And on the other hand, there are another type of people who are content
providers. So they're utilizing the existing connectivity from the ISPs. And they
generate and distribute their content to the end users. So nowadays because of
the existence of content providers so the marginal revenue of the ISPs is getting
-- is getting decreased because these content providers would directly provide
the content to the end users and may share, gain a larger share of the total
revenue from the end users.
So here are a list of these possible content providers like the largest CDN
network, Archima [phonetic], and all these other kind of peer-to-peer networks.
So as you can see, there's a variety of technology used here for content
providers, either from these kind of content distribution network based or
peer-to-peer based. But their major job is to decide where to find a content. So
this is their main job.
So despite the -- some kind of the economic conflict between the two types of
people, now we're in this talk we're really trying to see what is the technical task
between the two types of people. So this picture shows a high level interaction
between the two people here. So from the ISPs perspective, their main job is to
do traffic engineering, to route the packets. So from their point of view so they
will view the background traffic and all these traffic generated by the content
providers as a constant. So they include this -- these parameters and generate
the routes.
And on the other hand, interestingly for the content providers, this is kind of a
mirror image to each other. So in the content provider's point of view, this routes,
the routing somehow is considered as a constant. And their job is to maximize
the user performances by assigning servers or peers to the appropriate users.
So the content provider will decide the traffic from a server to end users.
>>: So it just seems like a bit hard because it's so different than [inaudible]
together.
>> Joe Wenjie Jiang: Yeah, yeah.
>>: [inaudible].
>> Joe Wenjie Jiang: Yeah, it's -- I agree that. Like these P2P technology is
quite different from the server selection I'm talking about here. So in here mainly
like referring the content providers is like Archima [phonetic], CDNs. Yes. So
this is the major focus of this work.
>>: And when YouTube is different on the other way, right, they're just -- they're
just sourcing the content, right, they're not [inaudible] or peer-to-peer?
>> Joe Wenjie Jiang: Yeah. But there's some commonalities. Like they also
want to replicate the content over many locations. And they choose appropriate
servers for the end users.
>>: Right. So they would use [inaudible]
>> Joe Wenjie Jiang: Yeah, you can say -- you would say CDN, but CDN usually
refers to [inaudible] base like they like to store the web objects and they use
different technologies. But the high level architecture is kind of similar. Okay.
So and the interesting points that the two [inaudible] here form a feedback loop.
So later let's see what's going on in this picture. So now there's some tussle
between the two types of people, but cooperation somehow is possible. Like
nowadays, the ISP is trying to deploy their own content services like ISP their
promoting this triple play. You can have the Internet access, you have phones
and you also have the IPTV. So there stands a chance that the traffic
engineering somehow can be generally optimized with the serviceable
optimization, so this is good news, which represents a promising direction that
the ISP can do.
So in this talk, I'm going to talk about the cooperation. What are the possible
cooperation models and how can an ISP to choose between these different
models and how to trade-off them. So this is the contribution about work. So
first of all, we ask the question, can we model the current status today? So how
can we model the interaction and is there an efficiency loss?
And the second question, after we observe some, some efficiency loss, then
we're trying to probe some possible cooperation models there. Then after we
have these models, then naturally we want to choose the best one. So there's
always a trade-off between these performance information exchange an fairness
or architectural complexities. So I'll guide you through this models and see what
might be the best model the ISP should choose? So this is the main contribution
of this talk, of this work.
So here's my outline. But first of all, I'll briefly discuss the cooperation models
and model the current status, how traffic engineering and serviceable action is
done. Then I'm going to analyze the performance of these models and see their
process counts. Then I will propose the right solution, using a [inaudible] design,
using the solution concept called Nash bargaining and show you some
performance evaluations. And finally I will conclude the talk.
Now, okay, now let's go into the cooperation models here. Now, the first model is
really no cooperation which is reflecting the current practice today. So notice that
in this picture so the ISP is doing its own job, given the traffic matrices it
produces the routes. But from the content provider's point of view, it has no
information about the network. So what we observe, the vanilla information that
the content provider can get is the entering information. So it either matches the
network or do other fancy algorithms to infer the network status. But the entering
information is the minimum information that the content provider can directly get
from the network.
So in this model [inaudible].
>>: What is the traffic provider has multiple ISPs that needs to be ->> Joe Wenjie Jiang: Yeah, yeah.
>>: And they do signal back and forth because the content provider is buying
capacity in the data centers from the ISP. So they have to declare how much
capacity they [inaudible].
>> Joe Wenjie Jiang: Yeah. True. I think first point is very good. So they -- and
content provider made cross-multiple ISPs. So that makes the scenario more
complex. But here that's narrowed down to the case that when there is only one
single ISP and only like concentrated on the performance issues. And secondly,
this content providers of course can buy capacity for an ISP. But if you're -there's so many content providers but for some of them they don't have these
kind of separate backbones, so they really have to like share the pipes of the
ISPs with other traffic.
>>: [inaudible].
>> Joe Wenjie Jiang: Yeah. Yeah.
>>: But by -- they buy like let's say ten [inaudible] or whatever they buy and
much less and in a datacenter ISP knows they [inaudible].
>> Joe Wenjie Jiang: Yeah. So that's why they somehow need to sign a
contract, right. Yeah. So in this case, I'm going to like talk about so what kind of
like if you have no contract so what is the best you can do. And why you should
have some -- sign some contract like this and what kind of contract you should
have. Yes. So this is the first model. Remember that in this case that content
provider only has the minimum information.
Now let's proceed to the second model. So in this case, suppose the ISP is
generous, given all the information to the content providers. This information
concluded topology, the capacity, all routes. So the content provider can make a
better decision to optimize his own network. So in this case we caught partial
cooperation because the content provider is given more visibility of the network.
In this case we are going to Model how the content provider can utilize this
information and optimize its performance. So this is the second model.
>>: [inaudible].
>> Joe Wenjie Jiang: The topology.
>>: The routing.
>> Joe Wenjie Jiang: The routing.
>>: And the [inaudible] currently utilizations?
>> Joe Wenjie Jiang: Yes. Sure. And the third model is a joint design. So in
this case, they are no separate entities there. So we can think of it as a black
box here. So in this case, this is joint design. So given the background traffic
matrix and the use of demand, so it's possible that to optimize the routes and the
serviceable action at the same time. So we call it cost cooperative serviceable
action and traffic engineering. So this is a joint design for a third model.
So from now we keep these three models in mind.
>>: [inaudible] single content provider?
>> Joe Wenjie Jiang: Yes. In this case. Yeah. So before going into all these
models, I just want to give a quick review of the results obtained from this study.
So to study models, we really want to evaluate from four dimensions. The most
important is of course the optimality gap. And secondly is how much information
exchange between the two types of people. A third is the fairness. Because
they are -- the objectives of the TE and CSS may be conflicting. So how to trade
off the fairness.
And last is the architectural complexity. So the major results here are highlight
here. So as we can see for the optimality gap, the model won with no
cooperation has the largest gap, and it can be improved from model two to model
three. And model two has some special properties there. It is optimal in some
special cases. But interestingly you see that in model two when there's more
information, sometimes you get hurt. You are not even doing better than model
one. So this is one of the interesting observation we found.
In the third model, so we propose this joint design, and I'm going to show you
how it can be decomposed into still two separate jobs. So without -- with some
information exchange and also compare these architectural complexity say, what
is the -- what is the most lighted way loaded for you to do, if you want to migrate
to another part? So this is the high level summary of my result .
>>: Comfortable for who?
>> Joe Wenjie Jiang: Optimal.
>>: For who?
>> Joe Wenjie Jiang: Optimal for both people. Yeah. So I haven't defined the
concept of optimality. But later you see. So, yeah, so this is also a trade-off
curve. So these are the possible operating points on these three dimensional
space with different performance metric. So like in model two, it has the least
efficiency. For model two, sometimes improves, sometimes does not. And for
model three, it is optimal, but there may be higher communication cost in
architectural complexity. So this is -- we really want to find a good operating
point on this space.
There I'm going to model the existing status quo. So this will be a quick review of
the -- some existing optimization models. Now, first of all, I'll talk about traffic
engineering. So for traffic engineering, the major problem is for the network
operators to minimize the congestion of the network. So given the traffic
matrices on the network, destination peers, so the ISP either [inaudible] flow to
find the best optimization. Like this.
So here we assume that they can use a multi pass routing in this case. So to
give a more accurate formulation, so here's the traffic engineering problem. So
the first thing of topology and the links and the nodes. And second input is the
traffic matrices, which is exactly the load between any pairs of this source and
destinations. And we use the variable XIJ to denote the traffic flow from I to J.
And the output is the routing. In here we're not really modeling the current status
like these kind of using link weights. But we are trying to use a more general
decision space using the multi community flow. So here decision RIJL is the
fraction of the total traffic from I to J that is traversing [inaudible].
So here's just an example of the possible solutions of the flow. So we see that
they should satisfy the flow conservation here. So now I haven't talked about the
objectives of the ISPs. So the objective of the ISPs to minimize congestion and
so they have the objective function here as a sum of the all the link, link cost. So
the link cost is a function G of the total traffic on the link which is denoted as FL.
So the cost function is something like this convex non decreasing function to
reflect the goal that ISP don't want to have high link utilization here. So in the
formulation. So here the links should satisfy the capacity constraint and the
second line of the constraint is just a flow conservation. So this is the
optimization model. So this is classical, which is not my contribution here. Yes?
>>: So do you consider delay here?
>> Joe Wenjie Jiang: Delay? From ISP's perspective, the -- to try to avoid link
overutilization is the main goal. So delay is there not their primary concern.
>>: [inaudible].
>> Joe Wenjie Jiang: Yeah. Yeah. Yeah. So but using these objective function
so somehow you automatically try to find [inaudible] like if you go longer pass
then you see that if you sum over all these links. Because the traffic use small
links. So the low link automatically increases. So this objective goes higher. But
this objective function is just general formulation that is used by ISP to make the
routing decision.
>>: ISP is going to care about delivering the project to its customers.
>> Joe Wenjie Jiang: Yes.
>>: Its broadband and [inaudible] systems.
>> Joe Wenjie Jiang: Yeah. That's true.
>>: [inaudible] transit traffic.
>> Joe Wenjie Jiang: Yeah.
>>: Distinguish ->> Joe Wenjie Jiang: So I think in this model I'm not really concerned this
decision. I think this is the general behavior that ISP does. Just do the routing.
And of course there's exist a possibility that you consider, specially consider the
routing of the subscribe users like the content providers. Like here just assume
that they do not differentiate the traffic between the background traffic and the
content provider's traffic. Okay. Let's clear.
Okay. So now in here I'm trying to model the serviceable action problem. So as
I say assume that in this context I'm trying to model the case that the content
provider can replicate different copies of its content to different servers. So its
main problem is to assign the for every end users. So for example the ISP wants
-- the content provider wants to optimize the average user perceived
performance like the delay or other -- the transmission rate. So for example, we
care about the latency here. So in a special case, the ISP, the content provider
can do low balancing. So here the end user actually is not the normal end user,
is maybe a edge blotter that aggregates the traffic from all the end users behind
the -- behind the local ISP.
So it's going to decide for every edge router what is the load to each of the
servers. So this is the decision space for the -- for the content provider. So for
the problem the input is still -- so suppose now the ISP -- the content provider
has the full information, so he has to input up the topology and has to routing and
all these kind of user demand. User demand is really like the rate, you have to
satisfy for each of the end users.
So its decision available is here, the server user rate. We use this IST to denote
the server and designate an end user. So this is really the decision available for
the content providers. And it has to satisfy the constraint that it meets the
demand. So here I give a optimization model for the server selection problem.
Assume given the assumption that it has the complete information, which is really
the model to here, so in this case suppose the content provider wants to optimize
the usual latency but if you rewrite the -- this objective, you can -- it can be
formulated as a sum of the cost, link cost, but the cost function is different from
the ISP's link cost function. So here, this is the user cost function and this
[inaudible] denotes the content provider's traffic on the link, and here is the total
traffic includes the content providers and the background. Background traffic and
which satisfy the capacity constraint and meets the demand here.
So to give you better understanding of what this function may like, say if you
want to optimize the average delay of the users, so a simple way is to do this
weighted delay. So D is the delay, latency function of the link. And here is the
amount of CP's traffic on the link. So by using this objective function, it maps to
the average delay of all the users. So this is one of the example we be
considering here. So is that clear about this model? Okay.
>>: [inaudible].
>> Joe Wenjie Jiang: It's -- I'm not reflecting charging here. Yeah. The
economics here. So but if you go to the first provider for the content provider it
does not have the complete information. So we assume that the CP only
observe the end-to-end cost, like end-to-end latency, which is pretty much like
the -- what the CDN Archima [phonetic] is doing, like use DNS to choose the
closest server to each of the users. So we are building this model reflecting the
current practice in some sense.
So in this case the serviceable action choice is called greedy, which means that I
always choose the server with the smallest latency. And you can do load
balancing whenever possible. So that basically means that if you can use
multiple servers, then these servers will have the same latency. Otherwise you
can switch some traffic to a better server. So this is theoretical similar to so
called service molding which can achieve this [inaudible] equilibrium, which
means that okay but given this model there's no self oscillation from the CP's
perspective. You can study the equivalent point of the CP. And you can show
that this greedy serviceable action is minimizing like this function.
We're just not relevant to the contents here, but just give it here. You can plug in
to the optimization model here, then it is modeling the greedy serviceable action
behavior.
>>: [inaudible].
>> Joe Wenjie Jiang: D? D is the latency function, link delay function. Yeah, so
this is not my work. So this is some theoretical work. Yes?
>>: So then the problem -- not part of this problem is where to put your servers?
>> Joe Wenjie Jiang: Yes. So I'm not modeling the server replacement decision
because it may happen in a very different time scale compared to the traffic
engineering. You just get to play your servers, yeah, right before you start your
business. So, yeah, that might be a very important problem. But in here, we're
just trying to model that. Okay. We're not trying to model how content provider
can do from a clean state but rather what a content provider and ISP is
experiencing in a current status quo and how can you improve them.
So of course, maybe you can do some replace servers using some vitalization,
but that might be a different model. I mean here just assume that the content
provider is the -- the decision is that serviceable action. Okay? Yes?
>>: I'm not sure I understand this equilibrium, so this conclusion [inaudible] the
counter providers does their own adjustment and hold the traffic and changes get
feedback to the ISPs? And ISPs do their own [inaudible].
>> Joe Wenjie Jiang: Yeah. Yeah. So I suppose that the equilibrium point is
achieved before the ISP take another round of action. So this is an assumption.
Yeah. So that is it. Of course when you do this greedy serviceable action, there
might be some oscillations. But we assume that it converts to a stable point
before the ISP takes another action. Okay? So I don't see how to model the
interactions by using a two player game and how they solve the game later.
>>: So assume the equilibrium will be achieved before the ISP do anything.
>> Joe Wenjie Jiang: Yeah. Yeah.
>>: So this is purely based on the content where it matters adjustment.
>> Joe Wenjie Jiang: Yeah. Yeah. So okay. So after finishing modeling, the
current practice so now we're going to analyze the performance of this model one
and model two, when the traffic engineering and serviceable action two separate
problems. So we're going to find a set of good news and bad news.
So to study their interaction they just, the two problems are separate, and they
have the kind of feedback loop, so game theory is a next tour to start their
behaviors. So in this setting we formulate as two players to TG game. So two
players, ISP and CP, and their action staff is the routing and the serviceable
action decision, and the utility functions is just connective of the objectives of T
and SS. So consider special game play and which is like the two players were
iteratively optimized the best response, using the best response. Which means
that in each round one player will fully solve their problem before the other user
takes action. So this is the way how the game is simulated, okay?
So in this game setting, so we are going to study the probabilities. So first of all
I'm going to bring you some good news about this. Now, the first theory shows
that the strategic game has equal in point for both model one and model two. So
this is good news which basically means that okay, it is possible for the two
parties to settle down to a stable point and there will be no oscillation. And it is
this stable point that you can study the -- at which you can study the benchmark
performance. So this basically means that, okay, this provides a good -- so a
way to study their performances. Otherwise if the performance is always
oscillating, it will be hard for us to track the benchmark performance.
But the Nash equilibrium may not be unique, which is very problematic as I will
show later. And secondly, it may not be achieved through iterative optimization.
This is not going to go from the theory, it just says -- the theory just says the
existence. So where it shows this -- the achievability of the equilibrium point
using simulation, in most of cases it converge. So this is about the stability of
this interaction model. This is the first news I bring to you.
>>: Yes. The Nash equilibrium if it's not unique and multiple, the equilibrium
points, are you saying that [inaudible].
>> Joe Wenjie Jiang: They're not -- unfortunately, they are not.
>>: So one might be better than the other?
>> Joe Wenjie Jiang: Yes. So from the T's perspective, from an ISP's
perspective, usually the objective value is the same, but for CP it may not. So,
yeah.
>>: Is this different from like hill claiming optimization?
>> Joe Wenjie Jiang: Yeah, it's kind of hill climbing, yeah. So when you solve
the game. Although you don't have a synergistic objective function, but you're
optimizing through different variables, yeah.
So interestingly, so this is the second news. Which is good. Which is global
optimality on the same objective, which is just go back to your crash net, this hill
climbing algorithm. So when they have the same objective function that you can
see there, they actually solving this optimization problem. This game is solving
this problem. So they have two variables. One is the routing, one is the
serviceable action. So the optimize iteratively over two variables. And think
about this. This is not a good formulation. Because for this game formulation, it
is not in a [inaudible] form. So you're not guaranteed that this kind of hill climbing
algorithm can achieve this optimality. So instead, we look at this global
optimization problem. So in this case, they have the same objective but we
relaxed the decision space which is the -- I use the XSTL here which denotes I
can directly assign exact amount of traffic on the link rather than the percentage
of the traffic.
So you can simply think of this new variable as the product of the two variables
here. But of course by using this you have a blotter decision space and we
caught this optimal value of this problem as global optimality. So the natural
question is can we -- can this kind of game formulation achieve this global
optimality? So the answer is yes. So the theory shows that the special case
game can -- is unique. The Nash equilibrium of this special game is unique
which is optimal but optional and can be achieved by this kind of alternate best
response place. This is the good news. Which basically means that under the
special case we assume there's no background traffic.
Well, this is not so true, but you can see that if the content providers traffic is
increasing on the Internet, then this is somehow a trend that goes through
towards this assumption.
>>: Wait a second. [inaudible]. It's mostly content provider. No one content
provider is going to have the bulk of the traffic ISP.
>> Joe Wenjie Jiang: Yeah, yeah, no one single content provider, that's true.
Yeah.
>>: [inaudible] does it seem like a single content provider can significantly
[inaudible] to [inaudible]?
>> Joe Wenjie Jiang: No. That might be the case that when the ISP deploys the
content services [inaudible] so in this case, it may have the separate backbones.
So in the separate backbone if there's routing problems and also this content
[inaudible] problems, in that case, the content traffic will constitute the order of
the traffic.
>>: So unless you [inaudible].
>> Joe Wenjie Jiang: Yes. So you can -- it can be differentiated into two cases.
One is when the link is under low utilization and when a link is at high utilization.
Yeah. But also the link delay function not always depends on the load but also
depends on the location. In some cases the link may have a very large
propagation delay. And that is exactly difference between the objective functions
between the ISPs and content providers.
So actually this theoretical model shows that. So what happens when the
objective function is similar, and what happens when the objective functions are
dissimilar, and what bad things may happen? Yeah. This is the starting point of
this, of this research. Okay. So I assume that ISP and CP have the same
cross-function here in this special case. Well, this is partially true because
sometimes the low utilization may mean low delay [inaudible] but in some case is
not because when some link have very large propagation delay as these
probably won't care, but the content providers will care about that.
So this theorem has the implication that if these assumptions is held true then
there's no need for alternate control. By doing this it is good.
>>: I don't quite understand the no background traffic. Was that an assumption
of the previous [inaudible].
>> Joe Wenjie Jiang: In the previous [inaudible].
>>: Is it because you're just saying there's one other ->> Joe Wenjie Jiang: Yeah. This is assumption of this theorem which shows
that when their objective function is the same, so here ->>: Traffic function is the same part?
>> Joe Wenjie Jiang: Yeah.
>>: Where is the part about no background traffic.
>> Joe Wenjie Jiang: So no background traffic means here. The cost function
is the variable of the total traffic on the link. So if there's background traffic, then
the -- this objective function for content provider would not be a function of the
total link on the -- it may be a function of its own traffic. So that's why we need
the -- there's no background traffic there.
>>: [inaudible].
>> Joe Wenjie Jiang: Yes, no outer traffic. Yeah. In fact, we have, but, yeah,
we're just trying to explore the -- what is the like the [inaudible] value can
achieve. This is something that [inaudible] tells you.
>>: Can you just subtract the background traffic from the link [inaudible] and
assume that the link has [inaudible]?
>> Joe Wenjie Jiang: If you can do this kind of ->>: [inaudible].
>> Joe Wenjie Jiang: No, all these traffic share the link. So they share the same
queue. They essentially interact with each other, unless you do this kind of
physical division. Like you have this kind of separate backbones. Right. So the
first -- after the good news there's bad news. The first bad news is about the
paradox of the extra information. So this information basically said when the
content providers given more visibility it is not guarantee to do better. So think
about it. In the difference of the CP model in model one and model two is that in
model two it can -- has complete information, and it can solve the optimization
problem to its fully solve the problem. But this information tells you that in that
case although it seems that you can fully solve the problem, you are not
guaranteed to do better. And here I'm going to show you why this bad scenario
can happen. So here I'm just using a simple example to illustrate the high level
ideas about the paradox. So think about so there are two servers in the net -- on
the CP's network. So the user can either choose this server or this server or do
load balancing. And there are two background flows from this A to D and A to E
here. So for each of these source destination pair, either the background or the
content provider's traffic, it has the ability to go through two links [inaudible] here,
okay. Like from B to F, it goes BD or BE. Okay?
So we assume that the four links [inaudible] here are bottom links. So we don't
care about the delays on the four links here. This is just a example I set to
illustrate anomalies. So these -- now, suppose the two links, CE and BD here
have large propagation delay which the CP tries to avoid because it cares about
delay but ISP only cares about the utilization.
So in this case, when ISP solve the TE, it is trying to do the work that all links will
have the same utilization, okay? And the serviceable action is trying to minimize
delay, so you should somehow avoid using links BD and CE because has high
propagation delay. Now, consider the equilibrium points of the two models. So
we say that the paradox may happen when the traffic engineering assigns more
CP traffic to the 2 links with high propagation delay. Because essentially the ISP
don't care about the -- may not be caring about if user perceived delay. But if it
more cares about the link utilization. So it has a way to arbitrarily assign the
background traffic and CP traffic on the links as long as the links is slow utilized.
Like in this case. So the paradox happens when in model two [inaudible]
unfortunately assigns more CP traffic to the bad links. So in this case, no matter
how the CP wants to optimize its network and solves the problem fully, it cannot
get a better performance than model one. If in model one ISP is clever by
assigning less CP traffic to the two bad links. Yes?
>>: So here [inaudible] using assigning [inaudible].
>> Joe Wenjie Jiang: Yeah.
>>: [inaudible].
>> Joe Wenjie Jiang: The propagation delay is concluding the delay function.
So the delay function is a function of the total traffic which from theoretical model
includes recurring delay and the propagation delay.
>>: So where is the propagation delay [inaudible].
>> Joe Wenjie Jiang: It's in the D function, the delay function. Yeah. So that
cost function of G and H may be different in this sense.
>>: ISP [inaudible] would have a [inaudible] delay from any point, say from land
in Seattle [inaudible]. So are we talking about those kind of delays?
>> Joe Wenjie Jiang: Yeah. The propagation delay will -- it depends on -- yeah,
as you say, the proposition delay is something you cannot control, right? It is just
this --
>>: [inaudible].
>> Joe Wenjie Jiang: Yeah. But you care -- sometimes the current delay may
be compatible to the propagation delay depending on how loaded the link is.
Yeah. Also, the second bad news is about these suboptimality. So this picture
shows the bad news. So think about here in model one, model two, so these are
the equilibrium points of model one, model two. But if you characterize the all
possible operating region between ISP and CP, here is the whole operating
region and this is the peridiole curve, which means that you cannot improve one
dimension further without hurting another dimension. So this is the peridiole
curve. So in this case, you see that the Nash equilibrium is not operating here on
the peridiole curve. So there exists some space to get further improvement. So
this is the second bad issue we want to address.
So now we are trying to have a joint design and which addresses the above
problems. So before talking about the real joint design model, so we have two
approaches. One is that we have this kind of oracle model, which is like we
optimize everything in the black box and we brought the boundary of different
layers so all the problems are solved at once. And the information should be
shared in the two parties. And they can arbitrary trade-off between two
objectives because it is a black box, and you can arbitrarily control the trade-off
between the two objectives. Because you can control the whole decision space.
So this is the first model like this. And second model is like a modularized
design. You still want to have separate, separate modules. One soft TE, one
soft SS. So you still allow a layered solution. But with some information
exchange. And although you can arbitrarily trade off between two objectives, you
want to have a fair division of the benefits. And potentially, you can allow the
cooperation between two different business entities because it's not getting
together.
So this is the model we're working for. So the high level idea of using this joint
design is to use this solution concept called [inaudible] solution. So suppose this
is the equilibrium point which is status quo, which is the equilibrium point of the
model one, which is what may end up today. And there's another point on the
peridiole curve. And this solution concept tries to find out this solution. So which
is maximized improve the product of the improvement by the two parties here.
So this is the high level of solution concept.
So there's some engineering implications. But first of all, this somehow ensure
fairness because this solution concept is derived from the bargaining process
between two players. So it ensure some fairness between two objectives. And
secondly, this solution is decomposable, so you can allow us for layer decision,
which means that you allow one TE problem and one SS problem, which is of
course the new TE and new SS problem but with some information exchange
between the two model, between the two modules.
And there's no need to explore a large weight parameter space. Which means
that otherwise it's hard to trade off between the two objectives which one is more
important. And this solution can apply to varying traffic matrix user demands.
Otherwise you have to tune different weight parameters for different input. So
this is the implications of the solution concept. Yes?
>>: Can you define the?
>>: So fairness here, well, I don't have a quantitative Nash of the fairness, but
the fairness, the notion of fairness is derived from the how the Nash bargaining
solution is derived. But for the sake of time I have no time to fully derive the
solution. But just give you some information that the fairness is derived from the
bargaining. Okay.
If you have interest, I have some slides where we can discuss offline. So as I
say, the solution concept is derived from these following four properties. Nash
bargaining solution. But I don't have time to go through this one by one. And
then I'm going to show the evaluation results. So I have some numerical
simulations that on these realistic ISP topologies giving these delay user
background and traffic model just to realize, just to realize the more realistic
settings of the network.
So the first result shows what is the impact of the content providers traffic on the
network? So it is interesting to see that. So in this setting, we fix the total
amount of traffic which is the CP's traffic in background traffic. We fix the total
amount. Then we adjust the percentage of the CP traffic as here from no CP
traffic to 100 percent CP traffic. Then we match the performance of the SS and
the TE cost.
We see that as there are more CP traffic injecting into New York, both of the two
performances. First thing we do to improve then degrades again. Okay. So this
is an interesting observation which means that okay, it seems that if you are
running the two problems separately, somehow if they are more CP traffic you
are getting better. But when they are too much CP traffic, this kind of separate
models will -- will do worse again. So the reason is that for the -- if you look at
the traffic engineering cost, so if we have more CP traffic so it means that you
have a higher possibility to find some closer by servers so without going long
links, so that naturally decreased the link cost here, because you are using less
links. But where there are more CP traffic, that means that the conflating
objectives of the two parts is really a problem because of the interaction. So
because that conflating objectives, then the performance goes up again. So this
is the course for this kind of curve. Okay.
So there are some similar reasons for the -- from the CP's point of view. So first
of all when there are very little traffic, there's nothing much you can do because
the ISP always allocate your traffic to some bad links with large propagation
delay. There's nothing that you can do. But if you have larger share, the ISP
cares about the link utilization. It has a better chance to go to better links.
Okay?
And when there are more CP's traffic, yeah, then in this case, because the
conflating goes between the two parties, then it would sense the performance.
So of course here the performance is the average delay for the content provider.
So he has nothing to do with the actual amount of the CP's traffic.
>>: This is in [inaudible] part doesn't surprise me. The more traffic you put in,
the more it's going to cost for both of them. Right?
>> Joe Wenjie Jiang: No. Here I fix the total amount of traffic. Total amount of
traffic is the same.
>>: The total amount being like background plus ->> Joe Wenjie Jiang: Yeah, yeah.
>>: Oh, okay.
>> Joe Wenjie Jiang: But I just varied the percentage of the traffic.
>>: Oh.
>> Joe Wenjie Jiang: Yeah.
>>: So is it happening because the content provider traffic is on uniform and the
background is uniform and so they don't [inaudible] capacity [inaudible]?
>> Joe Wenjie Jiang: It's not uniform ->>: So I guess the links [inaudible].
>> Joe Wenjie Jiang: Yeah. Yeah.
>>: And the background traffic is uniform? Is that right?
>> Joe Wenjie Jiang: Uniform [inaudible].
>>: I'm also trying to understand the [inaudible].
>> Joe Wenjie Jiang: The background traffic, what do you mean by uniform?
>>: So I guess.
>> Joe Wenjie Jiang: Oh, no, no, no.
>>: You're charging for the worse thing giving that, and so the reason it would go
up is the -- somehow there are few links that one or two that get a lot of the
traffic, right, that's what's happening the way things are [inaudible] so it must be
you're focusing more traffic on a few links when there's a large percentage of CP
traffic. A few hot links. Is that right?
>> Joe Wenjie Jiang: Yes. There's a few hot links, but in the simulation model,
the backgrounds traffic is not uniform. So I just like randomly pick out some
assign -- it's a random, yeah.
>>: Random but unbiased point.
>> Joe Wenjie Jiang: Yes.
>>: Is there a server and [inaudible].
>> Joe Wenjie Jiang: Every ISP ->>: How do you use the server [inaudible].
>> Joe Wenjie Jiang: Server is -- the server is randomly -- is randomly chosen.
Yeah.
>>: Not present [inaudible].
>> Joe Wenjie Jiang: Not what?
>>: And they are not present in all moments of ISP?
>> Joe Wenjie Jiang: The server is not present every node of the ISP. But it's
randomly selected.
>>: [inaudible]. And whatever the value of the demands.
>> Joe Wenjie Jiang: The value of the demand?
>>: Of the content provider?
>> Joe Wenjie Jiang: You mean the user demand?
>>: Yes. Yes.
>> Joe Wenjie Jiang: Okay. It is -- so it is chosen to reflect the network load. So
as I say, I fixed the total amount of traffic, okay, so assimilate some scenarios
when the network is lightly loaded or heavily loaded. So given the capacities, I'm
trying to first figure out what is the total demand, then I just assign the user
demand according to its, the percentage of ->>: [inaudible] distribution or some [inaudible] distribution or ->> Joe Wenjie Jiang: For the user demand?
>>: Yes.
>> Joe Wenjie Jiang: It's just -- the user demand is uniform, yes. User demand
is uniform. Yes?
>>: Can you remind me what is [inaudible] and what is [inaudible]?
>> Joe Wenjie Jiang: T cost is just the link cost, it's the sum of the link cost
function.
>>: Delay [inaudible].
>> Joe Wenjie Jiang: No. The T's link cost function is this kind of convex shape
curve, as I showed you earlier. To reflect the link utilization. For the SS cost, it is
the sum -- in the model I use this MM 1 delay model and plus the propagation,
propagation delay. Yeah.
>>: [inaudible] 2 content provider [inaudible] so let's say one is taking 20
percent, the other is taking 80 percent. So they both will have a similar curve,
right? But then when you add the -- add the two up, it seems like the total link
utilization should be constant, right, if you add let's say you had two content
providers and both had a similar [inaudible].
>> Joe Wenjie Jiang: Two content providers. So in this setting there's only one
content provider.
>>: But say you had two content providers, then it seems like a total utilization
should be constant, right, because you said the total traffic is constant, right?
>> Joe Wenjie Jiang: Yeah. Yeah.
>>: It's just a percentage between one provider and the other provider and
keeps changing, right? It doesn't seem like a [inaudible] case it seems like the
total utilization would be higher, larger between the content providers.
>> Joe Wenjie Jiang: Yeah. So intuitively, yeah, it's true, like just the total like
total demand's the same.
>>: Right.
>> Joe Wenjie Jiang: So utilization is the same.
>>: Would be the same. But it seems like when there's a larger [inaudible]
between the two content providers the link utilization is higher than the cost is ->> Joe Wenjie Jiang: Because I haven't seen -- well, if they are content
providers, there may be self interaction between the content providers, which is
not reflected here.
>>: Another thing is that you mentioned this oracle model, right, so if you were to
pull out an oracle [inaudible].
>> Joe Wenjie Jiang: Oracle is like biggest -- in oracle, you can give different
weights to the here. So in that case, it's hard to say how you can assign a
weight. So that is why I go for the second model, the modularize design. Yeah.
Okay. So let me quickly go through outer results. So this result shows
performance improvement over these models. Over model one. So yellow
refers to the improvement of model two, and green is the model three. So we
see that where the network is under link low utilization, somehow the model three
is doing better than model two and is high improvement occurs at the two
extremes, when they are let CP traffic or more CP traffic. So this is the general
chant for this. There's some improvement. But sometimes the improvement is
not very -- is very [inaudible] like this is the percentage of the improvement.
Okay.
So this is under low utilization, when the links is always spare. So you can see
because if link is under utilization, there is nothing much you can improve. But if
the network is under high utilization, then the improvement is somehow can be
very significant, like in this case can be like here, 80 percent. And also you
observe from a simulation that it's kind of -- the paradox of [inaudible] information
can happen. Which means that model two will not improve as reflected in here.
So this is the -- to see the improvement of the two models.
Yes. So I also carry out some understudies in various topologies, and I think I
escape this one. So the main -- the main goal of this job is to see the forest
through the trees. So now the coexistence of the ISP and the content providers
is hard [inaudible] topic and there can be many models like cooperation models,
like the P for P working group. People there are proposing the cooperation
between peer-to-peer and ISP.
So here is just a table that reflects the possible changes to the two players. So
either one changed or two both changed, or only one of them changed. So this
work categorize the three entries here and show their performances and how
much we have to do to migrate to these models. So for the conclusion of this
first piece, sorry, I've been running a little more time, so this is the conclusion.
So first of all, this is a first step to study this problem. And I just try to propose a
solution concept that can give you some insight into which is the right approach
to go and I also -- the another contribution of this work is to provide another, an
analytical framework to study these, to study the [inaudible] of these models. So
before going into the second part, which is very short, is there any questions?
>>: Is there any [inaudible].
>> Joe Wenjie Jiang: Yes. The second work is related to some of my ongoing
work, which is also related to the potential problems I'm going to solve in here.
So that's why I would like to take a few minutes to talk about that.
So I'll go very quickly. So the second part of my work is to categorize the
performance metrics in peer assisted live streaming system and to see how we
can monitor the peer's performance in an efficient way. So the goals of my work
is to define these formal languages for the performance matrix in peer assisted
streaming system. There are three metrics I'm considering right now. One is
rate, another is delay and robustness.
So we want to identify these. What are the system bottlenecks contributing to
this matrix from some national studies in your real P2P streaming system? So
this is some of my work I was doing in the summer. Then my goal is to build
some models to quantify this matrix and then how to optimize these matrix and
trade off them through the possible design variables. And finally to provide this
algorithm design and protocol implementation.
So the first one is about the rate limitation. So this is the collaboration work with
another post-doc in my group. So in this work, we are trying to categorize the
performers bound for a rate. So in this study, we model the live streaming as a -either a tree based streaming or mesh based streaming as a money tree
construction. Because essentially for every bundle of the stream it goes to each
peer, and these [inaudible] actually spends over all the peers. So it forms a
spanning tree.
So for different boundaries of the stream, it can go through differently spanning
trees. So we're trying to answer the question. So what is the maximum
streaming rate given the capacities of all the peers? And the second problem is
if you want to achieve the desired streaming rate, so what is the minimum server
capacity you need to achieve this? So this, the two problems are actually prime
and dual province of each other.
Third, if we're going to build these trees, what is the minimum tree depth we can
guarantee? So in our, the -- this is our past work. So we ask the three questions
in these dimensions. One is that we don't have to [inaudible] for the peers. So
for each peer it can have as many children as possible. And second case is that
for one peer, it can only have one child. So this is another case with the -- this is
the second scenario we consider. And the third scenario is that we can have
arbitrary final degree. But we assume that the user is homogenous, like they
have the same capacity.
And the last case is like don't have the same capacity. They're heterogenous
users. So the two that -- the second problem and third problem is what we
solved in one of our prior work here, which appear in some metrics last year. So
we either give the bound -- both give the bound in how to achieve this bound by
constructing these trees. So this is the work we are doing to quantify the rate
performance.
Another work we do is to quantify the delay metrics. So this is really from the
user, user perceived delay, which includes the startup delay and playback delay.
So we differentiate the different components that constitute a delay by
categorizing them into different groups like the link delay, node delay, and
processing delay. And then we give a set of the design variables here. Like in
the P2P streaming we can control the size, we can control the [inaudible] the tree
depths, streaming rate and the tolerable loss rate and the peer capacity and
signaling method.
So we try to answer the question with these design variables that we can control,
how can we optimize this matrix? So this is one of the tables that -- so we
discuss to give the importance of these design variables to each of the
components that contributes to the total delay. So in here more stars means the
more significance to the total delay.
So we also give -- have some simple analytical models to quantify these
performance matrix. So this is the high level picture of what I'm trying to do not
future.
So another component of my work is the P2P traffic management of a real tree
based live streaming system the. So in this work we select the locks from each
of the participating peers and by using these locks we're trying to quantify the
user performance to find out the system bottom next. So which to find out
whether these are assumptions about our models is correct. So this is to verify
the -- our models, by using these management data. So like here is a high level
picture of whether obtain from the management study. So like here, if we think
about a tree based streaming system, if this is the over lay tree depth, the tree
depth and the Y axis is the lay, so we can see that the delay grows
proportionately somehow to the total delay. So this is the case in the real
operating P2P system when there is no IP multicast support. But when there is
IP multicast support, we can see that the delay is somehow not significant
distinct, because in this case if using multicast, the data is not really transferred
through the trees, so there has some possibility that even if you have high tree
depth, the delay is comparable to the -- compared to the nodes with the low
depths. So this is the improvement of their -- of the IP multicasting in their
operation of the system. Because this is part of the study I've conducted.
So, yes, so this is all of my talk. And any questions?
>>: The multicast support include the [inaudible] that you could multicast to your
neighbors?
>> Joe Wenjie Jiang: It's not ->>: [inaudible] I mean ->> Joe Wenjie Jiang: No, it's like so you can detect a possible set of the peers
within the same like IP multicast capable domain like in the same lane. So in that
case, this were openly multicast option. So they actually go through the multicast
tree, rather than go through the overlay tree.
>>: Yeah. So, yeah, try to understand you've got an overlay tree, so [inaudible]
some neighbors in the overlay network, and that means you're only going to
communicate with those guys and neighbors in overlay network, but you can do
so through IP multicast, is that what ->> Joe Wenjie Jiang: So ->>: I mean, or can you IP multicast to the entire ->> Joe Wenjie Jiang: Oh, I see. So --
>>: And in this case, what purpose does the overlay serve?
>> Joe Wenjie Jiang: Okay. So the control pass of the multicast is not exactly
the same on the overlay tree. So the overlay tree is only responsible for the
streaming, data streaming on the -- on the traditional tree based multicast. But
for the IP multicast, they have their own control group, so they can discover like
which of the peer neighbors are on the same multicast domain. So they are not
communicated through the overlay, overlay tree. So that's why you have a
possibility to find out more possible candidates rather than just your overlay
neighbors.
>>: Yeah, but that means that some of the links in the overlay tree are not
actually used for streaming data because data is already broadcast in the
underlying ->> Joe Wenjie Jiang: Yeah, that's true.
>>: So what purpose does the overlay serve?
>> Joe Wenjie Jiang: So overlay serves when the IP multicast -- well, first of all,
it's not -- it's not possible, okay, when the -- because in most cases if it's in Y
area of network, the IP multicast is not possible.
>>: Okay.
>> Joe Wenjie Jiang: Yeah. So there is ->>: So you could use it wherever you can, basically.
>> Joe Wenjie Jiang: Yeah. It's just there, the design [inaudible].
>>: [inaudible] but instead of like the information constantly down from the tree,
you might just show very like other nodes within the tree at the same time. I
mean, is that right? I mean ->> Joe Wenjie Jiang: Yes.
>>: Wait for it to slow down the tree.
>> Joe Wenjie Jiang: So before they decide whether the data stream through
the overlay tree, so they first would detect whether it is possible to do this IP
multicast. Of course some of the nodes are still get data -- still getting the data
from the overlay tree. But say, let's say this head on the overlay tree will serve at
the head of the -- in the IP multicast. So it is still getting the data from the overlay
tree, but forward the data to its descendents, to IP multicast. So it's a combined
[inaudible] of the two approaches.
Other questions or comments?
>>: So [inaudible] between the traffic [inaudible] content provider is pretty
interesting. But I wonder whether it's possible to make the objective function of
the content providers more realistic. So like say if the performance -- if the
performance carries delay, right.
>> Joe Wenjie Jiang: Yeah.
>>: You don't necessarily [inaudible]. For example [inaudible] good enough
[inaudible].
>> Joe Wenjie Jiang: Yeah. Good enough guides. And possibly some ->>: And that's for delay. Throughput is the same thing, right? So if a content
provider delivering [inaudible] don't they have a few rates, one [inaudible] doesn't
mean too much. Either to one or two.
>> Joe Wenjie Jiang: Yeah.
>>: [inaudible] probably don't have anything beyond [inaudible].
>> Joe Wenjie Jiang: Yeah. We don't really care about -- sometimes we don't
really care about delay. But it's not delay sensitive traffic, it's just we do.
>>: Right. Yes. So just thinking the -- this cost function not exactly modeling
what [inaudible].
>> Joe Wenjie Jiang: Yeah. So in here, we used the delay function is somehow
also convex, so we use the MM1 model. But in fact, so there can be, as you say,
there can be different user cost functions assigned to each link which can either
be the -- also depends on whether the cost can be additive. Because sometimes
if it's not additive, then this model does not apply.
I think this model applies to additive cost. Then you can give different -- of
course you can give different shapes to the cost function. But in here, I'm just
trying to show what happens if the cost shape is quite similar, because in here
the cost function of the ISP and the CP is quite similar. And we try to answer the
question even in this case what are the possible anomalies and [inaudible] loss.
They of course in reality, there can be quite different objective functions of CP
and ISP. But in that case, maybe the gap optimality gap will be larger, so I think
by using the same cost -- well, quite similar cost function, I'm just trying to show
the -- give some insight into these kind of inner action and what will happen.
>>: I guess the follow up, on that -- now, this is a competitive environment and
did you model [inaudible] the real cost there 95 percent all charging or anything
relating to how content provider relate to ISPs?
>> Joe Wenjie Jiang: You mean thinking about some economics cost?
>>: Right. And you [inaudible].
>> Joe Wenjie Jiang: Right. That's true. So here I'm directly transferring the
performance into dollars. But if you think about the real dollars, so in that case,
you should really consider multiple, multiple content providers because they can
offer different contracts to the ISP, say how much capacity I want to guarantee
for this. And, yeah, that's a very interesting problem to study. In that case, you
also need to consider these kind of inner ISP policies like in that case because
some -- some ISP want to attract traffic where some ISP don't free ride the -they want some traffic to free ride without getting any revenue.
[applause].
>> Joe Wenjie Jiang: Thanks.
>> Jin Li: Okay. Thanks for the excellent talk.
Download