述第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點上重新配置所述第二流表,其中所述第二流表指示丟棄所述第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包。
[0052]第四方面,本發(fā)明實施例提供一種數(shù)據(jù)包轉(zhuǎn)發(fā)方法,包括:
[0053]接收第一數(shù)據(jù)流的數(shù)據(jù)包并進(jìn)行處理;
[0054]在確定對所述第一數(shù)據(jù)流的后續(xù)處理動作發(fā)生變更時,向控制器發(fā)送上報信息,所述上報信息用于指示所述第一數(shù)據(jù)流的變更的后續(xù)處理動作。
[0055]結(jié)合第四方面,在第一種可能的實現(xiàn)方式中,所述上報信息包括所述第一數(shù)據(jù)流的特征信息以及所述第一數(shù)據(jù)流的變更的后續(xù)處理動作指示。
[0056]結(jié)合第四方面或第四方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述第一數(shù)據(jù)流的變更的后續(xù)處理動作指示為:所述第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包繞過所述第一服務(wù)節(jié)點或者丟棄所述第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包。
[0057]第五方面,本發(fā)明實施例提供一種控制器,包括:
[0058]接收器,用于接收M個服務(wù)節(jié)點中的第一服務(wù)節(jié)點發(fā)送的上報信息,所述上報信息用于指示同一組數(shù)據(jù)流中的第一數(shù)據(jù)流的變更的后續(xù)處理動作,其中,所述同一組數(shù)據(jù)流對應(yīng)一條業(yè)務(wù)鏈,所述業(yè)務(wù)鏈指示所述同一組數(shù)據(jù)流中的每個數(shù)據(jù)流需要經(jīng)過的所述M個服務(wù)節(jié)點組成的序列,所述M為大于等于I的自然數(shù);
[0059]處理器,用于根據(jù)所述上報信息,在所述第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或者第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點上重新配置第二流表,其中,所述第二服務(wù)節(jié)點為所述第一服務(wù)節(jié)點在所述業(yè)務(wù)鏈上的前一個服務(wù)節(jié)點,所述第二流表用于指示所述第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或者所述第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點依照所述第一數(shù)據(jù)流的變更的后續(xù)處理動作轉(zhuǎn)發(fā)所述第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包。
[0060]結(jié)合第五方面,在第一種可能的實現(xiàn)方式中,所述處理器還用于:在所述接收器接收第一服務(wù)節(jié)點發(fā)送的上報信息之前,
[0061]根據(jù)所述業(yè)務(wù)鏈,確定所述同一組數(shù)據(jù)流的轉(zhuǎn)發(fā)規(guī)則,其中,所述M個服務(wù)節(jié)點對應(yīng)N個交換節(jié)點,所述第一轉(zhuǎn)發(fā)規(guī)則包含N個第一流表,每個交換節(jié)點對應(yīng)一個第一流表,所述N為大于等于I的自然數(shù);
[0062]在所述每個交換節(jié)點上配置所述每個交換節(jié)點對應(yīng)的第一流表,其中,所述每個交換節(jié)點被配置的第一流表用于指示所述每個交換節(jié)點依照所述第一轉(zhuǎn)發(fā)規(guī)則轉(zhuǎn)發(fā)所述同一組數(shù)據(jù)流中的每個數(shù)據(jù)流。
[0063]結(jié)合第五方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述處理器還用于:在所述第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或者第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點上重新配置第二流表之后,
[0064]配置所述第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或者所述第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點上的流表的優(yōu)先級,其中,所述第二流表的優(yōu)先級高于所述第一流表。
[0065]結(jié)合第五方面、第五方面的第一種可能的實現(xiàn)方式或第五方面的第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述接收器具體用于:
[0066]接收所述第一服務(wù)節(jié)點發(fā)送的所述第一數(shù)據(jù)流的特征信息以及所述第一數(shù)據(jù)流的變更的后續(xù)處理動作指示。
[0067]結(jié)合第五方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述第一數(shù)據(jù)流的變更的后續(xù)處理動作指示為:所述第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包繞過所述第一服務(wù)節(jié)占.V,
[0068]所述處理器具體用于:
[0069]根據(jù)所述第一數(shù)據(jù)流的特征信息確定所述業(yè)務(wù)鏈,從所述業(yè)務(wù)鏈上確定第三服務(wù)節(jié)點,所述第三服務(wù)節(jié)點為所述第一服務(wù)節(jié)點在所述業(yè)務(wù)鏈上的后一個服務(wù)節(jié)點;
[0070]在所述第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或者所述第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點上重新配置所述第二流表,其中,所述第二流表包含至少一個新流表項,所述新流表項包括所述第一數(shù)據(jù)流的特征信息、入端口和出端口,其中,所述出端口配置為所述第三服務(wù)節(jié)點對應(yīng)的交換節(jié)點的端口。
[0071]結(jié)合第五方面的第三種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述第一數(shù)據(jù)流的變更的后續(xù)處理動作指示丟棄所述第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包;
[0072]所述處理器具體用于:在所述第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或者所述第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點上重新配置所述第二流表,其中所述第二流表指示丟棄所述第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包。
[0073]第六方面,本發(fā)明實施例提供一種服務(wù)節(jié)點,包括:
[0074]接收器,用于接收第一數(shù)據(jù)流的數(shù)據(jù)包并進(jìn)行處理;
[0075]發(fā)射器,用于在確定對所述第一數(shù)據(jù)流的后續(xù)處理動作發(fā)生變更時,向控制器發(fā)送上報信息,所述上報信息用于指示所述第一數(shù)據(jù)流的變更的后續(xù)處理動作。
[0076]結(jié)合第六方面,在第一種可能的實現(xiàn)方式中,所述上報信息包括所述第一數(shù)據(jù)流的特征信息以及所述第一數(shù)據(jù)流的變更的后續(xù)處理動作指示。
[0077]結(jié)合第六方面或第六方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述第一數(shù)據(jù)流的變更的后續(xù)處理動作指示為:所述第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包繞過所述第一服務(wù)節(jié)點或者丟棄所述第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包。
[0078]綜上,本發(fā)明實施例提供控制器、服務(wù)節(jié)點和數(shù)據(jù)包轉(zhuǎn)發(fā)方法,其中,控制器根據(jù)接收的M個服務(wù)節(jié)點中的第一服務(wù)節(jié)點發(fā)送的上報信息,在第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或者第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點上重新配置第二流表,其中,第二服務(wù)節(jié)點為第一服務(wù)節(jié)點在業(yè)務(wù)鏈上的前一個服務(wù)節(jié)點,第二流表用于指示第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或者第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點依照第一數(shù)據(jù)流的變更的后續(xù)處理動作轉(zhuǎn)發(fā)第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包。
[0079]由于指示交換節(jié)點對第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包的處理動作,第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包就無需經(jīng)過該第一服務(wù)節(jié)點的處理,而直接由第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點處理,第一數(shù)據(jù)流的數(shù)據(jù)包處理效率得以提高,同時也降低了第一服務(wù)節(jié)點的處理負(fù)荷。
【附圖說明】
[0080]圖1為具有增值業(yè)務(wù)處理功能的網(wǎng)絡(luò)的網(wǎng)絡(luò)架構(gòu)圖;
[0081]圖2為采用業(yè)務(wù)鏈技術(shù)的典型網(wǎng)絡(luò)的網(wǎng)絡(luò)架構(gòu)圖;
[0082]圖3為本發(fā)明實施例提供的數(shù)據(jù)通信系統(tǒng)的結(jié)構(gòu)示意圖;
[0083]圖4為本發(fā)明實施例提供的數(shù)據(jù)通信系統(tǒng)對數(shù)據(jù)流的處理方式示意圖;
[0084]圖5為本發(fā)明示例一中控制器配置交換節(jié)點的方法示意圖;
[0085]圖6為本發(fā)明實施例提供的第一種控制器的結(jié)構(gòu)示意圖;
[0086]圖7為本發(fā)明實施例提供的第二種控制器的結(jié)構(gòu)示意圖;
[0087]圖8為本發(fā)明實施例提供的第一種服務(wù)節(jié)點的結(jié)構(gòu)示意圖;
[0088]圖9為本發(fā)明實施例提供的第二種服務(wù)節(jié)點的結(jié)構(gòu)示意圖;
[0089]圖10為本發(fā)明實施例提供的第一種數(shù)據(jù)包轉(zhuǎn)發(fā)方法的流程圖;
[0090]圖11為本發(fā)明實施例提供的第二種數(shù)據(jù)包轉(zhuǎn)發(fā)方法的流程圖。
【具體實施方式】
[0091]本發(fā)明實施例提供控制器、服務(wù)節(jié)點和數(shù)據(jù)包轉(zhuǎn)發(fā)方法,用以解決采用業(yè)務(wù)鏈技術(shù)的網(wǎng)絡(luò)中,數(shù)據(jù)流的所有數(shù)據(jù)包都需要經(jīng)過過濾型的服務(wù)節(jié)點,數(shù)據(jù)包處理效率低的問題。
[0092]在本發(fā)明實施例提供的控制器中,接收模塊接收M個服務(wù)節(jié)點中的第一服務(wù)節(jié)點發(fā)送的上報信息,該上報信息用于指示同一組數(shù)據(jù)流中的第一數(shù)據(jù)流的變更的后續(xù)處理動作,其中,該同一組數(shù)據(jù)流對應(yīng)一條業(yè)務(wù)鏈,業(yè)務(wù)鏈指示同一組數(shù)據(jù)流中的每個數(shù)據(jù)流需要經(jīng)過的M個服務(wù)節(jié)點組成的序列,M為大于等于I的自然數(shù);處理模塊根據(jù)上報信息,在第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或者第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點上重新配置第二流表,其中,第二服務(wù)節(jié)點為第一服務(wù)節(jié)點在業(yè)務(wù)鏈上的前一個服務(wù)節(jié)點,第二流表用于指示第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或者第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點依照第一數(shù)據(jù)流的變更的后續(xù)處理動作轉(zhuǎn)發(fā)第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包。
[0093]其中,由于指示交換節(jié)點對第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包的處理動作,第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包就無需經(jīng)過該第一服務(wù)節(jié)點的處理,而直接由第一服務(wù)節(jié)點對應(yīng)的交換節(jié)點或第二服務(wù)節(jié)點對應(yīng)的交換節(jié)點處理,第一數(shù)據(jù)流的數(shù)據(jù)包處理效率得以提高,同時也降低了第一服務(wù)節(jié)點的處理負(fù)荷。
[0094]下面,結(jié)合附圖對本發(fā)明實施例進(jìn)行詳細(xì)說明。
[0095]圖3為本發(fā)明實施例提供的數(shù)據(jù)通信系統(tǒng)。如圖3所示,該系統(tǒng)包括:一條業(yè)務(wù)鏈上的M個服務(wù)節(jié)點、控制器302和M個服務(wù)節(jié)點中每一個服務(wù)節(jié)點對應(yīng)的交換節(jié)點;該業(yè)務(wù)鏈上的數(shù)據(jù)流需要順序經(jīng)過該M個服務(wù)節(jié)點;M為大于等于I的自然數(shù);其中,
[0096]M個服務(wù)節(jié)點節(jié)點中的第一服務(wù)節(jié)點301a,用于接收該業(yè)務(wù)鏈上的第一數(shù)據(jù)流的數(shù)據(jù)包并進(jìn)行處理;在確定對第一數(shù)據(jù)流的后續(xù)處理動作發(fā)生變更時,向控制器302發(fā)送上報信息,該上報信息用于指示第一數(shù)據(jù)流的變更的后續(xù)處理動作;
[0097]控制器302,用于接收第一服務(wù)節(jié)點301a發(fā)送的上述上報信息,并根據(jù)該上報信息,在第一服務(wù)節(jié)點301a對應(yīng)的交換節(jié)點303a或者第二服務(wù)節(jié)點301b對應(yīng)的交換節(jié)點303b上重新配置第二流表,其中,第二服務(wù)節(jié)點301b為上述M個服務(wù)節(jié)點中,第一服務(wù)節(jié)點301a在該業(yè)務(wù)鏈上的前一個服務(wù)節(jié)點,第二流表用于指示第一服務(wù)節(jié)點301a對應(yīng)的交換節(jié)點303a或者第二服務(wù)節(jié)點301b對應(yīng)的交換節(jié)點303b依照第一數(shù)據(jù)流的變更的后續(xù)處理動作轉(zhuǎn)發(fā)第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包。
[0098]圖3中,各節(jié)點之間的連接關(guān)系僅為示意,其中,控制器302也可如圖2中所示,通過諸如交換機的交換節(jié)點與M個服務(wù)節(jié)點中的各服務(wù)節(jié)點連接。
[0099]圖3中,各服務(wù)節(jié)點與交換節(jié)點之間的連線為虛線,其表示一種對應(yīng)關(guān)系,即服務(wù)節(jié)點與其對應(yīng)的交換節(jié)點對其數(shù)據(jù)包進(jìn)行路由轉(zhuǎn)發(fā)。服務(wù)節(jié)點可與對應(yīng)的交換節(jié)點直接連接,也可通過其他路由設(shè)備、中繼設(shè)備連接。
[0100]圖3中,M個服務(wù)節(jié)點中的各服務(wù)節(jié)點可分別具有自身所對應(yīng)的交換節(jié)點,也可多個服務(wù)節(jié)點對應(yīng)一個交換節(jié)點,如圖2中所示,服務(wù)節(jié)點al和服務(wù)節(jié)點bl均對應(yīng)作為交換節(jié)點的交換機I。
[0101]可選地,第一服務(wù)節(jié)點301a為過濾型的服務(wù)節(jié)點。
[0102]可選地,第一服務(wù)節(jié)點301a向控制器302發(fā)送的該上報信息包括第一數(shù)據(jù)流的特征信息以及第一數(shù)據(jù)流的變更的后續(xù)處理動作指示。
[0103]可選地,上述數(shù)據(jù)流特征信息包括:五元組信息或四元組信息。
[0104]其中,四元組信息包括:源IP地址、目的IP地址、源端口號和目的端口號;
[0105]五元組信息包括:源IP地址、目的IP地址、協(xié)議號、源端口號和目的端口號。
[0106]可選地,第一數(shù)據(jù)流的變更的后續(xù)處理動作指示為:
[0107]第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包繞過第一服務(wù)節(jié)點;或者
[0108]丟棄第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包。
[0109]若第一數(shù)據(jù)流的變更的后續(xù)處理動作指示為:第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包繞過第一服務(wù)節(jié)點,則
[0110]控制器302根據(jù)第一數(shù)據(jù)流的特征信息確定業(yè)務(wù)鏈,從業(yè)務(wù)鏈上確定第三服務(wù)節(jié)點,第三服務(wù)節(jié)點為第一服務(wù)節(jié)點301a在業(yè)務(wù)鏈上的后一個服務(wù)節(jié)點;在第一服務(wù)節(jié)點301a對應(yīng)的交換節(jié)點303a或者第二服務(wù)節(jié)點301b對應(yīng)的交換節(jié)點303b上重新配置第二流表,其中,第二流表包含至少一個新流表項,新流表項包括第一數(shù)據(jù)流的特征信息、入端口和出端口,其中,出端口配置為第三服務(wù)節(jié)點對應(yīng)的交換節(jié)點的端口。
[0111]若第一數(shù)據(jù)流的變更的后續(xù)處理動作指示丟棄第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包,則
[0112]控制器302在第一服務(wù)節(jié)點301a對應(yīng)的交換節(jié)點303a或者第二服務(wù)節(jié)點301b對應(yīng)的交換節(jié)點303b上重新配置第二流表,其中第二流表指示丟棄第一數(shù)據(jù)流的后續(xù)數(shù)據(jù)包。
[0113]可選地,控制器302接收第一服務(wù)節(jié)點301a發(fā)送的上報信息之前,根據(jù)業(yè)務(wù)鏈,確定該業(yè)務(wù)鏈上的