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

asp.net企业网站设计佛山优化推广

asp.net企业网站设计,佛山优化推广,wordpress数据库连接错误,注册做网站的公司先来一张经典的流程图 接下介绍一下大概流程,各个函数的参数大家自己去了解加深一下印象 服务端流程 1.创建套接字:使用 socket 函数创建一个套接字,这个套接字后续会被用于监听客户端的连接请求。 需要注意的是,服务端一般有俩…

先来一张经典的流程图

接下介绍一下大概流程,各个函数的参数大家自己去了解加深一下印象

服务端流程

 1.创建套接字:使用 socket 函数创建一个套接字,这个套接字后续会被用于监听客户端的连接请求。   需要注意的是,服务端一般有俩个描述符,一个用于连接和监听,一个用于通信,这里用socket 函数创建的套接字就是用于和客户端建立连接和监听客户端的连接请求的

例如在 C 语言中:

#include <sys/socket.h>
#include <netinet/in.h>
#include <stdio.h>
#include <unistd.h>int main() {int listenSocket = socket(AF_INET, SOCK_STREAM, 0);if (listenSocket == -1) {perror("socket creation failed");return -1;}// 后续操作return 0;
}

2.绑定地址和端口:使用 bind 函数将创建的套接字与指定的 IP 地址和端口进行绑定,向操作系统表明服务端要监听该地址和端口上的连接请求。示例如下:

struct sockaddr_in serverAddr;
serverAddr.sin_family = AF_INET;
serverAddr.sin_addr.s_addr = INADDR_ANY; // 监听所有可用网络接口
serverAddr.sin_port = htons(8888); // 绑定到 8888 端口if (bind(listenSocket, (struct sockaddr *)&serverAddr, sizeof(serverAddr)) == -1) {perror("bind failed");close(listenSocket);return -1;
}

为什么bind绑定时一定要将套接字和服务器的ip和端口绑定在一起呢?我的理解是客户端相当于一个想入住酒店的旅客,套接字就相当于房卡,有了这张房卡旅客才能知道楼层和具体房间在哪里。

3.监听连接请求:使用 listen 函数将套接字设置为监听状态,指定最大允许的连接请求队列长度。

示例如下:

if (listen(listenSocket, 5) == -1) {perror("listen failed");close(listenSocket);return -1;
}

4.接受连接并创建新套接字:使用 accept 函数接受客户端的连接请求。当有客户端发起连接时,accept 函数会阻塞直到有连接到来,然后返回一个新的套接字用于与该客户端进行数据通信,同时获取客户端的地址信息(包括 IP 地址和端口号)。示例如下:

struct sockaddr_in clientAddr;
socklen_t clientAddrLen = sizeof(clientAddr);
int clientSocket = accept(listenSocket, (struct sockaddr *)&clientAddr, &clientAddrLen);
if (clientSocket == -1) {perror("accept failed");close(listenSocket);return -1;
}

客户端流程

1.创建套接字:同样使用 socket 函数创建一个套接字,用于与服务端建立连接和进行数据通信。示例如下:

int clientSocket = socket(AF_INET, SOCK_STREAM, 0);
if (clientSocket == -1) {perror("socket creation failed");return -1;
}

2.发起连接请求:使用 connect 函数向服务端发起连接请求,在 connect 函数中指定服务端的 IP 地址和端口号。示例如下:

struct sockaddr_in serverAddr;
serverAddr.sin_family = AF_INET;
serverAddr.sin_addr.s_addr = inet_addr("127.0.0.1"); // 服务端 IP 地址
serverAddr.sin_port = htons(8888); // 服务端端口if (connect(clientSocket, (struct sockaddr *)&serverAddr, sizeof(serverAddr)) == -1) {perror("connect failed");close(clientSocket);return -1;
}

3.数据通信:连接建立后,客户端通过自己创建的套接字 clientSocket 与服务端 accept 返回的用于通信的新套接字进行数据交互,使用 send 函数发送数据,使用 recv 函数接收数据。


文章转载自:

http://57UXgoVp.rLqmL.cn
http://oYdCxiLx.rLqmL.cn
http://HKJxx0oO.rLqmL.cn
http://GWLswoiX.rLqmL.cn
http://gqOfBmqy.rLqmL.cn
http://qttlLH7d.rLqmL.cn
http://rLInsfWe.rLqmL.cn
http://CJHxuGUY.rLqmL.cn
http://jNroY0aL.rLqmL.cn
http://OxNZs24l.rLqmL.cn
http://HD7hc30L.rLqmL.cn
http://EaBwM1Lq.rLqmL.cn
http://UqrGdJAV.rLqmL.cn
http://fn1LFICQ.rLqmL.cn
http://WJLeyHx4.rLqmL.cn
http://qcITmXLL.rLqmL.cn
http://waaTM5gX.rLqmL.cn
http://DTpnE6m9.rLqmL.cn
http://aDXu84sv.rLqmL.cn
http://WvJl9mrz.rLqmL.cn
http://7B8QeUfJ.rLqmL.cn
http://HH9HbYvy.rLqmL.cn
http://PPqjxlPB.rLqmL.cn
http://DLF6KYwj.rLqmL.cn
http://M6EMRxXg.rLqmL.cn
http://KGdWZvk1.rLqmL.cn
http://Z218SKiP.rLqmL.cn
http://R4vSeOrb.rLqmL.cn
http://UhCfy5qA.rLqmL.cn
http://5uVxhVxK.rLqmL.cn
http://www.dtcms.com/wzjs/689386.html

相关文章:

  • 建网站的服务器网站开发需求范本
  • 服装网站建设美丽淄博前信网络科技有限公司
  • 做网站设计的公司叫什么制作离婚证的小程序
  • 成都有哪些网站建设的公司网站开发报价范围
  • 做不锈钢百度网站哪个比较好网站建设 昆明 价格
  • 如何上传网站到空间哪个网站能帮助做路书
  • 住房和城乡建设部官方网站自己做链接的网站吗
  • mvc做的网站怎么连接数据库知乎 wordpress
  • 相亲网站如何做数据库和网站建设的论文
  • python做网站多么做影视网站挣钱吗
  • 如何申请一个网站 做视频直播新公司起名大全集
  • 心理咨询网站开发呼和浩特网络推广公司
  • 英文网站收录提交wordpress的语言文件在哪
  • 私人做的不错的网站网站开发者调试模式
  • 石家庄城乡建设局网站6全网营销和网站建设
  • 网站建设网上商城遂溪手机网站建设
  • 什么网站可以免费做会计初级网站开发的概要设计模板
  • 武进网站建设价位广告设计与制作论文
  • 做pc端网站教程免费网站在线观看人数在哪直播
  • 自学建网站做网站优化学什么技术挣两三万
  • 从音乐网站下载歌曲做铃音要收费吗企业画册设计制作公司
  • 重庆做个网站多少钱广告创意设计竞赛
  • 部门网站开发公司网站建设需求分析
  • 在国外做黄皮网站违法么青岛建设公司网站费用
  • 产品网站系统wordpress 动态meta
  • 手机wap网站制作免费番禺seo培训
  • 设计师做兼职的网站有哪些湖南涟钢建设有限公司网站
  • 男女做暖暖的试看网站酥酥影视网站建设前台与后台最新技术
  • 家具公司网站建设如何建造免费的网站
  • php 开启gzip加速网站济南企业做网站推广网站