lmp link management protocol francesco diana [email protected] umberto raimondi...

28
LMP LMP Link Management Protocol Link Management Protocol Francesco Diana [email protected]. it Umberto Raimondi [email protected] t Marco Anisetti [email protected]

Post on 22-Dec-2015

218 views

Category:

Documents


1 download

TRANSCRIPT

LMPLMPLink Management ProtocolLink Management Protocol

Francesco Diana

[email protected]

Umberto Raimondi

[email protected]

Marco Anisetti

[email protected]

Introduction to Control PlaneIntroduction to Control PlanePart one

33/20/20

Network exampleNetwork example

Enterprise

Mobile

CommonNMS/EMS

IP/MPLS Backbone

DWDM core

10GbE ring(s)

ISP

VOD

DWDM Access Ring

Services

PDH

Residential users

Data traffic

GbE

FE/GbE

FE/GbE CWDM Access Ring

Residential users

IP

DSLAM

SDH/SONET Legacy

B/E/GPON Access

44/20/20

Switching levelsSwitching levels

PSC = Packet Switch CapablePSC = Packet Switch Capable TDM = Time Division MultiplexingTDM = Time Division Multiplexing LSC = Lambda Switch CapableLSC = Lambda Switch Capable FSC = Fiber Switch CapableFSC = Fiber Switch Capable

BundleFiber n

Fiber 1

FSC Cloud

LSCCloud

TDMCloud

PSCCloud

LSCCloud

TDMCloud

PSCCloud

ExplicitLabel LSPs

Time-slotLSPs

Fiber LSPs LSPs ExplicitLabel LSPs

Time-slotLSPs

LSPs

55/20/20

Signaling functionalitiesSignaling functionalitiesTo manage such complex networks some To manage such complex networks some

signaling functionalities are required, for signaling functionalities are required, for instance:instance:

RoutingRouting Resource reservationResource reservation Fault localizationFault localization Connectivity verificationConnectivity verification

As these features may require different As these features may require different types of networks to communicate, the types of networks to communicate, the related information cannot be sent over related information cannot be sent over the same channel that carries the data.the same channel that carries the data.

66/20/20

Control plane: why?Control plane: why?For instance, if signaling information is sent For instance, if signaling information is sent

over SONET frames and then wavelength-over SONET frames and then wavelength-multiplexed into a DWDM network, that multiplexed into a DWDM network, that information will be unreadable until it exits information will be unreadable until it exits the DWDM network.the DWDM network.

Another reason to keep data and signaling Another reason to keep data and signaling information apart is that if a node detects information apart is that if a node detects a fault on a data link, it can still alert its a fault on a data link, it can still alert its neighbors or a network management neighbors or a network management system over a different communication system over a different communication channel.channel.

77/20/20

Control planeControl plane The set of communication channels over which all The set of communication channels over which all

signaling information is sent is named Control signaling information is sent is named Control Plane, in opposition to the Data Plane which Plane, in opposition to the Data Plane which carries the data.carries the data.

Many protocols have been defined to manage Many protocols have been defined to manage specific control plane functionalities, e.g. RSVP for specific control plane functionalities, e.g. RSVP for resource reservation and OSPF or IS-IS for resource reservation and OSPF or IS-IS for routing.routing.

GMPLS suite encompasses all these control plane GMPLS suite encompasses all these control plane features, providing an integrated strategy to features, providing an integrated strategy to manage heterogeneous networks with respect to manage heterogeneous networks with respect to routing, resource reservation, connectivity routing, resource reservation, connectivity verification and fault localization.verification and fault localization.

In this seminar we will focus on an important In this seminar we will focus on an important component of the GMPLS suite, namely the Link component of the GMPLS suite, namely the Link Management protocol.Management protocol.

Link Management ProtocolLink Management ProtocolPart two

99/20/20

LMPLMP

Defined in RFC4204 It manages data links, that is the

channels on which the data are carried between two adjacent nodes.

It can be used for a variety of equipments including optical crossconnects and photonic switches.

1010/20/20

LMP FeaturesLMP Features

Maintain control channel connectivity Neighbor discovery Verify data link connectivity Correlate link property information

Localize link failures• Suppress downstream alarms

1111/20/20

LMP proceduresLMP procedures LMP currently consists of four main LMP currently consists of four main

procedures, of which the first two are procedures, of which the first two are mandatory and the last two are mandatory and the last two are optional:optional:• Control channel managementControl channel management• Link property correlationLink property correlation• Link verificationLink verification• Fault management Fault management

1212/20/20

Control ChannelControl Channel Control channel management is used to Control channel management is used to

establish and maintain control channels establish and maintain control channels between adjacent nodes. This is done between adjacent nodes. This is done using a using a Config messageConfig message exchange and a exchange and a fastfast keep-alive keep-alive mechanism between the mechanism between the nodes.nodes.

To initiate an LMP adjacency between two To initiate an LMP adjacency between two nodes, one or more bi-directional control nodes, one or more bi-directional control channels MUST be activated. channels MUST be activated.

1313/20/20

