Network world is full of noise, a lot of buzz advancing every day. While the world was just trying to get connected with SDN, it has already led to the inception of yet another new technology: Segment Routing(SR). The veterans Clarence Filsfils and his team has successfully coined this term. Before the revelation of Segment Routing concept, let us find out what led to segment routing. Well, Segment Routing(SR) has come into the world with the motive of removing MPLS. Yes, SR is an alternative to MPLS. But, MPLS itself was invented to optimize networks and reduce the size of routing tables, then what went wrong? Let me clear your doubts. As you know, MPLS is all about playing with labels and MPLS-TE tunnels are like reserved roads, just like network below.
Reserved path (MPLS-TE tunnels)
So, Tom wants to visit Jerry. There are 3 paths to reach, as you can see above. Tom decides to build Tunnel 1, which passes through highway, as it is the best path to reach to Jerry’s place. We can consider, alternative path as Tunnel 2, which is the low traffic path, with smaller roads. Whenever Tom wishes to visit Jerry, the entire tunnel 1 path must be working, so the intermediate stations must maintain the state of the highway. Also, the state of tunnel 2 must be maintained. Imagine, 200 such tunnels built for all the 200 people who want to reach to Jerry. This is surely a hectic task for station masters..!!! Thus, maintaining tunnels in million number is difficult for routers. If at times Tom wants to take a diversion, he must inform intermediate station master about his thoughts. Poor Tom 😛 Modifications in the tunnel involves making configuration changes on routers and this is not preferable. So, these are some of the cons of MPLS network.
Frustrated Tom thought to himself, why should the station masters know about my path? I am the one who should know or decide the path based on my mood. I am the source, so the source should control the routing. My moods, my decision, my path. Here comes Segment Routing to rescue Tom. Look at the new network, where Tom controls his path.
Segment Routing network
Now, there are no reserved paths for Tom. He will decide his own path beforehand based on his mood swings. He will figure out the entire path, list the stations on the route, arrange them in order, print them out and put it on his car. So whenever he reaches a station, stationmaster identifies his own station number and welcomes Tom. The station master will only guide Tom to next station and remove next station number from the path. Now, the station master must not remember Tom’s route. Station masters are happy, less work now. Tom is happy, he is guiding himself. And even if he decides to change route at any time, he need not inform the station masters about it.
Using this analogy, in networking each router will be identified by a label, just like station number in above example. The application will inform the SDN controller about its requirement. Based on which, the controller will calculate an appropriate path and respond to the application. The path is described in terms of labels of gateway routers. Labels are globally unique, assigned by the network operator. The application will then add this path in the data packet header. When a packet reaches a router with destination as a global label, the router will just route the packet to the out interface based on the top label. If the destination is the next router, it will pop the label. Label processing here is same as MPLS. The source has the control and that is Segment Routing my friends, also called as source routing. Segments are the labels based on which the router will take actions. We shall dig more about segments in the coming post.
I hope that I have answered the why and what about segment routing. SR reduces the complexity of network by making it stateless, so is definitely worth so much of buzz. For more buzz about SR, stay tuned.
Happy source routing…!!!