JP2014053719A - Communication device, transfer control method and transfer control program - Google Patents

Communication device, transfer control method and transfer control program Download PDF

Info

Publication number
JP2014053719A
JP2014053719A JP2012196023A JP2012196023A JP2014053719A JP 2014053719 A JP2014053719 A JP 2014053719A JP 2012196023 A JP2012196023 A JP 2012196023A JP 2012196023 A JP2012196023 A JP 2012196023A JP 2014053719 A JP2014053719 A JP 2014053719A
Authority
JP
Japan
Prior art keywords
communication
packet
packet transfer
information
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012196023A
Other languages
Japanese (ja)
Other versions
JP5909688B2 (en
JP2014053719A5 (en
Inventor
Kenichi Sakurai
健一 櫻井
Original Assignee
Panasonic Corp
パナソニック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, パナソニック株式会社 filed Critical Panasonic Corp
Priority to JP2012196023A priority Critical patent/JP5909688B2/en
Priority claimed from PCT/JP2013/004825 external-priority patent/WO2014038135A1/en
Publication of JP2014053719A publication Critical patent/JP2014053719A/en
Publication of JP2014053719A5 publication Critical patent/JP2014053719A5/ja
Application granted granted Critical
Publication of JP5909688B2 publication Critical patent/JP5909688B2/en
Application status is Active legal-status Critical
Anticipated expiration legal-status Critical

Links

Abstract

PROBLEM TO BE SOLVED: To provide a communication device that enables selection of a network which a user or any program uses for communication every flow.SOLUTION: In a communication device which has one or more communication interfaces, a packet transfer unit for transferring a received packet and a transfer controller for controlling the operation of the packet transfer unit and utilizes a flow-base network control system, a packet transfer rule is generated on the basis of use interface information for determining which communication interface should be used for communications every flow set by a user or any program, and packet transfer is performed so that a packet is transmitted/received through a communication interface used for communications according to the packet transfer rule.

Description

  The present invention relates to a communication device, a transfer control method, and a transfer control program that perform communication on a network, and in particular, one or more communication interfaces, a packet transfer unit that transfers a packet, and a transfer that controls the operation of the packet transfer unit. The present invention relates to a communication device that uses a network control method in units of flows including a control unit, a transfer control method applied to the communication device, and a transfer control program.

  Recently, wireless LAN (Wireless Local Area Network), 3G (3rd generation mobile communication system), WiMAX (Worldwide Interoperability for Microwave Access), LTE (Long Term Evolution) and other high-speed communication technologies such as LTE (Long Term Evolution) have been developed. It is becoming common to have a communication interface. In addition, a wide variety of applications operate on highly functional communication devices such as smartphones and tablets, and traffic transmitted and received is significantly increased compared to conventional communication devices.

  Against the backdrop of the increasing load on public wireless networks associated with the widespread use of communication devices as described above, efficient use of networks has become one of the problems in communication devices. It can be expected that the above problem can be alleviated by performing communication using an appropriate network according to an application that is a communication program for transmitting and receiving traffic having different characteristics such as frequency of communication and communication volume.

  However, by providing a plurality of communication interfaces, even though it is possible to connect to a plurality of networks, there is no mechanism for performing communication by using them simultaneously, so the current communication apparatus has an exclusive communication interface. It is not possible to realize selection of a network to be used appropriately according to the above-described application.

  The problem that communication cannot be performed using a plurality of networks at the same time is caused by insufficient mechanisms for selecting a communication interface used for communication.

  In IP communication, when communication is performed with a communication device on a network other than the network to which the communication device is directly connected, communication is performed via a default gateway of the network to which the communication device is directly connected. The default gateway can be set for each communication interface. In a communication apparatus having a plurality of communication interfaces, a plurality of default gateways exist on the route table. In such a case, in the path control performed by the communication stack on the communication device, it is not known which default gateway should be used for communication, and communication is impossible.

  A communication program such as a ping command for confirming communication between communication devices on the network can specify a communication interface used for communication. In communication of communication programs with such functions, the default gateway set for the specified communication interface is used, so communication can be performed even when multiple default gateways exist on the route table. is there. However, it is not easy to mount such a function in all communication programs operating on the communication device and individually specify a communication interface used for communication.

  Depending on the communication device, communication may be disabled by selecting one of multiple default gateways on the routing table and performing communication according to some rule, such as selecting the default gateway that was set last. To avoid. However, since the communication interface or default gateway used for communication is not explicitly specified, in an environment where the status of the communication interface changes and the address information set in the communication interface changes, There is a possibility that communication is performed on a network different from the intended one.

  Conventionally, various proposals relating to a communication apparatus including a plurality of communication interfaces in consideration of the above-described problems have been made. For example, in the method described in Patent Literature 1, any one of a plurality of communication interfaces is preferentially set based on the quality of the network, the charge amount of the battery, the charge amount, etc., and the preferentially set communication interface By setting only the default gateway set to 1 in the routing table, communication is performed using the default gateway set to the communication interface set to be superior.

International Publication No. 2009/057477

  Although the method described in Patent Document 1 enables communication using a plurality of interfaces simultaneously in a communication apparatus having a plurality of communication interfaces, a default gateway set to a communication interface set predominantly among a plurality of default gateways Since communication is performed using only communication interfaces, there is a problem that a communication interface other than the communication interface set to be advantageous cannot communicate with a communication apparatus on a network other than the network to which the communication apparatus is directly connected. It is insufficient as a method for realizing communication using the network simultaneously.

  Further, since the method described in Patent Document 1 is a method that enables selection of any one of a plurality of default gateways, communication is performed with a communication device on a network other than the network to which the communication device is directly connected. There is a problem that communication performed by an application is communication using a default gateway set to the communication interface set to be superior through the communication interface set to be superior. Therefore, a method capable of selecting a communication interface or default gateway to be used for communication at a finer granularity such as for each application is desired.

  The present invention has been made in view of the above problems related to a communication apparatus having a plurality of communication interfaces, and performs communication using a plurality of networks at the same time, and communication from a user or an arbitrary program for each flow. An object of the present invention is to provide a communication device, a transfer control method, and a transfer control program capable of performing communication using an appropriate network for each flow by realizing selection of a communication interface to be used.

A communication device according to the present invention is a communication device that uses a network control method in units of flows, and is capable of selecting a communication interface to be used for communication for each flow. A packet transfer unit for transferring the packet and a transfer control unit for controlling the operation of the packet transfer unit.
With this configuration, communication can be performed using an appropriate network for each flow.

The transfer control method according to the present invention is used for communication for each flow in a communication apparatus using a network control method in units of flows, which includes one or more communication interfaces and a packet transfer unit that transfers received packets. A transfer control method that allows a communication interface to be selected, and includes a packet transfer rule generation step for generating a packet transfer rule, which is information for determining the operation of the packet transfer unit when a packet is received, and a packet transfer rule generation step And a packet transfer unit management step for setting the packet transfer rule in the packet transfer unit.
With this configuration, packet transfer for performing communication using an appropriate network for each flow can be performed.

In addition, the transfer control program according to the present invention is a communication used for communication for each flow in a computer using a network control method in units of flows that includes one or more communication interfaces and a packet transfer unit that transfers received packets. A program for executing a process for making an interface selectable, a packet transfer rule generation process for generating a packet transfer rule that is information for determining an operation of a packet transfer unit when a packet is received, and a packet transfer rule generation process The generated packet transfer rule is configured to execute a packet transfer unit management process for setting the packet transfer rule in the packet transfer unit.
With this configuration, packet transfer for performing communication using an appropriate network for each flow can be performed.

  According to the present invention, it is possible to perform communication using a plurality of networks at the same time, and to select a communication interface to be used for communication for each flow from a user or an arbitrary program. There is an effect that communication can be performed by using.

The block diagram which shows the structural example of the communication apparatus in embodiment of this invention. The block diagram which shows the structural example of the packet transfer part in embodiment of this invention. The flowchart which shows the example of a process when a packet transfer part receives a packet. The block diagram which shows the structural example of the more detailed communication apparatus which paid its attention to the element which concerns on 1st Embodiment. The block diagram which shows the structural example of the transfer control part in embodiment of this invention. The structural example of the routing table in 1st Embodiment. 5 is a flowchart illustrating an example of processing in which a transfer control unit according to the first embodiment generates a packet transfer rule. The block diagram which shows the structural example of the more detailed communication apparatus which paid its attention to the element which concerns on 2nd Embodiment. The structural example of the routing table in 2nd Embodiment. 12 is a flowchart illustrating an example of processing in which a transfer control unit according to the second embodiment generates a packet transfer rule. 10 is a flowchart illustrating an example of address resolution processing of a transfer control unit according to the second embodiment. The structural example of the use interface information memorize | stored in the use interface information storage part in 3rd Embodiment.

  Embodiments of the present invention will be described below with reference to the drawings.

(Embodiment 1)
FIG. 1 is a block diagram illustrating a configuration example of a communication device according to an embodiment of the present invention. A communication apparatus 100 according to an embodiment of the present invention is a communication apparatus that uses a network control method in units of flows, and includes a plurality of communication interfaces 101, a packet transfer unit 200 that transfers received packets, and a packet transfer unit. And a transfer control unit 300 that controls the operation.

  “Flow” refers to a flow of a series of packets of traffic that can be identified by a combination of arbitrary addresses and identifiers. By using a flow-by-flow network control method, it is possible to realize flexible network control with finer granularity. The network control method for each flow is, for example, OpenFlow. An example of an OpenFlow communication device that includes a flow switch that forwards received packets and a flow controller that controls the operation of the flow switch is “Nick McKeown, et al.,“ OpenFlow: Enabling Innovation in Campus Networks ”, 2008. March 14, Internet <http://www.openflow.org/documents/openflow-wp-latest.pdf> "or" "OpenFlow Specification Version 1.0.0", December 31, 2009 , Internet <http://www.openflow.org/documents/openflow-spec- It is described in the 1.0.0.pdf> ", and the like.

  The packet transfer unit 200 is, for example, a flow switch in OpenFlow. The transfer control unit 300 is a flow controller in OpenFlow, for example.

  The packet transfer unit 200 transfers the received packet. Specifically, the packet transfer unit 200 has received the packet according to a packet transfer rule that is information for determining the operation of the packet transfer unit when the packet set by the transfer control unit 300 is received. Arbitrary processing is performed on the packet.

  The packet transfer rule includes flow information that is information that can identify a flow, and action information that is information that determines the content of a process to be executed on a packet of a flow that matches the flow information. The packet transfer rule includes at least flow information and action information, but may further include other information.

  The flow information includes, for example, a transmission source MAC address, a transmission destination MAC address, an Ethernet (registered trademark) frame type, a transmission source IP address, a transmission destination IP address, a transmission source port number, a transmission destination port number, and a packet from which communication interface. Although it includes a reception port number, which is information for determining whether it has been received, the flow information is not limited to these. Furthermore, other information may be included. The contents of the action information include, for example, transmitting a packet to a specific communication interface, transmitting the packet to the communication stack, rewriting an arbitrary address or identifier included in the packet to an arbitrary value, or discarding the packet. However, the content of the action information is not limited to these.

  The communication interface refers to an interface that provides a function of enabling communication by connecting to an arbitrary network. In the embodiment of the present invention, the type of communication interface is not particularly limited. It may be a wired interface such as Ethernet (registered trademark), a wireless interface such as a wireless LAN, or a virtual interface generated by an arbitrary method. Examples of virtual interfaces include a tunnel interface and a logical interface generated by link aggregation that virtually bundles a plurality of communication interfaces. Further, the number of communication interfaces is not particularly limited, and may be one or more. Further, the plurality of communication interfaces 101 may be the same type of communication interface or different types of communication interfaces.

  FIG. 2 is a block diagram illustrating a configuration example of the packet transfer unit according to the embodiment of the present invention. The packet transfer unit 200 includes a packet transfer rule storage unit 201, a packet transfer rule management unit 202, a flow identification unit 203, and an action execution unit 204.

  The packet transfer rule storage unit 201 stores packet transfer rules. Since different packet transfer rules are set for each flow, the packet transfer rule storage unit 201 stores one or more packet transfer rules. A set of packet transfer rules stored in the packet transfer rule storage unit 201 is referred to as a “packet transfer rule table”.

  The packet transfer rule management unit 202 manages packet transfer rules. When setting a packet transfer rule in the packet transfer unit 200, the transfer control unit 300 transmits a setting instruction together with the packet transfer rule. Specifically, the setting instruction is information that determines whether to add, change, or delete a packet transfer rule. The packet transfer rule management unit 202 stores the packet transfer rule received from the transfer control unit 300 in the packet transfer rule storage unit 201 according to the setting instruction.

  In addition to flow information and action information, the packet transfer rule includes a timer value that is information for determining the validity period of the packet transfer rule. The packet transfer rule management unit 202 decreases the timer value specified in each packet transfer rule with the passage of time. When the timer value becomes 0, the packet transfer rule including the timer value is deleted from the packet transfer rule storage unit 201. When a packet of a flow that conforms to the flow information included in the packet transfer rule is received, the packet transfer rule management unit 202 resets the timer value to the initial value.

  When the flow identification unit 203 receives a packet, the flow identification unit 203 generates flow information from an arbitrary address or identifier included in the received packet. Based on the generated flow information, a search is made as to whether or not a packet transfer rule including flow information matching the flow of the received packet exists on the packet transfer rule table stored in the packet transfer rule storage unit 201.

  The action execution unit 204 executes arbitrary processing on the received packet based on the content of the action information included in the packet transfer rule.

  The operation of the packet transfer unit 200 will be described. FIG. 3 is a flowchart illustrating an example of processing when the packet transfer unit receives a packet. When the packet transfer unit 200 receives a packet (step S101), the flow identification unit 203 generates flow information from the received packet (step S102), and a flow that matches the flow of the received packet based on the generated flow information. It is determined whether or not a packet transfer rule including information exists on the packet transfer rule table stored in the packet transfer rule storage unit 201 (step S103).

  When there is no packet transfer rule including flow information that matches the flow of the received packet (No in step S103), the flow identification unit 203 controls transfer of a new flow detection notification including the flow information generated by the flow identification unit 203. The request is transmitted to the unit 300 (step S104), and a packet transfer rule is generated for the received packet flow. The flow identification unit 203 may include the received packet itself in the new flow detection notification. When receiving the new flow detection notification, the transfer control unit 300 generates a packet transfer rule and transmits it to the packet transfer unit 200 together with a setting instruction.

  When the packet transfer rule management unit 202 receives the packet transfer rule and the setting instruction transmitted from the transfer control unit 300, the packet transfer rule management unit 202 stores the received packet transfer rule in the packet transfer rule storage unit 201 in accordance with the instruction (step S1). S105).

  If there is a packet transfer rule that includes flow information that matches the flow of the received packet (Yes in step S103), the packet transfer rule management unit 202 sets the packet transfer rule that includes flow information that matches the flow of the received packet. The timer value is reset to the initial value (step S106).

  By performing the processing as described above, a packet transfer rule that matches the flow of the received packet can be obtained. The action execution unit 204 executes arbitrary processing on the received packet according to the action information included in the packet transfer rule that matches the flow of the received packet (step S107).

  FIG. 4 is a block diagram illustrating a more detailed configuration example of the communication apparatus focusing on elements related to communication in the first embodiment. The packet transfer unit 200 is connected to the plurality of communication interfaces 101 and the virtual interface 102 and transfers packets. The communication device 100 is connected to an arbitrary network via a plurality of communication interfaces 101. On the other hand, the virtual interface 102 is a communication interface that is not connected to any of the networks connected through the plurality of communication interfaces 101. In other words, it can be said to be a communication interface for connecting to a virtual network existing inside the communication apparatus 100.

  With the configuration as illustrated in FIG. 4, the packet transfer unit 200 transmits a packet transmitted from another communication device or an arbitrary communication program 105 operating on the communication device 100 to a plurality of communication interfaces 101 and virtual interfaces 102. Receive via one of the communication interfaces.

  The packet transfer unit 200 and the transfer control unit 300 are connected by an arbitrary method. For example, the connection is made by UNIX (registered trademark) domain socket communication, TCP (Transmission Control Protocol) communication, or SSL (Secure Socket Layer) communication.

  As shown in FIG. 5, the transfer control unit 300 includes a use interface information storage unit 301, a use interface information management unit 302, an address information storage unit 303, an address information management unit 304, a route table management unit 305, A packet transfer rule generation unit 306 and a packet transfer unit management unit 307 are provided.

  The used interface information is information that determines which communication interface is used for communication for each flow, and uniquely identifies one of the flow information and the plurality of communication interfaces 101 that can identify the flow. And identifiable information. The used interface information includes at least flow information and information that can uniquely identify any of the plurality of communication interfaces 101, but may include other information.

  The flow information included in the used interface information may include a wild card in the value of the information included therein. Information that can uniquely identify any of the plurality of communication interfaces 101 is, for example, an interface name, a port number, or the like.

  The used interface information storage unit 301 stores used interface information. Since different used interface information is set for each flow, the used interface information storage unit 301 stores one or more used interface information.

  The used interface information management unit 302 manages the used interface information and provides a function for allowing the user or an arbitrary program to set the used interface information at an arbitrary timing. When setting the use interface information in the use interface information management unit 302, the user or an arbitrary program gives a setting instruction together with the use interface information. Specifically, the setting instruction is information that determines whether to add, change, or delete the used interface information. The used interface information management unit 302 stores the used interface information given from the user or an arbitrary program in the used interface information 301 according to the setting instruction.

  The use interface information management unit 302 can set the use interface information provided to the user or an arbitrary program, for example, a graphical user interface for performing the setting, an arbitrary API that can be used from an arbitrary program ( Application Programming Interface).

  The address information storage unit 303 stores address information, which is information necessary for the plurality of communication interfaces 101 and the virtual interface 102 to transmit and receive packets. Since different address information is set for each communication interface, one or more pieces of address information are stored in the address information storage unit 303.

  The address information includes, for example, the MAC address, IP address, subnet mask, MAC address and IP address of the default gateway on the network to which the communication apparatus connects via the communication interface, the port number, etc. It is not limited. Furthermore, other information may be included. The address information is set for each communication interface by an arbitrary method. An arbitrary method for setting the address information is, for example, fixed setting by a user or an arbitrary program, DHCP (Dynamic Host Configuration Protocol), IPCP (Internet Protocol Control Protocol), or the like.

  Address information is set in the virtual interface 102 in the same manner as each communication interface of the plurality of communication interfaces 101. The address information is virtual address information composed of arbitrary values. Specifically, the address information of the virtual interface 102 includes at least a virtual MAC address, a virtual IP address, and a virtual default gateway that is a default gateway on the virtual network inside the communication apparatus 100 connected via the virtual interface 102. IP address.

  The address information management unit 304 acquires address information set for each communication interface of the plurality of communication interfaces 101 and the virtual interface 102 and stores the acquired address information in the address information storage unit 303. Further, the address information management unit 304 re-addresses the address information of the communication interface in which the change of the address information occurs when the change of the address information occurs due to the expiration of the lease period or the occurrence of a handover accompanying the movement of the communication device. Acquired and stored in the address information storage unit 303.

  The routing table management unit 305 includes a default gateway set in each communication interface of the plurality of communication interfaces 101 and a virtual default gateway set in the virtual interface 102 included in the address information stored in the address information storage unit 305. Of these, only the virtual default gateway is set in the route table 104 of the communication stack 103 of the communication device 100.

  FIG. 6 is a configuration example of a route table according to the first embodiment. The routing table management unit 305 sets the routing table 104 as shown in FIG. In each network connected via the plurality of communication interfaces 101, route information for performing communication via each communication interface is set. Further, only the route information of the virtual default gateway is set as the route information regarding the default gateway.

  Of the default gateway and the virtual default gateway set for each communication interface, only the virtual default gateway is set in the routing table 104 so that the communication program 105 is on a network other than the network to which the communication device 100 is directly connected. When communicating with the apparatus, a path control is performed on the communication stack 103 so that a packet transmitted from the communication program 105 is transmitted using a virtual default gateway. Specifically, after the path control is performed on the communication stack 103, when the packet transfer unit 200 receives the packet transmitted from the communication program 105 from the virtual interface 102, the transmission source MAC address of the packet is the virtual The packet is sent to the virtual MAC address set in the interface 102, the destination MAC address of the packet is the MAC address of the virtual default gateway, and the source IP address of the packet is the virtual IP address set in the virtual interface 102. The destination IP address is the IP address of the destination communication device.

  On the other hand, when the communication program 105 communicates with a communication device on a network connected via a plurality of communication interfaces 101, a network in which a destination communication device exists for a packet transmitted from the communication program 105. Route control is performed on the communication stack 103 so as to transmit from the communication interface connected to the communication stack 103. Specifically, after route control is performed on the communication stack 103, the packet transfer unit 200 receives a packet transmitted from the communication program 105 from a communication interface connected to a network in which a destination communication device exists. Then, the source MAC address of the packet is the MAC address set in the communication interface, the destination MAC address of the packet is the MAC address of the destination communication device, and the source IP address of the packet is the communication interface The IP address of the packet is the IP address of the destination communication device.

  When the packet transfer rule generation unit 306 receives a new flow detection notification transmitted from the flow identification unit 203 of the packet transfer unit 200, that is, when the packet transfer rule unit 200 requests generation of a packet transfer rule, a new flow is generated. A packet transfer rule is generated based on the flow information included in the detection notification, the used interface information stored in the packet transfer rule storage unit 301, and the address information stored in the address information storage unit 303.

  A packet transfer rule generation method in the packet transfer rule generation unit 306 will be described. FIG. 7 is a flowchart illustrating an example of processing in which the transfer control unit according to the first embodiment generates a packet transfer rule.

  When the packet transfer rule generation unit 306 receives the new flow detection notification, the packet transfer rule generation unit 306 refers to the flow information included in the new flow detection notification and identifies the communication interface that has received the packet based on the reception port number included in the flow information. . Then, the address information of the communication interface that received the packet and the address information of the virtual interface 102 are acquired through the address information management unit 304 (step S201). The communication interface that has received the packet is one of the plurality of communication interfaces 101 and the virtual interface 102.

  Next, the packet transfer rule generation unit 306 refers to the flow information included in the new flow detection notification and identifies the source IP address of the received packet. Then, based on the subnet mask included in the address information of the communication interface that received the packet, the network address obtained from the identified source IP address, the network address obtained from the IP address set in the communication interface that received the packet, Are equal to each other (step S202). That is, based on the source IP address of the received packet, it is determined whether or not the packet is a packet transmitted from a communication device on the network connected via the communication interface that received the packet.

  If the network address obtained from the identified source IP address and the network address obtained from the IP address set in the communication interface that received the packet are not equal (No in step S202), the communication address is received via the communication interface that received the packet. It can be determined that the packet is transmitted from a communication device on a network other than the network to which the communication device 100 is directly connected, not the communication device on the network to be connected.

  When communicating with a communication apparatus on a network other than the network to which the communication apparatus 100 is directly connected, only the virtual default gateway set in the virtual interface 102 is set in the path table 104. A packet is transmitted from the virtual interface 102. Therefore, when a packet is received from a communication device on a network other than the network to which the communication device 100 is directly connected, it is necessary to take a measure so that the virtual interface 102 receives the packet.

  Therefore, when the network address obtained from the identified source IP address and the network address obtained from the IP address set in the communication interface that received the packet are not equal, the packet transfer rule generation unit 306 notifies the new flow detection notification. The flow information included in the information, the action of rewriting the destination MAC address to the virtual MAC address set to the virtual interface 102, the destination IP address to the virtual IP address set to the virtual interface 102, and the received A packet transfer rule including action information including an action (step S204) for transmitting the packet to the virtual interface 102 is generated.

  With the packet transfer based on such a packet transfer rule, the packet received by the packet transfer unit 200 is received by the virtual interface 102.

  When the network address obtained from the identified source IP address is equal to the network address obtained from the IP address set in the communication interface that received the packet (Yes in step S202), the identified source IP address is the packet. It is determined whether or not it is equal to the IP address set in the communication interface that has received (step S205).

  When the identified transmission source IP address is not equal to the IP address set in the communication interface that received the packet (No in step S205), transmission is performed from a communication device on the network connected via the communication interface that received the packet. It can be determined that the packet has been received. On the other hand, if the identified source IP address is equal to the IP address set in the communication interface that received the packet (Yes in step S205), it can be determined that the packet is transmitted by the communication program 105.

  When the identified source IP address is not equal to the IP address set in the communication interface that received the packet (No in step S205), the packet transfer rule generation unit 306 includes flow information included in the new flow detection notification, A packet transfer rule including action information including an action (step S206) for transmitting the received packet to the communication stack 103 is generated.

  By packet transfer based on such a packet transfer rule, the packet received by the packet transfer unit 200 is received as it is by the communication interface that received the packet.

  If the identified source IP address is equal to the IP address set in the communication interface that received the packet (Yes in step S205), the destination MAC address of the received packet based on the flow information included in the new flow detection notification Is identified. Then, it is determined whether or not the identified transmission source MAC address is equal to the virtual default gateway MAC address set in the virtual interface 102 (step S207).

  If the identified source MAC address is equal to the MAC address of the virtual default gateway (Yes in step S207), the communication program 105 connects the virtual default gateway to a communication device on a network other than the network to which the communication device 100 is directly connected. It can be determined that the packet is transmitted using On the other hand, when the identified source MAC address and the MAC address of the virtual default gateway are not equal (No in step S207), the communication program 105 is on the network connected via the communication interface that received the packet. It can be determined that the packet is to be transmitted.

  If the identified source MAC address is equal to the MAC address of the virtual default gateway (Yes in step S207), the packet transfer rule generation unit 306 determines the flow of the received packet based on the flow information included in the new flow detection notification. Used interface information including flow information conforming to the above is acquired through the used interface information management unit 302. Then, based on information that can uniquely identify any of the plurality of communication interfaces 101 included in the acquired use interface information, a communication interface to be used for communication is specified (step S208). Note that the communication interface used for communication is one of the plurality of communication interfaces 101.

  In addition, the address information of the communication interface used for the specified communication is acquired through the address information management unit 304 (step S209).

  The virtual default gateway is a default gateway on a virtual network inside the communication apparatus 100 connected via the virtual interface 102. However, since it is a virtual existence that exists only on the route table 104 set by the route table management unit 305, communication by simply transmitting the packet received by the packet transfer unit 200 to the communication interface used for communication is possible. The packet is not transmitted to a communication device on a network other than the network to which the device 100 is directly connected.

  In order to transmit a packet from a communication interface used for communication to a communication device on a network other than the network to which the communication device 100 is directly connected, on the network connected via the communication interface used for communication Need to send a packet to the default gateway.

  Therefore, by transferring the packet whose destination is the virtual default gateway to the default gateway on the network connected via the communication interface used for communication, the communication on the network other than the network to which the communication device 100 is directly connected. It can be said that packets can be transmitted to the device.

  Therefore, when the identified source MAC address is equal to the virtual default gateway MAC address, the packet transfer rule generation unit 306 uses the flow information included in the new flow detection notification and the source MAC address for communication. Action for rewriting the source IP address to the IP address set for the communication interface used for communication to the MAC address set for the interface (step S210), the default set for the communication interface using the destination MAC address for communication A packet transfer route including action information including an action (step S211) for rewriting to the MAC address of the gateway and an action (step S212) for transmitting the received packet to the communication interface used for communication. To generate.

  By packet transfer based on such a packet transfer rule, a packet received by the packet transfer unit 200 is transmitted to a default gateway on a network connected via a communication interface used for communication.

  When the identified source MAC address and the MAC address of the virtual default gateway are not equal (No in step S207), the source MAC address of the received packet is set to the MAC address set in the communication interface that received the packet, The source IP address of the packet is the IP address set in the communication interface that received the packet, and the destination MAC address of the received packet is the destination address on the network connected through the communication interface that received the packet. Since the destination IP address of the packet is the IP address of the destination communication device on the network connected via the communication interface that received the packet, the communication interface that received the packet as it is is the MAC address of the communication device. It may do it by sending from the scan.

  Accordingly, the packet transfer rule generation unit 306 includes a packet transfer rule including flow information included in the new flow detection notification and action information including an action (step S213) of transmitting the received packet to the communication interface that has received the packet. Is generated.

  By packet transfer based on such a packet transfer rule, the packet received by the packet transfer unit 200 is transmitted as it is from the communication interface that received the packet to the destination communication device.

  Prior to packet transmission, the communication stack 103 performs address resolution to obtain the destination MAC address based on the IP address of the destination communication device. When the communication apparatus 100 communicates with a communication apparatus on a network connected via a plurality of communication interfaces 101, a MAC address of a transmission destination may be obtained according to a normal address resolution method on each communication interface. On the other hand, when communicating with a communication device in a network other than the network to which the communication device 100 is directly connected, in order for the communication stack 103 to transmit a packet, the MAC address of the virtual default gateway is set by the packet transfer rule generation unit 306. In order to generate the packet transfer rule, the MAC address of the default gateway set in the communication interface used for communication is necessary.

  In the address resolution process, two types of address resolution packets are transmitted and received. The two types of address resolution packets are an address resolution request packet for requesting a communication device to obtain a MAC address to transmit the MAC address, and a request to the communication device that has made the request. This is an address resolution response packet for transmitting a response including the MAC address. The address resolution request packet is, for example, an ARP (Address Resolution Protocol) request packet. The address resolution response packet is, for example, an ARP reply packet.

  The address resolution request packet is at least a source MAC address, a destination MAC address, a request source communication device, specifically, a request source MAC address that is a MAC address and an IP address of a communication device that transmits an address resolution request packet. And the request source IP address, the request destination communication device, specifically, the request destination MAC address and the request destination IP address which are the MAC address and IP address of the communication device to obtain the MAC address. At the time of making an address resolution request, since the transmission destination MAC address and the request destination MAC address are unknown, the values of those MAC addresses are arbitrary MAC address values. For example, the transmission destination MAC address is a broadcast address, and the request destination MAC address is an empty value.

  The address resolution response packet is at least a source MAC address, a destination MAC address, a response source communication device, specifically, a response source MAC address that is a MAC address and an IP address of a communication device that transmits the address resolution response packet. And the response source IP address, the response destination communication device, specifically, the response destination MAC address and the response destination IP which are the MAC address and IP address of the communication device that has transmitted the address resolution request packet to which the address resolution response packet should be transmitted Contains an address. The MAC address of the communication device to be obtained by the address resolution request is the response source MAC address included in the address resolution response packet.

  Since the virtual default gateway is a virtual existence that exists only on the routing table 104, an address resolution response packet including the virtual default gateway MAC address can be obtained even if an address resolution request packet is transmitted to the virtual default gateway. Absent. Since the default gateway set for the communication interface used for communication does not exist on the routing table 104, the address resolution request packet is transmitted to the default gateway set for the communication interface used by the communication stack 103 for communication. Never do. Therefore, the transfer control unit 300 performs processing for obtaining the MAC address of the virtual default gateway and the MAC address of the default gateway set in the communication interface used for communication.

  A process for obtaining the MAC address of the virtual default gateway and the MAC address of the default gateway set in the communication interface used for communication will be described. When the packet transfer unit 200 receives an address resolution request packet for the virtual default gateway transmitted by the communication stack 103, specifically, a new packet from the packet transfer unit 200 due to the reception of the address resolution request packet for the virtual default gateway. When the transfer control unit 300 receives the flow detection notification, the transfer control unit 300 acquires the address information of each communication interface of the plurality of communication interfaces 101 through the address information management unit 304, and the default set in each communication interface Get the IP address of the gateway. Then, an address resolution request packet for each default gateway is generated, and the generated packet is transmitted to the packet transfer unit 200 together with an instruction to transmit the generated packet from each communication interface. The packet transfer unit 200 transmits an address resolution request packet for each default gateway according to the instruction.

  Note that when a new flow detection notification is transmitted from the packet transfer unit 200 when an address resolution request packet for the virtual default gateway is received, a packet transfer rule for the address resolution request packet flow for the virtual default gateway is: The packet transfer unit 200 is not set.

  By transmitting an address resolution request packet for each default gateway from the packet transfer unit 200, an address resolution response packet including the MAC address of each default gateway is transmitted from each default gateway to the communication apparatus 100. When the packet transfer unit 200 receives an address resolution response packet including the MAC address of each default gateway, specifically, from the packet transfer unit 200 by receiving an address resolution response packet including the MAC address of each default gateway. When the transfer control unit 300 receives the new flow detection notification, the MAC address of each default gateway is acquired based on the flow information included in the new flow detection notification, and the acquired MAC address of each default gateway is The information is stored in the address information storage unit 303 through the information management unit 304.

  When a new flow detection notification is transmitted from the packet transfer unit 200 when an address resolution response packet including the MAC address of each default gateway is received, the address resolution response packet including the MAC address of each default gateway is transmitted. The packet transfer rule is not set in the packet transfer unit 200.

  Then, when the address resolution response packet is received from all the default gateways and the MAC addresses of all the default gateways are acquired, the virtual default gateway that is a virtual MAC address composed of an arbitrary value set in advance in the transfer control unit 300 An address resolution response packet including the MAC address is generated, and the generated packet is transmitted from the virtual interface 102.

  By performing the processing as described above, the MAC address of the virtual default gateway necessary for the communication stack 103 to transmit the packet and the packet transfer rule generation unit 306 used for communication necessary for generating the packet transfer rule The MAC address of the default gateway set in the communication interface to be obtained can be obtained.

  The packet transfer unit management unit 307 manages the packet transfer unit 200 using an arbitrary protocol for controlling the operation of the packet transfer unit 200. When the packet transfer rule generation unit 306 generates a packet transfer rule, the packet transfer unit management unit 307 transmits the generated packet transfer rule to the packet transfer unit 200 together with a setting instruction.

  In the packet transfer rule generation process of the packet transfer rule generation unit 306, the use interface information including flow information that matches the flow of the received packet may not exist in the use interface information storage unit 301. In this case, any one of the plurality of communication interfaces 101 may be set as a default communication interface in advance, and the packet transfer rule may be generated using the default communication interface as a communication interface used for communication. In addition, default action information including an action of any content such as discarding a packet is set in advance, and the packet transfer rule is set based on the flow information included in the new flow detection notification and the default action information. It may be generated.

  In addition, information of a nonexistent communication interface was set in information that can uniquely identify any of the plurality of communication interfaces 101 included in the use interface information including flow information that matches the flow of the received packet. In this case, default action information for such use interface information such as discarding a packet is set in advance, and the packet transfer rule is set based on the flow information included in the new flow detection notification and the default action information. It may be generated.

  Furthermore, the default gateway information may not be included in the address information of each communication interface of the plurality of communication interfaces 101. When a communication interface that does not include default gateway information in the address information is used, communication cannot be performed with a communication device on a network other than the network to which the communication device 100 is directly connected. In such a case, the used interface information management unit 302 may be configured to make it impossible to set the used interface information that defines the use of the communication interface whose address information does not include the default gateway information. Further, default action information including an action of arbitrary contents such as discarding a packet for such use interface information may be set in advance, and a packet transfer rule may be generated based on the action information.

  When the use interface information stored in the use interface information storage unit 301 is changed through the use interface information management unit 302 by the user or an arbitrary program, the packet transfer rule generated based on the changed use interface information is also changed. There is a need.

  When the used interface information is changed, the transfer control unit 300 stores all packet transfer rules that match the flow information included in the changed used interface information in the packet transfer rule storage unit 201 of the packet transfer unit 200. Is acquired from the packet transfer rule table through the packet transfer unit management unit 307, the content of each acquired packet transfer rule is changed to the content based on the changed used interface information, and each changed packet transfer rule is changed. A packet transfer rule is changed by transmitting to the packet transfer unit 200 through the packet transfer unit management unit 307 together with the setting instruction to be performed. Alternatively, all the packet transfer rules that match the flow information included in the changed used interface information may be deleted through the packet transfer unit management unit 307, and a response may be made so as to generate a new packet transfer rule.

  In the present embodiment, by setting only the virtual default gateway in the route table 104 of the communication stack 103 of the communication device 100, there are a plurality of default gateways on the route table in the route control performed by the communication stack 103. Therefore, it is not known which default gateway should be used for communication, and it is possible to avoid a situation where communication is disabled.

  When communication is performed with a communication device on a network other than the network to which the communication device 100 is directly connected, the communication stack 103 is transmitted from the arbitrary communication program 105 operating on the communication device 100 to the virtual default gateway by the path control performed by the communication stack 103. To the default gateway on the network connected via the communication interface used for the communication specified by the used interface information set through the used interface information management unit 302. When using a communication interface other than the preferentially set communication interface, a plurality of communication interfaces are different from the method described in Patent Document 1 that cannot communicate with a communication apparatus on a network other than the network to which the communication apparatus is directly connected. When any communication interface 101 is used, it is possible to communicate with a communication device on a network other than the network to which the communication device 100 is directly connected. Therefore, it is possible to perform communication using the networks connected via the plurality of communication interfaces 101 at the same time.

  Further, it is not necessary to take any special measures such as implementing a function that allows the communication program 105 to specify a communication interface used for communication, such as a ping command. From the network side, the communication device 100 seems to perform communication in accordance with a normal IP communication mechanism, and therefore requires special measures on the network side, such as preparing a specific mechanism or an opposite communication device. do not do. In addition, the communication device 100 can autonomously communicate without any need for pre-registering information on an arbitrary address of a specific communication device.

  Furthermore, since the communication program 105 seems to perform communication using the virtual default gateway via the virtual interface 102 regardless of the communication interface used for communication, the communication interface used for communication has been changed. If the address information of the communication interface changes due to a case where the lease expires or a handover occurs due to movement of the communication device, communication is performed without making the communication program 105 aware of it. Can do.

  By using the network control method for each flow, and by making it possible to arbitrarily set the use interface information that defines which communication interface is used for each flow from the user or any program, the user or An arbitrary program can select a network to be used for communication for each flow based on an arbitrary request or condition. In other words, an application that is a communication program that sends and receives traffic with different characteristics can be seen as a set of several flows. Therefore, which network is used by an application that operates on a communication device with a finer granularity of a flow unit. Arbitrary selection of whether to perform communication can be realized, and improvement in the convenience of the communication device can be expected.

  For example, the traffic of an application in which a user transmits / receives an e-mail with a small communication volume, specifically, the destination port number is 25 (SMTP, Simple Mail Transfer Protocol) or 110 (POP3, Post Office Protocol version 3). For the above flow, use interface information that defines the use of 3G is set, and traffic of an application that performs communication with a large amount of communication such as video streaming communication on the Web, specifically, a destination port An embodiment of the present invention is configured by setting use interface information that defines that a wireless LAN 3G is used for a flow having a number 80 (HTTP, HyperText Transfer Protocol). More, each traffic are as communication is performed by using the 3G and wireless LAN.

  For example, when the user does not permit communication with a communication device on an arbitrary network, specifically, with respect to the flow of the IP address of the communication device whose transmission source IP address or transmission destination IP address does not permit communication By setting use interface information that defines the use of a non-existing communication interface, according to the embodiment of the present invention, it is possible to discard a packet transmitted / received to / from a communication device that does not permit communication.

  For example, an application operating on the communication device 100 that monitors whether or not each communication interface of the plurality of communication interfaces 101 can communicate is arbitrarily set by dynamically setting use interface information based on the state of each communication interface. It is possible to dynamically change the network used for communication of any flow. When the wireless LAN network is disconnected and communication becomes impossible, the usage interface information that defines the use of the wireless LAN is changed to the usage interface information that defines the use of 3G. Any flow of communication is performed using 3G.

  For example, an application that operates on the communication device 100 that monitors the reception field strengths of the wireless interfaces included in the plurality of communication interfaces 101 has a reception field strength that is greater than an arbitrarily set threshold based on the reception field strengths of the wireless interfaces. By selecting a wireless interface as a communication interface to be used for communication and setting use interface information that defines the use of the wireless interface, communication of any flow is in the best state according to the embodiment of the present invention. Communication is performed using a wireless interface.

  For example, an application running on the communication device 100 that monitors the number of packet transmissions / receptions of each of the plurality of communication interfaces 101 is based on the number of packet transmission / receptions of each communication interface and the upper limit of the number of packet transmissions / receptions preset by the user By setting use interface information that defines that another communication interface or a nonexistent communication interface is used when the number of packet transmission / reception of a communication interface used for communication of an arbitrary flow reaches the upper limit, the present invention According to the embodiment, for any flow that uses a communication interface whose number of packet transmission / reception has reached the upper limit, communication is performed using another communication interface, or a packet is discarded, etc. Action can be taken.

(Embodiment 2)
FIG. 8 is a block diagram illustrating a more detailed configuration example of the communication apparatus focusing on elements related to communication in the second embodiment. Constituent elements similar to those of the communication device in the first embodiment are denoted by the same reference numerals, and detailed description thereof is omitted. The packet transfer unit 200 of the communication device 100 according to the second embodiment configures a structure such as a bridge inside the communication device 100. Here, a case where the packet transfer unit 200 forms a bridge will be described as an example. When the packet transfer unit 200 forms a bridge, the communication stack 103 needs to transmit and receive packets using the virtual interface 102 connected to the bridge formed by the packet transfer unit 200, specifically, a local port of the bridge as an end point. is there. That is, as in the first embodiment, the communication stack 103 cannot directly transmit / receive packets by using the plurality of communication interfaces 101 connected to the packet transfer unit 200. Therefore, even if the method of the first embodiment is applied as it is to the communication apparatus in the second embodiment, it is impossible to perform communication using the networks connected via the plurality of communication interfaces 101 at the same time.

  Therefore, in the second embodiment, setting of the IP address of the virtual interface 102 and setting of the routing table 104 of the communication stack 103 are performed so that packets are transmitted and received with the virtual interface 102 as an end point. By performing packet transfer rule generation processing, it is possible to select a network to be used for communication for each flow and perform communication using a plurality of networks simultaneously.

  Similar to the first embodiment, virtual address information composed of arbitrary values is set in the virtual interface 102 in the second embodiment. The address information of the virtual interface 102 includes at least a virtual MAC address, a virtual IP address, and an IP address of a virtual default gateway.

  The address information management unit 304 in the second embodiment acquires the address information of each interface of the plurality of communication interfaces 101 connected to the packet transfer unit 200 and the address information of the virtual interface 102 and stores them in the address information storage unit 303. Let Furthermore, the IP address of each communication interface included in the acquired address information is set in the virtual interface 102. Thereby, the virtual interface 102 in the second embodiment has one or more IP addresses, specifically, a virtual IP address and an IP address of each communication interface.

  The routing table management unit 305 in the second embodiment sets only the virtual default gateway set in the virtual interface 102 in the routing table 104 included in the communication stack 103. Furthermore, route information for communicating with each network connected via the plurality of communication interfaces 101 via each communication interface is deleted from the route table 104. Instead, route information for communicating via the virtual interface 102 to each network connected via the plurality of communication interfaces 101 is set in the route table 104.

  FIG. 9 is a configuration example of a routing table in the second embodiment. The routing table 104 is set as shown in FIG. 9 by the routing table management unit 305 in the second embodiment. Unlike the first embodiment, path information for performing communication via the virtual interface 102 is set in each network connected via the plurality of communication interfaces 101. As the route information related to the default gateway, only the route information of the virtual default gateway is set as in the first embodiment.

  By setting the IP address of the virtual interface 102 and the routing table 104 as described above, all packets can be transmitted and received via the virtual interface 102 in the communication stack 103. Specifically, not only when communicating with a communication apparatus on a network other than the network to which the communication apparatus 100 is directly connected, but also with a communication apparatus on a network connected via the plurality of communication interfaces 101. Even in this case, packets are transmitted and received with the virtual interface 102 as an end point.

  When an arbitrary communication program 105 operating on the communication device 100 communicates with a communication device on a network other than the network to which the communication device 100 is directly connected, a packet is transmitted after path control is performed on the communication stack 103. When the transfer unit 200 receives a packet transmitted from the communication program 105 from the virtual interface 102, the source MAC address of the packet is the virtual MAC address set in the virtual interface 102, and the destination MAC address of the packet is The MAC address of the virtual default gateway, the source IP address of the packet is the virtual IP address set in the virtual interface 102, and the destination IP address of the packet is the IP address of the destination communication device.

  On the other hand, when an arbitrary communication program 105 operating on the communication apparatus 100 communicates with a communication apparatus on a network connected via a plurality of communication interfaces 101, after path control is performed on the communication stack 103. When the packet transfer unit 200 receives a packet transmitted from the communication program 105 from the virtual interface 102, the packet source MAC address is set to the virtual MAC address set in the virtual interface 102, and the packet destination MAC address is set. Is the MAC address of the communication device that is the transmission destination, and the source IP address of the packet is set in the virtual interface 102 by the address information management unit 304. The communication interface connected to the network in which the communication device of the transmission destination exists To the IP address, The destination IP address, the IP address of the destination communication device.

  A packet transfer rule generation method in the packet transfer rule generation unit 306 in the second embodiment will be described. FIG. 10 is a flowchart illustrating an example of processing in which the transfer control unit according to the second embodiment generates a packet transfer rule.

  When the packet transfer rule generation unit 306 receives the new flow detection notification, the packet transfer rule generation unit 306 refers to the flow information included in the new flow detection notification and identifies the communication interface that has received the packet based on the reception port number included in the flow information. . Then, the address information of the communication interface that has received the packet and the address information of the virtual interface 102 are acquired through the address information management unit 304 (step S301). The communication interface that has received the packet is one of the plurality of communication interfaces 101 and the virtual interface 102.

  Next, the packet transfer rule generation unit 306 refers to the flow information included in the new flow detection notification and identifies the source IP address of the received packet. Based on the network address obtained from the identified source IP address based on the subnet mask included in the address information of the communication interface that received the packet, and the IP address of each communication interface of the plurality of communication interfaces 101 set in the virtual interface 102 It is determined whether any of the obtained network addresses is equal (step S302). That is, based on the source IP address of the received packet, it is determined whether or not the packet is a packet transmitted from a communication device on the network connected via the communication interface that received the packet.

  When the network address obtained from the identified source IP address is not equal to any one of the network addresses obtained from the IP addresses of the communication interfaces 101 of the plurality of communication interfaces 101 set in the virtual interface 102 (step S302). No), it can be determined that the packet is transmitted from a communication device on a network other than the network to which the communication device 100 is directly connected, not the communication device on the network connected via the communication interface that has received the packet. .

  When communicating with a communication apparatus on a network other than the network to which the communication apparatus 100 is directly connected, only the virtual default gateway set in the virtual interface 102 is set in the route table 104 as in the first embodiment. Therefore, the packet is transmitted from the virtual interface 102 by the path control of the communication stack 103. Therefore, when a packet is received from a communication device on a network other than the network to which the communication device 100 is directly connected, it is necessary to take a measure so that the virtual interface 102 receives the packet.

  Therefore, if the network address obtained from the identified source IP address is not equal to any one of the network addresses obtained from the IP addresses of the communication interfaces of the plurality of communication interfaces 101 set in the virtual interface 102, the packet The transfer rule generation unit 306 rewrites the flow information included in the new flow detection notification, the action of rewriting the destination IP address with the virtual IP address set in the virtual interface 102 (step S303), and the destination MAC address in the virtual interface 102. Action information including an action for rewriting the set virtual MAC address (step S304) and an action for sending the received packet to the virtual interface 102 (step S305). To generate the Tsu-forwarding rules.

  With the packet transfer based on such a packet transfer rule, the packet received by the packet transfer unit 200 is received by the virtual interface 102.

  When the network address obtained from the identified source IP address is equal to one of the network addresses obtained from the IP addresses of the communication interfaces 101 of the plurality of communication interfaces 101 set in the virtual interface 102 (Yes in step S302) ), It is determined whether or not the identified source IP address is equal to any of the IP addresses of the communication interfaces of the plurality of communication interfaces 101 set in the virtual interface 102 (step S306).

  If the identified transmission source IP address is not equal to any of the IP addresses of the communication interfaces of the plurality of communication interfaces 101 set in the virtual interface 102 (No in step S306), the communication interface that has received the packet passes through the communication interface. It can be determined that the packet is transmitted from a communication device on the connected network. On the other hand, when the identified source IP address is equal to any of the IP addresses of the communication interfaces of the plurality of communication interfaces 101 set in the virtual interface 102 (Yes in step S306), the packet transmitted by the communication program 105 It can be judged that.

  When the identified source IP address is not equal to any of the IP addresses of the communication interfaces of the plurality of communication interfaces 101 set in the virtual interface 102 (No in step S306), the communication apparatus in the second embodiment In 100, since it is necessary to transmit and receive a packet with the virtual interface 102 as an end point, it is necessary to take a measure to allow the virtual interface 102 to receive the packet.

  Therefore, the packet transfer rule generation unit 306 performs the action of rewriting the flow information included in the new flow detection notification, the destination MAC address to the virtual MAC address set in the virtual interface 102 (step S304), and the received packet as a virtual A packet transfer rule including action information including an action (step S305) to be transmitted to the interface 102 is generated.

  With the packet transfer based on such a packet transfer rule, the packet received by the packet transfer unit 200 is received by the virtual interface 102.

  When the identified transmission source IP address is equal to one of the IP addresses of the communication interfaces of the plurality of communication interfaces 101 set in the virtual interface 102 (Yes in step S306), the flow information included in the new flow detection notification Based on the above, the destination MAC address of the received packet is specified. Then, it is determined whether or not the identified transmission source MAC address is equal to the virtual default gateway MAC address set in the virtual interface 102 (step S307).

  When the identified source MAC address is equal to the MAC address of the virtual default gateway (Yes in step S307), the communication program 105 sends a virtual default to a communication device on a network other than the network to which the communication device 100 is directly connected. It can be determined that the packet is transmitted using the gateway. On the other hand, if the identified source MAC address and the MAC address of the virtual default gateway are not equal (No in step S307), the communication program 105 is connected via any one of the plurality of communication interfaces 101. It can be determined that the packet is transmitted to a communication device on the network.

  If the identified source MAC address is equal to the MAC address of the virtual default gateway (Yes in step S307), the packet transfer rule generation unit 306 determines the flow of the received packet based on the flow information included in the new flow detection notification. Used interface information including flow information conforming to the above is acquired through the used interface information management unit 302. Then, based on information that can uniquely identify any of the plurality of communication interfaces 101 included in the acquired use interface information, a communication interface to be used for communication is specified (step S308). Note that the communication interface used for communication is one of the plurality of communication interfaces 101.

  In addition, the address information of the communication interface used for the specified communication is acquired through the address information management unit 304 (step S309).

  The packet transfer rule generation unit 306 then detects a new flow in order to transfer a packet whose destination is the virtual default gateway to the default gateway on the network connected via the communication interface used for communication. Action for rewriting the flow information included in the notification and the MAC address set for the communication interface using the source MAC address for communication to the IP address set for the communication interface used for communication (step S310) ), The action of rewriting the destination MAC address to the MAC address of the default gateway set in the communication interface used for communication (step S311), and the received packet is transmitted to the communication interface used for communication Action generates a packet forwarding rule including the action information consisting of (step S312).

  By packet transfer based on such a packet transfer rule, a packet received by the packet transfer unit 200 is transmitted to a default gateway on a network connected via a communication interface used for communication.

  A network to which the communication program 105 connects via any one of the plurality of communication interfaces 101 when the identified source MAC address is not equal to the MAC address of the virtual default gateway (No in step S307) It can be determined that the packet is transmitted to an upper communication device. In the first embodiment, the communication stack 103 can directly send and receive packets by using a plurality of communication interfaces 101. Therefore, a communication device on a network connected via the plurality of communication interfaces 101. When the communication is performed, the packet may be transmitted from the communication interface that has received the packet to the destination communication device. However, as in the second embodiment, when transmitting and receiving packets with the virtual interface 102 as an endpoint, the packet transmitted from the communication program 105 is not a network to which the communication terminal 100 is directly connected by the communication device of the transmission destination. The packet transfer unit 200 receives a packet transmitted from the virtual interface 102 regardless of whether the communication device is on the network of the network or the communication device on the network connected via the plurality of communication interfaces 101. That is, even when communication is performed with a communication apparatus on a network connected via a plurality of communication interfaces 101, it is necessary to specify a communication interface used for communication.

  In the second embodiment, the IP address of each communication interface of the plurality of communication interfaces 101 is set in the virtual interface 102, and each network connected via the plurality of communication interfaces 101 is provided with the virtual interface 102. By setting the route information to be communicated via the route table 104, after the route control is performed on the communication stack 103, when the packet transfer unit 200 receives the packet, the source IP address of the packet is This is the IP address of the communication interface connected to the network where the destination communication device exists. Therefore, the communication interface used for communication can be specified based on the source IP address of the packet.

  When the identified source MAC address and the MAC address of the virtual default gateway are not equal, the packet transfer rule generation unit 306 acquires the address information of each communication interface of the plurality of communication interfaces 101 through the address information management unit 304. (Step S313).

  Then, based on the specified source IP address, any one of the plurality of communication interfaces 101 in which the specified source IP address is equal to the set IP address is used as a communication interface for communication. Specify (step S314).

  Based on the communication interface used for the identified communication, the packet transfer rule generation unit 306 rewrites the flow information included in the new flow detection notification and the source MAC address to the MAC address set in the communication interface used for communication. A packet transfer rule including (step S315) and action information including action (step S316) for transmitting the received packet to the communication interface used for communication is generated.

  By packet transfer based on such a packet transfer rule, the packet received by the packet transfer unit 200 is transmitted from the communication interface connected to the network where the destination communication device exists to the destination communication device.

  Similar to the first embodiment, the communication stack 103 in the second embodiment performs address resolution to obtain the destination MAC address based on the IP address of the destination communication device prior to packet transmission. Do. However, unlike the first embodiment, the communication device 100 according to the second embodiment performs packet transmission / reception using the virtual interface 102 as an end point, and therefore performs address resolution directly on each communication interface of the plurality of communication interfaces 101. I can't do it. For this reason, in the normal address resolution method, it is not only possible to obtain the MAC address of the transmission destination but also to respond to the address resolution request for each communication interface of the plurality of communication interfaces 101 from other communication devices.

  Therefore, the transfer control unit 300 in the second embodiment performs processing for enabling address resolution in the communication device 100 in the second embodiment. FIG. 11 is a flowchart illustrating an example of address resolution processing of the transfer control unit in the second embodiment.

  When the packet transfer unit 200 receives the address resolution packet, the packet transfer unit 200 transmits a new flow detection notification for the flow of the address resolution packet to the transfer control unit 300 (step S401). In the address resolution processing of the transfer control unit in the second embodiment, when an address resolution packet is received, a packet for the address resolution packet flow is transmitted so that a new flow detection notification is transmitted from the packet transfer unit 200. The transfer rule is not set in the packet transfer unit 200. It is assumed that the new flow detection notification for the address resolution packet flow includes the address resolution packet itself.

  When receiving a new flow detection notification for the address resolution packet flow, the transfer control unit 300 acquires the address information of each communication interface of the plurality of communication interfaces 101 and the address information of the virtual interface 102 through the address information management unit 304. (Step S402). Then, referring to the contents of the address resolution packet, it is determined whether the received address resolution packet is an address resolution request packet or an address resolution response packet (step S403).

  If the received address resolution packet is an address resolution request packet (request in step S403), the request destination IP address included in the address resolution request packet is referred to and the request destination IP address and the plurality of communication interfaces 101 are Whether the received address resolution request packet is an address resolution request packet for making a request to each communication interface of the plurality of communication interfaces 101 is determined based on whether the IP address of any one of the communication interfaces is equal. (Step S404).

  If it is an address resolution request packet for making a request to each communication interface of the plurality of communication interfaces 101 (Yes in step S404), an address resolution response packet including the MAC address of the communication interface that has received the address resolution request packet is generated. To do. The reason is that when the received address resolution request packet is transferred to the virtual interface 102 and an address resolution response packet is generated by the address resolution processing of the communication stack 103, it is not the MAC address of the communication interface that received the address resolution request packet. This is because the virtual MAC address set in the virtual interface 102 is included in the address resolution response packet.

  The transfer control unit 300 generates an address resolution response packet including the MAC address of the communication interface that has received the address resolution request packet (step S405), and transmits the packet generated from the communication interface that has received the packet to the requesting communication device. (Step S406).

  By generating an address resolution response packet including the MAC address of the communication interface that has received the address resolution request packet, and transmitting the packet from the communication interface that has received the packet to the requesting communication device, an address resolution request from another communication device can be obtained. Can respond.

  Further, the address resolution request packet transmitted from the other communication device is not transferred to the virtual interface 102 by performing the above-described processing, and therefore, the address resolution response packet from the virtual interface 102 to the other communication device. Can never be sent.

  When the received address resolution request packet is not an address resolution request packet for making a request to each communication interface of the plurality of communication interfaces 101 (No in step S404), the communication stack 103 is connected to another communication device via the virtual interface 102. It can be determined that this is an address resolution request packet transmitted to. If the communication interface that received the address resolution request packet is other than the virtual interface 102, it can be determined that the address resolution request packet is not related to the communication device 100, and therefore the received packet is discarded (not shown).

  When the received address resolution request packet is not an address resolution request packet for making a request to each communication interface of the plurality of communication interfaces 101, the transfer control unit 300 includes a request destination IP address included in the address resolution request packet, a virtual address Based on whether or not the MAC address of the default gateway is equal, it is determined whether or not the received address resolution request packet is an address resolution request packet for making a request to the virtual default gateway (step S407).

  If the received address resolution request packet is an address resolution request packet for making a request to the virtual default gateway (Yes in step S407), the default gateway set in each communication interface as in the first embodiment Address resolution request for. On the other hand, when the received address resolution request packet is not an address resolution request packet for making a request to the virtual default gateway (No in step S407), the communication stack 103 via the virtual interface 102 passes through the plurality of communication interfaces 101. Thus, it can be determined that the address resolution request packet is transmitted to a communication device on the connected network.

  If the received address resolution request packet is an address resolution request packet for making a request to the virtual default gateway (Yes in step S407), the transfer control unit 300 performs address resolution for the default gateway set in each communication interface. A request packet is generated (step S408), and the generated packet is transmitted to the packet transfer unit 200 together with an instruction to transmit the generated packet from each communication interface (step S409). The packet transfer unit 200 transmits an address resolution request packet to each default gateway according to the instruction.

  By transmitting an address resolution request for each default gateway from the packet transfer unit 200, an address resolution response packet including the MAC address of each default gateway is transmitted from each default gateway.

  When the received address resolution request packet is not an address resolution request packet for making a request to the virtual default gateway (No in step S407), the received address resolution request packet is received by the communication stack 103 via the virtual interface 102. Since the address resolution request packet is transmitted to a communication device on a network connected via any one of the communication interfaces 101, the address resolution request packet is transmitted to the communication device. is necessary.

  In the second embodiment, the IP address of each communication interface of the plurality of communication interfaces 101 is set in the virtual interface 102, and each network connected via the plurality of communication interfaces 101 is provided with the virtual interface 102. Since the route information to be communicated via the communication is set in the route table 104, the request source IP address included in the address resolution request packet transmitted by the communication stack 103 via the virtual interface 102 is a communication to obtain a MAC address. This is the IP address of one of the plurality of communication interfaces 101 connected to the network in which the device exists. Therefore, the communication interface used for communication can be specified based on the request source IP address.

  When the received address resolution request packet is not an address resolution request packet for making a request to the virtual default gateway, the transfer control unit 300 determines that the request source IP address included in the address resolution request packet and the set IP address are One of the equal communication interfaces 101 is specified as a communication interface used for communication (step S410).

  Based on the communication interface used for the identified communication, the source MAC address and the request source MAC address included in the received address resolution request packet are rewritten to the MAC address of the communication interface used for communication (step S411), and the source MAC An address resolution request packet in which the address and the request source MAC address are rewritten is transmitted from the communication interface used for communication (step S412).

  By identifying the communication interface used for communication based on the request source IP address, rewriting the source MAC address and the request source MAC address to the MAC address of the communication interface used for communication, and transmitting from the communication interface used for communication The address resolution request packet is transmitted to a communication device on a network connected via any one of the plurality of communication interfaces 101.

  If the received address resolution packet is an address resolution response packet (response in step S403), the response destination IP address included in the address resolution response packet is referred to and the response destination IP address and the plurality of communication interfaces 101 are referred to. Whether or not the received address resolution response packet is an address resolution response packet that is a response to each communication interface of the plurality of communication interfaces 101 is determined based on whether or not the IP address of any one of the communication interfaces is equal. Step S413).

  When the received address resolution response packet is not an address resolution response packet that is a response to each communication interface of the plurality of communication interfaces 101 (No in step S413), the communication interface that received the address resolution response packet is other than the virtual interface 102. If there is, it can be determined that the address resolution request packet is not related to the communication apparatus 100, and the received packet is discarded (S414).

  When an address resolution request packet is received from another communication device, an address resolution response packet including the MAC address of the communication interface that has received the packet is generated and transmitted to the requesting communication device. Since the address resolution request packet is not transferred to the virtual interface 102, an address resolution response packet for another communication device is not transmitted from the virtual interface 102. Therefore, it is not necessary to consider the address resolution response packet transmitted from the virtual interface 102.

  When the received address resolution response packet is an address resolution response packet that is a response to each communication interface of the plurality of communication interfaces 101 (Yes in step S413), the response source IP address included in the address resolution response packet, Whether the received address resolution response packet is an address resolution response packet that is a response from the default gateway set for each communication interface, based on whether or not the MAC address of the default gateway set for the communication interface is equal. Determination is made (step S415).

  If the received address resolution response packet is an address resolution response packet that is a response from each default gateway (Yes in step S415), storage of the MAC address of each default gateway, as in the first embodiment, and Perform address resolution response for the virtual default gateway.

  The MAC address of each default gateway can be acquired from the response source MAC address included in the address resolution response packet that is a response from each default gateway. The acquired MAC address of each default gateway is stored through the address information management unit 304 (step S416). Then, it is determined whether or not the MAC addresses of all default gateways have been acquired (step S417). When all the MAC addresses have been acquired (Yes in step S417), the transfer control unit 300 includes the virtual MAC addresses of the virtual default gateway. An address resolution response packet is generated (step S418), and the generated packet is transmitted to the packet transfer unit 200 together with an instruction to transmit the generated packet from the virtual interface 102 (step S419). The packet transfer unit 200 transmits an address resolution response packet including the virtual MAC address of the virtual default gateway according to the instruction.

  When the MAC addresses of all the default gateways are acquired, an address resolution response packet including the virtual MAC addresses of the virtual default gateways is generated and transmitted to the virtual interface 102, so that the communication stack 103 transmits the packets. The necessary MAC address of the virtual default gateway and the MAC address of the default gateway set in the communication interface used for communication necessary for the packet transfer rule generation unit 306 to generate the packet transfer rule can be obtained.

  If the received address resolution response packet is not an address resolution response packet that is a response from each default gateway (No in step S415), the communication stack 103 transmits via the virtual interface 102 and is forwarded to the request destination transmission apparatus. It can be said that the response to the address resolution request packet is an address resolution response packet transmitted from the requesting transmission apparatus. The response destination IP address included in the address resolution response packet is the IP address of one of the plurality of communication interfaces 101 used when transmitting the address resolution request packet to the request destination transmission apparatus. Since the communication stack 103 transmits the address resolution request packet via the virtual interface 102, it is necessary to take measures so that the virtual interface 102 receives the address resolution response packet.

  In that case, the destination MAC address and the response destination MAC address included in the received address resolution response packet are rewritten to the MAC address of the virtual interface 102 (step S420), and the address resolution is rewritten to the destination MAC address and the response destination MAC address. A response packet is transmitted from the virtual interface 102 (step S421).

  The transmission destination MAC address and the response destination MAC address included in the received address resolution response packet are rewritten to the MAC address of the virtual interface 102 and transmitted from the virtual interface 102, so that the virtual interface 102 passes through the plurality of communication interfaces 101. Address resolution for obtaining the MAC address of the transmitting device on the connected network.

