3.13. TS Payload
3.13. TS Payload
TS(Traffic Selector,流量选择器)负载用于协商 Child SA 将保护的流量类型。TS 负载包含一个或多个 TS 子结构。
TS 负载格式如下:
1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Next Payload |C| RESERVED | Payload Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Number of TSs | RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~
Figure 16: TS 负载格式
o Number of TSs (1 字节) - 此负载中的 TS 子结构数量。
o RESERVED (3 字节) - 必须发送为 0,接收时必须忽略。
o Traffic Selectors (变长) - 一个或多个 TS 子结构的级联。
TS 子结构格式如下:
1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TS Type | IP Protocol ID (or Next Header) | Selector | | | |Length +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Start Port | End Port | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Starting Address ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | ~ Ending Address ~ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 17: TS 子结构
o TS Type (1 字节) - 地址类型的类型。对于 IPv4,为 7;对于 IPv6,为 8。
o IP Protocol ID (or Next Header) (1 字节) - 此选择器适用的 IP 协议 ID(或下一头部值)。如果适用于所有协议,则为 0。
o Selector Length (2 字节) - 此 TS 子结构的长度(以字节为单位),但不包括 TS Type 和 IP Protocol ID 字段。
o Start Port (2 字节) - 端口范围起始端口。
o End Port (2 字节) - 端口范围结束端口。
o Starting Address (变长) - 地址范围的起始地址。
o Ending Address (变长) - 地址范围的结束地址。
注意:TS 负载在 IKE_AUTH 交换中使用,以确定 Child SA 将保护的流量。发起方发送其期望的流量选择器,响应方 MAY 缩小该范围,但 MUST NOT 扩展它。