
SDN(Software Defined Network)即软件定义网络,是一种网络设计理念,或者一种推倒重来的设计思想。DN的理念是将原来封闭在通用网络硬件的控制平面抽取、独立出来并软件化为SDN控制器,这个控制器如同网络的“大脑”控制网络中的所有设备,而原来的通用网络硬件只需要听从SDN控制器的命令进行“傻瓜式”转发就可以了。其简单模型如图所示:
SDN网络的三大技术特征:
ODL控制器项目架构大致如下:
ODL在设计的时候遵循了六个基本的架构原则(以下来自opendaylight官方文档):
1、运行时模块化和扩展化(Runtime Modularity and Extensibility):支持在控制器运行时进行服务的安装、删除和更新。
2、多协议的南向支持(Multiprotocol Southbound):南向支持多种协议。
3、服务抽象层(Service Abstraction Layer):南向多种协议对上提供统一的北向服务接口。Hydrogen中全线采用AD-SAL,Helium版本AD-SAL和MD-SAL共存,Lithium和Beryllium中已基本使用MD-SAL架构。
4、开放的可扩展北向API(Open Extensible Northbound API):提供可扩展的应用API,通过REST或者函数调用方式。两者提供的功能要一致。
5、支持多租户、切片(Support for Multitenancy/Slicing):允许网络在逻辑上(或物理上)划分成不同的切片或租户。控制器的部分功能和模块可以管理指定切片。控制器根据所管理的分片来呈现不同的控制观测面。
6、一致性聚合(Consistent Clustering):提供细粒度复制的聚合和确保网络一致性的横向扩展(scale-out)。
1、OSGi框架
OSGi(Open Service Gateway Initiative,直译为“开放服务网关”),是一个以Java为技术平台的动态模块化规范。OSGi中规定如何定义一个模块以及模块之间如何交互,Java模块被称为Bundle,OSGi就是为了使Bundle能更好的被复用。基于OSGi的应用是由一个个Bundle组成的,这些Bundle通过OSGi组织在一起,形成了一个系统。
OSGI框架分层:
2、Bundle
OSGi如果说是Java的模块开发体系,Bundle就是模块。OSGi中每个Bundle都有自己的类加载器,支持包级别的类导入和类导出,Bundle通过配置MANIFEST.MF,可以控制从Bundle导出的包,而没有导出的包则在Bundle外部是无法访问的。这样就完成了内部包和外部包的隔离。
3、KARAF是Apache旗下的开源项目,同时也是一个基于OSGI的运行环境,可以用于部署各种组件和应用程序。
4、Maven是现在Java社区中最强大的项目管理和项目构建工具。
5、Netty:java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。OpenDaylight南向使用Netty来管理底层的并发IO。
6、Jersey:开源的RESTful框架,实现了JAX-RS (JSR 311 &JSR 339) 规范。OpenDaylight北向使用Jersey提供REST接口。
还有其他很多用到的技术就不一一介绍了,有兴趣的朋友可以去网上搜索一下。
课程名称使用教材
备注
物联网产业与技术导论
《物联网:技术、应用、标准与商业模式》,电子工业出版社,等教材。
在学完高等数学,物理,化学,通信原理,数字电路,计算机原理,程序设计原理等课程后开设本课程,全面了解物联网之RFID、M2M、传感网、两化融合等技术与应用。
C语言程序设计
《C语言程序设计》,清华大学出版社,等教材。
物联网涉及底层编程,C语言为必修课,同时需要了解OSGi,OPC,Silverlight等技术标准
Java程序设计
《Java语言程序设计教程》,机械工业出版社,等教材。
物联网应用层,服务器端集成技术,开放Java技术也是必修课,同时需要了解Eclipse,SWT, Flash, HTML5,SaaS等技术
无线传感网络概论
《无线传感器网络理论、技术与实现》,国防工业出版社,《短距离无线通讯入门与实战》北京航空航天大学出版社,等教材。
学习各种无线RF通讯技术与标准,Zigbee, 蓝牙,WiFi,GPRS,CDMA,3G, 4G, 5G,Mote等等
TCP/IP网络与协议
《TCP/IP网络与协议》,清华大学出版社,等教材。
TCP/IP以及OSI网络分层协议标准是所有有线和无线网络协议的基础,Socket编程技术也是基础技能,为必修课
嵌入式系统
《嵌入式系统技术教程》,人民邮电出版社等教材。
嵌入式系统是物联网感知层和通讯层重要技术,了解TinyOS等,为必修课
传感器技术概论
《传感器技术》,中国计量出版社,等教材。
物联网专业学生需要对传感器技术与发展,尤其是在应用中如何选用有所了解,但不一定需要了解传感器的设计与生产,对相关的材料科学,生物技术等有深入了解
RFID技术概论
《射频识别(RFID)技术原理与应用》,机械工业出版社,等教材。
RFID作为物联网主要技术之一,需要了解,它本身(与智能卡技术融合)可以是一个细分专业或行业,也可以是研究生专业选题方向。
工业信息化及现场总线技术
《现场总线技术及应用教程》,机械工业出版社,等教材。
工业信息化也是物联网主要应用领域,需要了解,它本身也可以是一个细分专业或行业,也可作为研究生专业选题方向。
M2M技术概论
《M2M: The Wireless Revolution》,TSTC Publishing,等教材。
本书是美国“Texas State Techinical College”推出的M2M专业教材,在美国首次提出了M2M专业教学大纲,M2M也是物联网主要领域,需要了解,建议直接用英文授课。
物联网软件、标准、与中间件技术
《中间件技术原理与应用》,清华大学出版社,《物联网:技术、应用、标准与商业模式》,电子工业出版社,等教材。
物联网产业发展的关键在于应用,软件是灵魂,中间件是产业化的基石,需要学习和了解,尤其是对毕业后有志于走向工业和企业界的学生。
作为一名物联网工程师需要会:
物联网
物联网产业与技术导论:了解物联网之RFID、M2M、传感网、两化融合等技术与应用。
物联网工程概论:全面了解物联网基本知识、技术体系以及相关理论,对物联网关键技术进行学习,如RFID技术、传感器技术、无线传感器网络技术、M2M技术等。同时应对与物联网密切相关的云计算、大数据、智能技术、安全技术也进行深入学习。
C语言程序设计:物联网涉及底层编程,C语言为必修课,同时需要了解OSGi,OPC,Silverlight等技术标准。
Java程序设计:Java技术建议重点学习和掌握。物联网应用层,服务器端集成技术, 也建议了解和学习。
单片机原理及应用:物联网的底层单片机及其相关应用技术,包括控制、多媒体等。建议重点学习。
无线传感网络概论:学习各种无线RF通讯技术与标准,Zigbee, 蓝牙, WiFi等等。
移动通信技术:学习目前主流移动通信技术标准的工作原理、网络架构、网元功能、业务流程等,例如LTE,5G等等。
蜂窝物联网技术:学习当前主流蜂窝物联网技术的工作原理和应用,例如NB-IoT,LoRa,Sigfox等等。建议重点学习。
TCP/IP网络与协议:TCP/IP以及OSI网络分层协议标准是所有有线和无线网络协议的基础,Socket编程技术也是基础技能。
嵌入式系统技术:嵌入式系统是物联网感知层和通讯层的重要技术。
传感器技术概论:物联网专业学生需要对传感器技术与发展,尤其是在应用中如何选用有所了解,但不一定需要了解传感器的设计与生产,对相关的材料科学,生物技术等有深入了解。
RFID技术概论:RFID作为物联网的主要技术之一,需要了解。
工业信息化及现场总线技术:工业信息化也是物联网主要应用领域,需要了解。
物联网软件、标准、与中间件技术:物联网产业发展的关键在于应用,软件是灵魂,中间件是产业化的基石,需要学习和了解。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)