(Embodiment 3)
In the first and second embodiments, the user or an arbitrary program sets use interface information for each flow in the use interface information storage unit 301 through the use interface information management unit 302. A plurality of used interface information may be set for each flow so that communication is performed using a plurality of different communication interfaces.

  FIG. 12 is a configuration example of the used interface information stored in the used interface information storage unit in the third embodiment. When there are a plurality of used interface information on the used interface information storage unit 302 including the same flow information and information that can uniquely identify any one of the plurality of communication interfaces 101 indicating different communication interfaces. The communication interface used for communication cannot be specified only by the flow information. Therefore, some information is included in the used interface information as parameters for specifying the communication interface used for communication. In the configuration example of FIG. 12, the used interface information is a parameter indicating the priority of each used interface information and whether or not the communication interface is in a communicable state as parameters for specifying the communication interface used for communication. It includes permission / rejection, a received electric field strength threshold, and an upper limit of the number of packets to be transmitted / received.

  In the packet transfer rule generation process performed by the packet transfer rule generation unit 306 of the transfer control unit 300 in the third embodiment, the packet transfer rule generation unit 306 includes flow information and parameters for specifying a communication interface used for communication. Thus, based on which used interface information among the plurality of used interface information, the packet transfer rule is selected. For example, the communication interface having the lowest priority value among the communication interfaces capable of communication is used, the wireless interface having the reception field strength value larger than the threshold value is stored, the number of transmitted / received packets is stored, and the number of packets is By selecting the interface information to be used according to a combination of several parameters, such as not using a communication interface that has reached the upper limit, communication can be performed by dynamically selecting a communication interface that meets any request or condition. it can.

  The embodiment of the present invention has been described above by way of example, but the present invention is not limited to this, and can be changed and modified in accordance with the purpose within the scope of the claims.

  As described above, according to the present invention, there is an excellent effect that communication or the like can be performed using an appropriate network for each flow, and a communication device including one or more communication interfaces, for example, It is suitably applied to a personal computer, a smart phone and the like.

