Monday, December 20, 2021

very good graduate school opportunities

 strongly recommend Max Planck CS@max well resourced, world leading research institute in pleasant setting.

Monday, November 29, 2021

Principles of Communications Week 9 L16@LT2 11am, 30th Nov 2021 - Systems

 Finally, some systems principles....put in to practice.

and the Course Summary 

In general, everything lectured is examinable. Any additional details (e.g. protocol specifics like packet headers/fields etc) or equations should be available as part of any exam questions. 

Thursday, November 25, 2021

Principles of Communications Week 8 L15@LT2 11am, 25th Nov 2021 - Traffic Management

 One other dimension to think of Traffic Management - Signaling 

congestion is a signal whether packet loss or ECN

price is a signal, whether per session/flow, or per day/month year

users demand is a signal - whether sending VBR video or rate adaptive TCP or QUIC traffic - the rates and duration (or file sizes) tell the network provider what to provision for,,,

aggregate demand (e.g. peering traffic or customer provider traffic) is a signal


so even without deploying an explicit signaling protocol (e.g. like RsVP) there is a lot of meta-data telling stakeholders what is affordable and what to be afforded.

Tuesday, November 23, 2021

Principles of Communications Week 8 L14@LT2 11am, 23rd Nov 2021 - Optimisation - transport/end-to-end

 So we looked at optimisation for routes, including multipath, and optimisation for flow rates/congestion pricing. What scope is there for improving the end-to-end protocols themselves in detail - for the first, we see MPTCP, which enables single source-destination pairs to take advantage of multipath routes, and for the second, QUIC, which reduces the latency in the application/transport/network pipeline through several mechanism improvements - of course, there are also now people working on multipath QUIC too, since we seem to be about to deprecate TCP in various forms (at least for web apps). 

One question in class today was about QUIC migration (how does a session survive a change of IP address) - the details are discussed in this draft

Thursday, November 18, 2021

Principles of Communications Week 7 L13@LT2 11am, 18th Nov 2021 - Optimisation

 Why is utility cast in terms of log of rate  - risk aversion - see bernouilli's argument for this from a long long time ago!

In working out the function that gives us delay cost in terms of rate allocated to a link of a given capaciity, the headroom (load / (capaciity-load) ) is the  simplest function, but queuing theory may give more complex results, and multipath assignments of traffic may multiple the impact...

a useful explanation of proportional fairness

Tuesday, November 16, 2021

Principles of Communications Week 7 L12@LT2 11am, 16th Nov 2021 - Data Center networks & Applicatiion Needs&Solutions

 basically, this paper covers the topic QJump !


Next, we'll go back to the wide area and look at joint optimisation (of the network and the end system protocols)

Thursday, November 11, 2021

Principles of Communications Week 6 L11@LT2 11am, 11th Nov 2021 - From Schedules to Data Center networks

 The main reason Generalised Processor Sharing is useful as a model, is to make clear the idea of a round. In work conserving schedules, the time spent by a given packet in a given flow in the router depends on the number of other packets from other flows, ahead of it, waiting to be transmitted to the next hop. The round advances but it isn't a measure of elapsed real time, as it depends on the number of flows currently in the round, which varies as sources start (and stop) sending, so flows join (or leave) the system. 

Of course, if all flows were constant packet size and constant packet rate, and we only admitted as many flows as would fit in the capacity along the path, exactly, then the round would map to a wall clock (real time) - but flows are often variable in number, in packet rate and in packet size.


What the model lets us do is 

a) reason about how fair and accurate a real scheduler is

b) work out admission control (can we accept a flow in the call setup/open loop flow control paradigm) or not - i..e for variable flows as above, described using some simple parameters like a linear bounded arrival process with a peak and burst size , that want some sort of minimum capacity guarantee (even if just roughly) - will they fit (without excessively disrupting the existing / established set of flows of packets?

c) what latency we might get for that flow, due to queuing and scheduling inaccuracies (op top of the basic latency due to simple propagation delay over the whole end-to-end path).


