|
在常规的第3层(Layer 3)转发中,当数据包在网络中穿梭时,每个路由器都从第3层(Layer 3)头标信息中提取所有相关的信息用来转发数据包。于是把这些信息用作路由表查询的一个索引,用以确定数据包的下一网络段。
在最常见的情况中,头标信息中唯一相关的字段是目的地地址字段,但是在有些情况中,其它的头标信息字段可能也是相关的。所以,必须在数据包通过的各个路由器中,独立地进行头标信息分析,并且在各个路由器中必须进行复杂的查找。
在Tag交换中,对第3层(Layer 3)头标信息的分析只进行一次。然后将第3层(Layer 3)头标信息映射到一个固定长度的非结构化的值中,这个非结构化的值被称为Tag(标签)。
只要某些不同的头标信息选择的是相同的下一网络段,那么这些不同的头标信息可以映射到相同的Tag(标签)。事实上,一个标签描述一个转发等值类(forwarding equivalence class,也就是一组数据包),尽管里面的数据包可能不同,然而它们对于转发功能来说,对此并不加区分。
标签的最初选择并不一定只依靠第3层(Layer 3)头标信息的内容,也可以依赖于策略。这样就使得在随后网络段中的转发决策也依赖于策略。
一旦选择了标签,一个短的标签头标信息就被放在了第3层(Layer 3)数据包的前面。这样,这个标签值可以随数据包通过网络运走。在每个随后的网络段中,只需查看标签,即可以做出转发决策,从而不必去重新分析头标信息。由于标签是一个固定长度的非结构化的值,所以查看它既快又简单。
|