New IP在现有IPv4/IPv6能力的基础上,以灵活轻量级报头和可变长多语义地址为基础,通过二三层协议融合,对协议去冗和压缩,减少冗余字节,实现高能效比,高净吞吐,提升通信效率。打造终端之间高效的横向通信,支撑超级终端的体验,实现异构网络的端到端互联。
目前WiFi协议报文,三层报头和地址开销使得报文开销大,传输效率较低。
IPv4地址长度固定4字节,IPv6地址长度固定16字节。
IPv4网络层报头长度20~60字节,IPv6网络层报头长度40字节。
New IP支持可变长多语义地址(最短1字节),可变长定制化报头封装(最短5字节),通过精简报文头开销,提升数据传输效率。
New IP报头开销,相比IPv4节省25.9%,相比IPv6节省44.9%。
New IP载荷传输效率,相比IPv4提高最少1%,相比IPv6提高最少2.33%。
对比场景 | 报头开销 | 载荷传输效率(WiFi MTU=1500B,BT MTU=255B) |
---|---|---|
IPv4 for WiFi | 30+8+20=58 B | (1500-58)/1500=96.13% |
IPv6 for WiFi | 30+8+40=78 B | (1500-78)/1500=94.8% |
New IP for WiFi | 30+8+5=43 B | (1500-43)/1500=97.13% |
New IP内核协议栈架构图如下,用户态应用程序调用Socket API创建New IP socket,采用New IP极简帧头封装进行收发包。
New IP内核协议栈主要代码目录结构如下:
# 代码路径 /kernel/linux/common_modules/newip
├── examples # New IP 用户态样例代码
├── src # New IP 自研代码
│ ├── common # New IP 通用代码
│ └── linux-5.10 # New IP Linux-5.10内核代码
│ ├── net
│ │ └── newip # New IP 功能代码
│ └── drivers
│ └── net
│ └── bt # New IP 功能代码
├── third_party # New IP 三方引用+增量开发代码
│ └── linux-5.10 # New IP Linux-5.10内核代码
│ ├── include # New IP 头文件
│ │ ├── linux
│ │ ├── net
│ │ └── uapi
│ └── net
│ └── newip # New IP 功能代码
├── figures # ReadMe 内嵌图例
└── tools # New IP 配套工具
详见“New IP内核协议栈开发手册-配置指导”章节。
详见“New IP内核协议栈开发手册-可变报头格式”章节。
详见“New IP内核协议栈开发手册-可变长地址格式”章节。
详见“New IP内核协议栈开发手册-New IP相关接口”章节。
详见“New IP内核协议栈开发手册-New IP收发包代码示例”章节。
详见“New IP内核协议栈开发手册-selinux规则说明”章节。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。