Socket编程之socket函数 如下图所示,是Socket通信的原理图,左侧为服务端,右侧是客户端,可以看到服务端的步骤要多一些,客户端将在后面讲解。本节开始将从左侧服务端第一步开始逐步讲解,本步骤目标为创建一个套接字,其返回值为后面的步骤使用。下面我们开始正式进入Socket通信的第一步, TCP协议服务端及代码实现 2022年02月10日 169 点赞 0 评论 81274 浏览
Socket编程之WSAStartup函数 上一节我们介绍了客户端与服务端相互通信的模型图,每一步都有具体的函数实现,但需要明白的是,使用这些函数之前,在Windows系统下,需要先调用WSAStartup函数进行必要的初始化,才可以顺利的进行,而使用WSAStartup函数又需要事先包含对应的头文件winsock2.h及静态库ws2_32.l TCP协议服务端及代码实现 2022年04月14日 254 点赞 0 评论 110138 浏览
Socket编程之WSACleanup函数 一旦程序结束需要停止Socket库的使用,需要调用WSACleanup函数,这一步和最开始的WSAStartup是对应的。函数功能用于终止对So:cket字库的使用。库链接:#pragmacomment(lib,"ws2_32.lib")表示链接Ws2_32.lib这个库。 TCP协议服务端及代码实现 2022年02月24日 94 点赞 0 评论 101407 浏览
什么是字节序?大小端还有网络序和主机序? 1.字节序字节序,又称端序或尾序,指的是多字节数据在内存中的存放顺序。学过C语言后,我们知道一个int型变量a是占用4个字节,假设它的起始地址也就是&a是0x10处,那么变量a的四个字节将会被存储在0x10、0x11、0x12和0x13这四个字节位置上。 TCP协议客户端及代码实现 2022年03月15日 77 点赞 0 评论 101175 浏览
面向连接和面向无连接套接字 之前我们提到了流式套接字和数据报式套接字,在介绍中,我们说到了流式套接字是面向连接的套接字,数据报套接字是面向无连接的套接字。那么面向连接的和面向无连接的套接字有什么区别呢?举个例子简单地说明面向连接就像有一条管道连接着发送端和接收端,数据包都通过这条管道来传输。 Socket概述 2022年05月26日 183 点赞 0 评论 98546 浏览
Socket编程之bind函数 在完成第一步创建套接字,分配了一个Socket描述符后,服务端的第二步就是使用在这个描述符用Bind绑定Bind()系统调用的主要用处:1.服务器向系统注册它的众所周知的地址。面向连接和无连接的服务器在接受客户的请求之前都必须做这一步。2.客户可为自己注册一个特定的地址, TCP协议服务端及代码实现 2022年02月12日 228 点赞 0 评论 132557 浏览
TCP的客户端代码流程简述 这一章将为大家讲解Socket通信中客户端的实现过程,还是先上图,请大家了解客户端的步骤可以看到,相比服务端,客户端的步骤简单的很多。事实上这种情况比较多,比如一个服务端会有多个客户端连接。通过图片我们可以看到TCP客务端调用的函数依次是socket()、connect()、recv()、send() TCP协议客户端及代码实现 2022年02月23日 140 点赞 0 评论 64187 浏览
Socket服务端完整参考代码 前面讲解了Socket通信中服务端的每一步功能作用及实现,而重点是多个步骤在一起时,上下文函数之间的信息传递需要我们理解,如SOCKADDR_IN的结构体、各个SOCKET描述符等参数,以及在此基础之上改进得到的希望的实际效果(如需要不停的接受消息、发送消息)下面我们将所有步骤串联在一起, TCP协议服务端及代码实现 2022年02月13日 139 点赞 0 评论 104822 浏览
Socket编程中的相关概念 在开始之前,先给大家做一些知识点的普及,理解后面一些可能用到的知识点概念1、流(Stream)计算机中的流其实是一种信息的转换。于某一对象,通常把对象接收外界的信息输入称为输入流,把对象向外输出信息为输出流,合称为输入/输出流(I/OStream)。 Socket概述 2022年04月02日 206 点赞 0 评论 57708 浏览
Socket编程之listen函数 接着,在完成bind函数之后,服务端接下来就可以用listen函数监听了,用于监听是否有客户端连接它,以便存储多个用户的连接建立请求,listen函数具体如下:函数功能:让socket进入被动监听状态。什么是被动监听呢,是指当没有客户端请求时, TCP协议服务端及代码实现 2022年01月21日 72 点赞 0 评论 104667 浏览