100 Communication Device 101 Multiple Communication Interfaces 102 Virtual Interface 103 Communication Stack 104 Routing Table 105 Communication Program 200 Packet Transfer Unit 201 Packet Transfer Rule Storage Unit 202 Packet Transfer Rule Management Unit 203 Flow Identification Unit 204 Action Execution Unit 300 Transfer Control Unit 301 Use Interface information storage unit 302 Used interface information management unit 303 Address information storage unit 304 Address information management unit 305 Route table management unit 306 Packet transfer rule generation unit 307 Packet transfer unit management unit

Claims (12)

  1. A communication device that uses a network control method in units of flows, capable of selecting a network to be used for communication for each flow,
    The communication device
    One or more communication interfaces;
    A packet transfer unit for transferring received packets;
    A transfer control unit for controlling the operation of the packet transfer unit;
    A communication apparatus comprising:
  2.   The communication apparatus according to claim 1, wherein the packet transfer unit is connected to the one or more communication interfaces and virtual interfaces to transfer packets.
  3. The transfer control unit
    Information including flow information that can identify a flow and information that can uniquely identify one of the one or more communication interfaces, and which communication interface is used for each flow Use interface information storage unit for storing use interface information for determining whether to perform
    A use interface information management unit that enables the use network information to be stored in the use interface information storage unit to be set from a user or an arbitrary program;
    The communication device according to claim 1.
  4. The transfer control unit
    An address storage unit that stores information necessary for the communication interface and the virtual interface to transmit and receive packets, and stores address information set in the communication interface and the virtual interface;
    An address information management unit for acquiring the address information from a communication interface and the virtual interface and storing the address information in the address storage unit;
    The communication device according to claim 1.
  5. The transfer control unit
    Of the default gateway set for each of the one or more communication interfaces acquired by the address information management unit and the virtual default gateway set for the virtual interface, only the virtual default gateway is set in the route table of the communication device. The communication apparatus according to claim 1, further comprising a routing table management unit.
  6. The transfer control unit
    A packet transfer rule generation unit that generates a packet transfer rule, which is information that defines the operation of the packet transfer unit when receiving a packet;
    A packet transfer unit management unit that manages the packet transfer unit and sets the packet transfer rule generated by the packet transfer rule generation unit in the packet transfer unit;
    The communication device according to claim 1.
  7. The packet transfer rule generation unit
    When the packet transfer unit is requested to generate the packet transfer rule, the communication interface used for communication is specified based on the used interface information, and the flow information and the address information of the communication interface used for the communication are specified. 7. The packet transfer rule including information related to rewriting of an arbitrary address and identifier value included in the packet, processing for transmitting the packet to a communication interface used for the communication, and the like is generated. The communication device described.
  8. The packet transfer rule generation unit
    When the destination of the flow requested to generate the packet transfer rule is a virtual default gateway, the communication interface used for communication is specified based on the use interface information including the flow information suitable for the flow, and the packet transfer The communication apparatus according to claim 7, wherein the packet transfer rule is generated so that a unit transfers a packet of the flow to a default gateway set in a communication interface used for the communication.
  9. Select a communication interface that a user or any program uses for communication for each flow in a communication device that uses a network control method in units of flows, which includes one or more communication interfaces and a packet transfer unit that transfers received packets. A transfer control method that enables
    The transfer control method includes:
    A packet transfer rule generating step for generating a packet transfer rule which is information for determining the operation of the packet transfer unit when receiving a packet;
    A packet transfer unit managing step for managing the packet transfer unit and setting the packet transfer rule generated by the packet transfer rule generating step in the packet transfer unit;
    A transfer control method comprising:
  10. In the packet transfer rule generation step,
    When the packet transfer unit is requested to generate the packet transfer rule, the flow information is information that can identify a flow, and information that can uniquely identify one of the one or more communication interfaces. Used interface information that determines which communication interface is used for each flow, and information necessary for the communication interface to send and receive packets and address information set in the communication interface. 10. The transfer control according to claim 9, wherein the packet transfer rule is generated based on rewriting of an arbitrary address and identifier value included in the packet and processing for transmitting the packet to a communication interface used for the communication. Method.
  11. In a computer that uses a network control method in units of flows that includes one or more communication interfaces and a packet transfer unit that transfers received packets, a user or an arbitrary program can select a communication interface to be used for each flow. A program for executing processing,
    The program is stored in the computer.
    A packet transfer rule generation process for generating a packet transfer rule, which is information defining the operation of the packet transfer unit when receiving a packet;
    A packet transfer unit management process for managing the packet transfer unit and setting the packet transfer rule generated by the packet transfer rule generation process in the packet transfer unit;
    A transfer control program that executes
  12. In the packet transfer rule generation process,
    When the packet transfer unit is requested to generate the packet transfer rule, the flow information is information for identifying a flow, and information that can uniquely identify one of the one or more communication interfaces. , Based on the interface information used to determine which communication interface is used for each flow and the information necessary for the communication interface to send and receive packets and the address information set in the communication interface 12. The transfer control program according to claim 11, wherein the packet transfer rule relating to processing for rewriting an arbitrary address and identifier value included in the packet and transmitting the packet to a communication interface used for the communication is generated. .
