网络编程 笔记(四) 地址族 数据序列

  • IP是Internet Protocol(网络协议)的简写,是为收发网络数据而分配给计算机的值。
  • IPv4(Internet Protocol version 4) 4字节地址族
  • IPv6(Internet Protocol version 6) 16字节地址族


  • 路由器、交换机实际上也是一种计算机,用来完成外网与本网主机之间的数据交换。交换机比路由器功能要简单一些,实际用途差别不大。


  • 端口号就是在同一操作系统内为区分不同套接字而设置的,因此无法将一个端口号分配给不同套接字。端口号由16位组成,可分配的端口号范围是0~65535;TCP和UDP套接字不会共用端口号,所以允许重复。


  • 在通过网络传输数据时约定同一方式,这种约定称为网络字节序(Network Byte Order)非常简单–统一为大端序


  • 大端序,高位字节存放到地位地址

  • 小端序,高位字节存放到高位地址


  • 字节序转换,转换字节序的函数
    1、unsigned short htons(unsigned short);
    2、unsigned short ntohs(unsigned short);
    3、unsigned long htonl(unsigned long);
    4、unsigned long ntohl(unsigned long);
    5、htons中的h代表主机(host)字节序
    6、htons中的n代表(network)字节序
    7、s指short,l指long,linux中long类型占用4个字节
    8、这句的意思是”把short型数据从主机字节序转化为网络字节序“。


  • 函数inet_addr(const char* string);
    1、成功时返回32位大端序整数型值,失败时返回INADDR_NONE。
    2、此函数在转换类型的同时进行网络字节序转换。


  • 同一计算机中可以分配多个IP地址,实际IP地址的个数与计算机中安装的NIC的数量相等。若只有一个NIC,则直接使用INADDR_ANY

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值