0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

零基础也能玩转TCP/IP?LuatOS上手全攻略

青山老竹农 来源:合宙LuatOS 作者:合宙LuatOS 2025-10-15 17:28 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

TCP/IP看似复杂,但借助LuatOS的简化开发模式,即使没有网络编程经验,也能在短时间内轻松实现通信功能。本指南将带你一步步用LuatOS快速入门,真正实现“轻松搞定”。


提到网络应用,就绕不开TCP/IP——它不仅是互联网的通信基石,更像是一套精妙绝伦的“世界语”,让形态各异、遍布全球的设备能够跨越硬件和软件的差异,使用统一的规则进行对话。

相比传统开发方式,LuatOS通过高效易用的API:将复杂的协议细节封装在简洁的接口之下,开发者无需从零开始构建整个协议栈,而是可以像搭积木一样快速上手,只需专注于应用逻辑本身。

你可以在几分钟内让一块4G-Cat.1模块真正连接到云端服务器,并立刻观察到数据交互的全过程。每一个理论概念,都能通过具体的代码和硬件行为得到最直观的验证和理解。

一、TCP/IP网络模型简介

有网络应用开发经验的人,应该都听说过OSI七层模型、TCP/IP协议四层模型和TCP/IP协议五层模型。

这三种网络协议模型的说明,参考下表:

wKgZPGjvY_yAQmBVAAGxYyaTXFE604.png

看了这张表之后,我们应该有以下几点认识:

都采用了分层的思想,将复杂的通信过程分解为更小、更易于管理的部分;

每一层都为其上层提供服务,并使用其下层提供的服务;

这三种网络模型,只是分层的颗粒度不一样;实际上,这三种网络模型的本质内容都是一样的。

既然本质内容是一样的,为什么还要存在三种网络模型呢?

我们简单地看一下这三种网络模型的历史:

TCP/IP

20世纪70年代(1970s)

美国国防部某个计划局,提出了建立一种通信网络的需求;美国的几个工程师大佬开发了一套通信协议,TCP和IP协议是其中的核心;当时并没有抽象出四层或者五层模型。

OSI和TCP/IP

20世纪80年代(1980s)

网络技术蓬勃发展,但各家厂商(如IBM、DEC)都有自己的私有网络协议标准,导致不同厂商的设备之间无法通信。

网络世界,需要一个“通用语言”。

国际标准化组织ISO于1984年,提出了开放系统互联OSI参考模型;

与此同时,TCP/IP的支持者也抽象出了一套自己的“术语”和“框架”来与OSI模型竞争。他们从现有的TCP/IP协议族中反向归纳、提炼出了一个更简单的分层模型。

TCP/IP

20世纪90年代(1990s)

OSI和TCP/IP经过一段时间协议竞争,最终TCP/IP胜出,得到广泛应用,主要有以下几点原因:

TCP/IP来自实践,简单高效,易于实现;而OSI模型过于复杂和理想化,标准制定缓慢;

TCP/IP规范(RFC文档)对所有人免费开放,鼓励了广泛的应用和创新;

美国政府规定其所有联邦机构使用的网络必须支持TCP/IP;

万维网(World WideWeb)在1991年出现,它运行在TCP/IP协议之上,Web的爆炸式普及使得TCP/IP协议成为了所有上网设备的必然选择。

最终,TCP/IP模型在实践中得到广泛应用。


至于TCP/IP四层模型和TCP/IP五层模型,二者的差别不大,主要体现在对最底层的划分不同:

四层模型隐藏了底层细节,将网络接入视为一个黑盒,更关注对软件层面的设计,不关心具体的硬件;

五层模型明确包含了物理硬件层。

四层模型和五层模型本质上是同一个东西的两种不同表述方式,所以我们接下来不纠结四层还是五层模型,而是统称为TCP/IP模型。


二、LuatOS对TCP/IP协议栈的支持

在了解TCP/IP网络模型之后,接下来我们看一下TCP/IP协议这个概念。

TCP/IP网络模型是理论上的框架和蓝图,而TCP/IP协议是这个框架的具体实现。我们来看下面这张表格:

wKgZO2jvZNiASlP9AAJaTmeW-wY315.png

可以看到,每一层都有多个协议去实现,在所有的这些协议中,TCP和IP两种协议是其中的核心协议,所以用TCP/IP协议代指网络模型中的所有协议。

