Linux网络编程之基本TCP套接字编程的常用API介绍

Linux是目前最流行的开源操作系统,网络功能在linux下占有核心的地位,Linux网络编程指的是socket套接字API编程。下面就来介绍socket套接字编程的常用API。

一、服务器端API(被动socket)

1、socket()函数

#include <sys/types.h>
#include <sys/socket.h>

int socket(int domain, int type, int protocol);

2、bind()函数

#include <sys/types.h>
#include <sys/socket.h>

int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen);

3、listen()函数

#include <sys/types.h>
#include <sys/socket.h>

int listen(int sockfd, int backlog);

4、accept()函数

#include <sys/types.h>
#include <sys/socket.h>

int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);

二、客户端API(主动socket)

1、socket()函数

#include <sys/types.h>
#include <sys/socket.h>

int socket(int domain, int type, int protocol);

2、connect()

#include <sys/types.h>
#include <sys/socket.h>

int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen);

三、发送和接收数据API

1、read()函数

#include <unistd.h>

ssize_t read(int fd, void *buf, size_t count);

2、write()函数

#include <unistd.h>

ssize_t write(int fd, const void *buf, size_t count);

3、send()函数

#include <sys/types.h>
#include <sys/socket.h>

ssize_t send(int sockfd, const void *buf, size_t len, int flags);

4、recv()函数

#include <sys/types.h>
#include <sys/socket.h>

ssize_t recv(int sockfd, void *buf, size_t len, int flags);

Leave a Reply

Your email address will not be published. Required fields are marked *