ToToSun
码龄9年
  • 475,059
    被访问
  • 226
    原创
  • 5,528
    排名
  • 307
    粉丝
关注
提问 私信

个人简介:来了?小马扎已为你准备好了,坐。你好,我是Ethan,互联共享时代下一名普通的攻城狮。非常幸运能在这和你结识,在这你能获取关于网络仿真/嵌入式应用开发/驱动开发等相关文章,希望其中只言片语能对你相关工作和研究有所帮助。好了,欢迎关注我们的公众号:协议森林,风里雨里一起走。

  • 加入CSDN时间: 2013-10-19
博客简介:

平凡的世界

博客描述:
记录点滴,见证这个不平凡的时代!
查看详细资料
  • 4
    领奖
    总分 940 当月 27
个人成就
  • 获得231次点赞
  • 内容获得80次评论
  • 获得778次收藏
创作历程
  • 9篇
    2022年
  • 32篇
    2021年
  • 33篇
    2020年
  • 20篇
    2019年
  • 13篇
    2018年
  • 12篇
    2017年
  • 28篇
    2016年
  • 52篇
    2015年
  • 27篇
    2014年
成就勋章
TA的专栏
  • Linux内幕
    9篇
  • 设计模式
    1篇
  • QT开发
    1篇
  • 网络词典
    5篇
  • 笔记
  • c++程序
    100篇
  • c程序
    15篇
  • omnet++
    22篇
  • 日记
    2篇
  • linux应用
    44篇
  • web开发
    7篇
  • 协议森林
    36篇
  • 我的读书
    1篇
  • LUA脚本
    1篇
兴趣领域 设置
  • 编程语言
    c++c语言javascriptqtluabash
  • 开发工具
    eclipsegithubgitsvnvimvscodevisual studio codesublime text编辑器visual studio
  • 数据结构与算法
    数据结构链表动态规划排序算法哈希算法
  • 前端
    javascriptjsonhtml5jquerycssajax正则表达式chromecss3angular.jshtmlchrome devtools前端xsscsrf前端框架
  • 后端
    后端架构分布式
  • 网络
    httpudpsslhttpswiresharkwebsocket网络安全tcpdump网络协议tcp/ip
  • 嵌入式
    arm单片机stm32mcu物联网iot嵌入式实时数据库
  • 操作系统
    windowslinuxubuntucentos
  • 服务器
    linuxubuntucentos负载均衡缓存unix
  • 设计
    ui平面photoshop3d
  • 其他
    经验分享
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

10_3_1_多模GPS协议中文.pdf

发布资源 2022.04.14 ·
pdf

【Linux应用】Linux下磁盘分析工具

1.简述本节主要介绍基于Linux 操作系统上的磁盘I/O 性能分析工具。2.iostatiostat(1)汇总了单个磁盘的统计信息,为负载特征归纳、使用率和饱和度提供了指标。它可以由任何用户执行,通常是在命令行调查磁盘I/O 问题使用的第一个命令。统计信息的来源直接由内核维护,因此这个工具的开销基本可以忽略不计。3.blktraceblktrace(8)是一个Linux 上的块设备I/O 事件自定制跟踪工具,包括用来跟踪和缓冲数据的内核组件(后来被移到跟踪点),以及供用户态工具使用的控制
原创
发布博客 2022.03.09 ·
491 阅读 ·
0 点赞 ·
0 评论

【Linux应用】Linux下CPU基础理论

1.前言CPU 推动了所有软件的运行,因而通常是系统性能分析的首要目标。现代系统一般有多颗CPU,通过内核调度器共享给所有运行软件。当需求的CPU 资源超过了系统力所能及的范围时,进程里的线程(或者任务)将会排队,等待轮候自己运行的机会。等待给应用程序的运行带来严重延时,使得性能下降。2.模型图展示了一个CPU 架构的示例,单个处理器内共有四个核和八个硬件线程。硬件线程是一种支持在一个核上同时执行多个线程(包括Intel 的超线程技术)的CPU架构,每个线程是一个独立的CPU 实例。这种扩展的方法又
原创
发布博客 2022.02.23 ·
2029 阅读 ·
0 点赞 ·
1 评论

【Linux应用】Linux应用程序调优基本思想

性能调整离工作所执行的地方越近越好:最好在应用程序里。应用程序包括数据库、Web服务器、应用服务器、负载均衡器、文件服务器等等。后续会从资源消耗的角度来审视应用程序:CPU、内存、文件系统、磁盘和网络。
原创
发布博客 2022.02.23 ·
625 阅读 ·
0 点赞 ·
0 评论

【Linux应用】Linux性能调优理论与方法

