Community discussions

MikroTik App
 
ofca
Member Candidate
Member Candidate
Topic Author
Posts: 228
Joined: Fri Aug 20, 2004 7:18 pm

MPLS and 1500 byte packets.

Fri Oct 31, 2008 12:42 pm

I've noticed that large packets get lost randomly on random routers using mpls-test package. Did others noticed it too? I'm reverting from MPLS back to EoIP, as unfortunately MPLS is currently unusable in mikrotik, at least in my network - it's working fine when it's working, but it stops working very often.

Other things I noticed:
- Random reboots when using MPLS
- Whole routing daemon died after few days of working and only reset-configuration helped (restoring backup made from unworkable system "restores" this condition)
- Mentioned dropping of large packets (magic number seems to be 1476 bytes)

Hehe. Second of the FAILs just happened on another router while I was writing this frustrated post. Seems to have some correlation with VPLS tunnels existing on the machine. Oh well, bye bye MPLS until 3.20 or so. :(
 
User avatar
gustkiller
Member
Member
Posts: 419
Joined: Sat Jan 07, 2006 5:15 am
Location: Brazil
Contact:

Re: MPLS and 1500 byte packets.

Thu Nov 06, 2008 4:14 am

what mikrotik version are you having these issues?
 
ofca
Member Candidate
Member Candidate
Topic Author
Posts: 228
Joined: Fri Aug 20, 2004 7:18 pm

Re: MPLS and 1500 byte packets.

Wed Nov 19, 2008 6:02 am

I've started seeing them on 3.14, and they were there on 3.15 - I switched back to EoIP and need to let my customers cool down about downtimes, so can't try 3.16 at the moment. VPLS problem makes any routing unworkable, fortunately wireless still comes up, and you can reach machine using mac-telnet. I asked support about this, and they asked me to test it on 3.16, but since I can't pin-point the cause, I won't know that i'm sitting on a time bomb until it blows in my face. Apparently I'm the only one with such problems.
 
zaltec
just joined
Posts: 15
Joined: Mon Nov 24, 2008 1:54 pm

Re: MPLS and 1500 byte packets.

Mon Nov 24, 2008 2:15 pm

Hi ofca, you're not alone.
Did some tests on MPLS and i found a lot of problems. As you said it works but suddenly stops working.
I tried every version from 3.13+ and all are instable. One of the most important thing on MPLS is the MTU. Since MPLS is adding 8 bytes (for 2 labels) to the 1500 bytes packet you should have a MTU of at least 1508 on every interface you're using MPLS, if you're using MPLS on VLAN interfaces you should consider another 4 bytes so at least 1512 bytes of MTU.
You can see other big problems if you run a hybrid routed-switched network. For example:

Router -> Access Point -> CPE
-> Bridge -> Bridge -> Router

CPE bridge wlan1 - ether1
AP bridge wlan1 - vlan1
wlan2 - vlan2
etc.
Router terminating vlans from AP and routing backbone on other vlans
Backhaul bridge bridging wlan1 - vlan1 and so on...

If you do full routing on router/bridge/ap then it's working much better but it's still unstable and stop working randomly.

Also there is another BIG problem if you try to ping the router with ICMP packet larger than 1500 bytes (which should pass with MTU 1520 for example): it hangs like a DoS, stops responding to packet and you have to power cycle it.

Hope MT will fix MPLS soon because it's much faster than EoIP if you have many hops between AC and CPE.

Best Regards,
Giorgio
 
Mplsguy
MikroTik Support
MikroTik Support
Posts: 227
Joined: Fri Jun 06, 2008 5:06 pm

Re: MPLS and 1500 byte packets.

Tue Nov 25, 2008 6:47 pm

Please send supout.rif files from routers where you experience instability (made during instability or e.g. after unexpected reboots) to support to help track problems down faster.

When configuring MPLS, there is no need to change interface MTU, because interface MTU only specifies max size of Layer 3 (IP packets) that router is allowed to prepare for sending out the interface. It does not affect MPLS and it also does not exactly specify the size of packet that will go out the interface (think of VLANs - they also add 4 bytes, but you do not need to increase MTU for ethernet interface).

Size of packets after MPLS "encapsulation" is controlled by MPLS MTU value, configured in '/mpls interface' menu. This value specifies max size of packet with MPLS labels included - MPLS assumes that it can transmit packets of this size over interface. Default value for this is 1508, that is - 1500 byte layer3 packet + 2 labels. Note that this may not work for all ethernet interfaces (but it surely does for wireless, again - no matter what "regular" MTU value is set to). If MPLS encapsulation will see that size of packet after MPLS encapsulation will exceed mpls-mtu it will either fragment the packet if possible (as in case of IP or VPLS packets), respond with error (e.g. for IP packets with "don't fragment" bit set) or drop it. mpls-mtu must be configured according to abilities of hardware. Almost all ethernet cards can send/receive 1504 bytes payload (for VLAN support).

For example, if ethernet interface is bridged with VPLS tunnel, router will have to send 1514 byte (14 bytes ethernet header + 1500 bytes payload) packet over VPLS tunnel. VPLS+MPLS encapsulation will add additional 12 bytes to packet (4 bytes - transport label, 4 bytes VPLS label, 4 bytes VPLS control word), producing 1526 bytes to be sent. If your network (cards/switches) support sending 1526 byte packets (of course with added 14 byte ethernet header) - great, no need to fragment, configure mpls-mtu to 1526 and go without fragmentation. If mpls-mtu for outgoing interface is configured to be 1508, VPLS will fragment packet producing 2 packets: 1508 bytes (12 bytes labels&control word, 1496 bytes of payload) and 30 bytes (12 bytes labels&control word, 18 bytes of payload), so that mpls-mtu is honored.

In short - you must make sure that mpls-mtu is configured such that it does not exceed abilities of hardware.
 
User avatar
gustkiller
Member
Member
Posts: 419
Joined: Sat Jan 07, 2006 5:15 am
Location: Brazil
Contact:

Re: MPLS and 1500 byte packets.

Tue Nov 25, 2008 8:41 pm

thanks for your explanation! mpls guy is the GUY! :D
 
zaltec
just joined
Posts: 15
Joined: Mon Nov 24, 2008 1:54 pm

Re: MPLS and 1500 byte packets.

Wed Nov 26, 2008 9:45 am

Hi mplsguy, you're right on what you say but i'm experiencing problems leaving eth/wlan interfaces on the standard MTU of 1500 using hybrid bridged/routed/vlans. Going all routed seems to attenuate the problem. As soon as i have some spare time i'll set-up a lab config and do more tests so i can report more closely what is not working.

On a side note i'm having problems using MTU bigger than 1528 bytes on RB eth cards, wlan seems to work fine to 1600 bytes, but there is still the ICMP DoS with large packets on eth interfaces as i explained before (not MPLS fault but important when doing tests)...

Thank you.

Regards,
Giorgio
 
Mplsguy
MikroTik Support
MikroTik Support
Posts: 227
Joined: Fri Jun 06, 2008 5:06 pm

Re: MPLS and 1500 byte packets.

Wed Nov 26, 2008 7:38 pm

zaltec, when you say you can crash router with large ICMP packets do you mean fragmented (sender has MTU of e.g. 1500 and framents big ping in 2 or more packets) or in one piece (you have changed MTU on sender to be above 1500)? And which ethernet card/routerboard did you observe this on?

As to issues you were having with MTU - like I wrote in previous post, mpls-mtu is the setting to be adjusted if hardware can not deal (either send or receive) with 1508 (+14 ethernet header + any vlans you add) byte packets, MPLS does not take into account interface MTU (layer 3). Please report to support any issues you will encounter.
 
zaltec
just joined
Posts: 15
Joined: Mon Nov 24, 2008 1:54 pm

Re: MPLS and 1500 byte packets.

Wed Nov 26, 2008 10:00 pm

Hi mplsguy,
routerboard don't crash if you use > 1500 bytes packet icmp ping, ether port simply stop passing packets, you can still reach the rb via wlan or other ethers but the one receiving the ping stop working, you need to reboot the RB, disabling and re-enabling the offended ether do nothing.
ICMP packet is a simple ping -f -l 1500 ip from windows pc, so a 1500 byte packet with the DF flag active. From 1500+ you can observe the issue. I have this problem in all RB433, have to try to RB433AH and RB333. I'll keep you informed about this.

For the mpls-mtu i don't want to lower the number from 1508, simply because i don't want fragmented packets (performance issue as you know) on my network, so the goal is to pass larger packets with RB hardware. I think routeros is taking into account interface MTU because if you use 1528 bytes on all the interfaces then mpls is working (except random crash), with a 1500 bytes MTU don't work.

Regards,
Giorgio
 
zaltec
just joined
Posts: 15
Joined: Mon Nov 24, 2008 1:54 pm

Re: MPLS and 1500 byte packets.

Mon Dec 08, 2008 3:00 pm

Some updates:

Updated all RB to 3.17, nothing changed, even mpls-test and routing-test suffer severe issues.
Another thing i found in this scenario:

PE1 <--> P1 <--> P2 <--> PE2

All default configuration, running only /30 network from rb to rb and OSPF of course.

PE1 and P1, P2 and PE2 are ethernet linked
P1 and P2 are ethernet linked + wireless linked (wireless link cost 20, ethernet link cost 10)

Everything works fine if you have all the links connected, if you try to disconnect wireless link or ethernet link then weird things happen.
If you have a VPLS tunnel from PE1 and PE2 and you shut down one link from P1 to P2 then VPLS stops working, you can see MPLS forwarding table changing labels and routing interface, you can see VPLS going from running to disabled to running but no traffic pass in it. On top of this after few seconds CPU usage go to 100% in PE1 and PE2 and you must power-cycle. Tried even with TE tunnel, VPLS is using TE labels but nothing change about crash.

Running routed without MPLS or routed + EoIP tunnel from PE1 to PE2 works wonderfully even if you disconnect the link between P1 and P2, so OSPF is working very well.

Regards,
Giorgio
 
Mplsguy
MikroTik Support
MikroTik Support
Posts: 227
Joined: Fri Jun 06, 2008 5:06 pm

Re: MPLS and 1500 byte packets.

Mon Dec 08, 2008 5:53 pm

zaltec, please send supout files that are made when you experience any problems (e.g. 100% cpu usage, no traffic passing) to support.
 
zaltec
just joined
Posts: 15
Joined: Mon Nov 24, 2008 1:54 pm

Re: MPLS and 1500 byte packets.

Wed Dec 10, 2008 10:46 pm

Sent support to Mikrotik.

I don't think the problem is in VPLS, for me is on Mikrotik MPLS core.

Tried this time with this config:

PE1 -> P1 -> P2 -> PE2

PE1 ether2 connected to P1 ether1,
P1 ether2 connected to P2 ether1,
P1 ether3 connected to P2 ether2 (with different subnet and cost 20),
P2 ether3 connected to PE2 ether1

When you disconnect the first link between P1 and P2 simulating a failure all traffic go to the other one (as it should) but when you reconnect the link then P1 and P2 stop switching MPLS labels.

10.255.255.5 is PE2

- Step1: all cables connected and working


PE1:

[admin@PE1] > mpls forwarding-table print
Flags: L - ldp, V - vpls, T - traffic-eng
# IN-LABEL OUT-LABELS DESTINATION I NEXTHOP
0 expl-null
1 L 16 10.0.0.4/30 e 10.0.0.2
2 L 17 16 10.0.0.12/30 e 10.0.0.2
3 L 18 10.0.0.8/30 e 10.0.0.2
4 L 19 17 10.255.255.5/32 e 10.0.0.2
5 L 20 18 10.255.255.2/32 e 10.0.0.2
6 L 21 10.255.255.1/32 e 10.0.0.2


[admin@PE1] > routing ospf route print
# DESTINATION STATE COST GATEWAY INTERFACE
0 10.0.0.0/30 intra-area 10 0.0.0.0 ether2
1 10.0.0.4/30 intra-area 20 10.0.0.2 ether2
2 10.0.0.8/30 intra-area 30 10.0.0.2 ether2
3 10.0.0.12/30 intra-area 30 10.0.0.2 ether2
4 10.255.255.1/32 ext-1 30 10.0.0.2 ether2
5 10.255.255.2/32 ext-1 40 10.0.0.2 ether2
6 10.255.255.4/32 imported 20 0.0.0.0
7 10.255.255.5/32 ext-1 50 10.0.0.2 ether2


[admin@PE1] > routing ospf lsa print
AREA TYPE ID ORIGINATOR SEQUENCE-NU... AGE
backbone router 10.255.255.1 10.255.255.1 0x80000007 359
backbone router 10.255.255.2 10.255.255.2 0x80000007 360
backbone router 10.255.255.4 10.255.255.4 0x80000005 363
backbone router 10.255.255.5 10.255.255.5 0x80000005 366
backbone network 10.0.0.1 10.255.255.4 0x80000003 363
backbone network 10.0.0.6 10.255.255.2 0x80000003 370
backbone network 10.0.0.10 10.255.255.2 0x80000003 365
backbone network 10.0.0.14 10.255.255.5 0x80000003 366
external as-external 10.255.255.1 10.255.255.1 0x80000003 379
external as-external 10.255.255.2 10.255.255.2 0x80000003 380
external as-external 10.255.255.4 10.255.255.4 0x80000003 377
external as-external 10.255.255.5 10.255.255.5 0x80000003 380


[admin@PE1] > tool traceroute 10.255.255.5 src-address=10.255.255.4
ADDRESS STATUS
1 10.0.0.2 1ms 1ms 1ms
mpls-label=17
2 10.0.0.6 1ms 1ms 1ms
mpls-label=19
3 10.255.255.5 1ms 1ms 1ms


P1:


[admin@P1] > mpls forwarding-table print
Flags: L - ldp, V - vpls, T - traffic-eng
# IN-LABEL OUT-LABELS DESTINATION I NEXTHOP
0 expl-null
1 L 16 10.0.0.12/30 e 10.0.0.6
2 L 17 19 10.255.255.5/32 e 10.0.0.6
3 L 18 10.255.255.2/32 e 10.0.0.6
4 L 19 10.255.255.4/32 e 10.0.0.1


[admin@P1] > routing ospf route print
# DESTINATION STATE COST GATEWAY INTERFACE
0 10.0.0.0/30 intra-area 10 0.0.0.0 ether1
1 10.0.0.4/30 intra-area 10 0.0.0.0 ether2
2 10.0.0.8/30 intra-area 20 0.0.0.0 ether3
3 10.0.0.12/30 intra-area 20 10.0.0.6 ether2
4 10.255.255.1/32 imported 20 0.0.0.0
5 10.255.255.2/32 ext-1 30 10.0.0.6 ether2
6 10.255.255.4/32 ext-1 30 10.0.0.1 ether1
7 10.255.255.5/32 ext-1 40 10.0.0.6 ether2


[admin@P1] > routing ospf lsa print
AREA TYPE ID ORIGINATOR SEQUENCE-NU... AGE
backbone router 10.255.255.1 10.255.255.1 0x80000007 243
backbone router 10.255.255.2 10.255.255.2 0x80000007 244
backbone router 10.255.255.4 10.255.255.4 0x80000005 248
backbone router 10.255.255.5 10.255.255.5 0x80000005 249
backbone network 10.0.0.1 10.255.255.4 0x80000003 248
backbone network 10.0.0.6 10.255.255.2 0x80000003 254
backbone network 10.0.0.10 10.255.255.2 0x80000003 249
backbone network 10.0.0.14 10.255.255.5 0x80000003 249
external as-external 10.255.255.1 10.255.255.1 0x80000003 263
external as-external 10.255.255.2 10.255.255.2 0x80000003 264
external as-external 10.255.255.4 10.255.255.4 0x80000003 262
external as-external 10.255.255.5 10.255.255.5 0x80000003 263


[admin@P1] > tool traceroute 10.255.255.5 src-address=10.255.255.1
ADDRESS STATUS
1 10.0.0.6 1ms 1ms 1ms
mpls-label=19
2 10.255.255.5 1ms 1ms 1ms


P2:


[admin@P2] > mpls forwarding-table print
Flags: L - ldp, V - vpls, T - traffic-eng
# IN-LABEL OUT-LABELS DESTINATION I NEXTHOP
0 expl-null
1 L 16 10.0.0.0/30 e 10.0.0.5
2 L 17 10.255.255.1/32 e 10.0.0.5
3 L 18 19 10.255.255.4/32 e 10.0.0.5
4 L 19 10.255.255.5/32 e 10.0.0.14


[admin@P2] > routing ospf route print
# DESTINATION STATE COST GATEWAY INTERFACE
0 10.0.0.0/30 intra-area 20 10.0.0.5 ether1
1 10.0.0.4/30 intra-area 10 0.0.0.0 ether1
2 10.0.0.8/30 intra-area 20 0.0.0.0 ether2
3 10.0.0.12/30 intra-area 10 0.0.0.0 ether3
4 10.255.255.1/32 ext-1 30 10.0.0.5 ether1
5 10.255.255.2/32 imported 20 0.0.0.0
6 10.255.255.4/32 ext-1 40 10.0.0.5 ether1
7 10.255.255.5/32 ext-1 30 10.0.0.14 ether3


[admin@P2] > routing ospf lsa print
AREA TYPE ID ORIGINATOR SEQUENCE-NU... AGE
backbone router 10.255.255.1 10.255.255.1 0x80000007 223
backbone router 10.255.255.2 10.255.255.2 0x80000007 223
backbone router 10.255.255.4 10.255.255.4 0x80000005 229
backbone router 10.255.255.5 10.255.255.5 0x80000005 228
backbone network 10.0.0.1 10.255.255.4 0x80000003 229
backbone network 10.0.0.6 10.255.255.2 0x80000003 233
backbone network 10.0.0.10 10.255.255.2 0x80000003 228
backbone network 10.0.0.14 10.255.255.5 0x80000003 228
external as-external 10.255.255.1 10.255.255.1 0x80000003 243
external as-external 10.255.255.2 10.255.255.2 0x80000003 243
external as-external 10.255.255.4 10.255.255.4 0x80000003 243
external as-external 10.255.255.5 10.255.255.5 0x80000003 242



- Step 2: ether2 on P1 cable disconnected



PE1:


[admin@PE1] > ping 10.255.255.5
10.255.255.5 64 byte ping: ttl=62 time=1 ms
10.255.255.5 64 byte ping: ttl=62 time<1 ms
10.255.255.5 64 byte ping: ttl=62 time<1 ms
10.255.255.5 64 byte ping: ttl=62 time<1 ms
10.255.255.5 64 byte ping: ttl=62 time<1 ms
10.255.255.5 64 byte ping: ttl=62 time<1 ms
10.255.255.5 64 byte ping: ttl=62 time<1 ms
10.255.255.5 ping timeout ether2 on P1 disconnected
10.255.255.5 ping timeout
10.255.255.5 64 byte ping: ttl=62 time<1 ms
10.255.255.5 64 byte ping: ttl=62 time<1 ms
10.255.255.5 64 byte ping: ttl=62 time<1 ms
10.255.255.5 64 byte ping: ttl=62 time<1 ms
13 packets transmitted, 11 packets received, 15% packet loss
round-trip min/avg/max = 0/0.0/1 ms


[admin@PE1] > mpls forwarding-table print
Flags: L - ldp, V - vpls, T - traffic-eng
# IN-LABEL OUT-LABELS DESTINATION I NEXTHOP
0 expl-null
1 L 17 16 10.0.0.12/30 e 10.0.0.2
2 L 18 10.0.0.8/30 e 10.0.0.2
3 L 19 17 10.255.255.5/32 e 10.0.0.2
4 L 20 18 10.255.255.2/32 e 10.0.0.2
5 L 21 10.255.255.1/32 e 10.0.0.2
7 L 23 10.0.0.4/30 e 10.0.0.2


[admin@PE1] > routing ospf lsa print
AREA TYPE ID ORIGINATOR SEQUENCE-NU... AGE
backbone router 10.255.255.1 10.255.255.1 0x80000008 71
backbone router 10.255.255.2 10.255.255.2 0x80000008 72
backbone router 10.255.255.4 10.255.255.4 0x80000005 768
backbone router 10.255.255.5 10.255.255.5 0x80000005 771
backbone network 10.0.0.1 10.255.255.4 0x80000003 768
backbone network 10.0.0.10 10.255.255.2 0x80000003 770
backbone network 10.0.0.14 10.255.255.5 0x80000003 771
external as-external 10.0.0.4 10.255.255.1 0x80000001 69
external as-external 10.0.0.4 10.255.255.2 0x80000001 70
external as-external 10.255.255.1 10.255.255.1 0x80000003 784
external as-external 10.255.255.2 10.255.255.2 0x80000003 785
external as-external 10.255.255.4 10.255.255.4 0x80000003 782
external as-external 10.255.255.5 10.255.255.5 0x80000003 785


[admin@PE1] > routing ospf route print
# DESTINATION STATE COST GATEWAY INTERFACE
0 10.0.0.0/30 intra-area 10 0.0.0.0 ether2
1 10.0.0.4/30 ext-1 30 10.0.0.2 ether2
2 10.0.0.8/30 intra-area 30 10.0.0.2 ether2
3 10.0.0.12/30 intra-area 40 10.0.0.2 ether2
4 10.255.255.1/32 ext-1 30 10.0.0.2 ether2
5 10.255.255.2/32 ext-1 50 10.0.0.2 ether2
6 10.255.255.4/32 imported 20 0.0.0.0
7 10.255.255.5/32 ext-1 60 10.0.0.2 ether2


[admin@PE1] > tool traceroute 10.255.255.5 src-address=10.255.255.4
ADDRESS STATUS
1 10.0.0.2 1ms 1ms 1ms
mpls-label=17
2 10.0.0.10 1ms 1ms 1ms
mpls-label=19
3 10.255.255.5 1ms 1ms 1ms




P1:

[admin@P1] > mpls forwarding-table print
Flags: L - ldp, V - vpls, T - traffic-eng
# IN-LABEL OUT-LABELS DESTINATION I NEXTHOP
0 expl-null
1 L 16 10.0.0.12/30 e 10.0.0.10
2 L 17 19 10.255.255.5/32 e 10.0.0.10
3 L 18 10.255.255.2/32 e 10.0.0.10
4 L 19 10.255.255.4/32 e 10.0.0.1


[admin@P1] > routing ospf lsa print
AREA TYPE ID ORIGINATOR SEQUENCE-NU... AGE
backbone router 10.255.255.1 10.255.255.1 0x80000008 170
backbone router 10.255.255.2 10.255.255.2 0x80000008 171
backbone router 10.255.255.4 10.255.255.4 0x80000005 868
backbone router 10.255.255.5 10.255.255.5 0x80000005 869
backbone network 10.0.0.1 10.255.255.4 0x80000003 868
backbone network 10.0.0.10 10.255.255.2 0x80000003 869
backbone network 10.0.0.14 10.255.255.5 0x80000003 869
external as-external 10.0.0.4 10.255.255.1 0x80000001 168
external as-external 10.0.0.4 10.255.255.2 0x80000001 169
external as-external 10.255.255.1 10.255.255.1 0x80000003 883
external as-external 10.255.255.2 10.255.255.2 0x80000003 884
external as-external 10.255.255.4 10.255.255.4 0x80000003 882
external as-external 10.255.255.5 10.255.255.5 0x80000003 883


[admin@P1] > routing ospf route print
# DESTINATION STATE COST GATEWAY INTERFACE
0 10.0.0.0/30 intra-area 10 0.0.0.0 ether1
1 10.0.0.4/30 imported 20 0.0.0.0
2 10.0.0.8/30 intra-area 20 0.0.0.0 ether3
3 10.0.0.12/30 intra-area 30 10.0.0.10 ether3
4 10.255.255.1/32 imported 20 0.0.0.0
5 10.255.255.2/32 ext-1 40 10.0.0.10 ether3
6 10.255.255.4/32 ext-1 30 10.0.0.1 ether1
7 10.255.255.5/32 ext-1 50 10.0.0.10 ether3
8 192.168.0.0/24 ext-1 50 10.0.0.10 ether3


[admin@P1] > tool traceroute 10.255.255.5 src-address=10.255.255.1
ADDRESS STATUS
1 10.0.0.10 1ms 1ms 1ms
mpls-label=19
2 10.255.255.5 1ms 1ms 1ms



P2:


[admin@P2] > mpls forwarding-table print
Flags: L - ldp, V - vpls, T - traffic-eng
# IN-LABEL OUT-LABELS DESTINATION I NEXTHOP
0 expl-null
1 L 16 10.0.0.0/30 e 10.0.0.9
2 L 17 10.255.255.1/32 e 10.0.0.9
3 L 18 19 10.255.255.4/32 e 10.0.0.9
4 L 19 10.255.255.5/32 e 10.0.0.14


[admin@P2] > routing ospf lsa print
AREA TYPE ID ORIGINATOR SEQUENCE-NU... AGE
backbone router 10.255.255.1 10.255.255.1 0x80000008 262
backbone router 10.255.255.2 10.255.255.2 0x80000008 262
backbone router 10.255.255.4 10.255.255.4 0x80000005 961
backbone router 10.255.255.5 10.255.255.5 0x80000005 960
backbone network 10.0.0.1 10.255.255.4 0x80000003 961
backbone network 10.0.0.10 10.255.255.2 0x80000003 960
backbone network 10.0.0.14 10.255.255.5 0x80000003 960
external as-external 10.0.0.4 10.255.255.1 0x80000001 260
external as-external 10.0.0.4 10.255.255.2 0x80000001 260
external as-external 10.255.255.1 10.255.255.1 0x80000003 975
external as-external 10.255.255.2 10.255.255.2 0x80000003 975
external as-external 10.255.255.4 10.255.255.4 0x80000003 975
external as-external 10.255.255.5 10.255.255.5 0x80000003 974


[admin@P2] > routing ospf route print
# DESTINATION STATE COST GATEWAY INTERFACE
0 10.0.0.0/30 intra-area 30 10.0.0.9 ether2
1 10.0.0.4/30 imported 20 0.0.0.0
2 10.0.0.8/30 intra-area 20 0.0.0.0 ether2
3 10.0.0.12/30 intra-area 10 0.0.0.0 ether3
4 10.255.255.1/32 ext-1 40 10.0.0.9 ether2
5 10.255.255.2/32 imported 20 0.0.0.0
6 10.255.255.4/32 ext-1 50 10.0.0.9 ether2
7 10.255.255.5/32 ext-1 30 10.0.0.14 ether3



- Step 3: ether2 cable on P1 reconnected



PE1:


[admin@PE1] > mpls forwarding-table print
Flags: L - ldp, V - vpls, T - traffic-eng
# IN-LABEL OUT-LABELS DESTINATION I NEXTHOP
0 expl-null
1 L 17 16 10.0.0.12/30 e 10.0.0.2
2 L 18 10.0.0.8/30 e 10.0.0.2
3 L 19 17 10.255.255.5/32 e 10.0.0.2
4 L 20 18 10.255.255.2/32 e 10.0.0.2
5 L 21 10.255.255.1/32 e 10.0.0.2
6 L 22 20 192.168.0.0/24 e 10.0.0.2
7 L 24 10.0.0.4/30 e 10.0.0.2


[admin@PE1] > routing ospf route print
# DESTINATION STATE COST GATEWAY INTERFACE
0 10.0.0.0/30 intra-area 10 0.0.0.0 ether2
1 10.0.0.4/30 intra-area 20 10.0.0.2 ether2
2 10.0.0.8/30 intra-area 30 10.0.0.2 ether2
3 10.0.0.12/30 intra-area 30 10.0.0.2 ether2
4 10.255.255.1/32 ext-1 30 10.0.0.2 ether2
5 10.255.255.2/32 ext-1 40 10.0.0.2 ether2
6 10.255.255.4/32 imported 20 0.0.0.0
7 10.255.255.5/32 ext-1 50 10.0.0.2 ether2
8 192.168.0.0/24 ext-1 50 10.0.0.2 ether2


[admin@PE1] > routing ospf lsa print
AREA TYPE ID ORIGINATOR SEQUENCE-NU... AGE
backbone router 10.255.255.1 10.255.255.1 0x8000000A 39
backbone router 10.255.255.2 10.255.255.2 0x8000000A 40
backbone router 10.255.255.4 10.255.255.4 0x80000005 1218
backbone router 10.255.255.5 10.255.255.5 0x80000005 1221
backbone network 10.0.0.1 10.255.255.4 0x80000003 1218
backbone network 10.0.0.6 10.255.255.2 0x80000001 40
backbone network 10.0.0.10 10.255.255.2 0x80000003 1220
backbone network 10.0.0.14 10.255.255.5 0x80000003 1221
external as-external 10.255.255.1 10.255.255.1 0x80000003 1234
external as-external 10.255.255.2 10.255.255.2 0x80000003 1235
external as-external 10.255.255.4 10.255.255.4 0x80000003 1232
external as-external 10.255.255.5 10.255.255.5 0x80000003 1235
external as-external 192.168.0.0 10.255.255.5 0x80000001 721


[admin@PE1] > tool traceroute 10.255.255.5 src-address=10.255.255.4
ADDRESS STATUS
1 0.0.0.0 timeout timeout timeout
2 10.0.0.6 1ms 1ms 1ms
3 10.255.255.5 1ms 1ms 1ms




P1:


[admin@P1] > mpls forwarding-table print
Flags: L - ldp, V - vpls, T - traffic-eng
# IN-LABEL OUT-LABELS DESTINATION I NEXTHOP
0 expl-null
1 L 16 10.0.0.12/30 e 10.0.0.6
2 L 17 10.255.255.5/32 e 10.0.0.6
3 L 18 10.255.255.2/32 e 10.0.0.6
4 L 19 10.255.255.4/32 e 10.0.0.1
5 L 20 192.168.0.0/24 e 10.0.0.6


[admin@P1] > routing ospf lsa print
AREA TYPE ID ORIGINATOR SEQUENCE-NU... AGE
backbone router 10.255.255.1 10.255.255.1 0x8000000A 85
backbone router 10.255.255.2 10.255.255.2 0x8000000A 85
backbone router 10.255.255.4 10.255.255.4 0x80000005 1265
backbone router 10.255.255.5 10.255.255.5 0x80000005 1266
backbone network 10.0.0.1 10.255.255.4 0x80000003 1265
backbone network 10.0.0.6 10.255.255.2 0x80000001 85
backbone network 10.0.0.10 10.255.255.2 0x80000003 1266
backbone network 10.0.0.14 10.255.255.5 0x80000003 1266
external as-external 10.255.255.1 10.255.255.1 0x80000003 1280
external as-external 10.255.255.2 10.255.255.2 0x80000003 1281
external as-external 10.255.255.4 10.255.255.4 0x80000003 1279
external as-external 10.255.255.5 10.255.255.5 0x80000003 1280
external as-external 192.168.0.0 10.255.255.5 0x80000001 766


[admin@P1] > routing ospf route print
# DESTINATION STATE COST GATEWAY INTERFACE
0 10.0.0.0/30 intra-area 10 0.0.0.0 ether1
1 10.0.0.4/30 intra-area 10 0.0.0.0 ether2
2 10.0.0.8/30 intra-area 20 0.0.0.0 ether3
3 10.0.0.12/30 intra-area 20 10.0.0.6 ether2
4 10.255.255.1/32 imported 20 0.0.0.0
5 10.255.255.2/32 ext-1 30 10.0.0.6 ether2
6 10.255.255.4/32 ext-1 30 10.0.0.1 ether1
7 10.255.255.5/32 ext-1 40 10.0.0.6 ether2
8 192.168.0.0/24 ext-1 40 10.0.0.6 ether2


[admin@P1] > tool traceroute 10.255.255.5 src-address=10.255.255.1
ADDRESS STATUS
1 10.0.0.6 1ms 1ms 1ms
2 10.255.255.5 1ms 1ms 1ms


P2:

[admin@P2] > mpls forwarding-table print
Flags: L - ldp, V - vpls, T - traffic-eng
# IN-LABEL OUT-LABELS DESTINATION I NEXTHOP
0 expl-null
1 L 16 10.0.0.0/30 e 10.0.0.5
2 L 17 10.255.255.1/32 e 10.0.0.5
3 L 18 10.255.255.4/32 e 10.0.0.5
4 L 19 10.255.255.5/32 e 10.0.0.14
5 L 20 192.168.0.0/24 e 10.0.0.14


[admin@P2] > routing ospf lsa print
AREA TYPE ID ORIGINATOR SEQUENCE-NU... AGE
backbone router 10.255.255.1 10.255.255.1 0x8000000A 143
backbone router 10.255.255.2 10.255.255.2 0x8000000A 142
backbone router 10.255.255.4 10.255.255.4 0x80000005 1324
backbone router 10.255.255.5 10.255.255.5 0x80000005 1323
backbone network 10.0.0.1 10.255.255.4 0x80000003 1324
backbone network 10.0.0.6 10.255.255.2 0x80000001 142
backbone network 10.0.0.10 10.255.255.2 0x80000003 1323
backbone network 10.0.0.14 10.255.255.5 0x80000003 1323
external as-external 10.255.255.1 10.255.255.1 0x80000003 1338
external as-external 10.255.255.2 10.255.255.2 0x80000003 1338
external as-external 10.255.255.4 10.255.255.4 0x80000003 1338
external as-external 10.255.255.5 10.255.255.5 0x80000003 1337
external as-external 192.168.0.0 10.255.255.5 0x80000001 823


[admin@P2] > routing ospf route print
# DESTINATION STATE COST GATEWAY INTERFACE
0 10.0.0.0/30 intra-area 20 10.0.0.5 ether1
1 10.0.0.4/30 intra-area 10 0.0.0.0 ether1
2 10.0.0.8/30 intra-area 20 0.0.0.0 ether2
3 10.0.0.12/30 intra-area 10 0.0.0.0 ether3
4 10.255.255.1/32 ext-1 30 10.0.0.5 ether1
5 10.255.255.2/32 imported 20 0.0.0.0
6 10.255.255.4/32 ext-1 40 10.0.0.5 ether1
7 10.255.255.5/32 ext-1 30 10.0.0.14 ether3
8 192.168.0.0/24 ext-1 30 10.0.0.14 ether3


If you have a VPLS tunnel from PE1 to PE2 they go to 100% cpu usage and must be power-cycled.

What do you think mplsguy?


Regards,
Giorgio
 
Mplsguy
MikroTik Support
MikroTik Support
Posts: 227
Joined: Fri Jun 06, 2008 5:06 pm

Re: MPLS and 1500 byte packets.

Thu Dec 11, 2008 5:07 pm

zaltec, thank you for your detailed report, it was very helpful - some problems have been identified in OSPF and MPLS. Please remember that most up to date MPLS implementation is available in mpls-test and routing-test, therefore you should always be using these packages (actually "regular" mpls package is not getting updated any more, so any use of it is discouraged). New packages (mpls-test and routing-test) with found issues fixed will be provided tomorrow for those willing to test.
 
zaltec
just joined
Posts: 15
Joined: Mon Nov 24, 2008 1:54 pm

Re: MPLS and 1500 byte packets.

Thu Dec 11, 2008 6:49 pm

Ok mplsguy, i'll test the new mpls-test + routing-test packages as soon as they are available and report here if the issues are gone.

Regards,
Giorgio
 
 
zaltec
just joined
Posts: 15
Joined: Mon Nov 24, 2008 1:54 pm

Re: MPLS and 1500 byte packets.

Fri Dec 12, 2008 4:22 pm

Hi Normis,
tested the packages, i'm afraid but MPLS label switching problem is still there :?

Regards,
Giorgio
 
Mplsguy
MikroTik Support
MikroTik Support
Posts: 227
Joined: Fri Jun 06, 2008 5:06 pm

Re: MPLS and 1500 byte packets.

Fri Dec 12, 2008 4:56 pm

zaltec, it would be great if you could send similar report as previous one to support when using these packages.
 
zaltec
just joined
Posts: 15
Joined: Mon Nov 24, 2008 1:54 pm

Re: MPLS and 1500 byte packets.

Fri Dec 12, 2008 5:39 pm

Supout sent.

Regards,
Giorgio
 
Mplsguy
MikroTik Support
MikroTik Support
Posts: 227
Joined: Fri Jun 06, 2008 5:06 pm

Re: MPLS and 1500 byte packets.

Mon Dec 15, 2008 4:19 pm

Issue has been identified (and hopefully fixed) with 2 or more links between the same LDP neighbors. mpls-test packages for 3.17 are available for download from location normis posted (use updated routing-test as well).
 
User avatar
normis
MikroTik Support
MikroTik Support
Posts: 26318
Joined: Fri May 28, 2004 11:04 am
Location: Riga, Latvia

Re: MPLS and 1500 byte packets.

Mon Dec 15, 2008 4:20 pm

 
zaltec
just joined
Posts: 15
Joined: Mon Nov 24, 2008 1:54 pm

Re: MPLS and 1500 byte packets.

Tue Dec 16, 2008 1:06 am

Well done guys,
now it's working, even VPLS don't crash anymore.
In the next days i'll try to do some other reports to be sent to support for the other issues (e.g. the jumbo frame crash).
I think we're moving closer to start using MPLS in production environment.

Regards,
Giorgio
 
jonesy
newbie
Posts: 36
Joined: Tue Oct 07, 2008 1:31 am

Re: MPLS and 1500 byte packets.

Tue Dec 16, 2008 7:14 am

It's really good to see some of these bugs being fixed. I am keen to implement MPLS on our production network, but am holding out to see how others go with it first as we have a number of business customers, and I need the network to be stable.

-jonesy

Who is online

Users browsing this forum: Ahrefs [Bot], GoogleOther [Bot], xrlls and 102 guests