究竟哪款适合你

随着物联网的越来越火,嵌入式工程师需要更多的网络知识,其中TCP/IP协议栈是我们经常要用到的,在公众号里曾给大家介绍过开源的Uip和LwIP协议栈,并在freeRTOS下移植过,其中这两款协议栈的比较也介绍过,从下表就可以看出。

对这两种协议栈的学习和移植可以参考之前公众号文章

一张表看懂uIP和lwIP的区别

移植uIP开源协议栈需注意的几点

快速学会web Server的裁剪移植

其实freeRTOS本身也有TCP/IP协议栈也是开源的,基于伯克利套接字,只是这个是后来集成进的,所以freeRTOS源码包里很多的例程都是基于uip和LwIP的,今天我们就来看看freeRTOS官方的TCP/IP协议栈

源码包可以从freeRTOS官网下载,下载后在freeRTOS-Plus文件夹下可以看到源码

可以看到,包含DHCP,DNS,UDP,TCP,ARP,等,还有好几个例程,可以学习。

源码目录结构,在重复一次,学任何源码,了解清楚源码目录结构都是很重要的,freeRTOSTCP/IP协议栈源码目录结构如下。

支持的协议如下

特性

源文件大小

可以看到这个比Uip的源码还是大不少,但比Uip功能强大多了。这些协议栈,有兴趣有时间的可以仔细研究下源码,如果只是应用就知道怎么移植使用就可以。究竟在实际的项目中选用哪种协议栈,根据你的需求定,在一些简单低端的需要网络功能的场合uIP就可以满足,在需要更复杂的场合可以考虑另两种。

我们会在K64上移植,并有移植视频,欢迎大家支持。

原文发布于微信公众号 - 嵌入式程序猿(InterruptISR)

原文发表时间:2017-09-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大魏分享(微信公众号:david-share)

API的计量与限速 | 将一个Web API纳入API管理 |API Management学习第二篇

在本文中,我们将针对:API Management学习第一篇中编写的Restful API,进行纳管。

1265
来自专栏Java架构沉思录

基于Netty的百万级推送服务设计要点

最近很多从事移动互联网和物联网开发的同学给我发邮件或者微博私信我,咨询推送服务相关的问题。问题五花八门,在帮助大家答疑解惑的过程中,我也对问题进行了总结,大概可...

2842
来自专栏北京马哥教育

Ext3 和 ext4 文件系统在线调整大小内幕

磁盘布局 为了更好的理解在线调整大小工作机制,我们首先需要理解 ext3 和 ext4 文件系统的磁盘布局,对于该功能的实现来说,这两个文件系统在磁盘上的结构是...

3656
来自专栏Python小屋

Python多线程编程基础1:为什么要使用线程

多线程技术的引入并不仅仅是为了提高处理速度和硬件资源利用率,更重要的是可以提高系统的可扩展性(采用多线程技术编写的代码移植到多处理器平台上不需要改写就能立刻适应...

2947
来自专栏IT大咖说

运维老鸟阐述:沪江从DNS到httpdns的演进

摘要 HttpDNS服务是一款可以有效解决域名劫持的方案,并且已在各家大厂广泛应用,现已成为一款相当成熟的产品,本次分享主要围绕沪江由DNS到HTTPDNS演进...

4838
来自专栏coding

django2.0入门教程第一节启动开发模式下的服务器

1602
来自专栏莫韵的专栏

基于ELK的nginx-qps监控解决方案

nginx-log中所有我们需要的信息,都是有的 。

1.4K9
来自专栏java思维导图

高并发的核心技术-幂等的实现方案

我们实际系统中有很多操作,是不管做多少次,都应该产生一样的效果或返回一样的结果。 例如: 1. 前端重复提交选中的数据,应该后台只产生对应这个数据的一个反...

2394
来自专栏用户2442861的专栏

高性能网络编程5--IO复用与并发编程

对于服务器的并发处理能力,我们需要的是:每一毫秒服务器都能及时处理这一毫秒内收到的数百个不同TCP连接上的报文,与此同时,可能服务器上还有数以十万计的最近几秒...

991
来自专栏北京马哥教育

Web APP编程模型和IO策略

现代大型高性能网站诸如淘宝,京东,微博,FB,知乎等等,网站架构涉及很多知识。像业务分层,软件分割模块化,分布式部署,集群服务器,负载均衡等技术可以帮助架构师将...

3617

扫码关注云+社区

领取腾讯云代金券