WO2011037105A1 - コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法 - Google Patents
コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法 Download PDFInfo
- Publication number
- WO2011037105A1 WO2011037105A1 PCT/JP2010/066311 JP2010066311W WO2011037105A1 WO 2011037105 A1 WO2011037105 A1 WO 2011037105A1 JP 2010066311 W JP2010066311 W JP 2010066311W WO 2011037105 A1 WO2011037105 A1 WO 2011037105A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- content
- flow
- information
- relay device
- destination
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
Definitions
- the present invention relates to a content-based switch system that performs switch processing and routing processing based on traffic content in network traffic data processing.
- Patent Document 1 Japanese Patent Laid-Open No. 2006-203904 discloses a technology related to a content base router and a content base network.
- the contents of the data packet are matched with a stored subscription.
- a routing label indicating an egress router corresponding to a subscriber (subscriber) of the matched subscription is assigned to the data packet, and the data packet is transmitted to the content base router to be transferred.
- the subscriber indicates a user who subscribes to the content. Further, the subscription indicates query information and selection conditions specified by the subscriber.
- a delivery destination is determined by matching content data described in a meta language called XML (Extensible Markup Language) with subscription data described in XML.
- XML Extensible Markup Language
- each router on a route compares the XML description with an XML query (query) and determines whether to transfer the process at each XML router.
- a process for determining a destination based on the message content of communication data may be performed.
- a load balancer load balancer
- a URI Unified Resource Identifier
- HTTP Hyper Text Transfer Protocol
- Cookie an identifier included in an HTTP header called Cookie.
- the destination server can be selected based on the contents of the URI and Cookie, but the route cannot be designated.
- an optimal destination can be selected by applying a policy to the URI and Cookie values included in the HTTP request message.
- the server which provides a service can be selected.
- TCP / IP Transmission Control Protocol / Internet Protocol
- a transfer process using a label has a problem that a relay device called a label switch for interpreting the label is necessary.
- the label switch interprets the label and performs switch processing based on the label.
- Japanese Patent Application Laid-Open No. 2004-304456 discloses a network system, a path setting method in the system, a network management apparatus used in the system, and a technique related to the network apparatus.
- the network management device calculates and determines in advance a delivery route that satisfies a specific standard for content provided between certain network devices periodically or when a predetermined event occurs.
- the network management device creates a correspondence table that associates specific content with a calculated delivery route that is optimal for delivering the content, and requests the created correspondence table according to the requested content by the user. Send the message to the network device (edge router).
- the network device When the network device (edge router) receives the request message, the network device (edge router) extracts a transit node list in the message, and based on the transit node list, a predetermined path setup signaling (path setup message) is used for MPLS (Multiple). -Set (establish) the Protocol Label Switching path.
- MPLS Multiple
- -Set establish
- Patent Document 3 Japanese Patent Laid-Open No. 2007-096741 discloses a technology related to a port hopping detection system, a bandwidth control system, a port hopping detection method, and a program.
- a port hopping flow detection device calculates information related to port hopping of a plurality of received flows, and detects port hopping by comparing the calculation result with the application information.
- An object of the present invention is to perform content-based routing processing in order to efficiently perform content-based routing processing.
- the content forwarding processing is transferred based only on the TCP / IP header without using a label. It is to provide a content-based switch system.
- the content-based switch system of the present invention is a content-based switch system that determines a communication path between a plurality of terminals based on content included in a packet payload, and includes a relay device, a switch, and a controller.
- the relay device relays communication between a plurality of terminals based on a predetermined communication protocol, receives data from any one of the plurality of terminals, extracts content information from the packet payload of the received data, and extracts
- the content information and the address information of the terminal are transmitted to the controller, and the flow to the destination terminal is set using the flow information specified by the controller.
- At least one switch exists on a network connecting a plurality of terminals, receives data from any one of the plurality of terminals and the relay device, and includes an identifier and an output route of flow information notified from the outside Communicate to the destination terminal according to the correspondence table.
- the controller controls the relay device and the switch, determines the transfer route based on the content information and the address information of the terminal, further determines the flow information used for transfer, and creates a correspondence table between the flow information and the output route. It is set in the route table of the switch on the transfer route, and the determined flow information is notified to the relay device.
- the content-based switching method of the present invention is a content-based switching method that determines a communication path between a plurality of terminals based on content included in a packet payload.
- a relay device relays communication between a plurality of terminals based on a predetermined communication protocol, extracts content information from the packet payload, and extracts the extracted content information, terminal address information, Is sent to the controller.
- data is received from any one of the plurality of terminals and the relay device by at least one switch on the network connecting the plurality of terminals.
- the controller controls the relay device and the switch, determines the transfer route based on the content information and the address information of the terminal, further determines the flow information used for transfer, and the correspondence between the flow information and the output route
- the table is set in the route table of the switch on the transfer route, and the determined flow information is notified to the relay device.
- the flow to the destination terminal is set by the relay device using the flow information communicated from the controller.
- the switch communicates with the destination terminal using the identifier of the flow information notified from the controller.
- the program according to the present invention is a program for causing a computer to execute the operation / processing of any one of the relay device, the switch, and the controller in the content-based switching method.
- the program according to the present invention can be stored in a storage device or a storage medium.
- content-based network transfer processing route optimization is performed by linking content-based destination determination processing, network route determination processing, and TCP / IP transfer control processing. Can be realized.
- a flow that can be shared can be determined by linking network path determination and flow management with a controller. As a result, communication flows after relaying can be aggregated, and the processing load on network resources and terminals can be reduced.
- FIG. 1 It is a figure which shows the structural example of the content base switch system of this invention. It is a figure which shows the structural example of a relay apparatus, a switch, and a network controller. It is a figure which shows the example of a transfer policy table. It is a figure which shows the example of a flow management table. It is a figure which shows the structural example of an execution machine (computer). It is a flowchart which shows operation
- FIG. 1 shows a configuration example of a content-based switch system according to the present invention.
- the content-based switching system of the present invention includes a terminal 210 (terminal 210-1 to terminal 210-N: N is an integer), a terminal 220 (terminal 220-1 to terminal 220-N), a relay device 10, and a switch 20 (Switches 20-1 to 20-6) and a network controller 30.
- the terminal 210 indicates each terminal included in the terminal group of the terminals 210-1 to 210-N.
- a terminal 220 represents each terminal included in the terminal group of the terminals 220-1 to 220-N.
- the switch 20 represents each switch included in the switch group of the switches 20-1 to 20-6.
- each of the terminals 210-1 to 210-N is referred to as a terminal 210.
- Each of terminal 220-1 to terminal 220-N is referred to as terminal 220.
- Each of the switches 20-1 to 20-6 is referred to as a switch 20.
- the content-based switch system of the present invention provides relay processing between the terminal 210 and the terminal 220.
- the relay device 10 and the switch 20 are connected to the network between the terminal 210 and the terminal 220.
- the relay device 10 and the switch 20 are connected to the network controller 30.
- the network controller 30 is a controller that controls network devices, and centrally manages the relay device 10 and the switch 20.
- the number of terminals and switches is an arbitrary number and is not limited to the number shown.
- FIG. 2 shows a configuration example of the relay device 10, the switch 20, and the network controller 30.
- the relay device 10 includes a protocol termination unit 11, a content extraction unit 12, a protocol termination unit 13, a relay request interface unit 14, and a protocol port instruction unit 15.
- the relay device 10 is connected to the first communication line 60 and the second communication line 70 and relays between the first communication line 60 and the second communication line 70.
- the protocol termination unit 11 is connected to the outside via the first communication line 60. In addition, the protocol termination unit 11 is connected to the content extraction unit 12.
- the content extraction unit 12 is connected to the protocol termination unit 11, the protocol termination unit 13, and the relay request interface unit 14.
- the protocol termination unit 13 is connected to the content extraction unit 12.
- the protocol termination unit 13 is connected to the switch 20 via the second communication line 70.
- the relay request interface unit 14 is connected to the network controller 30 via the content extraction unit 12 and the control line 81.
- the protocol port instruction unit 15 is connected to the protocol termination unit 13 and the relay request interface unit 14.
- the switch 20 includes a flow table 21, a switch processing unit 22, and a switch interface unit 23.
- the flow table 21 includes an entry for registering information obtained from the MAC header, the IP header, and the layer 4 header as flow identification information, and storing output information (action information such as output line and header rewriting) for the flow.
- a flow defines a predetermined process (action) to be performed on a packet that conforms to a predetermined rule (rule).
- the flow rule uses any or all of a destination address (Destination Address), a source address (Source Address), a destination port (Destination Port), and a source port (Source Port) included in the header area of the MAC frame. Defined and distinguishable by various combinations. Note that the above addresses include a MAC address (Media Access Control Address) and an IP address (Internet Protocol Address). In addition to the above, information on an ingress port (Ingress Port) can also be used as a flow rule.
- the switch processing unit 22 performs switching from a specific interface to an interface based on the route setting specified in the flow table 21, and further performs QoS and bandwidth control according to the designated control content.
- the switch processing unit 22 performs switching of the switch interface unit 23.
- the switch interface unit 23 accommodates a plurality of lines.
- the switch interface unit 23 is connected to the protocol termination unit 13 of the relay device 10 via the second communication line 70, and is connected to another switch 20 or the terminal 220. is there.
- These may be different interfaces as hardware, or may be the same interface with different physical ports.
- the network controller 30 includes a relay request interface unit 31, a route determination unit 32, a protocol port management unit 33, and a route setting unit 34.
- the relay request interface unit 31 is connected to the relay request interface unit 14 of the relay device 10 via the control line 81.
- the route determination unit 32 is connected to the relay request interface unit 31, the protocol port management unit 33, and the route setting unit 34.
- the route determination unit 32 also holds a transfer policy table. The transfer policy table will be described later.
- the protocol port management unit 33 is connected to the relay request interface unit 31 and the route determination unit 32.
- the protocol port manager 33 holds a flow management table. The flow management table will be described later.
- the route setting unit 34 sets / updates the flow table 21 of the switch 20 via the control line 82.
- FIG. 3A shows an example of a transfer policy table held by the route determination unit 32 of the network controller 30.
- the transfer policy table is used to acquire a policy ID (Identifier) and QoS parameter information for transfer based on the address information and content information of the traffic to be relayed requested from the relay apparatus 10.
- the transfer policy table stores a transmission source address, a destination address (virtual destination address), a content rule, a policy ID, and a transfer QoS parameter.
- the route determination unit 32 can acquire the policy ID and the transfer QoS parameter as the transfer policy corresponding to the transmission source address, the destination address (virtual destination address) and the content rule from the transfer policy table. Note that the route determination unit 32 can acquire a routing transfer policy using the policy ID as an index.
- FIG. 3B shows an example of a flow management table held by the protocol port management unit 33 of the network controller 30.
- the flow management table stores information related to the transfer flow specified by the policy ID.
- the flow management table stores a destination address, a route, a QoS parameter, a policy ID, flow information, and KeepAlive information.
- the KeepAlive information is information indicating whether or not to use “Keep Alive”.
- “Keep Alive” is communication periodically performed to confirm that the connection is valid on the network.
- “Keep Alive” is specified, “true (true)” is set, and if not specified, “false (false)” is set.
- the route determination unit 32 can acquire flow information when a designated route to the destination address, a QoS parameter, and a policy ID are designated.
- FIG. 4 shows an example of the configuration of a machine (computer) in which each processing unit of the content-based switching system of the present invention is executed.
- each of the relay device 10, the switch 20, and the network controller 30 is a computer 50
- each of these processing units is a combination of a CPU (Central Processing Unit) 51, a memory 52, a secondary storage device 53, and a network interface 54. Realized.
- a CPU Central Processing Unit
- the CPU 51 governs the overall operation of the relay device 10, the switch 20, and the network controller 30 by executing various software programs (computer programs). More specifically, in the present embodiment, the CPU 51 receives a protocol termination unit, a content extraction unit, a route determination unit, a route setting unit, a protocol port from the memory 52, the secondary storage device 53, or via the network interface 54. Acquire a software program for realizing the functions and processing of the management unit, etc., and execute it appropriately.
- the memory 52 and the secondary storage device 53 store data received from the CPU 51 and the network interface 54, and provide stored data in response to a request from the CPU 51.
- the network interface 54 is connected to a communication line that forms a network among the relay device 10, the switch 20, and the network controller 30.
- the CPU 51 may be a microprocessor, a microcontroller, or a semiconductor integrated circuit (IC: Integrated Circuit) having a similar function. However, actually, it is not limited to these examples.
- the memory 52 is a RAM (Random Access Memory) that can be directly read and written by the CPU 51, a ROM (Read Only Memory) used for storing a program that is read first when the power is turned on, or an EEPROM (Electrically Erasable and Programmable Read Only). Alternatively, it is a semiconductor memory device such as a flash memory. Here, the memory 52 indicates a main storage device (main memory). However, actually, it is not limited to these examples.
- the secondary storage device 53 is an auxiliary storage device that stores data and programs inside and outside the computer.
- the secondary storage device 53 indicates an external storage device (storage) such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive).
- the secondary storage device 53 may be a DVD (Digital Versatile Disk) and its drive device (drive), a storage medium (media) such as a memory card, or the like. However, actually, it is not limited to these examples.
- Examples of the network interface 54 include a network adapter such as a NIC (Network Interface Card), a communication device such as an antenna, and a communication port such as a connection port (connector).
- Examples of communication lines used by the network interface 54 include the Internet, a LAN (Local Area Network), a wireless LAN (Wireless LAN), a cable TV (CATV) line, a fixed telephone network, a mobile phone network, WiMAX (IEEE 802. 16a), 3G (3rd Generation), leased line, IrDA (Infrared Data Association), Bluetooth (registered trademark), serial communication line, data bus, and the like. However, actually, it is not limited to these examples.
- the terminal 210-1 in FIG. 1 connects to another terminal that provides a certain service.
- the terminal 210-1 transmits a packet destined for the address (possibly a virtual address) of the relay device 10 and tries TCP connection.
- This connection request corresponds to the first communication connection in FIG. 2, and TCP termination processing is performed in the protocol termination unit 11.
- the protocol termination unit 11 extracts an application layer protocol payload by TCP termination processing.
- application layer protocols include HTTP (Hyper Text Transfer Protocol) and SMTP (Simple Mail Transfer Protocol).
- the content extraction unit 12 extracts content information from this protocol payload.
- the content information is a character string, and this character string is designated in advance.
- the content extraction unit 12 extracts content information from the protocol payload according to a character string specified in advance.
- a character string specified in advance As an example of content information, in the case of HTTP, a URI (Unified Resource Identifier) included in a request message and a cookie character string can be cited.
- URI Uniform Resource Identifier
- tag information described in XML eXtended Markup Language
- the relay request interface unit 14 refers to the URI character string extracted by the content extraction unit 12 together with the IP address of the transmission source and the destination IP address on the relay device side as information on the first communication connection, Create a relay request message. Further, the relay request interface unit 14 transmits this relay request message to the network controller 30 via the control line 81.
- the relay request interface unit 31 when receiving the relay request message via the control line 81, the relay request interface unit 31 notifies the route determination unit 32 of the relay request message.
- the route determination unit 32 determines the transfer route of this relay request message based on the transfer policy.
- the above transfer policy is exemplified in the transfer policy table of FIG. 3A.
- the destination IP address is “133.202.1.1”
- the URI matches “foo.com”
- the entry “No. 1” is entered.
- the transfer policy ID is “101”
- the QoS parameter is “10 Mbps”.
- the route determination unit 32 selects a forwarding node associated with the policy ID. Specifically, the route determination unit 32 selects a route corresponding to the policy ID 101 by the route determination logic.
- the left switch is a path that passes through the switches A, B, C, and D in the expression in FIG. Further, it is assumed that the IP address of the destination terminal 220-1 is “10.1.2.1”.
- the route determination unit 32 passes the destination, route, and policy information obtained by the transfer policy determination to the protocol port management unit 33, and searches the flow management table in the protocol port management unit 33.
- a new protocol port number is assigned.
- the destination port number represents the service port number of the server, and takes a fixed value for each service such as HTTP or SMTP.
- the source port number is dynamically assigned so that the connection can be specified.
- a port number is issued and used from a range of 1024 or more (65535 or less) that is a reserved port (Registered Port) or a dynamic / private port (Dynamic and / or Private Port).
- the route determination unit 32 searches the flow management table in the protocol port management unit 33, and if a flow with the same condition is registered and “Keep Alive” is specified, the flow can be used. Judge that it is possible.
- the route determination unit 32 determines which flow to use for the relay request.
- the route determination unit 32 returns the IP address and protocol port information of the destination terminal to the relay request interface unit 31.
- the protocol port information is a TCP source port number and destination port number.
- the relay request interface unit 31 transmits these pieces of information to the relay device 10 as a response message.
- the relay request interface unit 14 of the relay device 10 passes the response message to the protocol port instruction unit 15.
- the protocol port instruction unit 15 selects the second communication connection based on the response message. If the flow information specified by the response message is new, the protocol port instruction unit 15 establishes a new second communication connection to the protocol termination unit 13 according to the specified destination IP address and protocol port information. To request. For example, if the flow information specified by the response message is “Keep Alive”, the protocol port instruction unit 15 specifies to use a connection that uses the specified destination IP address and protocol port information.
- a socket is a network address that combines an IP address and a port number that is a sub (auxiliary) address of the IP address.
- the protocol port instruction unit 15 associates the source port number information with the socket by using a bind () system call, and further connects the socket. Is used and the connect () system call is used. With these commands, the protocol port instruction unit 15 can set a new connection in which the TCP port number is specified. By specifying this socket ID, the protocol port instruction unit 15 performs relay processing using the protocol port number assigned by the network controller 30. realizable.
- the route setting unit 34 sets the route determined by the route determination unit 32 of the network controller 30 to the switch 20-1, the switch 20-2, the switch 20-3, and the switch 20-4 on the route.
- the path setting unit 34 writes the flow entry in the flow table 21 of the switch 20.
- FIG. 5 shows processing of the network controller 30 from when a relay request is received from the relay device 10 until a response is returned.
- Step S11 In the network controller 30, the relay request interface unit 31 notifies the route determination unit 32 when receiving the relay request message from the relay device 10.
- the route determination unit 32 searches the transfer policy table in the route determination unit 32 based on the transmission source information, the destination information, and the content information included in the relay request message, and acquires the transfer policy.
- Step S12 The route determination unit 32 determines a destination, a route, and QoS information based on the obtained transfer policy.
- Step S13 The route determination unit 32 determines whether to use “Keep Alive” in the obtained transfer policy.
- Step S14 When using “Keep Alive” in the obtained transfer policy, the route determination unit 32 searches the flow management table in the protocol port management unit 33 to find out whether there is an available flow. Specifically, the route determination unit 32 searches the flow management table for the same destination, route, and path to which QoS is applied, using these pieces of information as keys.
- Step S15 The route determination unit 32 determines whether or not the same flow exists.
- Step S16 The route determination unit 32 acquires existing flow information when the same flow exists.
- Step S17 On the other hand, when the same flow does not exist, the route determination unit 32 assigns a new flow because an existing flow cannot be reused. Also, the route determination unit 32 assigns a new flow even when “Keep Alive” is not used in step S13.
- Step S18 When a new flow is assigned, the route determination unit 32 sets a flow entry corresponding to the flow information from the route setting unit 34 to one or more switches 20 on the route.
- Step S19 When the flow information used for relay is determined by the above processing, the route determination unit 32 notifies the relay request interface unit 31 of a response message including the flow information.
- the relay request interface unit 31 transmits a response message to the relay device 10.
- FIG. 6 shows the processing of the network controller 30 when the flow ends for a certain flow in the relay device 10.
- Step S21 In the network controller 30, when the relay request interface unit 31 receives the flow end message from the relay device 10, it notifies the route determination unit 32.
- the route determination unit 32 acquires flow information from the flow end message.
- the route determination unit 32 refers to the flow management table in the protocol port management unit 33, identifies the route to the destination, and issues a flow entry deletion request for the switch 20 on the route.
- the aging process is a break-in for obtaining the original performance of the device.
- Step S23 the route determination unit 32 returns an unused port number to the protocol port management unit 33. Specifically, in the case of a TCP flow, the path determination unit 32 releases a TCP transmission source port number that has been dynamically allocated, and makes it available for new allocation.
- Step S24 Finally, the route determination unit 32 deletes the flow information from the flow management table in the protocol port management unit 33.
- related control information (table entry, port number, etc.) is deleted from the network controller 30 and the switch 20 for the flow for which the relay processing has been completed.
- the second embodiment of the present invention shows a case where the flow management table in the protocol port management unit 33 specifies a flow using only an IP address without specifying a TCP port number.
- the route determination unit 32 of the network controller 30 determines the destination and route for the content based on the transfer policy table.
- the route determination unit 32 assigns a destination IP address for uniquely specifying the route and the destination.
- the route determination unit 32 associates a plurality of destination IP addresses with the same terminal 220, and allocates different destination IP addresses to identify different routes.
- the route determination unit 32 registers the flow information in the flow management table in the protocol port management unit 33.
- the path determination unit 32 does not manage the TCP port number, and therefore does not specify “tcp sp”. Note that “tcp sp” indicates a TCP source port (sp). Further, the route determination unit 32 arbitrarily allocates the destination IP address from the free address and associates it with the actual IP address of the terminal.
- the network controller 30 sets a flow entry of a switch to be transferred for a flow having the IP address of the relay device 10 as a transmission source IP address and the destination as the assigned IP address. Assuming that the source IP address is “10.3.3.1”, the destination terminal obtained from the content is 220-4, and the destination IP address is “10.2.2.1”, the network controller 30 10 ("10.0.3.1") and the terminal 220-4 ("10.2.2.1”), the switch on the selected route for the flow concerned A flow entry is set in 20 flow tables 21. For example, the network controller 30 has a combination of (“133.202.10.1”, “10.2.2.1”) for each of the switches 20-1, 20-5, 20-6, and 20-4. A flow entry that sets a packet having an IP header as a target flow is set. If the terminal cannot process a plurality of IP addresses, the IP address may be converted by any switch on the route so that the terminal 220-4 can be reached with the actual IP address. .
- the relay device 10 When the relay device 10 receives a response message in which the TCP port number is not specified from the network controller 30, the relay device 10 autonomously assigns the TCP port number to the terminal 220-4 and performs connection. At this time, the relay device 10 uses “10.2.2.1” specified in the response message described above as the destination IP address.
- the communication data related to this connection is transferred from the relay device 10 to the terminal 220-4 according to the flow entry set for the switch 20 from the network controller 30, and as a result, the content is transferred from the terminal 210-2 to the terminal 220-4. Transfer based on content-based routing is realized.
- FIG. 7 shows a sequence diagram when routing based on content is performed in the relay device 10 and the network controller (controller) 30 in the transfer from the terminal 210-1 to the terminal 220-1.
- Step S101 The terminal 210-1 transmits data to the relay device 10.
- TCP is used as a transport.
- a TCP connection is made from the terminal 210-1 toward the IP address of the relay device 10 or a virtual IP address representing the destination terminal group.
- the TCP connection is performed by a sequence called “3 way handshake”, and communication of control packets (SYN, SYN-ACK, ACK) is performed between the terminal 210-1 and the relay apparatus 10.
- the terminal 210-1 transmits communication data including content information to the relay device 10.
- Step S102 The relay device 10 transmits a relay request message including the content information extracted by the TCP termination and the IP address information of the terminal 210-1 to the network controller 30, and requests a message routing process based on the content content.
- Step S103 The network controller 30 acquires flow information, determines routing (route determination), and sets the switch 20 based on the processing sequence described with reference to FIG.
- a routing determination the network controller 30 determines what transfer policy is applied by comparing (collating) the transmission source IP address, content contents, and transfer policy.
- the network controller 30 specifies the destination terminal 220-1, specifies the route to the terminal, and specifies the QoS parameter at the time of transfer.
- the network controller 30 refers to the flow management table based on the obtained destination, route, and QoS information, and acquires flow information used for transfer.
- the flow information includes communication port information used for TCP connection from the relay apparatus 10 to the destination terminal 220.
- Step S104 Based on the obtained flow information, the network controller 30 sets a flow entry for the switch 20-1 on the route, and switches between input and output ports when the data of the corresponding flow is input to the switch 20-1. Enable processing.
- Step S105 the network controller 30 sets a flow entry for the switch 20-2 on the route based on the obtained flow information, and the input / output port when the data of the corresponding flow is input to the switch 20-2. Switching between them. Although only two switches are illustrated in FIG. 7, the network controller 30 actually sets paths for a plurality of switches according to the determined path.
- Step S106 When the above setting is completed, the network controller 30 transmits a response message to the relay request message to the relay device 10.
- Step S107 The relay device 10 establishes a communication path to the terminal 220-1 using a new or existing TCP connection based on the flow information specified by the response message from the network controller 30.
- the TCP port number designated from the relay apparatus 10 to the terminal 220-1 is used.
- the relay device 10 acquires a socket descriptor by a socket () system call, and from the network controller 30 as a local address of the socket descriptor by a bind () system call. Specify the specified source port number.
- the relay device 10 can use the specified value instead of the TCP / IP stack autonomously assigning the source port number.
- the relay device 10 designates the IP address of the destination terminal 220-1 and the TCP destination port number indicating the service using the connect () system call. Thereby, a TCP connection having flow information designated by the network controller 30 is established between the relay device 10 and the terminal 220-1.
- the relay device 10 transmits the communication message received and held in step S101 to the destination terminal 220-1.
- Step S108 The relay device 10 relays messages and communication data between the terminal 210-1 and the terminal 220-1. Thereafter, the message and communication data between the terminal 210-1 and the terminal 220-1 are the first TCP connection between the terminal 210-1 and the relay device 10, the relay device 10 and the terminal 220-1. Is relayed using the second TCP connection.
- a GET request from the terminal 210-1 is transmitted to the terminal 220-1 via the relay device 10.
- the response message from the terminal 220-1 and the transfer of content such as a file designated and acquired by GET are transmitted from the network controller 30 to the terminal 210-1 via the relay device 10.
- the routing processing based on the content can be realized between the terminal 210-1 and the terminal 220-1.
- Step S109 Finally, when the communication between the terminal 210-1 and the terminal 220-1 is completed, the relay device 10 notifies the network controller 30 that the corresponding flow is completed. Upon receiving the flow end notification message, the network controller 30 deletes the information of the corresponding flow from the flow management table, makes the TCP port number used in the corresponding flow unused, and makes it usable again.
- the relay device 10 transfers data using information (TCP port number) specifying the flow notified from the network controller 30. Therefore, the flow information (TCP port number) itself does not explicitly represent a path. That is, the flow information does not specify a route through which the TCP connection passes.
- transfer can be performed in the TCP / IP header format without using the MPLS label.
- the relay device 10 is notified of the flow identifier from the network controller 30, and the relay device 10 communicates using the flow identifier. That is, the relay device 10 does not autonomously assign a new flow identifier, but the network controller 30 assigns a flow identifier.
- the content-based switch system of the present invention is a content-based switch processing system that determines a communication path between a plurality of terminals based on content included in a packet payload, and performs communication between a plurality of terminals.
- a relay device that relays based on a predetermined communication protocol and extracts content information from a packet payload, one or more switches that connect a plurality of terminals, and a controller that includes a relay device and a control function of the switches.
- the relay device transmits the content information extracted from the packet payload of the data received from the terminal and the address information of the terminal to the controller.
- the controller determines the transfer path based on the content information and the terminal address information. Further, the controller determines flow information used for transfer. The controller also sets a correspondence table between the flow information and the output route in the route table of the switch on the transfer route. Further, the controller notifies the relay apparatus of the determined flow information.
- the relay device communicates with the destination terminal using the identifier of the flow information notified from the controller.
- the communication protocol between a plurality of terminals is TCP
- a flow information identifier notified from the controller to the relay apparatus either or both of the TCP source port number and the destination port number, and the IP address of the destination terminal Including.
- the identifier of the flow information notified from the controller to the relay device includes at least one of IP addresses corresponding to two terminals serving as communication end points.
- the communication protocol between a plurality of terminals is UDP
- the identifier of the flow information notified from the controller to the relay device either or both of the UDP source port number and the destination port number, and the destination terminal IP address.
- the relay device In the communication from the relay device to the destination terminal, the relay device newly establishes the same flow (IP, UDP, TCP, etc.) as the determined flow information when the flow information determined by the controller is a new flow. Data to the destination terminal.
- IP IP, UDP, TCP, etc.
- the relay device In the communication from the relay device to the destination terminal, when the flow information determined by the controller assigns a flow in use, the relay device transfers data to and from the destination terminal using the already established flow.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
以下に、本発明の第1実施形態について添付図面を参照して説明する。
図1に、本発明のコンテンツベーススイッチシステムの構成例を示す。
本発明のコンテンツベーススイッチシステムは、端末210(端末210-1~端末210-N:Nは整数)と、端末220(端末220-1~端末220-N)と、中継装置10と、スイッチ20(スイッチ20-1~スイッチ20-6)と、ネットワークコントローラ30を備える。
フローとは、所定の規則(ルール)に適合するパケットに対して行うべき所定の処理(アクション)を定義したものである。フローのルールは、MACフレームのヘッダ領域に含まれる宛先アドレス(Destination Address)、送信元アドレス(Source Address)、宛先ポート(Destination Port)、送信元ポート(Source Port)のいずれか又は全てを用いた様々な組み合わせにより定義され、区別可能である。なお、上記のアドレスには、MACアドレス(Media Access Control Address)やIPアドレス(Internet Protocol Address)を含むものとする。また、上記に加えて、入口ポート(Ingress Port)の情報も、フローのルールとして使用可能である。
図3Aに、ネットワークコントローラ30の経路判定部32が保持する転送ポリシーテーブルの例を示す。転送ポリシーテーブルは、中継装置10から要求のあった、中継対象トラヒックのアドレス情報、コンテンツ情報に基づいて、転送のためのポリシーID(Identifier)、QoSパラメータ情報を取得するために用いられる。ここでは、転送ポリシーテーブルは、送信元アドレス、宛先アドレス(仮想宛先アドレス)、コンテンツルール、ポリシーIDならびに転送QoSパラメータを格納している。経路判定部32は、転送ポリシーテーブルから、送信元アドレスと宛先アドレス(仮想宛先アドレス)、コンテンツルールに対応する転送ポリシーとして、ポリシーIDならびに転送QoSパラメータを取得できる。なお、経路判定部32は、ポリシーIDをインデックスとして、ルーティングの転送ポリシーを取得することができるものとする。
図3Bに、ネットワークコントローラ30のプロトコルポート管理部33が保持するフロー管理テーブルの例を示す。フロー管理テーブルは、ポリシーIDによって指定された転送フローに関する情報を格納する。ここでは、フロー管理テーブルは、宛先アドレス、経路、QoSパラメータ、ポリシーID、フロー情報、KeepAlive情報を格納している。KeepAlive情報は、「Keep Alive(キープアライブ)」を使用するか否かを示す情報である。なお、「Keep Alive」とは、ネットワーク上で、接続が有効であることを確認するために定期的に行われる通信である。ここでは、「Keep Alive」の指定があれば「true(真)」、指定がなければ「false(偽)」とする。経路判定部32は、このフロー管理テーブルを参照することにより、宛先アドレスまでの指定経路、QoSパラメータ、ポリシーIDを指定した場合のフロー情報を取得できる。
図4は、本発明のコンテンツベーススイッチシステムの各処理部が実行されるマシン(コンピュータ)の構成の一例を示している。
以下に、端末210から端末220へと中継処理の際の各機能の動作について説明する。
図5は、中継装置10からの中継要求を受信してから応答を返すまでのネットワークコントローラ30の処理を示している。
ネットワークコントローラ30において、中継要求インタフェース部31は、中継装置10からの中継要求メッセージを受信すると、経路判定部32に通知する。経路判定部32は、中継要求メッセージに含まれる送信元情報と、宛先情報と、コンテンツ情報に基づいて、経路判定部32内の転送ポリシーテーブルを検索し、転送ポリシーを取得する。
経路判定部32は、得られた転送ポリシーに基づいて、宛先、経路、QoS情報を決定する。
経路判定部32は、得られた転送ポリシーにおいて、「Keep Alive」を使用するか否か判断する。
経路判定部32は、得られた転送ポリシーにおいて、「Keep Alive」を使用する場合は、プロトコルポート管理部33内のフロー管理テーブルを検索し、利用可能なフローがあるかどうかを探す。具体的には、経路判定部32は、同一の宛先、経路、QoSを適用しているパスを、これらの情報をキーとしてフロー管理テーブルを検索する。
経路判定部32は、同一のフローが存在するか否か判断する。
経路判定部32は、同一のフローが存在した場合は、既存のフロー情報を取得する。
一方、経路判定部32は、同一のフローが存在しない場合は、既にあるフローの再利用ができないので、新規フローを割り当てる。また、経路判定部32は、ステップS13において、「Keep Alive」を使用しない場合も新規フローを割り当てる。
経路判定部32は、新規フローを割り当てた場合は、そのフロー情報に対応するフローエントリーを経路設定部34から経路上の1つ以上のスイッチ20に対して設定する。
経路判定部32は、以上の処理により、中継に使用するフロー情報が確定すると、中継要求インタフェース部31に、フロー情報を含む応答メッセージを通知する。中継要求インタフェース部31は、中継装置10に対して応答メッセージを送信する。
図6は、中継装置10において、あるフローに関してフローが終了する場合の、ネットワークコントローラ30の処理を示している。
ネットワークコントローラ30において、中継要求インタフェース部31は、中継装置10からフロー終了メッセージを受け取ると、経路判定部32に通知する。経路判定部32は、フロー終了メッセージからフロー情報を取得する。
次に、経路判定部32は、プロトコルポート管理部33内のフロー管理テーブルを参照し、宛先までの経路を特定し、経路上のスイッチ20のフローエントリー削除要求を出す。なお、スイッチ20のフローエントリーがエージング処理(aging)により自動的に削除される場合は、明示的にスイッチ20のフローエントリー削除要求を出さないようにすることも可能である。エージング処理とは、機器の本来の性能を出すための慣らしをすることである。
更に、経路判定部32は、プロトコルポート管理部33に対して、未使用となったポート番号を返却する。具体的には、経路判定部32は、TCPのフローの場合は、動的に割り当てていたTCPの送信元ポート番号を解放し、新規割当に使用可能とする。
最後に、経路判定部32は、プロトコルポート管理部33内のフロー管理テーブルからフロー情報を削除する。
以下に、本発明の第2実施形態について説明する。
本発明の第2実施形態では、プロトコルポート管理部33内のフロー管理テーブルがTCPのポート番号を指定せずにIPアドレスのみでフローを指定する場合を示す。
図7に、端末210-1から端末220-1までの転送において、中継装置10ならびにネットワークコントローラ(コントローラ)30においてコンテンツに基づいたルーティングを行う場合のシーケンス図を示す。
端末210-1は、中継装置10に向けてデータを送信する。ここで、トランスポートとしてTCPを使った場合を想定する。すると、端末210-1からは、中継装置10のIPアドレス、あるいは宛先端末群を代表する仮想IPアドレスに向けてTCP接続を行う。TCP接続は、「3way handshake」と呼ばれるシーケンスによって行われ、端末210-1と中継装置10の間で制御パケット(SYN、SYN-ACK、ACK)の通信が行われる。端末210-1は、コネクションが確立すると、中継装置10に向けて、コンテンツ情報を含む通信データを送信する。
中継装置10は、TCP終端によって抽出したコンテンツ情報ならびに端末210-1のIPアドレス情報を含む中継要求メッセージをネットワークコントローラ30に対して送信し、コンテンツ内容に基づくメッセージルーティング処理を依頼する。
ネットワークコントローラ30は、図5を用いて説明した処理シーケンスに基づいてフロー情報の取得、ルーティング判定(経路判定)ならびにスイッチ20の設定を行う。ネットワークコントローラ30は、ルーティング判定として、送信元IPアドレス、コンテンツ内容と転送ポリシーを比較(照合)することで、どのような転送ポリシーを適用するかを判定する。ここでは、ネットワークコントローラ30は、宛先端末220-1の特定、端末までの経路の特定、転送の際のQoSパラメータの特定を行う。例えば、ネットワークコントローラ30は、HTTPのリクエストデータに含まれるURIをコンテンツ内容とする場合は、URI文字列と転送ポリシーを比較することで、宛先端末ならびに転送経路を決定する。更に、ネットワークコントローラ30は、得られた宛先、経路、QoS情報を基にフロー管理テーブルを参照して、転送に用いるフロー情報を取得する。フロー情報は、中継装置10から宛先端末220までのTCP接続で用いられる通信ポート情報を含む。
ネットワークコントローラ30は、得られたフロー情報を基に、経路上のスイッチ20-1に対してフローエントリーを設定し、スイッチ20-1において該当フローのデータが入力した際に入出力ポート間でスイッチング処理を行えるようにする。
同様に、ネットワークコントローラ30は、得られたフロー情報を基に、経路上のスイッチ20-2に対してフローエントリーを設定し、スイッチ20-2において該当フローのデータが入力した際に入出力ポート間でスイッチング処理を行えるようにする。図7には、スイッチが2台のみ記載されているが、実際には、ネットワークコントローラ30は、判定した経路に応じて複数のスイッチに対して経路を設定する。
ネットワークコントローラ30は、以上の設定が終わると、中継要求メッセージに対する応答メッセージを中継装置10に対して送信する。
中継装置10は、ネットワークコントローラ30からの応答メッセージで指定されたフロー情報に基づき、新規、あるいは既存のTCPコネクションを利用して端末220-1までの通信路を確立する。新規のTCPコネクションを利用する場合は、中継装置10から端末220-1に対して指定されたTCPポート番号を使う。具体的には、中継装置10は、Unix(登録商標)系のOSでは、socket()システムコールでソケットディスクリプタを取得し、bind()システムコールで、ソケットディスクリプタのローカルアドレスとして、ネットワークコントローラ30から指定された送信元ポート番号を指定する。これにより、中継装置10は、TCP/IPスタックが送信元ポート番号を自律的に割り当てるのではなく、指定された値を用いることができるようになる。更に、中継装置10は、connect()システムコールを用いて宛先端末220-1のIPアドレスとサービスを示すTCPの宛先ポート番号を指定する。これにより、ネットワークコントローラ30が指定したフロー情報を持つTCPコネクションが中継装置10と端末220-1との間に確立される。通信経路が確立すると、中継装置10は、ステップS101で受信して保持していた通信メッセージを宛先である端末220-1に送信する。
中継装置10は、端末210-1と端末220-1との間のメッセージ及び通信データを中継する。以降において、端末210-1と端末220-1との間のメッセージ及び通信データは、端末210-1、中継装置10との間の第1のTCPコネクションと、中継装置10と端末220-1との間の第2のTCPコネクションを使って中継される。HTTPのGETリクエストの場合では、端末210-1からのGETリクエストが中継装置10を介して端末220-1に送信される。逆に、端末220-1からのレスポンスメッセージ、ならびにGETで指定され取得されたファイル等のコンテンツの転送は、ネットワークコントローラ30から中継装置10を介して端末210-1に送信される。以上により、端末210-1と端末220-1との間でコンテンツに基づくルーティング処理が実現できる。
最後に、端末210-1と端末220-1間の通信が終了すると、中継装置10は、該当フローが終了したことをネットワークコントローラ30に対して通知する。ネットワークコントローラ30は、フロー終了通知メッセージを受け取ると、フロー管理テーブルから該当フローの情報を削除すると共に、該当フローで使用していたTCPのポート番号を未使用とし、再度利用できるようにする。
Claims (18)
- 複数の端末間の通信経路をパケットペイロードに含まれるコンテンツに基づいて決定するコンテンツベーススイッチシステムであって、
コントローラと、
複数の端末間の通信を所定の通信プロトコルに基づいて中継し、前記複数の端末のいずれかの端末からデータを受信し、前記受信されたデータのパケットペイロードからコンテンツ情報を抽出し、前記抽出されたコンテンツ情報と端末のアドレス情報とを前記コントローラに送信し、前記コントローラから指定されるフロー情報を用いて宛先端末までのフローを設定する中継装置と、
前記複数の端末間を接続するネットワーク上に少なくとも1つ存在し、前記複数の端末及び前記中継装置のうちのいずれかからデータを受信し、外部から通知されたフロー情報の識別子と出力方路との対応表に従い宛先端末まで通信を行うスイッチと
を具備し、
前記コントローラは、前記中継装置及び前記スイッチの制御を行い、前記コンテンツ情報と前記宛先端末のアドレス情報とに基づいて転送経路を決定し、更に転送に使用するフロー情報を決定し、フロー情報と出力方路との対応表を転送経路上にあるスイッチの経路テーブルに設定し、前記決定されたフロー情報を前記中継装置に通知する
コンテンツベーススイッチシステム。 - 請求項1に記載のコンテンツベーススイッチシステムであって、
前記複数の端末間の通信プロトコルがTCPである場合に、
前記決定されたフロー情報の識別子は、
TCPの送信元ポート番号及び宛先ポート番号のうちの少なくとも一方と、
前記宛先端末のIPアドレスと
を含む
コンテンツベーススイッチシステム。 - 請求項1又は2に記載のコンテンツベーススイッチシステムであって、
前記決定されたフロー情報の識別子は、
通信の端点となる二つの端末に対応するIPアドレスのうちの少なくとも1つ
を含む
コンテンツベーススイッチシステム。 - 請求項1乃至3のいずれか一項に記載のコンテンツベーススイッチシステムであって、
前記複数の端末間の通信プロトコルはUDPである場合に、
前記決定されたフロー情報の識別子は、
UDPの送信元ポート番号及び宛先ポート番号のうちの少なくとも一方と、
前記宛先端末のIPアドレスと
を含む
コンテンツベーススイッチシステム。 - 請求項1乃至4のいずれか一項に記載のコンテンツベーススイッチシステムであって、
前記中継装置は、前記決定されたフロー情報に基づいて、前記中継装置から前記宛先端末までの通信フローが新規のフローであると判断した場合に、前記決定されたフロー情報が示す通信フローと同一の通信フローを新規に確立して前記宛先端末までのデータを転送する
コンテンツベーススイッチシステム。 - 請求項1乃至5のいずれか一項に記載のコンテンツベーススイッチシステムであって、
前記中継装置は、前記決定されたフロー情報に基づいて、前記中継装置から前記宛先端末までの通信フローが使用中のフローであると判断した場合に、既に確立済みのフローを使用して前記宛先端末との間のデータを転送する
コンテンツベーススイッチシステム。 - 請求項1乃至6のいずれか一項に記載のコンテンツベーススイッチシステムであって、
前記中継装置は、
第1の通信コネクションにより、前記複数の端末のうちのいずれかの端末から前記中継装置が持つアドレスを宛先とした接続要求パケットを受信する第1のプロトコル終端部と、
前記接続要求パケットからアプリケーションレイヤのプロトコルペイロードを取り出し、前記プロトコルペイロードからコンテンツ情報を抽出するコンテンツ抽出部と、
第2の通信コネクションにより、前記スイッチと通信する前記第2のプロトコル終端部と、
前記第1の通信コネクションに関する情報として、送信元のIPアドレスと、前記中継装置側の宛先IPアドレスと、前記コンテンツ情報と、に基づいて中継要求メッセージを作成し、前記中継要求メッセージを前記コントローラに送信し、前記コントローラから応答メッセージを受信する中継要求インタフェース部と、
前記応答メッセージで指定されるフロー情報が新規であれば、前記指定された宛先IPアドレスとプロトコルポート情報とにしたがって、前記第2のプロトコル終端部に、前記第2の通信コネクションとして新規の通信コネクションを確立するように要求し、前記応答メッセージで指定されるフロー情報がKeep Aliveであれば、前記第2のプロトコル終端部に、前記第2の通信コネクションとして前記指定された宛先IPアドレスとプロトコルポート情報とを使用しているコネクションを使用するように要求する
コンテンツベーススイッチシステム。 - 請求項7に記載のコンテンツベーススイッチシステムであって、
前記コントローラは、
前記中継装置から前記中継要求メッセージを受信し、中継に使用するフロー情報が確定すると、前記中継装置に対して、前記確定したフロー情報を含む応答メッセージを返す中継要求インタフェース部と、
送信元情報と、宛先情報と、コンテンツ情報と、転送ポリシーと、を関連付けて格納するための転送ポリシーテーブルと、
宛先と、経路と、QoS情報と、を関連付けて格納するためのフロー管理テーブルと、
前記中継要求メッセージに含まれる送信元情報と、宛先情報と、コンテンツ情報と、に基づいて、前記転送ポリシーテーブルを検索し、転送ポリシーを取得し、前記転送ポリシーに基づいて、宛先、経路、QoS情報を決定し、前記転送ポリシーにおいてキープアライブを使用するか否か判断し、キープアライブを使用する場合は、同一の宛先、経路、QoSを適用しているパスを、前記宛先、前記経路、前記QoS情報をキーとして前記フロー管理テーブルを検索し、同一のフローが存在するか否か判断し、同一のフローが存在した場合は、既存のフロー情報を取得し、同一のフローが存在しない場合、及びキープアライブを使用しない場合は、新規フローを割り当て、中継に使用するフロー情報を確定する経路判定部と、
前記新規フローを割り当てた場合は、前記新規フローのフロー情報に対応するフローエントリーを経路上のスイッチに対して設定する経路設定部と
を具備する
コンテンツベーススイッチシステム。 - 請求項1乃至8のいずれか一項に記載のコンテンツベーススイッチシステムで使用される中継装置。
- 請求項1乃至8のいずれか一項に記載のコンテンツベーススイッチシステムで使用されるスイッチ。
- 請求項1乃至8のいずれか一項に記載のコンテンツベーススイッチシステムで使用されるコントローラ。
- 複数の端末間の通信経路をパケットペイロードに含まれるコンテンツに基づいて決定するコンテンツベーススイッチ方法であって、
中継装置により、複数の端末間の通信を所定の通信プロトコルに基づいて中継し、パケットペイロードからコンテンツ情報を抽出し、前記抽出されたコンテンツ情報と端末のアドレス情報とをコントローラに送信し、
前記複数の端末間を接続するネットワーク上に少なくとも1つ存在するスイッチにより、前記複数の端末及び前記中継装置のうちのいずれかからデータを受信し、
前記コントローラにより、前記中継装置及び前記スイッチの制御を行い、前記コンテンツ情報と前記宛先端末のアドレス情報とに基づいて転送経路を決定し、更に転送に使用するフロー情報を決定し、フロー情報と出力方路との対応表を転送経路上にあるスイッチの経路テーブルに設定し、前記決定されたフロー情報を前記中継装置に通知し、
前記中継装置により、前記コントローラから通信されたフロー情報を用いて宛先端末までのフローを設定し、
前記スイッチにより、前記コントローラから通知されたフロー情報の識別子を用いて宛先端末まで通信を行う
コンテンツベーススイッチ方法。 - 請求項12に記載のコンテンツベーススイッチ方法であって、
前記複数の端末間の通信プロトコルがTCPである場合に、
前記決定されたフロー情報の識別子は、
TCPの送信元ポート番号及び宛先ポート番号のうちの少なくとも一方と、
前記宛先端末のIPアドレスと
を含む
コンテンツベーススイッチ方法。 - 請求項12又は13に記載のコンテンツベーススイッチ方法であって、
前記決定されたフロー情報の識別子は、
通信の端点となる二つの端末に対応するIPアドレスのうちの少なくとも1つ
を含む
コンテンツベーススイッチ方法。 - 請求項12乃至14のいずれか一項に記載のコンテンツベーススイッチ方法であって、
前記複数の端末間の通信プロトコルはUDPである場合に、
前記決定されたフロー情報の識別子は、
UDPの送信元ポート番号及び宛先ポート番号のうちの少なくとも一方と、
前記宛先端末のIPアドレスと
を含む
コンテンツベーススイッチ方法。 - 請求項12乃至15のいずれか一項に記載のコンテンツベーススイッチ方法であって、
前記中継装置により、前記決定されたフロー情報に基づいて、前記中継装置から前記宛先端末までの通信フローが新規のフローであると判断された場合に、前記決定されたフロー情報が示す通信フローと同一の通信フローを新規に確立して前記宛先端末までのデータを転送する
コンテンツベーススイッチ方法。 - 請求項12乃至16のいずれか一項に記載のコンテンツベーススイッチ方法であって、
前記中継装置により、前記決定されたフロー情報に基づいて、前記中継装置から前記宛先端末までの通信フローが使用中のフローであると判断された場合に、既に確立済みのフローを使用して前記宛先端末との間のデータを転送する
コンテンツベーススイッチ方法。 - 請求項12乃至17のいずれか一項に記載のコンテンツベーススイッチ方法における中継装置、スイッチ及びコントローラのいずれかの動作を、計算機に実行させるためのプログラムを格納した記憶媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011532995A JP5621778B2 (ja) | 2009-09-25 | 2010-09-21 | コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法 |
US13/498,101 US8971339B2 (en) | 2009-09-25 | 2010-09-21 | Contents base switching system and contents base switching method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009221454 | 2009-09-25 | ||
JP2009-221454 | 2009-09-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2011037105A1 true WO2011037105A1 (ja) | 2011-03-31 |
Family
ID=43795852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2010/066311 WO2011037105A1 (ja) | 2009-09-25 | 2010-09-21 | コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8971339B2 (ja) |
JP (1) | JP5621778B2 (ja) |
WO (1) | WO2011037105A1 (ja) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012141086A1 (ja) * | 2011-04-15 | 2012-10-18 | 日本電気株式会社 | コンピュータシステム、コントローラ、及びネットワークアクセスポリシ制御方法 |
JP2013070183A (ja) * | 2011-09-21 | 2013-04-18 | Nec Corp | 通信装置、制御装置、通信システム、通信制御方法及びプログラム |
WO2013146885A1 (ja) * | 2012-03-28 | 2013-10-03 | 日本電気株式会社 | 通信システム、上位レイヤスイッチ、制御装置、スイッチ制御方法及びプログラム |
JP2014039141A (ja) * | 2012-08-15 | 2014-02-27 | Nec Corp | アプリケーション通信制御システムおよびアプリケーション通信制御方法 |
EP2759101A1 (en) * | 2011-09-22 | 2014-07-30 | NEC Corporation | Communication terminal, communication method, and program |
KR101562789B1 (ko) * | 2015-03-20 | 2015-10-23 | (주)루먼텍 | Hd/uhd급 멀티채널 비디오 라우팅 겸용 스위칭 방법 및 그 장치 |
KR101600865B1 (ko) * | 2015-03-20 | 2016-03-08 | (주)루먼텍 | 스튜디오용 hd/uhd급 멀티채널 영상 데이터 라우팅 스위치 시스템 및 그 방법 |
JP2016525825A (ja) * | 2013-06-08 | 2016-08-25 | 華為技術有限公司Huawei Technologies Co.,Ltd. | ルーティング及び転送の方法、装置、及びシステム |
JP2017519450A (ja) * | 2014-06-26 | 2017-07-13 | 華為技術有限公司Huawei Technologies Co.,Ltd. | ソフトウェア定義ネットワーク化のためのサービス品質制御方法及びデバイス |
KR101852596B1 (ko) | 2018-02-19 | 2018-04-27 | 보은전자방송통신(주) | 다수의 믹서 출력을 갖는 멀티 채널 비디오 스위칭 장치 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012060316A1 (ja) * | 2010-11-01 | 2012-05-10 | 日本電気株式会社 | 通信システム、制御装置、パケット転送経路の制御方法およびプログラム |
EP2665229B1 (en) | 2011-01-13 | 2018-10-17 | Nec Corporation | Network system and routing method |
ES2640871T3 (es) * | 2011-09-21 | 2017-11-07 | Nec Corporation | Aparato de comunicación, sistema de comunicación, método de control de comunicación y programa |
ES2660738T3 (es) * | 2012-10-10 | 2018-03-26 | Nec Corporation | Nodo de comunicaciones, sistema de comunicaciones, dispositivo de control, método de transferencia de paquetes, y programa |
US9548920B2 (en) * | 2012-10-15 | 2017-01-17 | Cisco Technology, Inc. | System and method for efficient use of flow table space in a network environment |
US9009349B2 (en) | 2013-02-08 | 2015-04-14 | Dell Products, Lp | System and method for dataplane extensibility in a flow-based switching device |
EP3010278B1 (en) * | 2013-06-13 | 2019-01-09 | Nec Corporation | Control method and control device for service quality in communication system, and communication device |
KR102130301B1 (ko) * | 2013-06-27 | 2020-07-08 | 에스케이텔레콤 주식회사 | 컨텐츠 전송 시스템에서 데이터 분산을 위한 장치 및 이를 위한 방법 |
WO2015010256A1 (zh) | 2013-07-23 | 2015-01-29 | 华为技术有限公司 | 一种报文转发方法及设备 |
WO2015026809A1 (en) * | 2013-08-19 | 2015-02-26 | Centurylink Intellectual Property Llc | Network management layer - configuration management |
EP3044933B1 (en) * | 2013-09-12 | 2019-01-09 | Nec Corporation | A method for operating an information-centric network and network |
US9787586B2 (en) | 2013-10-24 | 2017-10-10 | University Of Houston System | Location-based network routing |
CN104838624B (zh) * | 2013-11-22 | 2017-12-08 | 华为技术有限公司 | 一种控制业务数据在虚拟网络中转发的方法、装置及系统 |
CN105247831B (zh) * | 2014-01-23 | 2018-10-30 | 华为技术有限公司 | 流表修改方法、流表修改装置和开放流网络系统 |
US20150363423A1 (en) * | 2014-06-11 | 2015-12-17 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for parallel data replication in a distributed file system |
TWI562661B (en) | 2015-08-27 | 2016-12-11 | Ind Tech Res Inst | Cell and method and system for bandwidth management of backhaul network of cell |
WO2017199704A1 (ja) * | 2016-05-17 | 2017-11-23 | 日本電信電話株式会社 | 経路計算制御装置及び経路計算制御方法 |
CN108306831B (zh) * | 2017-01-13 | 2021-12-03 | 华为技术有限公司 | 选路方法及装置 |
WO2019046214A1 (en) | 2017-08-28 | 2019-03-07 | Sigma Designs, Inc. | EXTERNAL MICROCONTROLLER COMMUNICATIONS |
US11502873B2 (en) * | 2018-03-07 | 2022-11-15 | Sumitomo Electric Industries, Ltd. | Switch device, vehicle-mounted communication device, vehicle-mounted communication system, time correction method, and time correction program |
CN110390020A (zh) * | 2018-04-19 | 2019-10-29 | 株式会社日立制作所 | 语义网关的建模方法和语义网关 |
CN116366530A (zh) * | 2023-04-23 | 2023-06-30 | 北京火山引擎科技有限公司 | 一种流表老化方法、装置、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002094561A (ja) * | 2000-09-19 | 2002-03-29 | Nippon Telegr & Teleph Corp <Ntt> | 意味情報ネットワーク、意味情報スイッチ、意味情報ルータ、意味情報ゲートウェイ、イベントルーティング方法、及びイベントルーティング装置 |
JP2002124976A (ja) * | 2000-10-18 | 2002-04-26 | Nec Corp | インタードメインルーティング装置 |
JP2004304456A (ja) * | 2003-03-31 | 2004-10-28 | Fujitsu Ltd | ネットワークシステム,同システムにおけるパス設定方法並びに同システムに用いられるネットワーク管理装置及びネットワーク装置 |
JP2006203904A (ja) * | 2005-01-21 | 2006-08-03 | Nec Corp | 方法、コンテンツベースルータ、コンテンツベースネットワーク |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001067690A1 (fr) | 2000-03-07 | 2001-09-13 | Nippon Telegraph And Telephone Corporation | Reseau d'information semantique |
US7301952B2 (en) * | 2000-04-06 | 2007-11-27 | The Distribution Systems Research Institute | Terminal-to-terminal communication connection control method using IP transfer network |
JP2004140539A (ja) * | 2002-10-17 | 2004-05-13 | Hitachi Ltd | 情報ルーティング方式および情報中継装置 |
JP4627669B2 (ja) * | 2005-03-16 | 2011-02-09 | アラクサラネットワークス株式会社 | パケット転送装置およびその転送制御方式 |
JP4626811B2 (ja) | 2005-09-29 | 2011-02-09 | 日本電気株式会社 | ポートホッピング検出システム、ポートホッピング検出装置、ポートホッピング検出方法、及びプログラム |
JP4922972B2 (ja) * | 2008-03-13 | 2012-04-25 | 株式会社日立製作所 | 通信システム |
-
2010
- 2010-09-21 US US13/498,101 patent/US8971339B2/en not_active Expired - Fee Related
- 2010-09-21 WO PCT/JP2010/066311 patent/WO2011037105A1/ja active Application Filing
- 2010-09-21 JP JP2011532995A patent/JP5621778B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002094561A (ja) * | 2000-09-19 | 2002-03-29 | Nippon Telegr & Teleph Corp <Ntt> | 意味情報ネットワーク、意味情報スイッチ、意味情報ルータ、意味情報ゲートウェイ、イベントルーティング方法、及びイベントルーティング装置 |
JP2002124976A (ja) * | 2000-10-18 | 2002-04-26 | Nec Corp | インタードメインルーティング装置 |
JP2004304456A (ja) * | 2003-03-31 | 2004-10-28 | Fujitsu Ltd | ネットワークシステム,同システムにおけるパス設定方法並びに同システムに用いられるネットワーク管理装置及びネットワーク装置 |
JP2006203904A (ja) * | 2005-01-21 | 2006-08-03 | Nec Corp | 方法、コンテンツベースルータ、コンテンツベースネットワーク |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9065815B2 (en) | 2011-04-15 | 2015-06-23 | Nec Corporation | Computer system, controller, and method of controlling network access policy |
WO2012141086A1 (ja) * | 2011-04-15 | 2012-10-18 | 日本電気株式会社 | コンピュータシステム、コントローラ、及びネットワークアクセスポリシ制御方法 |
JP5660202B2 (ja) * | 2011-04-15 | 2015-01-28 | 日本電気株式会社 | コンピュータシステム、コントローラ、及びネットワークアクセスポリシ制御方法 |
JP2013070183A (ja) * | 2011-09-21 | 2013-04-18 | Nec Corp | 通信装置、制御装置、通信システム、通信制御方法及びプログラム |
US10412001B2 (en) | 2011-09-22 | 2019-09-10 | Nec Corporation | Communication terminal, communication method, and program |
EP2759101A1 (en) * | 2011-09-22 | 2014-07-30 | NEC Corporation | Communication terminal, communication method, and program |
EP2759101A4 (en) * | 2011-09-22 | 2015-03-11 | Nec Corp | COMMUNICATION TERMINAL, COMMUNICATION METHOD, AND PROGRAM THEREOF |
US9515926B2 (en) | 2012-03-28 | 2016-12-06 | Nec Corporation | Communication system, upper layer switch, control apparatus, switch control method, and program |
JPWO2013146885A1 (ja) * | 2012-03-28 | 2015-12-14 | 日本電気株式会社 | 通信システム、上位レイヤスイッチ、制御装置、スイッチ制御方法及びプログラム |
WO2013146885A1 (ja) * | 2012-03-28 | 2013-10-03 | 日本電気株式会社 | 通信システム、上位レイヤスイッチ、制御装置、スイッチ制御方法及びプログラム |
JP2014039141A (ja) * | 2012-08-15 | 2014-02-27 | Nec Corp | アプリケーション通信制御システムおよびアプリケーション通信制御方法 |
JP2016525825A (ja) * | 2013-06-08 | 2016-08-25 | 華為技術有限公司Huawei Technologies Co.,Ltd. | ルーティング及び転送の方法、装置、及びシステム |
US9948550B2 (en) | 2013-06-08 | 2018-04-17 | Huawei Technologies Co., Ltd. | Method, apparatus, and system for routing and forwarding |
JP2017519450A (ja) * | 2014-06-26 | 2017-07-13 | 華為技術有限公司Huawei Technologies Co.,Ltd. | ソフトウェア定義ネットワーク化のためのサービス品質制御方法及びデバイス |
US10313266B2 (en) | 2014-06-26 | 2019-06-04 | Huawei Technologies Co., Ltd. | Quality of service control method and device for software-defined networking |
US10848437B2 (en) | 2014-06-26 | 2020-11-24 | Huawei Technologies Co., Ltd. | Quality of service control method and device for software-defined networking |
KR101562789B1 (ko) * | 2015-03-20 | 2015-10-23 | (주)루먼텍 | Hd/uhd급 멀티채널 비디오 라우팅 겸용 스위칭 방법 및 그 장치 |
KR101600865B1 (ko) * | 2015-03-20 | 2016-03-08 | (주)루먼텍 | 스튜디오용 hd/uhd급 멀티채널 영상 데이터 라우팅 스위치 시스템 및 그 방법 |
KR101852596B1 (ko) | 2018-02-19 | 2018-04-27 | 보은전자방송통신(주) | 다수의 믹서 출력을 갖는 멀티 채널 비디오 스위칭 장치 |
Also Published As
Publication number | Publication date |
---|---|
US8971339B2 (en) | 2015-03-03 |
JPWO2011037105A1 (ja) | 2013-02-21 |
JP5621778B2 (ja) | 2014-11-12 |
US20120263186A1 (en) | 2012-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5621778B2 (ja) | コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法 | |
JP5757324B2 (ja) | コンピュータシステム、及び通信方法 | |
US9215175B2 (en) | Computer system including controller and plurality of switches and communication method in computer system | |
US8930552B2 (en) | Application switch system and application switch method | |
JP4537357B2 (ja) | 加入者情報ストリングに基づいたvlanインターフェイスの動的な構築 | |
WO2011087085A1 (ja) | 計算機、ネットワーク接続切替え方法およびプログラム | |
JP5743906B2 (ja) | 通信制御システム | |
JP2004080487A (ja) | パケット転送装置、パケット転送方法解決サーバ、dnsサーバ、ネットワークシステム及びプログラム | |
JP2015508967A (ja) | コントローラでネットワークパケット転送を管理するシステム及び方法 | |
JP2014533001A (ja) | 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム | |
WO2014049432A2 (en) | Method operating in a fixed access network and ues | |
JPWO2013147193A1 (ja) | ネットワークアプライアンス冗長化システム、制御装置、ネットワークアプライアンス冗長化方法及びプログラム | |
JP5725236B2 (ja) | 通信システム、ノード、パケット転送方法およびプログラム | |
CN103460676A (zh) | 通过查询远程服务器的流路由协议 | |
JP2016225783A (ja) | 仮想ネットワークシステムおよび仮想ネットワーク経路設定方法 | |
KR20210016802A (ko) | 소프트웨어 정의 네트워킹 환경에서 서버-클라이언트 기반의 네트워크 서비스를 위한 플로우 테이블을 최적화하는 방법 및 이를 위한 sdn 스위치 | |
US7796614B1 (en) | Systems and methods for message proxying | |
KR101755829B1 (ko) | Sdn 환경에서 arp 처리 방법 및 장치 | |
WO2013062070A1 (ja) | 制御装置、通信システム、仮想ネットワークの管理方法およびプログラム | |
US10044671B2 (en) | Control apparatus, communication system, communication method, and program | |
JP2006245894A (ja) | 転送経路制御装置および転送経路制御プログラム | |
JP4242262B2 (ja) | 通信システム及び端末 | |
WO2023093786A1 (zh) | 一种引流的方法、设备及系统 | |
JP6424496B2 (ja) | パケット転送システム,及びパケット転送装置 | |
JP2006245896A (ja) | ネットワーク制御サーバ、ユーザ端末収容ノード、通信ネットワークおよびネットワーク制御プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10818778 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 13498101 Country of ref document: US Ref document number: 2011532995 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 10818778 Country of ref document: EP Kind code of ref document: A1 |