网络IPC:网络socket的学习

本文详细介绍了网络socket编程中的关键函数,包括socket、bind、listen、connect、accept、send、recv、close和shutdown,以及它们在Linux下的头文件<sys/socket.h>。通过这些函数,开发者可以创建和管理套接字,实现数据的发送和接收,从而进行网络通信。
摘要由CSDN通过智能技术生成

相关函数:socket、bind、listen、connect、accept、send、recv、close、shutdown

其函数在Linux下的头文件为:#include<sys/socket.h>

套接字描述符 :套接字是通信端点的抽象,如使用文件描述符访问文件,应用程序用套接字描述符访问套接字。应用程序通过访问该函数创建的套接字实现对数据的发送和接收。套接字描述符在UNIX系统被当为一种文件描述符。

1.创建一个套接字,调用socket函数

函数原型:int socket (int domain, int type, int protocal);

返回值:若函数调用成功,返回套接字描述符;若出错,返回-1。

1)参数domain:确定通信的特性,包括地址格式。各个域都有自己表示地址的格式,而表示各个域的常数都以AF_开头,意指地址族。

| 域domain | 描述 |

| AF_INET | IPv4因特网域 |

| AF_INET6 | IPv6因特网域 |

| AF_UNIX | UNIX域 |

| AF_UPSPEC | 未指定 |

2) 参数type:确定套接字的类型,进一步确定通信特征。

| 类型type | 描述 |

| SOCK_DGRAM | 支持UDP连接(无连接状态的消息) |

| SOCK_RAW | RAW类型,提供原始网络协议访问 |

| SOCK_SEQPACKET | 序列化包,提供一个序列化的、可靠的、双向的基本连接的数据传输通道,数据长度定常。每次调用读系统调用时数据需要将全部数据读出 |

| SOCK_STREAM | Tcp连接,提供序列化的、可靠的、双向连接的字节流。支持带外数据传输 |


3) 参数protocol:通常是0,表示为给定的域和套接字类型选择默认协议。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值