1.简述性能是一门令人激动的,富于变化同时又充满挑战的学科。系统性能是对整个系统的研究,包括了所有的硬件组件和整个软件栈。2.延时对于某些环境,延时是唯一关注的性能焦点。而对于其他环境,它会是除了吞吐量以外,数一数二的分析要点。可以用数字来作为时间的比较方法,同时可以用时间的长短经验来判断延时的源头。正如你所见,CPU 周期的时间是很微小的。这段时间光只能走0.5 米。很可能你眼睛到这页书的距离,光大约走了1.7ns。这段时间里,现代的CPU 已经执行了5 个CPU 循环,处理了若干个指令。3
原创
发布博客 2022.01.25 ·
761 阅读 ·
0 点赞 ·
0 评论

【Linux应用】SAN网络ISCSI中target组建工具tgt架构及原理

1.SAN网络SAN,即存储区域网络(storage area network and SAN protocols),它是一种高速网络实现计算机与存储系统之间的数据传输。常见的分类是FC-SAN和IP-SAN两种。FC-SAN通过光纤通道协议转发scsi协议;IP-SAN通过TCP协议转发scsi协议,也就是IP 地址。存储设备是指一台或多台用以存储计算机数据的磁盘设备,通常指磁盘阵列,主要厂商EMC、日立等。iSCSI是一种基于TCP/IP 的协议,用来建立和管理IP存储设备、主机和客户机等之间的相互
原创
发布博客 2022.01.24 ·
583 阅读 ·
0 点赞 ·
0 评论

scsi-target-utils-master

发布资源 2022.01.23 ·
zip

【Linux应用】图解存储技术架构及原理

1.简述磁盘驱动器是讨论存储I/O路径的最终目的地,这里主要讨论两种磁盘驱动器:常规磁盘驱动器以及固态磁盘驱动器。常规磁盘驱动器即传统机械式磁盘驱动器,图是一个常规磁盘驱动器主要组件示意图。固态驱动器(Solid State Drive,SSD)是一种基于永久性内存,如闪存,或非永久性内存的计算机外部存储设备。2.NAS存储设备NAS是一种将存储设备和应用服务器分开的机制,它使用CIFS和NFS向客户端提供文件级服务。3.iSCSI存储设备iSCSI存储设备即以硬件方式或软件方式实现iSC
原创
发布博客 2022.01.20 ·
2870 阅读 ·
3 点赞 ·
2 评论

【WEB开发】前端UI开源框架

1.Mint UI官网:https://mint-ui.github.io/#!/zh-cnGithub: https://github.com/ElemeFE/mint-ui/由饿了么前端团队推出的 Mint UI 是一个基于 Vue.js 的移动端组件库,自 开源以来,根据社区和团队内部的反馈,修复了一些 bug 并新增了部分组件。2.WeUI官网地址:https://weui.io/Github: https://github.com/weui/weui.gitWeUI 是一套同微信原生
原创
发布博客 2022.01.07 ·
65 阅读 ·
0 点赞 ·
0 评论

【Linux应用】Linux进程间通信--消息队列

1.简述消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。 每个数据块都被认为含有一个类型,接收进程可以独立地接收含有不同类型的数据结构。我们可以通过发送消息来避免命名管道的同步和阻塞问题。但是消息队列与命名管道一样,每个数据块都有一个最大长度的限制。2.主要APImsgget()函数该函数用来创建和访问一个消息队列。它的原型为:int msgget(key_t, key, int msgflg);与其他的IPC机制一样,程序必须提供一个键来命名某个特定的消息队列。msgfl
原创
发布博客 2022.01.06 ·
47 阅读 ·
0 点赞 ·
0 评论

【Linux应用】中标麒麟操作系统

1.安装2.运行3.加入讨论
原创
发布博客 2022.01.05 ·
301 阅读 ·
0 点赞 ·
0 评论

【协议森林】Linux下用户态与内核态通信netlink机制说明与使用

1.简介Netlink套接字是用以实现用户进程与内核进程通信的一种特殊的进程间通信(IPC) ,也是网络应用程序与内核通信的最常用的接口。一般来说用户空间和内核空间的通信方式有三种:/proc、ioctl、Netlink。而前两种都是单向的,而Netlink可以实现双工通信。Netlink 相对于系统调用,ioctl 以及 /proc文件系统而言,具有以下优点:netlink使用简单,只需要在include/linux/netlink.h中增加一个新类型的 netlink 协议定义即可,如 #def
原创
发布博客 2021.11.26 ·
541 阅读 ·
0 点赞 ·
0 评论

【协议森林】Linux下socket编程KEEPALIVE使用与原理

