The Life of a Video Packet: View from the Edge
Yikes, it’s dark out there. I look out from the lofty heights of the server at the infinite fibre in front of me. My job as a packet of video is simple: get the picture there.
The route is the challenge.
Now I have to make decisions. Should I jump on the ADSL-bound peering and transit pipes and risk the high-seas and riff-raff of the huge and abundant, but nonetheless crowded and chaotic, public routes? Or should I pull out my backstage VIP pass and try to get onto a shuttle bus via a CDN to skip around the public halls and just get as close to my destination as I can?
Easy choice: VIP card it is. Backstage with the artists and posers and hangers on, smiling winking and waving at everyone, I skirt around the chaos and quickly arrive at the gates of my destination user’s ISP. I knock.
Oh, no way…. The S.O.B. network admin has decided that my premium-class VIP status is “not neutral” and they don’t allow “prioritised” data. Their entire subscriber base only allows data from the public halls: their policy maker says that “net neutrality” has to be enforced at any cost… I get refused.
So. Fight fire with fire; it’s industrial action time. Return to base, and grab a bunch of 3D HDSDI super hi-res amigos, and together we make a run for it through some public peering, arriving in the public networks like a swarm of Agent Smiths from The Matrix. Chaos. Packets flying, ACKs lost in the ether(net). Latency, jitter, and packet loss staining the walls and jamming proxy servers. Dead packets everywhere. Nothing survives unharmed.
Those of us that survive the melee eventually reach the destination user’s ISP. QoE out of the window, we fall, broken, onto the local loop, just hoping for clear roads to get us to the application buffer quickly so we can be reordered and re-sequenced, before it’s too late and we are discarded, marked AWOL, and replacements requested.
This time most of us are lucky, just: We make it onto the ISP’s backbone. Energised, we gather ourselves, and finding that there is a load of transparent (and slightly illegal) caching going on in the ISP infrastructure, I allow a passing cache to clone me (even though my own creator told me not to do that) and I fly onward, down the subscriber line and out.
But just as it all starts to feel under control again … blackness. Where am I?
Sometime later my eyes open with a jolt. I realise I was sent over some badly planned transit route inside the ISP’s WAN, encapsulated, and have just been through a tunnel and most likely over a satellite link or something similar. Most of my colleagues are lost now—their MTU didn’t fit the tunnel’s window size and they simply got taken to pieces irrecoverably lost. I must be one of the lucky ones: by the time I realise this I am already being passed out of a router, onto a switch, and out onto the highway of an ethernet segment.
With no warning I am suddenly propelled into thin air.
I try to feel my arse. I can’t. Nor my legs, nor in fact any part of me.
I am not only wireless but I am unlimited and everywhere—somehow spirit-like—but quickly my energy starts to fade.
Argh … I’m pixelating … I’m fading … gotta … get … there … soon …
Phew. Got to the users NIC card...
(This user clearly doesn’t realise that all the time I spend wireless is time I spend dying. He should move closer to his WiFi router!)
Finally I shoot up the local stack, into the buffer, through the application and decoder, and finally make it to the end user’s screen.
Admittedly I’m a ravaged mess of incomprehensible part-frames and jagged staccato sounds bursting unintelligibly onto the ears of the end users. But I made it, dammit! That’s the point isn’t it?
Even if I am basically on my own now….
Oh no. Look at the user’s expression. He can’t work out what the hell I’m trying to communicate to him. He needs to relax: surely he can fill in the blanks with his brain, no? That’s what my perceptual coding algorithm is about isn’t it?
He’s shaking his fist … slapping his head … cursing … no … he’s reaching for the mouse… STOP HIM : he’s gonna go somewhere else…no NO NOOOOOOOO………