当前位置: 首页 > news >正文

用积木思维搞定TCP/IP——LuatOS快速上手指南

TCP/IP协议虽重要,但学习曲线陡峭。LuatOS以“积木式”开发为核心理念,将网络功能模块化,让开发者通过直观组合快速掌握通信实现,告别繁琐编码。

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

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

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

感兴趣的朋友,关注近期的公开培训直播课。

一、TCP/IP网络模型简介

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

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

image

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

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

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

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

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

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

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协议是这个框架的具体实现。我们来看下面这张表格:

image

可以看到,每一层都有多个协议去实现,在所有的这些协议中,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扩展库有两项核心功能。

image

2.4 数据链路层

LuatOS协议支持:

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

以太网的IEEE 802.3系列;

Wi-Fi网络的IEEE 802.11系列;

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

2.5 物理层

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

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

http://www.hskmm.com/?act=detail&tid=31690

相关文章:

  • 2025 年江门办公室装修公司最新推荐排行榜:助力企业避开装修陷阱,精选优质服务品牌
  • WPF自动弹出软件键盘
  • 【碎片化学习】JMeter中常用的设置优化
  • win10系统以太网未识别网络 没有有效ip配置怎么办?
  • 怎么考PostgreSQL PG中级认证证书
  • 大学本科及研究生金融专业题库数据集:109157条高质量中文金融教育题库数据,涵盖银行证券保险投资理财等全领域,支持智能教育系统与机器学习算法训练的专业数据集
  • 【比赛记录】2025CSP-S模拟赛61
  • 基于Rokid CXR-S SDK的智能AR翻译助手技术拆解与实现指南
  • VRED 2025:专业三维可视化与虚拟现实领域的高效设计工具
  • 2025年办公与商业空间软膜天花系统推荐榜:办公室/酒店/展厅/商场/汽车4S店软膜天花厂家,专注光环境与装饰一体化解决方案
  • SZMS 251009 订题赛 题解
  • Debian 12安装docker的正确方法
  • 【流量网关】k8s与apisix统一的流量入口方案(内网版)
  • 基于STM32F4系列MCU和CS5530 24位SDADC的称重传感器系统实现
  • 2025 年环保板材厂家最新推荐榜:硬包板 / 竹木纤维板等全品类 企业深度解析
  • kong 网关下集成 Consul服务注册与发现
  • cad圆滑连接两段线:blend
  • 在 gitea 服务器端查询 lfs 文件占用情况
  • HDR图像生成算法详解
  • Introduction: Why Optimization?
  • 基于MATLAB的二自由度机械臂PID控制仿真
  • Spring AOP原理
  • Ventoy引导Kali live USB持久化
  • 知识库管理工具深度测评:ONES、Confluence 等10款工具全面对比
  • 好的测试数据管理,到底要怎么做?
  • 【面试题】人工智能工程师高频面试题汇总:循环神经网络篇(题目+答案)
  • 做了个手机上的“视频播放器”,获益匪浅
  • CEF关闭流程
  • AI一周资讯 251005-251015
  • 2025 年中空百叶源头厂家最新推荐排行榜:聚焦国内优质供货商,助力客户精准选购可靠产品光能/光伏/电动/光动中空百叶厂家推荐