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

socket编程短平快

创建文件描述符

#include<sys/socket.h>
int socket_fd = socket(AF_INET,SOCK_STREAM,0);
//AF_INET address family internet 地址族, 代表ipv4
//SOCK_STREAM TCP协议
//最后的参数是默认配置。

文件描述符配置

int opt = 1;
setsockopt(socket_fd,SOL_SOCKET,SO_REUSEADD|SO_REUSEPORT,&opt,sizeof(opt));
//SOL_SOCKET当前操作的选项属于套接字层,而非基于协议
//SO_REUSEADD|SO_REUSEPORT允许多个套接字绑定同一个地址和端口
//opt = 1 表示使能上述的两个选项。如果是0表示禁用

绑定端口

struct sockaddr_in sockaddr_d;
sockaddr_d.sin_family = AF_INET;
sockaddr_d.sin_addr.s_addr = INADDR_ANY;
sockaddr_d.sin_port = htons(8888);
bind(socket_fd,(struct sockaddr*)(&sockaddr_d),sizeof(sockaddr_d));
//sin_family : socket internet family  AF_INET 表示IPV4
//INADDR_ANY :监听所有网络端口的请求
//Host to Network Short 主机字节序到网路字节序,因为主机有的是大端,有的是小端,而网络字节序是大端。

开始监听

int d = listen(socket_fd,3);
请求队列的最大长度。
客户端发起的连接请求会被放入一个队列中等待服务器处理。
如果队列已满,新的连接请求将被拒绝。

http://www.kler.cn/a/527586.html

相关文章:

  • 计算机网络一点事(24)
  • 漏洞扫描工具之xray
  • 【视频+图文讲解】HTML基础2-html骨架与基本语法
  • OpenCV:Harris、Shi-Tomasi角点检测
  • 【小白学AI系列】NLP 核心知识点(六)Softmax函数介绍
  • 如何优化轮式移动机器人的运动稳定性?
  • 仿真设计|基于51单片机的低频信号控制系统仿真
  • PostgreSQL图插件AGE
  • DeepSeek-R1 论文解读 —— 强化学习大语言模型新时代来临?
  • Java 泛型<? extends Object>
  • 小程序-基础加强
  • 最新Java开发进阶!Java进阶面试资料无偿分享_java面试最新资料
  • SpringBoot入门:快速构建第一个Web应用
  • 需求分析应该从哪些方面来着手做?
  • 高低频混合组网系统中基于地理位置信息的信道测量算法matlab仿真
  • 手摸手系列之 DeepSeek-R1 开源大模型私有化部署解决方案
  • Linux_线程同步生产者消费者模型
  • 适合超多氛围灯节点应用的新选择
  • springboot 2.7.6 security mysql redis jwt配置例子
  • 【股票数据API接口36】如何获取股票当天逐笔大单交易数据之Python、Java等多种主流语言实例代码演示通过股票数据接口获取数据