Networking as a domain doesnt always evolve as rapidly as some other technologies – the main reason being the base concepts over which everything is build up has remained the same for quite some time. However the sheer magnitude of the domain is plain daunting. It is very vast. Though I am no veteran in this field but still working on quite a few protocols for the past 6 yrs I should consider myself an intermediate level person in this domain. But alas its not true. Because there are lots and lots of topics that I am either not aware of or not comfortable with. So I always wonder how everyone approaches a new protocol or concept.
I usually use a mixture of various steps. It all depends on the comfort factor. One way of learning is reading up on the topic quite extensively and then trying to implement it practically. I followed this path while learning about BGP. The first ever I had to work on for BGP was when the protocol stack was upgrading the BGP RFC implementation along with the introduction of 4 byte AS numbers. Till that time I absolutely had no clue about BGP. So it was a golden opportunity for me to learn it. Because its rare nowadays to get an opportunity to test protocols like BGP and OSPF from the scratch. How I approached here was I read through some online PDFs about BGP. Once I got comfortable with the basic terms in BGP, I directly jumped on the RFC. I always find reading a RFC very difficult. The main reason for this is I feel them quite dry. You just read and read and go on But in this case I was quite pumped up about learning BGP. So I actually went through each and every section 2 to 3 times. After all the extensive reading, I tried my hand on configuring it on my box and then went from there.
However for me the first way doesnt work always. The first protocol I ever learnt was RIP Now I was quite naive at that time, so reading docs and RFCs at that time was just plain not possible for me. I wouldnt have understood anything at that point. So I used the reverse way here. I directly used the configuration guides and jumped on the routers and configured RIP. Now I tried to make sense of what was going on. I got very excited when I was able to redistribute static routes and it appeared in the other router Following the implementation and config guides once I ran through the entire protocol I then went back to the books to learn in detail. And guess what I was able to understand everything now.
The third way, which I think I am most comfortable in, is a combination of the above. Start with the reading, get little knowledge, jump to configuring the protocol, come back to reading and go back to configuration. Or it can be the reverse, start with configs, then read then again configure. I use this method the maximum amount of time. I have been able to learn most of the switching protocols, BGP route reflectors and various other concepts using this step.
There can be various other ways for learning too. All articles, concepts and learnings I will jot down in this blog, I have learnt using one of the above ways. Hope you find them useful.