NETCONF and YANG Concepts

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello and welcome to the training module net comp and yang concepts this module provides a basic introduction in orientation to the concepts of the Netcom protocol and the yang data modeling language subsequent modules will provide detailed technical tutorials on each of these subjects this module provides the initial introduction so at a high level what is Netcom what is yang so net kampf is a modern network management protocol it's specifically designed to support service activation and provisioning meaning it has features that are useful not just for configuration management of individual network devices but has certain features it can be leveraged across network multiple network devices for service activation and provisioning it provides and is designed from the ground up for encrypted efficient transport it is transported over SSH in tcp protocols to provide security and reliability it is an XML framed protocol in fact for those of you familiar with it it is an XML RPC style protocol will understand if you're not familiar with that well understand that a little bit more later in this series net comp is an extensible protocol you can actually add new operations to the protocol it is a transactional protocol it is designed from the ground up to provide support for transactional configuration changes in network devices your changes all succeed or they all fail transactions are important to avoid you know unknown inconsistent indeterminant configuration states and our device transactional support avoids them it also provides certain features that will see that make it easy to do Network wide configuration changes to easily activate services in our network where net comp is the protocol yang is the data modeling language that describes the management capabilities of our network devices it's very operator friendly it's very easy to read a yang data model and understand what's there how the data is organized and how the device works it's very precise you can very accurately describe the data that you're managing in your system with no real you know unusual things of oh this is an integer it can take on any of 64,000 values you can with yang say if there's only a certain set of valid values those can be specified precisely and yang again as just like net comp was designed to be extensible not to lock people and if something is useful in the future to extend Yang is designed to also be an extensible data modeling language it is also a very readable language when yang was first being designed a simple observation was made that the number of readers of a yang data model is much much greater than the number of writers of the yang data model which is much much greater than the number of people who write yang data model parsers so being a human readable language is an important property of Yang and ease of readability so what makes net cough and yang different yeah every few years you've heard about some new emerging network management standard you know there's the hype there's the promise there's the hope that everything will be great but now in the end you know we just added maybe one more management interface into a network device that ended up just simply increasing the complexity and difficulty of managing and overall network elders many of them you see you know listed here on this slide but you know when I'm saying the net conf and yang or good ideas are a good way of managing a network you know why should you believe it just cuz someone's saying it well that's what we want to talk about through here so let's just take a look at you know comparing Netcom to a couple of alternatives SNMP and soap you know how are they transported now SNMP and nip when it was first designed was simply designed to run over UDP with no sort of security back then our networks were simple easy you know you didn't need to worry about security later on an SNMP we bolted it on we added it you know in the net cough world we simply leveraged TCP which gives us reliable connection whereas a UDP Datagram unreliable you don't know if the packets get there did the device get it didn't it I don't know I got to read something back did it take hold and when that com since we're over TCP we know it got there because we're on a reliable protocol SSH is a well-known industry standard security protocol and that cough is carried over that standard you know so well we do have TCP on top of that we run HTTP and SSL so we have some reliability we have some security there how do we breasts the protocol itself you know for sending our pcs to the device to execute well SNMP we had be our encoding which you know very difficult for human to just take a dump of that protocol and read it where's net comp soap we do i do have xml but then when we get to management operations you know we've got our protocol but what sort of operations can we use in managing our network well in SNMP it's you know simple network management protocol there are management operations that were designed as part of the protocol similarly for comp it's a network management protocol so those management operations were designed in however soap was more of just a transport linkage it wasn't designed for network management specifically it was more general-purpose so you know here we get to a big difference of soap not having management operations designed in if we keep going up though past those management operations so we can do management operations what are we managing what is the data that's there in the device that we're going for so that's where the modeling language comes in what language do we use to describe our data then what sort of models do we have so in the SNMP world the language is SMI that language is used to write the data models and then in a mid you use SMI to describe the management information for SNMP in the net comp world we use the gangue language to write a yang data model that is then used now we've seen how SNMP and net count you know their management protocols they have a modeling language they have models doesn't that mean they're all the same no absolutely not if we look into those those differences you know SNMP okay yeah we can get information we can set information we can get notifications with a net count we can get configuration edit configuration delete it get lock so you know so what are they are these just really the same no not really the difference here is the supported use cases you know for example when you want to fetch monitoring information from a device with SNMP since its carried over UDP you're limited to either writing config data or fetching config data for what fits into that 64 kilobit limit on the size of SNMP data grams with net comp you actually can stream bulk data because it's carried over TCP you don't hit an artificial limit you're able to just fetch so a megabyte of information and one operation from the device because we can stream it over TCP in fact measurements and research has shown fetching of bulk data from a device is an area where net comp really shines and performance compared to SNMP because we're able to stream over a TCP connection it really does give you know significantly faster transfers of bulk transfer of data you know things like transactions you know SNMP doesn't have transactions you set something then you need to do a get of it to see you know did that set really take with net comp we have the idea of transactions we get positive acknowledgement of the device that all of our changes in that transaction have happened we're also able with net comp to use various operations that it has to control a transaction that spans multiple network devices so that those devices all have their configs changed or they all remain at their starting configuration there's the idea of being able to invoke administrative actions on a device sometimes you'll need a device to do something that doesn't necessarily involve data it's not a set of a config data it's not a read of operational data its triggers something like reboot align card in my device in SNMP that sort of support wasn't designed from the ground up into the protocol and identified but people figured out a way to bolt it on you know you've maybe heard of ratable operational data in SNMP they came up with some ways of doing it however with net count we've got those sorts of features designed from the ground up you know we were using SNMP it's been around there was a lot of lessons learned from those years that went into net coffin this is a lot of wine that comp ends up better you know both consent event notifications configuration you know SNMP it's hard to back up the configuration of a device because when you get things you can't say just give me your configuration you're gonna get a view of data polluted by operational state data but with net count you can fetch just configuration data from a system and not have that polluted by operational data so you can easily remotely backup and restore configurations if we look at security you know SNMP v3 security is fair but it was more both tadaaaaaa it wasn't designed into the protocol from the ground up now if you talk to security experts they'll tell you designed from day one for security it's more secure than bolting it on later so that kind of took that lesson to learn designed it from day one testing a configuration yeah net cuff I can send a potential future configuration to a device and ask it to validate that configuration for me and you know tell me if I asked it to go live with that config that it thinks it would be valid and would be successful SNMP has there's just no sort of concept there for that but this last point in this slide is the really important use case and it's been the holy grail of network operators of service activation network operators aren't thinking about I'm setting out turning on this interface sending my QoS parameter here and this little thing here no they want to think of things at a higher level they want to think of a service through they're activating on the network I want to have a service that is a VPN that connects endpoints a and B and has these quality of service parameters that's my service make it happen with the device details well as we'll see as we get further into the this training series we'll see the net come and yang very much enable the ability to do service activation a key part of service activation is you're changing the configurations of multiple devices and you want to be able to do that sort of configuration change in a network wide fashion so what is a transaction we've talked about device transactions we've talked about network-wide transactions well in computer science theory we have four properties that define a transaction commonly abbreviated as acid atomicity consistency independence and durability a transaction is all or nothing that's what atomic means it all everything and maybe I have 20 changes in this transaction they all succeed or they all fail there's no some of it happens some of it doesn't it's atomic consistency transactions are all at once it's a set of changes order doesn't matter in a transaction whether I put you know create a and create B into the transaction or create B and create a in the transaction it's identical all paths from my start and my endpoint for the change set of this transaction all paths from A to B are equal so giving you a set of changes and this is the set it doesn't matter what order I type CLI commands to populate my transaction what matters is the set of changes the I for the acid properties independence parallel transaction don't interfere with each other transactions are independent from each other so in other words they aren't dependent they aren't going together I do a transaction it's a standalone thing it's independent from any other transactions then durability you know I'm making these transactional changes they need to be durable ie persistent in my device you know they have to be stored there if we consider you know a transaction here where maybe we're adding a neat an interface called the eath v to our device and we're also adding a route over that same interface so we populate the transaction and it's up to the device then to apply that transaction internally so whether we populate the transaction of ad interface a drought or populated as a drought and interface it's the same transaction it's the execution of that transaction in the device that matters we end up having a transaction we can populate in any order it's up to the device then to worry about the actual sequence of the ordering of applying that transaction what this means is the centralized management system is freed of having to know about ie have software written to implement any of these ordering constraints inside of all these individual different devices that are in the network instead it's up to the device itself to implement that ordering on transactions other places are backup and restore you know we can read a configuration from a device save it to a file use tools to to process it so since we're getting that configuration from a device via net comp which is XML based we get that we can get the results as an XML instance document and use standard text processing tools or standard XML processing tool changed to process the results whether it's for analysis modification whatever we can do it because it's human readable you can also use that confident to restore a configuration to a device you send the saved configuration you know you don't need to worry about sorting it you don't need to worry about chunking it into sizes that fit into my protocol data units I can just and that transaction to the device and the device will you know apply it in the proper order since I'm being carried over TCP you know I don't have to worry about size limits I'm just worried about data and what the data that I'm sending so if we look at then how transactions get applied to service activation again service activation is something that involves multiple devices in the network the operator is going to create some new service in there at the OSS level you know it may be an IPTV service it may be with HD quality it could be a VPN the service but let's use this IPTV example you know at the OSS level we need to compute the configuration changes to send to the network but me this is you know any service activation is going to involve multiple devices in our network there may be IPTV server edits may be involves settings on three routers two firewalls and also you know our billing system so we can build a customer for it for using the service now with network wide transaction support that we can do from net comp we just send the configuration changes to all the devices in our network we don't need to worry about sorting it each device will validate its configurations they'll all succeed or they're all fail we'll test the service and everything is fine if there is an issue since we're transactional it's easy to roll that back when we get to the net comp tutorial and talk about operations such as confirmed commit you'll see why this makes it very easy to deploy a config on the network for a service test that it's working and if it isn't very easily roll our network back to our starting point so really Network wide transactions is probably the most important leap forward in network management since the SNMP protocol was invented you know in front we it enables us to move from managing individual devices to managing networks and the network operators the service providers this is really what they want to be able to do they're running a network they want to manage the network they want to monetize the network they want to easily turn on new services in their network to have new offerings to their customers a lot of the details of network devices of error recover and sequencing tasks are removed from the management systems it's up to the devices they're the experts on what needs to happen internally don't leak that info or make those details necessary to be known at the management system level if we look at managing the network remember the operating expense of the network is much greater than the capital expense of the equipment the easier it is to run operate the network the more efficient and profitable the network provider can be so looking at current status out there as I've mentioned Metcalfe and yang are standardized by IETF we've talked about a lot of these features and what are the standards what what is the current status net comp has a wide set of our of RFC's the net cough protocol is standardized by the net comp working group within IETF you see a link there for it down at the bottom of the slide there is the the base net cough protocol defined in RFC 6241 there's transport mappings net cow was designed to be independent of its transport so it could be carried on different transports you'll find rfcs that do talk about different transport mappings however SSH is the required transport and in the real world SSH is the protocol people are using for transport of Netcom you'll find you know as I mentioned earlier Netcom is extensible you can add new operations to it well on the base protocol we have some standardized new operations notifications partial locking with defaults etc that have been standardized in RFC s there is a standardized access control model net comp access control model or knock'em and you know there is active draft work these things are evolving so certainly take a look at the Netcom working group at IET out to see what is happening today in terms of involvement in terms of yang the base RFC for yang is RFC 60 20 that's the base specification of the language it's a very readable RFC very easy to understand then we have you know some certain things RFC sixty eighty 76244 are good places to start in your reading of our C's because they give you architectural overview of how net comp and yang is applied for network management they give you guidelines for writing data models especially if you're gonna write a standard model for submission to IETF to have standardized there's also some various links here at the bottom of the slide where you can actually go to learn more the yang RFC's are done by a net mod working group net mod stands for net comp modeling that working group does the yang RFC's there's some other links here yang doctors and yang central you can use for learning resources etc one thing I haven't listed in in this RFC list is you know we first had Netcom for the protocol then we had yang the data modeling language now out of IETF we are starting to have standard yang models that are coming to RFC for example there's the system model there's the interface model we'll take a look at some of these in subsequent modules of this series but this will get you started in in learning take a look at the net model working group you'll find some of those standard yang models there so hopefully this is module has helped you get a little oriented to to the basics of Metcalfe and yang in subsequent mod modules in this training series we'll be doing more a bunch in more in depth the detailed tutorial of the Netcom protocol and the yang data modeling language thank you
Info
Channel: Tail-f Systems
Views: 14,592
Rating: 4.9473686 out of 5
Keywords:
Id: UwYYvT7DBvg
Channel Id: undefined
Length: 26min 31sec (1591 seconds)
Published: Wed Mar 04 2015
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.