系统ip地址和端口号 ip地址和端口号设计

系统设计基础知识系列第八章了解IP地址和端口 。你可以阅读我以前的文章
系统设计基础知识(一) 网络
系统设计基础知识(二) 数据库
系统设计的基础知识(三)吞吐量和延迟
【系统ip地址和端口号 ip地址和端口号设计】系统设计基础知识(四)—系统可用性
系统设计基础知识(五)—缓存
系统设计基础知识(六)—缓存区
系统设计基础知识(七)—代理

IP地址——系统在网络中的地址
端口——系统内服务的地址
IP地址+端口=特定系统上特定服务的地址
协议套件
系统ip地址和端口号 ip地址和端口号设计

文章插图
  1. IP 协议 (IP) —它是 TCP/IP 协议套件中的核心协议套件 。它定义了用于实现无连接服务的网络层数据包格式,包括主机之间的寻址和路由数据包 。不同网络技术的主要区别在于数据链路层和物理层,例如不同的局域网技术和广域网技术 。网际协议可以在TCP/IP网络层的网际协议下统一不同的网络技术 。Internet 协议使许多互连的计算机网络能够通过统一的 IP 数据包传输进行通信 。还有其他协议 。
  2. Internet 控制消息协议 (ICMP) — 它是一种无连接协议 , 是 TCP/IP 协议套件的子协议 , 用于在 IP 主机和路由器之间传输控制消息 。控制消息是指网络本身的消息,比如网络是否可达,主机是否可达,路由是否可用 。因此 。这些控制消息不传输用户数据,但对用户数据的传输和网络安全很重要 。
  3. 地址解析协议(ARP) ——用于实现IP地址到MAC地址的映射 , 即查询目标IP对应的MAC地址 。
  4. 反向地址解析协议 (RARP) — 它允许 LAN 上的物理机从网关服务器的 ARP 表或缓存中请求其 IP 地址 。网络管理员在 LAN 的网关路由器中创建一个表来映射物理地址 (MAC) 及其对应的 IP 地址 。
  5. 路由信息协议 (RIP) — 它是一种相对简单的内部网关协议 。在 RIP 网络中,RIP 要求网络中的每个路由器都维护从每个路由器到每个目的网络的路由信息 。它采用距离向量算法 , 使用跳数作为度量来衡量到目标网络的距离 。距离是到达目标站点所需的链接数,范围从0到16,值为16表示路径无限长 。从路由器到其直连网络的跳数定义为1,从路由器到其非直连网络的距离定义为每个路由器的距离(n+1) 。
  6. 开放最短路径优先 (OSPF) — 它是一种链路状态路由协议和内部网关协议,用于在单个自治系统中进行路由决策 。每个 OSPF 路由器使用最短路径优先算法 (SPF) 计算不同的路由并构建路由表 。该协议仅涉及网络中链路或接口的状态(IP 地址的上下波动、掩码带宽、利用率和延迟) 。每个路由器与该区域中的其他路由器交换其链路状态信息 。这样,网络上的每个路由器都会对网络结构有相同的理解 。然后,OSPF 不仅可以计算两个网络节点之间的最短路径,还可以计算通信成本 。
  7. 外部网关协议 (EGP) —它旨在在 Internet 上的外部路由器之间交换路由和可达性信息 。
  8. 用户数据报协议 (UDP) — 它是一种无连接传输层协议,提供简单的面向事务的不可靠通信服务 。它是一种将应用程序发送的数据按原样发送到网络的机制 。即使网络拥塞,它也无法进行流量控制 。传输过程中发生丢包,没有重传 。
  9. 传输控制协议 (TCP) — 它是一种面向连接且可靠的流传输服务 。流是不间断的数据 。当应用程序使用 TCP 发送消息时 , 它是按顺序发送的 , 但接收方接收到的数据流是没有间隔的 。此外,TCP 通过为其传输的每个字段分配一个序列号来获得可靠性 。
在我们的日常生活中,我们用于访问 Internet 的电子设备都有 IP 地址 。IP地址分为IPV4和IPV6 。在这里,我们可以将 IPV4 地址称为 IP 地址 。
IPv4
  • 它是 Internet 协议 (IP) 的第四个版本 。它是 Internet 上基于标准的互联互通方法的核心协议之一 。
  • 然而,2011年互联网号码分配机构(IANA) 的IPv4地址池彻底枯竭,严重制约了互联网的发展 。
  • 当网络中的 2 台主机想要通信时 , 它们必须知道各自的 IP 地址 。TCP/IP 协议使用 IP 地址来识别网络中的不同主机 。

系统ip地址和端口号 ip地址和端口号设计

文章插图
  • 它为 Internet 上的每个网络和每个主机分配一个逻辑地址 。IP 地址由一个 32 位二进制数组成 。为了方便记忆 , 将IP地址分成32位十六进制数,每段8位,一共4段,然后将每段8位二进制数转换为十进制数,中间的点是分开的 。该表达式称为点十进制表示法 。事实上,它可以提供 4,294,967,296 (232) 个唯一地址 , 但大块被保留用于特殊网络用途 。

系统ip地址和端口号 ip地址和端口号设计

