Sign In to Follow Application
View All Documents & Correspondence

Communication Apparatus Control Apparatus Communication System Communication Control Method And Computer Program

Abstract: Instead of causing a control apparatus to grasp and analyze a communication amount per processing rule of a communication apparatus the communication apparatus executes a detailed control operation based on the communication amount. A communication apparatus includes: a packet processing unit that processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set from a control apparatus; a statistical value measurement unit that measures a statistical value obtained from a processing amount corresponding to each of the plurality of processing rules; and a processing rule management unit that determines whether or not each of the processing rules is effective based on the statistical value.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
28 March 2014
Publication Number
11/2015
Publication Type
INA
Invention Field
COMMUNICATION
Status
Email
Parent Application

Applicants

NEC CORPORATION
7 1 Shiba 5 chome Minato ku Tokyo 1088001

Inventors

1. AKIYOSHI Ippei
c/o NEC CORPORATION 7 1 Shiba 5 chome Minato ku Tokyo 1088001
2. MIZUKOSHI Yasuhiro
c/o NEC CORPORATION 7 1 Shiba 5 chome Minato ku Tokyo 1088001
3. ITOH Nobuhiko
c/o NEC CORPORATION 7 1 Shiba 5 chome Minato ku Tokyo 1088001

Specification

Description Title of Invention: COMMUNICATION APPARATUS, CONTROL APPARATUS, COMMUNICATION SYSTEM, COMMU¬ NICATION CONTROL METHOD, AND COMPUTER PROGRAM Field [0001] (CROSS-REFERENCE TO RELATED APPLICATIONS) The present invention is based upon and claims the benefit of the priority of Japanese patent application No. 201 1-206459, filed on September 21, 201 1, the disclosure of which is incorporated herein in its entirety by reference thereto. The present invention relates to a communication apparatus, a control apparatus, a communication system, a communication control method, and a computer program. In particular, it relates to a communication apparatus, a control apparatus, a commu nication system, a communication control method, and a computer program that process an incoming packet in accordance with a control operation from a control apparatus. Background [0002] Recently, a technique referred to as OpenFlow has been proposed (see Patent Literature 1 and Non Patent Literatures 1 and 2). OpenFlow recognizes commu nications as end-to-end flows and performs path control, failure recovery, load balancing, and optimization on a per-flow basis. An OpenFlow switch specified in Non Patent Literature 2 has a secure channel for communication with an OpenFlow controller and operates according to a flow table suitably added or rewritten by the OpenFlow controller. In a flow table, a set of the following three is defined for each flow: match fields that define conditions for matching a packet header; statistical in formation (counters); and instructions that define processing contents (see Fig. 16). [0003] For example, if the OpenFlow switch receives a packet (data packet in Fig. 17), the OpenFlow switch searches the flow table for an entry having a match field that matches header information of the incoming packet. If the OpenFlow switch finds an entry matching the incoming packet as a result of the search, the OpenFlow switch updates the statistical information (counters) and processes the incoming packet based on a processing content (transmission, flooding, drop, etc. of a packet from a specified port) written in the instruction field of the entry. If the OpenFlow switch does not find an entry matching the incoming packet as a result of the search, the OpenFlow switch requests the OpenFlow controller to set an entry via the secure channel. Namely, the OpenFlow switch requests the OpenFlow controller to determine the processing content of the incoming packet ("Packet-In" in Fig. 17). The OpenFlow switch receives a flow entry corresponding to the request and updates the flow table ("FlowMod" in Fig. 17). Thus, by using an entry stored in the flow table as a processing rule, the OpenFlow switch executes packet forwarding. Citation List Patent Literature [0004] PTL 1: International Patent Publication No. WO2008/095010 Non Patent Literature [0005] NPL 1: Nick McKeown, and seven others, "OpenFlow: Enabling Innovation in Campus Networks", [online], [Searched on July 26, 2011], Internet NPL 2: "OpenFlow Switch Specification" Version 1.1.0 Implemented (Wire Protocol 0x02) [online], [Searched on July 26, 201 1], Internet Summary Technical Problem [0006] The disclosures of above patent and non-patent literatures are incorporated herein in their entirety by reference thereto. The following analyses are given by the present invention. The OpenFlow switch in NPLs 1 and 2 has a function of deleting a flow entry if a certain period of time elapses after the flow entry is set or if no relevant packets are supplied for a certain period of time. This deletion is executed based on a hard timeout value and an idle timeout value set for each flow (see "timeout" in Fig. 17 and 5.7 FLOW Removal in NPL 2). [0007] While NPLs 1 and 2 disclose deletion of a flow entry based on a timer, if a flow entry is deleted only based on a timer, flexibility of flow control is insufficient, counted as a problem. [0008] Thus there is a need to realize more flexible flow control. Solution to Problem [0009] According to a first aspect, there is provided a communication apparatus. The com munication apparatus comprises: a packet processing unit that processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set from a control apparatus; a statistical value mea surement unit that measures a statistical value obtained from a processing amount cor responding to each of the plurality of processing rules; and a processing rule management unit that determines whether or not each of the processing rules is effective based on the statistical value. [0010] According to a second aspect of the present invention, there is provided a control apparatus. The control apparatus comprises: a management unit that generates a processing rule for a packet; and a communication unit that transmits the processing rule to a communication apparatus. The communication apparatus processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set, measures a statistical value obtained from a processing amount corresponding to each of the plurality of processing rules, and de termines whether or not each of the processing rules is effective based on the statistical value. [001 1] According to a third aspect of the present invention, there is provided a commu nication system. The communication system includes: a control apparatus that generates a processing rule for a packet; and a communication apparatus. The commu nication apparatus comprises: a packet processing unit that processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set from the control apparatus; a statistical measurement unit that measures a statistical value obtained from a processing amount corresponding to each of the plurality of processing rules; and a processing rule management unit that determines whether or not each of the processing rules is effective based on the sta tistical value. [0012] According to a fourth aspect of the present invention, there is provided a commu nication control method. The communication control method comprises: processing an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set from a control apparatus; measuring a sta tistical value obtained from a processing amount corresponding to each of the plurality of processing rules; and determining whether or not each of the processing rules is effective based on the statistical value. This method is associated with a certain machine, that is, a communication apparatus processing a packet based on a processing rule set by a predetermined control apparatus. [0013] According to a fifth aspect of the present invention, there is provided a program. The program causes a communication apparatus that processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set from a control apparatus to execute processes of: measuring a sta tistical value obtained from a processing amount corresponding to each of the plurality of processing rules; and determining whether or not each of the processing rules is effective based on the statistical value. Meanwhile, this program can be recorded in a computer-readable storage medium which is non-transitory. That is, the present invention may be embodied as a computer program product. Advantageous Effects of Invention [0014] According to the present disclosure, instead of causing a control apparatus to grasp and analyze a communication amount per processing rule of each communication apparatus, the communication apparatus executes a detailed control operation based on the communication amount. Thus the present disclosure contributes to the need in the art. Brief Description of Drawings [0015] [fig.l]Fig. 1 illustrates a configuration example of a communication system according to an exemplary embodiment. [fig.2]Fig. 2 illustrates a configuration example of a processing rule stored in a packet forwarding node according to an exemplary embodiment. [fig.3]Fig. 3 illustrates a configuration example of a communication system according to a first exemplary embodiment. [fig.4]Fig. 4 is a block diagram illustrating a configuration example of a packet forwarding node according to the first exemplary embodiment. [fig.5]Fig. 5 illustrates configuration examples of processing rules stored in a packet forwarding node according to the first exemplary embodiment. [fig.6]Fig. 6 is a block diagram illustrating a configuration example of a control apparatus according to the first exemplary embodiment. [fig.7]Fig. 7 is a sequence diagram illustrating an operation example of the commu nication system according to the first exemplary embodiment of the present invention. [fig.8]Fig. 8 illustrates a configuration example of a communication system according to a second exemplary embodiment. [fig.9]Fig. 9 is a block diagram illustrating a configuration example of a commu nication terminal according to the second exemplary embodiment [fig. 10] Fig. 10 illustrates configuration examples of processing rules stored in the com munication terminal according to the second exemplary embodiment [fig. 1l]Fig. 11 is a sequence diagram illustrating an operation example of the commu nication system according to the second exemplary embodiment [fig. 12] Fig. 12 is a block diagram illustrating a configuration example of a control apparatus according to a third exemplary embodiment. [fig.l3]Fig. 13 is a sequence diagram illustrating an operation example of a commu nication system according to a fourth exemplary embodiment [fig. 14] Fig. 14 is a sequence diagram illustrating an operation example of a commu nication system according to the fourth exemplary embodiment. [fig.l5]Fig. 15 illustrates configuration examples of processing rules stored in a packet forwarding node according to a fifth exemplary embodiment [fig. 16] Fig. 16 illustrates a configuration example of a flow entry stored in an OpenFlow switch in NPL 2. [fig.l7]Fig. 17 is a sequence diagram illustrating an operation example from flow entry setting to flow entry deletion by timeout in NPL 2. [fig.l8]Fig. 18 illustrates a general configuration example of a communication apparatus according to an exemplary embodiment. [fig. 19] Fig. 19 illustrates a general configuration example of a control apparatus according to an exemplary embodiment. Description of Embodiments First, an outline of one exemplary embodiment will be described with reference to the drawings. In the following outline the reference signs are presented solely for better understanding and not intended to limit to the illustrated modes. As illustrated in Fig. 1, one exemplary embodiment can be realized by a configuration including a commu nication terminal 30, packet forwarding nodes 10 communicating with a server 40, and a control apparatus 20 controlling these packet forwarding nodes 10. In the following outline, the reference characters added to various elements are merely used as examples to facilitate understanding of the present disclosure. Namely, these reference characters are not intended to limit the present disclosure to the modes illustrated in the drawings. In addition, the above communication apparatus corresponds to a packet forwarding node. Fig. 18 illustrates a general configuration example of a commu nication apparatus according to an exemplary embodiment. As illustrated in Fig. 18, a communication apparatus of an exemplary embodiment can be realized by a con figuration including a packet processing unit 200, a statistical value measurement unit 201 and a processing rule management unit 202. The packet processing unit 200 processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set from a control apparatus. The statistical value measurement unit 201 measures a statistical value obtained from a processing amount corresponding to each of the plurality of processing rules. The processing rule management unit 202 determines whether or not each of the processing rules is effective based on the statistical value. Fig. 19 illustrates a general con figuration example of a control apparatus according to an exemplary embodiment. As illustrated in Fig. 19, a control apparatus of an exemplary embodiment can be realized by a configuration including a management unit 203 and a communication unit 204. The management unit 203 generates a processing rule for a packet. The commu nication unit 204 transmits said processing rule to a communication apparatus that processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set, measures a statistical value obtained from a processing amount corresponding to each of said plurality of processing rules, and determines whether or not each of the processing rules is effective based on said statistical value. [0017] Fig. 2 illustrates a configuration example of a processing rule 100 stored in a packet forwarding node 10 in Fig. 1. The configuration in Fig. 2 is only an example, and therefore, the configuration of the processing rule is not limited to that illustrated in Fig. 2. The control apparatus 20 sets the processing rule 100 in a packet forwarding node 10. The difference from a flow entry stored in the OpenFlow switch in NPL 2 i l lustrated in Fig. 16 is that, instead of a timeout value, an expiration condition 101 is set in the processing rule 100. The control apparatus 20 sets the processing rule 100 in a packet forwarding node 10. The packet forwarding node 10 refers to the match fields in the processing rules 100, to search for a processing rule 100 matching the incoming packet, and processes the packet in accordance with the instructions in the retrieved processing rule 100. The statistical information (counters) in the processing rule 100 is updated based on packet processing. If no processing rule 100 corresponding to the incoming packet exists, the packet forwarding node 10 requests the control apparatus 20 to set a processing rule. [0018] For example, as the expiration (or invalidation) condition in the processing rule, a threshold indicating a statistical value processable based on the processing rule is set. Of course, as in NPL 2, a time-out value for determining whether a certain period of time has elapsed after a processing rule is set or whether no relevant packets have been supplied for a certain period of time may be set. [0019] The packet forwarding node 10 includes: a packet processing unit processing a packet in accordance with a processing rule matching an incoming packet; and a sta tistical value measurement unit measuring a statistical value based on the processing rule statistical information (counter) up dated based on packet processing. Namely, the statistical value measurement unit measures a statistical value corresponding to packet processing executed by a predetermined processing rule. For example, the statistical value is the number of packets or bytes processed in accordance with a predetermined processing rule. Namely, the statistical value is the amount of communication corre sponding to packets processed in accordance with predetermined processing rules. The statistical value measurement unit may measure a statistical value for each processing rule. Alternatively, the statistical value measurement unit may measure a statistical value that can be obtained based on each of the packet processing amounts by a plurality of processing rules. The statistical value measurement unit may measure a statistical value that can be obtained based on the packet processing amount by a processing rule matching a predetermined condition, among the plurality of processing rules stored in the packet forwarding node 10. By measuring a statistical value that can be obtained based on the packet processing amounts by the plurality of processing rules, the statistical value measurement unit can measure the amount of communication executed by the communication apparatus. For example, the packet processing unit may be realized by using a mechanism similar to that of the OpenFlow switch in NPLs 1 and 2. [0020] In addition, the packet forwarding node 10 according to one exemplary embodiment deletes or invalidates a processing rule based on an expiration condition. The packet forwarding node 10 includes a processing rule management unit that voids (deletes or invalidates, for example) a relevant processing rule, for example, if a statistical value indicated in the statistical information (counters) exceeds a threshold set in the ex piration condition in the relevant processing rule. The processing rule management unit compares a statistical value obtained based on the packet processing amounts by a plurality of processing rules with the expiration conditions in the processing rules. If a statistical value matches an expiration condition, the processing rule management unit voids (deletes or invalidates, for example) a processing rule corresponding to the ex piration condition. Alternatively, if the statistical value matches an expiration condition, the processing rule management unit may rewrite the packet process defined in the processing rule corresponding to the expiration condition to a packet discarding process. Namely, the processing rule management unit determines whether each processing rule is valid or not based on a statistical value. [0021] With this configuration, after communication between the communication terminal 30 and the server 40 is allowed in accordance with a processing rule, if a prede termined data amount is exceeded, the processing rule is deleted. As a result, the packet forwarding node 10 discards a subsequent packet addressed to the server 40 from the communication terminal 30 or forwards the subsequent packet to the control apparatus 20 and requests the control apparatus 20 to set a processing rule. Namely, by deleting a processing rule based on a data amount, the packet forwarding node 10 can block communication of subsequent packets transmitted from the communication terminal 30. Alternatively, the control apparatus 20 can set a processing rule so that subsequent packets from the communication terminal 30 are forwarded through a narrowband communication path. Thus, according to one exemplary embodiment, flexible flow control based on a communication amount can be executed. [0022] The threshold set in the expiration condition field in each processing rule may be a predetermined value. Alternatively, when setting a processing rule, the control apparatus 20 may determine the threshold. In addition, the control apparatus 20 specifies the target packets whose communication amount is measured by using the match fields, the control apparatus 20 may delete or invalidate a processing rule based on the communication amount of the target packets. [0023] While, in the above example, the packet forwarding node 10 deletes or invalidates a processing rule based on the communication amount, the communication terminal 30 may delete or invalidate a processing rule based on the communication amount. The same applies to the following exemplary embodiments described below. Examples of the communication terminal 30 include a mobile phone, a personal computer, a mobile router, and the like. One exemplary embodiment is applicable to a communication apparatus such as the packet forwarding node 10 or the communication terminal 30. [0024] The communication terminal 30 stores the processing rule 100 set by the control apparatus 20 and processes a packet based on the processing rule 100. The commu nication terminal 30 stores the processing rule 100 including the expiration (or in validation) condition 101 and deletes or invalidates a processing rule based on the ex piration condition 101. In the above configuration example, the expiration condition is included in the processing rule. However, the expiration condition may be set in the packet forwarding node, separately from the processing rule. [0025] A communication apparatus, as mentioned in the first aspect above. The communication apparatus, wherein the processing rule management unit determines whether or not each of the processing rules is effective by comparing the statistical value with a predetermined judgment (or reference) condition. The communication apparatus, wherein the processing rule management unit determines whether or not each of the processing rules is effective by comparing the statistical value with a predetermined judgment condition included in each of the processing rules. The communication apparatus, wherein the judgment condition is a predetermined threshold; and the processing rule management unit voids a processing rule, the statistical value of which exceeds the predetermined threshold. The communication apparatus, wherein the predetermined threshold is included in the processing rule set by the control apparatus. The communication apparatus, wherein the processing rule management unit notifies the control apparatus that the processing rule management unit has voided the processing rule. The communication apparatus, wherein the notifying includes information indicating that the processing rule has been voided based on the statistical value. The communication apparatus, wherein the processing rule management unit notifies the control apparatus that the statistical value satisfies the predetermined judgment condition, and voids a processing rule, the statistical value of which satisfies the predetermined judgment condition, based on a response of the control apparatus to the notifying. The communication apparatus, wherein the processing rule management unit voids the processing rule by rewriting a packet processing content of the processing rule to packet dropping. The communication apparatus, comprising: a first processing rule table storing a processing rule for executing flow control based on the statistical value; and a second processing rule table storing a processing rule for determining a processing content applied to a packet judged in the first processing rule table to be capable of communicating. A control apparatus, as mentioned in the second aspect above. The control apparatus, wherein the communication unit transmits a predetermined judgment (or reference) condition for determining by the communication terminal whether or not each of the processing rules is effective to the communication terminal. The control apparatus, wherein the communication unit lets a predetermined judgment condition for de termining whether or not each of the processing rules is effective be included in the processing rule, and transmits the processing rule to the communication terminal. A communication system, as mentioned in the third aspect above. A communication control method, as mentioned in the fourth aspect above. A program, as mentioned in the fifth aspect above. [01 16] In addition, in the above exemplary embodiments, a processing rule is deleted by using an expiration condition of the processing rule. However, the processing content of the processing rule may be rewritten to packet drop or the like. [0117] The entire disclosures of the above PTL and NPLs are incorporated herein by reference thereto. Variations and adjustments of the exemplary embodiments are possible within the scope of the overall disclosure (including the claims) of the present invention and based on the basic technical concept of the present invention. Various combinations and selections of various disclosed elements (elements in each claim, example, drawing, etc.) are possible within the scope of the claims of the present invention. That is, the present invention of course includes various variations and mod ifications that could be made by those skilled in the art according to the overall disclosure including the claims and the technical concept. Reference Signs List 10, 10-1 to 10-3 packet forwarding node 11, 204 communication unit 12 table management unit 13 table database (table DB) 14 forward processing unit 20, 20A, 20B control apparatus 2 1 expiration (invalidation) condition management unit 2 1A contract information management unit 22 communication terminal location management unit 23 topology management unit 24 path and action calculation unit 25 packet forwarding node management unit 26 processing rule database (processing rule DB) 27, 202 processing rule management unit 28 control message processing unit 29 node communication unit 30, 30A communication terminal 32 protocol stack unit 33 packet forwarding function unit 40 server 50 accounting server 100 processing rule 101 expiration (invalidation) condition 141 table search unit 142 action execution unit 200 packet processing unit 201 statistical value measurement unit 202 processing rule management unit 203 management unit 3 11 to 3 1n application unit PCT/JP2012/006012 Claims A communication apparatus, comprising: a packet processing unit that processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set from a control apparatus; a statistical value measurement unit that measures a statistical value obtained from a processing amount corresponding to each of said plurality of processing rules; and a processing rule management unit that determines whether or not each of the processing rules is effective based on said statistical value. The communication apparatus according to claim 1, wherein said processing rule management unit determines whether or not each of the processing rules is effective by comparing said statistical value with a predetermined judgment condition. The communication apparatus according to claim 1, wherein said processing rule management unit determines whether or not each of the processing rules is effective by comparing said statistical value with a predetermined judgment condition included in each of the processing rules. The communication apparatus according to claim 2 or 3, wherein said judgment condition is a predetermined threshold; and said processing rule management unit voids a processing rule, said sta tistical value of which exceeds the predetermined threshold. The communication apparatus according to claim 4, wherein said predetermined threshold is included in the processing rule set by said control apparatus. The communication apparatus according to any one of claims 1 to 5, wherein said processing rule management unit notifies said control apparatus that said processing rule management unit has voided said processing rule. The communication apparatus according to claim 6, wherein said notifying includes information indicating that said processing rule has been voided based on said statistical value. The communication apparatus according to any one of claims 2 to 7, wherein said processing rule management unit notifies said control apparatus WO 2013/042375 PCT/JP2012/006012 that said statistical value satisfies said predetermined judgment condition, and voids a processing rule, said statistical value of which satisfies said predetermined judgment condition, based on a response of said control apparatus to said notifying. [Claim 9] The communication apparatus according to any one of claims 1 to 8, wherein said processing rule management unit voids the processing rule by rewriting a packet processing content of said processing rule to packet dropping. [Claim 10] The communication apparatus according to any one of claims 1 to 9, further comprising: a first processing rule table that stores a processing rule for executing flow control based on said statistical value; and a second processing rule table that stores a processing rule for de termining a processing content applied to a packet judged in said first processing rule table to be capable of communicating. [Claim 11] A control apparatus, comprising: a management unit that generates a processing rule for a packet; and a communication unit that transmits said processing rule to a commu nication apparatus, wherein the communication apparatus processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set, measures a statistical value obtained from a processing amount corresponding to each of said plurality of processing rules, and determines whether or not each of the processing rules is effective based on said statistical value. [Claim 12] The control apparatus according to claim 11, wherein said communication unit transmits a predetermined judgment condition for determining by said communication terminal whether or not each of the processing rules is effective to said communication terminal. [Claim 13] The control apparatus according to claim 11, wherein said communication unit lets a predetermined judgment condition for determining whether or not each of the processing rules is effective be included in said processing rule, and transmits said processing rule to said communication terminal. [Claim 14] A communication system, including: a control apparatus that generates a processing rule for a packet; and a communication apparatus, comprising: WO 2013/042375 PCT/JP2012/006012 a packet processing unit that processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set from the control apparatus; a statistical measurement unit that measures a statistical value obtained from a processing amount corresponding to each of said plurality of processing rules; and a processing rule management unit that determines whether or not each of the processing rules is effective based on said statistical value. [Claim 15] A communication control method, comprising: processing an incoming packet based on a processing rule corre sponding to the incoming packet among a plurality of processing rules set from a control apparatus; measuring a statistical value obtained from a processing amount corre sponding to each of said plurality of processing rules; and determining whether or not each of the processing rules is effective based on said statistical value. [Claim 16] A program, causing a communication apparatus that processes an incoming packet based on a processing rule corresponding to the incoming packet among a plurality of processing rules set from a control apparatus to execute processes of: measuring a statistical value obtained from a processing amount corre sponding to each of said plurality of processing rules; and determining whether or not each of the processing rules is effective based on said statistical value.

Documents