概述
SDN控制器通过LLDP(Link Layer Discovery Protocol,链路发现协议)协议进行链路发现,然后根据发现协议搜集的信息来识别和管理网络拓扑结构。
LLDP协议
为了讲解SDN控制器的发现原理,首先简要介绍LLDP协议的相关内容,先关内容来自百度百科和这篇博文:
LLDP帧的格式如下:
图中的TLV都属于LLDP帧的的数据字段。这张图中显示的LLDP帧是使用Ethernet II帧格式进行的封装,除此之外也可以使用SNAP进行封装,但是类型字段处要更改为0xAAAA-0300-0000-88CC。
实际起作用的LLDP协议内容都是数据字段的各种TLV。设备标识TLV,端口TLV,生存期TLV和结束TLV是必备的字段,进行拓管理的设别会根据设备标识TLV+端口TLV来定位拓扑结构中的节点,当解析到结束TLV时就表示TLV字段已经结束。
TLV的所有可选的值(Mandatory表示必须存在的TLV类型):
SDN控制器的链路发现机制
了解过LLDP协议的相关内容就可以大致粗浅的理解SDN控制器的链路发现机制了。
SDN控制器会首先通过一个Packet_out消息向所有与之相连的交换机发送LLDP数据包,这些交换机收到该消息后会向自己的所有端口发出LLDP数据包。如果某个OpenFlow交换机接收到了这些发出来的LLDP数据包,就会通过Packet_in消息将两台交换机之间的链路信息发送给控制器。控制器在搜集了自己管理区域内的诸多链路信息之后,就可以根据这些信息来构建网络的拓扑结构了。
但是在实际的网络中,可能还包含了一些非OpenFlow交换机,所以控制器在发出Packet_out消息时,还会同时要求交换机发出广播包。广播包会被发送给出了交换机与控制器相连的端口之外的其他所有端口。// 此处内容有待继续了解,资料上的描述有些歧义,请待更新
如果转载请注明出处:http://blog.csdn.net/gophers
最后
以上就是深情路人为你收集整理的SDN控制器的拓扑管理与LLDP链路发现的全部内容,希望文章能够帮你解决SDN控制器的拓扑管理与LLDP链路发现所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复