WO2003103233A1 - パケット中継装置、ネットワーク接続デバイス、パケット中継方法、記録媒体、プログラム - Google Patents

パケット中継装置、ネットワーク接続デバイス、パケット中継方法、記録媒体、プログラム Download PDF

Info

Publication number
WO2003103233A1
WO2003103233A1 PCT/JP2002/005374 JP0205374W WO03103233A1 WO 2003103233 A1 WO2003103233 A1 WO 2003103233A1 JP 0205374 W JP0205374 W JP 0205374W WO 03103233 A1 WO03103233 A1 WO 03103233A1
Authority
WO
WIPO (PCT)
Prior art keywords
session
packet relay
relay processing
packet
unit
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.)
Ceased
Application number
PCT/JP2002/005374
Other languages
English (en)
French (fr)
Inventor
横山 乾
山島 弘之
邦昭 嶋田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004510189A priority Critical patent/JPWO2003103233A1/ja
Priority to EP02730845A priority patent/EP1511229A4/en
Priority to PCT/JP2002/005374 priority patent/WO2003103233A1/ja
Publication of WO2003103233A1 publication Critical patent/WO2003103233A1/ja
Priority to US10/998,553 priority patent/US20050074000A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/12Protocol engines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/165Combined use of TCP and UDP protocols; selection criteria therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/167Adaptation for transition between two IP versions, e.g. between IPv4 and IPv6

