Ask is moving to Stack Overflow and! Please use the "opendaylight" tag on either of these sites. This site is now in Read-Only mode

Revision history [back]

click to hide/show revision 1
initial version


1) there are 2 listeners for NodeConnectorUpdated message - one of them is publishing this message to md-sal and the other (LLDPSpeakerPopListener) notifies LLDPSpeaker about add or removal of node.

2) LLDPSpeaker is notified upon new nodeConnector added (see 1) and sends out down to device an lldp packet in order to discover neighborhood (transmitPacket is method for sending packetOut message to device - see OFP spec.). This is periodically repeated until nodeConnector removed notification arrives.

3) device responds to lldp packed (sent out in 2)) and this packet arrives to controller as general packetIn message which is published to md-sal (as PacketReceived notification via NotificationPopListener). This happens with some delay after nodeConnector appears (because of this additional request-response communication). LLDPDiscoveryListener listens on PacketReceived and if there is payload of type LLDP then it will be processed in order to update topology.

4) this method has been rewritten - I guess this was previously supposed to chain some processing.

5) as soon as topologyExporter gets the knowledge about link it is supposed to be visible in "topology" - in GUI or restconf response. Link is just a record in datastore containing 2 nodeConnectors.

6) well - openflowplugin is simple (almost stateless) piece of puzzle, the only logic there is handshake and all NSF components act as applications on the other side of md-sal. I guess there is some NSF description on wiki.