
小熊派学习(七)-网络应用开发
一、UDP客户端
1.UDP协议相关API介绍
socket.h接口简介:
这个socket.h中包含声明UDP协议相关接口函数。
接口名 功能描述
socket 创建套接字
sendto 将数据由指定的socket发送到远端主机
recvfrom 从远端主机接收UDP数据
close 关闭套接字
2.UDP客户端创建流程介绍
3.实现UDP客户端
4.测试UDP客户端
使用 Sockettool 创建UDP服务端用于测试
工具下载地址:https://pan.baidu.com/s/13YlqQVzEa5ygcQeTSGQ_JA 提取码:1234
二、TCP服务端
1.TCP协议相关API介绍
socket.h接口简介:
这个socket.h中包含声明TCP协议相关接口函数。
接口名 功能描述
socket 创建套接字
bind 为套接字关联了一个相应的地址与端口号
listen 将套接字设置为监听模式
accept 接受套接字上新的连接
recv 接收数据
send 发送数据
close 关闭套接字
2.TCP服务端创建流程介绍
3.实现TCP服务端
4.测试TCP服务的
三、TCP客户端
1.TCP协议相关API介绍
socket.h接口简介:
这个socket.h中包含声明TCP协议相关接口函数。
接口名 功能描述
socket 创建套接字
connect 连接到指定的主机
send 发送数据
recv 接收数据
close 关闭套接字
2.TCP客户端创建流程介绍
3.实现TCP客户端
四、UDP服务端
1.UDP协议相关API介绍
socket.h接口简介:
这个socket.h中包含声明UDP协议相关接口函数。
接口名 功能描述
socket 创建套接字
bind 将ip和端口绑定到嵌套字
sendto 将数据由指定的socket发送对方主机
recvfrom 从指定主机接收UDP数据
close 关闭套接字
2.UDP服务端创建流程介绍
3.实现UDP服务端
五、MQTT客户端
1.MQTT介绍
Paho是IBM在2011年建立的Eclipse开源项目,该项目包含以C、Java、Python、Javascript等语言编写的可用客户端。
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。
嵌入式C语言客户端开源地址:https://github.com/eclipse/paho.mqtt.embedded-c
2.Paho MQTT 文件目录介绍
⚫ MQTTClient:封装MQTTPacket生成的高级别C++客户端程序。
⚫ MQTTClient-C:封装MQTTPacket生成的高级别C客户端程序
○ samples目录提供FreeRTOS和linux两个例程,分别支持FreeRTOS和
Linux系统。
○ src目录提供MQTTClient的代码实现能力,以及用于移植到对应平台的
网络驱动
⚫ MQTTPacket:提供MQTT数据包的序列化与反序列化,以及部分
辅助函数。
3.如何使用Paho MQTT
在MQTTClient.h中包含声明Paho MQTT相关接口函数。
接口名 功能描述
MQTTClientInit 创建一个客户端对象
MQTTConnect 发送MQTT连接数据包
MQTTConnectWithResults 发送MQTT连接数据包并等待返回
MQTTPublish 发送MQTT发布数据包
MQTTSetMessageHandler 发送每个topic消息处理函数
MQTTSubscribe 发送MQTT订阅数据包
MQTTSubscribeWithResults 发送MQTT订阅数据包并等待返回结果
MQTTUnsubscribe 发送MQTT取消数据包
MQTTDisconnect 发送MQTT断开连接数据包并关闭连接
4.实现MQTT客户端
5.实现MQTT客户端
MQTT消息代理软件mosquitto下载地址: https://mosquitto.org/download/
Eclipse桌面客户端程序下载地址: https://repo.eclipse.org/content/repositories/pahoreleases/org/eclipse/paho/org.eclipse.paho.ui.app/1.1.1
