网络---IP地址和端口

1.网络分类

根据网络大小:局域网,城域网,广域网。(互联网=因特网----更大的广域网)
根据网络的组网方式:以太网,令牌环网。

2.IP地址

【计算机网络】IP地址详解
IP地址:网络中每一台主机唯一标识。
本质:ipv4 :uint32_t 类型–>无符号的4字节的整数,2^32,所以Ip地址可能存在不够用情况。
我们通常也使用 “点分十进制” 的字符串表示IP地址, 例如 192.168.0.1 ; 用点分割的每一个数字表示一个字节, 范围是 0 - 255;

解决Ip地址不够用:

  1. DHCP:动态地址分配,谁使用给谁分配Ip地址。
  2. NAT:网络地址转换(Network Address Translation),通常用来组建私网。允许一个整体机构以一个公用IP(Internet Protocol)地址出现在Internet上。是一种把内部私有网络地址(IP地址)翻译成合法网络IP地址的技术,NAT在一定程度上,能够有效的解决公网地址不足的问题。(公网和私网的IP地址是不重复的,不同的私网内的IP地址可以重复;私网地址对外是不可见,公网无法识别私网Ip地址;NAT可简单理解为将私网地址与公网地址进行转换来完成不同私网之间主机的通信)
    NAT基本原理及应用
  3. Ipv6:uint8_t ip[16],2^128.但是不兼容ipv4,推广速度慢,目前仍主要用ipv4。

在网络传输的每条数据中都会包含两个信息,源端IP(从那个主机来),对端Ip(到那个主机去)

3.端口

为啥qq发来的消息会在qq上显示,不在别的应用上显示?:有了IP地址能够把消息发送到对方的机器上,但是还需要有一个其他的标识来区分出, 这个数据要给哪个程序进行解析,这就需要了解一下端口的知识。

Port(端口): 在一台主机上标识一个网络通信进程。uint16_t类型的数据 0~65535;
网卡在收到一条数据后,操作系统根据数据中的端口信息,决定这条数据应该有当前主机上的哪个进程来处理。
注意:一个端口只能被一个进程占用。一个进程可以使用多个端口。操作系统分配的端口一般是是固定的,不会随着进程退出下次重启而改变。

在网络传输的每条数据中都会包含两个信息:源端端口(从哪个端口来),对端端口(到哪个端口去)。
通过 IP地址 + 端口号 能够标识网络上的某一台主机的某一个进程

你可能感兴趣的:(linux,http)