JP2012196023A 2012-09-06 2012-09-06 Communication device, transfer control method, and transfer control program Active JP5909688B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012196023A JP5909688B2 (en) 2012-09-06 2012-09-06 Communication device, transfer control method, and transfer control program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012196023A JP5909688B2 (en) 2012-09-06 2012-09-06 Communication device, transfer control method, and transfer control program
PCT/JP2013/004825 WO2014038135A1 (en) 2012-09-06 2013-08-12 Communication apparatus, transfer control method and transfer control program

Publications (3)

Publication Number Publication Date
JP2014053719A true JP2014053719A (en) 2014-03-20
JP2014053719A5 JP2014053719A5 (en) 2015-02-05
JP5909688B2 JP5909688B2 (en) 2016-04-27

Family

ID=50611805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012196023A Active JP5909688B2 (en) 2012-09-06 2012-09-06 Communication device, transfer control method, and transfer control program

Country Status (1)

Country Link
JP (1) JP5909688B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016075850A1 (en) * 2014-11-11 2016-05-19 日本電気株式会社 Radio terminal, computer readable medium on which application programs have been stored, and method
JP2017120962A (en) * 2015-12-28 2017-07-06 日本電気通信システム株式会社 Communication device and communication method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110299537A1 (en) * 2010-06-04 2011-12-08 Nakul Pratap Saraiya Method and system of scaling a cloud computing network
WO2012090996A1 (en) * 2010-12-28 2012-07-05 日本電気株式会社 Information system, control device, virtual network provision method and program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110299537A1 (en) * 2010-06-04 2011-12-08 Nakul Pratap Saraiya Method and system of scaling a cloud computing network
WO2012090996A1 (en) * 2010-12-28 2012-07-05 日本電気株式会社 Information system, control device, virtual network provision method and program

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016075850A1 (en) * 2014-11-11 2016-05-19 日本電気株式会社 Radio terminal, computer readable medium on which application programs have been stored, and method
KR20170082583A (en) * 2014-11-11 2017-07-14 닛본 덴끼 가부시끼가이샤 Radio terminal, computer readable medium on which application programs have been stored, and method
JPWO2016075850A1 (en) * 2014-11-11 2017-08-31 日本電気株式会社 Wireless terminal, application program, and method
AU2015346947B2 (en) * 2014-11-11 2018-07-26 Nec Corporation Wireless terminal, computer readable medium storing application program, and method
KR101922359B1 (en) * 2014-11-11 2018-11-26 닛본 덴끼 가부시끼가이샤 Wireless terminal, application program, and method
US10230449B2 (en) 2014-11-11 2019-03-12 Nec Corporation Wireless terminal, computer readable medium storing application program, and method
JP2017120962A (en) * 2015-12-28 2017-07-06 日本電気通信システム株式会社 Communication device and communication method