1.简介在实际项目开发中,TCP连接关闭主要有两种情况:1、连接正常关闭,调用close() 、shutdown()连接优雅关闭,send与recv立马返回错误;2、连接的对端异常关闭,比如拔掉网线网络断掉,突然断电。面对上述问题,通常都要检测对端是否处于连接中,主要有两种方法:1、编写心跳包程序,简单的说就是自己的程序加入一条线程,定时向对端发送数据包,查看是否有ACK,根据ACK的返回情况来管理连接。此方法比较通用,一般使用业务层心跳处理,灵活可控,但改变了现有的协议;2、使用TCP的
原创
发布博客 2021.11.22 ·
1806 阅读 ·
1 点赞 ·
1 评论

【协议森林】基于DPDK的原生态协议栈DPDK-ANS

1.简述ANS(加速网络堆栈)是DPDK本地TCP/IP堆栈,也参考FreeBSD实现。ANS提供了一个与Intel DPDK一起使用的用户空间TCP/IP堆栈。2.框架ans:加速网络堆栈过程librte_ans:TCP/IP 堆栈静态库。ANS 使用 dpdk mbuf、ring、memzone、mempool、timer、spinlock。所以在 dpdk 和 ANS 之间零拷贝 mbuf。librte_anssock:应用程序的 ANS 套接字库,ANS 和应用程序之间的零复制。li
原创
发布博客 2021.11.17 ·
1990 阅读 ·
0 点赞 ·
0 评论

【协议森林】基于DPDK的用户态协议栈mTCP

1.背景TCP短连接变得越来越普遍,90%以上的TCP流都是小于32KB的,50%的小于4KB。高速处理TCP短连接对于面向用户的在线服务和后台系统都是一项重要的需求,但是Linux TCP的处理速度峰值是30万/s(来源mTCP: A Highly Scalable User-level TCP Stack for Multicore Systems),而packet I/O可以扩展到千万/s,所以当前的Linux TCP架构的处理速度是跟不上实际需求的。2.MTCP特点mTCP(User-Leve
原创
发布博客 2021.11.16 ·
1616 阅读 ·
0 点赞 ·
0 评论

meson-0.47.2.tar.gz

发布资源 2021.11.11 ·
gz

【协议森林】基于DPDK的F-Stack原理、基本使用及TCP通信

1.简述随着网卡性能的飞速发展,10GE 网卡已经大规模普及,25GE/40GE/100GE 网卡也在逐步推广,linux 内核在网络数据包处理上的瓶颈也越发明显,在传统的内核协议栈中,网卡通过硬件中断通知协议栈有新的数据包到达,内核的网卡驱动程序负责处理这个硬件中断,将数据包从网卡队列拷贝到内核开辟的缓冲区中(DMA),然后数据包经过一系列的协议处理流程,最后送到用户程序指定的缓冲区中。在这个过程中中断处理、内存拷贝、系统调用(锁、软中断、上下文切换)等严重影响了网络数据包的处理能力。操作系统的对应用程
原创
发布博客 2021.11.10 ·
1861 阅读 ·
0 点赞 ·
0 评论

【协议森林】NUMA基本知识

1.简述早期的计算机,内存控制器还没有整合进 CPU,所有的内存访问都需要经过北桥芯片来完成。如下图所示,CPU 通过前端总线(FSB,Front Side Bus)连接到北桥芯片,然后北桥芯片连接到内存——内存控制器集成在北桥芯片里面。这样的架构称为UMA(Uniform Memory Access),直译为“统一内存访问”,这样的架构对软件层面来说非常容易,总线模型保证所有的内存访问是一致的,即每个处理器核心共享相同的内存地址空间。但随着CPU核心数的增加,这样的架构难免遇到问题,比如对总线的带宽
原创
发布博客 2021.11.08 ·
120 阅读 ·
0 点赞 ·
0 评论

【协议森林】DPDK原理及使用(三)

1.简述利用DPDK来优化网络驱动,通过无锁硬件访问技术加速报文处理,例如Intel网卡的Flow Director技术将指定的TCP流导入到特定的硬件队列,针对每个Connection(连接)分配不同的TX/RX队列。其次,在Socket协议层,我们可以利用DPDK去除共享数据结构的内核锁,降低内核驱动的延时和上下文切换,加速数据处理,从而实现高效的用户态网络协议栈。当然,即使有了用户态网络栈的支持,从程序开发的角度来讲,我们还必须保持这个用户网络栈和内核态网络栈接口的兼容性。理想情况下,所有上层应
原创
发布博客 2021.10.28 ·
775 阅读 ·
0 点赞 ·
0 评论

sample_app_ug-19.08.pdf

发布资源 2021.10.27 ·
pdf
加载更多