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

Tcp 通信简单demo思路

Server 端
--------------------------  初始化部分 -------------------------------
1.创建监听套接字: 使用socket(协议家族,套接字的类型,0)
套接字类型有 SOCK_STREAM:表示面向连接的套接字(Tcp协议); 
SOCK_DGRAM:表示无连接的数据报套接字(Udp协议);
当指定具体使用的协议之后,第三个参数一般传0.
2.保存套接字地址:一般IPV4协议类型使用的是struct sockaddr_in套接字地址类型
struct sockaddr_in
{
sin_family;  // 保存协议类型
sin_port;     // 保存端口号 (一般从外部传进来) 注意要转成网络字节序
sin_addr;    // 保存要绑定的ip地址 (0.0.0.0可以响应其他主机连接任意本地ip)
                                  // 注意要字符串转点分式十进制整数类型且要保证网络字节序
}
3.将套接字地址绑定到套接字:bind(_listenfd, (const struct sockaddr*), socklen_t);
4.监听套接字:listen(sockfd, backlog);
-------------------------- 运行部分 -----------------------------------
5.创建套接字地址(用于保存客户端套接字地址);
6.从监听套接字上接收客户端的连接请求;int sockfd = accept(_listenfd, ...);
7.进行通信!!!  TCP协议可以直接使用write和read系统调用实现跨网络的进程间通信
Client 端
--------------------------  初始化部分 -------------------------------
1.需要从外部传入server的ip和端口号
2.创建套接字; client不需要为自己的套接字显示绑定套接字地址,而是由操作系统在请求连接的时候默认分配;
3.解析外部传入的server套接字地址并保存到栈区
4.请求连接: connect(sockfd, (const struct sockaddr*), socklen_t );
5.进行通信!!!  TCP协议可以直接使用write和read系统调用实现跨网络的进程间通信
http://www.xdnf.cn/news/4575.html

相关文章:

  • Typora安装使用教程,图片相对储存路径路径设置
  • 什么是 DDoS 攻击?从零到精通的全面解析
  • 如何在 Java 中调用本机摄像头并结合 Vue 实现实时视频流?
  • 初识Linux · TCP基本使用 · 回显服务器
  • 矢量网络分析仪测驻波比:从原理到实战操作全解析
  • 101alpha_第6个
  • 自定义Widget开发:复杂组件设计
  • 使用Scrapeless Scraping Browser的自动化和网页抓取最佳实践
  • 在登录页面上添加验证码
  • 【详细图文】使用MobaXterm的SSH功能远程连接服务器,并创建pytorch环境,使用yolov8训练数据集
  • k8s的pod挂载共享内存
  • ABP vNext + gRPC 实现服务间高速通信
  • 云原生安全治理体系建设全解:挑战、框架与落地路径
  • 万物互联时代:ONVIF协议如何重构安防监控系统架构
  • 深入理解Embedding Models(嵌入模型):从原理到实战(上)
  • 英语六级---2024.12 卷二 仔细阅读2
  • 关于点胶机的精度
  • 基于FPGA控制ADC0832双通道采样+电压电流采样+LCD屏幕显示
  • 【Java项目脚手架系列】第四篇:Spring Boot基础项目脚手架
  • 简易的考试系统设计(Web实验)
  • 人协同的自动化需求分析
  • Python基于Django的病人信息管理系统及安全策略分析(附源码,文档说明)
  • 【Prometheus】 kube-state-metrics中的指标kube_pod_labels
  • C++面向对象 继承
  • c语法高阶—(联合体,枚举,位域,编译器,宏定义,条件编译,条件编译,头文件)
  • 代码随想录第36天:动态规划9(序列问题)
  • EDU/EDU.CN教育邮箱的申请(申请成功可以免费使用一年CursorPro)
  • Ubuntu 安装 Keepalived、LVS
  • 【无标题】MPC软件
  • 第七章----输入输出模板