Definitions

  • Packet relay device network connection device, packet relay method, recording medium,
  • the present invention relates to a packet relay device and the like.
  • the server 200 has a network interface that connects to each of the networks 230 and 240.
  • Packets (NICs) 210 and 220, and the packet relay processing unit 201 on the server 200 is configured to perform packet relay processing involving NAT (Network Address Translation) and protocol conversion in the packet relay processing unit 201.
  • a relay device is common.
  • Each of the NICs 210 and 220 has network connections 211 and 221 respectively.
  • the networks 230 and 240 are, for example, one on the outside network (Internet, etc.) and the other on the partial network (in-house LAN, etc.).
  • An object of the present invention is to speed up processing by extracting performance according to the number of CPUs in a packet relay processing device having a plurality of CPUs.
  • a bucket relay apparatus of the present invention comprises: a plurality of packet relay processing units each independently performing a bucket relay process; a session management unit; a session management unit; A session distribution unit configured to distribute the session to any of the plurality of packet relay processing units each time a new session is registered.
  • a plurality of packet relay processing units can operate in parallel, so that bucket relay processing performance corresponding to the number of CPUs can be obtained.
  • the packet relay device is configured, for example, such that the server includes the plurality of packet relay processing units, and the session management unit and the session distribution unit are included in a network connection device connected to the server.
  • the packet relay device of the present invention can be realized only by connecting the network connection device having the above configuration to a server having a plurality of CPUs.
  • the packet relay processing means, the session management means, and the session distribution means of the present invention may be configured to be provided in a network connection device connected to the server.
  • the session allocation method using the above-mentioned session allocation means is, for example, a method of sequentially changing the allocation destination for each new session registration. And a method of determining based on a hash value obtained by applying a hash function to information in a bucket, a method of distributing sessions based on load information of each bucket relay processing means, and the like.
  • the present invention can be configured as the network connection device itself having the above configuration, can be configured as a packet relay method, and can execute a program or a program for realizing various means of the packet relay device by a computer. Alternatively, it may be configured as a recording medium on which this program is recorded.
  • FIG. 1 is a block diagram of the principle configuration of the packet relay device according to the present embodiment.
  • FIG. 2 is a functional block diagram of the bucket relay device according to the first embodiment.
  • FIG. 3 is a diagram illustrating an example of the session table.
  • FIG. 4 is a flowchart for explaining a process at the time of inputting a packet to be relayed.
  • FIG. 5 is a flowchart for explaining the process of relaying and outputting a bucket to be relayed.
  • FIG. 6 is a diagram illustrating that the session assignment destination determination processing is performed by a round robin method.
  • FIG. 7 is a diagram showing that the session assignment destination determination processing is performed by a hash method.
  • FIGS. 8 (a) and 8 (b) are diagrams for explaining session allocation destination determination processing by the dynamic load distribution method.
  • FIG. 9 is a diagram for explaining the second embodiment.
  • FIG. 10 is a diagram for explaining the third embodiment.
  • FIG. 11 is a diagram for explaining a specific usage example of the bucket relay device according to the present embodiment.
  • FIG. 12 is a diagram illustrating an example of a hardware configuration of a server (computer).
  • FIG. 13 is a diagram illustrating an example of a recording medium on which a program is recorded or download of the program.
  • FIG. 14 is a diagram illustrating an example of a hardware configuration of a network interface card (NIC).
  • NIC network interface card
  • FIG. 15 is a configuration diagram of a conventional bucket relay device. BEST MODE FOR CARRYING OUT THE INVENTION
  • FIG. 1 is a block diagram showing the principle configuration of a packet relay device according to the present embodiment.
  • a bucket relay device 10 shown in FIG. 1 includes a plurality of packet relay processing units 11 a, 11 b,. , And two network connection units 12a and 12b.
  • Each of the packet relay processing units 11a, 11b,..., 11n is realized by a separate CPU. That is, it is assumed that the packet relay device 20 according to the present example has a configuration in which a plurality of CPUs are mounted.
  • Part 1 1 includes: Notebook Lettering ⁇ NAT (Network Address Translation), Protocol A packet relay process including a file conversion process is performed.
  • the packet relay device 10 is characterized in that a session management unit 13 and a session distribution unit 14 are added to the above configuration.
  • the session management unit 13 analyzes the header information of the packet and manages so that the same session ID is allocated to the bucket of the same session.
  • a session table (not shown) is used for this management. The session table will be described later in detail. '
  • the session distribution unit 14 is a functional unit that controls each of the sessions so as to appropriately distribute the sessions to the plurality of packet relay processing units 11, and includes, for example, a round mouth bin method, a hash method, and a dynamic load distribution described later. Is a specific method. Each of these methods will be described later in detail.
  • the session sorting unit 14 always sends packets of the same session 3 to the same packet relay processing unit 11. This is because, in a device that performs high-performance packet relay processing such as a proxy server or a firewall, packets in the same session cannot be processed unless they are processed by the same packet relay processing unit 11. (Although processing can be performed by exchanging packets between the packet relay processing units 11, an extra processing load is imposed, which is not practical.)
  • the CPU in a packet relay device having a plurality of CPUs, the CPU can be used efficiently, so that packet relay processing performance corresponding to the number of CPUs can be obtained. Become.
  • FIG. 2 is a functional block diagram of the packet relay device according to the first embodiment.
  • the packet relay device 20 shown in FIG. 2 includes a plurality of packet relay processing units 21a, 21b,... 21n, and a plurality of network connection units 22a, 22b,. m , A session management unit 23, a session distribution unit 24, and a session tape storage 25.
  • a bucket input from a network (not shown) via any of the network connection units 22 a to 22 m is sent to the session management unit 23.
  • the network connection units 22 a to 22 m are, for example, Ethernet (registered trademark) controllers. Note that, since the configuration of the packet is a general one, it is not particularly shown, but has a configuration including, for example, a header portion including an Ethernet header, an IP header, and a TCP / UDP header, and a data portion.
  • the session management unit 23 first searches the session table 25 (step S11), and determines whether or not the session of the inputted bucket is registered (step S11). S 1 2).
  • the session table has a configuration as shown in FIG. 3, for example.
  • the session table 30 shown in FIG. 3 is a table for storing session information for managing a session, and includes an ID (session ID) 31, a source IP address 32, a source port 33, and a destination IP. It consists of data items of address 34, destination port 35, session status 36, and session distribution destination 37.
  • the session can be uniquely determined by the source / destination IP address in the IP header of the packet and the source / destination port in the TCP header.
  • the session table 30 is searched as a session search key. Then, there is a record where the combination of the source IP address 32 / destination IP address 34, and the source port 33 / destination port 35 in the session tape cache 30 matches the above session search key. The above steps depend on whether Perform SI 2 judgment.
  • session ID (session ID) 31 is an identification number for identifying each session.
  • the session distribution destination 37 will be described later when the session distribution unit 24 is described.
  • step S12 if it is determined that the session of the input packet is not registered in the session table 30 (step S12, NO), the packet is transmitted to a new session. ID 31 is assigned as a key, and each data as the session search key is newly registered in the session table 30 (step S17). The newly registered bucket is sent to the session sorting unit 24.
  • step S12 if the state is already registered in the session table 30 (step S12, YES), the session state transition is inspected from the information in the header of the bucket, and the state is determined. It is determined whether or not a transition has been made (step S13).
  • step S13, YE S If the state is changing (step S13, YE S), 'the session state 36 in the session table 30 is rewritten.
  • the rewriting of session state 36 may be the same as that of Japanese Patent Application No. 2000-308387 “Packet Relay Processing Device” already proposed by the present applicant, and will not be described in detail here.
  • the session state is set to 'SYN-RECV. It transits to TAB '(Established), and packet transmission and reception are performed in this state.
  • step S15 When the FIN packet is received (step S15, YES), the entry of the session is deleted from the session tape register 30 (step S16), The packet is sent to the session sorting unit 24. If the session state has not transitioned (step S13, NO), the packet is sent to the session distribution unit 24 as it is.
  • the session sorting unit 24 determines that the transmitted packet is a bucket transmitted after the session management unit 23 has performed the processing of step S17, that is, the session is newly registered in the session table 30. If the bucket has been assigned, the destination of the session is determined (step S22). That is, it determines which packet relay processing unit 21 is to process the packet of this session. Then, the determined contents are registered in the session distribution destination 37 of the session table 30 (step S23).
  • the bucket sent from the session management unit 23 through the processing of the above steps S13 to S16 refers to the session distribution destination 37 already registered in the session table 30. This makes it possible to determine to which packet relay processing unit 21 the packet should be sent (step S21).
  • the session allocating unit 24 sends the bucket to the bucket relay processing unit 21 determined by the processing of step S21 described above or the bucket relay processing unit 21 determined by the processing of step S22. To transfer.
  • the bucket relay processing unit 21 performs bucket relay processing such as bucket filtering, NAT (Network Address Translation), and protocol conversion. In addition, routing processing (processing for determining which network (network connection unit 22) to send) is also performed.
  • bucket relay processing such as bucket filtering, NAT (Network Address Translation), and protocol conversion.
  • routing processing processing for determining which network (network connection unit 22) to send) is also performed.
  • the packet relayed and output by the bucket relay processing unit 21 is sent to the routing destination network connection unit 22 by the processing shown in the flow of FIG. First, the packet is passed from the packet relay processing unit 21 to the session management unit 23.
  • the session management unit 23 Upon receiving this packet, the session management unit 23 first searches the session table 30 (step S31), and if the session has been registered (step S32, YES), as in the process shown in FIG. Further, if there is a session state transition (step S33, YES), rewriting processing of the session state 36 is executed (step S34), and if the session is closed (step S35, YES), the session deletion processing is performed. '(Step S36). Then, the bucket is transferred to the network 1 and the network connection unit 22 as the routing destination. On the other hand, if the session has not been registered (step S32, NO), a new session registration process is executed (step S37). Then, the session allocation destination 37 is registered in the session table 30 (step S38). That is, in this case, since the bucket relay processing unit 21 has already determined which bucket relay processing unit 21 has already sent the packet, the session distribution unit 24 does not need to determine the distribution destination.
  • the packet processed by the session management unit 23 is sent to the network connection unit 22 that is the routing destination.
  • a packet relayed by the packet relay device 20 is managed as a different session depending on the direction of input to the packet relay device 20 and the direction of relay and output by the packet relay device 20.
  • the session sorting method by the session sorting unit 24 may be any method that can provide performance according to the number of CPUs.
  • three methods are proposed. That is, the round robin method, hash method, and dynamic load distribution method will be described below. -First, the round robin method will be described.
  • FIG. 6 is a diagram showing that, in the processing of steps S17, S22, and S23 in FIG. 4 described above, the session allocation destination determination processing of step S22 is performed by the round mouth bin method. is there. That is, when the session new registration process of step S17 is performed in the session management unit 23, the session distribution unit 24 determines a distribution destination by a round robin method (step S41), and determines the determined session. The distribution destination is registered in the session table 25 (step S23).
  • the bucket relay processing unit 21 to be allocated is sequentially changed for each new session registration.
  • the packet relay processing unit 21a is set as the session allocation destination
  • the packet relay processing unit 21b is set as the session allocation destination.
  • the destination packet relay processing unit 21 is sequentially changed, and after the last packet relay processing unit 21n is allocated, the next session is allocated Return to the bucket relay processing section 21a.
  • the session is allocated to each packet relay processing unit 21 on average.
  • multiple CPUs can be used efficiently and processing performance can be adjusted according to the number of CPUs.
  • FIG. 7 is a diagram showing that, in the processing of steps S17, S22, and S23 in FIG. 4 described above, the session allocation destination determination processing of step S22 is performed by a hash method. That is, when the session new registration process of step S17 is performed in the session management unit 23, the session distribution unit 24 determines the distribution destination by the hash method (step S42), and determines the determined session distribution. The destination is registered in the session table 25 (step S23).
  • the destination is determined based on a hash value obtained by applying a hash function to specific information included in a received packet. For example, if the distribution destinations are the bucket relay processing unit 21a and the bucket relay processing unit 2.1b, for example, if the hash value is in the range of "0000" to 7FFF, the packet is The generated hash is distributed to the relay processing unit 21a, and is distributed to the packet relay processing unit 21b if the hash value is in the range of "800 (T to" FFFF ⁇ "). The destination is determined by comparing the value with a predetermined range (or a threshold value, etc.) set in advance As the information to be input to the hash function, for example, the source IP address is used.
  • a predetermined range or a threshold value, etc.
  • FIGS. 8 (a) and 8 (b) are diagrams for explaining the dynamic load distribution method.
  • each packet relay processing unit 21 is provided with a load information acquisition unit 40, and the session distribution unit 24 is provided with each packet relay processing unit. 2.
  • the load information for example, the CPU usage rate / the number of processed sessions can be used.
  • FIG. 8 (b) shows that in the processing of steps S17, S22, and S23 in FIG. 4, the session allocation destination determination processing of step S22 is performed by the dynamic load distribution method.
  • FIG. That is, when the session new registration process of step S17 is performed in the session management unit 23, the session distribution unit 24 determines the distribution destination by the dynamic load distribution method (step S43) and decides. The session distribution destination is registered in the session table 25 (step S23).
  • the load information is referred from the load information acquisition unit 40, and, for example, the bucket relay processing unit 21 with a relatively low CPU utilization or the current number of session processes is compared.
  • An extremely small number of packet relay processing units 21 are determined as distribution destinations.
  • the distribution destination may be determined in consideration of both the CPU usage rate and the number of session processes.
  • each functional unit packet relay processing unit 21 to session distribution unit 24 shown in FIG. 2 on what kind of hardware. There was no particular limitation.
  • FIG. 9 is a diagram for explaining the second embodiment.
  • the server 50 includes a plurality of packet relay processing units 51a to 51n, a network interface card (NIC) 60, and a plurality of network connection units 61 a to 61 m, session management section 62, A session table 63 and a session sorting unit 64.
  • the NIC 60 is installed in the slot of the Sano 50 / s 52 (x.3 ⁇ 4PCI (Peripheral Components Interconnect) bus).
  • One NIC 60 may be used, but the performance can be improved by attaching a plurality of NICs to the server 50.
  • NI C60 is an example of a network-connected device, but it is not so limited.
  • a server is provided with a plurality of CPUs (a plurality of packet relay processing units).
  • CPUs a plurality of packet relay processing units.
  • the NIC 60 By installing the NIC 60, multiple CPUs can be handled efficiently, and processing performance according to the number of CPUs can be obtained.
  • the processing flow itself of the bucket relay processing units 5 la to 51 n, the network connection units 61 a to 61 m, the session management unit 62, the session table 63, and the session distribution unit 64 is described in the first embodiment. Since it is almost the same as the example, its description is omitted. The difference from the first embodiment is that transmission and reception of packets between the session distribution unit 64 and the packet relay processing unit 51 are performed via the bus 52 of the server 50. Has no particular effect, so the description is omitted as described above. .
  • FIG. 10 is a diagram for explaining the third embodiment.
  • the network interface card (NIC) 70 includes a plurality of packet relay processing units 71a to 71n, a plurality of network connection units 72a to 72m, a session management unit 73, It has a session table 74 and a session distribution unit 75.
  • the processing flow itself is the same as that of the first embodiment, and therefore, the description thereof is omitted.
  • the server 50 having a plurality of packet relay processing units includes N
  • the bucket relay device according to the present embodiment can be realized by mounting the IC 60
  • the third embodiment requires mounting the NI C70 even if the server 80 does not have the packet middle function.
  • the packet relay device according to this example can be realized.
  • the CPU of the server 80 is not used for packet processing but is used for some other processing.
  • a plurality of CPUs can be handled efficiently, and processing performance according to the number of CPUs can be obtained.
  • FIG. 11 is a diagram for explaining a specific usage example of the bucket relay device according to the present embodiment.
  • the packet relay device is a device that relays a packet between a plurality of networks. Therefore, of course, the protocols of the plurality of networks may be different.
  • a case where the protocol of one network is TCP / IPv6 and the other is TCP / IPV4 is shown as an example, and a configuration in which the packet relay processing unit performs protocol conversion corresponding to this is shown.
  • a protocol stack 92 of TCP / IPv6 (Internet Protocol Version 6) and a protocol stack 93 of TCP / IPv4 (Internet Protocol Version 4) are connected. Prepare and terminate the packet. Once terminated, each of the two connections can be controlled separately. Also, by terminating, the data in the packet can be cached.
  • the protocol conversion section 91 converts the protocol. For example, ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ 4 / ⁇ protocol conversion is performed by terminating session 1 in an IPv6 network and terminating session 2 in an IPv4 network.
  • the protocol conversion is not limited to the IPv4 / v6 protocol conversion.
  • FIG. 12 is a diagram showing an example of a hardware configuration of the server (computer).
  • the computer 110 shown in the figure includes a CPU 111, a memory 112, an input device 113, an output device 114, an external storage device 115, a medium drive device 116, a network connection device 117, etc. These are connected to the bus 118.
  • the configuration shown in the figure is an example, and the present invention is not limited to this.
  • the CPU 111 is a central processing unit that controls the computer 110 as a whole.
  • the memory 112 is a memory such as a RAM for temporarily storing programs or data stored in the external storage device 115 (or the portable recording medium 119) when executing a program or updating data. is there.
  • the CPU 111 executes the above-described various processes using the program Z data read into the memory 112.
  • the input device 113 is, for example, a keyboard, a mouse, a touch panel, or the like.
  • the output device 114 is, for example, a display, a printer, or the like.
  • the input device 113 and the output device 114 may be omitted.
  • the external storage device 115 is, for example, a hard disk device or the like, and stores a program Z data for realizing the above various functions.
  • the medium driving device 116 reads (or writes) a program / data or the like recorded on the portable recording medium 119.
  • the portable recording medium may be any recording medium such as a floppy disk (FD), a CD-ROM, a DVD, a magneto-optical disk, etc., as long as it is portable and has a certain storage capacity or more.
  • ⁇ Network connection device 117 is configured to connect to a network (such as the Internet) to enable transmission / reception of programs / data with external information processing devices It is.
  • FIG. 13 is a diagram showing an example of a recording medium on which the program is recorded or download of the program.
  • the program / data is read out by inserting a portable recording medium 119 storing the program Z data for realizing the functions of the present invention into the main body of the computer 110, for example.
  • the program / data may be stored and executed in the memory 112, and the program / data may be stored in an external device via a network 130 (such as the Internet) connected to the network connection device 117.
  • the program (data) 121 stored in the server 120 of the Z data provider may be downloaded.
  • the present invention is not limited to the apparatus / method, and may be configured as a recording medium (portable recording medium 119, etc.) storing the program Z data itself, or may be configured as the program itself.
  • these programs can be configured as transmission signals transmitted via wire / wireless.
  • FIG. 14 is a diagram illustrating an example of a hardware configuration of a network interface card (NIC).
  • NIC network interface card
  • the network interface card (NIC) 144 in the illustrated example has a network processor 141, a memory 144, and a gigabit Ethernet controller 144, 144.
  • the network processor 141 may have a general configuration, and although not particularly described, reads out programs / data stored in the memory 142 and executes processing.
  • the programs / data stored in the memory 142 are programs for realizing the various processes described above (the processes shown in FIGS. 4 to 8), the tables shown in FIG. 3, and the like.
  • the network processor 14 1 is connected to the internal path (PCI 15 0).
  • the gigabit Ethernet controllers 144 and 144 are connected to optical tables 160 and 170, respectively, which are examples of the networks 1 and 2, respectively.
  • optical tables 160 and 170 are examples of the networks 1 and 2, respectively.
  • this is only an example, and the network is not limited to optical cables, and the Ethernet controller is not limited to a gigabit type.
  • a plurality of packet relay processing units are provided by the session management unit and the session twisting unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

