登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
模力方舟
AI 队友
登录
注册
代码拉取完成,页面将自动刷新
开源项目
>
程序开发
>
网络开发包
&&
捐赠
捐赠前请先登录
取消
前往登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
Watch
不关注
关注所有动态
仅关注版本发行动态
关注但不提醒动态
18
Star
168
Fork
57
onps协议栈
/
Open-NPStack
代码
Issues
0
Pull Requests
0
Wiki
统计
流水线
服务
质量分析
Jenkins for Gitee
腾讯云托管
腾讯云 Serverless
悬镜安全
阿里云 SAE
Codeblitz
SBOM
我知道了,不再自动展开
发行版
最新版
v1.1.0.230726
8e07e5d
2023-08-06 14:04
对比
onps栈v1.1.0版
Neo-T
## **更新内容** 1. 增加了ipv6支持,支持ipv6地址状态及无状态自动配置; 2. tcp实现延迟应答(DACK,Delayed Acknowledgment)及选择性确认(SACK, Selective Acknowledgment)机制,优化tcp栈传输性能; 3. 提供网络层人机交互接口——虚拟网络终端(NVT,Net virtual Terminal),交互命令覆盖网络参数配置、常用网络调试工具等,提供扩展NVT命令接口,允许用户添加自定义命令; 4. 提供telnet服务端口,允许用户通过telnet登录NVT,对终端设备进行远程操控; 5. 提供telnet客户端,允许用户登录NVT后再通过telnet客户端登录其它telnet主机(如windows、linux等),实现 telnet 网络穿透; NVT和Telnet服务让协议栈具象化,其实际运行界面如下图所示:  通过NVT登录其它telnet主机时的结果图如下:  ## **开发文档** 源码根目录下提供了相关开发手册: [《onps栈移植手册》](https://gitee.com/Neo-T/open-npstack/blob/v1.1.0.230726/onps%E6%A0%88%E7%A7%BB%E6%A4%8D%E6%89%8B%E5%86%8C.pdf) [《onps栈API接口手册》](https://gitee.com/Neo-T/open-npstack/blob/v1.1.0.230726/onps%E6%A0%88API%E6%8E%A5%E5%8F%A3%E6%89%8B%E5%86%8C.pdf) [《onps栈用户使用手册》](https://gitee.com/Neo-T/open-npstack/blob/v1.1.0.230726/onps%E6%A0%88%E7%94%A8%E6%88%B7%E4%BD%BF%E7%94%A8%E6%89%8B%E5%86%8C.pdf) [《onps网络协议栈移植及使用说明》](https://gitee.com/Neo-T/open-npstack/blob/v1.1.0.230726/onps%E7%BD%91%E7%BB%9C%E5%8D%8F%E8%AE%AE%E6%A0%88%E7%A7%BB%E6%A4%8D%E5%8F%8A%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E.pdf) ## **移植样例** 协议栈提供了rt-thread和ucosii下的移植样例工程。rt-thread样例工程的获取地址如下: [https://gitee.com/Neo-T/onps-rtthread/releases/tag/v1.1.0](https://gitee.com/Neo-T/onps-rtthread/releases/tag/v1.1.0) ucos-ii的获取地址如下: [https://gitee.com/Neo-T/onps-ucosii/releases/tag/v1.1.0](https://gitee.com/Neo-T/onps-ucosii/releases/tag/v1.1.0)
最后提交信息为:
Added a documentation called 'ONPS Stack Porting and User Manual' f...
v1.0.0.221017
6221825
2022-10-17 18:16
对比
onps栈v1.0.0版
Neo-T
onps是一个开源且完全自主开发的国产网络协议栈,适用于资源受限的单片机系统,支持ethernet/ppp/tcp/ip协议族,同时提供sntp、dns、ping等网络工具,支持以太网环境下dhcp动态ip地址申请,也支持动态及静态路由表。协议栈还封装实现了一个伯克利套接字(Berkeley sockets)层,提供如下通用接口函数: - socket:创建一个socket,目前仅支持udp和tcp两种类型 - close:关闭一个socket,释放当前占用的协议栈资源 - connect:与目标tcp服务器建立连接(阻塞型)或绑定一个固定的udp服务器地址 - connect_nb:与目标tcp服务器建立连接(非阻塞型)、 - is_tcp_connected:获取当前tcp链路的连接状态 - send:数据发送函数,tcp链路下为阻塞型 - send_nb:数据发送函数,非阻塞型 - is_tcp_send_ok:数据是否已成功送达tcp链路的对端(收到tcp ack报文) - sendto:udp数据发送函数,发送数据到指定目标地址 - recv:数据接收函数,udp/tcp链路通用 - recvfrom:数据接收函数,用于udp链路,接收数据的同时函数会返回数据源的地址信息 - socket_set_rcv_timeout:设定recv()函数接收等待的时长,单位:秒 - bind:绑定一个固定端口、地址 - listen:tcp服务器进入监听状态 - accept:接受一个到达的tcp连接请求 - tcpsrv_recv_poll:tcp服务器专用函数,等待任意一个或多个tcp客户端数据到达信号 - socket_get_last_error:获取socket最近一次发生的错误信息 - socket_get_last_error_code:获取socket最近一次发生的错误编码 为了方便用户使用、简化用户编码,协议栈重新声明并定义了socket接口函数,简化了传统BSD socket编程需要的一些繁琐操作,将一些不必要的操作细节改为底层实现,比如select/poll模型、阻塞及非阻塞读写操作等。不过不要担心,这些接口函数的调用方式及功能没有改变,你完全可以根据以往编程经验及习惯使用这些函数。 协议栈不支持前后台模式,其架构设计建立在时下流行的rtos(RT-Thread、ucosii/iii等)之上。协议栈移植的主要工作也就自然是针对不同rtos编写相关os适配层功能函数了。协议栈提供了rt-thread和ucosii下的移植样例工程。rt-thread样例工程的获取地址如下: [https://gitee.com/Neo-T/onps-rtthread/releases/tag/v1.0.0](https://gitee.com/Neo-T/onps-rtthread/releases/tag/v1.0.0) ucos-ii的获取地址如下: [https://gitee.com/Neo-T/onps-ucosii/releases/tag/v1.0.0](https://gitee.com/Neo-T/onps-ucosii/releases/tag/v1.0.0) 详细的协议栈移植及使用相关的内容请下载附件“[onps网络协议栈移植及使用说明v1.0.7z](https://gitee.com/Neo-T/open-npstack/releases/download/v1.0.0.221017/onps%E7%BD%91%E7%BB%9C%E5%8D%8F%E8%AE%AE%E6%A0%88%E7%A7%BB%E6%A4%8D%E5%8F%8A%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8Ev1.0.7z)”。
最后提交信息为:
Version adjusted
下载
请输入验证码,防止盗链导致资源被占用
取消
下载
C/C++
1
https://gitee.com/Neo-T/open-npstack.git
git@gitee.com:Neo-T/open-npstack.git
Neo-T
open-npstack
Open-NPStack
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册