网络层与数据链路层协议
网络层用来处理在网络上流动的数据包(数据包:网络上传输的最小数据单位)。网络层规定在众多选项中通过怎样的路径(传输线路)到达对方的计算机,把数据包传输给对方。
该层中最突出的协议是 Internet Protocol(IP),因此该层也称为 IP 层。IP 的核心是两个主要功能:地址 和 路由。
IP 协议是 TCP / IP 协议的核心,所有的 TCP、UDP、IMCP、IGMP 的数据都以 IP 数据格式传输。要注意的是,IP 不是可靠的协议,这是说,IP 协议没有提供一种数据未传达以后的处理机制,这被认为是上层协议:TCP 或 UDP 要做的事情。
网络层功能:
-
IP 寻址
-
选路
-
封装打包
-
分片
数据链路层功能:
-
逻辑链路控制
-
媒体访问控制
-
封装链路层帧
-
MAC 寻址
-
差错检测与处理
-
定义物理层标准
IPv4 分类地址
在数据链路层中我们一般通过 MAC 地址来识别不同的节点,而在 IP 层我们也要有一个类似的地址标识,这就是 IP 地址。
32 位 IP 地址(IPv4 地址的点分十进制表示)分为网络位和地址位,这样做可以减少路由器中路由表记录的数目,有了网络地址,就可以限定拥有相同网络地址的终端都在同一个范围内,那么路由表只需要维护一条这个网络地址的方向,就可以找到相应的这些终端了。
当互联网规律很小时,类别信息被编码进 IP 地址:
CIDR 子网掩码
无类别域间路由(Classless Inter-Domain Routing,CIDR)是一个用于给用户分配 IP 地址以及在互联网上有效地路由 IP 数据包的对 IP 地址进行归类的方法。
表示方法:A.B.C.D/N(N 的范围 [0, 32])
链路层 MAC 地址
-
链路层地址 MAC(Media Access Control Address)
- 实现本地网络设备间的直接传输
-
网络层地址 IP(Internet Protocol address)
- 实现大型网络间的传输
查看 MAC 地址:
# Window
ipconfig / all
# Linux
ifconfig
地址解析协议 ARP
动态地址解析协议(Address Resolution Protocol,ARP)是根据 IP 地址获取 MAC 地址的一种协议。 简单的来说 ARP 的作用就是把 IP 地址映射为物理地址,而与之相反的 RARP(逆向 ARP)就是将物理地址映射为 IP 地址。
NAT 地址转换
网络地址转换(Network Address Translation,缩写:NAT;又称网络掩蔽、IP 掩蔽)在计算机网络中是一种在 IP 数据包通过路由器或防火墙时重写来源 IP 地址或目的 IP 地址的技术。这种技术被普遍使用在有多台主机但只通过一个公有 IP 地址访问互联网的私有网络中。它是一个方便且得到了广泛应用的技术。当然,NAT 也让主机之间的通信变得复杂,导致了通信效率的降低。
IPv6
网际协议第 6 版(英语:Internet Protocol version 6,缩写:IPv6)是网际协议的最新版本,用作互联网的协议。用它来取代 IPv4 主要是为了解决 IPv4 地址枯竭问题,同时它也在其他方面对于 IPv4 有许多改进。
IPv6 目的:
-
更大的地址空间:128 位长度
-
更好的地址空间管理
-
消除 NAT 等寻址技术
-
更简易的 IP 配置管理
-
优秀的选路设计
-
更好的多播支持
-
安全性
-
移动性