自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 用户态协议栈设计实现

创建一个ustack目录及ustack.c文件写入main()函数,复制Makefile文件到ustack目录下编译。make出现问题执行下面两行。

2024-12-11 02:02:40 539

原创 DPDK安装设置

支持多队列网卡(eth0)和用作ssh的网卡(eth1)不能都是桥接模式,否则请求eth0对应IP时,触发的是eth1的中断。warning报错ifconfig eth0 down 重新输入49。49:输入对应eth0 pci地址0000:03:00.0。添加多个配置器 相对增加到对应处理器数量 比如四个。5.ifconfig -a查看网卡 一般都未启动。找对对应网卡修改e1000为vmxnet3。桥接网卡用eth0用作多队列网卡。nat网卡eth1用作ssh连接。2.关闭虚拟机打开对应vmx文件。

2024-12-07 21:26:58 717

原创 协程调度器实现与性能测试

hook自定义dlsym创建一个read write代替系统库函数recv send ,调用poll函数判断是否可读 可读调用read 不可读将fd加到epoll继续监视是否就绪 执行swapcontext切换回mian_ctx 其他协程准备就绪再切换到对应ctx。epoll判断io是否就绪 就绪切换回ctx。io操作准备就绪 则恢复resume。io操作没用就绪 则切换yeild。

2024-12-02 23:52:02 222

原创 协程设计原理与汇编实现

异步:发送请求后可先执行其他任务 有结果后再通知继续执行、异步不利于代码理解 协程就是为了同步编程,异步性能。同步:发送请求必须等待结果到达才能继续执行。异步和同步的执行流程 通过增加线程池。同步与异步是两者之间的关系。

2024-11-28 20:56:20 229

原创 UDP的可靠传输协议QUIC

发送端发送了1.2.3.4.5几个包,收到远端的ACK:1.3.4.5 当收到ACK3时,KCP知道2被跳过一次,收到ACK4时,知道2被跳过了2次,此时可以认为2号丢失,不用等超时,直接重传2号,大大改善了丢包时的传输速度。ARQ模型响应有两种,UNA(此编号前所有包已收到,如TCP)和ACK(该编号包已收到),光用UNA将导致全部重传,光用ACK则丢失成本太高,以往协议都是二选一,二KCP协议中,除去单独的ACK包外,所有包都是UNA信息。KCP的ACK是否延迟发送可以调节。

2024-11-27 02:15:19 1112

原创 Posix API 与网络协议栈

POSIX API是一个IEEE标准系列,定义了操作系统应该为应用程序提供的接口。POSIX API是一组遵循POSIX标准的应用程序接口(API),它们使得应用程序能够在不同的UNIX和类UNIX操作系统上运行,而不需要修改。这些API定义了操作系统服务和系统调用,包括文件操作、进程控制、信号处理、终端控制等。

2024-11-22 18:37:42 861

原创 网络IO与IO多路复用 select/poll/epoll

不管任何语言 底层实现都是socketLinux命令:ifconfig可查看网络接口netstat -anop | grep 2000 (查看端口2000,22ssh,mysql3306)使用netassist连接端口2000结论:1.端口被绑定后,不能再次被绑定2.执行listen 可以在netstat查看io状态3.进入listen可以被连接 并且产生新的连接状态4.io与tcp连接。

2024-11-19 22:30:12 1002

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除