EVC : Ethernet Virtual Connections

It is been a while that I read some papers about EVC, flexible matching, … But I have not found a good paper explaining EVC and a way to understanding well except to cisco configuration guide.

 

This figure is exactly what I searched for. This example is simple but enough to understand well how it works.

My misunderstanding was about “ingress” and “symmetric” : I didn’t understand, but now with the figure that it is clear that :

  1. encapsulation dot1q 10 : match all frames where a dot1Q tag is present with value 10
  2. “rewrite ingress tag pop 1 symmetric” : We pop 1 tag on this frame
  3. Give this frame to the MPLS xconnect without any tag

When a frame comes from the xconnect :

  1. It arrives without any tag
  2. With “symmetric”, we push the 10 dot1q tag
  3. put in TX the frame through the GigabitEthernet 0/2

You can ask me : “Ok this is really complicated your configuration, why don’t you use xxxx” ?
Where xxx is :

int gi 0/2
switchport trunk encapsulation dot1q
switchport trunk allow vlan 10
switchport mode trunk

int vl 10
xconnect 192.168.1.1 33 encapsulation mpls

I will reply : “Have you declare your vlan 100 on your switch ? What does it involve for the scalability ?”
=> Yes, you understand well : you are limited by the number of vlans.
=> With EVC : the “encapsulation dot1q 10” is local to the port. So no limitation.
=> Yes it is really great !!!!!

I urge you to read these papers :

BFD : Bidirectional Forwarding Detection (RFC5880)

BFD is a mecanism which give you access to a fast switchover for IGP, EBGP, … It is a RFC protocol : RFC5880.

BFD is a UDP protocol.

  • BFD control : UDP / 3784
  • BFD echo : UDP / 3785

BFD is in use on a segment, when a protocol needs it (such as : OSPF). It is configured by interface and called in protocol configuration.
When BFD detect a failure it informs upper protocols and helps to make a better / quick convergence.

You can configure BFD like :

Diagramme_BFD

Then you enable it on IGP configuration :

router ospf 1
 network 0.0.0.0 255.255.255.255 area 0
 bfd all-interfaces

BFD initialization works with a 4-state’s automate. These states are :

  • ADMIN-DOWN
  • DOWN
  • INIT
  • UP

ADMIN-DOWN : as it says the system want to hold the session DOWN by an administrative point of view : “I want to keep this session DOWN, so calm down and shut up as long as I say!”

DOWN : says that the session has just been created, administratively or operationnaly it maintains the state to DOWN until we receive a BFD DOWN control datagram from the other side : “We are agree that the session is DOWN, we can go on and try to initialize it!”

INIT : We come from DOWN state. Both systems are communicating. Until we receive an INIT or UP, we keep in INIT and send BFD INIT datagram.

UP : Ok both sides are agreed on INIT/UP we finalize the session and go together to UP states. We are UP until we detect it fails or ADMIN DOWN state is said to me ! So at TX interval we send Control packet with UP state until we detect a problem or been administratively set to DOWN.

Authentication :

BFD is aware of different authentication methods such as simple passowrd, MD5, SHA1.

Timers negotiation :

Timers are continually negotiated during the session by means of sending BFD Control datagram where :

  • Interval : Max rate (minimum interval), we are able to send
  • Min_RX : Minimum interval we are able to compute
  • Min Echo RX : Minimum interval we are able to compute for the Echo function
  • Multiplier : is a normal value which is used to calculate the Dead-Timer (HoldOn, …) : number of BFD datagrams lost in a row before we say that the session is DOWN. Dead Timer is : mult x max(desired TX interval , Required RX received interval)

So each side can adjust their timers and this at any time of the session life.

Demultiplexing :

To identify between multiple sessions between two systems, a discriminator (A unique ID). When we receive a BFD datagram with my discriminator, I know it is for __this session and I can compute it correctly.

Echo function :

This function is a way to detect and transmit packets/test forwarding plane : We send BFD echo packet with :

  • IP SRC = Me
  • IP DST = Me !
  • UDP / 3785
  • BFD information to demultiplex the session involved.

