TCP / UDP套接字编程

一、TCP的网络编程操作
1、TCP服务器编程步骤
①.创建一个socket,用函数socket()
②.绑定IP地址、端口等信息到socket上,用函数bind()
③设置允许的最大连接数,用函数listen()
④接收客户端上来的连接,用函数accept()
⑤收发数据,用函数send()和recv(),或者read()和write()
⑥关闭网络连接
2、TCP客户端编程步骤
①创建一个socket,用函数socket()
②设置要连接的对方的IP地址和端口等属性
③连接服务器,用函数connect()
④收发数据,用函数send()和recv(),或者read()和write()

⑤关闭网络连接


关于上述两个的编写流程具体如下图所示,在创建套接字时指定类型为AF_INET及SOCK_STREAM,即TCP(IPV4协议下),同时注意,客户端与服务器的连接和三次握手发生在accept函数下,listen函数只是创建了socket的监听的模式。


3、TCP的服务器和客户端的编程实例
针对上次提到的各种网络编程的C函数,这里我们根据上面的流程来分别创建TCP服务器和TCP客户端,实现TCP客户端发送消息到服务器中并让服务器打印发送的消息
(1)TCP服务器参考代码

#include <stdio.h>  
#include <stdlib.h>  
#include <string.h>  
#include <arpa/inet.h>  
#include <sys/types.h>  
#include <sys/socket.h>  
  
#define MAX_SIZE 512   
#define PORT 3332 //端口号  
  
int main()  
{  
    int sockfd;  
    int sock_fd;  
    int recvnum;  
    int addrlen = sizeof(struct sockaddr);  
  
    struct sockaddr_in my_addr;  
    struct sockaddr addr;  
  
    char buf[MAX_SIZE];  
  
   // 填充服务器端的资料,用于套接字绑定  
    bzero(&my_addr,sizeof(struct sockaddr_in));  
  
    my_addr.sin_family = AF_INE
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值