网络字节序与主机字节序 和它们之间的相互转换函数
2015-11-01 23:32
323 查看
1、网络字节序:是TCP/IP中一种固定好的数据表示格式,它与具体的CPU,操作系统,传输方式无关,从而可以保证数据在不同主机之间传输时能够兼容。
2、主机字节序:即大端(Big Endian)与小端(Little Endian)模式;由CPU和硬件的设置方式相关。
3、为了进行转换 bsd socket提供了转换的函数 有下面四个
(BSD Socket
是UNIX系统中通用的网络接口,它不仅支持各种不同的网络类型,而且也是一种内部进程之间的通信机制)
①htons 把unsigned short类型从主机序转换到网络序(host
to network short)
②htonl 把unsigned long类型从主机序转换到网络序(host to network long)
③ntohs 把unsigned short类型从网络序转换到主机序(network to host short)
④ntohl 把unsigned long类型从网络序转换到主机序(network to host long)
注意1:在使用Little Endian的系统中, 这些函数会对字节序进行转换 ,将字节序转换为Big Endian
注意2:在使用Big Endian类型的系统中,这些函数会定义成空宏
2、主机字节序:即大端(Big Endian)与小端(Little Endian)模式;由CPU和硬件的设置方式相关。
3、为了进行转换 bsd socket提供了转换的函数 有下面四个
(BSD Socket
是UNIX系统中通用的网络接口,它不仅支持各种不同的网络类型,而且也是一种内部进程之间的通信机制)
①htons 把unsigned short类型从主机序转换到网络序(host
to network short)
②htonl 把unsigned long类型从主机序转换到网络序(host to network long)
③ntohs 把unsigned short类型从网络序转换到主机序(network to host short)
④ntohl 把unsigned long类型从网络序转换到主机序(network to host long)
注意1:在使用Little Endian的系统中, 这些函数会对字节序进行转换 ,将字节序转换为Big Endian
注意2:在使用Big Endian类型的系统中,这些函数会定义成空宏
相关文章推荐
- apache httpd学习笔记二 - 命令
- Java+MySQL实现网络爬虫程序
- linux笔记:网络命令ping,traceroute,ifconfig,netstat;挂载和卸载命令mount,umount
- iOS中 WGAFN_网络监控 技术分享
- iOS中 WGAFN_网络监控 技术分享
- 网络通信(Telematik)-传输层协议(Transportprotokolle)1
- CentOS配置网络的4种途径
- 配置Linux网络前必知的四个IPv4基本概念
- 大变革的IT时代网络及硬件工程师该何去何从?
- 大变革的IT时代网络及硬件工程师该何去何从?
- 毕向东tcp学习笔记1
- HTTP/2和WebSocket及HTML5资料整理--HTTP2篇
- HttpSessionBindingListener
- python webserver, based on SimpleHTTPServer
- Apache学习笔记(1)——http协议
- HttpClient I/O exception (java.net.SocketException) caught when processing request: Connect
- 面对电信运营商HTTP劫持如何是好,投诉太折腾,不如路由器直接屏蔽广告源
- Node.js实践HTTP安全认证之一~~基本认证
- 黑马程序员------网络编程概及其练习
- TCP之深入浅出send和recv