In the next section, we'll look at the exceptional setup & requirements in data center networks, where we may be able to make simplifying assumptions about the traffic and topology, and hence employ a simpler approach to schedulers.

Tuesday, November 09, 2021

Principles of Communications Week 6 L10@LT2 11am, 9th Nov 2021 - From Flows to Schedules

 Last week, we looked at open loop (call setup/signaling) and closed loop (adaptive feedback loops)

In both cases, some information on some timescale about network conditions is learned by senders.

For either case, the network could also use what it learns about sources to make decisions about treating packet flows differently - at the simplest level, this is queue management and giving more precise and useful feedback than packet loss. at the next level, it might be isolating traffic flows in different queues, and scheduling packets from those queues in some fair way, perhaps providing isolation from the impact of packets in other queues, which can then lead to some guarantees about minimum throughput and perhaps maximum latency seen by a given source/destination.

As the complexity of guarantees grows, the signaling protocols and scheduling algorithms can get more expensive - these days, most of the Internet doesn't make use of anything other than the bare bones/simplest approaches, if any:-) 

one point about work-conserving - trains wait until their scheduled departure time at each hop, and need an agreed clock everywhere in the network to do so accurately. on the other hand, if you are organising an outing with a bunch of autonomous people on foot/bike/car, best to synchronise at the destination, rather than departure or intermediate points, which make the coordination nightmarishly complex:-)

Thursday, November 04, 2021

Principles of Communications Week 5 L9@LT2 11am, 4th Nov 2021 - Flow and Congestion Control

Today, we're looking at Planes, Trains and Automobiles. Or Open Loop (pre-requested) versus Closed Loop (Dynamic, Adaptive) flow and congestion control.

For some elegant  underlying maths, see  the section in the Computer Systems Modelling course on Control Theory here CSM, which underpins many systems today (ABS in cars, thermostats in buildings, auto-pilots in planes, and TCP and related transport protocols in the Internet).

Next week, we'll also take a look at schedulers in routers, and see how their design depends on whether the goal is to support open loop flows, or give adequate feedback to closed loop systems, and what the performance criteria should be to compare different schedulers in terms of stability, efficiency and fairness (the latter term being surprisingly complex).


n.b. forgot to resume record, so the video is from pre-recorded version rather than today's live lecture-  apologies:-(

Wednesday, November 03, 2021

