Hello everyone today we will talk about ASICs, chips, CPUs, Forwarding table, CEF, Software CEF, Hardware CEF, CAM, TCAM those kind of things there are many hardly related stuff today. We will talk. I have an expert guest with me and We will Start talking though studies one by one and meanwhile, of course, we will sometimes deep dive and Peter is expert on that. I am lucky to have in here Peter. Welcome Orhan, thank you very much for inviting me this is gonna be fun, I think you told me we met at Cisco Live last time and I'm going to apologize because I don't remember but I tend to forget people. There was Tom and Tech Field Day you presented there in Barcelona Oh that one! You brought I think couple chips, you gave me also a chip there You can tell a story but touching and feeling is better. Yeah right touching and feeling gives people I Hawaii to get the story hooked into your mind Yeah. Yeah. I still have those I think up a lot of my I have with me and Yeah, it was 2018 without any coronavirus and nothing and we were there enjoying so it was nice be Every day, I think around six eight hours recording During the tech field day in Ashford field day. We were doing that and you were also busy probably because of that and we couldn't check I Think it's interesting because it's so interactive The first time I did I had no idea what was and so it was Gary's walk into it's like when you're watching this like, okay Yeah, and if you can ask questions, okay, so TechSoup I think is a very interesting more in Requires purple internal causes Fitness analytics skin and being able think on your feet and imagine ten people Sitting in front of you around two hours every when they're coming and two hours almost everyone expert on the topic and Listening you and asking you questions And in front of thousands of people, so it's not experience that was back in Milan and I was lost from the guy in the previous college that actually run over So I think they already been their first ever now how I got started? They were they were very tired then I joined three times Two times I think in the United States one in Barcelona. This year's probably be able to We talked actually I will be in Cisco live Las Vegas and we will also do the ash But obviously it is canceled now, so hopefully let's see hopefully next amazing Yeah, that's what you asked me sir. My name is Pierre You can probably tell connection. I'm not an American so I actually come from Australia which is a long way away from anyway For those who are interested Australia resource another migrant country. I think we have We are very classic age of people who are first generation So Australia used to be a very English country, but it's not anymore. So I You know, I went to university didn't really like physics I figured out that you need to be really good at physics to get a good job and I go into writing computer science I worked In a couple of different places. I worked, you know iron ore mine. I worked a clothing company and I fell into networking. I started with a networking company around about 88 He yourself a moment spent a year basically his net be in the field in America They went back removed his development moved at the rates Was with that company until 95 When joining a group in a research cooking university. I always found a company over that in 97 company went to meet two thousand so decided it was time to So start at that stage the computer in she was shrinking So was either I was on the west coast and rememberest Rogers the size the US with about twenty five billion people There are more people in Shanghai anyway, the Western third of the country is - enough million people with humility of living in one city What's a devil So we just sort of decided it was time to try and directly because they were hiring you wanted to walk or talk Hopefully myself only in mid-2000 as he's been trying to chop hunting with back to Australians He offers I kept that one and then waited for a visa to come through so I got to America January 2001 went to work for a start-up I Chose world because I survived long enough me to get my green card. I was either stunted as the one to the end of 2005 Shall ride the style Apollo app and all the way down on the till hit the ground And then I Decided to join Cisco because I was sick of buildings I participated I Think it's fall company. It's about shit build really awesome stock and true now called the product. It just disappears in Vice But if sticker doing that because I want to build stuff that actually got used So there's not two people in Silicon Valley who want to build the best thing and then I really Jessica's used. That's really not me Our house, I'm not the formerly one car driver. I'm not the Ferrari builder. I'm or the cameras and Corollas guy So it turned out really well end up at sister the group of the catalyst 2 K 3 K which is You know the cameras and crows of the business So and you started building 16 first thing So this biscuits a little interesting so I've been all over this deck, right? So I'd written code everywhere from software porting through My entire pipe drivers right for drivers the t1 e1 chips Vomit chips if no drivers had written forwarding code for a month or network processors I don't specify PGA's Sort of the jack-of-all-trades so when I got into the group that was doing 2k 3k I was like trying to find my way because everyone there I think sister forever and I hadn't been So I end up dealing with the basic We got a time to approach it with the timeless porn ng ng3 gay or in TWC HT a wiring closet And everything isn't in G right everything as next year At expert field. We just went plus plus at the end of make most So I got assigned to go work on this project which was knee replacement to the patient didn't So a couple of its were sort of assigned in and we started buying a workout. They thought we think we're going to build so I was always designed with a couple of people and so the first thing I did which I put together these are practices that Come traps, I will because ii don't have an idea because you want to build move away from a software design model Which had been very specific in the three case packing. There's nothing that was more like a visual chassis So I got to meet the editor and if they were of the documents the top right picture So at the same time we coming up a hardware architecture so on the way through this You know between myself and I'm up here whose focus would I would more the attic and he could look for at the raw Software's much more freedom of the disco subway. Um So I started getting deeply involved in 1406 The first thing this is around about 2006. Mmm-hmm. If they come up with a will not did you stick what they wanted to build? So I need to start by understanding what they're building from an h1 figure out how that's going to help them to come out So aside from that I saw around the reviews for software guys For both of architecture stake and then what we'll call the external retrospect which is let's take village itself so the first one of us for that first emotional buffer that was you ATP That was around about another patient text and around about 14,000 the registers memories Now 14,000 Richardson memories. It's a bigger cheap. What they do is they define better find the resource of memories in VHDL and Then basically there's a like that would define an array or better find a cot But the toys to generate this stuff just generated multiple copies away But regardless there was chicken under patient texts, which are probably read in 14 times And we're trying to speak how to put flexibility into a system addition in that way because when we started it was like So if we're replacing that this one switch in the world and I think that's date efficient, you know, the ribbon is probably had Treatment or your X? Y to make it fast if I make it cheaper right now they look very expensive we decide to make it flexible because we didn't Quite know what's coming next. Mm-hmm It took me a while, but eventually I figured out what this actually means It means that the system you buy can evolve in support your business 500 fixed-function device, that's awesome if what you put it together? It's a fixed function system So say you're putting a feel a pop-up building for a year. I think you're what you put in How often do your the customers, you know have how often they get to refresh for instance their branch of the structure? Maybe five seven years nine years It's rusted If it's running as YV well anyway change it also emits extended Sure. So the real thing you want to do is have infrastructure that can evolve. It's a business case that most you know most of your students If I went to our stem line what you want flexible what we should pay for it like Okay, look back seven years. How much does your business changed last seven years? Looking forwards is used to change accelerating or getting stopped But let's say you put in a tech system it might do what I need for you After that, same will come very sorry. I can't help you Put in a flexible system may go get to say yes to the rest of my business for five six years So flexibility exists support the business change now, let's talk about that one then actually it needs us yes, of course and today, I think it is reality and let's start our first discussion points and It will be basically you started touch on that What is cheap and what is easy? So we always say cheap a Zeke? Okay. These are same thing Different things what we should know when we say chip Let me say Isaac where are those devices which one is more expensive so high level list start understanding this cheap and easy to Find the world to you. Yeah So this place right if everything is a silicon chip right when you start off with silicon you actually start off with a Before anything equal to wake up. I should have a wake. I'll get it for you in a second I'll make you basically you put to get me this on it You put together a bunch of logic gates, right? if you guys have done any boolean logic That's all and gates and or gates will end and we'll get this you can build anything up from that You end up with the design we can go through the side process maybe later But eventually what you put down my check and do a certain set of things Now, you know eighty is a application-specific integrated circuit it's built to do one thing Imagine for a second if you like taken x86 we did lots of different things on there's something don't necessarily optimize for anything Like fucking write codes do anything alright Now if you go back for a while and you remember there's a company called Beata right, what they used to do was they would build a 14 stack right here on the general CPU journal mix Very flexible. Not really fast. I Think what Intel's dunno past few years. They've put in almost Boiling which name escapes me. I Think either its Intel fast-forwarding stuff they start to put a lot more optimization saint-14 run fast That's very sure your device is becoming West general-purpose So a general purpose CPU is very flexible and it BJ's is more fitting Nothing really. It's just that in general is a bucket for gates. You can bill anything you like my Living in a speech eh they're building prints The memory is quite intensive so that DJ will often come with a blocker memories maybe a CT or two But everything else is special. Can I say? FPGA in general compared to CPU it is festive It's different um if you build it beat you if you ESP traders on the particular thing all these items if you For example what I know about the FPGA They are using this in hypercars trading as well a lot. So because why do you think Because they can build a specific device Yeah, no specific device. That is easily reprogrammed FPGA is nice because it comes to you go by the FPGA people main designer and shipper So my time required to get that out the door, it's just the design time than they factoring time But it's done a specific set of things So those FPGAs I could if I gave them a different designer could go roasty queuing for the ones do you think about it? Don't do that, but they do specific forwarding functions are very low. They're very very low latency Another goat or something towards like a general bit. So and if PJ can possibly do anything but normally does a few things very well Ok, the general purpose CPU does most things and might have accelerations for something So look didn't until CPU. For instance. You can write you. Can you I thought I pretty much If you want to be crypto, right there's a set of instructions for AES and I which basically influence could go things really fast So specialized engine to do that You might well find there's an IPSec accelerator um, so generally what you're seeing is, you know laid on CPUs like abroad will be e As hard work using it it has hewing structures and schedulers So a purely Really general purpose CPU can do anything but nothing very fast So if I want encryption then yes CPU can do that. But if I am looking for a lot of Session to maybe terminate and see if you may not be good for that and I want to do The CPU. So what you'll find is user base right general purpose CPU, which will do it. Ok Then I can go and buy this DP that has a crypto system, or maybe I can buy Them dinner blocked up until with intel chips, which does some of the stuff So even the general purpose CPU is not really general-purpose anymore. Here's a very basic level. Do you understand what it catch does? Okay, yes, yeah, yeah, that's fine so that I can see If I say then okay, I want encryption decryption maybe Thousands of maybe devices doing this I can still use CPU but maybe high-end CPU I need to use or or I need to have Crypto oxidizers etcetera. Listen if you have a thousand sessions and they're each doing and to kill this obsession No, I don't care very much So you scale by memory throughput your scalp like CPU functions, it's all a question of what you paid for So if you look for instance Kevin, I recently got bought by My bill based out of being a crypto accelerator company nitrox would be cook that process and they go so Kevin traditionally was running misty gears with a boatload of Better plane accelerators, he sold recently was just to secure than added to that and it's alright so but for the first point cheap and easy, there are different things then if I say cheap and I Touch it. I think you with the cottages and svj is the top of G. Ok almost amazing Conductor. Listen guys. I'm not sitting inside a package. Okay, if I say for the CPU, it's also chipped All of them is like chip is an umbrella at the roof So all of them are anyway But ASIC is the specific function very well general purpose CPU is doing many things Enough and if not GA is doing those few things very well like FPGA and Isaac then it'll be similar, right? They had some similar things that come in terms of property, right that is a bitch Jerry I cannot date very easily and they kick account Mm-hmm so an FPGA for instance based on the software load I put in it because they can load every time I Could make it do a or B or C depending on the way and a ticket articles ahead things burn into it But I think is much better price performance Okay, you paid for types ability Which one is more flexible you will think a PGA or is it a PGA them? Not much Much more flexible much more flexible cause I can program it. Okay, I can choose to do whatever I want Okay So make you work within the constraints. Okay. It's designed to do when it came out of a factory My question is is what you just want to get the thing from the factory and stick it on the board What can I do? Let me check and don't want anything and then she can do a certain set of things And they are programmable by the way, right? Which ones? CPU is programmable anyway, and It keeps not so much not much okay, but what about cost point of view which ways was more expensive then? In terms of surprise per throughput And I think it I think it's higher throughput. Okay, in terms of the particular dollars the gigabit. Hey, you know Don't let's take a give it Did I think most expensive secu? Most expensive is CPU and after that Flexible and Good so nice to also learn this from the cost point of view if I will do the same function if I can Do the same function which one I would use Do a lot of it you might miss it If you know exactly what you're gonna do and you're working very minimum you probably use an FPGA. It's not sure. Is that what you And just with your ratash you can use the city Excellent. Are you taking point? You might have pushed below and see guys there is a picture is because the CP is on fast enough. So yeah Dossier picture is believer making an ism open either have to change This is the answer of why HFD guys Africans trading. They are using FPGA low latency flexible and cost point of view cheaper than CPU anyway what? Point to the hard to see shouting guys doesn't really matter The other thing they can do is they can change it easily So I firstly don't make me very much. I'm so the cost of building a ticket is expensive In terms of if you're building in 50 nanometer, right you might want to be having twenty million dollars in back pocket Okay, those guys are okay You just do the design you buy the features of the shop Okay so Another point that I want to discuss we have many many points like this, by the way Sometimes we will go back and then compare other stuff again and again, so as you know talking much Hopefully in this session you are you are doing exception for us so what about CPU do we have separate CPU on the each and every line card on switch and router etc So every line card do we have separate CPU per line card can be taught that revenge, okay So there's lots of ways to build systems You sit for system in the world is a like a one.iu system that will have a CPU affording engine and end All right, so you should look for instance today like a nice area director for thing often happens in a cpu now if I look for instance at a 38 50 you've got a CPU and you got your Bell forwarding plane well into eighties Okay, let's only get the machete you familiar with the 4k and the state Jacki's it's Okay. So the 6k was the shipping reporting. Is she sitting it takes out up centralize boarding with like that? And became distributor 40 The 4k was always centralized 40 So in the 4k, there was no secret more one cards And I think that's the same structure we have on the 9400 and the noise 200 today Okay. Now this moment Why can I tell one guy? Yes, they have I have CPUs electronica. It really depends how smart that is What processing happens out there? Okay, you said 4:14 for example centralized forwarding always right? So basically When you say centralized forwarding packet is going to the central general purpose CPU to be forward Take a look at a 4k 9400 architecture, which he finds the line had very simple. They're basically adapt this right? There's out there annoying cards There might be five tips that we in FPGA We have an ATS sitting out there to do some meditation stuff, but doesn't do 40. So the packet then get a spurs detective supervisor And get forwarded in hardware Jeff exception Packers to get come up to the CPU so the path for 14 in the 9400 between two ports next to each other is by that is why versus Okay okay, if you looked at a ninety at a crucial 6500 You don't need to do that So the ceasefire is distributing points which each line card forwards on its own so I'll let me make this simpler and 9300 is basically a virtual chassis. Would you agree with that? Okay with a backplane is does that? So in this case, they remember every member has a TQ. They're just doing different things well, the CPUs every CPU is dealing with its own local forwarding system will call the line card side of the code and Two of them are running what we'll call the a piece on the code is an active understand by supervisor But in that case note system packets are forwarded locally. So there's a centralized sorting system distributed for tea Even on Princeton ASR 1k its centralized forwarding but they have C fusing white card to the orange cards are much more complex So you put a thief in one card when you need to a lot of work Don't think he could be anywhere from small to big depend on how much work you need to do So for the ninth junior hundred, I think you said we have centralized forwarding so only three hundred an eyeful Ninety four hundred is in Florida Okay for the ninety four hundred the scenes if Packet is going to the CPU to be forwarded right well Specified so think about the Godhead particular to the control point and 386 to be at that point so still We are using the a sixth for the forwarding and those aged eggs But we don't have any ASIC on the line card for the 9400 Uploading at it Okay, so we have then separate a6 forwarding Asics and other job Asics. Can you talk about that? It gets a little complicated On the nine on the original for K The sorting plane on the supervisor and what was on the line? I would call a sub chip with different tips very different If you go look at that, I thought hundred we did some we need some economizing But we actually built was he built we've got a single chip because they both need affording plane to ninety two hundred And will call a study for the port adapter for the 19400 It has two modes Bechet So we have sub tip for adding tip then You know, I pondered know it's confusing is the 9400 the subtrees my four hundred is supporting chip and another two hundred About none of those devices CPU is not forwarding the traffic for to 93 and 94 hundred but there are other devices though CPU is forwarding there are pockets are there is there is a spot exception we get here Right previous turn live into iOS XE a whole lot of systems would have an exception path where that was forwards with the CPU Now when you when you find this for instance in the 3750? If you are making a change to quarters, then it wouldn't fit Right, we might basically start forwarding stuff through this NEPA. We're all go away In section Park, maybe you couldn't fall a ipv6 packet with extension headers So they used to be those cases. We've sort of getting rid of them because doesn't make any sense. So In general in the light in the night. Everything was falling out there Okay, but what about those exception pockets? They are not forwarding and see what we did. We tried in general to get rid of them out of going to Minus IXY was to sort of harmonized with the a is that won't pay for the a picture Yeah, it's at 1k each CPU. There is called the column flow and it's more like a general deficit view because it has basically an array of CPU cores that are customized and then it has how at the dozen queuing at scheduling The vintage cars never had any checks about 50 you so actually this is leading me to my next question We have stopped and we have forwarding chips basics. Let's say Clarifies it more there are more types of a tEEX in the world the net for instance if you looked inside An eye 300 you'd find a bunch of chips, which are what we call life eyes a bit below devices So the chip especially goes from the analog digital type download side for a base deport Might find other chips that do things like what's called retailers or Pfizer optical bots your semi memory chips You'll also find any control chips or to find microcontroller chips. There's lots of juice so We generally tend to split between the guys to a sort of in the day of home the guys who actually really understand packets Try to the two main functions logically in the supervisor. Verifying is all the core low Messed up chip or the port adapter and the porting, okay So the subject for instance system is difficult for physical ports, then passed those packets on to the supervisor affording Supervisors will go to go commando makes in the back to the same line. So it's a different one code From this case bit of the I keep that sitting on the bank card is not affording acting it's not doing 40 lookups It doesn't do a policy So, but if it's reason that I don't put on each and every line cards forwarding AZ is cost It's really a system structure question, um Moving upstream is falling system is more complicated, but it is a straight In the eye of the beholder So If you imagine a 9400 for a second if you think it's design rule is been access, which where's most of the traffic going? Like the traffic is going north south, correct? So there's not that much stuff that she gets forwarded locally So building a system that has all distributed 14 in that case He is not really cost effective So you started people think about your traffic patterns Right, there's some other benefits of billing In general if you're doing that implies forwarding y'all can find the light hats very simple so I can upgrade the entire system I change my supervisor Distributed forwarding new shares height capacity, but then I say change everything. So if you go back in time Between the 3k the 4k matrix a what was the better switch I Wouldn't see a business so depends on my it Depends I Think you're finding a bit of a move towards So the three cases should be reporting. It's like a 1ru system. You're finally one. I use that becoming more and more common I think you're probably finding in a centralized system that are going a little bit more centralized for simplicity I Think this is a big title, right? So it's not really like a cock. There's always an assembler But design swing backwards and forwards based on technology, that's true, but they say for the same capacity Same speed if I would place Every line cards forwarding easy. It would be more expensive, right? Yes, that's it However, if you wanted to get the top state possible you'd put you probably do distributive mysteries Don't you tend to find years but really top and you'll have switched every character like that so the amount of time that you spent in the Switch fabric will be less than when you have the distributive system I wouldn't say that. I will tell you I poverty Why? Okay, so you don't split between latency and triple because of like we have distributed case we have like full mesh connectivity between dead line cards It's all of the things right Yes you can build it that way what people are more like to do these days is don't have They'll have an intelligent phone. Is that why some white card they'll ever switch fabric, which is pretty done So it could attach the entire Not necessarily the waiting scene may be higher or maybe like has been latest yet different if I have more Try as more pipelines right more length Let me go to your three-way case You're an instant ball, right? Yeah Okay, your Hawaii the pretty what lots of lines Well the capacities yeah latency, not necessarily. Yeah In like a pepper see, what's real. Good night, huh? So we can have better latency in this case is the distributor I catch was most likely so the reason seems to be if you can get away with to lose control as you do simple system for Distributing, it's a more complex system okay, so for the simplicity vs. Complexity we would say centralized one would be more simpler and Distributed device architecture would be more complex another question. So when we have distributed Yeah, totally for the distributed system. Do we have on the line card both stop? Cheap as Rene's forwarding chip or just one of them no the way we'd say I would say this differently, so Maybe the way to okay, so the answer is it depends? So if you look at the original six headline cards, they're basically a affording complex and a port complex If you look at what we would have for instance on a 38 50 or going 300. We have one chip that has both So the functions exist Whether they're single chip on or multiple in one chip better packaging question Okay, both function is its own single chip, what do you call it for adding chip or I'm really describing function. So it's really a function knowledge if right so the in the 9400 but that device really talks to almost all white cards and a couple of uplands But in the case of 9300 that device is talking to all the ports twice attacking the face So it's really that there are functions and they combine different ways into chips as I said to you earlier The quick stop chip or the port ASIC were used in life. Andhra is supporting a secure use an ally 200 We just use different properties inside Don't think you've always got to think of functional blocks and then map them into physical reality Okay, so stop chip can be forwarding today's very indifferent system Range what flexibility of putting So in that particular case If we had a built I dedicated just through the court of that correspondent line as it would have been cheaper But then we would have to build is another cheese and chips are not cheap the bill Okay, no one should build such a high volume ethically is always prostitute right when you say that no, it doesn't make sense to me because we said most expensive is CPU and now we are talking Isaac and you say it's Not it's not cheap to build it. Why not it to build what it might cost me Just to do the where the factory it might cost me twenty to twenty five million dollars Not caring designer test and everything else but once you get a belt then the throughput They get it's $4 is religious, but I spend a lot of money up front. So I remember one case the The thing that we called you ATT me 2.0 mini that's 190-200 Annoyed to others by supporting client embassy. Can you attract in there as we're at the nominee complex inside that ship that Was optimize the cost the same device fish used on my father's the port adapter. We just don't use much the functions Why do we do that? Because it turned out to be cheaper for us to build one ship because we both things into chips They could do one thing age So, I remember one case probably it was CPU dough one of the vendors Let's say hardware vendors very famous Chinese one. So the CEO we were together in one meeting and together we were sitting he gave me at least was CPU and said me or hunt this I Give you is around two hundred million dollars. I didn't understand that they what he was talking about So why it is costing too much money to build CPU or easy? Back to what's required? To go do a design so information per second if you ever looked at writing x86 assembly In any assembler code, but the complicated If you go back in time think about what it takes just to build an adder or a multiplier But a little more cash in everything else. So these are very very complex devices So just designing it so its design so which one in designing is very expensive But I think you know, what you do is you come out with you've got a whole bunch of a keel and you compile it So then what to do is to go and lay it out on a physical device Which means you've got a crew because all their power to everything, right? So the hold the It was physical where these very complicated Then you gotta go and find someone to build between So you will do things but I feel license I'll buy to stuff your license to design for the memory So I think the design for the sterilizer to do either visual interface is always going to license End up with the design then what you have to do is go and print on disorder But the way they do that is they're basically they create what's called a mask and I shouldn't create a mask that - the way you build these things you start with a with a big way for a silicon She hang on a second Okay, I think yeah Show us something It's the wafer of a You ADP, it's what we call where you up with the art So this is what we're shipping in the figure 50 for a long time. It's worked really closely You know she seen that a whole lot a little bit on this one of them is what's called a die So that's actually that's actually the ship before you put it in the package What exactly you sawdust now, what was that what exactly is this? That was the wiper for a 38 54 inches, right? So on that one each one of these guides each One of these things it's like this T. That is the die within of silicon. There was the 14 place for 3851 within something inside a middle package. Well, that's what's inside one of those things, right? so they make that what they do is they basically have a whole lot of different photographic masks, which I've been doing it with like very high frequency light So they basically put a photosensitive chemical in the front of it put the mask on and use that to they see each the device Getting that mask is very expensive In order of 10 to 20 million dollars To do what's called in rem non-recurring senator to build the chips these days start with 20 bit dollars in your back pocket So that's a reason why if you're not doing Grammys and you might use that video We might use a zero 50 because most people down at 20 million dollars Okay would another discussion topic it leads us but there are many that's why I am NOT Unfortunately deep dive I cannot ask equation so Tim by the way, hopefully what comes out of it is the hotel the next questions to ask, okay? So this is the top level and we figure out maybe sometime. Well, it's a dive into some remote exactly So what about cam table and TEM? so we use these terms a lot also are the same thing which devices Has cam which devices st cam are they different things again? Like a CPU a zkpg discussion back and we'll start with a memory, but the trishul memory like a DM everyone's used to Young people I kept in memory pairs in the dresser and has a context right? So if I only going to read a memory I get my address I get back some context So it's a nation a very simple case if I know Ok, so imagine the let's do the top one case you have a name you have a so point number If I give it a talk when we get back the name that's like a visual memory. Mm-hmm Yes, if you can imagine the telephone number is just an address But if I don't know Utah phone number I can give you the name and you can give me back the address Ok I'll give you the addressing human the data. That's a traditional memory If I give you the data and you give me back an address, that's a camp became is a content addressable memory So let's say your case is as an array of names right a long list of notes If I want if that's in normal ramp and I want to find one of them on you have to basically go through and test Each one of them You'll compare in a cam What I do is I'll go and say here is the name alike and you'll come you come back to location Why does that make sense? It's the fine time because I have with you also a whole bunch of this stuff What will normally do the classic case of a lookup? It's going to give you a teeth you give me back and the dress I then use that address to go and get Jedidiah Let's imagine very simple case of a about ATL if I want to say, you know it deny Deny anything to 1.2.3.4 One or two to three to four is my key. I get back in a dress I then read that address I get back to my country Okay, okay so so economically you can is a way to get information based on context It's a haunting addressable. Memory doesn't have to keep only make addresses So, um So there are lots of ways to deal with this right the simplest memory give me a dress So give me the key Cynthia dressed get back the data Basically cams contenders for memories are in today to get back to dress So it's a way to do a search Okay, but we please make a disease other than that on our switches routers. What else we replacing him, but so totally in the Informations, we don't put MAC addresses in camps. Okay, we put them in hash tables a stable in other Expensive Okay, I mean traditionally there's a thing called a became a binary camp which is which if to give up the data gives you back an address a Tannery Karen basically to take care, which is all a bunch of masking conscience So the ternary came out standard and addressing the mask and it gives me back the best match So what is the difference then between Kim and Kim Pecan is all functional More much more functional. Yeah, so traditionally with a camo. I'll give it exact match MAC addresses This he came on like what start wild carding some of these wrists but he can basically almost the same thing but mask to get like that it Take care is much more space very much more useful okay so far just Let's go little bit slowly. Let's yeah because I could put that in the be care because the binary camp his binary Cameron Turner he came But if it's a binary cam, I'm gonna give it me give it something to match. It can agree that can address But the Chenery cam I'm going to give a buddy the max and amassed So it's imagine what we'll do is I'll put together a source address the destination source of these Astarte UDP port number couple port numbers a few other things Now I'm gonna put that together to key or need to look into the teakamp What it does not the following issue will launch is what your mask means Because I may have to mask I may have initiative mask all those things right exact match Source this unity put on us. There's something you just mentioned the source of a dress Medicine it matches a range of our interests Okay, Henrik and gives me always filtering and masking so, okay what I understand so far for the chem, we also say beacon minor ECAM and overall, we have binary camp TEM we can say binary camp or just can Memory structure which we don't have to place only to make address table In fact, it requires also exact match then do the search Is by spoon exact don't give you this address you tell me that it activities automated isn't there, but if I am looking for more flexibility teaching then Henry came will give me a best match And if I can also specify like wild card you said so sorry subnet mask Maybe don't don't have to give me 32 but even is like 16, etc Okay, and but much more expensive as well. Geez What's the power? So there's a very simple case. Let's say I have Matched, okay First one is matches naturally source very much next source and death etc. Right. What I do is arrange them in order So the best match goes at the top The first address the worst match goes have been so at the end of a tea. Can there's a peculiar match any any So the thing about 50 cameras will give me the best matched Okay, by the way for this Topic there is a nice question. I want to ask that one at the moment from the live audience People are asking we are always told what? What language is he speaking? Oh, yeah. Yeah, definitely This is what he's saying. Actually I heard many times too. Let's get the answer from the actual guy We are always told he can't space is not big enough Why can't vendors make switches with larger chickens enough that the argument because irrelevant? What do you think money? The most obvious example for this one is the 5500 and Excel all right. So what they did with that was they put an extra member in that side of it that Cost a lot of money so in general for the Unity P family we chose not to use external memories she's not fusing because they're expensive and Because they basically change latency So traditionally people would say build the chip that you can put an external memory on and only put it on some of them But the latency for external memory is huge Again, think about a CPU In the city you basically have anywhere up to three boards attached before you go to external zero Reason if the caches that satisfies things a lot faster, okay so if I can put my memories inside They add a file it's faster. I can get much wider keys. They enable a lot of things So the problem is that T cam is big and expensive and hot So there's a key problem these days with actually building chips is actually giving a parents them and getting heat out of them. Mm-hmm Right because what you end up doing is you end up with a very smaller and chip often, which is very very power hungry So you start doing all sort of interesting tricks that one? decrease the power there because giving up our internet area chip and giving it a gap is hard so forth TDM and Binary camel so you hold em chip They're all memories, but you don't say it No, because they usually did it inside something so I could get a chip, which is just a can that's pretty rare these days So first the cams the cams are honking in college it Okay, so but what about this cam and T cam are we seeing them in speech or specific throttle or boat? Every way every other firewall is where the other network devices well so It really depends what you had If you look to the far wall, I have to go and look at people a device for that So in general there's a whole lot of different devices so that when I'm speaking I'm speaking like this with changeups but If we are talking about TK, and we we can also see in the rotors is fancy Sure, depending on the router. So if you take a look, there's some people build rather that you just based on Intel CPUs They don't using cans right they might use other tricks so it comes back to what you want right if you look at and I ASO 1k I don't remember what that guys I have to go back and look at the text. Mm-hmm. So I Think that's wicking because they are very fast The thing about a key came is you can do a very complex lookup in at the find time Often if you're in software 14 That's not so important a software porting system will often take as long as it needs to do or have a buffer at the front So then do the thing about a key can is I can do a very complicated look happen at the find time T can be separate hardware right memory but are different and Decide on that sometimes I May result in the main switching typical also reside outside What they could now what you say also It might be in some routers might be this memory is the memory Base if you don't call it tika many more memory on the CPU itself They don't have extra T camp for that right? Maybe not She's doing something right or you will get tired they tell the edge So your basic thing is I've got a table in memory so information I need to do a lookup right? There's also different ways to look up. Okay, I mean you mentioned earlier about a hash table Having having memory on CPU vs. TPMT can be bit faster And not explained with let's go back to the CP case I'm doing CPR a shion's if I do a TPU with no with no catch Every time we can data have to go to memory is very slow If you look at a more complex vp like a anything you might will find it has three levels of cache And lots of very complex algorithms to figure out what goes with Reason I have cash. Is that what data available fast? So that the cache is a specific function designed to speed up access to memory Take a mystic function designed to give you a complex lookup in the final time And first we are expecting to be fast if we have chopped The point on normally comes fast. You usually don't fight the run Bruce Bozzi. Mm-hmm. Okay But then the question is how do I package that function into a physical device? If I can put it I can make its own physical device with an inside something else. I can put inside the device So we're gonna go back to remember. There's no lot of functions how I pack them into a device things. What device has to do? Are those T camps on the line card or close to CPU general purpose CPU where Are we talking about another concept? For example? 9400 was All of the folding stuff is always hot yet. It's all inside the 14 netted all but all about the memories everything else inside the 40 is in teleporting edges and forwarding gazing all 9400 was distributed from on the my card. No Centralized so TPM is also on the forwarding easy Okay, so this is Sometimes meters terrified, let me see if I can figure how to do this It's quite boring Alright, how do I do the shape from here? Okay, just let me make the presenters just a second And then again share the screen I think you should accept that chicken homage to one Okay, can you see my screen yet? Yes All right, so this is a overall picture in general of what's in you ADT So this device here? This is effectively the a tick as a whole what you're saying is that you basically have this Python here All these lookups always have memory tables and inside the active. I Could move them outside but it wouldn't much more expensive much slower, but you bullet-face memory look-up tables not teach em Sure, because in the the became an attached Mary stick em here. It's not on the forwarding easy In this block in here this entire thing out here is the 1480. Okay. And which part is you call tem here It will be one of the types of has been to look up tables. Okay? So we have multiple types of tables. So, you know we talked about we have some tables which is direct addresses We have some tables which is taken shorts. There's some tables we call the hash table. I Stopped sharing for a second so I can get back to seeing everyone So a Hash table is a very easy concept It's basically it's another way to do a company to a hash table is a software implementation is an implementation of a content addressable memory But it's a different implication. It's not the find time to a hash table. You'll take the key is lightly MAC address Increase what's called a hash of that right? You put it through a CSV function Then that gives you a small address you index into their address and what you get is you walk across the linked list of values So the first thing gives what's called a hash like the hash gives an address called a hash packet They never missed an intuition walk your way along preparing them That is a much more efficient in power and also area version of doing a Content memory for exact match or on a checklist for exact match so which means not to campus with all the health traps and all the method restful capsule although an - Okay. Now if I would say this would be correct So since it is exact match it is similar to camp multicam binary camp Right and hash table is what exactly you said software implementation. So we don't have any. Yeah, it's not That was a very common software construct we also use them in new ATP Exactement, so they are not ticking and Since they are not doing this, it seems that compared to teach and they are not much flexible also And they are cheaper cheaper. They are cheaper in terms of area and power Yeah, so basically it's also bring down the cost of the device Ezra. So if you think about if you think about what a non 300 but every college we know that we need both a You know an ipv4 address and we need a MAC address We don't have that many a SEOs. We don't have that many We don't have that many sudden, you know mice rats so if the bulk all we have this host association so all of those go in hex Devils Now what happens is when the issue will look up tell me showing a look up for instance for a I P address My function which is the flexible lookup function that you saw before It issues an address and it searches actually in three separate tables all toasting the exact next hash table It also searching the longest prefix match table all also searching what's called a overflow TK The way we build our hash tables is the limit and limited number of entries in each bucket So if you go beyond that we shot some stuff in at work again But you are trying to do most of the operation in the hash table though It is cheapest and those ACL operation is done in the hash table is meta no children because they test match Yeah, they don't they are not exact match you are right So that's why in the devices not every device maybe but if there will be a sea, etc if you Need to have not only a stable but also t camp To be at all efficient. Yes, I can do to a a sanitation software just takes a very long time So you what we are seeing by the way, I can do ACN operation in the hash table Imagine I could come in and I said bases We have the structure where I have I have been the address. I had the key in the mask Don't just have a whole list of things linked list of mote less specific But I have to go down and compare everyone on the software. And by the way You some devices they say some even routers might be doing a CL operation forwarding Lookup, you know the year to day to day III all this operation without any T camp without any hash table But just using the CPU Yeah, it's all about them cost and what we are expecting yes speed and ability in speed Right if I wanna build a Ferrari, this is a Corolla, yes, they're all four wheels But what you put in is very different. Yeah if I want to build Corolla Vs. I want to build a track. They're very different. I will not put this station name You know cheap design, you know the ASIC etc do you want to get Ferrari versus Corolla because it's Yeah, it's like a key program right so fast Cheap and best which one you wanted. One of the things I tried is to bring the concepts at four people are familiar with Because Often what you find? Is people get they get they talk in their own small groups and they talk before they second one understands the same thing One of my goals is to try they almost exceeded to go. Hey, let me explain this in a way They do understand which is where I started with the with the canvas normal memories. Like do you know the phone number or the name? If I know the phone number I can look you in in a traditional phone directory the ones we used to have I Would look under a name name. Yeah, don't probably get the phone number in the address a Remote a couple of people look up look up the phone number. They don't get the name in the address So everyone's used to these things so for instance I'm too active on Twitter. This people know just by their Twitter happy Clearly not sort of like an address. I don't have to remember what their actual name is It's true So How do the goal is to make it by? Your students in general. I have an idea. What's happening underneath them? So when someone says the T came and expensive ago, I have an idea why So in the case of why don't I put in as much Nichkhun as possible Because I couldn't fit it in the chip. So the one thing to remember is that you know, I showed you earlier I'll send you a picture of that waiter so the waiter is Around All right, so wait is in general because what they do is they'll start up they'll get very pure silicon They're making their really big bar as a Baris this round I don't know how long learning to a safe a slice into small bits people-waiters So the way that is what you basically build dial size. That's all these are sorted It's a wafers wave a random distribution of errors on them somewhere, you know, they'll be butchers. They'll be a piece of something Let's imagine if I had a way to fit one die. I could guarantee wouldn't work do whatever us So the smaller the die the more you'll like it Mm-hmm Okay, just have a small die. I get much better yield because I bet I have a fixed cost and in the wafer So let's say I have a really big die and my yield on that number a useful guy is what? If I get four from a wafer, that's real expensive Let's imagine I get 400 from like the literally chew Your point but they decide the size matters. So If I take that if I put more more tea payment, but I've gets bigger Which means my Koster pockets bigger in a now gets bigger so basically Would you like animation you walk in? To your friendly Toyota dealer and you have to look at the cars and said I want the Webster's for the price of the Corolla Which a friendly car dealer to you? But I mean if you take a look right so I Could use a ninety 394 enacted switch their different characteristics. My 400 has more resources Now if you go take a look down from 95 96 the tables the bigger again But they're built for different things The 93 reverse the 1992 all the tables were smaller so okay the answers for this question then which is Why we don't play smart much more tea camp space and we always say to commit Yeah, it is cost of course, but not only it seems the cost. But anyway the Place that we can put this tea camp On the asic. Let's say is also a limited space if we want to make it, you know larger teakamp we need to grow our Asics and then for the rate increases it increases also powers Power requirements heat and I need to cool it down. So Yeah Power delivery into high ethics is becoming really difficult. Yeah. Yeah, everything is getting bigger subtle actual real physics Beginning our each of these devices is really hard One device. I'm familiar with It has quite a large camp a blur. The problem is is What to do the t care what you do is she given a dress and a base. Google It will search all the rows and the tea came in parallel. That's a very expensive operation So if what happens is a power level that what other chick went solo didn't work quite well anymore so after the diminishing things to make sure that never happens, so delivering power Inside of trip is actually pretty complicated these days. Okay It's cooling of the court is trickier this thing ever seen someone build their own gaming gaming PC at home You seem that so little things they haven't of course, yeah, okay never heard of liquid cooling systems So there are people who now make so the data came in so night they sleep hours We put post they put the bullets into liquid. Just trying it Okay, by the way Is you know, we like to compare the things right? So if I would compare them teach em Teach em, it's something else. It's obvious that it's one of them would be hash tables, right? He can versus hash table. We can talk. They are like Apple to Apple comparison almost Friday functional wise, etc We can find common things to compare. What else would what is This most simply um, I could use a tee cam and a hash table to store an exact night entry If I use the hash table I get many more increase in the same space Okay, that's why I'm saying they are both doing almost the same function Of course the T camp is giving us best match not exact match. It's more flexible, etc But as you can see we can't compare them What else we can find any other? Terminology that etc that you use to cope, you know compare this to any other alternative This one no, it gets sort of interesting here. So depends on how much you optimize So in the case about the noise margin across distance, we do optimizations. So we built some v8 automatics mated with into a tea camps But not just the fact he can we build in we might be looking at both so it's a image What I actually have is have course, you know tackled cycles records and deckle tribe have all these levels of ACL One things I do is actually build in semantics to go. I'm going to skip that support level but still be going in lilo level All of its emotion you want to have something like an HDL blog function. I need to know every HL entry distinct it That gets more complicated right so you can do You can never finish your complications. I can always build it better. I can build it more complicated I can build it. Nithya. The real trick is deciding when to stop mmm This goes to think of all the stuff that's in the Ferrari Formula One car. I Could bring all that to a camera. It will just be really expensive Okay, what about you're building things for different tasks? You are right, but sometimes also a she one more thing. Thank you. Well know Sometimes if what you have is a hammer everything looks like a nail I Have a guy he's got a certain set of Tools but not everything now from my understanding In CHEM table do what we know camp and hash tables not teaching cam and the hash table we are doing exact match Operation so it doesn't have to be any IP make address or something. It can be ACL etc but only if they are the exact match operation but a CI might be Yeah Before it is right. I'm a code versus 48 a b6 is ego So the things that get into cam the hash tables is how long your keys Mm-hmm, that's always an easier thing because I'm expense because you're doing a hatch. So you spell it for your basic search All right. I might hatch a 48-bit address down to 16 bits so but so You can know there's lots of stuff online at our hash tables and I work Became, so, I'd encourage you guys just to go take a look Maybe what what I can do is find it up with the tutorials or send them to you It would be nice and I can share the link on the description of the video, by the way So, what about this question? Is it a relevant question? If I am talking ipv4 ipv6 So size doesn't matter. It seems here 32 bits or 128 bits. I can still use chem or hey stable, right? So this is very good interesting and this is so it depends on your structure so traditionally in like the 1992 in the comics the way we structures will structure the exact match addresses so you can either get to One ipv6 address takes twice the entries as variety disorders So we optimize we optimize the lookup around basically But woke up would end up being at 64-bit address and for v6. I thought at the chip tool them So it becomes a it defense I can also make the basics the natural look at feed and replace its white in which case I'm at parity, but it means so like actually what you often see is people go I have a Hundred thousand our PD four addresses, which is fifty thousand of 1860 dresses. That's a pretty easy way to scale The same thing to the ticket. How big is your key? So I can structure inside you eighty feet We need to be a hundred play the case or to actually to turn it you see stick to your father and told the kids So what I will try and do with us when our HDL and cause if it's befall or MAC address, we'll use at a 50-50 Prefix what is the particle big key that will take up to interest am I placing my routing and forwarding? table routing and forwarding table on this TPM camera and hash table TJ managed table I place my routing and forwarding table. So then I say control plane and data plane. Those are Depended my deep and feet are on I'm gonna take the rig then I'm gonna construct of a logical fit then I'm gonna map that feed into the various tables So it's three levels, right? So I get the rid from the writing protocol Then heparin I don't have to go through it and create. Well call it fit before the information base Only the stuff I care about I don't care about rats or not going to use for instance. So basically we Go and take the figure. I have a mathematic the multi into my piece of hardware We are talking about I think now these software and hardware So when it comes to Cisco device trophy is def hardware safe or Sophie forwarding hardware forwarding you are talking about that Per second. So let's why I'm running OS get for instance, huh? And that piece is gonna give me a rig Right, it's gonna give me for instance All the routes is going to give me the ones the better ones are worse ones Coming in the side what to use so basically taking the full rib He produced a bit which is for this IP address where it should be go So the fifth place she gives you that are then it detect the fit Begin a software the method on took method onto my piece of hardware Different piece of how we have different implementations one is more or less speaking normally might have different teak emphasizes The original 6k used to use musty can so much really uses mostly hash Then I say so finish so feared forwarding table. Am I talking about hash table and hardly for that forwarding table? Am I talking about teach em? Okay can be explained so fish forwarding and hardly forwarding so let's say that to mention you have I like a nice are rather which has no, however 40 So take the Reba gets the feed it then uses the pizza forward and the are talking all needs So people writing on their device. So now in reality Most device will take a CID they'll then restructure that fit into some more efficient manner So if it normally is designed to be distributed amongst a bunch of things but let's say I'm doing forwarding on a versus an x86 Depending on the size of the capsule. I might structure those things differently So eventually I only believe is quite abstract you then you refactor v to match what you're forwarding infrastructures Don't read the actual table exported So read so fearful partnership if I say this same thing, yeah and Still okay For me when I say T cam then which one software See or hardly fit TEM habit of heart beating. Hey Steve also heard music Itself, okay, I could do it So we're convincing. It's a function right? I could I could get a I could build a software forwarding function that used a hash table It'll be a software hash table. No. No, how about hashtag? Can HD will be a hot hot beer tip? Also harvesting time so Indicate the 9300 or 3850 doesn't fit you earlier. The basketball cover entries are actually hash tables Because they're all their exact match So a hash table is a function. I think Linux operating wouldn't have a Tea cam logically Begin, it's a function. So I could have an API call. But Sookie can't I look up in software I'm gonna give it to me. Give it a Value and a mask. It's can give me back an address. I can build better software. It's just not efficient Okay so far so that if I have tkm I am talking about hardware fee if I am talking about a stable dog You were not hard with it However, let's imagine for instance that I had a device doing software forwarding which had IT can device like an authority all these combinations exist Mm-hmm So it goes back to there's a function. Where is the function located? the functions work handling hardware Then that means it has a certain speed advantage and cost advantage, but it was his flexibility That functions like had in software. I cannot bear it automatically that loses frost the phone's so You start with it's a function, right? So a hash table is a function I can build in software hardware a tea cami is normally considered how with us and build the finest fighting software So which means if I am doing? forwarding look-up on hash table or Tea camp I am doing this forwarding function and now if this forwarding function on on the software I'm talking so fear forwarding if this forwarding function the hardware I am talking hardware for forward Ok, fine, then all these actually combination exists then So even even then very powerful device might have only so failed forwarding not hardly forwarding them How do you see finally? if you think about the Weekend so you thought the Caesar Caesar 1kd tips to remember That's the that's the Isar forwarding code running running in a bean or container Now how fast it runs depends upon the system you put it on Until has a whole bunch of stuff they're adding to improve forwarding So in that case you're running software, but with some assists so an example for that might be Physicists on a whole lot I told you earlier this assists like the AAA instructions There's also this like a crypto accelerator. So Intel might have something to go will do an IPSec encrypt the different Software forwarding but with the hardware assist. Mm-hmm I mean if you think about it, the simplest harbor assist in the world is that is a multiplier function But if I didn't have a multiply function in my symbol right did bright that's right, it'll be really slow Multiply a multiple quite function is the harvested What about the okay is another function routing lookup function so a Data structure build up based on learning protocols. I wish PFI as is bgp Sorry disadvantage and the resides on the way.i spirit resides in it Resides on back on the tee km/h table again Is a software function right? So really it's gonna reside with your control plane runs your dinner to CPU Always is it can it be on Daisy? So because of the flexibility right you said that it's complicated complex processing that's not the people it's on critical It's a lot of men English. So I build up the rib from whole buncha different protocols. I Have the radar then basically doing some reduction or to pusat it. So let's say for instance on the rib I might have 45 piece of raps to get to you Finishing the thing. I'm going to produce the best monocle Okay, then I'll take the fit which again is just a nanostructure I will then reformat it to go and put in my laptop for how about 40? Yeah, and yeah, it's so far makes sense for sure so which mean rip can be But doesn't I mean doesn't make sense, but can be on the ASIC as well for sure As you said it's not time critical like forwarding. That's why and also you might expect some functionality some intelligence from from drought in The rib is nowhere she seems as well as all bunch of data. So putting a rib in right? It makes no sense putting a cheap cheaper place which is CPU Ya put into the place put it in a more plate to a place with more memory to places Yeah You need the right tool for the right job Yes in the very beginning you behind by I can show you everything with a nail in In the beginning you define that okay, it's the cheapest one but more intelligence CPU what we said maybe smaller, of course compared to a zkpg and this is I think is the key listener this If you want, you know, if it's 50 the task, you don't figure out the 2d habits that best fitted for Right just because I have one of these doesn't mean it's right thing for everything If I'm selling you for instance showing your Cisco gear between the night, Illinois terminal and Rebecca proposing propositions Which is all I want to let append on what you're building what your customers What what I really want we often focus on things like what they got was the total cost of ownership. I Thanked. Each area network is you right like I'm going to turn it off in the cell all the kit Okay, then - business doesn't want okay. So we're actually talking mate is the value proposition. What very Dini I Like to think of this stuff as an arrow, right? right, so In the case of an eye treatment, this is Nani tree, no trees more expensive debating is better right say ROI might be better So if people meet the owner of anyway what are the tools I have What's the return on investment my comfort my customer, right? What's what's the right answer for them, but I think even more than yet I will explain to them look here is the today's right. Here's the good in the bad points is how they work out The showing up and saying I have the answer for you that gives them no agency You want to explain to people with here's here as far as I know. Here's the best error choices. Here are the trade-offs Let me assist you in making a choice Which they're all awesome lectures, so you cannot say okay out of post. Ninety two, ninety three Ninety four hundred cities if I will tell you which one is best. I I don't think you will I don't think you will say this one is best. There's no best thing Yeah, these students also like that for me all are my baby I mean, it's a very basic thing these big bucks all this stuff we build it's cool that it's tools to do a job Right. Our job is to make companies what they do that. I write to make things easier So there isn't a best tool for the job there is so for instance between for instance Cisco Catalyst and Cisco Meraki Very different ways to consume, you know muraki's also if you're in lean IT system Um, it just depends what you want. So I think the key from your students is to work out how to Offer a good set of choices today today customers Because what you really want is you want your customers to come back to you three years later and say that was a good choice There's always potential. Oh, I want to cheapest price. So we have to explain the value because ideally I Could show you something then you can come back in six months time and be really mad at me Well sheepish, but it's not the right thing Ideally, what you want is for something for something hasn't come back five you slowly go this was the right thing what they wanted on this why you are seeing that maybe because after six months I bought as a cheap price, but maybe performance wise it's not Sufficient anymore for me if you didn't do what you needed your requirements changed. Yeah You put something new in now as I said before if you're putting out for instance a Let's say you put up a building for six months Fixed function system If I'm putting it if I'm doing may I come from Australia right you might have a branch which is 2,000 miles away I Can't drive out there and change it easily Okay, I'm going a little concerned in a build system we can adapt But eventually I think you offer them all to custom So here is the ten of things we have here is the price innovative each one of these Let me explain the aeroshell investment know why I think this one is more suited to you That way your students are empowered and their customers in our There's nothing worse than someone coming up to you and saying you should buy this one. This is the only one it's going to work As a customer that they're worthy dealing You can go they went did my wait here's my three options and here's what I think of the pros and cons of both from them a balloon that Gives you satisfied couple now if I choose oh and you don't like let me come back go ahead arnica table here was my recommendation Then idea world he can express the value and so he can be clear about the return on the desert. Mmm-hmm So by the way, there was a question now I think I can come up with the answer and you can add more things on that if I am doing something wrong Please correct me. Also its routing and forwarding table kept on the CPU or AZ routing table would be on the CPU because much more space because It's cheaper because it is flexible and because it is an intelligent etc forwarding table though. It is not I mean it can be on Daisy Okay, so there's a red so clearly the state was in the type of so in general the ribbon a typifies Fairly abstract data structures a big comment form. So the ribbon the people being held the same way across all the switches What goes in the hardware the how according table is so? Tables used for forwarding is different because it will be encoded based on the system Even if I was doing this some software If I'm encoding because I'm doing the forwarding table for like a little sip universe Anoma CPU depending upon the accelerated I might will encode this forwarding table differently So rip v forwarding table, so the forwarding table is the thing the forwarding software supporting function operates on directly Why you are seeing and forwarding table different things why you are a so, you know The rig is the stuff that you get from the vertical BGP It's gonna take that part into a span of data structure and it becomes the fit Now they might the figure I hadn't met the fit which is quite generic into particular why I'm doing for it So the fit for instance wouldn't be stored in hash that will people just need simple thing Otherwise they take the tip into a hash table in the right table or something other roles. What? Extra thing you adds to the tip and you are making a forwarding table. What will reach structure? For instance. What am I will find on a tie balloons would just be a list to check my interest Now it's a simple list if I went to a software folding operate on that will be really slow I'll take that literally technically I put it into a hash table Hmm, for example, can I say this if I if I also add like which they you to make address? I need to put into the header. All everything is ready in the forwarding table, but not in detail Yes, that would be is the light free stuff. Yeah. Yeah, the rewrites can happen they all have Yeah, you can imagine the hard way. They have a software for tea table So the distillation so I start off with the ribbon that myself or the MAC address table. I start with a bunch of other stuff So epic get knitted down into an efficient means the process Maybe think about it this way. Um I'm doing programming there is Traditionally where there was the top level language which are compiled or assembler which I then learned through an assembler to machine code In things like lean, is it more complicated but I will go through a set of representations Is the abstract notion of the C code the C++ That thing gets compiled into a symbol or an intermediate form which then gets compiled for a particular machine So the current compilers they'll go top level language right compile it to an intermediate stage. They're not they'll target it to a particular machine That's probably the way to think about it the Reapers the top level We can hold Antoninus for mr. Fit. We then targeted to particular machine and Yes, definitely and if I would say this one would be correct for the feeb Okay rip at the very top then CPU say and after that hardly leave forwarding table I have if I would say this one same thing rebate the top so fish Formatting Timbre Software for intervals is again. I'm gonna take old information up from the sea it may be other things We're going to stay on this particular target. What's the most efficient way of dealing with this? Right. So let's say the software for anything has a tick and actually funnel you that but so the software for anything has a hash Table, but let's imagine for instance. It has a way it has a way to create a hash of a certain size as one interruption So the hash on one that device may have been This thing's it's no one it might be due to this So I'm going to basically I'm having gotten intermediate stage and then going to target to a particular device It's like it's like running the optimizing compiler for our own versus Intel might be different. They're all stop it At the bottom way is you might want to be different Having a very simple one of these Fun designing tables so your most efficient. I need to know the width of the cache line Because all I want to do is compress as many increases possible into one cache line Rama said bless you You know content for cash buy So I catch these basically array of stuff, right? So I cashed simply basically the external memory might be 64 bits wide, but the cash flow might be only eight bytes And it goes as a single reader, right? So when I design my fourteen tables on a compressed as miniatures of can't neither one cache line Because that way it can be much more efficient to memory Cash balance is a different Pacific. So the wild build the table The folder is going to vary a bit of hardware for me this one. Okay, I mean rip and flip after that forwarding table It's like every time I am summarizing the data like rip lots of stuff then when I come to fit best match out of those rotten interns and then when I come to Forwarding table not only layer three, but also their two and rewrite make rewrite functional automated Basic you structure three-month efficient for everybody not. Yeah This one is fine theater, but also I want to compare this one with this ripped Software SEP safe or so fish fib and hardware fib Can I say hardware is equal to forwarding table and software fifties equal to fib which power definition? So this is well. This is where we're getting to 50 names. So traditionally in solving Systems there's a thing called set and set distributed a standard form across line cards to people so it has a ribbon a bit then Set will distribute it down to a lower layer at the PD layer By fun dependent way will then take the step stuff and encode it in some way that was sufficient for us if it's running software boarding at might encoders certain way if it's running on lips or PowerPC, depending on what struck into what infrastructure have its picture but then take it to Maybe from running on a 6k this running against Bill if I'm running on the 4k was running against tape It isn't running on a 3050. It's running against the Doppler so read the distribution fire step and Then encoding beneath it so Read and you are seeing Seth Distribution means I mean that we do any code for particular platform But we have also so few say what is between on and some with it just deal to that step structures distributed So software itself is smallish Something yourself and harden yourself. What is the difference? There is the distribution detects a distribution layer So you need to have you need to have distributed system for that line Carson? Rib okay On some systems the only thing underneath it is one card and some it's more than one card. So They fit the distribution to the PD forwarding layer Mm-hmm Okay, the PD porting way it could be just an implantation effect. It could be an optimized software implementation. It could be a hardware implementation There are lots of levels of restriction here There's a saying which is Turtles all the way down So one stage people use formation that the world set on the puzzle, right? Imagine the tables keep getting smaller What happens is as you go down you go from a more generic data structures to more specific for Cheney so from red to fit You get rid of all the stuff you don't need right you get rid of all the variation to what route you need You then take the fifth you process that to make it efficient and you distribute it to people Like the one person might be multiple people. It's they're gonna get that then takes it and figured out how to do it This is not it. Okay, but again It's not giving me what the difference between so fears safe and hardly safe both are still distributed So so I don't I don't use that term so much. I guess I Tell it to this is what get inching away like getting close to the end of time Pepper to me. So this originally was the top reporting path. Mm-hmm And then what there was from the people's created those data structures with the software forwarding code use We then made that also that was the way to give that information to something else from the software 14 parts So top reporting part originally was common across all iOS platforms Then if I want to make a software porting path customized for something particular to take that information and strike it once more so It's going from the most abstract and the most Yeah, now it's fine. I with the last example, especially before maybe All the implementation we had so for yourself you said and we might have hardware as well But both are actually you are not using different terms and this is for the distributed function, by the way Peter I think it's a now end of our session we have multiple questions and it seems that we will have another session hopefully and we will talk with Peter and based on hopefully this time we will come up with the new questions and now Some of this stuff again is if you gonna work it through and so I Don't my goal is not to have a perfect answer every time that they have the discussion For us detect answers, that's probably not me. I put the discussion of how and why that's what I think especially more interesting. So it's There is there is to get there The Bookman is to understand the answers So my goal is try and get that so I don't know what that the right answer direct But often all I think this works is I say something you say I don't understand. Well, then we'll work through the answer so it's a little more time, but I think it's much more provide more context, which most people understand why something is definitely Digital is two things But I watch it at the understanding of the mix so you can make better choices Exactly, and also the lots of people will watch this and they might come up with some questions discussion topics for the next session we would be happy to see that by the way and Put your questions just under the YouTube video also I will try to get some resources for extra reading From Peter and I will put them into the description In also this video let's end up this session here. What would you say to people? Peter you were already seeing a lot of good things like It always depends depends on your customer needs etc. But as a last point what you would say I Would say that your customers so your students so you Paid my customers I would never job and we get to do things I like and your students are key part of getting linked out there. So I think The people in the field are very important and has to represent us to customers and customers to us so I Think it's very good to have a broad base of knowledge. They can make better choices and You're at the way to feel comfortable. So Go up you general reading ask the questions talk to all your friends I think there's lots of people out there listen to people who make sense You know the power to people is wild there's Twitter. I'm attend training courses Don't feel like you have to know everything because no one does right You should friends ask around so Everyone knows different part of this and so this is a big way. It's the village thing We all need a bunch of different skills Yeah so I will really appreciate one little thing only listen to me and I look for some questions and maybe If you ever get around just go. All right back in your Begin, we'll get to see you in a minute Let's see, by the way, if people will ask you some questions, that's right, and you are using twitter Twitter is from with best fight. Okay, what's your handle? My twitter handle is activity change Thanks for that. So guys, please Put your questions under the youtube video. Also, we will share this Discussion on social media especially on linkedin so you can also type your questions their discussion points for the next one What we would talk what we want to see is your feedback It's probably better if you can collect the questions because I tend to get busy in a bit forgetful So if we can collect the questions and make some cover that's probably to meet their way to get it done Sure, and maybe maybe thing that might make sense is maybe maybe we do this another on another call so much Maybe you sought to make sense. We can put together some be stuff on a blog this all yeah I Frequently asked questions FAQ. Yeah, but Probably like live talk would be for me also I enjoy more. So I am learning also a lot of things out of this discussion Thanks for joining today, thanks for being with us Peter really I know you were quite busy actually for couple weeks We had been trying to find some modes now. He needs to go to the another meeting. I know that so thanks for joining guys also Please put your comment again, you can follow us on Twitter and LinkedIn Peter Jones or anything you can find us Have a good day