パケット中継装置、 ネットワーク接続デバイス、 パケット中継方法、 記録媒 体、
技術分野
本発明は、 パケット中継装置等に関する。
背景技術
従来より、 例えばプロキシ一■サーバやファイアウォールのような高機能の パケット中継装置を構築する場合、 図 1 5に示すように、 サーバ 200に、 各 ネットワーク 230、 240との接続を行う各ネットワークインタフェース力 ード(N I C) 210、 220を装備し、 サーバ 200上のパケット中継処理部 2 0 1 においてバケツ トフイノレタ リ ングゃ N A T ( Network Address Translation)、 プロトコル変換などを伴うパケット中継処理を行う構成のパケ ット中継装置が一般的である。 各 N I C 210, 220は、 各々、 ネットヮー ク接続部 21 1、 221を有する。 尚、 上記ネットワーク 230、 240は、 例えば、 一方が外部ネットワーク (インターネット等)、 他方が內部ネットヮ一 ク (社内 LAN等) である。
ここで、 最近の急激なインターネットの大規模化のため、 ネットワークを流 れるパケットの量は指数関数的な伸びを示している。 このため、 従来のパケッ ト中継装置では、 高速化するために CPUの性能を向上させたり、 CPUを複 数搭載して処理性能を上げることが行われている。
し力 し、 従来のパケット中継装置では、 CPUを複数搭載しても、 複数の C P Uを効率的に扱うことができないため、 C P Uの数に応じた処理性能を出せ ないことが知られている。
本発明の課題は、 複数の C P Uを載せたパケット中継処理装置において、 C P U数に応じた性能を引き出すことにより、 処理を高速化させることである。 発明の開示 本発明のバケツト中継装置は、 各々が独立してバケツト中継処理を行う複数 のパケット中継処理手段と、 セッション管理を行ぅセッション管理手段と、 該 セッション管理手段によるセッション管理に基づいて、 新規セッション登録毎 に該セッションを前記複数のパケット中継処理部の何れかに振り分けるセッシ ョン振り分け手段とを有するように構成する。
上記構成のバケツト中継装置によれば、 複数のパケット中継処理部が並列し て動作することが可能になるため、 C P U数に応じたバケツト中継処理性能を 得ることができる。
上記パケット中継装置は、 例えば、 前記複数のパケット中継処理手段をサー バに備え、 前記セッション管理手段、 及びセッション振り分け手段を、 前記サ ーバに接続するネットワーク接続デバイスに備えるように構成する。
の場合、 複数の C P Uを備えるサーバに対して、 上記構成のネットワーク 接続デバィスを接続するだけで、 上記本発明のパケット中継装置を実現できる あるいは、 このような構成例に限らず、 例えば、 前記複数のパケット中継処 理手段、 セッション管理手段、 及びセッション振り分け手段を、 サーバに接続 するネットワーク接続デバィスに備えるように構成してもよい。
また、 上記セッション振り分け手段によるセッション振り分け方法は、 具体 的には、 例えば、 新規セッション登録毎に順番に振り分け先を変えて行く方法 や、 バケツト内の情報に対してハッシュ関数を適用することで得られるハツシ ュ値に基づいて決定する方法や、 各バケツト中継処理手段の負荷情報に基づい てセッションを振り分ける方法等である。
また、 本発明は、 上記構成のネットワーク接続デバイス自体として構成する こともできるし、 パケット中継方法として構成することもできるし、 上記パケ ット中継装置の各種手段をコンピュータにより実現させる為のプログラムや、 このプログラムを記録した記録媒体として構成することもできる。 図面の簡単な説明
本発明は、 後述する詳細な説明を、 下記の添付図面と共に参照すればより明 らかになるであろう。
図 1は、 本実施の形態によるパケット中継装置の原理構成プロック図である 図 2は、 第 1の実施例によるバケツト中継装置の機能ブロック図である。 図 3は、 セッションテーブルの一例を示す図である。
図 4は、 中継するパケットの入力時の処理を説明する為のフローチャート図 である。
図 5は、 中継するバケツトの中継■出力時の処理を説明する為のフローチヤ 一ト図である。
図 6は、 セッション振り分け先決定処理を、 ラウンドロビン方式により行う ことを示す図である。
図 7は、 セッション振り分け先決定処理を、 ハッシュ方式により行うことを 示す図である。
図 8 ( a )、 ( b ) は、 動的負荷分散方式によるセッション振り分け先決定処 理を説明する為の図である。 図 9は、 第 2の実施例を説明するための図である。
図 10は、 第 3の実施例を説明する為の図である。
図 1 1は、 本例によるバケツト中継装置の具体的な使用例を説明する為の図 である。
図 12は、 サーバ (コンピュータ) のハードウェア構成の一例を示す図であ る。
図 13は、 プログラムを記録した記録媒体又はプログラムのダウンロードの 一例を示す図である。
図 14は、 ネットワーク ·インタフェースカード (N I C) のハードウェア 構成の一例を示す図である。
図 15は、 従来のバケツト中継装置の構成図である。 発明を実施するための最良の形態
以下、 図面を参照して、 本発明の実施の形態について説明する。
図 1は、 本実施の形態によるパケット中継装置の原理構成ブロック図である 同図に示すバケツト中継装置 10は、 複数のパケット中継処理部 1 1 a、 1 1 b、 · · · 1 1 nと、 2つのネットワーク接続部 12 a、 12 bとを有する構 成となっている。 各パケット中継処理部 1 1 a、 1 1 b、 · · · 11 nは、 各々 、 別々の CPUにより実現している。 すなわち、 本例によるパケット中継装置 20は、 複数の CPUを搭載した構成であることを前提としている。
また、 パケット中継処理部 1 1、 ネットワーク接続部 12の機能自体は、 上 記従来のパケット中継装置におけるパケット中継処理部 201、 ネットワーク 接続部 21 1 (22 1) と同様であり、 例えばパケット中継処理部 1 1では、 ノ ケットフイノレタリングゃ NAT (Network Address Translation), プロトコ ル変換処理などを伴うパケット中継処理が行われる。
そして、 本実施の形態によるパケット中継装置 1 0では、 上記のような構成 に対して、 セッション管理部 1 3とセッション振り分け部 1 4が追加されてい ることを特徴とする。
セッション管理部 1 3は、 パケットのへッダ情報を解析することにより、 同 じセッションのバケツトには同じセッション I Dが割り当てられるように管理 する。 この管理には、 不図示のセッションテーブルを用いる。 セッションテー ブルについては、 後に詳述する。 '
セッション振り分け部 1 4は、 複数のパケット中継処理部 1 1に対して、 各 セッションを適切に振り分けるように制御する機能部であり、 例えば後述する ラウンド口ビン方式やハッシュ方式、 動的負荷分散などが具体的な方式として ある。 これら各方式については後に詳しく説明する。
セッション振り分け部 1 4は、 同じセッシ 3ンのパケットは必ず同じパケッ ト中継処理部 1 1に送る。 プロキシ一 ·サーバやファイアウォールのような高 機能のパケット中継処理を行う装置においては、 同じセッションのパケットは 同じパケット中継処理部 1 1で処理させるようにしないと、 現実上、 処理でき なくなるからである (パケット中継処理部 1 1間でやりとりすれば処理可能で はあるが、 余計な処理負荷が掛かり、 現実的ではない)。
このように、 本例によるパケット中継装置では、 複数の C P Uを備えるパケ ット中継装置において、 C P Uを効率的に使うことができるため、 C P U数に 応じたパケット中継処理性能を得ることが可能となる。
以下、 まず、 図 2〜図 5を参照して、 第 1の実施例について説明する。
図 2は、 第 1の実施例によるパケット中継装置の機能ブロック図である。 図 2に示すパケット中継装置 2 0は、 複数のパケット中継処理部 2 1 a、 2 1 b、 · · · 2 1 n、 複数のネットワーク接続部 2 2 a、 2 2 b、 · · - 2 2 m 、 セッション管理部 2 3、 セッション振り分け部 2 4、 及びセッションテープ ノレ 2 5を有する。
上記構成において、 まず、 不図示のネットワークからネットワーク接続部 2 2 a〜2 2 mの何れかを介して入力されたバケツトは、 セッション管理部 2 3 に送られる。 ネットワーク接続部 2 2 a〜2 2 mは、 例えば、 イーサネット ( 登録商標) コントローラである。 尚、 パケットの構成は、 一般的なものである ので、 特に図示しないが、 例えばイーサネットヘッダ、 I Pヘッダ、 T C P /U D Pヘッダより成るヘッダ部と、 データ部とを有する構成である。
上記パケットを受けたセッション管理部 2 3、 及びセッション振り分け部 2 4の処理について、 以下、 図 3、 図 4を参照して説明する。
まず、 セッション管理部 2 3では、 図 4のフローに示すようにまずセッショ ンテーブル 2 5を検索し (ステップ S 1 1 )、 入力されたバケツトのセッション が登録されているかどうかを判定する (ステップ S 1 2 )。 セッションテーブル は例えば、 図 3に示すような構成をとる。
図 3に示すセッションテーブル 3 0は、 セッションを管理する為のセッショ ン情報を格納するテーブルであり、 I D (セッション I D) 3 1、 送信元 I P アドレス 3 2、 送信元ポート 3 3、 送信先 I Pアドレス 3 4、 送信先ポート 3 5、 セッション状態 3 6、 及びセッション振り分け先 3 7の各データ項目より 成る。
セッションは、 上記パケットの I Pへッダ内の送信元/送信先 IPァドレスおよ ぴ T C Pへッダ内の送信元/送信先ポートの組で一意に決定することができる ので、 この糸且をセッション検索キーとして、 セッションテーブル 3 0の検索を 行う。 そして、 セッションテープノレ 3 0における送信元 I Pア ドレス 3 2 /送信 先 I Pアドレス 3 4、 及び送信元ポート 3 3 /送信先ポート 3 5の組が、 上記セ ッシヨン検索キーと一致するレコードが存在するか否かにより、 上記ステップ S I 2の判定を行う。
I D (セッション I D) 31は、 各セッションを識別する識別番号である。 セッション振り分け先 37については、 後にセッション振り分け部 24の説明 の際に説明する。
再ぴ図 4を参照した説明に戻る。
上記ステップ S 12の判定において、 もし、 入力されたパケットのセッショ ンが、 セッションテーブル 30に登録されていないと判定された場合には (ス テツプ S 1 2, NO)、 このパケットは新規のセッションとして I D 31が割り 当てられ、 セッションテーブル 30に上記セッション検索キーとしての各デー タが新規登録される (ステップ S 17)。 新規登録されたバケツトは、 セッショ ン振り分け部 24に送られる。
一方、 セッションテーブル 30を検索した結果、 セッションテーブル 30に 既に登録されていた場合には (ステップ S 1 2、 YES), そのバケツトのへッ ダ内情報からセッション状態遷移を検査して、 状態が遷移しているかどうかを 判定する (ステップ S 13)。
状態が遷移している場合は (ステップ S 13、 YE S)、 'セッションテーブル 30のセッション状態 36を書き換える。 セッション状態 36の書き換えにつ いては、 本出願人が既に提案している特願 2000— 308387号 「パケッ ト中継処理装置」 と同様であってよく、 ここでは詳細には説明しないが、 例え ば TCPプロ トコルの場合、 セッションが登録されていない状態で SYNパケ ットを受信すると、 このバケツトのセッションを登録すると共にセッション状 態は' S YN— RE C Vとし、 続いて、 セッション状態は, E S TAB ' (Established)に遷移し、 この状態でパケット送受信が行われていく。 そして 、 F I Nパケットを受信すると (ステップ S 1 5、 YES)、 セッションテープ ノレ 30から当該セッションのエントリを削除してから (ステップ S 16)、 当該 パケットをセッション振り分け部 2 4に送る。 セッション状態が遷移していな い場合は (ステップ S 1 3、 N O)、 当該パケットは、 そのまま、 セッション振 り分け部 2 4に送る。
セッション振り分け部 2 4は、 送られてきたパケットが、 セッション管理部 2 3が上記ステップ S 1 7の処理を行ってから送ってきたバケツトである場合 、 つまりそのセッションがセッションテーブル 3 0に新規登録されたバケツト である場合には、 セッション振り分け先を決定する (ステップ S 2 2 )。 つまり 、 このセッションのパケットの処理を、 どのパケット中継処理部 2 1に行わせ るかを決定する。 そして、 決定した内容をセッションテーブル 3 0のセッショ ン振り分け先 3 7に登録する (ステップ S 2 3 )。
一方、 セッション管理部 2 3から上記ステップ S 1 3〜S 1 6の処理を経て 送られてきたバケツトは、 既にセッションテーブル 3 0にセッション振り分け 先 3 7が登録されているので、 これを参照することで、 当該パケットをどのパ ケット中継処理部 2 1に送るべきかを判別することができる (ステップ S 2 1 )。
そして、 セッション振り分け部 2 4は、 上述したステップ S 2 1の処理によ り判別したバケツト中継処理部 2 1、 又はステップ S 2 2の処理により決定し たバケツト中継処理部 2 1に、 当該バケツトを転送する。
バケツト中継処理部 2 1では、 バケツトのフィルタリング、 N A T (Network Address Translation) , プロトコル変換などのバケツト中継処理が行われる。 また、 ルーティング処理 (どのネットワーク (ネットワーク接続部 2 2 ) に送 るかを決定する処理) も行われる。
上記バケツト中継処理部 2 1により中継 '出力されるパケットは、 図 5のフ ローに示す処理によって、 ルーティング先となるネットワーク接続部 2 2に送 られる。 まず、 上記パケットは、 パケット中継処理部 21からセッション管理部 23 に渡される。
セッション管理部 23は、 このパケットを受け取ると、 上記図 4に示す処理 と同様に、 まずセッションテーブル 30を検索し (ステップ S 31)、 セッショ ン登録済みである場合 (ステップ S 32、 YES), 更に、 セッション状態遷移 がある場合には (ステップ S 33, YES) セッション状態 36の書き換え処 理を実行し (ステップ S 34)、 セッションクローズである場合には (ステップ S 35, YES) セッション削除処理を実行する '(ステップ S 36)。 そして、 当該バケツトを上記ルーテイング先となるネッ 1、ワーク接続部 22に渡す。 一方、 セッション未登録である場合には (ステップ S 32、 NO)、 セッショ ン新規登録処理を実行する (ステップ S 37)。 そして、 セッション振り分け先 37をセッションテーブル 30に登録する (ステップ S 38)。 つまり、 この場 合、 既にどのバケツト中継処理部 21から送られてきているかは決定している ので、 セッション振り分け部 24で振り分け先を決定する必要はない。
セッション管理部 23で処理されたパケットは、 上記ルーティング先となる ネットワーク接続部 22に送られる。
尚、 図 2において、 パケット中継装置 20により中継されるパケットは、 パ ケット中継装置 20に入力する方向と、 パケット中継装置 20により中継 ·出 力される方向とでは、 異なるセッションとして管理される。 例えば、 図 2に示 す例では、 パケット中継処理部 21 aが振り分け先となつた任意のパケットは 、 ネットワーク接続部 22 aを介して入力される方向ではセッション 1 (I D = 1) として管理され、 ネットワーク接続部 22 bを介して出力される方向で はセッション 2 ( I D=2) として管理される。 同様に、 例えばパケット中継 処理部 21 bが振り分け先となつた任意のパケットは、 ネットワーク接続部 2 2 aを介して入力される方向ではセッション 3 ( I D= 3) として管理され、 ネットワーク接続部 2 2 bを介して出力される方向ではセッション 4 ( I D = 4 ) として管理される。
よって、 あるパケットを中継するとき、 上記図 4の処理と図 5の処理とでは 、 異なるセッションとして処理することになる。
セッション振り分け部 2 4によるセッション振り分け方法は、 C P U数に応 じた性能を出せるようにできるものであれば何でもよいが、 ここでは 3つの手 法を提案する。 すなわち、 ラウンドロビン方式、 ハッシュ方式、 動的負荷分散 方式について、 以下、 説明する。 - まず、 ラウンドロビン方式について説明する。
図 6は、 上記図 4のステップ S 1 7、 S 2 2、 S 2 3の処理において、 ステ ップ S 2 2のセッション振り分け先決定処理を、 ラウンド口ビン方式により行 うことを示す図である。 すなわち、 セッション管理部 2 3においてステップ S 1 7のセッション新規登録処理が行われた場合、 セッション振り分け部 2 4は 、 ラウンドロビン方式によって振り分け先を決定し (ステップ S 4 1 )、 決定し たセッション振り分け先をセッションテーブル 2 5に登録する (ステップ S 2 3 )。
上記ラウンド口ビン方式によるセッション振り分け処理では、 セッション新 規登録毎に、 振り分けるバケツト中継処理部 2 1を順番に替えていく。
例えば、 最初にセッシヨン 1が新規登録された場合、 パケット中継処理部 2 1 aをセッション振り分け先とし、 次にセッション 2が新規登録された場合、 パケット中継処理部 2 1 bをセッション振り分け先とする、 という様にセッシ ョンが新規登録される毎に、 振り分け先のパケット中継処理部 2 1を順次変え ていき、 最後のパケット中継処理部 2 1 nまで振り分けたら、 次のセッション の振り分け先はバケツト中継処理部 2 1 aに戻る。
このようにして、 各パケット中継処理部 2 1に平均してセッションが割り当 てられるようにすることで、 複数の C P Uを効率的に使用でき、 C P U数に応 じた処理性能を出すことが可能になる。
次に、 以下、 ハッシュ方式について説明する。
図 7は、 上記図 4のステップ S 1 7、 S 2 2、 S 2 3の処理において、 ステ ップ S 2 2のセッション振り分け先決定処理を、 ハッシュ方式により行うこと を示す図である。 すなわち、 セッション管理部 2 3においてステップ S 1 7の セッション新規登録処理が行われた場合、 セッション振り分け部 2 4は、 ハッ シュ方式によって振り分け先を決定し (ステップ S 4 2 )、 決定したセッション 振り分け先をセッションテーブル 2 5に登録する (ステップ S 2 3 )。
上記ハッシュ方式による振り分け先決定処理では、 受信したパケットに含ま れる特定の情報に、 ハッシュ関数を適用して得たハッシュ値に基づいて、 振り 分け先を決定する。 例えば、 振り分け先がバケツト中継処理部 2 1 aとバケツ ト中継処理部 2. 1 bの 2つであるとした場合、 例えばハッシュ値が" 0000"〜 7FFF"の範囲であった場合にはパケット中継処理部 2 1 aに振り分け、 ハツシ ュ値が" 800(T〜"FFFF〃の範囲であった場合にはパケット中継処理部 2 1 bに振 り分ける、 などというように、 生成されたハッシュ値を、 予め設定されている 所定の範囲 (又は閾値等) と比較することにより、 振り分け先を決定する。 ハッシュ関数に入力する情報としては、 例えば送信元 I Pァドレスなどを用 いる。 送信元 IPアドレスを用いた場合、 その I Pアドレスの情報処理端末から 送られてくるパケットは、 必ず同じパケット中継処理部 2 1に送られるように なる。 このように、 何らかの理由で特定のバケツト中継処理部 2 1で処理を行 いたい場合、 このハッシュ方式が有効である。
図 8 ( a )、 ( b ) は、 動的負荷分散方式を説明する図である。
本方式では、 図 8 ( a ) に示すように、 各パケット中継処理部 2 1に負荷情 報取得部 4 0を設けて、 セッション振り分け部 2 4が、 各パケット中継処理部 2 1の負荷情報を参照できるようにする。 負荷情報としては、 例えば C PUの 使用率ゃセッションの処理数などを用いることができる。
図 8 (b) は、 上記図 4のステップ S 1 7、 S 2 2、 S 23の処理において 、 ステップ S 2 2のセッション振り分け先決定処理を、 動的負荷分散方式によ り行うことを示す図である。 すなわち、 セッション管理部 23においてステツ プ S 1 7のセッション新規登録処理が行われた場合、 セッション振り分け部 2 4は、 動的負荷分散方式によって振り分け先を決定し (ステップ S 4 3)、 決定 したセッション振り分け先をセッションテーブル 2 5に登録する (ステップ S 23)。
動的負荷分散方式によるセッション振り分け決定処理では、 上記負荷情報取 得部 40から負荷情報を参照し、 例えば CPUの使用率が比較的低いバケツト 中継処理部 2 1、 または現在のセッション処理数が比較的少ないパケット中継 処理部 2 1を、 振り分け先として決定する。 あるいは、 CPUの使用率とセッ ション処理数の両方を考慮して、 振り分け先を決定してもよい。
このようにして、 各パケッ ト中継処理部 2 1の処理負荷が略平均化するよう にセッションを割り当てられることで、 複数の CPUを効率的に使用でき、 C PU数に応じた処理性能を出すことが可能になる。
上記第 1の実施例によるパケット中継装置 20では、 図 2に示す各機能部 ( パケット中継処理部 2 1〜セッション振り分け部 24) を、 各々、 どの様なハ 一ドウエアに実装するかは自由であり、 特に限定するものではなかった。
これに対して、 以下、 第 2の実施例、 第 3の実施例について説明する。
図 9は、 第 2の実施例を説明するための図である。
図 9に示す第 2の実施例の構成では、 サーバ 5 0は複数のパケット中継処理 部 5 1 a〜5 1 nを備え、 ネットワークインタフェースカード (N I C) 6 0 、 複数のネッ トワーク接続部 6 1 a〜 6 1 m、 セッション管理部 6 2、 セッ ションテーブル 63、 セッション振り分け部 64を有する。 N I C 60は、 サ ーノ 50の/ ス 52 ( x.¾P C I (Peripheral Components Interconnect) バス) のスロットに装着する。 N I C 60は、 1枚でもいいが、 複数枚をサー パ 50に装着することにより、 性能を上げることができる。 また、 N.I C 60 は、 ネットワーク接続デバイスの一例を示しているのであり、 これに限るわけ ではない。
上述したように、 従来より、 サーバに複数の CPU (複数のパケット中継処 理部) を設けることが行われており、 第 2の実施例ではこの様な既存のサーバ の構成を変更する必要なく、 上記 N I C 60を装着することで、 複数の CPU を効率的に扱うことができるようになり、 CPUの数に応じた処理性能が得ら れるようになる。
尚、 上記バケツト中継処理部 5 l a〜51 n、 ネットワーク接続部 6 1 a〜 6 1 m、 セッション管理部 62、 セッションテーブル 63、 セッション振り分 け部 64による処理の流れ自体は、 第 1の実施例とほぼ同様であるので、 その 説明は省略する。 第 1の実施例と異なる点は、 セッション振り分け部 64とパ ケット中継処理部 51との間のパケットの送受信が、 サーバ 50のバス 52を 介して行われる点等であり、 処理の流れ自体には特に影響しないので、 上記の 通り、 説明は省略するものとする。 .
図 10は、 第 3の実施例を説明する為の図である。
図 10に示す通り、 第 3の実施例では、 ネットワークインタフェースカード (N I C) 70力 複数のパケット中継処理部 71 a〜 71 n、 複数のネット ワーク接続部 72 a〜 72 m、 セッション管理部 73、 セッションテーブル 7 4、 セッション振り分け部 75を有する。 この第 3実施例も、 処理の流れ自体 は、 第 1の実施例と同様であるので、 その説明は省略する。
上記第 2の実施例は、 複数のパケット中継処理部を有するサーバ 50に、 N I C 60を装着することで、 本例によるバケツト中継装置を実現できるもので あつたが、 第 3の実施例では、 パケット中 ¾機能を有しないサーバ 80であつ ても、 N I C70を装着することで、 本例によるパケット中継装置を実現でき るものである。
第 3の実施例では、 サーバ 80の CPUは、 パケット処理には使われないで 、 他の何らかの処理に使用されることになる。
尚、 第 3の実施例においても、 上記他の実施例と同様、 複数の CPUを効率 的に扱うことができるようになり、 CPUの数に応じた処理性能が得られるよ うになる。
図 1 1は、 本例によるバケツト中継装置の具体的な使用例を説明する為の図 である。
上述してあるように、 本例によるパケット中継装置は、 複数のネットワーク 間でパケットを中継する装置である。 よって、 当然、 この複数のネットワーク 各々のプロトコルが異なる場合がある。 ここでは、 一方のネットワークのプロ トコルが TCP/I Pv6で、 他方が TCP/I P V 4である場合を例にして、 こ れに対応して、 パケット中継処理部においてプロトコル変換する構成を示す。 図 1 1に示す構成では、 各パケット中継処理部 90において、 T C P/ I Pv 6 (Internet Protocol Version 6) のプロトコノレスタック 92と、 TCP/I Pv4 (Internet Protocol Version 4) のプロトコ/レスタック 93を用意し、 パケットを終端する。 一旦終端することにより、 2つのコネクション各々を別 々に制御できる。 また、 ー且終端することにより、 パケット内のデータをキヤ ッシュすることができるようになる。
そして、 プロトコル変換部 91においてプロトコルの変換を行う。 例えば、 セッション 1を IPv6ネットワークで終端し、 セッション 2を IPv4ネットワーク で終端することにより、 ΙΡν4/νδのプロトコル変換を行う。 勿論、 プロトコル変換は、 IPv4/v6のプロトコル変換に限るものではない。 図 12は、 上記サーバ (コンピュータ) のハードゥヱァ構成の一例を示す図 である。
同図に示すコンピュータ 1 10は、 CPU1 1 1、 メモリ 1 12、 入力装置 1 1 3、 出力装置 1 14、 外部記憶装置 1 15、 媒体駆動装置 1 1 6、 ネット ワーク接続装置 1 1 7等を有し、 これらがバス 1 18に接続された構成となつ ている。 同図に示す構成は一例であり、 これに限るものではない。
CPU1 1 1は、 当該コンピュータ 1 10全体を制御する中央処理装置であ る。
メモリ 1 12は、 プログラム実行、 データ更新等の際に、 外部記憶装置 1 1 5 (あるいは可搬記録媒体 1 19) に記憶されているプログラムあるいはデー タを一時的に格納する RAM等のメモリである。 CPU1 1 1は、 メモリ 1 1 2に読み出したプログラム Zデータを用いて、 上述してある各種処理を実行す る。
入力装置 1 13は、 例えばキーボード、 マウス、 タツチパネル等である。 出力装置 1 14は、 例えばディスプレイ、 プリンタ等である。
尚、 入力装置 1 13、 出力装置 1 14は、 無くてもよレヽ。
外部記憶装置 1 1 5は、 例えばハードディスク装置等であり、 上記各種機能 を実現させる為のプログラム Zデータ等が格納されている。
媒体駆動装置 1 16は、 可搬型記録媒体 1 19に記録されているプログラム/ データ等を読み出す (又は書き込む)。 可搬型記録媒体は、 例えば FD (フレキ シブルディスク)、 CD-ROM, DVD, 光磁気ディスク等、 持ち運び可能で あって、 ある程度以上の記憶容量を有する記録媒体であれば、 何でも良い。 · ネットワーク接続装置 1 1 7は、 ネットワーク (インターネット等) に接続 して、 外部の情報処理装置とプログラム/データ等の送受信を可能にする構成 である。
図 1 3は、 上記プログラムを記録した記録媒体又はプログラムのダウンロー ドの一例を示す図である。
図示のように、 上記本発明の機能を実現するプログラム Zデータが記憶され ている可搬型記録媒体 1 1 9をコンピュータ 1 1 0の本体に揷入する等して、 当該プログラム/データを読み出してメモリ 1 1 2に格納し実行するものであ つてもよいし、 また、 上記プログラム/データは、 ネットワーク接続装置 1 1 7により接続しているネットワーク 1 3 0 (インターネット等) を介して、 外 部のプログラム Zデータ提供者側のサーバ 1 2 0に記憶されているプログラム (データ) 1 2 1をダウンロードするものであってもよい。
また、 本発明は、 装置/方法に限らず、 上記プログラム Zデータを格納した 記録媒体 (可搬型記録媒体 1 1 9等) 自体として構成することもできるし、 こ れらプログラム自体として構成することもできるし、 これらプログラムが有線/ 無線を介して伝送される伝送信号として構成することもできる。
図 1 4は、 ネットワークインタフェースカード (N I C ) のハードウェア構 成の一例を示す図である。
図示の例のネットワークインタフェースカード (N I C ) 1 4 0は、 ネット ワークプロセッサ 1 4 1、 メモリ 1 4 2、 ギガビット ·イーサネットコント口 ーラ 1 4 3、 1 4 4を有する。
ネットワークプロセッサ 1 4 1は、 一般的な構成でよく、 特に説明しないが 、 メモリ 1 4 2に格納されているプログラム/データを読み出して、 処理を実行 する。 メモリ 1 4 2に格納されているプログラム/データは、 上述した各種処理 (図 4〜図 8に示す処理) を実現させるプログラムや、 図 3に示すテーブル等 である。
ネットワークプロセッサ 1 4 1は、 サーバ 5 0 ( 8 0 ) の内部パス (P C I 1 5 0 ) に接続している。 各ギガビット ·イーサネットコントローラ 1 4 3、 1 4 4は、 各々、 上記ネットワーク 1 , 2の一例である光テーブル 1 6 0、 1 7 0に接続している。 勿論、 これは一例であり、 ネットワークは光ケーブルに 限るものではなく、 またイーサネットコントローラも、 ギガビットタイプに限 るものではない。 産業上の利用の可能性
以上、 詳細に説明したように、 本発明のパケット中継装置、 ネットワーク接 続デバイス、 パケット中継方法、 記録媒体、 プログラムによれば、 セッション 管理部とセッション捩り分け部とによって、 複数のパケット中継処理部に対し てセッション毎に適切にパケットを振り分けることにより、 複数の C P Uを効 率的に扱うことができるようになり、 C P U数に応じたパケット中継処理性能 が得られるようになる。

Claims

請 求 の 範 囲
1 . 各々が独立してパケット中継処理を行う複数のパケット中継処理手段と セッション管理を行うセッション管理手段と、
該セッション管理手段によるセッション管理に基づいて、 新規セッション登 録毎に該セッションを前記複数のバケツト中継処理部の何れかに振り分けるセ ッション振り分け手段と、
を有することを特徴とするパケット中継装置。
2 . 前記複数のパケット中継処理手段をサーバに備え、
前記セッション管理手段、 及びセッション振り分け手段を、 前記サーバに接 続するネットワーク接続デバィスに備えることを特徴とする請求項 1記載のパ ケット中継装置。
3 . 前記複数のパケット中継処理手段、 セッション管理手段、 及びセッショ ン振り分け手段を、 サーバに接続するネットワーク接続デバイスに備えること を特徴とする請求項 1記載のバケツト中継装置。
4 . 前記パケット中継処理手段は、 パケットを終端することにより、 プロト コルの変換を行うことを特徴とする請求項 1記載のパケット中継装置。
5 . 前記セッション振り分け手段は、 セッションを振り分けるパケット中継 処理手段を、 新規セッション登録毎に順番に変えて行くことを特徴とする請求 項 1記載のパケット中継装置。
6 . 前記セッション振り分け手段は、 セッションを振り分けるパケット中継 処理手段を、 バケツト内の情報に対してハッシュ関数を適用することで得られ るハッシュ値に基づいて決定することを特徴とする請求項 1記載のバケツト中 継装置。
7 . 前記パケット中継処理手段は、 更に負荷情報取得手段を有し、 前記セッション振り分け手段は、 該負荷情報取得手段より取得した負荷情報 に基づいて、 セッションを振り分けることを特徴とする請求項 1記載のパケッ ト中継装置。
8 . 複数のパケット中継処理手段を有するサーバに接続する 1または複数の ネットワーク接続デバィスであって、
セッション管理を行ぅセッション管理手段と、
該セッション管理手段によるセッション管理に基づいて、 新規セッション登 録毎に該セッションを前記複数のパケット中継処理部の何れかに振り分けるセ ッシヨン振り分け手段と、
を有することを特徴とするネットワーク接続デバイス。
9 . 新規セッション登録毎に該セッションを複数のパケット中継処理部の何 れかに振り分け、 該セッションのパケットは該振り分けたパケット中継処理部 に渡してバケツト中継処理を行わせることを特徴とするバケツト中継装置。
1 0 . コンピュータに、
各々が独立してパケット中継処理を行う複数のパケット中継処理手段と、 セッション管理を行ぅセッション管理手段と、
該セッション管理手段によるセッション管理に基づいて、 新規セッション登 録毎に該セッションを前記複数のパケット中継処理部の何れかに振り分けるセ ッシヨン振り分け手段と、
を実現させるプログラムを記録した前記コンピュータ読取り可能な記録媒体
1 1 . コンピュータに、
各々が独立してパケット中継処理を行う複数のパケット中継処理手段と、 セッション管理を行うセッション管理手段と、 該セッション管理手段によるセッション管理に基づいて、 新規セッション登 録毎に該セッションを前記複数のパケット中継処理部の何れかに振り分けるセ ッシヨン振り分け手段と、
を実現させる為のプログラム。
PCT/JP2002/005374 2002-05-31 2002-05-31 パケット中継装置、ネットワーク接続デバイス、パケット中継方法、記録媒体、プログラム Ceased WO2003103233A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2004510189A JPWO2003103233A1 (ja) 2002-05-31 2002-05-31 パケット中継装置、ネットワーク接続デバイス、パケット中継方法、記録媒体、プログラム
EP02730845A EP1511229A4 (en) 2002-05-31 2002-05-31 PACKET REPEATING INSTALLATION, NETWORK CONNECTION DEVICE, PACKET REPEATING PROCEDURE, RECORDING MEDIUM, PROGRAM
PCT/JP2002/005374 WO2003103233A1 (ja) 2002-05-31 2002-05-31 パケット中継装置、ネットワーク接続デバイス、パケット中継方法、記録媒体、プログラム
US10/998,553 US20050074000A1 (en) 2002-05-31 2004-11-30 Packet relay device/method, network connection device, storage medium and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2002/005374 WO2003103233A1 (ja) 2002-05-31 2002-05-31 パケット中継装置、ネットワーク接続デバイス、パケット中継方法、記録媒体、プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US10/998,553 Continuation US20050074000A1 (en) 2002-05-31 2004-11-30 Packet relay device/method, network connection device, storage medium and program

Publications (1)

Publication Number Publication Date
WO2003103233A1 true WO2003103233A1 (ja) 2003-12-11

Family

ID=29606646

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2002/005374 Ceased WO2003103233A1 (ja) 2002-05-31 2002-05-31 パケット中継装置、ネットワーク接続デバイス、パケット中継方法、記録媒体、プログラム

Country Status (4)

Country Link
US (1) US20050074000A1 (ja)
EP (1) EP1511229A4 (ja)
JP (1) JPWO2003103233A1 (ja)
WO (1) WO2003103233A1 (ja)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006186877A (ja) * 2004-12-28 2006-07-13 Fujitsu Ltd パケットフィルタ同期方法及びパケット中継システム
JP2006245841A (ja) * 2005-03-02 2006-09-14 Hitachi Communication Technologies Ltd パケット転送装置
JP2007180963A (ja) * 2005-12-28 2007-07-12 Fujitsu Ltd クラスタノード制御プログラム、クラスタノード、クラスタシステム制御方法
WO2008152992A1 (ja) * 2007-06-11 2008-12-18 Nec Corporation パケット転送方法及びパケット交換機
JP2009265843A (ja) * 2008-04-23 2009-11-12 Toyota Motor Corp マルチコアシステム、車両用ゲートウェイ装置
JP2012054909A (ja) * 2011-07-14 2012-03-15 Springsoft Inc 静的nat形成装置、リバースプロキシサーバ及び仮想接続制御装置
JP2013070423A (ja) * 2007-11-29 2013-04-18 A10 Networks Inc 分散多重処理セキュリティゲートウエイのためのシステム及び方法
JP2013179429A (ja) * 2012-02-28 2013-09-09 Nippon Telegr & Teleph Corp <Ntt> 振分先を切り替える並列パケット処理方法および装置
JP2014093642A (ja) * 2012-11-02 2014-05-19 Nippon Telegr & Teleph Corp <Ntt> セッションボーダーコントローラに対する高速振り分け方法及び接続システム
US9032502B1 (en) 2006-08-08 2015-05-12 A10 Networks, Inc. System and method for distributed multi-processing security gateway
US9118618B2 (en) 2012-03-29 2015-08-25 A10 Networks, Inc. Hardware-based packet editor
WO2015141337A1 (ja) * 2014-03-19 2015-09-24 日本電気株式会社 受信パケット分散方法、キュー選択器、パケット処理装置、および記録媒体
US9596286B2 (en) 2012-05-25 2017-03-14 A10 Networks, Inc. Method to process HTTP header with hardware assistance
US9806943B2 (en) 2014-04-24 2017-10-31 A10 Networks, Inc. Enabling planned upgrade/downgrade of network devices without impacting network sessions
JP2018509809A (ja) * 2015-01-31 2018-04-05 華為技術有限公司Huawei Technologies Co.,Ltd. サービスフローパケットのための処理方法および装置
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US10020979B1 (en) 2014-03-25 2018-07-10 A10 Networks, Inc. Allocating resources in multi-core computing environments
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
US10491523B2 (en) 2012-09-25 2019-11-26 A10 Networks, Inc. Load distribution in data networks

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7400624B2 (en) * 2003-05-27 2008-07-15 Sun Microsystems, Inc. Hashing based messaging approach to a cluster
WO2004107683A1 (ja) * 2003-05-29 2004-12-09 Nec Corporation パケット中継装置及びパケット中継方法並びにプログラム
FI119311B (fi) * 2006-07-04 2008-09-30 Tellabs Oy Menetelmä ja järjestely valvonta- ja hallintaviestien käsittelemiseksi
CN1946062A (zh) * 2006-10-10 2007-04-11 华为数字技术有限公司 保活nat设备中会话表项的方法和系统
ES2429396B1 (es) * 2012-03-20 2014-11-18 Telefónica, S.A. Método y sistema para monitorización de tráfico de red
US9781075B1 (en) * 2013-07-23 2017-10-03 Avi Networks Increased port address space

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10198642A (ja) * 1997-01-09 1998-07-31 Fujitsu Ltd サーバ装置
JPH1188373A (ja) * 1997-09-12 1999-03-30 Nec Corp コネクション振り分けによる負荷分散方式
JP2000244573A (ja) * 1999-02-24 2000-09-08 Hitachi Ltd ネットワーク中継装置及びネットワーク中継方法
US20020027917A1 (en) * 2000-01-26 2002-03-07 Kazuo Sugai Network routing apparatus

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2561022B2 (ja) * 1994-05-25 1996-12-04 日本電気株式会社 宛先アドレスによる送信チャネル選択システム
US6711162B1 (en) * 1995-09-08 2004-03-23 3Com Corporation Method and apparatus for providing proxy service, route selection, and protocol conversion for service endpoints within data networks
US6178505B1 (en) * 1997-03-10 2001-01-23 Internet Dynamics, Inc. Secure delivery of information in a network
US6131163A (en) * 1998-02-17 2000-10-10 Cisco Technology, Inc. Network gateway mechanism having a protocol stack proxy
US6272522B1 (en) * 1998-11-17 2001-08-07 Sun Microsystems, Incorporated Computer data packet switching and load balancing system using a general-purpose multiprocessor architecture
US6078957A (en) * 1998-11-20 2000-06-20 Network Alchemy, Inc. Method and apparatus for a TCP/IP load balancing and failover process in an internet protocol (IP) network clustering system
US6006259A (en) * 1998-11-20 1999-12-21 Network Alchemy, Inc. Method and apparatus for an internet protocol (IP) network clustering system
US7600131B1 (en) * 1999-07-08 2009-10-06 Broadcom Corporation Distributed processing in a cryptography acceleration chip
US6801948B2 (en) * 2000-12-15 2004-10-05 Hewlett-Packard Development Company, L.P. System and method for a streams based network access control for a computer
US7280540B2 (en) * 2001-01-09 2007-10-09 Stonesoft Oy Processing of data packets within a network element cluster
KR20050027162A (ko) * 2002-08-06 2005-03-17 마쯔시다덴기산교 가부시키가이샤 패킷 라우팅 장치 및 패킷 라우팅 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10198642A (ja) * 1997-01-09 1998-07-31 Fujitsu Ltd サーバ装置
JPH1188373A (ja) * 1997-09-12 1999-03-30 Nec Corp コネクション振り分けによる負荷分散方式
JP2000244573A (ja) * 1999-02-24 2000-09-08 Hitachi Ltd ネットワーク中継装置及びネットワーク中継方法
US20020027917A1 (en) * 2000-01-26 2002-03-07 Kazuo Sugai Network routing apparatus

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
See also references of EP1511229A4 *
TAKAHIRO KIKUCHI: "Daitosuru 'Layer 4 Switch", NIKKEI COMMUNICATIONS (NIKKEI BUSINESS PUBLICATIONS, INC.), no. 266, 16 March 1998 (1998-03-16), pages 126 - 129, XP002953867 *

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006186877A (ja) * 2004-12-28 2006-07-13 Fujitsu Ltd パケットフィルタ同期方法及びパケット中継システム
US7643421B2 (en) 2005-03-02 2010-01-05 Hitachi Communication Technologies, Ltd. Packet forwarding apparatus
JP2006245841A (ja) * 2005-03-02 2006-09-14 Hitachi Communication Technologies Ltd パケット転送装置
JP2007180963A (ja) * 2005-12-28 2007-07-12 Fujitsu Ltd クラスタノード制御プログラム、クラスタノード、クラスタシステム制御方法
US9032502B1 (en) 2006-08-08 2015-05-12 A10 Networks, Inc. System and method for distributed multi-processing security gateway
US9258332B2 (en) 2006-08-08 2016-02-09 A10 Networks, Inc. Distributed multi-processing security gateway
US8918857B1 (en) 2006-08-08 2014-12-23 A10 Networks, Inc. Distributed multi-processing security gateway
US8943577B1 (en) 2006-08-08 2015-01-27 A10 Networks, Inc. Distributed multi-processing security gateway
US9124550B1 (en) 2006-08-08 2015-09-01 A10 Networks, Inc. Distributed multi-processing security gateway
US9344456B2 (en) 2006-08-08 2016-05-17 A10 Networks, Inc. Distributed multi-processing security gateway
US8904512B1 (en) 2006-08-08 2014-12-02 A10 Networks, Inc. Distributed multi-processing security gateway
US8914871B1 (en) 2006-08-08 2014-12-16 A10 Networks, Inc. Distributed multi-processing security gateway
WO2008152992A1 (ja) * 2007-06-11 2008-12-18 Nec Corporation パケット転送方法及びパケット交換機
JP2013078134A (ja) * 2007-11-29 2013-04-25 A10 Networks Inc 分散多重処理セキュリティゲートウエイのためのシステム及び方法
JP2013070423A (ja) * 2007-11-29 2013-04-18 A10 Networks Inc 分散多重処理セキュリティゲートウエイのためのシステム及び方法
JP2009265843A (ja) * 2008-04-23 2009-11-12 Toyota Motor Corp マルチコアシステム、車両用ゲートウェイ装置
JP2012054909A (ja) * 2011-07-14 2012-03-15 Springsoft Inc 静的nat形成装置、リバースプロキシサーバ及び仮想接続制御装置
JP2013179429A (ja) * 2012-02-28 2013-09-09 Nippon Telegr & Teleph Corp <Ntt> 振分先を切り替える並列パケット処理方法および装置
US9118618B2 (en) 2012-03-29 2015-08-25 A10 Networks, Inc. Hardware-based packet editor
US9118620B1 (en) 2012-03-29 2015-08-25 A10 Networks, Inc. Hardware-based packet editor
US9742879B2 (en) 2012-03-29 2017-08-22 A10 Networks, Inc. Hardware-based packet editor
US10069946B2 (en) 2012-03-29 2018-09-04 A10 Networks, Inc. Hardware-based packet editor
US9596286B2 (en) 2012-05-25 2017-03-14 A10 Networks, Inc. Method to process HTTP header with hardware assistance
US9843521B2 (en) 2012-05-25 2017-12-12 A10 Networks, Inc. Processing packet header with hardware assistance
US10348631B2 (en) 2012-05-25 2019-07-09 A10 Networks, Inc. Processing packet header with hardware assistance
US10862955B2 (en) 2012-09-25 2020-12-08 A10 Networks, Inc. Distributing service sessions
US10491523B2 (en) 2012-09-25 2019-11-26 A10 Networks, Inc. Load distribution in data networks
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
JP2014093642A (ja) * 2012-11-02 2014-05-19 Nippon Telegr & Teleph Corp <Ntt> セッションボーダーコントローラに対する高速振り分け方法及び接続システム
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
JPWO2015141337A1 (ja) * 2014-03-19 2017-04-06 日本電気株式会社 受信パケット分散方法、キュー選択器、パケット処理装置、プログラム、およびネットワークインタフェースカード
RU2643626C1 (ru) * 2014-03-19 2018-02-02 Нек Корпорейшн Способ распределения принимаемых пакетов, селектор очереди, устройство обработки пакетов и носитель информации
WO2015141337A1 (ja) * 2014-03-19 2015-09-24 日本電気株式会社 受信パケット分散方法、キュー選択器、パケット処理装置、および記録媒体
US10020979B1 (en) 2014-03-25 2018-07-10 A10 Networks, Inc. Allocating resources in multi-core computing environments
US10411956B2 (en) 2014-04-24 2019-09-10 A10 Networks, Inc. Enabling planned upgrade/downgrade of network devices without impacting network sessions
US9806943B2 (en) 2014-04-24 2017-10-31 A10 Networks, Inc. Enabling planned upgrade/downgrade of network devices without impacting network sessions
JP2018509809A (ja) * 2015-01-31 2018-04-05 華為技術有限公司Huawei Technologies Co.,Ltd. サービスフローパケットのための処理方法および装置
US10700981B2 (en) 2015-01-31 2020-06-30 Huawei Technologies Co., Ltd. Processing method for service flow packet, and device

Also Published As

Publication number Publication date
JPWO2003103233A1 (ja) 2005-10-06
EP1511229A1 (en) 2005-03-02
US20050074000A1 (en) 2005-04-07
EP1511229A4 (en) 2007-03-21

Similar Documents

Publication Publication Date Title
WO2003103233A1 (ja) パケット中継装置、ネットワーク接続デバイス、パケット中継方法、記録媒体、プログラム
US7433958B2 (en) Packet relay processing apparatus
CN107465590B (zh) 网络基础设施系统、路由网络业务的方法及计算机可读介质
US20130346585A1 (en) Network system, and policy route setting method
CN201518488U (zh) 服务器负载均衡器及其系统
US9455873B2 (en) End-to-end analysis of transactions in networks with traffic-altering devices
JP5601601B2 (ja) 通信制御システム、スイッチノード、及び通信制御方法
US9584398B2 (en) Methods and apparatus to utilize route parameter sets for exchanging routes in a communication network
US20120314605A1 (en) Communication system, path control apparatus, packet forwarding apparatus, and path control method
US20050111455A1 (en) VLAN server
US20030198189A1 (en) Network system having an instructional sequence for performing packet processing and optimizing the packet processing
US7464121B2 (en) Apparatus for sending a sequence of asynchronous messages to the same member of a clustered consumer
CN107005584A (zh) 内联服务交换机
WO2011087085A1 (ja) 計算機、ネットワーク接続切替え方法およびプログラム
WO2015114473A1 (en) Method and apparatus for locality sensitive hash-based load balancing
JP5861772B2 (ja) ネットワークアプライアンス冗長化システム、制御装置、ネットワークアプライアンス冗長化方法及びプログラム
US20120082089A1 (en) Method and apparatus for processing gtp triggered messages
JP5900352B2 (ja) パケット処理装置、パケット処理方法およびプログラム
Nadeem et al. An ns-3 mptcp implementation
JP5534033B2 (ja) 通信システム、ノード、パケット転送方法およびプログラム
CN114979062B (zh) 使用预测的动态网络地址转换
US8509235B2 (en) Layer-2 packet return in proxy-router communication protocol environments
JP6096464B2 (ja) プロキシ装置及び中継装置
KR101530013B1 (ko) 효율적인 네트워크 주소 변환 및 애플리케이션 레벨 게이트웨이 프로세싱을 위한 장치 및 방법들
JP5229109B2 (ja) パケット中継処理装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): DE FR GB

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2004510189

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2002730845

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 10998553

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2002730845

Country of ref document: EP