上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 22 下一页
摘要: 1、去年逆向x音15.5.0版本时,可以直接用fiddler抓包。后来貌似升级到17版本时fiddler就抓不到包了,看雪有大佬破解了x音防抓包的功能,原理并不复杂:boringssl源码中有个SSL_CTX_set_custom_verify函数,定义如下: void SSL_CTX_set_cu 阅读全文
posted @ 2022-03-25 16:08 第七子007 阅读(4991) 评论(1) 推荐(1)
摘要: dpdk是intel主导开发的网络编程框架, 有这么多的优点,都是怎么实现的了? 1、UIO原理:dpdk绕过了操作系统内核,直接接管网卡,用户程序可以直接在3环读写网卡的数据,这就涉及到两个关键技术点了: 地址映射:3环的程序是怎么定位到网卡数据存放在哪的了? 拦截硬件中断:传统数据处理流程是网卡 阅读全文
posted @ 2022-03-24 11:21 第七子007 阅读(3392) 评论(1) 推荐(1)
摘要: 1、操作系统、计算机网络诞生已经几十年了,部分功能不再能满足现在的业务需求。如果对操作系统做更改,成本非常高,所以部分问题是在应用层想办法解决的,比如前面介绍的协程、quic等,都是在应用层重新开发的框架,简单回顾如下: 协程:server多线程通信时,如果每连接一个客户端就要生成一个线程去处理,对 阅读全文
posted @ 2022-03-21 21:52 第七子007 阅读(2153) 评论(0) 推荐(1)
摘要: quic协议最早是google提出来的,所以狗家的源码肯定是最“正宗”的!google把quic协议的源码放在了chromium里面,所以要看quic的源码原则上需要下载chromium源码!但是这份源码体积很大,并且还需要FQ,所以多年前就有好心人把quic源码剥离出来单独放github了,在文章 阅读全文
posted @ 2022-03-16 21:47 第七子007 阅读(2673) 评论(0) 推荐(1)
摘要: 1、网络通信时,为了确保数据不丢包,早在几十年前就发明了tcp协议!然而此一时非彼一时,随着技术进步和业务需求增多,tcp也暴露了部分比较明显的缺陷,比如: 建立连接的3次握手延迟大; TLS需要至少需要2个RTT,延迟也大 协议缺陷可能导致syn反射类的DDOS攻击 tcp协议紧耦合到了操作系统, 阅读全文
posted @ 2022-03-13 21:34 第七子007 阅读(2494) 评论(0) 推荐(1)
摘要: 1、为了在进程间通信,linux推出了信号量、共享内存、消息队列、管道、信号等IPC的方式;为了提高IPC效率,android又进一步优化共享内存,推处了binder机制(本质就是把不同进程的虚拟内存映射到同一块物理内存)。进程间通信的问题解决了,线程间也需要通信,android是怎么解决的了?回顾 阅读全文
posted @ 2022-03-09 21:26 第七子007 阅读(284) 评论(0) 推荐(0)
摘要: 1、协程只是一种思路,并且没有操作系统层面的参与,所以全靠3环的应用开发人员自己实现。市面上有各种协程框架,这里以微信的libco库为例,看看协程到底是怎么落地实现的!libco 是微信后台开发和使用的协程库,号称可以调度千万级协程;从使用上来说,libco 不仅提供了一套类 pthread 的协程 阅读全文
posted @ 2022-03-06 21:34 第七子007 阅读(867) 评论(0) 推荐(0)
摘要: 1、协程原理阐述 (1)为了提升数据处理的效率,用户的应用程序通常采用多线程的形式,典型的就是生产者-消费者模型:生产者往共享内存块写数据,消费者从共享内存块读数据后处理!这种经典的模型具体落地实现时有两点需要特别注意: 多线程之间的互斥/同步:一般情况下共享内存块同时只能有1个线程写,写线程之间必 阅读全文
posted @ 2022-03-03 12:25 第七子007 阅读(779) 评论(0) 推荐(0)
摘要: 1、linux提供了好几种IPC的机制:共享内存、管道、消息队列、信号量等,所有IPC机制的核心或本质就是在内核开辟一块空间,通信双方都从这块空间读写数据,整个流程图示如下: 这种通信方式天生的缺陷看出来了么? A进程把数据拷贝到内核,B进程从内核再拷贝走,同一份数据可能在内存存放了3份,同时还复制 阅读全文
posted @ 2022-02-25 11:08 第七子007 阅读(1520) 评论(0) 推荐(0)
摘要: 众所周知,linux的理念是万物皆文件,自然少不了对文件的各种操作,常见的诸如open、read、write等,都是大家耳熟能详的操作。除了这些常规操作外,还有一个不常规的操作:mmap,其在file_operations结构体中的定义如下: 这个函数的作用是什么了? 1、对于读写文件,传统经典的a 阅读全文
posted @ 2022-02-23 16:47 第七子007 阅读(7740) 评论(2) 推荐(2)
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 22 下一页