一、socket函数
1、头文件:
#include /* See NOTES */
#include
2、函数原型:
int socket(int domain, int type, int protocol);
socket函数类似于open,用来打开一个网络连接,如果成功则返回一个网络文件描述符(int类型),之后我们操作这个网络连接都通过这个网络文件描述符。
dimain:域,网络域,网络地址范围(IPV4或IPV6等),也就是协议簇
type:指定套接字类型:SOCK_STREAM(TCP网络)、SOCK_DGRAM(UDP)、SOCK_SEQPACKET
protocol:指定协议,如果指定0,表示使用默认的协议
3、函数形参:
3.1、domain:(域)
AF_INET ip
AF_INET6 ipv6
AF_PACKET packet 低级数据包接口
PF_PACKET 不懂,待了解
PF_INET 待了解(AF开头的表示地址族,PF开头的表示协议族,协议族包含多个地址族,但是当前这种还从未实现,而在中PF的值总是与AF的值相等的)
3.2、type:(套接字类型):
SOCK_RAW 原始套接字 ——>使用原始套接字时候调用,原始套接字也就是链路层协议
SOCK_STREAM 字节流套接字 ——>提供顺序,可靠,双向&#x