Also Published As

Publication number Publication date
JP5909688B2 (en) 2016-04-27

Similar Documents

Publication Publication Date Title
JP5778853B2 (en) system and method for sharing a common PDP context
US8873398B2 (en) Implementing EPC in a cloud computer with openflow data plane
TWI559714B (en) In the radio mobile network access storage of information technology
US20120075991A1 (en) Network system, control method thereof and controller
EP2544417B1 (en) Communication system, path control apparatus, packet forwarding apparatus and path control method
JP5874851B2 (en) Communication system, transfer node, control device, and communication method
KR20130008072A (en) Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
CN101053213B (en) Multi-interface communication equipment, terminal and path switching method
CN102484783B (en) A method for controlling the traffic within a network structure and a network structure
KR101584603B1 (en) Network device in a communication network and method for providing communications traffic breakout
JP5757324B2 (en) Computer system and communication method
US20140341109A1 (en) Methods, Apparatus and Systems for Managing Converged Gateway Communications
JP2017510209A (en) Overload control and coordination between M2M service layer and 3GPP network
KR20140102398A (en) Method for sharing network based on software defined network to support multiple operator
US8971339B2 (en) Contents base switching system and contents base switching method
EP2831733B1 (en) Implementing epc in a cloud computer with openflow data plane
JP5163910B2 (en) Address translation device and address translation method
US9716653B2 (en) System and method for flow-based addressing in a mobile environment
JP2012065019A (en) Frame relay device system
JP2013503553A (en) Mobility anchor relocation
US9258697B2 (en) Mobile station, position management apparatus, mobile communication system and communication method
US20150237525A1 (en) Traffic Shaping and Steering for a Multipath Transmission Control Protocol Connection
DE102013225692A1 (en) network status figure
TW201233106A (en) Scalable policy-controlled packet inspection systems and methods for advanced application interface
US20090003269A1 (en) Router Selection Method, Home Agent Device, Mobile Router, and Mobile Network System

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20141003

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20141008

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141212

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141212

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150929

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20151029

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151127

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160126

R150 Certificate of patent or registration of utility model

Ref document number: 5909688

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150