Site icon Karneliuk

Do Nokia (Alcatel-Lucent) SR OS and Cisco IOS XR speak the same language?

Hello my friend,

I’m continuing my exciting discovery of Nokia (Alcatel-Lucent) IP solution and ways how it works. The main topic for today is the comparison of configuration of Nokia (Alcatel-Lucent)’s and Cisco’s operation systems, which are used in their network devices in Service Provider (SP) networks. In the previous article I’ve covered the process of setting up the lab, which includes Cisco IOS XRv and Nokia VSR virtual routers, so my further investigations will be based on this lab.

Disclaimer

All the thoughts in this article are my own and may not reflect the official position of Nokia.

What is it all about?

The configuration of operation system is actually the way, how we configure the devices (routers in our case) to perform desired activities. As an example of such tasks you can consider assigning IP address to an interface, bringing some ports up or launching the routing protocols. I can continue this list with a numerous examples, but I think you’ve got the idea. In other words, the configuration of device is a language, which we speak with it. As with other languages, if you know the language, you can communicate and be understood, if not, you can’t ask anybody to do something.

 What language speaks Cisco?

Let’s talk at the beginning about Cisco languages. There are several operation systems, which are used by Cisco devices. Everything has begun many years ago with Cisco IOS, which is being extensively used for more than 20 years. Recently Cisco has invented 3 other variations of its IOS:

There are also some other OS, like ASA OS, which is used in Cisco security devices and which is also has its own syntax.

Cisco ASR 9000 Series Routers portfolio

From the configuration point of view, Cisco traditional IOS and IOS XE are just the same. On the other hand, NX-OS is configured differently and IOS XR is also configured differently. For many engineers, who have used to work with IOS previously (for me as well), the transition to Cisco IOS XR is not smooth at all. The reason for that is the different logic, how IOS XR is configured configured. And it turns out that there is much more in common between Cisco IOS XR and Nokia (Alcatel-Lucent) SR OS, than between Cisco IOS XR and other Cisco operation systems.

What language speaks Nokia (Alcatel-Lucent)?

All Nokia (Alcatel-Lucent) IP devices speak one version of operation system, which is called SR OS. It stands for Service Router Operation System. It’s very easy to memory this acronym, because Nokia (Alcatel-Lucent) IP devices are called mainly 7750 SR (Service Router) or 7705 SRA (Service Aggregation Router). There is also switch portfolio by Nokia (Alcatel-Lucent), which is called ESS, but it also operates SR OS. So all Nokia (Alcatel-Lucent) devices speaks the only one language, what significantly simplifies the configuration and operation.

Let’s take a closer look, how we perform the same configuration activities in SR OS and IOS XR.

Nokia (Alcatel-Lucent) 7750 SR portfolio

 The structure of CLI in SR OS and IOS XR

Both vendors CLIs consist of different contexts. Context is a kind of abstract that covers configuration of certain things. For example we have configuration contexts for different routing protocols or for interfaces. The context is marked with bold in the example below, where you see configuration context for logical interfaces.

Nokia (Alcatel-Lucent) VSR Cisco IOS XR

*A:SR3>config>router>if#

RP/0/0/CPU0:XRv1(config-if)#

Though it looks not so similar at the first glance, take a look hove you navigate between contexts:

Nokia (Alcatel-Lucent) VSR Cisco IOS XR

*A:SR3# configure
*A:SR3>config# router
*A:SR3>config>router# interface Lo10
*A:SR3>config>router>if$ address 10.0.10.1/32
*A:SR3>config>router>if$ loopback

RP/0/0/CPU0:XRv1#configure
RP/0/0/CPU0:XRv1(config)#interface Lo11
RP/0/0/CPU0:XRv1(config-if)#ipv4 address 10.0.11.1/32

There are only two differences in this example. The significant one is that in Nokia (Alcatel-Lucent) SR OS you configure all routing protocols, as well as logical interfaces, in “router” configuration context. This is done due to strict decoupling of logical interface and physical interface, which are configured completely separated from each other. The second difference is that you have to mention “loopback” under interface configuration context. This also relates to fact that we have this decoupling of logical and physical interfaces. Name “Lo10” doesn’t mean Loopback10, as you may expect based on Cisco experience”. It’s just name “Lo10” and you effectively can change it to “Ferrari”, “Greece”, “sd82s” or whatever other name you want. For logical interface that is mapped to physical port, you will use “port 1/1/1” instead of “loopback” (see the first article for reference).

The next interesting point is so called “long commands”. It’s my own term, which describes the following example:

Nokia (Alcatel-Lucent) VSR Cisco IOS XR

*A:SR3# configure router interface Lo12 address 10.0.12.1/32
*A:SR3# configure router interface Lo12 loopback

RP/0/0/CPU0:XRv1#
configure
RP/0/0/CPU0:XRv1(config)#interface lo13 ipv4 address 10.0.13.1/32

We use “long commands” when we need to change some certain things and don’t want to navigate step by step between configuration contexts. You just enter the full details, which are effectively applied, but you don’t change the context, where you are.

Actually both Nokia (Alcatel-Lucent) SR OS and Cisco IOS XR provide you possibility to get to know, how you got to the certain context:

Nokia (Alcatel-Lucent) VSR Cisco IOS XR

*A:SR3>config>router>if# pwc
——————————-
Present Working Context :
——————————-
<root>
configure
router “Base”
interface “Lo12”

RP/0/0/CPU0:XRv1(config-if)# pwd
Tue Jun 14 10:07:23.863 UTC
interface Loopback11

The difference is just one letter. If you are still not impressed, I’ll provide two more examples.

Here is the topology for the first example for your reference:

