
网络
文章平均质量分 81
GPIOB_PIN7
这个作者很懒,什么都没留下…
展开
-
【嵌入式Qt开发入门】Qt如何网络编程——建立TCP通信服务端(附项目代码)
TCP 简介TCP 协议(Transmission Control Protocol)全称是传输控制协议是一种面向连接的、可靠的、 基于字节流的传输层通信协议。TCP 通信必须先建立 TCP 连接,通信端分为客户端和服务端。服务端通过监听某个端口来监听是否有客户端连接到来,如果有连接到来,则建立新的 socket 连接;客户端通过 ip 和 port 连接服务端,当成功建立连接之后,就可进行数据的收发了。原创 2023-07-13 15:13:56 · 2566 阅读 · 1 评论 -
【嵌入式Qt开发入门】Qt如何网络编程——获取本机的网络信息
Qt 网络模块为我们提供了编写TCP/IP客户端和服务器的类。它提供了较低级别的类,例如代表低级网络概念的 QTcpSocket,QTcpServer 和 QUdpSocket,以及诸如 QNetworkRequest, QNetworkReply 和 QNetworkAccessManager 之类的高级类来执行使用通用协议的网络操作。它 还提供了诸如QNetworkConfiguration,QNetworkConfigurationManager和QNetworkSession等类, 实现承载管理。原创 2023-07-12 15:03:46 · 1350 阅读 · 0 评论 -
WIN下网络编程——TCP/IP-Socket编程项目实战,构建Qt上位机——工业机器人服务器和客户端连接(附项目代码)
本文记录了笔者参与的一个工业机器人双机协作项目(细节不表),项目中考虑数据传输的稳定性、安全性等,使用TCP/IP通讯,上位机软件使用C++/Qt开发(基于WINDOWS环境下),传输指令数据控制下位机工业机器人,同时反馈下位机信号用于整体装配节拍规划。本文收录于网络编程专栏,因此本文仅记录网络通讯部分代码并解析,本文也是对本专栏所学知识的总结和验证,由于该项目基于WINDOWS环境,与Linux环境下Socket编程会有所不同。话不多说,先贴上代码。主要实现通讯功能的是和两个成员函数,其作用分别是。原创 2023-06-07 17:20:06 · 985 阅读 · 0 评论 -
开发板和虚拟机socket报错“connect error: No route to host”
学习socket编程时,将服务器程序运行在开发板上,将客户端应用程序运行在 虚拟机Ubuntu16.04 系统,服务器可以正常开启,但客户端连接时, 报错“connect error: No route to host”用路由器的lan口将电脑与开发板网口连在一起,ping通后,再将IP地址改正确。(有线连接直接使用桥接模式并修改IP在同一网段)。但实测不能解决我的问题,遂继续排查。使用iptables关闭server端的防火墙。server端的防火墙设置了过滤规则 ”原创 2023-05-12 19:53:49 · 2230 阅读 · 0 评论 -
Linux下网络编程(3)——socket编程实战,如何构建一个服务器和客户端连接
到此,socket编程的内容就告一段落,内容讲得非常浅,目的其实并不是让大家学会网络编程,旨在以引导大家入门为主,让大家对 socket 网络编程有一个基本的了解和认识。望诸君常学常新、学思践悟。原创 2023-05-18 10:00:00 · 1845 阅读 · 0 评论 -
Linux下网络编程(2)——socket的函数们
服务器调用 listen()函数之后,就会进入到监听状态,等待客户端的连接请求,使用 accept()函数获取客户端的连接请求并建立连接。为了能够正常让客户端能正常连接到服务器,服务器必须遵循以下处理流程:①、调用 socket()函数打开套接字;②、调用 bind()函数将套接字与一个端口号以及 IP 地址进行绑定;③、调用 listen()函数让服务器进程进入监听状态,监听客户端的连接请求;④、调用 accept()函数处理到来的连接请求。原创 2023-05-17 10:00:00 · 633 阅读 · 0 评论 -
Linux下网络编程(1)——初识socket
套接字(socket)是 Linux 下的一种进程间通信机制(socket IPC),在前面的内容中已经给大家提到过, 使用 socket IPC 可以使得在不同主机上的应用程序之间进行通信(网络通信),当然也可以是同一台主机上的不同应用程序。socket IPC 通常使用客户端服务器这种模式完成通信,多个客户端可以同时连接到服务器中,与服务器之间完成数据交互。内核向应用层提供了 socket 接口,对于应用程序开发人员来说,我们只需要调用 socket 接口开发自己的应用程序即可!原创 2023-05-16 10:00:00 · 852 阅读 · 0 评论 -
网络基础知识(4)——建立与关闭连接
客户端收到确认后,检查 ack 是否为 J+1,ACK 是否为 1,如果正确则将标志位 ACK 置为 1,ack=K+1, 并将该数据包发送给服务器端,服务器端检查 ack 是否为 K+1,ACK 是否为 1,如果正确则连接建立成功, 客户端和服务器端进入 ESTABLISHED 状态,完成三次握手,随后客户端与服务器端之间可以开始传输数据了。经过三次的互相确认,大家就会认为对方对听的到自己说话,才开始接下来的沟通交流,否则,如果不进行确认,那么你在说话的时候,对方不一定能听到你的声音。原创 2023-05-15 10:00:00 · 1186 阅读 · 0 评论 -
网络基础知识(3)——初识TCP/IP
首先给大家说明的是,TCP/IP 协议它其实是一个协议族,包含了众多的协议,譬如应用层协议 HTTP、 FTP、MQTT…以及传输层协议 TCP、UDP 等这些都属于 TCP/IP 协议。所以,我们一般说 TCP/IP 协议,它不是指某一个具体的网络协议,而是一个协议族。网络通信当中涉及到的网络协议实在太多了,对于应用开发来说,可能使用更多的是应用层协议,譬如 HTTP、FTP、SMTP 等。原创 2023-05-14 16:30:00 · 657 阅读 · 0 评论 -
网络基础知识(2)——简单说说IP地址
以上就给大家介绍了这 5 类 IP 地址,其中在 A、B、C 三类地址中,各保留了一个区域作为私有地址:A 类地址:10.0.0.0~10.255.255.255B 类地址:172.16.0.0~172.31.255.255C 类地址:192.168.0.0~192.168.255.255A 类地址的第一组数字为 1~126。B 类地址的第一组数字为 128~191。C 类地址的第一组数字为 192~223。原创 2023-05-13 10:00:00 · 787 阅读 · 0 评论 -
网络基础知识(1)——从OSI七层模型和TCP/IP说起
网络通信本质上是一种进程间通信,是位于网络中不同主机上的进程之间的通信,属于 IPC 的一种, 通常称为 socket IPC,如图中所示。所以网络通信是为了解决在网络环境中,不同主机上的应用程序之间的通信问题。硬件层:网卡设备,收发网络数据驱动层:网卡驱动(Linux 内核网卡驱动代码)应用层:上层应用程序(调用 socket 接口或更高级别接口实现网络相关应用程序)在硬件上,两台主机都提供了网卡设备,也就满足了进行网络通信最基本的要求,网卡设备是实现网络数据收发的硬件基础。原创 2023-05-12 10:00:00 · 796 阅读 · 0 评论