提供一个框架
服务器端:
创建一个Socket
sFd=socket(AF_INET,SOCK_STREAM,0)
把Socket和本机的IP,TCP口绑定
bind(sFd,(structsockaddr*)&serverAddr,sockAddrSize)
为客户连接创建等待队列
listen(sFd,SERVER_MAX_CONNECTIONS)
这里循环等待,如有客户连接请求,则接受客户机连接要求
accept(sFd,(structsockaddr*)&clientAddr,&sockAddrSize))
接受客户机发来的信息
fioRead(sFd,(char*)&clientRequest,sizeof(clientRequest)))
给客户机发信息
write(sFd,replyMsg,sizeof(replyMsg))
关闭Socket,通信终止
close(sFd)
客户端:
创建一个Socket
sFd=socket(AF_INET,SOCK_STREAM,0)
注意:客户端不需要绑定,因为TCP口是动态的.
向服务器端发送连接请求,并在这里等待回应,如收到回应则向下执行
connect(sFd,(structsockaddr*)&serverAddr,sockAddrSize)
服务器接受连接请求后,读服务器发过来的信息
read(sFd,buffer,20)
向服务器发信息
write(sFd,buffer,20);
关闭Sockets
close(sFd)
相关文章
- PyTorch 之 简介、相关软件框架、基本使用方法、tensor 的几种形状和 autograd 机制
- 【Dubbo分布式服务框架】3.基于注解的服务提供者和消费者
- Eureka高可用集群服务端和客户端配置
- 最受欢迎的18个Web前端开发框架和库
- Vue框架:9,Vue3的用法,setup函数,ref和reactive,计算属性和监听属性,生命周期,toRefs,script setup的作用和lang,Vue后台管理模板
- 【黑马程序员】Java基础12:UDP和TCP的网络通讯
- 黑马程序员——java网络编程中的传输协议:UDP和TCP
- 连接弹性和命令拦截的 ASP.NET MVC 应用程序中的实体框架
- 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)
- 一个PHP写的简单webservice服务端+客户端