文章插图
IPv4 数据报格式
系统ip地址和端口号 ip地址和端口号设计

文章插图
版本— 这 4 位指定数据报的 IP 协议版本
头长——这 4 位决定了有效载荷在 IP 数据报中的实际开始位置
服务类型 — IPv4 报头中包含 8 位,以允许区分不同类型的 IP 数据报
数据报长度— IP 数据报的总长度(报头 + 数据),以字节为单位
16-bit Identifier, Flags, 13-bit Fragmentation offset — 当一个大的 IP 数据报被分解成几个较小的 IP 数据报时,这些数据报在被重新组装时独立地转发到目的地,然后它们的有效载荷数据被传递到传输层的传输层 。目标主机或 IPv6 不允许分段时
Time-to-Live(TTL) ——这个字段是为了确保数据报不会永远循环
上层协议— 该字段的值指示此 IP 数据报的数据部分应传递到的特定传输层协议,TCP=6,UDP=17 。
标头校验和— 帮助路由器检测接收到的 IP 数据报中的位错误
源 IP 地址和目标 IP 地址— 当源创建数据报时,它将其 IP 地址插入源 IP 地址字段,并将最终目标的地址插入目标 IP 地址字段 。
选项— 选项字段允许扩展 IP 标头
数据— IP 数据报的数据字段包含要传送到目的地的传输层段(TCP 或 UDP) 。
开销—如果数据报携带 TCP 段,则 IP 数据报有 20 个字节的报头 。
  • 每个IP地址在内部分为两部分,即网络号和主机号 。

系统ip地址和端口号 ip地址和端口号设计

文章插图
  • 网络号(网络地址) ——用于标识大型 TCP/IP 网络中的单个网段(即网络的网络) 。
  • 主机号(主机地址) ——用于识别每个网络内的 TCP/IP 节点,例如工作站、服务器、路由器或其他 TCP/IP 设备 。
  • IP 地址中的网络号和主机号共 32 位 。
  • 由于网络规模的不同,有A、B、C、D、E 5种,只有B和C比较常用 。
  • A、B、C 类地址称为单播地址,只能分配给唯一的主机 。
  • E类地址是在IP地址设计之初为科学研究保留的 。

系统ip地址和端口号 ip地址和端口号设计

文章插图
系统ip地址和端口号 ip地址和端口号设计

文章插图
系统ip地址和端口号 ip地址和端口号设计

文章插图
  • A 类 IP 地址— 它由一个 1 字节的网络地址和一个 3 字节的主机地址组成 。它主要是为大型网络设计的 。网络地址的最高位必须为“0”,地址范围为 1.0.0.0 到 127.0.0.0 。有 127 个 A 类网络可用,每个网络可以容纳 16,777,214 台主机,其中 127.0.0.1 是代表主机本身的特殊 IP 地址 , 用于在本地机器上进行测试 。0代表任意地址,127是环回测试地址,所以A类IP地址的实际范围是1-126 。默认子网掩码为 255.0.0.0 。
  • B 类 IP 地址— 它由一个 2 字节的网络地址和一个 2 字节的主机地址组成 。网络地址的最高位必须是“10”,地址范围是128.0.0.0到191.255.255.255,其中128.0.0.0和191.255.0.0是保留IP,所以实际范围是128.1.0.0-191.254 。0.0 。共有 16,382 个网络,每个网络可容纳 65,534 台主机 。
  • C类IP地址——由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须为“110” 。地址范围为 192.0.0.0 到 233.255.255.255,其中 192.0.0.0 和 223.255.255.0 为保留 IP , 因此实际范围为 192.0.1.0–223.255.254.0 。共有 2,097,152 个网络 , 每个网络可容纳 254 台主机 。
  • D 类 IP 地址— 用于多播 。D类IP地址的第一个字节以“1110”开头,这是一个专门保留的地址 。它不指向特定的网络,并且这种类型的地址当前用于多播 , 通过识别在 224.0.0.0 到 239.255.255.255 之间共享相同协议的一组计算机,一次寻址一组计算机 。
  • E 类 IP 地址 —保留供将来使用 。地址范围为 240.0.0.0 到 255.255.255.254,其中 255.255.255.255 为广播地址 。
  • 公共地址——IP地址由网络信息中心统一管理,分配给申请注册的组织 。
  • 特殊 IP 地址:
  1. 广播地址— 子网内的所有网络接口都可以接收此广播消息 。有直播和限播之分 。直接广播是目标网络的网络地址和二进制全1的主机地址 。有限广播是网络地址和主机地址都是二进制1的地址(即255.255.255.255) 。
  2. 多播地址— 用于视频广播系统 。它的地址范围是从 224.0.0.0 到 239.255.255.255(D 类 IP 地址) 。224.0.0.1 指所有主机,224.0.0.2 指所有路由器 。
  3. 环回地址——网络地址为127的IP地址成为环回地址,主要用于本地环回测试和本地机器进程之间的通信 。实际中经常使用的环回地址是127.0.0.1,也叫localhost 。
  4. 私有地址——它是一个未注册的地址,专门用于组织的内部网络 。