【顶】软件协议栈PK硬件协议栈,你更看好谁?

Home / 博客 / 【顶】软件协议栈PK硬件协议栈,你更看好谁?

背景介绍

说明: C:\Users\Lily\Desktop\图片1.jpg

在持续增长的电子设备联网需求下,无线传感器网络、智能家居等新兴应用市场急需找到更加稳定可靠的以太网解决方案,来实现以太网功能。

软件协议栈PK硬件协议栈

以往都是在用软件来做协议栈,但是面向链接的TCP/IP协议是非常复杂的协议,需要非常强的可靠性,用软件来实现确实要花很大功夫,很多电子学专业的学生和工程师也很难摸透那些协议。那想实现TCP/IP通信,但是又不会写软件协议栈要怎么办呢?由此硬件TCP/IP协议芯片的出现自然就成为了我们更加理想的选择,也就是说网络数据处理全部由硬件逻辑电路实现。

很多人没有接触过硬件协议栈,不知道用硬件怎么去实现,也不了解有哪些公司在专注于这项技术。

在这里我为大家介绍下只要硬件就能够实现协议栈功能的WIZnet全硬件TCP/IP核心技术及相对于软件协议栈而言,它独有的技术性优势。

WIZnet全硬件TCP/IP协议栈

WIZnet核心技术就是全硬件TCP/IP协议栈。硬件协议栈独立于MCU运作,能够负载所有TCP/IP协议栈的处理过程,并与嵌入式操作系统相兼容,更适合于无操作系统装置。

详细可查看【百度百科:全硬件TCP/IP协议栈】作为参考。

说明: C:\Users\Lily\Desktop\1.jpg

说到这里,有必要简单讲下协议栈。协议栈到底指什么,它的结构如何?

协议栈是指网络中各层协议的总和,其形象的反映了一个网络中文件传输的过程:由上层协议到底层协议,再由底层协议到上层协议。现在一般也用5层的TCP/IP网络协议泛指最广泛的是英特网协议栈,由上到下的协议分别是:

l  应用层(HTTP,FTP,TFTP,TELNET,DNS,EMAIL等)

l  运输层(TCP,UDP)

l  网络层(IP)

l  链路层(WI-FI,以太网,令牌环等)

l  物理层(MAC)

传统MCU实现Ethernet功能,需要外设物理层以太网控制芯片,片内还需要再撰写TCP/IP协议栈的上层协议命令。而WIZnet将MAC和PYH集成到一块芯片里并加入了各种标准的网络协议。也就是说,全硬件TCP/IP协议栈芯片采用了“TCP/IP Offload Platform”技术,囊括了TCP/IP协议栈全部的四层结构,因此WIZnet以太网芯片能够独立于MCU运作,信息的进栈/出栈,封包/解包等网络数据处理全部在全硬件TCP/IP以太网芯片中进行。

如图所示:

说明: C:\Users\Lily\Desktop\3.jpg

封包和解包的过程是怎样的呢?

网络传输的过程就是封包和解包的过程。数据要在通讯系统中必须要先经过某些处理,才能在网络上依照某种通讯协议来传送,这种过程就好像将包裹打包一样,所以叫做封包。解包就是压包的反过程,即将压包文件还原成原来的文件。简单讲,封包就是一层一层的加帧头,解包就是一层一层的将其剥落。

WIZnet核心技术的关键在于它就是完全用逻辑电路即硬件而不是操作系统来实行这种网络封包解包的过程的。

以太网解决方案大对决

简单了解了WIZnet核心技术之后让我们来更加形象的对比一下传统以太网解决方案与WIZnet提出的方案有何大不同。

传统的以太网解决方案有诸多弊端,可列出以下几项。

1. 需要OS 或者 软件栈。

2. 如果现有的系统是使用低端单片机,那么整个系统结构,包括主单片机都要更换,才能实现网络功能。而事实证明,使用低端嵌入式系统的市场仍在持续增长。

3. 研发OS ,更换单片机和増加内存都会导致成本增加。

4. 当使用公开源代码时, 其稳定性和技术支持是必须考虑的。

与传统的以太网解决方案相比,你会发现WIZnet核心技术提出的以太网解决方案会有更大的效率和可靠性。

1.       正因为WIZnet硬件化TCP/IP协议栈芯片独立于MCU运作,卸载掉了MCU对于以太网庞大数据处理的负载,从而给用户留出了更多可占用的资源,即使8位低端单片机也能达到数Mbps的数据吞吐率。而不占用MCU资源,保证了MCU保证高速稳定的通信速率。

2. 软件协议栈想要拓展以太网功能可能会面临侵入病毒、甚至网络瘫痪的隐患,而WIZnet硬件协议栈方面,由于TCP/IP在独立于CPU运行,因此网络攻击不会对MCU中的主程序产生影响,增加了MCU工作的安全性。

3. 硬件协议栈优化了MCU的网络功能,尤其对于不能支持OS的8 bit & 16 bit MCU的优化提升无疑是革命性的。

4. 工程师不需深入了解TCP/IP协议,无需专业的网络知识,如同控制外部存储器一样简单。程序的烧制和移植比较方便,就简单几句程序化初始就可以了,这样可以大大的缩短产品开发时间。

5. 由于网络部分相对独立于主系统,无需移植繁琐的TCP/IP协议栈,便于产品更新,并且便于为已有的产品扩展网络功能。

WIZnet基于开源硬件平台(Arduino)

说到这里,对于全硬件TCP/IP协议栈芯片,诸位电子发烧友们是否有些心动,忍不住想要跃跃一试呢?也有人会问,硬件协议栈有木有向软件一样的平台社区供大家参考相关的硬件设计呢?

很多电子爱好者肯定对开源硬件Arduino早已有所耳闻。

简单讲,开源硬件(Open Source Hardware),是指与自由及开放源代码软件相同方式设计的计算机和电子硬件。开源硬件考虑的是软件以外的领域,用来反映自由释放详细信息的硬件设计,如电路图、材料清单和电路板布局数据。

而WIZnet就是基于开源硬件平台使开发者大大节省了产品的开发时间和调试时间,它的开放性,使用户有了更加自由、开放的论坛去分享经验和想法,形成更多的参考模板,使产品更加的多元化、丰富化了。

WIZnet 产品应用

那WIZnet产品都会应用在哪些领域呢?

在运用全硬件TCP/IP协议栈的WIZnet 产品应用方面,有超过3000多个客户应用WIZnet产品于无数的应用,包括下面几大应用范围。

1.       Smart Energy

2.       Digital Consumer

3.       Security

4.       Industrial

说明: C:\Users\Lily\Desktop\7.png

说明: C:\Users\Lily\Desktop\8.png