标签:ber highlight address 支持 order 头文件 pos 一个 字段
IPv4套接字地址结构通常也称为“网际套接字地址结构”,它以sockaddr_in命名,定义在<netinet/in.h>头文件中。
struct in_addr { in_addr_t s_addr;/*32-bit IPv4 address*/ /*network byte ordered*/ }; struct sockaddr_in { uint8_t sin_len;/*length if structure(16)*/ sa_family_t sin_family;/*AF_INET*/ in_port_t sin_port;/*16-bit TCP or UDP port number*/ /*network byte ordered*/ struct in_addr sin_addr;/*32-bit IPv4 address*/ /*network byte ordered*/ char sin_zero[8]; /*unused*/ };
对套接字地址结构做几点一般性的说明。
1.长度字段sin_len是为了增加对OSI协议的支持而随4.3BSD-Reno添加的。在此之前,第一个成员是sin_family,它是一个无符号短整数(unsigned short)。并不是所有的厂家都支持套接字地址结构的长度字段,而且POSIX规范也不要求有这个成员。该成员的数据类型uint8_t是典型的,符合POSIX的系统都提供这种形式的 数据类型。
正是因为有了长度字段,才简化了长度可变套接字地址结构的处理。
套接字编程简介: IPV4套接字地址结构/ 通用套接字地址结构/ IPV6套接字地址结构
标签:ber highlight address 支持 order 头文件 pos 一个 字段
原文地址:https://www.cnblogs.com/wuyepeng/p/9727242.html