Neighbor discoveryNeighbor discovery

Automatic inventory of links between nodes• Allows to detect incorrect physical fiber connections

Automatic identification between neighbors• There is a need to accurately identify the neighbors so

that this information can be shared with the routing protocol for dissemination in the network

• This allows the routing protocol to build an accurate network topology

1414/20/20

Control Channel: Config message (1)Control Channel: Config message (1)

To establish a control channel, the To establish a control channel, the destination IP address on the far end destination IP address on the far end of the control channel must be of the control channel must be known. This knowledge may be known. This knowledge may be manually configured or automatically manually configured or automatically discovered (multicast 224.0.0.1). discovered (multicast 224.0.0.1). • control channels are electrically control channels are electrically

terminated at each node. terminated at each node.

1515/20/20

Control Channel: Config message (2)Control Channel: Config message (2) Control channel activation begins with a Control channel activation begins with a

parameter negotiation exchange using parameter negotiation exchange using Config, ConfigAck, and ConfigNack Config, ConfigAck, and ConfigNack messages (LMP objects: negotiable or non-messages (LMP objects: negotiable or non-negotiable).negotiable).

To activate a control channel, a Config To activate a control channel, a Config message MUST be transmitted to the message MUST be transmitted to the remote node, and in response, a ConfigAck remote node, and in response, a ConfigAck message MUST be received at the local message MUST be received at the local node. node.

The Config message contains:The Config message contains:• Local Control Channel Id (CC_Id)Local Control Channel Id (CC_Id)• sender's Node_Idsender's Node_Id• Message_Id for reliable messaging.Message_Id for reliable messaging.• CONFIG object. CONFIG object.

1616/20/20

Control Channel: Config message (3)Control Channel: Config message (3) It is possible that both the local and It is possible that both the local and

remote nodes initiate the configuration remote nodes initiate the configuration procedure at the same time:procedure at the same time:• The node with the higher Node_Id wins the The node with the higher Node_Id wins the

contention.contention. The ConfigAck express agreement on ALL The ConfigAck express agreement on ALL

of the configured parameters (both of the configured parameters (both negotiable and non-negotiable). negotiable and non-negotiable).

E.g RFC 4209 (LMP for DWDM) a new LMP-E.g RFC 4209 (LMP for DWDM) a new LMP-WDM CONFIG object is defined.WDM CONFIG object is defined.

1717/20/20

Control Channel: keep-alive (1)Control Channel: keep-alive (1) Control channel connectivity is maintained Control channel connectivity is maintained

through LMP Hello messagesthrough LMP Hello messages Before sending Hello messages, the Before sending Hello messages, the

HelloInterval and HelloDeadInterval HelloInterval and HelloDeadInterval parameters MUST be agreed. parameters MUST be agreed.

These parameters are exchanged in the These parameters are exchanged in the Config message.Config message.• The HelloInterval indicates how frequently LMP The HelloInterval indicates how frequently LMP

Hello messages will be sent.Hello messages will be sent.• The HelloDeadInterval indicates how long a The HelloDeadInterval indicates how long a

device should wait to receive a Hello message device should wait to receive a Hello message before declaring a control channel deadbefore declaring a control channel dead

1818/20/20

Control Channel: keep-alive (2)Control Channel: keep-alive (2)

LMP Hello protocol is a light-weight keep-alive LMP Hello protocol is a light-weight keep-alive mechanismmechanism• Hello messages are transmitted in the control channelHello messages are transmitted in the control channel

LMP Hello messages can detect control channel LMP Hello messages can detect control channel failures quicklyfailures quickly

For each Hello msg transmitted, the source node For each Hello msg transmitted, the source node must receive an Hello msg with the same must receive an Hello msg with the same sequence numbersequence number• Hello messages use Transmit and Receive sequence Hello messages use Transmit and Receive sequence

numbers (TxSeqNum, RcvSeqNum) to identify msgs of numbers (TxSeqNum, RcvSeqNum) to identify msgs of the same sessionthe same session

1919/20/20

Control Channel: keep-alive (3)Control Channel: keep-alive (3) There are two special sequence numbers. There are two special sequence numbers.

TxSeqNum MUST NOT ever be 0. TxSeqNum = 1 TxSeqNum MUST NOT ever be 0. TxSeqNum = 1 is used to indicate that the sender has just is used to indicate that the sender has just started/restarted started/restarted

When TxSeqNum reaches (2^32)-1, the next When TxSeqNum reaches (2^32)-1, the next sequence number used is 2, not 0 or 1.sequence number used is 2, not 0 or 1.

A B

{TxSeqNum=1;RcvSeqNum=0}

{TxSeqNum=1;RcvSeqNum=1}

HelloInterval

{TxSeqNum=2;RcvSeqNum=1 }

2020/20/20

TE & Data LinksTE & Data Links Recall that data-bearing links and control Recall that data-bearing links and control

channels are not necessarily the samechannels are not necessarily the same• Out-of-band control channel connectivity does Out-of-band control channel connectivity does

not indicate that data bearing link is upnot indicate that data bearing link is up

