标签:没有 相同 add 长度 协议 udp协议 bsp 大端 内核
IPv4套接字地址结构 struct sockaddr_in { uint8_t sinlen;(4个字节) sa_family_t sin_family;(4个字节) in_port_t sin_port;(2个字节) struct in_addr sin_addr;(4个字节) char sin_zero[8]; }; sin_len:整个sockaddr_in结构体的长度,部分Linux内核版本没有该成员 sin_family:指定该地址家族,一般设置为AF_INET(使用TCP,UDP协议) sin_port:端口 sin_addr:IPv4的地址 sin_zero:暂不使用,一般将其设置为0 通用地址结构 struct sockaddr { uint8_t sin_len;(4个字节) sa_family_t sin_family;(4个字节) char sa_data[14]; }; sin_len:整个sockaddr结构的长度 sin_family:指定该地址家族 sa_data:由sin_family决定它的形式 结论:struct sockaddr_in与struct sockaddr结构大小相同
字节序 大端字节序 --最高有效位存储与最低内存地址处,最低有效位存储于最高内存地址处 小端字节序 --最高有效位存储于最高内存地址处,最低有效位存储于最低内存地址处 主机字节序 --不同主机有不同的字节序,如x86小端字节序,,Motorola 6800为大端字节序 网络字节序 --网络字节序规定为大端字节序 字节序说明:一个int类型变量254存储在内存中,如果变量的百位存储于内存地址条上的低地址处,
个位存储于内存地址条上的高地址处(即变量存储序列和内存地址序列相反)这就是大端字节序,反之则是小端字节序。
各个主机的字节序是不同的,但是在网络中传输,必须要一个统一的字节序,这就是网络字节序。
标签:没有 相同 add 长度 协议 udp协议 bsp 大端 内核
原文地址:http://www.cnblogs.com/zhanggaofeng/p/6114193.html