本文作者:ptiyny

linux协议栈学习 linux 协议栈 流程

ptiyny 08-01 20
linux协议栈学习 linux 协议栈 流程摘要: 大家好,今天小编关注到一个比较有意思的话题,就是关于linux协议栈学习的问题,于是小编就整理了4个相关介绍linux协议栈学习的解答,让我们一起看看吧。dpdk框架详解?嵌入式应...

大家好,今天小编关注到一个比较意思的话题,就是关于linux协议学习问题,于是小编就整理了4个相关介绍Linux协议栈学习的解答,让我们一起看看吧。

linux协议栈学习 linux 协议栈 流程
图片来源网络,侵删)
  1. dpdk框架详解?
  2. 嵌入式应届生需要掌握什么?
  3. 在Linux网络协议栈中,IP选项功能是一个可选加载模块,类似于make install么?
  4. 嵌入式一年半,现两份offer,一Linux驱动,单片机;二通信协议栈,网络安全产品。怎样选择好些?

dpdk框架详解?

dpdk (数据平面转发工具),为 Intel 处理器架构用户空间高效的数据包处理提供了库函数驱动支持,数据包的控制层和数据层分开,dpdk绕过linux内核协议栈将数据包的接受处理放到应用层。

DPDK拦截中断,不触发后续中断流程,并绕过协议栈,通过UIO技术网卡收到的报文拷贝到应用层处理,报文不再经过内核协议栈,减少了中断。

嵌入式应届生需要掌握什么

1、熟练掌握C、C++语言

2、精通数据结构计算机算法、实时操作系统

linux协议栈学习 linux 协议栈 流程
(图片来源网络,侵删)

3、熟悉模拟电路/数字电路,对MCU/DSP/ARM等有一定的了解

4、能看懂硬件原理图。

5、具备STM32平台软件开发经验。

6、熟悉TCP/IP协议栈及常用网络通讯协议,熟悉网络编程

linux协议栈学习 linux 协议栈 流程
(图片来源网络,侵删)

7、熟练掌握嵌入式软件设计调试方法

8、熟悉并有过ucos、Free-RTOS、Linux驱动及应用开发经验。

9、熟悉并有过Socket、SQLite、XML、JSON应用开发经验。

10、熟悉I2C、SPI、UART、485、MOD-BUS等通讯原理及开发。

在Linux网络协议栈中,IP选项功能是一个可选加载模块,类似于make install么?

不是。tcp/ip协议栈的实现是一个整体的功能,不能通过模块来卸载代码的实现上,是模块化的,比较清晰。tcp里的拥塞算法是模块化的,可以通过modprobe rmmod来加载卸载

嵌入式一年半,现两份offer,一Linux驱动,单片机;二通信协议栈,网络安全产品。怎样选择好些?

linux驱动,主要底层代码,各种外设接口调试,需要会用linux shell指令,能够对linux内核比较熟悉,需要掌握linux底层,以及各类外设接口协议。也需要一定的硬件理论和知识。涉及领域多,产品类型丰富,就业机会和就业岗位多,工资较高。

从技术层面讲,无疑选二。国内大部分公司的驱动开发主要是移植和调整参数,软件开发的技能要求不高,后续发展有限。做协议栈对开发能力要求更高,当然也更能锻炼人,将来从事其它开发也比较容易转。

推荐后者,嵌入式这个东西太通用了,而且可替代性太强,长江后浪推前浪,前浪死在沙滩上。嵌入式本身其实是一个工具而已,不是一个专业领域。而网络安全则是一个专业领域,可以深入研究,往纵发展。从职业发展通道上来说,一定是往纵深发展更有前途,千万不可左顾右盼,最终很难有专业领域的建树。


首先恭喜题主哈,这两份工作都不错,如果要考虑以后前景的话,我个人比较推荐后者。

因为我第一份工作就是在华为做嵌入式,后来转向到了网络通信的部门,对二者都有一定的了解。所以先点评一下两个工作:

Linux嵌入式与协议栈

linux驱动:关于嵌入式,这是一个很成熟的技术了,就业路子广,要求比较低,待遇也处于中上[_a***_],但想要成为给一个优秀的嵌入式工程不光要把C语言学的十分扎实,还要熟悉掌握操作系统原理,Shell等脚本语言,对于底层协议和硬件也要有一定的理解。linux驱动工程师的年薪多在10-15w之间;

协议栈:网络安全从过去到现在一直都是个非常热门的岗位,要求同样也不低,例如深信服,启明星辰等在招聘网络安全相关岗的时候,很多都是博士起步。协议栈这东西很复杂,而且很抽象,大量的数学运算也让人头秃,想要搞懂已有的都不是件容易事,如果是自研协议栈就更难了。而且这个行业英语要求非常高,最起码得有PEST4的水平才能看懂各式各样的外文文档。当然了这个行业的待遇也很高,通信协议栈工程师的年薪多在20w—40w。

从就业和短期方向来看,嵌入式好一些;从个人长期发展来看,通信协议栈更适合

如果题主是目前急需一份工作,嵌入式会是个更好的选择。我接触过不少人都是先做三五年的技术,积累经验然后自己开家小公司,过的都很不错;如果不存在生活上的压力,并想钻研深层次的一些东西,可以选择通信协议栈。别的不说,光是在英语上的提升就不可估量。一个专家级别的网络通信协议栈工程师的待遇相当之高,有兴趣的朋友可以搜一下。


(都看到最后了,麻烦点个赞或者关注吧,谢谢~)

到此,以上就是小编对于linux协议栈学习的问题就介绍到这了,希望介绍关于linux协议栈学习的4点解答对大家有用。

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享