1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 基本TCP套接字编程

基本TCP套接字编程

时间:2021-01-05 05:41:04

相关推荐

基本TCP套接字编程

1. socket函数原型:

#include <sys/socket.h>int socket(int domain, int type, int protocol);

2. bind函数原型:

#include <sys/socket.h>int bind(int sockfd, struct sockaddr *my_addr, socklen_t addrlen);

参数:

​struct sockaddr_in {sa_family_t sin_family; /* 地址族: AF_INET */u_int16_t sin_port;/* 按网络字节次序的端口 */struct in_addr sin_addr; /* internet地址 */};struct in_addr {u_int32_t s_addr; /* 按网络字节次序的地址 */};

3. listen函数原型: 设置同时与服务器连接上的上限数(同时进行3次握手的客户端数量)

#include <sys/socket.h>int listen(int s, int backlog);

参数:

backlog:内核为相应套接字排队的最大连接数

4. accept函数原型:阻塞等待客户端建立连接,成功的话,返回一个与客户端成功连接的socket文件描述符

#include <sys/socket.h>int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);

参数:

sockfd:socket函数返回值addr:传出参数——成功与服务器建立连接的那个客户端的地址结构(IP + port)addrlen:传入传出。入:addr的大小。出:客户端addr实际大小成功:能与服务器进行数据通信的socket对应的文件描述符

5. connect函数原型:

#include <sys/socket.h>int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen);

参数:

socket函数返回值addr:传入参数——服务器地址结构addrlen:服务器的地址结构大小

注意:如果不使用bind客户端地址结构,采用隐式绑定

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。