所以说,TCP/IP协议并不是两个单一的协议,而是一个协议家族,包含TCP/IP网络模型中的所有协议;所有协议协同工作,从软件上完成了互联网上的数据传输任务。

TCP/IP协议的核心工作原理,功能分层、数据封装/解封装等已整理详细介绍,感兴趣的朋友可查看文档:

https://docs.openluat.com/luatos_lesson/002_luatos_socket/

那么,LuatOS对TCP/IP协议栈的支持情况是怎样的,提供了哪些编程接口给LuatOS项目应用脚本来使用呢?


2.1 应用层

1)LuatOS协议支持:

HTTP,MQTT,FTP,WebSocket,DNS,NTP,DHCP,SSL/TLS(从OSI七层模型来看,和表示层最接近,所以此处把SSL/TLS放到TCP/IP模型中应用层)。

2)LuatOS编程接口:

socket核心库/libnet扩展库

http核心库/httpplus扩展库/httpsrv核心库

mqtt核心库

ftp核心库

websocket核心库

httpdns扩展库

dhcpsrv扩展库

udpsrv扩展库

用层提供的这些编程接口和LuatOS项目应用开发关系最为密切,这些核心库和扩展库的API文档可参考下方链接。

LuatOS最新API手册:https://docs.openluat.com/osapi/


2.2 传输层

1)LuatOS协议支持:TCP,UDP;

2)LuatOS编程接口:socket核心库/libnet扩展库。


2.3 应用层

1)LuatOS协议支持:IP,ICMP;

2)LuatOS编程接口:

socket核心库

exnetif扩展库IP_READY、IP_LOSE

在这里重点说一下exnetif扩展库,exnetif扩展库有两项核心功能。

wKgZPGjvZWGAHpVtAACH3kW1Ugk560.png

2.4 数据链路层

LuatOS协议支持:

以太网Wi-Fi、4G等网络各自的数据链路层协议;

以太网的IEEE 802.3系列;

Wi-Fi网络的IEEE 802.11系列;

4G网络的PDCP、RLC、MAC等协议。

2.5 物理层

光纤、双绞线、无线电波等传输介质。

