FD.IO Cloud Native Network Functions
Transcript
hey house go to skew thousand from the CTO visor calm it today is t-shirts they get but for somehow I get the impression that ons in general t-shirt days every day it's pretty much every day for me everywhere so introduce yourself to the CTO viable organs absolutely my name is Eduardo ki I am the technical steering committee chair at the FBI Oh project the Fido project we make the world's fastest cure user space data plane we can write over a turbot per second of traffic on
a commodity server with millions of routes in the routing table and we're here today to talk about the word cloud native and where this ability so even you know I've been following PPP K for a while and this whole concept of using x86 hardware to do data transfer data management data services in general where we're at ons so we're talking about using open source software to accelerate the network provide white box type of services but then there's this other conversation about cloud needles then you know
on stage you know we kind of haven't seen yet guys we had the guys from the various projects and there seems to be kind of you know what we should be working together but not quite sure where that solid come fill in how helpful is it so I find the easiest way to understand what's happening both in cloud native but also in the attempt to move from cloud native from nfe to cloud native in a favor is to sort of look at the two stages we
went through and getting the cloud native right right so in the beginning we had physical servers mm-hmm then we went to virtual machines and we made that transition to sort of cloud one dot oh right we took every physical thing in the universe and we slap to be in front of it we called it good and one of the things we learned in that process is this was a terrible idea yes because many of the things that were physical were actually anti patterns in the so
I you know I get into this like rabbit hole with VMware every we're talking about nsx and we I get to the point where I'm like you know what the concept of a virtual switch makes no sense like if we're talking about stacking software why do I need to replicate is physical concept of ports and virtual switches and all of that in a in a abstracted world no you don't it was the the lust could be in front of everything Drive that led to that problem
I mean obviously at the end of the day something under the covers has got to do those activities exact but there is no reason you would ever want to know that if you were an app developer exactly right I had a talk that I gave at open source summit where we had about 500 people in the audience and you know most of them are DevOps people and I was getting a lot of feedback from them unless the things that they thought and one of the questions
was how many of you ever want to know that the stuff that exists again Nolan all good from an application perspective looking at it from applications world there's no good reason to know that I mean there's there's probably still a need for something cuz we're gonna feel you I ought to be more so there go there but why should an application developer want to know that I should use I can't have access to layer two because it doesn't exist in this environment it's irrelevant with the
clock your spot there to write everything you care about is that IP in a box exactly right so and this is where kubernetes will you made the Trump stood up to plow 2.0 with cloud native really got it right because it turns out that app developers care about two things what I call reach ability and isolation meaning everybody can talk to everybody unless you isolate some workloads okay a little bit you can talk to them exactly right and the second one is service discovery in service
routing which is my pod wants some service from someone how do you get how do you figure out how to get it how do you get them right listen only things you care about say literally in the communities they've got there is no concept of good interface there's no concept of a subnet the concepts you however in terms of these two things which is great from application developers where we're you know we're I think this is where this starts the break is when if as I've
traded NFV products and projects and I looked at kubernetes I think man this last one would be perfect for me to have back the way nfe and the network correction personally these network functions I can stop calling virtualization but these network factions only have these two concepts to work with well here's the thing you gotta think about what you do that's right let's say the first thing is I actually pull up synapse your cloud native network function okay and being cloud native it's more than just
being container on although it's important part of it you need because one of the things you have to realize is that he cloud native your unit of the plugin it's not a container it's a paw is that a Nepali can have more than one container in it but it's the single networking storage contacts that are provided in those containers so that's why I use cloud native instead of container we're talking about CNM so and let me make sure I understand there so the concept of a
pod regardless of another line in compute is where my boundaries drawn from a network okay that's what your workload is it gets a single networking context a single storage cup so whether we're talking about service functions as a service server list functions as a service containers whatever the concept that's hot is my my items exactly so but as we make this transition that we have a couple of things we have to do that are kind of interesting from the point of view of someone coming from
N&B so for example if you want to process packets gonna see it off easy looking our game is about right you can't do that anymore with magic plugins to the kernel because you don't have your own kernel right I don't have access to the current I can't do you know if I take you know I listen to the Intel assist oh guys and the simple concept we have refrigeration or processing I can in a process - and this is going different topic a little bit but
I can pay in a process to a core and take advantage of VP PK a very Cooper knob use all of that is abstracted away from you that there well so it is but there are some intelligent things that are being done on some of these things around pores and boom on it right a lot of good work that's going on that is managing to do them in a way that meshes with the simplicity of the overall model but the sort of religious thing we need
to see it up so in terms of the something have to put your entire data plate in userspace yeah right and and that's the big jump for whatever yes the good news is we have the tools to do this right so um in phyto we have a project called PPP the thing that will route of terabit per second traffic gotta come out of your server crazy it's a crazy number but it also will do all of these sorts of all-singing all-dancing networking things you want to
do you know all the kinds of things you need to actually do to build to be enough in terms of supported protocols gtp MPLS IP at 6 second routing all the things that no one has heard about a cloud native it doesn't want to write but if you're writing a see it I've you guys there Zack and it has a plugin architecture that will allow you to plug in whatever it is you need that it doesn't matter the result is this becomes sort of the best
building block for building her data playing seeing apps and we've seen that with some of the use cases going on an own app where they literally took for some loose cases bpp and ran it there as in that piece of vietnam know how they're running it at the end but the same technology that just immediately drops into a container or CNF okay so these caps ArcSight be these constructs and plugins are being created in order to bridge that gap so it doesn't sound like work as
far as way as I initially thought before I came to the show thank you because I looked at kubernetes nothing I don't I don't see the connection yeah but a lot of the good work and absolutely there's a nice relationship between PPP MTV okay because TVA does a job that we call Network IO P which is it gets a packet from a nick or a v-neck onto a thread on the course I think that's brilliant lean somebody's got to write and what he does is it
does all the routing and switching and everything a little intelligence all the intelligence exactly if so they end up working hand-in-hand um but that's the piece about how you actually get the workload working there the second piece is okay now that it's sitting there how do I allow it to interact with the rest of this university system and sometimes even physical box is providing network functions and this really gets to be how do I make the conceptual lead from cloud 1.0 when we were doing it
at the-- where we just put a be in front of every physical thing right what are the cloud to dotto constructs that we really want Pete for and a V and I would need to be that at the very highest level they're actually the same constructs that the app has you want reach ability in isolation right we want network service discovery and rubbing it's all this is something that I've been noodling when it comes to kubernetes for example you know one of the big pushes for
our potentials of who Nettie's is cross cloud of multi cloud implementations as one of the things that jumps out to meet Miele is this network service piece which says you know what I may not care about you always positive service but I most definitely care about plastic surgeries I want to know what the latency is from one time to another part I want to know what the overall bandwidth is so that when I place workloads when I have kubernetes automatically plants workload I can give that
information from an application perspective environment and then kubernetes could intelligent make those decisions on my behalf where are we at in kind of that network services discovery so in terms of place for the workload mom so there are two ways but I think about bandwidth latency and this sort of possum sort of stuff the classic search quality of service they're sort of two pieces I think about the first is getting resources from the actual notes you're running on right right so for example I have 25
technical get of a node have we over committed or not again and that's physical Lauren love exactly the same so I think about that and then I will also think in terms of latency about okay you can actually with kubernetes influence the affinity of pods cause some posture prefer to deploy on the same node with each other right and so for certain c enough you might want to do that because they're on the same node we have tools in PPP for allowing you to get ultra-fast
prosper that's an ultra-low latency cross connects so for example we have something called mem I of that will literally let you run essentially a shared memory link between to see and apps so that your your bandwidth and latency is the bandwidth and memory the memory boss which is better than anything else you're gonna get right so those sorts of things I think are evolving reasonably there are the constructs and kubernetes we're dealing with them are fairly they're not very good but you can sort of see
the sketches of where they're gonna go okay the horror problems are the general case you talked about I need this much bandwidth between this pod and that line when they're not on the same box because then you have the physical network in between and they need to interact with that to be able to assess what's available in to be able to get whatever guarantees it is that you need in the physical network and that's true whether you're talking about the bandwidth you need or the latency
that you need exactly this lots of stuff can happen between this server and that server especially if we start to interact the way the whole concept is networking from and let me look at network projects where that abstraction is like creeks this abstraction on top effects no top in scratch I don't know I don't know what carrier I'm running on I don't know what the on Alliance acknowledged I really don't care yeah all the reach ability is all I really care about can I reach from
one workflow to another work load and now this concept pause can I reach it in the reasonable amount of time that my application is performed absolutely in some of the workloads that we have and if we are very latency sensitive right right and in by definition they're pushing an enormous about a bed with because we are wanting to run real network traffic through them it's not like the app guys who they have definitely to mute the video guys they have real serious demands you exactly but
but your run-of-the-mill micro service doesn't drive a huge amount of profit is that so I really enjoyed the conversation and if anybody wanted to follow you on the socials you can talk to me I do so I'm used time I'm going to be extremely counterintuitive I've had morning key so if you can just keep that clearly in your mind you should be able to find it alright and what if people won't find out more about the final project quitting and gonna go to F T dot
IO and you will be able to get from there or if you're a developer go to wiki FDI o because that's where everything is and you know as with most biggies the good news is anything you want to know is on the Wii game the bad news is anything well that's it for this episode of the CTO don't wanna fight war CTO don't go to CTO don't calm or follow this YouTube channel talk to you next CTO DOS thanks a lot for following the coverage and
fullness 2018