We can use Echo function only when BFD Control session is UP. After this, we can slow down sending BFD Control packet and only base failure detection by means of Echo function. We detect failure by using number of failure on a row as BFD Control Packets.

We can use BFD without this function only with BFD Control.

R1 (conf-if)# no bfd echo

Lab test :

You can find a cloudshark pcap trace here : https://www.cloudshark.org/captures/94617b9dc969

It consists of an BFD session initialization (you can find in the pcap by adding the filter : ‘bfd’). Then an outage has been produced by removing vlan on SW1 on the trunk (frame 249 : “Diag : Echo function failed”). And then allow it again on the trunk to reform the BFD session).

Checks :

R1#show bfd neighbors  details 

IPv4 Sessions
NeighAddr                              LD/RD         RH/RS     State     Int
155.1.13.3                              1/1          Up        Up        Et0/1.13
Session state is UP and using echo function with 500 ms interval.
Session Host: Software
OurAddr: 155.1.13.1     
Handle: 1
Local Diag: 0, Demand mode: 0, Poll bit: 0
MinTxInt: 1000000, MinRxInt: 1000000, Multiplier: 3
Received MinRxInt: 1000000, Received Multiplier: 3
Holddown (hits): 0(0), Hello (hits): 1000(30)
Rx Count: 31, Rx Interval (ms) min/max/avg: 1/1000/857 last: 681 ms ago
Tx Count: 32, Tx Interval (ms) min/max/avg: 1/999/840 last: 363 ms ago
Elapsed time watermarks: 0 0 (last: 0)
Registered protocols: OSPF 
Uptime: 00:00:26
Last packet: Version: 1                  - Diagnostic: 0
             State bit: Up               - Demand bit: 0
             Poll bit: 0                 - Final bit: 0
             C bit: 0                                   
             Multiplier: 3               - Length: 24
             My Discr.: 1                - Your Discr.: 1
             Min tx interval: 1000000    - Min rx interval: 1000000
             Min Echo interval: 500000  
R1#

Or on ASR9K or CRS plateform :

show bfd session 


Hope this help,

Last day for CCIE v4

It is not a news for CCIE student that today is the last day to pass CCIE lab in version 4. I hope the best for all the students whom will work hard today towards their digits.

Tomorrow is future : CCIE v5 is here. It is the version I will pass. A little review :

Bye bye to :

  • Flexlink, ISL, Layer 2 Protocol Tunneling
  • Frame-Relay (LFI, FR Traffic Shaping)
  • WCCP
  • IOS Firewall and IPS
  • RITE, RMON
  • RGMP
  • RSVP QoS, WRR/SRR

Welcome to new technologies :

  • Use IOS Troubleshooting Tools
  • Apply Troubleshooting Methodologies
  • Interpret Packet Capture
  • Implement and Troubleshoot Bidirectional Forwarding Detection
  • Implement EIGRP (multi-address) Named Mode
  • Implement, Troubleshoot and Optimize EIGRP and OSPF Convergence and Scalability
  • Implement and Troubleshoot DMVPN (single hub)
  • Implement and Troubleshoot IPsec with pre-shared key
  • Implement and Troubleshoot IPv6 First Hop Security

And the format of CCIE lab will change from TS & CONFIG to TS & DIAG & CONFIG. DIAG is a TS part only with some information (exhibit, mails, …) and no access to any equipment.

It will be fun 🙂

How to remove SSH on a Cisco device

Sometimes you need to remove SSH so that your customer will be able to access SSH behind NAT.

You can do this by means of :

no crypto key generate rsa

you device will reply you : no no !! You must do this :

crypto key zeroize rsa

such as :

Router(config)#no crypto key generate rsa 
% Use 'crypto key zeroize rsa' to delete signature keys.

Router(config)#crypto key zeroize rsa
% All RSA keys will be removed.
% All router certs issued using these keys will also be removed.
Do you really want to remove these keys? [yes/no]: yes
Router(config)#

SFR, Numericable, Bouygues Telecom, Free et les autres

Sorry for english readers, it will be a french article today.

Cet article n’est juste que ma réflexion et n’engage que moi. Ceci n’est peut-être pas votre vision. Si mes arguments ne sont pas fondés, je suis ouvert à la discussion.