今天的内容就分享到这里了!

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • IP
    IP
    +关注

    关注

    5

    文章

    1850

    浏览量

    155006
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1418

    浏览量

    83075
  • LuatOS
    +关注

    关注

    0

    文章

    134

    浏览量

    2581
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    深入解析DLP650NE数字微镜器件:设计与应用全攻略

    深入解析DLP650NE数字微镜器件:设计与应用全攻略 在当今的显示技术领域,数字微镜器件(DMD)凭借其独特的优势,成为了众多显示应用的核心组件。TI的DLP650NE作为一款高性能的DMD,为全
    的头像 发表于 12-15 09:15 397次阅读

    GPS设计全攻略

    电子发烧友网站提供《GPS设计全攻略.pdf》资料免费下载
    发表于 12-01 17:10 0次下载

    医疗电子EMC整改:原理到实战的系统化全攻略策略

    深圳南柯电子|医疗电子EMC整改:原理到实战的系统化全攻略策略
    的头像 发表于 11-27 09:45 252次阅读

    工业 / 民用电表排线全攻略:安全合规 + 高效布线,90% 电工都在用的标准化方案

    工业 / 民用电表排线全攻略:安全合规 + 高效布线,90% 电工都在用的标准化方案 电表布线错一步,安全隐患埋十年!电工师傅、装修负责人、物业工程人员注意了—— 不合格的电表排线不仅会导致跳闸
    的头像 发表于 11-06 21:17 537次阅读
    工业 / 民用电表排线<b class='flag-5'>全攻略</b>:安全合规 + 高效布线,90% 电工都在用的标准化方案

    快速掌握TCP/IPLuatOS新手入门指南

    想快速上手TCP/IP通信却不知从何开始?LuatOS为开发者提供了简洁高效的开发路径。通过本指南的实操步骤,你将发现,实现网络连接其实比想象中更简单。 提到网络应用,就绕不开
    的头像 发表于 10-15 17:27 476次阅读
    快速掌握<b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b>?<b class='flag-5'>LuatOS</b>新手入门指南

    RFID手持读写器怎么玩转温湿度标签?从入门到实战全攻略

    关于用rfid手持读写器读取温湿度标签信息!本文详细讲解设备选购、操作步骤、数据分析及避坑指南,适合物流、农业、冷链等场景。零基能快速上手,解锁RFID技术高效应用!
    的头像 发表于 09-11 14:42 368次阅读
    RFID手持读写器怎么<b class='flag-5'>玩转</b>温湿度标签?从入门到实战<b class='flag-5'>全攻略</b>

    零基础学习LuatOS编程:快速上手开发实战教程!

    无论你是刚接触物联网编程的新手,还是希望拓展技能的技术爱好者,本教程将为零基础的读者提供一条清晰的LuatOS学习路径。从安装开发工具到编写第一个程序,我们将通过实例讲解核心概念,助你快速实现从理论
    的头像 发表于 06-13 17:27 481次阅读
    <b class='flag-5'>零基</b>础学习<b class='flag-5'>LuatOS</b>编程:快速<b class='flag-5'>上手</b>开发实战教程!

    MUSE Pi能畅玩鸿蒙?轻松上手全攻略

    进迭时空发布了搭载OpenHarmory5.0操作系统的MUSEPaper平板电脑,受到了广大开发者的关注。鸿蒙开发者们发来问候:能不能在MUSEPi上跑OpenHarmory呢?当然支持,现在拿起你的MUSEPi,和小编一起轻松搞定吧
    的头像 发表于 06-06 16:57 669次阅读
    MUSE Pi<b class='flag-5'>也</b>能畅玩鸿蒙?轻松<b class='flag-5'>上手</b><b class='flag-5'>全攻略</b>!

    快速入门——LuatOS:sys库多任务管理实战攻略

    在嵌入式开发中,多任务管理是提升系统效率的关键。本教程专为快速入门设计,聚焦LuatOS的sys库,通过实战案例带你快速掌握多任务创建、调度与同步技巧。无论你是零基础新手还是希望快速提升开发效率
    的头像 发表于 05-29 14:36 621次阅读
    快速入门——<b class='flag-5'>LuatOS</b>:sys库多任务管理实战<b class='flag-5'>攻略</b>!

    UC3854 功率因数校正设计全攻略:从理论到实战

    【限时下载】UC3854 功率因数校正(PFC)设计全攻略:从理论到实战,工程师必备技术手册 *附件:《UC3854 功率因数校正设计全攻略:从理论到实战》.pdf 为什么工程师必须掌握这份资料
    的头像 发表于 04-09 15:35 1154次阅读
    UC3854 功率因数校正设计<b class='flag-5'>全攻略</b>:从理论到实战

    零基能玩转!源码开放:Air8101快速实现以太网功能

    以太网(Ethernet)外设驱动涉及硬件与软件的深度交互,其核心在于通过特定接口连接主处理器与以太网控制器,实现数据的发送、接收以及数据链路层处理等功能,部分控制器还集成了TCP/IP协议栈以简化
    的头像 发表于 04-01 14:18 456次阅读
    <b class='flag-5'>零基</b>础<b class='flag-5'>也</b><b class='flag-5'>能玩转</b>!源码开放:Air8101快速实现以太网功能

    无感无刷直流电机驱动全攻略

    。 [*附件:无感无刷直流电机驱动全攻略.pdf](https://file1.elecfans.com/web3/M00/0C/79/wKgZO2fT04iAHISwAExmk6leMWw14
    发表于 03-14 14:58

    解锁 30KPA43A参数、特性与应用全攻略

    解锁 30KPA43A参数、特性与应用全攻略
    的头像 发表于 02-18 14:41 700次阅读
    解锁 30KPA43A参数、特性与应用<b class='flag-5'>全攻略</b>

    避坑指南:云服务器数据库购买方法全攻略

    云服务器数据库购买方法包含:先明确业务需求与数据库类型,再挑选信誉好、技术支持强的云服务提供商,接着根据需求配置数据库实例及选择付费方式。购买后,通过云管理平台访问管理数据库,并定期监控性能以优化运行。以下是UU云小编整理的一份详细的购买方法全攻略,帮助您轻松上手
    的头像 发表于 01-15 10:05 808次阅读

    [迅为RK3568开发板]非科班能玩转Android应用,体验QT跨平台能力

    [迅为RK3568开发板]非科班能玩转Android应用,体验QT跨平台能力
    的头像 发表于 12-18 16:41 1387次阅读
    [迅为RK3568开发板]非科班<b class='flag-5'>也</b><b class='flag-5'>能玩转</b>Android应用,体验QT跨平台能力