In the example above we want to configure communication between loopbacks at Nokia (Alcatel-Lucent) VSR and Cisco IOS XRv. Let’s compare, how we configure static routing at Cisco IOS XR and Nokia (Alcatel-Lucent) SR OS. The configuration itself is very simple at both routers:

Nokia (Alcatel-Lucent) VSR Cisco IOS XR

*A:SR3# configure
*A:SR3>config# router static-route 10.0.11.1/32 next-hop 10.0.0.2

RP/0/0/CPU0:XRv1#configure
RP/0/0/CPU0:XRv1(config)#router static address-family ipv4 unicast 10.0.10.1/32 10.0.0.1

The configuration is not 100% the same, but similar, isn’t it? Let’s test how it works:

A:SR3# ping 10.0.11.1 source 10.0.10.1
PING 10.0.11.1 56 data bytes
64 bytes from 10.0.11.1: icmp_seq=1 ttl=255 time=2.08ms.
64 bytes from 10.0.11.1: icmp_seq=2 ttl=255 time=4.30ms.
64 bytes from 10.0.11.1: icmp_seq=3 ttl=255 time=8.08ms.
64 bytes from 10.0.11.1: icmp_seq=4 ttl=255 time=3.73ms.
64 bytes from 10.0.11.1: icmp_seq=5 ttl=255 time=9.01ms.
—- 10.0.11.1 PING Statistics —-
5 packets transmitted, 5 packets received, 0.00% packet loss
round-trip min = 2.08ms, avg = 5.44ms, max = 9.01ms, stddev = 2.65ms

Now let’s add the one more loopback at each router and configure OSPF between them.

The configuration of loopback interfaces are omitted for brevity:

Nokia (Alcatel-Lucent) VSR Cisco IOS XR

*A:SR3>config>router>ospf# info
——————————-
router-id 10.0.101.1
area 0.0.0.0
interface “toXR1”
interface-type point-to-point
hello-interval 2
dead-interval 10
no shutdown
exit
interface “Lo101”
no shutdown
exit
exit
no shutdown
——————————-

RP/0/0/CPU0:XRv1(config)#show conf
router ospf CORE
router-id 10.0.102.1
area 0.0.0.0
interface GigabitEthernet0/0/0/0
network point-to-point
dead-interval 10
hello-interval 2
!
interface Loopback102
!
!
!

Let’s test how the new connection works:

RP/0/0/CPU0:XRv1#ping 10.0.101.1 source 10.0.102.1
Tue Jun 14 10:52:21.788 UTC
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.0.101.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/7/19 ms

Let’s compare the routing tables. At Cisco IOS XRv:

RP/0/0/CPU0:XRv1#show route ipv4
Tue Jun 14 11:07:36.866 UTC
Codes: C – connected, S – static, R – RIP, B – BGP, (>) – Diversion path
D – EIGRP, EX – EIGRP external, O – OSPF, IA – OSPF inter area
N1 – OSPF NSSA external type 1, N2 – OSPF NSSA external type 2
E1 – OSPF external type 1, E2 – OSPF external type 2, E – EGP
i – ISIS, L1 – IS-IS level-1, L2 – IS-IS level-2
ia – IS-IS inter area, su – IS-IS summary null, * – candidate default
U – per-user static route, o – ODR, L – local, G  – DAGR, l – LISP
A – access/subscriber, a – Application route
M – mobile route, r – RPL, (!) – FRR Backup path
Gateway of last resort is not set
C    10.0.0.0/24 is directly connected, 01:27:14, GigabitEthernet0/0/0/0
L    10.0.0.2/32 is directly connected, 01:27:14, GigabitEthernet0/0/0/0
S    10.0.10.1/32 [1/0] via 10.0.0.1, 00:31:00
L    10.0.11.1/32 is directly connected, 01:27:14, Loopback11
O    10.0.101.1/32 [110/1] via 10.0.0.1, 00:15:36, GigabitEthernet0/0/0/0
L    10.0.102.1/32 is directly connected, 00:15:37, Loopback102

At Nokia (Alcatel-Lucent) VSR:

A:SR3# show router route-table
=============================================================================
Route Table (Router: Base)
=============================================================================
Dest Prefix[Flags]                            Type    Proto     Age        Pref
Next Hop[Interface Name]                                    Metric
—————————————————————————–
10.0.0.0/24                                   Local   Local     00h33m21s  0
toXR1                                                        0
10.0.10.1/32                                  Local   Local     00h33m28s  0
Lo10                                                         0
10.0.11.1/32                                  Remote  Static    00h32m53s  5
10.0.0.2                                                     1
10.0.100.2/32                                 Local   Local     00h33m28s  0
system                                                       0
10.0.101.1/32                                 Local   Local     00h23m03s  0
Lo101                                                        0
10.0.102.1/32                                 Remote  OSPF      00h15m18s  10
10.0.0.2                                                     101
—————————————————————————–
No. of Routes: 6

Such similarities are amazing, aren’t they?

Lessons learned

At the beginning I wanted to cover IPv6 routing as well, but I’ve faced the issue that it’s necessary to make additional configuration at Nokia (Alcatel-Lucent) SR OS in order to get it working. In Cisco IOS XR it’s enabled by default.

Conclusion

Based on the fact that Nokia (Alcatel-Lucent) SR OS and Cisco IOS XR are very similar from configuration point of view, I can name them brothers or at least relatives. From my prospective, it significantly eases operation of mixed environment, where devices both from Nokia (Alcatel-Lucent) and Cisco are used together, because engineers don’t have to study two completely different approaches to configure devices (like Cisco and Juniper, for instance). May be they don’t speak the same language, but their configuration languages have very much in common.

Support us





BR,

Anton Karneliuk

Exit mobile version