Dans le feuilleton du mois de Mars qu’est le rachat de SFR, où les protagonistes sont Bouygues Telecom et Altice/Numericable, l’état en la représentation par M. MONTEBOURG se positionne et participe au choix économique. Je trouve que l’état va au devant d’une catastrophe ou de catastrophes.

Un exemple simple : on va tous dans les centres commerciaux. Généralement les boutiques Orange, SFR et BouyguesTelecom y sont présentes. D’un point de vue pragmatique comment M. MONTEBOURG peut croire que le futur groupe BouyguesTelecom/SFR maintiendra partout en france des doubles boutiques (avec les salariés associés) ? Si franchement l’état croit cela, on est franchement mal engagés dans le monde d’aujourd’hui…

Néanmoins, cela n’enlève rien au fait qu’avec la pression médiatique/lobbyiste/financière de la part de Bouygues Telecom, ce dernier va racheter SFR. Les trois seules choses auxquelles je crois via cet état de fait :

  • Free n’augmentera pas ses prix suite à l’obtention de ce réseau mobile
  • Orange et BouyguesTelecom/SFR vont s’entendrent comme larrons en foire…
  • Cela va en effet réduire le nombre d’acteurs et consolider Orange et BT/SFR

Une fois le réseau mobile de Bouygues revendu à Free, l’ensemble Bouygues ne sera rien d’autre que SFR en somme. Les salariés Bouygues Telecom en charge du réseau mobile feront quoi ? Travailleront sur le réseau SFR ? Euh, il n’y a pas double emplois ? Non mais bien sûr 😉 Vous croyez vraiment que cela sera le monde des bisounours lorsque les actionnaires demanderont leur dividende ? Que ce nouveau numéro 2 des télécoms vous écoutera lorsque le pôle comptable donnera la note à la direction générale ?
La variable d’ajustement pour sortir ces dividendes ne sera pas les emplois ?
Les mensonges n’engagent que ceux qui les écoutent M. MOUTEBOURG. Une simple lettre de M. Martin BOUYGUES vaut certitudes ? Que ferez-vous le jour où les nécessités économiques (dans un futur proche) généreront des pertes d’emplois. Tous les salariés ne pourront pas être reconvertis…
Ah bah oui comme tout bon homme politique, vous nous ferez une belle posture d’indignation, mais vous ne nous remettrez pas en cause.

Bref, nous le bas peuple, on ne comprend rien aux grand enjeux qui se jouent à Paris dans les cercles restreints du pouvoir et lobbyistes 😉

Ah oui, dans l’histoire la revente de certaines fréquences du dividende numérique (prévision de 3 milliards d’euros de recette) n’aura sans doute aucun intérêt, vu que le seul nécessitant ces fréquences en disposera une fois avoir racheter pour une bouchée de pain celles Bouygues Telecom.
J’espère sincèrement que l’argent qui devait rentrer au sein de l’état sur cette vente n’est pas déjà dilapider ?!
Le seul intérêt que je vois à cela, sera que ces fréquences seront (et je l’espère) soit libérées, soit accordées (sous gestion arcep) à certains opérateurs pour aménager le territoire avec des technologies alternatives. Ceci aura au moins l’intérêt de générer de la croissance pour ces TPE, PME qui travaillent dans ce domaine.

Ne dressons pas un tableau idyllique de l’autre protagoniste de ce feuilleton : Numericable n’est pas non plus un amant parfait. Le rachat de SFR générerait un groupe ultra endetté, dont le siège Ceci engendre généralement une gestion ultra serrée et parfois des drames sociaux. En revanche, si on reprend les premiers arguments :

  • Numericable ne dispose pas d’un réseau mobile : pas de double emplois
  • Numericable ne dispose pas d’un réseau de boutique à large échelle et encore moins dans le domaine du mobile

Ce que je pense : Bouygues Telecom va racheter SFR, dans un futur à moyen terme cela va générer des pertes d’emplois certains dans les boutiques et sur le réseau, mais encore une recette sur le dividende numérique qui ne sera pas là.
Bref que du bonheur dans le monde des télécoms. J’espère me tromper.