网络加速器核心概念与开发准备

📚 共计 30 章节
01
网络加速器概述
什么是网络加速器 · 核心价值与市场现状 · 工作原理简介(代理与隧道)
加速器入门
02
网络基础回顾(上)
OSI七层模型与TCP/IP四层模型 · IP地址与端口 · DNS解析过程
网络模型DNS
03
网络基础回顾(下)
TCP三次握手与四次挥手 · UDP协议特点 · HTTP/HTTPS协议详解
TCPUDPHTTP
04
代理技术原理
正向代理与反向代理 · 透明代理与匿名代理 · HTTP代理与SOCKS5代理
代理SOCKS5
05
VPN技术原理
VPN的定义与分类 · IPSec VPN与SSL VPN · WireGuard协议简介
VPNIPSecWireGuard
06
隧道技术
什么是隧道 · GRE隧道 · VXLAN隧道 · 隧道封装与解封装过程
隧道GREVXLAN
07
加密基础
对称加密(AES) · 非对称加密(RSA/ECC) · 哈希函数(SHA-256)
AESRSASHA-256
08
网络加速核心算法
多路复用 · TCP加速(BBR) · 数据压缩算法(LZ4/Zstd)
BBR多路复用压缩
09
协议混淆与伪装
TLS伪装 · WebSocket隧道 · HTTP/2与QUIC协议
TLSWebSocketQUIC
10
节点探测与延迟优化
ICMP Ping · TCPing · MTR路由追踪 · 延迟与丢包的关系
PingMTR延迟
11
负载均衡基础
轮询 · 最少连接 · 一致性哈希 · 健康检查机制
负载均衡哈希
12
路由策略
策略路由 · BGP基础 · 智能路由(根据目标IP选择出口)
BGP策略路由
13
DNS加速
DNS缓存 · DNS over HTTPS(DoH) · DNS over TLS(DoT) · 智能DNS
DoHDoT智能DNS
14
CDN原理
CDN架构 · 边缘节点 · 回源策略 · 动态加速与静态加速
CDN边缘节点
15
传输层优化
TCP窗口缩放 · 选择性确认(SACK) · 快速重传与快速恢复
TCPSACK窗口缩放
16
应用层优化
HTTP长连接 · 连接池 · 请求合并 · 预加载与预解析
HTTP连接池预加载
17
网络加速器架构设计
客户端-服务器模型 · 控制面与数据面分离 · 插件化设计
架构插件化
18
开发环境搭建
Go语言环境配置 · C/C++编译环境 · 交叉编译基础
GoC/C++交叉编译
19
核心库选型
libuv(事件循环) · OpenSSL(加密) · c-ares(DNS异步解析)
libuvOpenSSLc-ares
20
协议解析与封包
数据包捕获(libpcap) · 原始套接字编程 · TUN/TAP虚拟网卡
libpcapTUN/TAP
21
多线程与并发模型
生产者-消费者模型 · 线程池 · 协程(Goroutine)基础
并发Goroutine线程池
22
内存管理
内存池设计 · 零拷贝技术 · 缓冲区管理(Ring Buffer)
内存池零拷贝Ring Buffer
23
配置文件与命令行
JSON/YAML解析 · 命令行参数解析(cobra/cli) · 日志系统
YAMLcobra日志
24
测试与调试
单元测试 · 压力测试(wrk/iperf) · 抓包分析(Wireshark/tcpdump)
wrkiperfWireshark
25
性能基准测试
吞吐量测试 · 延迟测试 · 并发连接数测试 · 资源占用分析
基准测试吞吐量
26
安全与认证
用户认证(Token/密码) · 流量加密 · 防中间人攻击 · 证书管理
认证加密证书
27
跨平台编译
Windows · macOS · Linux · Android · iOS 的编译策略
跨平台编译
28
插件系统设计
插件接口定义 · 动态加载(dlopen/LoadLibrary) · 热更新机制
插件dlopen热更新
29
协议扩展
自定义协议设计 · 协议版本兼容 · 向后兼容策略
协议设计兼容性
30
项目实战规划
MVP功能定义 · 开发路线图 · 版本管理(Git Flow) · 文档与发布
MVPGit Flow路线图