IP:Internet Protocol
网际协议(IP)是一个网络层协议,它包含寻址信息和控制信息 ,可使数据包在网络中路由。 IP 协议是 TCP/IP 协议族中的主要网络层协议,与 TCP 协议结合组成整个因特网协议的核心协议。 IP 协议同样都适用于 LAN 和 WAN 通信。
IP 协议有两个基本任务:提供无连接的和最有效的数据包传送;提供数据包的分割及重组以支持不同最 大传输单元大小的数据连接。对于互联网络中 IP 数据报的路由选择处理,有一套完善的 IP 寻址方式。每一个 IP 地址都有其特定的组成但同时遵循基本格式。 IP 地址可以进行细分并可用于建立子网地址。 TCP/IP 网络中的每台计算机都被分配了一个唯一的 32 位逻辑地址,这个地址分为两个主要部分:网络号和主机号。网络号用以确认网络,如果该网络是因特网的一部分,其网络号必须由 InterNIC 统一分配。一个网络服务器供应商(ISP)可以从 InterNIC 那里获得一块网络地址,按照需要自己分配地址空间。主机号确认网络中的主机,它由本地网络管理员分配。
当你发送或接受数据时(例如,一封电子信函或网页),消息分成若干个块,也就是我们所说的“包”。每个包既包含发送者的网络地址又包含接受者的地址。由于消息被划分为大量的包,若需要,每个包都可以通过不同的网络路径发送出去。包到达时的顺序不一定和发送顺序相同, IP 协议只用于发送包,而 TCP 协议负责将其按正确顺序排列。
除了 ARP 和 RARP ,其它所有 TCP/IP 族中的协议都是使用 IP 传送主机与主机间的通信。当前 IP 协议有两种版本: IPv4 和 IPv6 。
IPv4 协议结构
4 |
8 |
16 |
32bit |
Version |
IHL |
Type of service |
Total length |
Identification |
Flags |
Fragment offset |
Time to live |
Protocol |
Header checksum |
Source address |
Destination address |
Option + Padding |
Data |
- Version – 4位字段,指出当前使用的 IP 版本。
- IP Header Length (IHL) ― 指数据报协议头长度,具有32位字长。指向数据起点。正确协议头最小值为5。
- Type-of-Service ― 指出上层协议对处理当前数据报所期望的服务质量,并对数据报按照重要性级别进行分配。这些8位字段用于分配优先级、延迟、吞吐量以及可靠性。
- Total Length ― 指定整个 IP 数据包的字节长度,包括数据和协议头。其最大值为65,535字节。典型的主机可以接收576字节的数据报。
- Identification ― 包含一个整数,用于识别当前数据报。该字段由发送端分配帮助接收端集中数据报分片。
- Flags ― 由3位字段构成,其中低两位(最不重要)控制分片。低位指出数据包是否可进行分片。中间位指出在一系列分片数据包中数据包是否是最后的分片。第三位即最高位不使用。
- Fragment Offset ― 13位字段,指出与源数据报的起始端相关的分片数据位置,支持目标IP适当重建源数据报。
- Time-to-Live ― 是一种计数器,在丢弃数据报的每个点值依次减1直至减少为0。这样确保数据包无止境的环路过程。
- Protocol ― 指出在 IP 处理过程完成之后,有哪种上层协议接收导入数据包。
- Header Checksum ― 帮助确保 IP 协议头的完整性。由于某些协议头字段的改变,如生存期(Time to Live),这就需要对每个点重新计算和检验。Internet 协议头需要进行处理。
- Source Address ― 指定发送代码。
- Destination Address ― 指定接收代码。
- Options ― 允许 IP 支持各种选项,如安全性。
- Data ― 包括上层信息。
|
IPv6
网际协议第 6 版(IPv6)是基于 IPv4 的最新版本, Ipv4 是一个网络层协议,它包含寻址信息和一些控制信息,可使数据包在网络中路由。 IP 协议有两种版本: IPv4 和 IPv6 ,其中 IPv6 也被称之为下一代 IP 或 IPng 。 IPv4 和 IPv6 都是关于介质层的去复用技术。例如,在 IPv6 中,在以太网上传送数据包采用的是 86DD (十六进制), IPv4 用的是 0800 。本文主要介绍 IPv6 细节,有关 IP 和 IPv4 的内容在个别文件中另作介绍。
IPv6 把 IP 地址从 32 位增至 128 位,可以支持更多的寻址层次,更大数量的节点,以及更简单的地址自动配置,引入了组播地址的可缩放性,又定义了一个叫做“任意播”(anycast) 的新地址类型, 用于给任意节点组发送数据包。相对于 IPv4 , IPv6 主要有两个方面的改进:
- 支持扩展和选项的改进—— Ipv6 选项位于 IPv6 头和传输层头之间的单独协议头中。 IP 首部选项编码方式的改变使得传输过程更为高效,选项长度限制更少并且添加新选项更为灵活。扩展的头包括下一跳选项、路由选择、片断、目的选项、认证和封装负荷。
- 数据流标签能力——标签属于不同流量的数据包,用于发送端提出特殊处理请求,比如:非缺省服务质量或者 “ 实时 ” 服务。
IPv6协议结构
4 |
12 |
16 |
24 |
32 bit |
Version |
Priority |
Flow Label |
Payload Length |
Next Header |
Hop Limit |
Source Address (128 Bites) |
Destination Address (128 bites) |
- Version ― 网际协议版本号(IPv6 是第6版);
- Priority ― 流量类字段,识别发送数据包的优先权。优先权值的划分根据信息源提供拥塞控制和非拥塞流量控制的流量进行;
- Flow Label ― 流标签用于信息源为需要特殊处理 IPv6 路由器的产品进行标签。该流由源地址和非零流标签共同唯一识别;
- 有效负载长度 ― 有效负载长度包括协议头;
- Next Header ― 迅速识别 IPv6 协议头后面的协议头类型;
- Hop Limit ― 每个节点在转发数据包时的消耗。如果 Hop limit 消耗到0,则取消数据包;
- Source Address ― 数据包发送端128比特地址;
- Destination Address ― 数据包的设定接收端128比特地址(未必是终点接收端)。
|
(责任编辑:admin) |