Multiple parallel resources (links) in the Multiple parallel resources (links) in the transport layer may be bundled into a transport layer may be bundled into a traffic engineering (TE) link for efficient traffic engineering (TE) link for efficient summarization of the resource capacitysummarization of the resource capacity• This process is done through link property This process is done through link property

correlationcorrelation

2121/20/20

Link Property CorrelationLink Property Correlation

Every node must notify the Every node must notify the characteristics of its links, e.g. characteristics of its links, e.g. channels number, channel ids,etc…channels number, channel ids,etc…

This information is stored on both This information is stored on both ends of the link, LMP must guarantee ends of the link, LMP must guarantee properties alignmentproperties alignment

2222/20/20

Link Discovery: exampleLink Discovery: example

1

32

4

1

32

4

Each local port is associated with its corresponding remote port.

Control channel

Data links

2323/20/20

Link Property Correlation (1)Link Property Correlation (1)

Three LMP messages are used for correlationThree LMP messages are used for correlation• LinkSummary, LinkSummaryAck and LinkSummaryNackLinkSummary, LinkSummaryAck and LinkSummaryNack

LinkSummary includes the local and remote link LinkSummary includes the local and remote link id’s, a list of all data links that comprise the TE id’s, a list of all data links that comprise the TE link, and various link propertieslink, and various link properties

LinkSummary is sent by a node to its adjacent LinkSummary is sent by a node to its adjacent nodenode

One of LinkSummaryAck and LinkSummaryNack One of LinkSummaryAck and LinkSummaryNack is sent as a response by the adjacent nodeis sent as a response by the adjacent node• E.g. LinkSummaryNack is sent if local and remote TE link E.g. LinkSummaryNack is sent if local and remote TE link

types are differenttypes are different

2424/20/20

Link Property Correlation (2)Link Property Correlation (2) If the LinkSummary message is received from a If the LinkSummary message is received from a

remote node, and the Interface_Id mappings match remote node, and the Interface_Id mappings match those that are stored locally, then the two nodes have those that are stored locally, then the two nodes have agreement on the Verification procedure.agreement on the Verification procedure.

If the verification procedure is not used, the If the verification procedure is not used, the LinkSummary message can be used to verify LinkSummary message can be used to verify agreement on manual configuration.agreement on manual configuration.

The LinkSummaryAck message is used to signal The LinkSummaryAck message is used to signal agreement on the Interface_Id mappings and link agreement on the Interface_Id mappings and link property definitions. property definitions.

LinkSummaryNack message MUST be transmitted, LinkSummaryNack message MUST be transmitted, indicating which Interface mappings are not correct indicating which Interface mappings are not correct and/or which link properties are not accepted. and/or which link properties are not accepted.

If a LinkSummaryNack message indicates that the If a LinkSummaryNack message indicates that the Interface_Id mappings are not correct and the link Interface_Id mappings are not correct and the link verification procedure is enabled, the link verification procedure is enabled, the link verificationverification process SHOULD be repeated for all mismatched, free process SHOULD be repeated for all mismatched, free data links;data links;

2525/20/20

Connectivity VerificationConnectivity VerificationCONTROL PLANE

DATA PLANE

CONTROL PLANE

DATA PLANE

Begin Verify Message

Begin Verify ACK Message

TestStatus Success Message (2)

TestStatus ACK Message (3)

End Verify Message

End Verify ACK Message

Test Message (1)

Optional procedure Optional procedure Test Message sent over data plane, verified using control plane messages Test Message sent over data plane, verified using control plane messages Same control channel used to check multiple data links on the same nodeSame control channel used to check multiple data links on the same node Note that this procedure can be used to "discover" the connectivity of the Note that this procedure can be used to "discover" the connectivity of the

data ports data ports

2626/20/20

Connectivity Verification over transparent Connectivity Verification over transparent networksnetworks

Transparent networks = All optical networks Transparent networks = All optical networks without OEO conversion capabilitieswithout OEO conversion capabilities• E.g. A network segment composed by a set of E.g. A network segment composed by a set of

OLAsOLAs

The connectivity verification requires that the The connectivity verification requires that the involved nodes can perform OEO conversioninvolved nodes can perform OEO conversion• The TestMessage must be sent/received over The TestMessage must be sent/received over

the data planethe data plane

2727/20/20

Fault localizationFault localization

When a node detects an upstream failure (e.g. a loss of power), it sends a ChannelStatus message upstream

The upstream node sends ChannelStatusAck back

Upstream node correlates that failure with any failure detected locally

If, as an effect of the correlation procedure, a node localizes a fault, it sends a ChannelStatus message to the downstream node to indicate if the channel is failed or OK

2828/20/20

Example of Fault LocalizationExample of Fault Localization

A B C

1. B and C detect a failure on their input links

2. B and C send a ChannelStatus message to nodes A and B respectively

4. A does not detect any fault on the input port, and sends a

ChannelStatus to B to inform it that the link between them has

failed.3. A ChannelStatusAck message

confirms that the ChannelStatus has been received.