Principles of Communications Week 5 L8@LT2 11am, 2nd Nov 2021 - Sticky Random Routing

 as mentioned, Dynamic Alternate Routing, a.k.a sticky random routing, is a form of load shedding, and although telephone networks are circit switched, packet networks can use similar tricks by hasing flow state (e.g. by looking at source&destination IP addresses plus transport (TCP) port numbers, as an index, and then load balance traffic along similar routes - lots of techniques, most famously Valiant Load Balancing - widely used in cloud services - as usual wikipedia article on network load balancing is a decent starting point.


That's it for routing - next topics are flow&congestion control, followed by scheduling and optimisation.

Wednesday, October 27, 2021

Principles of Communications Week 4 L7@LT2 11am, 28th Oct 2021 - Multicast&Mobile...

 Seen problems for scaling caused by Multihoming. Now lets look at Multicast, and briefly, at Mobile Routing.

We've seen a very simple form of multicast already - flooding, as used in link-state advertisements for intra-domain routing is a way to deliver updates to all routers (but not everyone else) - i.e. selectively get a packet (or a stream or flow of packets) from one of more sources to more than just one destination, without the source having to repeatedly transmit separate times for each recipient...

An interesting question area for supervisions is: what possible security problems could arise because of IP multicast, if widely available to end users?

The best analysis I know of MOSPF that NASA used is by John Moy That was very successful in practice due to a well managed network, and very good optimisations based on real world usage.

For a view of what you do "above" IP multicast to acieve reliable delivery, one good example is Pragmatic General Multicast, which was deployed in share trading networks. Why not TCP is an interesting excercise!.

Tuesday, October 26, 2021

Principles of Communications Week 4 L6@LT2 11am, 26th Oct 2021 BGP stable paths - theory & practice

convergence or not (no stable state reached - deadlocked or oscillatory)  - the fact that we end up with seemingly arbitrary ordering of AS path choices really is another way of saying that we don't have a metric (e.g. path vectors are not distance vectors, unless everyone was just using shortest AS path and everything was in one single customer-provider hierarchy.

pace of convergence (and why should we need rate limits or damping?) - again, the world has operational rules which are not tidy (in this case, over time, rather than in space)...

it would certainly be nice if the clustering of network nodes/edges could be reflected in the routing and addressing, so that hierarchy and summarisation (at the IP prefix and at the AS level) would result in much smaller tables and also in less traffic (and mostly, much less dynamic traffic). But life is just not that simple in the policy world.

the damping mechanism in BGP is a simple form of a controller - for a very old article about this idea see james clerk maxwell on governors


as always xkcd has some relevant remarks



Thursday, October 21, 2021

Principles of Communications Week 3 L5@LT2 11am, 21 Oct 2021 - BGP TE&Stable Paths...

 For L4, go check through slides 106,113,123,124,126, in the interdomain routing section, then in this lecture, I cover traffic engineering tricks with BGP and start on the stable paths problem (what does BGP really "mean"?). L5 covers use of BGP attributes for maintaining customer provider and peering routes, then looks at tricks for traffic engineering, and finally, starts to take a look at an abstraction for thinking about what BGP is trying to do and some interesting ways it may go wrong. 

Crucially, BGP is one of the first systems that lets people program at planetary scale - nowadays, many cloud services do this, but inter-domain routing was one of the first, and suffers as a result. 

Global (as in plant wide, or wider) means you have failures due to the real world (power,  earthquakes, floods, solar storms, etc) and thes aren't always correlated with your topology in a neat way. You also have latency - the speed of light is quite quick, but actually, so are computers, so the amount of computation you can get done while waiting for a message/update from a device only a few hundred kilometers away, is significant.


p.s. this lecture recorded ok, I believe:-)

Tuesday, October 19, 2021

Principles of Communications Week 3 L4@LT2 11am, 19-21 Oct 2021 - BGP

 apologies, failed to record tuesday lecture (have recordings from last year if slides/notes/chapter not clear enough.

Tuesday, October 12, 2021

Principles of Communications Week 2, L2, 12.10.2021

 Recommend revisiting 1B networking lecture on Link State Routing and Longest Prefix Matching - see pp 25 onwards, and pp 141 onwards - relates both to fibbing (IGP is typically link state) and to MPLS (trying to avoid longest prefix matching by using fixed length labels instead).



Note: MPLS requries a setup, either management (controller/SDN like) or implicit from routing, or a signaling protocol (e.g. RSVP - see later lectures) - clearly, only management or signaling could add the details for FEC->PHB mapping for performance. willentail other algorithms (e.g. some sort of account of topology & capacity of links) to compute whether performance can be met (see later) - similar for protection, which might need multiple runs (e.g. k-shortest paths) of dijkstra...





Sunday, June 06, 2021

A Latent Sea

 It's the latency, stupid - no-one cars about bandwith.


Aliens land on a desert earth, and they find evidence that there was one some technologically advanced civilisation - there are these metal boxes everywhere, on long rivers of solidified lava, clearly designed to move to and fro at great speed  - looking further, the aliens find libraries (all with the name BLOCKBUSTER outside) and try to decode the magnetic tapes they find there, many of which feature these big metal boxes speeding too and fro and occasionally into one another.

"Look at this" they pointed out - "the boxes have messages on the front and back  - it is obviously a primitive form of packet switched message networking" 

"yes" replied another. "that would explain why they move so fast- the energy consumption in running this network must have been immense - perhaps that is what doomed their civilisation in the end? They never discovered that you could just send all the information over a radio, instead of driving it physically too and fro. How very sad".