linux socket "send" 函数是否进行 hton 转换?
Does linux socket "send" function do a hton conversion?
尝试使用 TCP/IP 套接字时 - “socket(AF_INET, SOCK_STREAM, 0)”,在这种情况下,tcp 会调用 send 和 recv 自动进行字节顺序转换 ?
在TCP级别,字节顺序仅适用于TCP/IPheaders中的IP和端口,它们是在调用connect()
/accept()
时建立的。使用 sockaddr_in...
结构的实例时,用户负责根据需要处理字节转换 to/from 网络字节顺序。
send()
/recv()
只处理套接字句柄和原始字节数组,因此在调用它们时不存在字节顺序问题。但是,如果字节数组中的数据包含 multi-byte 个整数,则用户必须根据需要单独处理这些数据。
尝试使用 TCP/IP 套接字时 - “socket(AF_INET, SOCK_STREAM, 0)”,在这种情况下,tcp 会调用 send 和 recv 自动进行字节顺序转换 ?
在TCP级别,字节顺序仅适用于TCP/IPheaders中的IP和端口,它们是在调用connect()
/accept()
时建立的。使用 sockaddr_in...
结构的实例时,用户负责根据需要处理字节转换 to/from 网络字节顺序。
send()
/recv()
只处理套接字句柄和原始字节数组,因此在调用它们时不存在字节顺序问题。但是,如果字节数组中的数据包含 multi-byte 个整数,则用户必须根据需要单独处理这些数据。