The present invention based on and require the priority for the Japanese patent application No.2012-202112 that September in 2012 submits on the 13rdBenefit, it is incorporated by reference in its entirety disclosed in it herein.
Embodiment
<First exemplary embodiment>
According to the first exemplary embodiment of the disclosure, control device can by DB (database) is operable toCentralized system controls network, and the DB stores the control relevant with the configuration of network and the method handled the packet in networkInformation.For example, DB is by key-value storage configuration, and operated by predetermined DB operational orders.Can be by simply grasping(such as order to DB input information and from the order of DB output informations and for deleting the information in DB) is ordered to comeOperate DB., can be by being combined to match somebody with somebody to operate DB module by operational order in the first exemplary embodimentPut control device.Therefore, can be by simple DB operational orders come to being entered according to the control device of the first exemplary embodimentRow programming, without using associated API perhaps polygamma function.
Next, the first exemplary embodiment will be described in detail with reference to the attached drawings.Fig. 1 is shown to be shown according to the first of the disclosureThe configuration of the communication system of example property embodiment.In Fig. 1, the communication system is by control device 1, network DB 2 and including multipleWhat the network 4 including node configured.
Control device 1 controls network 4 by being operated to network DB 2 in a centralised manner.
Each node 3 in network 4 handles packet according to control device 1.
For example, network DB 2 is that configured database is stored by key-value.For example, network DB2 stores mark in couplesInformation (key) and data (value).In network DB 2, identification information (key) is set for each data (value).
Fig. 2 shows the configuration of control device 1.In fig. 2, control device 1 includes DB operation logics unit 11, network controlUnit 12 processed and the DB interface units 10 for being connected to network DB 2.
DB interface units 10 have to be operated by using the predetermined DB operational orders issued by DB operation logics unit 11Network DB 2 function.Alternatively, control device 1 can be configured by combining multiple DB operation logics units 11.Therefore, DBInterface unit 10 may be coupled to multiple DB operation logics units 11 (as the part indicated by the dotted line in Fig. 2).DB interface listsMember 10 can operate network DB 2 by using the order issued from multiple DB operation logics units 11.DB interface units 10 canWith the combination based on multiple DB operation logics units 11 in network DB 2 come configuration information.That is, operator can pass throughThe combination for changing the multiple DB operation logics units 11 for being connected to DB interface units 10 easily varies network DB 2 configuration.Therefore, control device 1 easily can be configured to be suitable for the type of network 4 or be suitable for what is used in network 4 by operatorCommunication protocol.
The example of order for operating network DB 2 will be listed below.However, because being example to issue orders, according to thisDisclosed DB operational orders are not limited to the example below.
Information input/output commands
Information deletion order
Notice subscribes to order
Information input/output commands are used to input information to network DB 2.In addition, information input/output commands be used for fromNetwork DB 2 obtains information.For example, DB interface units 10 are obtained and marked from network DB 2 using order " get (acquisition) (key) "Know the corresponding data (value) of information (key).In addition, DB interface units 10 will be with using order " put (setting) (key, value) "The corresponding data (value) of identification information (key) are input to network DB 2.If list data (value), DB interface units 10The input or defeated of data (value) can be performed using order " push (pushing away) (key, value) " or order " pop (bullet) (key, value) "Go out.That is, data may be used as queue or stack.
Information deletion order is used to delete information from network DB 2.For example, DB interface units 10 use order " delete(deletion) (key) " deletes the data (value) corresponding with identification information (key) from network DB 2.
It is used to subscribe to for example, notice subscribes to order.Using the order, if performed on network DB 2 and specified markKnow the corresponding operation of information (key), then network DB 2 notifies the data corresponding with identification information (key) to DB interface units 10(value).For example, DB interface units 10 to network DB 2 send order " subscribe (subscriptions) (key) ", and if perform andThe corresponding operation of identification information (key), then DB interface units 10 receive the number corresponding with identification information (key) from network DB 2According to (value).Key pattern (such as asterisk wildcard or regular-expression) can be used for identification information.For example, network DB 2 can use life" publish (issue) (key, value, op) " is made to notify the data (value) corresponding with identification information to DB interface units 10.WithThe corresponding operation of key (including put/get/delete) can be included in " op ".After notification, DB operation logics listMember 11 can identify the addition, acquisition or deletion of the key corresponding with identification information.
Multiple DB operation logics units 11 can share public DB operational orders.By allowing multiple DB operation logics listsMember 11 operates network DB 2 with common command, and Virtual network operator can easily extend DB operation logics unit 11.It that is to saySay, when the DB operation logics unit 11 with New function is added into control device 1, operator need not newly design DB operationsInterface between logic unit 11 and network DB 2.
DB operation logics unit 11 have the pre-defined algorithm based on the type definition according to DB operation logics unit 11 come pairThe function that the information being stored in network DB 2 is operated.It will be obtained for example, DB operation logics unit 11 has from network 4Information is input to network DB 2 function via DB interface units 10.
There is network control unit 12 the network DB 2 configured based on the operation by DB operation logics unit 11 to controlThe function of network 4 processed.For example, network control unit 12 can change control net according to the communication protocol used in network 4The method of network 4.
Fig. 3 shows network DB 2 configuration.Fig. 3 configuration is an example, therefore network DB 2 configuration is unlimitedConfiguration in Fig. 3.
For example, network DB 2 includes the topological information (topology information on network 4;The first information), on packet atInformation (the packet transaction information of reason method;Second information) and information (grouping information on packet;Three, the 4th information).
For example, topology information is included on the information (nodal information) of each node 3 present in network 4 and on eachThe information (link information) of link between node pair.For example, nodal information includes the identifier and COM1 on node 3Information.For example, link information includes:The identifier of link, be connected to link node 3 identifier and be connected to chainThe identifier of the COM1 of the node 3 on road.
Packet transaction information includes stream information.Stream information is the information on being grouped affiliated stream.Flow table is shown with predeterminedThe communication packet group of attribute (attribute that can be identified for that based on communications destination, source etc.).For example, stream information includes matching barPart, routing information and processing information.For example, matching condition represents the condition for identifying the packet corresponding with stream information.ExampleSuch as, routing information represents to belong to the path that the packet of the stream to match with matching condition is passed through.For example, processing information represents rightThe processing (such as rewriteeing header message) performed by the packet in the path corresponding with routing information.
Grouping information includes input packet information and output grouping information.Input packet information is point received from network 4In group with all unmatched packet of the matching condition in any stream information.Output grouping information is point for needing to export from network 4Group.
For example, the topology information stored in network DB 2, packet transaction information and input packet information can be to fix in advanceFormula standardizes.By being standardized to the information stored in network DB 2, network DB 2 can be with meeting the nets of various agreementsNetwork has compatibility.
Fig. 4 to 6 shows the operation according to the first exemplary embodiment.Because Fig. 4 to 6 operation is example, according to thisDisclosed operation is not limited to operation shown in the drawings.
Fig. 4 to 6 is shown by multiple DB operation logics units 11 (" DB operation logic units 11-1 and 11-2 ") to networkThe example that DB 2 is operated.DB operation logic units 11-1 has to be operated and input/output is on opening up to network DB 2The function for the information flutterred.DB operation logic units 11-2 has based on the information stored in network DB 2 to generate packet transactionThe function of information.
Fig. 4 shows that DB operation logic unit 11-1 manage the topological of network 4 by being operable to network DB 2Operation.
The DB operation logic unit 11-1 of control device 1 are collected on topology via network control unit 12 from network 4Information (S10).Information on topology is collected by using such as LLDP (Link Layer Discovery Protocol).LLDP is on networkDevice information is exchanged with neighboring devices using it and collects the information of the neighboring devices on the COM1 that is connected to device.For example, network control unit 12 is collected from each node 3 passes through the letter collected by LLDP via each node 3 in network 4Breath.
For example, DB operation logic unit 11-1 are based on the information collected via network control unit 12, with network DB 2Corresponding predetermined format generation topology information (S11).
By using DB operational orders (information input/output commands), DB operation logic unit 11-1 are via DB interface listsMember 10 stores the topology information generated into network DB 2 (S12).
Fig. 5 show DB operation logic unit 11-2 by network DB 2 be operable to generation with to being flowed in network 4The relevant information of method that dynamic packet is handled.
By using DB operational orders (information input/output commands), the DB operation logic units 11-2 of control device 1 is passed throughBy DB interface units 10 topology information (S13) is obtained from network DB 2.
DB operation logic units 11-2 can subscribe to order to preset network DB2 by using notice so that when topology is believedWhen breath changes, network DB 2 notifies the change of topology information to DB operation logic units 11-2.When topology information changes, networkDB 2 notifies the change of topology information via DB interface units 10 to DB operation logic units 11-2.
Based on the topology information obtained from network DB 2, DB operation logic unit 11-2 are with corresponding with network DB 2 pre-Fix formula, generation packet transaction information (S14).For example, DB operation logic units 11-2 calculates packet forwarding path (in Fig. 3" routing information ") and store the forward-path calculated into packet transaction information.For example, DB operation logic units 11-2 leads toCross using predetermined calculating logic to calculate forward-path.For example, DB operation logic unit 11-2 are by from source to destination mostShort path sets and arrives packet forwarding path.
In addition, group match condition and processing information (such as rewriteeing stem) storage are arrived and divided by DB operation logic unit 11-2In group processing information.
By using DB operational orders (information input/output commands), DB operation logic unit 11-2 are via DB interface listsMember 10 stores the packet transaction information generated into network DB 2 (S15).
Fig. 6 shows that control device 1 passes through the operation for the node 3 being operable to network DB 2 in control network 4.
By using DB operational orders (information input/output commands), the DB operation logic units 11-1 of control device 1 is passed throughBy DB interface units 10 packet transaction information (S16) is obtained from network DB2.
DB operation logic units 11-1 can subscribe to order to preset network DB2 by using notice so that at packetWhen managing information change, changes of the network DB 2 to DB operation logic unit 11-1 notice packet processing informations.For example, DB operations are patrolledCollect unit 11-1 and subscribe to order using notice the notification condition notified for the renewal to network DB 2 setting is arrived into netIn network DB 2.When performing the renewal to match with the default notification condition, network DB 2 leads to DB operation logic units 11-2Hownet network DB 2 more new content.For example, if packet transaction information changes, network DB 2 is via DB interface units 10 to DBThe change of operation logic unit 11-1 notice packet processing informations.
Based on packet transaction information, the processing that DB operation logic units 11-1 generations will be set in the node 3 of network 4 refers toMake (information for defining the packet processing method performed by node 3) and be arranged on the process instruction via network control unit 12In node 3.
For example, the routing information in DB operation logic unit 11-1 reference packet processing informations, and process instruction is setIn each node 3 on to the forward-path corresponding with path (Path) information.For example, DB operation logic units 11-1 willDefine the process instruction setting forwarded to the packet from the COM1 corresponding with forward-path and arrive each node 3In so that forward packet along the forward-path corresponding with routing information.
In the operation as shown in figure 4 above to 6, by being operated to network DB 2, control device 1 can be with collectionMiddle mode controls the packet transaction in network 4.
As described above, operating network DB 2 by using DB operational orders, control device 1 can control network 4.CauseThis, the operator of network 4 can be programmed by merging network DB 2 operational order to control device 1.DB operation livesQuantity of the quantity of order much smaller than the order needed for API or associated function.Therefore, the operator of network 4 can be easyGround is programmed to control device 1, without learning higher level knowledge and technology.
<Second exemplary embodiment>
Next, the second exemplary embodiment that the disclosure will be described.In the second exemplary embodiment, it will be described inNetwork DB 2 configuration example and the example of DB operational orders.
Fig. 7 to 9 shows network DB 2 configuration.Fig. 7 to 9 configuration is an example, therefore network DB 2 configurationThe configuration being not limited in Fig. 7 to 9.
In addition, in the second exemplary embodiment, network DB2 is by key-value storage configuration.However, it is possible to pass throughThe modes different from key-value storage carry out Configuration network DB 2.
Fig. 7 shows the topology information stored in network DB 2.Pass through the identification information relevant with the node 3 in network 4(key) and link between node 3 relevant identification information (key) configures topology information.Each identification information (key) and numberIt is associated according to (value).
For example, the data (value) corresponding with identification information "/nodes " represent the identifier of node 3 present in network 4(node ID).In Fig. 7 " 1,2,3,4 ... } " represent node identifiers.
" [node_id] " of identification information "/nodes/ [node_id] " represents the mark of one of node 3 present in network 4Know symbol.For example, the data (value) corresponding with identification information "/nodes/ [node_id] " represent to control net with working as control device 1The relevant information of used identifier or the information relevant with the manufacturer of node 3 during node 3 in network 4.When control device 1The used identifier identifier associated from information identified above "/nodes " is different when controlling the node 3 in network 4.In open flow agreement, when control device 1 controls the node 3 in network 4, used identifier is referred to as such as DPID (dataPath ID).
For example, the data (value) corresponding with identification information "/nodes/ [node_id]/ports " represent and " [node_Id] " the list of the identifier of the COM1 of corresponding node 3.In Fig. 7 " 1,2,3,4 ... } " represent COM1Identifier list.
" [port_id] " of identification information "/nodes/ [node_id]/ports/ [port_id] " represent instruction with "The identifier of one of the COM1 of node 3 corresponding [node_id] ".For example, identification information "/nodes/ [node_id]/Ports/ [port_id] " data (value) include port status (such as link uplink state or downlink state), portCommunication bandwidth etc..
For example, the data (value) corresponding with identification information "/links " represent the chain between node 3 present in network 4The identifier on road.In Fig. 7 " 1,2,3,4 ... } " represent the list of link identifier.
" [link_id] " of identification information "/links/ [link_id] " represents the chain between node present in network 4The identifier on one of road.For example, the data (value) corresponding with identification information "/links/ [link_id] " include with linkThe relevant information of node and the information relevant with the COM1 of these nodes at both ends.For example, in the figure 7, data (value)The identifier (" of destination node is grouped in the identifier (" src_node_id ") and link of source node including being grouped in linkdst_node_id″).In the figure 7, " src_port_id " represents the COM1 of the node corresponding with " src_node_id "In the port corresponding with link identifier.In the figure 7, " dst_port_id " is represented corresponding with " dst_node_id "The identifier of the port corresponding with link in the COM1 of node.
Network DB 2 is by using these data base entries shown in Fig. 7, the topology of management network 4.By using DBEntry shown in operational order and operation diagram 7, DB operation logics unit 11 can manage and operate the topology of network 4.
Fig. 8 shows the packet transaction information stored in network DB 2.For example, packet transaction information includes:Matching condition(Filter filters), the matching condition are used to identify the packet corresponding with packet transaction information;Forward-path (Path roadsFootpath), the forward-path is directed to the packet to match with matching condition;And predetermined process (Action actions), the predetermined processTo be applied to the packet to match with matching condition.
The data (value) corresponding with identification information ("/flows ") represent the identifier of packet transaction information.In Fig. 8 "1,2,3,4 ... } " represent the list of the identifier of packet transaction information.
" [flow_id] " of identification information ("/flows/ [flow_id] ") represents the mark of one of packet transaction informationSymbol.For example, the data (value) of identification information "/flows/ [flow_id] " are corresponding with packet transaction information including being used for markPacket matching condition, the packet transaction information corresponds to " [flow_id] ".It is for example, unknown when receiving processing methodDuring packet, the DB operation logics unit 11 of control device 1 using DB operational orders come in network DB 2 search have and packetThe packet transaction information of corresponding matching condition.Network DB 2 refers to the information (such as header message) relevant with packet, andTo packet transaction information of the notice of DB operation logics unit 11 with the matching condition corresponding with packet.Based on point providedGroup processing information, DB operation logics unit 11 indicate the processing packet of node 3 in network 4.
Situations below be present:Network DB 2, which does not have, to be used for reference to the information (such as header message) relevant with packet and searchesRigging has the DB operational orders of the packet transaction information of the matching condition corresponding with packet.In these cases, control device 1DB operation logics unit 11 can read required packet transaction information and prior from network DB 2 using DB operational ordersStore the information.By this way, DB operation logics unit 11 can by simply refer to the information relevant with packet, it is determined thatCorresponding packet transaction information.Based on identified packet transaction information, DB operation logics unit 11 provides and in network 4The relevant instruction of the packet transaction of node 3.
The data (value) corresponding with identification information "/flows/ [flow_id] " include:For matching with matching conditionPacket forward-path (" Path paths ") and will pair with matching condition match packet perform a processing (" Action is movedMake ").Node 3 of the DB operation logics unit 11 into network 4 notifies the instruction for forwarding packet so that along packet transactionForward-path forwarding packet defined in information.If in addition, will to packet perform processing (" Action actions ") exist,DB operation logics unit 11 indicates that the node 3 in network 4 performs processing.
Fig. 9 shows the data relevant (as the undetermined packet of processing method) with the packet to the forwarding of control device 1Storehouse entry.The information relevant with the undetermined packet of processing method can be managed by network DB 2 as data base entries.
The data (value) corresponding with identification information "/packets/in " represent to control device 1 forward packet (asThe undetermined packet of processing method) identifier list.For example, the DB by using the end for value to be added to listOperational order " push_tail " and the DB operational orders " pop_head " for the top extraction of values from list, identifier listIt is used as the queue of FIFO (first in first out).
For example, the data (value) of identification information "/packets/in/ [packet_id] " include:The identifier of packet, divideGroup the receptions time, have been received by packet node 3 identifier and packet receiving node 3 COM1 identifier.
If for example, packet is forwarded to control device 1, DB operation logics unit 11 using DB operational orders come by withRelevant information is grouped to store into network DB 2.
Data (value) corresponding with identification information "/packets/out " represent to have determined processing method and need fromThe identifier list for the packet that control device 1 returns to network 4.For example, deposited in the queue corresponding with "/packets/in "In the packet of storage, the packet storage for having determined processing method is arrived in the queue corresponding with "/packets/out ".For example,The data (value) corresponding with "/packets/out " are list and are used as fifo type queue.
For example, the data (value) corresponding with identification information "/packets/out/ [packet_id] " include:From controlDevice 1 to the identifier of node of its return packet, in identifier from the COM1 of node to the port of its return packet andThe data (being grouped itself) stored in a packet.
For example, DB operation logics unit 11 subscribes to order to operate network DB 2 using notice so that if packet storageIn the queue corresponding with "/packets/out " and if operated key "/packets/out ", then DB operation logics are notifiedUnit 11.If packet be stored in queue (i.e. if with "/packets/out " and "/packets/out/ [packet_Id] " corresponding entry is updated), then network DB 2 to DB operation logics unit 11 notice pair with "/packets/out/The renewal of data corresponding [packet_id] ".
Point of storage in identification information "/packets/out/ " and identification information "/packets/out/ [packet_id] "Group can not correspond in the queue corresponding with "/packets/in " packet stored.By this way, control device 1 canWith effectively output grouping.
Figure 10 and 11 shows the used DB operational orders when DB operation logics unit 11 operates network DB 2.Such as figureShown in 10 and 11, ordered by using push (pushing away) orders and pop (bullet), can perform and such as be inserted to the optional position of listData and the operation from the optional position of list acquisition data.In addition, for example, the use of control device 1 is wanted to have in notification databaseThere is the subscription order of the change of the entry of particular key.In addition, for example, use such as get (acquisition), put (setting) and deleteThe order of (deletion) etc. come obtain, set and delete the details relevant with node, link, stream and packet or node, link,Stream and the value of packet.
By using DB operational orders shown in figures 10 and 11 and operate the network DB 2 of configuration as shown in Figs. 7-9,DB operation logics unit 11 can control network 4 in a centralised manner.Therefore, by using DB operational orders and to network DB's 2Operational order merges, and operator can be programmed to control device 1.The quantity of DB operational orders is much smaller than common programmingUsed in API or the order needed for associated function quantity.Therefore, compared with common programming, operator can be withEasily control device 1 is programmed.
<3rd exemplary embodiment>
Next, the 3rd exemplary embodiment that the disclosure will be described.It can be realized by the module with various functionsDB operation logics unit 11.In the 3rd exemplary embodiment, open flows control unit 11A is arranged to DB operation logic units11。
Figure 12 shows the configuration of the system according to the 3rd exemplary embodiment.Open flows control unit 11A, which has, to be based onOpen flow agreement controls the function of network 4.It it will be assumed to describe by node 3 Configuration network 4 compatible with open flow agreementThree exemplary embodiments.In the 3rd exemplary embodiment, if desired, network 4 will be referred to as opening flow network.
Figure 13 shows open flows control unit 11A configuration.Open flows control unit 11A includes:Topological processing unit110th, stream processing unit 111 and packet processing unit 112.
Topological processing unit 110 is operated using DB operational orders via DB interface units 10 to network DB2.ExampleSuch as, topological processing unit 110 is operated to network DB 2 so that topology information is set into network DB 2.In addition, for example, open upProcessing unit 110 is flutterred to operate network DB 2 to obtain topology information from network DB 2.
Figure 14 shows the operation example that topological processing unit 110 is operated to network DB 2.Topological processing unit 110It is added to item list using order " push_tail (/nodes) " to be added to the identifier of the node of open flow network "/Nodes " end.In addition, topological processing unit 110 uses order " put (/nodes/ [node_id],<node_info>)″Will be with "<node_info>" (variable as order) corresponding information is added to entry "/nodes/ [node_id] "([node_id] is added to the identifier of the node of entry "/nodes ").For example, topological processing unit 110 is by the first exampleInformation described in property embodiment is added to entry "/nodes/ [node_id] ".
By using order " push_tail (/nodes,<node_info>) " rather than ordering above " push_tail (/Nodes) ", above sequence of maneuvers can jointly be performed.In such a case, it is possible to omit to ordering " put (/nodes/[node_id],<node_info>) " execution.
Topological processing unit 110 is added to the node of open flow network using order " push_tail (/links) "Between the identifier of link be added to item list "/links " end.In addition, topological processing unit 110 uses order " put (/Links/ [link_id],<link_info>) " will with "<link_info>" (variable as order) corresponding informationIt is added to entry "/links/ [link_id] " ([link_id] is added to the identifier of the link of entry "/links ").ExampleSuch as, the information described in the first exemplary embodiment is added to entry "/links/ [link_id] " by topological processing unit 110.
By using order " push_tail (/links,<link_info>) " rather than ordering above " push_tail (/Links) ", above sequence of maneuvers can jointly be performed.In such a case, it is possible to omit to ordering " put (/links/[link_id],<link_info>) " execution.
If deleting a certain node or link from open flow network, topological processing unit 110 uses order " pop_At " deletes the identifier of deleted node or link from node or list of link.If deleted from open flow networkA certain node or link, then topological processing unit 110 using order " delete " come from network DB 2 delete with it is deletedNode or the corresponding entry of link.
By using order " pop_at ", above sequence of maneuvers can be jointly performed.Therefore, it is convenient to omit to order "Delete " execution.
By using order " get ", topological processing unit 110 obtains the number corresponding with specified identification information (key)According to (value).
Stream processing unit 111 is operated using DB operational orders via DB interface units 10 to network DB 2.For example,Stream processing unit 111 is operated to network DB 2 so that packet transaction information is set into network DB 2.In addition, for example, streamProcessing unit 111 is operable to search for point corresponding with the packet that processing method is unknown in network DB 2 to network DB 2Group processing information.
Figure 15 shows the operation example that stream processing unit 111 is operated to network DB 2.If control device 1 is from openingRelease network and receive the unknown packet of processing method, then stream processing unit 111 is received for searching from packet processing unit 112Request of the rope for the processing method of packet.For example, packet processing unit 112 uses order " get_matching_flow (<packet_info>) " to ask processing method of the search of stream processing unit 111 for packet.Variable as order "<packet_info>" it is the relevant information of the packet unknown with processing method (such as header message or be grouped itself).
Based on the request from packet processing unit 112, stream processing unit 111 searched in network DB 2 with "<packet_info>" the packet transaction information of corresponding matching condition.Stream processing unit 111 receives acquired from network DB 2Packet transaction information identifier (" flow_id ").For example, based on the identifier received and by using order " get (/Flows/ [flow_id]) ", stream processing unit 111 obtains packet transaction information.Stream processing unit 111 is to packet processing unit112 provide the packet transaction information.If there is no this packet transaction information matched with search condition, then stream processing unit111 notify the effect to packet processing unit 112.
If network DB 2 do not have be used for search for have with "<packet_info>" the packet of corresponding matching conditionThe order of processing information, then stream processing unit 111 can be read using DB operational orders from network DB 2 at required packetReason information is simultaneously previously stored the information.By this way, stream processing unit 11 can be come by reference to the information relevant with packetIt is determined that corresponding packet transaction information.
If there is no corresponding packet transaction information, then packet processing unit 112, which uses, orders " push_tail (/Packets/in,<packet_info>) " packet received is added to network DB 2.
If there is corresponding packet transaction information, then packet processing unit 112 ask stream processing unit 111 to be grouped intoRow processing.
Based on acquired packet transaction information, stream processing unit 111 operates packet transaction (i.e. packet transaction rule)In the node 3 that open flow network is set, and make appropriate node of the node 3 based on the packet transaction information from node 3 simultaneouslyCOM1 exports received packet.
For example, packet transaction operation is the information for being taken based on form defined in open flow agreement, and for making node 3Processing packet.Packet transaction operation includes:For identify the identification condition of packet that is received by node 3 and for pair and identification stripThe method that the packet that part matches is handled.Stream processing unit 111 into node 3, and saves packet transaction operation settingPoint 3 stores set packet transaction operation in memory.Node 3 is searched for the packet with being received in memoryThe packet transaction operation of the identification condition to match.If node 3 finds have and institute based on the packet transaction operation retrievedThe packet transaction operation for the identification condition that the packet of reception matches, then node 3 packet received is handled (such as logicalCross and specified COM1 forwarding packet is operated by packet transaction).
For example, the matching condition that stream processing unit 111 is included based on packet transaction information, the identification condition is set and arrivedIn packet transaction operation.
The routing information (Path paths) included based on packet transaction information, the open drift net of the identification of stream processing unit 111Packet forwarding path in network.Stream processing unit 111 handles operation to the notice packet of node 3 on packet forwarding path.It is based onPacket transaction operates, and stream processing unit 111 can indicate each node 3 on forward-path along relative with packet transaction informationThe forward-path answered is grouped to forward.That is, when stream processing unit 111 indicates the forwarding packet of node 3, each node 3The packet transaction operation of middle setting includes being used for the method for forwarding packet by the COM1 corresponding with forward-path.
If packet transaction information includes for example needing the predetermined process (Action actions) for performing packet, stream processUnit 111 determines to need the node 3 for performing predetermined process (Action actions).Stream processing unit 111 is in identified node 3Set packet transaction to operate, be confirmed as defined in packet transaction operation predetermined process processing (such as stem rewrite orEncapsulation/decapsulation).
For example, stream processing unit 111 uses order " subscribe subscription " so that predetermined when being performed in network DB 2When updating (renewal of packet transaction information or link information), network DB 2 notifies relevant with renewal to stream processing unit 111Information.If by ordering " subscriptions " information for specifying to be updated, network DB 2 is using ordering " publish " come to stream process listMember 111 notifies the information.For example, based on the information provided by using order " publish ", the determination of stream processing unit 111 isConfigured packet transaction operation in the no node 3 changed in open flow network.If the change of packet transaction operation isRequired, then stream processing unit 111 generates new packet transaction operation and by the new packet transaction operation setting into node 3.
If such as the link in open flow network or node are deleted, stream processing unit 111 is deleted from network DB 2Except the packet transaction information corresponding with deleted link or node.For example, stream processing unit 111 is deleted from network DB 2Packet transaction information including the forward-path of deleted link or inserting knot thereon.
Stream processing unit 111 is deleted with needing what is deleted from the list of packet transaction information using order " pop_at "The corresponding identifier of packet transaction information.Stream processing unit 111 is deleted and packet transaction information using order " delete "Corresponding entry ("/flows/ [flow_id] ").For example, the generation of stream processing unit 111 substitutes deleted packet transaction letterBreath new packet transaction information, using order " push_at " and by the packet transaction information generated storage arrive network DB 2In.
By using order " pop_at ", above sequence of maneuvers can be jointly performed.Therefore, it is convenient to omit to order "Delete " execution.
Packet processing unit 112 is operated using DB operational orders via DB interface units 10 to network DB2.ExampleSuch as, packet processing unit 112 is operated to network DB 2 so that the information relevant with packet is set into network DB 2.
Figure 16 shows the operation example that packet processing unit 112 is operated to network DB 2.For example, work as from open flowsWhen network receives processing method unknown packet, packet processing unit 112 is asked corresponding with packet to stream processing unit 111Processing method.As described above, for example, packet processing unit 112 uses order " get_matching_flow (<packet_info>) " to ask stream processing unit 111 to search for packet processing method.
If stream processing unit 111 notifies the packet transaction information corresponding with packet not deposit to packet processing unit 112Then the information relevant with packet is registered in network DB 2 by packet processing unit 112.For example, packet processing unit 112 makesWith order " push_tail (/packets/in) " by the identifier registration of packet to item list "/packets/in " endTail.In addition, packet processing unit 112 uses order " put (/packets/in/ [packet_id],<packet_info>) " comeUsing with the variable as order "<packet_info>" corresponding information is added to entry "/packets/in/[packet_id] " ([packet_id] is added to the identifier of entry/packets/in packet).
By using order " push_tail (/packets/in,<node_info>) " rather than ordering above " push_Tail (/packets/in) ", can jointly perform above sequence of maneuvers.In such a case, it is possible to omit to ordering " put(/packets/in/ [node_id],<packet_info>) " execution.
If generating the corresponding packet transaction information of packet with being added to entry "/packets/in ", will pointGroup is added to entry "/packets/out ".For example, packet processing unit 112 sets network DB 2 in advance so that if usedOrder " subscribe " and if packet is added to entry "/packets/out ", then network DB 2 is to packet transactionUnit 112 notifies the information relevant with the renewal of entry "/packets/out ".For example, packet processing unit 112 uses order "Publish " so that if having updated entry "/packets/out ", packet processing unit 112 receives institute from network DB 2The key of change.By this way, packet processing unit 112 can identify point of the registration in entry "/packets/out "The identifier of group.If for example, stream processing unit 111 by packet transaction operation setting into the node in open flow network,Packet processing unit 112 sends the packet corresponding with the identifier received to flow network is opened.In addition, packet processing unit112 use order " pop_at (/packets/out,<packet_id>) " from entry "/packets/out " delete receive markKnow symbol, and entry "/packets/out/ [packet_id] " is deleted using order " delete ".
If using order " pop_head (/packets/out) " rather than order " pop_at " above, can be from "/Packets_out " top receives grouping information, and can delete entry "/packets/out/ [packet_id] ".CauseThis, it is convenient to omit the execution of " delete " is ordered to more than.
Figure 17 to 20 is the timing diagram for showing the operation according to the 3rd exemplary embodiment.
Figure 17 shows the operation performed when node is added to network 4.Topological processing unit 110 is deleted to openingThe addition of the node of flow network, and collect the information relevant with the node added.
For example, node is added to network DB 2 by topological processing unit 110 using order " push_tail (/nodes) "In item list "/nodes " in.After node is added into list, topological processing unit 110 receives from network DB 2 to be madeFor " node_id " of the identifier of the node in network DB 2.
For example, the information relevant with node is added in network DB 2 by topological processing unit 110 using order " put "Entry in.For example, the information relevant with the node added is the information relevant with node and had with the COM1 of nodeThe information of pass.
Figure 18 shows performed operation when from 4 deletion of node of network.Topological processing unit 110 is detected from open flowsNetwork deletion of node, and collect the information relevant with the node deleted.
For example, topological processing unit 110 is deleted with being deleted using order " pop_at " from item list "/nodes "The corresponding identifier of the node that removes.In addition, topological processing unit 110 using order " pop_at " come from item list "/The identifier of the link relevant with the node deleted is deleted in links ".
For example, topological processing unit 110 is had using order " delete " come the node deleted with deleted from open flow networkThe information of the information of pass and the link relevant on the node with being deleted.
Figure 19 shows the operation performed when adding link to network 4 and the behaviour performed when deleting link from network 4Make.Topological processing unit 110 is deleted to opening flow network addition link, and collects the information relevant with the link added.
For example, link is added to entry "/links " by topological processing unit 110 using order " push_tail ".Link is added to item list "/links " afterwards, topological processing unit 110 receives the chain for being added to list from network DB 2The identifier on road.Based on the identifier received, topological processing unit 110 is using order " put " come by with being added to open flowsThe information that the link of network is relevant is registered in entry "/links/ [link_id] ".
Topological processing unit 110 detects from open flow network and deletes link, and collects the letter relevant with the link deletedBreath.
For example, topological processing unit 110 deletes deleted link using order " delete " from network DB 2Entry "/links/ [link_id] ".In addition, for example, topological processing unit 110 using order " pop_at " come from entry columnThe identifier of deleted link is deleted in table "/links ".
Figure 20 is to show open flows control unit 11A based on packet transaction information included in network DB 2 to controlThe operation of open flow network.Packet processing unit 112 receives the unknown packet of packet processing method (in Figure 20 from open flow network" packet_in ").For example, packet processing unit 112 uses order " get_matching_flow (<packet_info>)″To inquire the packet transaction information corresponding on the packet with being received to stream processing unit 111.
For example, stream processing unit 111 searched in network DB 2 with " get_matching_flow (<packet_info>) " entry ("/flows/ [flow_ for the matching condition that the grouping information (" packet_info ") included matchesid]″)。
For example, if stream processing unit 111 finds the packet transaction that the packet received with packet processing unit 112 matchesInformation, then stream processing unit 111 generates the packet transaction operation (processing rule) to be set in the node 3 in network 4, and passes throughThe packet transaction is notified to operate from packet processing unit 112 to node 3.In addition to notifying the packet transaction to operate to node 3,Packet processing unit 112 returns to the packet (" packet_out " in Figure 20) received from network 4 to network 4.
Believe if stream processing unit 111 does not find the packet transaction that the packet received with packet processing unit 112 matchesCease, then the packet received by packet processing unit 112 is added to bar by stream processing unit 111 using order " push_tail "Mesh "/packets/in ".Packet is being added to entry "/packets/in " afterwards, stream processing unit 111 connects from network DB 2Receive the identifier (" packet_id " in Figure 20) for the packet for being added to entry.Based on the identifier received, stream processing unit111 using order " put " come by the relevant information of the packet received with packet processing unit 112 the "/packets/ that is added to entryin/[packet_id]″。
<4th exemplary embodiment>
Next, the 4th exemplary embodiment that the disclosure will be described.It is in the 4th exemplary embodiment, description is followingExample:Control device 1 operates network DB 2 by using visualization DB operation logic unit 11B.
In order to support operator using control device 1 to manage network 4, visualization DB operation logic units 11B have withLower function:At least a portion of the information stored in network DB 2 is shown by image so that can visually control the letterBreath.
Figure 21 shows the configuration according to the 4th exemplary embodiment.Visualization DB operation logic units 11B in Figure 21Topology information is obtained from network DB 2, and shows the annexation of node and link on the display device.For example, such as institute in Figure 22Show, visualization DB operation logic units 11B shows network topology by image.The numeral for distributing to each node represents nodeIdentifier.In addition, the numeral for distributing to each link represents the identifier of link.When network DB 2 is based on the notice to visualizationWhen DB operation logic units 11B notifies the change of topology information, visualization DB operation logic unit 11B are obtained from network DB 2 and savedPoint and link information, and change the annexation of shown node and link.
By this way, by the way that the visualization DB operation logic units 11B in Figure 21 is connected into network DB 2, operatorThe configuration of management objectives network can be obtained as visual information.In addition, visualization DB operation logic units 11B can pass throughImage shows the packet transaction information in network DB 2.For example, DB operation logic unit 11B are visualized by entry "/flows/The routing information (path) that [flow_id] " includes is attached in the topology shown by image.Figure 23, which is shown, passes through imageThe packet transaction information of display.In fig 23, the entry "/flows/10 " with identifier " 10 " is shown by image.Pass throughThe relevant information of node and link and the information relevant with the direction of forwarding packet that image is shown with packet is passed through.
As shown in figure 24, visualization DB operation logic unit the 11B "/packets/in/ that pass through image displayed entries[packet_id] " and "/packets/out/ [packet_id] ".
<5th exemplary embodiment>
Next, the 5th exemplary embodiment that the disclosure will be described.In the 5th exemplary embodiment, control device 1Network DB 2 example is operated by using slice logic unit 11C.
Figure 25 shows the configuration according to the 5th exemplary embodiment.Figure 25 slice logic unit 11C has following work(Energy:Duplicate network DB 2 cuts into slices (virtual dividing) to perform network.Slice logic unit 11C by single network DB 2 state orChange expands to multiple network DB 2A and 2B, and multiple network DB 2A and 2B state or change are fed back into primitive network DB2.In fig. 25, control device 1 includes two network DB interface units 10-1 and 10-2.However, it is possible to it is directed to each network DBArrange network DB interface units.Alternatively, single network DB interface units may be coupled to multiple network DB 2.
As described above, by the way that slice logic unit 11C is connected into arbitrary network DB 2, multiple Virtual network operator (networksUser) in each dedicated network can be used as to manage section network.For example, upper network operator can manage networkDB 2, and the undernet operator licensed by upper network operator can manage network DB 2A and 2B.
<6th exemplary embodiment>
Next, the 6th exemplary embodiment that the disclosure will be described.It is in the 6th exemplary embodiment, description is followingExample:Control device 1 operates network DB 2 by using shortest path logic unit 11D.Shortest path logic unit 11D hasThere are following functions:Calculate in network 4 from the shortest path among packets forwarding source to the path of destination.
Figure 26 shows the configuration according to the 6th exemplary embodiment.Based on the topology information obtained from network DB 2 and fromThe host information that host information memory cell 21 is read, the shortest path logic unit 11D in Figure 26 are calculated between any main frameMost short forward-path, and by most short forward-path storage into shortest path memory cell 20.
As network DB 2 based on the content of renewal come the entry to shortest path logic unit 11D notices pair with topology-awareRenewal when, shortest path logic unit 11D recalculates shortest path and updates shortest path memory cell 20.For example, mostShort path logic unit 11D uses order " subscription " so that if entry "/nodes " or "/links " are updated, network DB 2Updated information is notified to shortest path logic unit 11D.
If by ordering " subscriptions " entry for specifying to be updated, network DB 2 is using ordering " publish " come to most shortPath Logical unit 11D notifies the information relevant with the entry.When being received from network DB 2, the renewal with topology information is relevantNotice when, shortest path logic unit 11D recalculates the shortest path corresponding with new topology information, and by the shortest pathFootpath is stored into shortest path memory cell 20.When recalculating shortest path, shortest path logic unit 11D can updatePacket transaction information.For example, when recalculating shortest path, the routing information that packet transaction information includes can be updated(" routing information ").For example, shortest path logic unit 11D is deposited updated packet transaction information using order " put "In the entry "/flows/ [flow_id] " for storing up network DB 2.
As described above, by the way that the control device 1 with shortest path logic unit 11D in Figure 26 is connected into network DB2, the function of calculating shortest path and the function of updating the packet transaction information corresponding with the shortest path are added to controlIn device 1.
<7th exemplary embodiment>
Next, the 7th exemplary embodiment that the disclosure will be described.It is in the 7th exemplary embodiment, description is followingExample:Control device 1 operates network DB 2 by using polymerization logic unit 11E.Polymerization logic unit 11E has following work(Energy:It polymerize multiple nodes and multiple links to be abstracted to network topology.
Figure 27 shows the configuration according to the 7th exemplary embodiment.For example, the polymerization logic unit 11E in Figure 27 is to netThe topology information stored in network DB 2 is abstracted, and be abstracted topology information is stored into network DB 2C.
For example, polymerization logic unit 11E grasps to network DB2 and 2C respectively via DB interface units 10-3 and 10-4Make.
For example, Figure 28 outlines polymerization logic unit 11E the topology information in network DB 2 is carried out abstract and will be taken outThe topology information of elephant is stored to the operation in network DB 2C.For example, it polymerize logic unit 11E according to the operation of operator to opening upInformation is flutterred to be abstracted.In Figure 28, in the topology information stored in network DB 2, logic unit 11E is to the He of node 1 for polymerization2 are polymerize and are abstracted, and node 3 and 4 is polymerize and is abstracted.By being polymerize the new section generated to node 1 and 2Point corresponds in network DB 2C the node 1 stored.Correspond to network by being polymerize generated new node to node 3 and 4The node 2 stored in DB 2C.
Figure 29 and 30 respectively illustrates the entry in network DB 2 and 2C.It polymerize logic unit 11E to the bar in Figure 29Mesh "/nodes/1 " and "/nodes/2 " are polymerize.In addition, polymerization logic unit 11E is to the entry "/nodes/3 " in Figure 29It is polymerize with "/nodes/4 ".By these converging operations, the quantity for the node that be stored in network DB 2 is conceptualized as“3”。
For example, three abstract nodes are added in network DB 2C by polymerization logic unit 11E using order " push "In item list "/nodes ".As shown in figure 30, by converging operation, the data of the entry "/nodes " in network DB 2C(value) is updated to " { 1,2,3 } ".For example, polymerization logic unit 11E will be had using order " put " with each abstract nodeThe information of pass is added in the entry in network DB 2C "/nodes/ [node_id] ".For example, polymerization logic unit 11E oughtUsed ID (" node ID " in Figure 29 and 30) "/nodes/ [node_ that are registered in entry during 1 control node of control deviceId] " in.In addition, if the node being registered in entry "/nodes/ [node_id] " is abstract node, it polymerize logic listID (" original " in Figure 30) before the node is abstracted is registered in entry "/nodes/ [node_id] " by first 11E.
In fig. 30, the ID of " node ID (a) " and " node ID (b) " as two nodes by abstract generation is distributed.In addition, the node corresponding with the entry "/nodes/5 " in network DB 2 is registered to the entry in network DB 2C "/In nodes/3 "." node ID (c) " is distributed as the node ID in network DB 2C with entry "/nodes/3 ".
For example, when polymerizeing to node, polymerization logic unit 11E also polymerize to corresponding link.For example,In Figure 29 and 30, polymerization logic unit 11E arrives the link aggregation corresponding with "/links/2 " in Figure 29 and "/links/4 ""/links/1 " in Figure 30.For example, polymerization logic unit 11E will be with "/links/2 " in Figure 29 using order " put "The data (value) corresponding with "/links/4 " are stored into the entry "/links/1 " in network DB 2C.In addition, polymerization logicBy the link ("/links/1 " in Figure 29), (polymerization of "/nodes/1 " and "/nodes/2 " in Figure 29 is or not unit 11ENeed again) it is registered in network DB 2C.For example, in Figure 29, " { src_node:A, dst_node:B } " represent from sectionPoint ID (A) node forwards the link of packet to the node with node ID (B).
As described above, polymerization logic unit 11E can be abstracted to topology.That is, operator can be based on instituteAbstract topology controls management objective network, and can easily manage the network.
<8th exemplary embodiment>
Next, the 8th exemplary embodiment that the disclosure will be described.It is in the 8th exemplary embodiment, description is followingExample:Control device 1 operates network DB 2 by using integration logic unit 11F.Integration logic unit 11F has integrated moreThe function for the topology information that individual network DB includes.
Figure 31 shows the configuration according to the 8th exemplary embodiment.For example, the integration logic unit 11F in Figure 31 is integratedThe topology information that network DB 2D and 2E include, and integrated topology information is stored into network DB 2F.
Figure 32 shows the topology information stored in network DB 2D and the information stored in network DB 2E.Network DB 2DIncluding the topology information by three nodes (node 1-3) and three link (link 1-3) configurations.Network DB 2E are included by threeNode (node 1-3) and the topology information of three link (link 1-3) configurations.
Figure 33 is shown by the topology information in integrated network DB 2D and 2E the new topology information that generates.
As shown in figures 32 and 33, by integrating two topologys, six nodes are stored in network DB 2F.For example, integrated patrolUnit 11F is collected using order " push " node listing storage is arrived in entry "/nodes ".By making integration logic unit 11FNetwork DB2F is operated using order " push ", the list (" { 1,2,3,4,5,6 } ") of integrated node is stored in entry "/In nodes ".In addition, for example, the information storage relevant with node is arrived bar by integration logic unit 11F using order " put "In mesh "/nodes/ [node_id] ".
As shown in figures 32 and 33, by integrating two topologys, seven links are stored in network DB 2F.For example, integrated patrolUnit 11F is collected using order " push " list of link storage is arrived in entry "/links ".By making integration logic unit 11FNetwork DB2F is operated using order " push ", the list (" { 1,2,3,4,5,6,7 } ") of integrated node is stored in entry "/In links ".In addition, for example, the information storage relevant with link is arrived bar by integration logic unit 11F using order " put "In mesh "/links/ [link_id] ".
<9th exemplary embodiment>
Next, the 9th exemplary embodiment that the disclosure will be described.Operator can be by using component manager 30Function manage network DB 2 or DB operation logics unit 11 (or in the 3rd exemplary embodiment to the 8th exemplary embodimentDescribed in component 11A-11F).The component manager 30 described in the 9th exemplary embodiment.
Figure 34 shows the configuration of the system according to the 9th exemplary embodiment.Operator is by using component manager 30Function manage network DB 2 and DB operation logics unit 11.In addition, as shown in Figure 34, even if when network DB 2 and DB is graspedWhen making logic unit 11 and being disposed in multiple servers (server 200 to 400), component manager 30 can be managed integrallyNetwork DB 2 and DB operation logics unit 11.In Figure 34, control device 1 is by the Hes of network DB 2 that are arranged in multiple serversDB operation logics unit 11 configures.
Figure 35 shows the configuration of component manager 30.In Figure 35, component manager 30 includes:Module information storage is singleMember 31, assembly management unit 32, external control interface unit 33 and component control interface unit 34.
Module information memory cell 31 stores network DB and DB the operation logic list described in exemplary embodiment aboveThe configuration and connection of member 11 (such as the 3rd exemplary embodiment to the component 11A-11F described in the 8th exemplary embodiment) are closedSystem.
Component control interface unit 34 has as the interface for being connected to network DB 2, DB operation logics unit 11 etc.Function.Component manager 30 accesses network DB 2 and DB operation logics unit 11 via component control interface unit 34.
Assembly management unit 32 has:Startup and expiry feature 320, for being generated in response to the operation from operatorWith deletion network DB 2 and startup and termination DB operation logics unit 11.Assembly management unit 32 has:Linkage function 321, useCome in response to the operation from operator via the connection component of component control interface unit 34.Assembly management unit 32 includes:Activity monitoring function 322, for monitoring whether DB operation logics unit 11 is rightly running.In addition, assembly management unit32 based on the operation from operator, the content of renewal module information memory cell 31.
Processing administrative unit 9 in Figure 34 is connected to component control interface unit 34.If for example, DB operation logic units11 are configured on multiple servers (as shown in figure 34), then handle administrative unit 9 and perform management operation (including based on from groupThe instruction of part administrative unit 32, start, terminate and monitor the DB operation logics unit 11 operated on these servers).In addition,As shown in figure 34, multiple DB operation logics units 11 may be coupled to different networks (such as open flow network and MPLS (more associationsDiscuss label switched) network).
<Tenth exemplary embodiment>
Next, the tenth exemplary embodiment that the disclosure will be described.Figure 36 shows the tenth example according to the disclosureThe configuration of the system of property embodiment.Hereinafter, the user interface 40 being described with reference to the drawings in Figure 36.
Server 400 shown in Figure 36 has following functions:The user interface 40 used based on operator, configuration controlDevice 1.
Server (information processor) 400 includes:Display unit 401 and administrative unit 402.Display unit 401 hasBy the icon corresponding with network DB 2 and DB operation logics unit 11, (icon is classified as first corresponding with network DB 2Icon and second icon corresponding with DB operation logics unit 11) be shown in user interface 40 (such as show over the displayOn the screen shown) function.Administrative unit 402 has based on the annexation of the icon operated by operator to configure control dressPut 1 function.
Figure 37 shows the screen shown by display unit 401.Figure 37 screen have include template for displaying region and workMake the layout in region, template for displaying region shows that (such as the 3rd is exemplary with above network DB 2 and DB operation logics unit 11Embodiment is to the component 11A-11F described in the 8th exemplary embodiment) corresponding template icon.
For example, if operator is from the template for displaying region drag and drop in Figure 37 and required network DB2, DB operation logic listMember template corresponding 11 and shortest path logic unit 11D, then in working region display corresponding to icon.If operatorThe icon shown in connection working region, then show connecting line between the icon of working region.For example, work as display unit 401When receiving display request from operator, shown and network DB 2 or DB operation logics in object display area using pop-up etc.Unit 11 or the details relevant by visualizing the network topologies that are generated of DB operation logic units 11B.For example, when display is singleWhen click etc. (display request) is detected on first 401 icon in working region, using pop-up etc. in object display areaThe network topology for showing with network DB 2 or DB operation logics unit 11 or being generated by visualizing DB operation logic units 11B hasThe details of pass.
Figure 38 is the configuration phase of the operation and control device 1 configured by administrative unit 402 performed via user interface 40The schematic diagram of mutual correlation.Administrative unit 402 can be configured by component manager 30.
For example, display unit 401 can show the operating result to network DB 2 by DB operation logics unit 11.For example,If the icon corresponding with DB operation logics unit 11 and the icon corresponding with network DB 2 interconnection, display unit401 show network DB 2 operating result by DB operation logics unit 11.
Figure 38 is shown from template for displaying regional choice icon TP1 (NW-DB;It is corresponding with network DB 2), iconTP2(OF-NW;It is corresponding with open flows control unit 11A) and icon TP3 (shortest paths;With shortest path logic unit 11DIt is corresponding) state.These icons are disposed in working region and are connected with each other.By this way, network DB 2, open flowsControl unit 11A and shortest path logic unit 11D is added and is connected to control device 1.The net corresponding with network DB 2Network 4 is controlled by open flow agreement, and shortest path control is performed on network 4.
Figure 39 is the icon TP4 (visualizations in Figure 38;It is corresponding with visualization DB operation logic units 11B) it is connected to figureMark TP1 (NW-DB;It is corresponding with network DB 2) schematic diagram.By this way, image etc. is used to the control device 1 additionNetwork topology display function.
Figure 40 is icon TP5 (polymerizations;Polymerization logic unit 11E) it is additionally coupled to icon TP1 (NW-DB) signalFigure, wherein icon TP2 (OF-NW) is connected to icon TP1 (NW-DB).The polymerization logic unit corresponding with icon TP5 (polymerization)11E is polymerize and is abstracted to the topology information in network DB, and is stored the information into another network DB 2.Icon TP5(visualization) is connected to another network DB 2.As shown in figure 40, complex network topologies and abstract network topology both of which can showIt is shown as image.
Figure 41 is icon TP6 (sections;It is corresponding with slice logic unit 11C) it is additionally coupled to icon TP1 (NW-DB)And the schematic diagram for the network DB split in logic is generated, wherein icon TP2 (OF-NW) is connected to icon TP1 (NW-DB).With thisKind mode, single network can be sliced as multiple virtual networks.In addition, by the way that the various icons in template for displaying region are connectedIt is connected to the icon (NW-DB for representing these section networks DB;Network DB), it can be individually controlled and using section network.
Figure 42 is icon TP 7 (integrated;It is corresponding with integration logic unit 11F) it is connected to multiple icon TP1 (NW-DB)And the schematic diagram for the network DB for integrating these networks is generated, wherein icon TP2 (OF-NW) is connected to icon TP1 (NW-DB).WithThis mode, it can control and use using multiple networks as single network.
As described above, by using the user interface according to the present exemplary embodiment, operator can be controlled with customized networkThe initial setting up of device or function are without higher level knowledge and technology.Furthermore, it is possible to allow operator that each network, ginseng are setExamine network DB entry and entry is operated via the user interface 40.For example, it is preferred to operator's modification is allowed to setPut value or add, change or delete and control by moving the cursor to the field (field) in Figure 37 in object display areaMake (stream) and operate relevant entry.
Although it have been described that the exemplary embodiment of the disclosure, the invention is not restricted to this.The base of the present invention is not being departed fromOn the premise of this technology concept, various changes, replacement or adjustment can be carried out.For example, network configuration or group in each accompanying drawingPart configuration is only used for promoting the understanding of the present invention.That is, the invention is not restricted to the configuration of these in accompanying drawing.
In addition, for example, in addition to the variant of the DB operation logics unit 11 described in exemplary embodiment above, netNetwork extraction logic is applicable.Using this logic, by partly extracting single network DB topology and will be extractedTopology expands to another network DB, and network DB stream can expand to primitive network DB stream.By connecting two by this wayIndividual network DB, the function of part control network is with the addition of to network control unit.For example, another Virtual network operator can be allowed onlyA part for network is operated, or can only change the routing algorithm of the part.
In addition, although it is assumed that describe exemplary embodiment above in the case of control live network, can arrange withThe network control unit of network simulator (such as NS3 (network simulator version 3)) link.By this way, network control dressActual physical networks can not only be controlled by putting, and can also control the network on emulator.Therefore, Virtual network operator fills by controlPut before being applied to actual physical networks, operation or the property of the network control unit thus created can be tested on emulatorEnergy.
Finally, the preference pattern of the present invention will be summarized.
<First mode>
(see the information processor in above first aspect)
<Second mode>
In described information processing unit in the first mode, according on first icon be used for show the databaseState request, the display unit shows the control information stored in the database.
<3rd pattern>
In described information processing unit in first mode or second mode, according to first icon and described secondThe connection of any one in icon, the display unit are shown by response to by the module corresponding with second iconThe database manipulation order of issue operates the result obtained by the control information.
<Fourth mode>
In first mode into the 3rd pattern in the described information processing unit of any one, according to first icon andThe connection of second icon corresponding with the module of display of the execution to the state of the network, the display unit are shownThe state of the network.
<5th pattern>
In first mode into fourth mode in the described information processing unit of any one, to the behaviour of the control informationIt is in response to what is performed in the public database operational order used by the multiple module.
<6th pattern>
In described information processing unit in any one in the first mode to the 5th pattern, the databaseInclude the first information of the topology-aware with the network, and second letter relevant with handling the method for the packet in the networkBreath.
<7th pattern>
In described information processing unit in any one in the first mode to the 6th pattern, the databaseIncluding the 3rd information of the packet received for managing the control device from the network, and for managing the control device4th information of the packet sent to the network.
<8th pattern>
In described information processing unit in any one in the first mode to the 7th pattern, second figureMark corresponds to the module of at least one for performing and being selected from the group being made up of the following:Path meter between communication terminalCalculation, the management of network topology, the polymerization of network topology, the segmentation of network and network it is integrated.
<9th pattern>
(see the collocation method in above second aspect)
<Tenth pattern>
In the compound method in the 9th pattern, according to the shape for being used to show the database on first iconThe request of state, the control information stored in the database is shown on the display.
<11st pattern>
In the collocation method in the 9th pattern or the tenth pattern, according to first icon and second iconIn the connection of any one, show on the display by response to being sent out by the module corresponding with second iconThe database manipulation order of cloth operates the result obtained by the control information.
<Tenth two modes>
In the collocation method in any one in the 9th pattern to the 11st pattern, according to described firstThe connection of icon and second icon corresponding with performing the module of the display to the state of the network, in the displayThe state of the network is shown on device.
<13rd pattern>
In the collocation method in any one in the 9th pattern to the tenth two modes, in response to by describedThe public database operational order that multiple modules use, performs the operation to the control information.
<14th pattern>
In collocation method described in any one in the 9th pattern to the 13rd pattern, the database bagInclude the first information with the topology-aware of the network, and second letter relevant with handling the method for the packet in the networkBreath.
<15th pattern>
In collocation method described in any one in the 9th pattern to the 14th pattern, the database bagInclude the 3rd information of the packet received for managing the control device from the network, and for manage the control device to4th information of the packet that the network is sent.
<16th pattern>
In collocation method described in any one in the 9th pattern to the 15th pattern, second iconThe module of at least one selected corresponding to execution from the group being made up of the following:Path computing between communication terminal,The management of network topology, the polymerization of network topology, the segmentation of network and network it is integrated.
<17th pattern>
(see the communication system in the above third aspect)
<18th pattern>
(see the program in above fourth aspect)
Above NPL complete disclosure is incorporated herein by reference.The present invention entire disclosure (including right willAsk) scope in and based on the present invention basic fundamental concept, the modification and adjustment of exemplary embodiment and example are possible.In the range of the claim of the present invention, various disclosed key elements (including claim, exemplary embodiment, example, accompanying drawingKey element in each) various combinations and selection be possible.That is, the present invention includes those skilled in the art's root certainlyAccording to the various variants made by the entire disclosure including claim and technological concept and modification.Subject description discloses numerical value modelEnclose.However, even if specification does not disclose particularly small range included in any number or scope, these numerical value and scope shouldWhen being considered as to be specifically disclosed.
[reference numerals list]
1 control device
2nd, 2A is to 2F network data bases (network DB)
3 nodes
4 networks
4A manages network
9 processing administrative units
10th, 10-1 to 10-6 DB interface units
11st, 11-1,11-2 DB operation logic units
12 network control units
11A open flows control units
11B visualizes DB operation logic units
11C slice logic units
11D shortest path logic units
11E polymerize logic unit
11F integration logic units
20 shortest path memory cell
21 host information memory cell
30 component managers (configuration management element)
31 module information memory cell
32 assembly management units
33 external control interface units
34 component control interface units
40 user interfaces
100th, 200,300,400 server
110 topological processing units
111 stream processing units
112 packet processing units
320 startups and expiry feature
321 linkage functions
322 activity monitoring functions
401 display units
402 administrative units
TP1 is to TP6 icons