0:01
Alright, now about the bad call. As we mentioned that there are headers.
There are protocol semantics, and there are control channels.
Three families of factors impacting the speed that you get in a back haul, in
terms of overhead, okay? And then there are also, just non-ideal
back haul conditions, including congestion, for example.
So we will have time to talk only about one tiny, tiny case, that is congestion
regulations through TCP to deal with non-ideal back haul situation.
Okay. And you can imagine how much damage all
the rest can add up to. Alright.
We're going to go walk through three very quick examples about the TCP.
First one is there's something called Receiver Window.
Now we talked about it, the CWND, back in lecture 14, that's the Congestion Control
Window. That is on the transmitter side to say
that, don't talk faster than the network can handle.
There's also a Receiver Limitation that says, don't talk faster than what the
receivers has buffer for. Okay?
So, for a single TCP session, the maximum window is limited to two to the 16th
power minus one, okay? Because there are 16 bids to denote.
The receiver window size. And that means 65,535 combines, okay?
So you can multiply by eight to get the number of bits
1:46
will be receivable, okay. For every round trip time.
If you only open one PCP session. You can open multiple parallel PCP
sessions if you want. Now what is the round trip time?
You know, typically a good round trip time might be a few milliseconds,
ten milliseconds and so. But if you're talking about long distance
and congested time, you can easily get to 100 millisecond.
Then we're talking about 65535 multiplied by eight, and again, number of bits,
divided by 100 millisecond, that is, .1 second.
And this is about 2.4, 5.24, megabit per second.
So I don't know about your physical layer,
but by the time it propagates up to TCP, the transport layer four, this limitation
alone can make it no bigger than 5.24 megabit per second.
Even if your physical layer can actually get to 315 mega beats per second.
A second example. Okay, you got some long distance links,
and in the Homer problem back in chapter fourteen if you haven't done that yet,
let me just tell you the answers there. The TCP throughput is upper bounded by
MSS, which is shorthand for, the maximum size of segment segment okay.
So Maximum Segment Size, which is fixed for TCP/IP at 1460, again
bytes. Okay.
3:31
Over round trip time, times square root of P, where P is the packet loss rate.
So suppose you've got a long distance link, so the round trip time is pretty
bad. And then there is a lot of congestion and
packet drop, so P is pretty bad. For example you have 1,460 times eight to
get two bits divided by, again, easily 100 millisecond,
okay? And let's say you've got a 1,. ten to the minus three probability of packet
drop, which is actually very high number. Okay,
you may think, hey, it's 0.001, it's actually a very high number.
Ideally you want to get to, like, ten to the minus six or something.
Now, if you calculate this, this is about 3.69 megabit per second.
Now that's even worse than the 5.24 we just saw.
Just because in the transport layer you've got a bad end-to-end connection.
Now it drops to less than four megabit per second,
which actually still is not too bad. If you can get application layer
throughput of four megabit per second, it's reasonable for many applications.
But don't dream about 300 mega per second.
The third example is going to really kill you.
This is what's going wrong with the end server.
Okay? It's actually not the network that's
wrong, but let's say there's a flash crowd, meaning suddenly a lot of people
want to watch something. Say, in a major sports event or news
event, they all want to crowd into, say bbc.com.
Okay? And suppose the bbc.com server is now
well-sized to take care of this kind of flash crowd.
It, it probably is, but there are other kind of website that are not.
Then, it would trigger the following so-called Nagle's algorithm.
5:28
Okay. What is says is that don't send data as
they become available. Okay?
You can't generate data fast enough because of the server bottleneck say, the
CPU speed, right? Then you just combine many small amounts
of data together into a large packet, and to better utilize the network.
In doing so, however, the trade off is while you are more efficient in using the
network, you increase the delay now. For example, you may need now instead of
one, four round trip eleanor to actually send something out.
6:03
And then what you see is the following. You get the MSS, okay, the maximum
segment size. For each single segment, you get this
number of bits, okay, 1416 times eight. And to send out a single small segment,
you actually need to wait, let's say, four round trip times, that is 1. times
four. Okay.
Because the server is so congested, it just cannot give you all the data that
you need. And now you are down to 29.2 kilobit per
second. This is what kills you,
and this is one of the reasons why sometimes, go to a popular website.
Even though you think, hey, the network should be good at this hour, okay,
or I'm standing right beneath an EOB, with my fancy IT phone.
Why is this still so slow on my e-mail server or video server?
And sometimes that's because the other end, the server itself, is slow,
and you can get to something like 30 kilobits per second,
which was pretty good twenty years ago, but at this point, that is intolerably
slow. So, now we got smaller and smaller and
smaller number. So it doesn't quite matter at this point
what is your physical layer of speed. Let me summary,
what we have seen today is the importance of control plane,
is the importance of management overhead and the importance of non-ideal network
condition. In some sense this lecture 19 is like the
overhead lecture of the 20 lecture course.
And back to that salesperson trying to sell you the LTE device, now you know
what to ask. Say, hold on a second, don't give me a
300 megabit per second number, okay, I don't believe that number.
It's true number, it's just not relevant to my actual user experience.
Tell me what application, when, where are the measurement point of the speed, which
layer are you talking about. I guarantee you get a different answer,
probably you'd be kicked out of the store.
And now we are moving on to the very last lecture of this whole course and that is
on the subject of fairness. Fairness in tech networks.
Fairness in social network.