WO2009141992A1 - 通信処理装置、通信処理方法、通信処理装置の制御方法および通信機器 - Google Patents
通信処理装置、通信処理方法、通信処理装置の制御方法および通信機器 Download PDFInfo
- Publication number
- WO2009141992A1 WO2009141992A1 PCT/JP2009/002178 JP2009002178W WO2009141992A1 WO 2009141992 A1 WO2009141992 A1 WO 2009141992A1 JP 2009002178 W JP2009002178 W JP 2009002178W WO 2009141992 A1 WO2009141992 A1 WO 2009141992A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- interrupt
- packet
- management table
- data
- control method
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 296
- 230000006854 communication Effects 0.000 title claims abstract description 231
- 238000004891 communication Methods 0.000 title claims abstract description 230
- 238000003672 processing method Methods 0.000 title claims description 22
- 230000004044 response Effects 0.000 claims abstract description 7
- 238000012545 processing Methods 0.000 claims description 228
- 238000007726 management method Methods 0.000 claims description 134
- 238000012546 transfer Methods 0.000 claims description 82
- 230000003111 delayed effect Effects 0.000 claims description 54
- 230000008569 process Effects 0.000 claims description 51
- 238000009826 distribution Methods 0.000 claims description 50
- 238000003860 storage Methods 0.000 claims description 13
- 230000005540 biological transmission Effects 0.000 description 52
- 230000006870 function Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 21
- 238000005516 engineering process Methods 0.000 description 4
- 230000010354 integration Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 101001094649 Homo sapiens Popeye domain-containing protein 3 Proteins 0.000 description 1
- 101000608234 Homo sapiens Pyrin domain-containing protein 5 Proteins 0.000 description 1
- 101000578693 Homo sapiens Target of rapamycin complex subunit LST8 Proteins 0.000 description 1
- 102100027802 Target of rapamycin complex subunit LST8 Human genes 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012508 change request Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
Definitions
- the present invention relates to a communication processing apparatus that receives and processes data such as a packet and a communication processing method thereof, and more particularly, to a communication processing apparatus that performs packet interrupt control in IP (Internet Protocol) communication and the communication processing method thereof. .
- IP Internet Protocol
- FIG. 17 is a block diagram showing a configuration of a general communication device that performs interrupt control.
- the communication device 2000 includes various components such as a communication processing device 2201, a main memory 2102, and a CPU (Control Processing Unit) 2103 as shown in FIG. These components are connected via a system bus 2202, and operations of these components are controlled by software operating on the CPU 2103.
- a communication processing device 2201 a main memory 2102
- a CPU (Control Processing Unit) 2103 as shown in FIG.
- These components are connected via a system bus 2202, and operations of these components are controlled by software operating on the CPU 2103.
- the communication processing device 2201 provided in such a communication device 2000 has an interrupt function.
- the interrupt function is realized by transmitting a signal (interrupt signal) from the communication processing device 2201 to the CPU 2103.
- This interrupt function immediately notifies the CPU 2103 of the occurrence of various events in the communication processing device 2201 and enables the corresponding processing by software to be performed quickly.
- the events include, for example, reception of communication data (packets), completion of packet transmission, occurrence of an abnormal state, and the like.
- the first method is to send an interrupt signal every time a packet is received.
- an interrupt signal is processed until a packet that is not managed by the communication processing device 2201 by being processed by software does not exist inside the communication processing device 2201.
- an interrupt is generated for the software (the software temporarily stops the interrupt and continues the processing). .
- a method of delaying a predetermined time from receiving a packet in the communication processing device 2201 delaying an interrupt signal (Interrupt). Delayed interrupts are useful as a method for reducing the amount of software processing associated with interrupt processing when an event that frequently receives short-length packets occurs.
- the state of the communication processing device 2201 is periodically monitored and controlled using a timer function of an OS (Operating System) that is basic software. Therefore, it has also been proposed not to use the interrupt function for reception.
- OS Operating System
- the timer function by this software has poor accuracy (on the order of several tens of msec), and the timer function itself increases the amount of software processing, so it is not always preferable for a CPU for home appliances with low CPU processing capability. Absent. Since the reception of the packet is an event that occurs from the outside, in order to confirm the reception of the packet in the communication processing device 2201 by the timer function, it is necessary to always enable the timer function, and an unnecessary software processing load Increase.
- a plurality of packets received by the communication processing device 2201 include packets belonging to various application programs (hereinafter simply referred to as applications).
- applications packets belonging to various application programs
- packets belonging to applications using different session protocols such as HTTP, FTP, or SMTP / POP3 (mail function) may be mixed.
- HTTP TransmissionTransControl Protocol
- SMTP Simple Streaming Protocol
- POP3 mail function
- HTTP HyperText Transfer Protocol
- HTTP TransmissionTransControl Protocol
- the throughput as the transfer performance is affected by the processing delay between the transfer terminals, so that the ACK reception as the reception response is processed early. Is preferred.
- the received packet is classified and managed in the communication processing device 2201 to facilitate processing in software.
- Communication devices have been proposed (see, for example, Patent Document 1).
- an individual packet classification Ring is used for a transfer management identifier (Descriptor) used for managing and controlling a received packet by a transfer control unit (details of the transfer control unit will be described later). Is used.
- the communication device disclosed in Patent Document 1 does not perform general-purpose hierarchical processing such as a TCP / IP stack on the received packet transferred to the main memory, and assumes that each application directly handles the Ring. The purpose is to reduce the number of times the packet is copied on the main memory.
- FIG. 18 is a block diagram describing the communication device 2000 of Patent Document 1 for comparison with the present invention.
- the communication processing device 2201 of the communication device 2000 of Patent Literature 1 includes a transfer control unit 2304, a transmission data holding unit 2105, a MAC unit 2106, a sorting unit 2107, a sorting table 2108, a received data holding unit 2109, a setting unit 2310, and an interrupt.
- a control unit 2311 is provided.
- the transfer control unit 2304 manages and controls the transfer of packet data to and from the main memory 2102, and transfers the data of the transmission packet to the transmission data holding unit 2105. Further, the transfer control unit 2304 transfers the received packet data from the received data holding unit 2109 to the main memory 2102 as the reception process.
- the transmission data holding unit 2105 transfers the data of the transmission packet transferred from the transfer control unit 2304 to the MAC unit 2106.
- the MAC unit 2106 performs transmission processing according to a predetermined MAC (Media Access Control) standard on the transmission packet data transferred from the transmission data holding unit 2105 and performs reception processing according to a predetermined MAC standard.
- the received packet data is transferred to the distribution unit 2107.
- the external block connected from the MAC unit 2106 is an I / F (interface) connected to the network of the communication device 2000 depending on the physical layer.
- the sorting unit 2107 classifies the received packet data transferred from the MAC unit 2106 with reference to the sorting table 2108 and transfers the data to the received data holding unit 2109 together with the classification information.
- the reception data holding unit 2109 holds the received packet data transferred from the distribution unit 2107 in association with the classification information.
- the transfer control unit 2304 transfers the received packet data held in the received data holding unit 2109 to the main memory 2102 based on the associated classification information.
- the transfer control unit 2304 notifies the interrupt control unit 2311 that the data of the received packet has been transferred to the main memory 2102, and the interrupt control unit 2311 notifies the CPU 2103 of an interrupt signal by the notification from the transfer control unit 2304.
- the setting unit 2310 receives a setting change request for the distribution table 2108 from the CPU 2103 and changes the distribution table 2108.
- Patent Document 2 a communication device that performs interrupt control on a received packet by a method according to the type of the received packet has been proposed (see, for example, Patent Document 2).
- the communication device of Patent Document 2 analyzes the type of the received packet, determines whether the received packet is a real-time packet, and transfers it to the buffer. When the communication device determines that the packet is a real-time packet, it immediately sends an interrupt signal to the CPU. When it determines that the packet is not a real-time packet, the communication device waits for a certain time after receiving the received packet, or stores it in the buffer. After a certain amount of data is accumulated, an interrupt signal is sent to the CPU. That is, the communication device disclosed in Patent Document 2 switches the interrupt control method for the received packet according to the type of the received packet.
- the conventional communication equipment has the following five situations.
- A The communication device of Patent Document 1 cannot perform interrupt control that satisfies different requirements for each classification of received packets.
- B Depending on the software processing method, there is a risk that delayed interrupt does not lead to a reduction in the amount of interrupt processing.
- C When the reception process is managed only by the timer function possessed by the OS, it is necessary to operate the timer function even when no packet is received, so that the amount of unnecessary software processing is increased.
- D When the timer function of the OS is used, its accuracy is rough (on the order of several tens of msec), and the timer function itself increases the amount of software processing.
- the timer accuracy is required to be several hundred ⁇ sec or less in Ethernet (registered trademark) communication having a capacity of 100 Mbps, for example. Also, the reception control by the timer function delays the processing even for the communication having immediacy.
- the interrupt control method is predetermined according to the type of the received packet.
- the present invention has been made in view of such a problem, and includes a communication processing device capable of appropriately performing an interrupt according to application processing while suppressing a software reception processing load, and the communication processing device.
- An object is to provide communication equipment.
- a communication processing apparatus of the present invention is a communication processing apparatus that receives a packet, transfers data of the packet to a memory, and outputs an interrupt signal to a processing unit that processes the data.
- a receiving unit that receives a packet, a sorting unit that classifies the packet into one of a plurality of classification types according to the type of packet received by the receiving unit, and the receiving unit A transfer control unit that transfers data of packets received and classified by the distribution unit to the memory, an interrupt management table indicating the classification type and an interrupt control method related to the timing of outputting an interrupt signal are stored. And a packet classified by the distribution unit by referring to the interrupt management table.
- the interrupt control method associated with the type or classification type of the received packet is applied to the packet, and the interrupt signal is output to the processing unit (for example, CPU) by the interrupt control method. Is done. Therefore, if an interrupt control method appropriate for receiving and processing a packet of that classification type is registered in the interrupt management table for the classification type of the packet, it is immediately necessary for the reception processing of that packet. Thus, it is possible to prevent an interrupt signal from being output at an unnecessarily high transmission frequency for the packet while satisfying the requirements such as the characteristics. That is, it is possible to appropriately reduce the reception processing burden of software that attempts to process the packet data transferred to the memory in the processing unit.
- the immediate interrupt method may be used as an interrupt control method for packets with high immediacy, or reception processing may be performed to some extent with low immediacy.
- reception processing may be performed to some extent with low immediacy.
- the application program is used for communication that the application program intends to execute.
- a packet classification type and an interrupt control method that satisfies requirements for processing using the packet can be registered in the interrupt management table. That is, the interrupt management table is rewritable and is changed at the time of initialization or operation of the communication processing apparatus, so that flexible operation can be performed for changing the application program to be started.
- the interrupt control method defined in the interrupt management table can be dynamically changed, it can be easily applied to communication devices in which a plurality of application programs operate or stop. As a result, it is possible to appropriately perform an interrupt according to the processing of the application program while suppressing the software reception processing load, and to appropriately perform the reception processing.
- the setting unit responds to an instruction from the application program according to the classification type and the packet.
- the interrupt management table may be updated by associating it with an interrupt control method and adding it to the interrupt management table.
- the setting unit acquires communication path information for specifying a communication path established by the application program as an instruction from the application program, and sets a classification type and an interrupt control method according to the communication path information. It may be registered in the interrupt management table.
- the setting unit registers the first classification type and the first interrupt control method in association with the interrupt management table, and registers the second classification type and the second interrupt control method in association with each other,
- the interrupt control unit uses the first interrupt control method associated with the first classification type in the interrupt management table.
- the interrupt management table associates the classification signal with the second classification type. An interrupt signal may be output to the processing unit by the second interrupt control method.
- an interrupt signal can be output with an appropriate interrupt control method for each. Therefore, it is possible to appropriately suppress the transmission frequency of the interrupt signal as compared with a case where an interrupt control method that immediately outputs an interrupt signal for any type of packet is used.
- the immediate interrupt method is used as an interrupt control method for packets with high immediacy, or reception processing is performed to some extent with low immediacy.
- the classification identifier (Ring identifier) used when classifying the packet in the sorting unit is used as the classification type, and the descriptor used by the transfer control unit for transferring the packet data to and from the memory is classified for each classification identifier. Since the interrupt control can be performed in the same classification as that used in the transfer control, the software for controlling the communication processing device easily associates the interrupt control with the packet classification. And an increase in processing load such as determining classification again by software can be suppressed.
- the setting unit registers only one or a plurality of combinations of a classification type and an interrupt control method associated with the classification type in the interrupt management table, and the interrupt control unit stores the combination in the interrupt management table.
- an interrupt control method associated with a classification type of a packet classified by the distribution unit in the interrupt management table may be output by another different interrupt control method that is determined in advance.
- the interrupt control unit has one delay control method that outputs an interrupt signal when a predetermined time elapses after packet data is transferred to the memory in the interrupt management table. If only the packet data is registered, an interrupt signal is output by an immediate interrupt method in which an interrupt signal is output immediately after the packet data is transferred to the memory.
- an interrupt control method in which a timer interrupt method and a delayed interrupt method for outputting an interrupt signal every predetermined period are registered as an interrupt control method
- a packet of a classification type corresponding to the delayed interrupt method It is possible to cause the software to execute the processing for the packet of the classification type corresponding to the timer interruption method in preference to the processing for the packet, and as a result, it is possible to cause the software to appropriately process the data of each packet.
- the setting unit outputs an interrupt signal immediately after packet data is transferred to the memory, and an interrupt signal when a predetermined time elapses after the packet data is transferred to the memory.
- Delay interrupt method for outputting the interrupt signal when a predetermined time elapses after the packet data is transferred to the memory and when the predetermined time elapses after the immediately preceding interrupt signal is output
- One or a plurality of methods may be registered in the interrupt management table as the interrupt control method from among the delayed interrupt method with interval limitation to be performed and the timer interrupt method for outputting an interrupt signal at predetermined intervals. Good.
- timer interrupt method has a higher timer time accuracy than the timer function controlled by the OS (several hundreds of microseconds or less), it is possible to receive HD (High Definition) image data that is transmitted in large quantities. It can be performed appropriately on a regular basis, and it is possible to improve the accuracy of measures against DoS (Denial of Service) attacks.
- the interrupt control unit outputs an interrupt signal, it is not necessary for the OS to perform control as a timer function, so that a timer function with a small amount of software processing can be provided.
- the interrupt frequency can be limited to a predetermined interval, and it becomes further easy to suppress the processing load by software.
- reception amount limitation pps limitation, bps limitation
- an interrupt signal can be output by an appropriate interrupt control method.
- the transfer control unit further notifies the interrupt control unit of packet related information regarding the packet classified by the distribution unit, and the interrupt control unit receives the notification of the packet related information from the transfer control unit.
- the interrupt management table an interrupt control method associated with the packet classification type and another interrupt control method according to the packet related information are specified, and the interrupt signal is transmitted by the other interrupt control method. It may be output.
- the received data length and specific information of a specific protocol are notified to the interrupt control unit as packet related information.
- the interrupt control method is specified according to such packet-related information, for example, it can be changed to an interrupt control method that counters a DoS attack or the like. That is, the DoS attack countermeasure can be facilitated.
- the original application program processing without reducing the amount of software processing by switching the interrupt control method. It becomes possible.
- the communication processing apparatus control method of the present invention is a communication method for receiving a packet, transferring data of the packet to a memory, and outputting an interrupt signal to a processing unit for processing the data.
- a method for controlling a processing device wherein the communication processing device holds an interrupt management table, receives a packet, transfers data of the packet to a memory, and sets the type of packet received in the interrupt management table.
- communication for establishing a communication path via the communication processing device and specifying the communication path By transmitting the route information to the communication processing device, the packet corresponding to the communication route information is sent to the communication processing device. Bets type and interrupt control method by registered in the interrupt management table, and updates the interrupt management table.
- the packet type corresponding to the communication path established by the application program and the interrupt control method are registered in the interrupt management table, so that an interrupt signal corresponding to the processing of the application program is output to the communication control device. Can be appropriately executed.
- the interrupt signal may be output as a reception interrupt factor due to packet data being transferred to the memory, or a timer interrupt factor due to the elapse of a predetermined period.
- the interrupt signal is further acquired, it is determined whether the acquired interrupt signal is output by the reception interrupt factor or the timer interrupt factor, and the reception interrupt is determined.
- the data transferred to the memory is processed by the first reception processing method.
- the second reception processing method is different from the first reception processing method.
- Data transferred to the memory may be processed by a reception processing method.
- the reception processing method for the data transferred to the memory is changed to the first reception processing method and the second reception method depending on whether the cause of the output of the interrupt signal is a reception interrupt factor or a timer interrupt factor. Since switching is performed depending on the processing method, appropriate reception processing can be performed for each of these factors.
- a timer interrupt method for outputting an interrupt signal every predetermined period is registered as the interrupt control method, and the data transferred to the memory by the second reception processing method is registered.
- a packet for which an interrupt signal is output due to a timer interrupt factor such as a packet for a stream, such as a packet for which a wide bandwidth should be guaranteed at the time of reception, and a packet for downloading a large amount of data.
- packets that need to be received and processed in large quantities There are packets that need to be received and processed in large quantities.
- all the packet data transferred to the memory should be processed with a single interrupt for the stream packets, and for the mass data download packets, The amount of data that can be processed with a single interrupt should be limited so that the current packet is properly processed. Therefore, in the present invention, it is determined whether or not the processing is to be restricted.
- the interrupt management table includes an immediate interrupt method for outputting an interrupt signal immediately after packet data is transferred to the memory, and a predetermined time after the packet data is transferred to the memory. And a delay interrupt method for outputting an interrupt signal to the memory, respectively, and when the data transferred to the memory by the first reception processing method is processed, the processing unit Based on the type of the group of packets, it is determined whether a group of packet data transferred to the group is subject to an immediate interrupt method or a delayed interrupt method. If it is determined that the data of all the packets in the group is processed, the delay interrupt method is processed. And when the determination is that, among the data of all packets in the group, may be processed by the data number following packets predetermined.
- a packet to be processed immediately such as a packet for ACK (ACKnowledgement) processing of TCP
- a packet at the time of reception such as a packet for web browsing
- Some packets do not require width guarantees.
- the packet data transferred to the memory should be all processed with one interrupt, and for the web browsing packet, the ACK processing
- the amount of data processed with a single interrupt should be limited so that packets of processing are processed properly. Therefore, in the present invention, it is determined whether a group of packet data transferred to the memory is subject to the immediate interrupt method or the delayed interrupt method, and is determined to be subject to the immediate interrupt method.
- a delay interrupt method for outputting an interrupt signal when a predetermined time elapses after packet data is transferred to the memory is registered as the interrupt control method.
- the delay transferred to the memory Out of all packet data subject to the interrupt method it is determined in advance. It may process data only up to the number of packets.
- a delayed interrupt method and another interrupt control method for example, a timer interrupt method
- all packets targeted for the delayed interrupt method transferred to the memory are stored.
- the packet data of a predetermined number or less is processed, so the packet data subject to the delayed interrupt method is not disturbed so as not to interfere with the processing of the packet data subject to the timer interrupt method. Can be processed.
- the data of all packets transferred to the memory are processed. Can be improved.
- the present invention can be realized not only as such a communication processing device and a control method for the communication processing device, but also as a communication device including the communication processing device and controlling the communication processing device by the control method, It can also be realized as a method of communication processing by the communication processing device and a program for controlling the communication processing device, and can also be realized as a storage medium for storing the program or an integrated circuit.
- An object of the present invention is to provide a communication processing device capable of appropriately performing an interrupt according to application processing while suppressing a software reception processing load, and a communication device including the communication processing device.
- FIG. 1 is a block diagram showing a configuration of a communication device and a communication processing apparatus according to an embodiment of the present invention.
- FIG. 2 is a diagram illustrating a format example of a received packet handled by the distribution unit according to the embodiment of the present invention.
- FIG. 3 is a diagram showing an example of a sorting table according to the embodiment of the present invention.
- FIG. 4 is a diagram showing an example of the interrupt management table according to the embodiment of the present invention.
- FIG. 5 is a diagram showing another example of the interrupt management table according to the embodiment of the present invention.
- FIG. 6A is a diagram showing an immediate interrupt timing according to the embodiment of the present invention.
- FIG. 6B is a diagram showing the timing of the delayed interrupt according to the embodiment of the present invention.
- FIG. 6C is a diagram showing the timing of the delay interrupt with interval restriction according to the embodiment of the present invention.
- FIG. 7 is a flowchart showing an example of table update processing by the application and setting unit according to the embodiment of the present invention.
- FIG. 8 is a flowchart showing interrupt control processing which is the overall operation of the interrupt control unit according to the embodiment of the present invention.
- FIG. 9 is a flowchart showing details of the interrupt control setting performed in the interrupt control process in the interrupt control unit according to the embodiment of the present invention.
- FIG. 10 is a flowchart showing details of the interrupt transmission control performed in the interrupt control process in the interrupt control unit according to the embodiment of the present invention.
- FIG. 11 is a flowchart showing details of timer interrupt control performed by interrupt transmission control in the interrupt control unit according to the embodiment of the present invention.
- FIG. 12 is a flowchart showing details of the delayed interrupt control performed in the interrupt transmission control in the interrupt control unit according to the embodiment of the present invention.
- FIG. 13 is a flowchart showing details of the delay interrupt control with interval restriction performed in the interrupt transmission control in the interrupt control unit according to the embodiment of the present invention.
- FIG. 14 is a flowchart showing an interrupt handler reception process in software for controlling the communication processing apparatus according to the embodiment of the present invention.
- FIG. 15 is a flowchart showing timer interrupt processing that is performed in the reception processing of the interrupt handler in the software that controls the communication processing device according to the embodiment of the present invention.
- FIG. 16 is a flowchart showing a reception interrupt process performed in the reception process of the interrupt handler in the software that controls the communication processing apparatus according to the embodiment of the present invention.
- FIG. 17 is a block diagram illustrating an example of a configuration of a communication device including a communication processing device.
- FIG. 18 is a block diagram illustrating a configuration example of a conventional communication processing apparatus.
- FIG. 1 is a block diagram showing a configuration of a communication device and a communication processing apparatus according to an embodiment of the present invention.
- the communication device 100 in the present embodiment includes a communication processing device 101, a main memory 102, and a CPU 103.
- the system bus connected to each of the above components of the communication device 100 is omitted for convenience of explanation, but is not related to the essence of the present invention.
- only one main memory 102 and one CPU 103 are shown, but there may be a plurality of physical or logical numbers, and the number thereof is irrelevant to the essence of the present invention.
- the communication processing apparatus 101 includes a transfer control unit 104, a transmission data holding unit 105, a MAC unit 106, a distribution unit 107, a second storage unit 108m, a reception data holding unit 109, a setting unit 110, an interrupt control unit 111, and a first storage. Part 112m.
- the transfer control unit 104 manages and controls the transfer of packet data to and from the main memory 102 and transfers the data of the transmission packet to the transmission data holding unit 105. Furthermore, the transfer control unit 104 transfers the received packet data from the received data holding unit 109 to the main memory 102 as the reception process.
- the transmission data holding unit 105 transfers the data of the transmission packet transferred from the transfer control unit 104 to the MAC unit 106.
- the MAC unit 106 transmits the transmission packet data transferred from the transmission data holding unit 105 by a transmission process according to a predetermined MAC standard, and receives the packet by a reception process according to a predetermined MAC standard, and distributes the packet 107 The data of the received packet is transferred to.
- the external block connected from the MAC unit 106 is an I / F (interface) connected to the network of the communication device 100 depending on the physical layer.
- the distribution unit 107 classifies the received packet data transferred from the MAC unit 106 with reference to the distribution table 108 stored in the second storage unit 108m, and transfers it to the received data holding unit 109 together with the classification identifier.
- the reception data holding unit 109 holds the received packet data transferred from the distribution unit 107 in association with the classification identifier.
- the classification identifier indicates a classification result by the sorting unit 107 and is a classification type assigned to the data according to the content of the data of the received packet.
- the details of the distribution unit 107 and the distribution table 108 are not related to the essence of the present invention, but are useful for understanding the classification identifiers in the interrupt management table 112, so the details will be described below.
- FIG. 2 is a diagram illustrating a format example of a received packet handled by the distribution unit 107.
- FIG. 2 shows a format example when Ethernet (registered trademark) is used as the MAC, IP is used as the network layer, and TCP is used as the transport layer.
- Ethernet registered trademark
- IP IP
- TCP transport layer
- the MAC, network layer, transport layer, and the like are used as the format of the received packet handled by the distribution unit 107, but a format different from these may be used.
- the data of the received packet includes a MAC header 401, an IP header 402, a TCP header 403, and payload data 404.
- information used for classifying the received packet for example, the destination MAC address 401a or the transmission source MAC address 401b included in the MAC header 401, the IP version (Ver) 402a included in the IP header, or the transport protocol is used.
- a number 402 (protocol) or a source port number 403a or a destination port number 403b included in the TCP header 403 may be used. Some of these may be used and others may be arbitrary, or all may be used.
- other information included in the data of the received packet may be used for classification.
- Protocol 402b indicates TCP (0x06) and the source port number 403a is 80
- the received packet is a received packet from the HTTP server.
- the application that handles the received packet can be specified by the destination port number 403b, and it can be uniquely specified in the communication device 100 that receives whether or not the received packet is used for video communication.
- FIG. 3 is a diagram illustrating an example of the sorting table 108.
- the distribution table 108 indicates classification parameters that are information used for classification of received packets and classification identifiers associated with the classification parameters.
- the classification parameter includes a transport protocol (Protocol), a destination IP address, a source port number, and a destination port number.
- the transport protocol may be the transport protocol number described above.
- the distribution table 108 is associated with the classification parameter “Protocol: TCP, destination IP address: 192.168.3.4, transmission source port number: 80, destination port number: 10001”, and the classification identifier “1”. And a classification identifier “2” in association with the classification parameter “Protocol: TCP, destination IP address: 192.168.1.8, transmission source port number: 10001 and destination port number: 10002”.
- the distribution table 108 indicates a classification identifier “Default” for classification parameters other than those specifically listed.
- the distribution unit 107 searches the distribution table 108 for the classification parameter indicated in the data of the received packet, and if the classification parameter exists in the distribution table 108, the classification identifier associated with the classification parameter is set to the received packet.
- the received data is output to the received data holding unit 109. Further, if the classification parameter is not in the distribution table 108 as a result of the search, the distribution unit 107 outputs the classification identifier “Default” together with the data of the received packet to the reception data holding unit 109.
- a definition (classification parameter) for classifying the received packet is registered in association with the classification identifier.
- classification identifiers may be virtually associated with each other in order to distinguish each entry of the definition.
- the transfer control unit 104 transfers the received packet data held in the received data holding unit 109 to the main memory 102 based on the classification identifier associated with the data. At this time, the transfer control unit 104 notifies the interrupt control unit 111 that the data of the received packet has been transferred to the main memory 102 together with the classification identifier.
- the interrupt control unit 111 searches the interrupt management table 112 stored in the first storage unit 112m for the classification identifier notified from the transfer control unit 104, and is defined in the traffic type associated with the classification identifier. An interrupt control method is specified, and interrupt control is performed by that method. As a result, the interrupt control unit 111 transmits an interrupt signal to the CPU 103 at a necessary timing.
- FIG. 4 is a diagram illustrating an example of the interrupt management table 112.
- the interrupt management table 112 indicates a classification identifier and a traffic type associated with the classification identifier.
- the interrupt management table 112 is registered in association with the classification identifier and the traffic type.
- the classification identifier in the interrupt management table 112 is common to the classification identifier in the distribution table 108.
- the interrupt management table 112 indicates the traffic type “stream” in association with the classification identifier “1”, and indicates the traffic type “immediate” in association with the classification identifier “2”.
- the traffic type is a reception form of the received packet, and is, for example, “non-priority”, “immediate”, “stream”, or “download”.
- the traffic type “non-priority” is a normal reception form that does not require bandwidth guarantee, and the traffic type “immediate” requires immediate processing such as TCP-ACK processing useful for improving TCP throughput.
- the traffic type “stream” is a reception form of video data that requires a guarantee of bandwidth
- the traffic type “download” is a range that does not hinder communication by the traffic type “immediate” and “stream”. This is a reception mode that requires the maximum reception performance.
- the interrupt control unit 111 searches the interrupt management table 112 for the classification identifier (for example, classification identifier “1”) notified from the transfer control unit 104, and the traffic type (for example, “ Stream "). Furthermore, the interrupt control unit 111 specifies an interrupt control method defined for the traffic type.
- classification identifier for example, classification identifier “1”
- traffic type for example, “ Stream "
- the interrupt control method “delayed interrupt” or “delayed interrupt with interval restriction” is defined, and for the traffic type “immediate”, the interrupt control method “immediate interrupt” is defined.
- the type “stream” defines an interrupt control method “timer interrupt”
- the traffic type “download” defines an interrupt control method “timer interrupt with processing amount (bandwidth) limitation”.
- the traffic type “non-priority” is subdivided, the interrupt control method “delayed interrupt” is defined for the traffic type “non-priority A”, and the interrupt control method “interval-limited delay interrupt” is defined for the traffic type “non-priority B”. May be defined.
- “Immediate interrupt” is an interrupt control method in which an interrupt signal is output immediately after packet data is transferred to the main memory 102.
- the “delayed interrupt” is an interrupt control method that outputs an interrupt signal when a predetermined time has elapsed after the packet data is transferred to the main memory 102.
- “Delayed interrupt with limited interval” is an interrupt that occurs when a predetermined time elapses after the packet data is transferred to the main memory 102 and when the predetermined time elapses after the immediately preceding interrupt signal is output. This is an interrupt control method for outputting a signal.
- “Timer interrupt” is an interrupt control method that outputs an interrupt signal every predetermined period.
- “Timer interrupt with limited processing amount (bandwidth)” is the same timing as “Timer interrupt”. In this interrupt control method, an interrupt signal is output, but the amount of data processed in accordance with the interrupt signal is limited.
- a traffic type is registered in the interrupt management table 112 in association with the classification identifier, and one traffic type is defined as one interrupt control method. Therefore, the interrupt management table 112 according to the present embodiment indirectly indicates the interrupt control method associated with the classification identifier via the traffic type. Therefore, an interrupt control method may be registered in the interrupt management table 112 in association with the classification identifier instead of the traffic type.
- the communication processing apparatus 101 holds the interrupt management table 112 and the distribution table 108 independently. However, instead of these two tables, the communication processing apparatus 101 includes information included in these tables. One table may be held.
- FIG. 5 is a diagram showing another example of the interrupt management table 112.
- the interrupt management table 112 indicates a classification identifier, a classification parameter corresponding to the classification identifier, and a traffic type associated with the classification identifier and the classification parameter.
- the communication processing apparatus 101 When the communication processing apparatus 101 holds the interrupt management table 112 shown in FIG. 5, the communication processing apparatus 101 does not include the second storage unit 108 m but includes the first storage unit 112 m that stores the interrupt management table 112. Furthermore, in this case, the distribution unit 107 classifies the received packet data by referring to the interrupt management table 112 instead of referring to the distribution table 108.
- the communication management apparatus 101 may hold the interrupt management table 112 shown in FIG.
- the classification identifier may be omitted from the interrupt management table 112 shown in FIG. That is, the interrupt management table 112 shows the classification parameter and the traffic type associated with the classification parameter.
- the distribution unit 107 transfers the received packet data together with its classification parameter to the received data holding unit 109, and the transfer control unit 104
- the interrupt control unit 111 is notified of the completion of the transfer of the received packet data to the main memory 102 together with the classification parameter. Then, the interrupt control unit 111 searches the interrupt management table 112 for the traffic type associated with the classification parameter, and specifies the interrupt control method defined for the traffic type.
- the interrupt control method used includes at least one of the following. (1) Immediate interrupt (2) Delayed interrupt (no interval limit) (3) Delayed interrupt with interval limitation (4) Timer interrupt (with or without processing amount limitation)
- the timer interrupt does not necessarily have to be specified in the interrupt management table 112, but may be simply specified as a definition of “no interrupt is generated in response to reception”.
- Timer interrupt is a function implemented by the interrupt control unit 111 in the communication processing apparatus 101, and is an interrupt control method for transmitting an interrupt signal to the CPU 103 at a predetermined period (timer time). That is, when the interrupt control unit 111 has a timer function and applies “timer interrupt” as an interrupt control method, the timer time set by the CPU 103 via the setting unit 110 or a predetermined predetermined timer time is used. Based on the above, a periodic interrupt signal is transmitted.
- the interrupt control unit 111 can accept ON / OFF of the timer interrupt via the setting unit 110 according to the designation from the CPU 103, and can activate or stop the transmission of the periodic interrupt signal.
- This timer interrupt can be transmitted with a period of accuracy according to the operation clock of the interrupt control unit 111.
- the period of the operation clock does not necessarily have to be the minimum unit.
- an interrupt process implemented by a software driver for an interrupt is driven at a shift of about several tens of ⁇ sec at most.
- Multiple timer interrupts may be implemented, but only one timer interrupt is implemented, the time unit (timer time) is reduced, and the software is controlled to have multiple timers virtually by software. Is possible.
- FIG. 6A is a diagram showing the timing of the interrupt control method “immediate interrupt”.
- Immediate interrupt is an interrupt control method in which the interrupt control unit 111 immediately transmits an interrupt signal after transfer is completed (reception event occurs) in the transfer control unit 104 of the communication processing apparatus 101.
- “immediately” is described for convenience of explanation, and it is within a sufficiently permissible range that a deviation of several clocks in units of actual hardware operation clock is generated, and the deviation is limited. is not.
- FIG. 6B is a diagram showing the timing of the interrupt control method “delayed interrupt (no interval limitation)”.
- a delay interrupt is generated by the interrupt control unit 111 when a predetermined period (delay time t) elapses after the transfer is completed after the transfer is completed (reception event occurs) in the transfer control unit 104 of the communication processing apparatus 101.
- This is an interrupt control method for transmitting an interrupt signal.
- the delay time t described above may be registered in an entry defined by the corresponding classification identifier “Default” in the interrupt management table 112, or may be specified in advance by the setting unit 110 in the interrupt control unit 111. Alternatively, it may be held in advance by the interrupt control unit 111. If a new reception event occurs after the reception event occurs and before the interrupt signal corresponding to the reception event generation, the software determines that the new reception event has occurred. If it is not excluded from the control, an interrupt signal is transmitted with a delay of the delay time t from the occurrence of the new reception event.
- the accuracy of the delay time t of the interrupt does not limit the deviation of several hardware operation clocks as described in the case of the immediate interrupt. Also, individually registering the above-described delay time t in the entry of the interrupt management table 112 is not recommended because of complicated implementation.
- FIG. 6C is a diagram showing the timing of the interrupt control method “delayed interrupt with interval restriction”.
- the delay interrupt with a limited interval is interrupt controlled when a predetermined period (delay time t) has elapsed from the completion of the transfer after the transfer is completed (occurrence of a reception event) in the transfer control unit 104 of the communication processing apparatus 101.
- This is a control method in which the unit 111 transmits an interrupt signal.
- the difference from a delay interrupt without interval restriction is that it is guaranteed that the time interval between the interrupt signal and the next interrupt signal is equal to or greater than the delay time t. That is, after a reception event occurs, a new reception event occurs before the interrupt signal corresponding to the reception event is generated, and the software detects that the new reception event has occurred and is not managed by the transfer control unit 104 of the communication processing device 101.
- the interrupt control unit 111 transmits a new interrupt signal with a delay time t from the previous interrupt signal transmission. For example, as shown in FIG. 6C, when a new reception event b occurs after the occurrence of the reception event a and before the generation of the interrupt signal a corresponding to the occurrence of the reception event a, the interrupt control unit 111 sets the previous interrupt. A new interrupt signal b is transmitted with a delay time t from the transmission of the signal a.
- This interrupt control method requires software implementation to limit pps (Packet Per Sec: number of packets processed per unit time) and bps (Bit Per Sec: received data amount processed per unit time). It becomes easy and it is also possible to suppress the transmission of unnecessary interrupt signals.
- the setting unit 110 updates the interrupt management table 112 and the distribution table 108. That is, when the application is started by the CPU 103, the setting unit 110 updates the interrupt management table 112 and the distribution table 108 according to the communication path established by the application.
- FIG. 7 is a flowchart illustrating an example of table update processing by the application and setting unit 110.
- the application establishes a communication path (step S100). For example, the application opens a socket or performs a bind.
- the setting unit 110 acquires communication path information from the application that has established the communication path in this way (step S102).
- the communication path information is a classification parameter of the distribution table 108 shown in FIG. 3, and includes Protocol, destination IP address, source port number, destination port number, and the like.
- the setting unit 110 assigns a classification identifier to the acquired communication path information, and registers the communication path information as a classification parameter in the distribution table 108 together with the classification identifier. Further, the setting unit 110 identifies a traffic type suitable for the acquired communication path information, and registers the identified traffic type in the interrupt management table 112 in association with the classification identifier assigned to the communication path information (step S104). ).
- the application program establishes a communication path, if the classification identifier and interrupt control method corresponding to the communication path are not registered in the interrupt management table 112, the classification identifier and the communication path corresponding to the communication path are determined in step S104. An interrupt control method is added to the interrupt management table 112.
- the application program establishes a communication path via the communication processing apparatus 101 and transmits the communication path information to the communication processing apparatus 101, so that the communication path information is transmitted to the setting unit 110 of the communication processing apparatus 101.
- the classification identifier and the interrupt control method corresponding to are registered in the interrupt management table 112, and the interrupt management table 112 is updated.
- the setting unit 110 may receive a timer interrupt ON / OFF request from the interrupt control unit 111 from the CPU 103, and cause the interrupt control unit 111 to execute or stop the timer interrupt in response to the request.
- FIGS. An example of an algorithm for realizing the interrupt control method will be described with reference to FIGS.
- FIGS. In this description, there is a portion described as sequential execution from the viewpoint of ease of explanation even in a hardware implementation where parallel processing is possible, but the parallel processing is not limited. Further, in the following description, a form in which all the above-described interrupt control methods are implemented is described, but the explanation is omitted because it can be easily analogized even when some of them are not implemented.
- FIG. 8 is a flowchart showing an interrupt control process that is an overall operation of the interrupt control unit 111.
- the interrupt control unit 111 executes the interrupt transmission control (step S200) and the interrupt control setting (step S202) in parallel or one of the processes, and then performs the interrupt control process. It is determined whether or not to end (step S204). If the interrupt control unit 111 determines that it should not end (No in step S204), it repeatedly executes the processes in steps S200 and S202, and determines that it should end (Yes in step S204). Ends the interrupt control process.
- FIG. 9 is a flowchart showing details of the interrupt control setting described as step S202 in FIG.
- the interrupt control unit 111 When performing interrupt control setting, the interrupt control unit 111 first determines whether or not there is a reception completion notification from the transfer control unit 104 (step S210). If the interrupt control unit 111 determines that there is no notification (No in step S210), the interrupt control setting ends. On the other hand, when the interrupt control unit 111 determines that there is a notification (Yes in step S210), the interrupt control unit 111 searches the interrupt management table 112 for the traffic type associated with the classification identifier obtained from the transfer control unit 104. Then, the interrupt control unit 111 finds out the corresponding traffic type, and specifies the interrupt control method defined in the traffic type (step S212).
- the interrupt control unit 111 determines whether or not the interrupt control method specified in step S212 is an immediate interrupt (step S214). If the interrupt control unit 111 determines that the interrupt is an immediate interrupt (Yes in step S214), it sets a reception interrupt as an interrupt factor and transmits an interrupt signal (step S216), and ends the interrupt control setting. On the other hand, when the interrupt control unit 111 determines in step S214 that the interrupt control method is not an immediate interrupt (No in step S214), the interrupt control unit 111 further determines whether or not the interrupt control method is a delayed interrupt (no interval limitation). (Step S218).
- the interrupt control unit 111 determines that it is a delayed interrupt (Yes in step S218), it sets “delayed interrupt” for the occurrence of a reception event (step S220), and ends the interrupt control setting.
- the interrupt control unit 111 determines in step S218 that the interrupt control method is not a delay interrupt (No in step S218), the interrupt control unit 111 further determines whether or not the interrupt control method is a delay interrupt with a limited interval (step S218). S222).
- step S222 If the interrupt control unit 111 determines that the delay interrupt has a limited interval (Yes in step S222), the interrupt control unit 111 sets “delayed interrupt with a limited interval” for the occurrence of the received event (step S224), Finish the setting. On the other hand, if the interrupt control unit 111 determines in step S222 that the interrupt control method is not a delay interrupt with a limited interval (No in step S222), the interrupt control setting ends without performing the setting in step S224. As a result, reception completion data is treated as a timer interrupt target.
- FIG. 10 is a flowchart showing details of the interrupt transmission control described as step S200 in FIG.
- the interrupt control unit 111 When performing interrupt transmission control, the interrupt control unit 111 first determines whether interrupt control is valid (step S240). For example, the interrupt control unit 111 determines that the interrupt control is valid if the interrupt management table 112 is stored in the first storage unit 112m. Alternatively, the interrupt control unit 111 refers to the interrupt management table 112 and determines that the interrupt control is valid if the classification identifier and the traffic type of the classification identifier are registered in the interrupt management table 112.
- step S240 determines that the interrupt control is valid (Yes in step S240), the timer interrupt control (step S242), the delay interrupt control (step S244), and the delay interrupt control with interval restriction (step S240). One of S246) is executed, and the interrupt transmission control is terminated. If it is determined in step S240 that the interrupt control is not valid (No in step S240), the interrupt control unit 111 ends the interrupt transmission control without performing any of the processes in steps S242, S244, and S246.
- FIG. 11 is a flowchart showing the detailed processing of the timer interrupt control described as step S242 in FIG.
- the interrupt control unit 111 first determines whether or not the timer interrupt is ON when performing the timer interrupt control (step S260). For example, the interrupt control unit 111 refers to the interrupt management table 112 and determines whether or not the timer interrupt is ON by determining whether or not the traffic type “stream” or “download” is registered therein. To do. That is, the interrupt control unit 111 determines that the timer interrupt is ON if the traffic type “stream” or “download” is registered.
- the interrupt control unit 111 when determining that the timer interrupt is ON (Yes in step S260), the interrupt control unit 111 further determines whether or not the timer interrupt transmission condition has expired (step S262).
- the expiration of the timer interrupt transmission condition means that a predetermined timer time has elapsed since the previous timer interrupt transmission condition expired.
- the interrupt control unit 111 sets a timer interrupt as an interrupt factor and transmits an interrupt signal (step S264). At this time, the interrupt control unit 111 sets the elapsed time for determining whether or not the timer interrupt transmission condition has expired to 0, or sets the time until the next timer interrupt transmission condition to the initial value. Then, the interrupt control unit 111 updates the above-described elapsed time or the above-described time until the next expiration (step S266).
- step S260 when it is determined in step S260 that the timer interrupt is not ON (No in step S260), the interrupt control unit 111 ends the timer interrupt control. Further, when it is determined in step S262 that the timer interrupt transmission condition has not expired (No in step S262), the interrupt control unit 111 updates the above-described elapsed time and the like without transmitting an interrupt signal (step S266). ).
- FIG. 12 is a flowchart showing details of the delayed interrupt control described as step S244 in FIG.
- the interrupt control unit 111 first determines whether or not a delay interrupt is being performed when performing the delay interrupt control (step S280). That is, the interrupt control unit 111 determines whether or not “delayed interrupt” is set for the occurrence of the reception event by the processing of the interrupt control setting step S220 illustrated in FIG.
- the interrupt control unit 111 determines whether a delay interrupt is being performed (Yes in step S280)
- the interrupt control unit 111 further determines whether the delay interrupt transmission condition has expired (step S282).
- the expiration of the delayed interrupt transmission condition means that a predetermined delay time has elapsed since the occurrence of the reception event to be interrupted.
- the interrupt control unit 111 sets a reception interrupt as an interrupt factor and transmits an interrupt signal (step S284).
- the interrupt control unit 111 determines whether the delayed interrupt transmission condition has expired without transmitting an interrupt signal. The elapsed time for this or the time until the next delay interrupt transmission condition expires is updated (step S286). The elapsed time and the like are updated for the occurrence of a reception event that is the target of all delayed interrupts. If the interrupt control unit 111 determines in step S280 that the delay interrupt is not being performed (No in step S280), the interrupt control unit 111 ends the delay interrupt control.
- the interrupt control unit 111 transmits an interrupt signal in step S284.
- the interrupt control unit 111 applies the delay interrupt transmission condition that expires next to the next reception event occurrence.
- the interrupt control unit 111 determines in step S280 that the delay interrupt is not in progress.
- the interrupt control unit 111 does not need to generate a delay interrupt as a result of analysis of the descriptor managed by the transfer control unit 104. Is detected, and it is determined in step S280 that the delay interruption is not in progress.
- FIG. 13 is a flowchart showing details of the delay interrupt control with interval limitation described as step S246 in FIG.
- the interrupt control unit 111 first determines whether or not a delay interrupt with an interval limit is in progress when performing delay interrupt control with an interval limit (step S300). In other words, the interrupt control unit 111 determines whether “delayed interrupt with interval restriction” is set for the occurrence of the reception event by the processing of the interrupt control setting step S224 shown in FIG.
- the interrupt control unit 111 determines whether or not the interval restriction has expired (step S302).
- the expiration of the interval restriction means that if a predetermined delay time has elapsed since the occurrence of the reception event to be interrupted and an interrupt signal has been issued by the previous interval-limited delay interrupt, Means that the above delay time has elapsed. If the interrupt control unit 111 determines that the interval limit has expired (Yes in step S302), the interrupt control unit 111 sets a reception interrupt as an interrupt factor and transmits an interrupt signal (step S304).
- step S302 when the interrupt control unit 111 determines that the interval limit has not expired (No in step S302), the elapsed time for determining whether or not the interval limit has expired without transmitting an interrupt signal. Alternatively, the time until the next interval limit expires is updated (step S306). If the interrupt control unit 111 determines in step S300 that the delay interrupt with limited interval is not in progress (No in step S300), the interrupt control unit 111 ends the delay interrupt with limited interval.
- the interrupt control unit 111 sets the elapsed time to 0 or the time until the next interval limit expires to an initial value.
- the interrupt control unit 111 generates delay interrupts with interval restrictions as a result of analysis of the descriptor managed by the transfer control unit 104. It is detected that it is not necessary, and it is determined in step S300 that a delay interrupt with interval restriction is not in progress.
- FIG. 14 is a flowchart showing interrupt handler reception processing in software executed by the CPU 103.
- the software determines whether a timer interrupt is set as the interrupt factor of the interrupt signal (step S400). If the software determines that the timer interrupt is set (Yes in step S400), the software performs timer interrupt processing (step S402). Details of the timer interrupt processing will be described later with reference to FIG. On the other hand, when the software determines that the timer interrupt is not set (No in step S400) or when the timer interrupt process in step S402 is completed, whether or not a reception interrupt is set as an interrupt factor of the interrupt signal. Is determined (step S404).
- step S406 when the software determines that the reception interrupt is set (Yes in step S404), the software performs a reception interrupt process (step S406). Details of the reception interrupt process will be described later with reference to FIG. On the other hand, when the software determines that the reception interrupt is not set (step S406), or when the reception interrupt processing at step S406 is completed, the software performs processing for another interrupt factor (step S408), The reception process ends.
- FIG. 15 is a flowchart showing details of the timer interrupt process in step S402 in FIG.
- the software first initializes the classification identifier to be processed to the top (for example, 1) (step S420). Next, the software determines whether or not the data corresponding to the processing target classification identifier (initial value is classification identifier 1) (hereinafter referred to as classification target) is a timer interrupt target (step S422).
- classification target the data corresponding to the processing target classification identifier 1
- the classification target can be identified by the management number, so that the determination of step S422 by software can be easily realized.
- the software determines whether the classification target is a timer interrupt target (Yes in step S422), the software further determines whether the classification target is a bandwidth limit target (a timer interrupt target with a processing amount limit). (Step S424).
- the software determines that the classification target is a bandwidth restriction target (Yes in step S424), the software sets a maximum of N received packets corresponding to the above-described classification target transferred from the communication processing apparatus 101 to the main memory 102. Receives received packets.
- N is a predetermined value, and may be unique in the communication device 100 or the system including the communication device 100, or may be a value different for each classification identifier.
- the software determines that the classification target is not the bandwidth restriction target (No in step S424), the software receives and processes all received packets corresponding to the above-described classification target transferred from the communication processing apparatus 101 to the main memory 102. (Step S428).
- the software performs the above-described processing on all classification identifiers. It is determined whether or not (step S430). If the software determines that the process has been performed (Yes in step S430), the timer interrupt process is terminated. On the other hand, if the software determines that no processing is performed (No in step S430), the software increments the classification identifier (for example, advances 1) (step S432), and repeatedly executes the processing from step S422.
- FIG. 16 is a flowchart showing details of the reception interrupt process in step S406 in FIG.
- the software first determines whether or not the reception mode includes only non-priority packets (step S440).
- the reception mode of only non-priority packets is a mode in which any one of the following conditions is satisfied.
- the traffic type “stream” is registered in the interrupt management table 112. In other words, the classification identifier of the data processed by the timer interrupt is registered in the interrupt management table 112. During the period, the transfer control unit 104 did not receive the data.
- step S440 determines in step S440 that the reception mode is only for non-priority packets (Yes in step S440), the software processes all received packets transferred from the communication processing apparatus 101 to the main memory 102 (step S442). The reception interrupt process is terminated.
- the software determines in step S440 that it is not a reception mode for only non-priority packets (No in step S440)
- the software initializes the classification identifier to be processed to the top (for example, 1) (step S444).
- the software determines whether the classification target (data corresponding to the classification identifier 1 at the time of initialization) is an immediate interruption target (step S446).
- the classification identifier can be identified by the management number, so that the determination of step S446 by software can be easily realized.
- step S446 If the software determines that the classification target is an immediate interrupt target (Yes in step S446), the software corresponds to the above-described classification target transferred from the communication processing device 101 to the main memory 102, that is, corresponds to an immediate interrupt target. All received packets to be received are processed (step S448). On the other hand, when the software determines that the classification target is not an immediate interrupt target (No in step S446), the maximum M of all received packets processed by the delay interrupt or the delay interrupt with interval restriction, that is, the maximum M Received packets are received (step S450).
- M is a predetermined value, and may be unique in the communication device 100 or the system including the communication device 100, or may be a value different for each classification identifier. The value may be the same or different.
- step S452 the software determines whether or not the above-described process has been performed on all classification identifiers. If the software determines that the process has been performed (Yes in step S452), the reception interrupt process is terminated. On the other hand, if the software determines that the process is not being performed (No in step S452), the classification identifier is incremented (for example, advanced by 1) (step S454), and the process from step S446 is repeatedly executed.
- the communication processing apparatus 101 depending on the classification parameter of the received packet, (1) Immediate interrupt (2) Delayed interrupt (3) Delayed interrupt with limited interval (4) Realizing timer interrupt Furthermore, the communication processing device 101 classifies the received packet processed by the timer interrupt by classifying it into a bandwidth restriction target and other than that, (1) Immediate communication (2) Non-priority processed communication (3) Non-prioritized communication pps restriction (4) Bandwidth restriction target communication (5) Video reception In addition, since the reception rate is automatically controlled by the limitation of the reception rate in the decoder, the communication for processing the reception packet without limitation is realized.
- the transfer control unit 104 notifies the interrupt control unit 111 of the occurrence of the received event and the classification identifier corresponding to the occurrence of the received event. Information that is not defined may also be notified. This information is packet related information regarding the received packet classified by the distribution unit 107.
- the interrupt control unit 111 specifies another interrupt control method according to the interrupt control method associated with the classification identifier of the received packet in the interrupt management table 112 and the above-described packet related information, An interrupt signal can be transmitted by the interrupt control method. As a result, an interrupt signal can be transmitted by a more appropriate interrupt control method for the occurrence of a reception event.
- countermeasures against a DoS (Denial of Service) attack can be made by forcibly applying a delay interrupt with a limited interval to a received packet whose packet length is shorter than a predetermined length or a TCP SYN packet.
- the transfer control unit 104 detects that all descriptors managed for each classification identifier have been processed by software, the transfer control unit 104 notifies the interrupt control unit 111. As a result, unnecessary interrupts can be suppressed. Note that the interrupt control unit 111 may search for the Descriptor and perform the same processing.
- the setting unit 110 registers only one or a plurality of combinations of the classification identifier and the traffic type (interrupt control method) associated with the classification identifier in the interrupt management table 112.
- the interrupt control unit 111 When one or more combinations registered in the management table 112 are predetermined combinations, the interrupt management table 112 differs from the interrupt control method associated with the classification identifier of the received packet.
- An interrupt signal may be output by another predetermined interrupt control method. For example, when only one delayed interrupt is registered as an interrupt control method in the interrupt management table 112, the interrupt control unit 111 may output an interrupt signal by an immediate interrupt method. Thereby, it is possible to improve the throughput of the reception processing of the packet subject to the delay interrupt.
- the transfer control unit 104 may specify an interrupt control method with a descriptor used by the transfer control unit 104 in order to transfer packet data to and from the main memory 102. In this case, it is possible to change the interrupt control for each packet.
- the communication processing apparatus 101 in the above embodiment may be mounted as a single LSI, or may be mounted as a semiconductor IP core and may be mounted in a SoC (System On Chip) or the like. That is, each functional block in the block diagram (such as FIG. 1) is typically realized as an LSI which is an integrated circuit. These may be individually made into one chip, or may be made into one chip so as to include a part or all of them. (For example, the functional blocks other than the memory may be integrated into one chip.) Although the LSI is used here, it may be referred to as an IC, a system LSI, a super LSI, or an ultra LSI depending on the degree of integration.
- SoC System On Chip
- the method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor.
- An FPGA Field Programmable Gate Array
- a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
- integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology or a derivative other technology, it is naturally also possible to carry out function block integration using this technology. Biotechnology can be applied.
- the means for storing the data to be encoded or decoded may be configured separately without being integrated into one chip.
- the communication processing apparatus 101 in the above embodiment includes the transfer control unit 104 that uses DMA (Direct Memory Access) using Descriptor that enables higher transfer efficiency.
- DMA Direct Memory Access
- the present invention can be realized not only when DMA using Descriptor is used, but also when transferring by program I / O each time a packet is received without using DMA. If you are an expert in your industry, you can easily guess.
- a communication processing device, a communication processing method, and a communication device equipped with the communication processing device according to the present invention can realize an appropriate communication function in a device having a relatively low processing resource such as a home appliance. This is useful when a communication whose bandwidth significantly affects the quality of an application is performed in combination with other communications.
- a television receiver, a recorder, a recording / playback device, a set top box, or an IP (Internet) Protocol can be applied to communication devices.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
Description
(a)特許文献1の通信機器では、受信パケットの分類それぞれに対して、異なる要件を満たす割り込み制御を行なうことができない。
(b)遅延割り込みはソフトウェアの処理方法によっては割り込み処理量の低減に繋がらないリスクが存在する。
(c)OSが持つタイマ機能のみにより受信処理を管理する場合、まったくパケットの受信が発生しなくてもタイマ機能を動作させる必要があるため、不要なソフトウェア処理量を増大させる。
(d)OSが持つタイマ機能を用いる場合、その精度が荒く(数十msecオーダ)、また、そのタイマ機能自体がソフトウェア処理量を増大させる。タイマ精度としては、例えば100Mbpsの能力を持つEthernet(登録商標)の通信においては、数百μsec以下であることが求められる。また、タイマ機能による受信制御は、即時性を有する通信に対しても、その処理を遅延させることとなる。
(e)特許文献2の通信機器では、割り込み制御方法が受信パケットの種別に応じて予め定められている。
(1)パケットの受信ごとに即時に割り込み信号を発信する割り込み制御方法では、単位時間あたりの大量のパケットの受信による割り込み処理のためにソフトウェア処理量が増大し、その結果、CPU負荷の増大により、通信機器本来のアプリケーションの実行に支障を招くリスクが増大する。
(2)OSが持つタイマ機能を用いる受信制御方法では、精度の高い(数百μsec以下)タイマを実現することは困難である。
(3)タイマ機能による受信制御方法では、即時性を有する通信に対して、処理が遅延され、その結果、スループットの低下を招くリスクが増大する。
(4)受信パケットの種別に応じて割り込み制御方法を切り替えても、受信パケットの種別のそれぞれに対して割り込み制御方法が固定されているため、アプリケーションの処理(映像データの受信再生など)に求められる要件に応じた割り込みを適宜行なうことができない。
2008年5月19日に出願された出願番号2008-130285の日本出願の明細書、図面および特許請求の範囲における開示は、その全体を、参照用として、本願に取り込む。
(1)即時割り込み
(2)遅延割り込み(間隔制限なし)
(3)間隔制限付き遅延割り込み
(4)タイマ割り込み(処理量制限付き、または処理量制限なし)
(1)トラヒック種別「非優先」だけが割り込み管理テーブル112に登録されている。つまり、遅延割り込みあるいは間隔制限付き遅延割り込みで処理されるデータの分類識別子(例えば、「Default」)以外の分類識別子が割り込み管理テーブル112に登録されていない。
(2)トラヒック種別「ストリーム」が割り込み管理テーブル112に登録されている、言い換えれば、タイマ割り込みにより処理されるデータの分類識別子が割り込み管理テーブル112に登録されているが、予め決められた所定の期間、そのデータの受信が転送制御部104において行なわれなかった。
(1)即時割り込み
(2)遅延割り込み
(3)間隔制限付き遅延割り込み
(4)タイマ割り込み
を実現する。さらに、通信処理装置101は、タイマ割り込みで処理される分類の受信パケットに対し、帯域幅制限対象とそれ以外に分類して処理することで、
(1)即時性の高い通信
(2)非優先的に処理される通信
(3)非優先的に処理される通信のpps制限
(4)帯域幅制限対象となる通信
(5)映像受信のように、デコーダにおける受信レートの制限により、受信レートが自動的に制御されるため、受信パケットを無制限に処理すべき通信を実現する。
101 通信処理装置
102 メインメモリ
103 CPU
104 転送制御部
105 送信データ保持部
106 MAC部
107 振り分け部
108 振り分けテーブル
108m 第2記憶部
109 受信データ保持部
110 設定部
111 割り込み制御部
112 割り込み管理テーブル
112m 第1記憶部
Claims (18)
- パケットを受信して当該パケットのデータをメモリへ転送し、前記データを処理する処理ユニットに割り込み信号を出力する通信処理装置であって、
パケットを受信する受信部と、
前記受信部で受信されるパケットの種類に応じて、複数の分類種別のうちの何れか1つの分類種別に前記パケットを分類する振り分け部と、
前記受信部によって受信されて前記振り分け部によって分類されたパケットのデータを前記メモリに転送する転送制御部と、
分類種別と、割り込み信号を出力するタイミングに関する割り込み制御方法とを関連付けて示す割り込み管理テーブルを記憶している記憶部と、
前記割り込み管理テーブルを参照することにより、前記振り分け部によって分類されるパケットの分類種別に関連付けられた割り込み制御方法を特定し、特定した割り込み制御方法で前記割り込み信号を前記処理ユニットに出力する割り込み制御部と、
前記処理ユニットで起動するアプリケーションプログラムからの指示に応じて、前記割り込み管理テーブルに分類種別および割り込み制御方法を登録することにより、当該割り込み管理テーブルを更新する設定部と
を備える通信処理装置。 - 前記設定部は、
前記割り込み管理テーブルに示されていない分類種別のパケットが前記受信部によって受信される場合、前記アプリケーションプログラムからの指示に応じて、前記分類種別と、前記パケットに応じた割り込み制御方法とを関連付けて前記割り込み管理テーブルに追加することにより、当該割り込み管理テーブルを更新する
請求項1記載の通信処理装置。 - 前記設定部は、
前記アプリケーションプログラムからの指示として、当該アプリケーションプログラムによって確立された通信路を特定するための通信路情報を取得し、前記通信路情報に応じた分類種別および割り込み制御方法を前記割り込み管理テーブルに登録する、
請求項1記載の通信処理装置。 - 前記設定部は、
前記割り込み管理テーブルに、第1の分類種別および第1の割り込み制御方法を関連付けて登録するとともに、第2の分類種別および第2の割り込み制御方法を関連付けて登録し、
前記割り込み制御部は、
前記振り分け部によって分類されるパケットの分類種別が第1の分類種別である場合には、前記割り込み管理テーブルにおいて当該第1の分類種別に関連付けられた第1の割り込み制御方法で、割り込み信号を前記処理ユニットに出力し、
前記振り分け部によって分類されるパケットの分類種別が第2の分類種別である場合には、前記割り込み管理テーブルにおいて当該第2の分類種別に関連付けられた第2の割り込み制御方法で、割り込み信号を前記処理ユニットに出力する、
請求項1記載の通信処理装置。 - 前記設定部は、
分類種別と当該分類種別に関連付けられた割り込み制御方法との組み合わせを1つまたは複数個だけ、前記割り込み管理テーブルに登録し、
前記割り込み制御部は、
前記割り込み管理テーブルに登録されている1つまたは複数個の組み合わせが、予め定められた組み合わせである場合には、前記割り込み管理テーブルにおいて、前記振り分け部によって分類されるパケットの分類種別に関連付けられている割り込み制御方法と異なる、予め定められた他の割り込み制御方法で割り込み信号を出力する、
請求項1記載の通信処理装置。 - 前記割り込み制御部は、
前記割り込み管理テーブルに、パケットのデータが前記メモリに転送されてから予め定められた時間経過したときに割り込み信号を出力する遅延割り込み方法が前記割り込み制御方法として1つだけ登録されている場合には、パケットのデータが前記メモリに転送された直後に割り込み信号を出力する即時割り込み方法で割り込み信号を出力する、
請求項5記載の通信処理装置。 - 前記設定部は、
パケットのデータが前記メモリに転送された直後に割り込み信号を出力する即時割り込み方法、パケットのデータが前記メモリに転送されてから予め定められた時間経過したときに割り込み信号を出力する遅延割り込み方法、パケットのデータが前記メモリに転送されてから予め定められた時間経過し、且つ直前の割り込み信号が出力されてから前記予め定められた時間経過したときに割り込み信号を出力する間隔制限付き遅延割り込み方法、および、予め定められた期間ごとに割り込み信号を出力するタイマ割り込み方法の中から、1つまたは複数の方法を前記割り込み制御方法として前記割り込み管理テーブルに登録する、
請求項1記載の通信処理装置。 - 前記転送制御部は、さらに、
前記振り分け部によって分類されたパケットに関するパケット関連情報を前記割り込み制御部に通知し、
前記割り込み制御部は、
前記転送制御部から前記パケット関連情報の通知を受けたときには、前記割り込み管理テーブルにおいて前記パケットの分類種別に関連付けられている割り込み制御方法と前記パケット関連情報とに応じた他の割り込み制御方法を特定し、前記他の割り込み制御方法で前記割り込み信号を出力する、
請求項1記載の通信処理装置。 - 前記設定部は、
前記分類種別を、当該分類種別を識別するための分類識別子として前記割り込み管理テーブルに登録し、前記割り込み制御方法を、当該割り込み制御方法に一意に定義付けされたトラヒック種別として前記割り込み管理テーブルに登録する、
請求項1記載の通信処理装置。 - パケットを受信して当該パケットのデータをメモリへ転送し、前記データを処理する処理ユニットに割り込み信号を出力する通信処理方法であって、
パケットを受信し、
受信されるパケットの種類に応じて、複数の分類種別のうちの何れか1つの分類種別に前記パケットを分類し、
受信されて分類されたパケットのデータを前記メモリに転送し、
分類種別と、割り込み信号を出力するタイミングに関する割り込み制御方法とを関連付けて示す割り込み管理テーブルを参照することにより、受信されて分類されるパケットの分類種別に関連付けられた割り込み制御方法を特定し、特定した割り込み制御方法で前記割り込み信号を前記処理ユニットに出力し、
前記処理ユニットで起動するアプリケーションプログラムからの指示に応じて、前記割り込み管理テーブルに分類種別および割り込み制御方法を登録することにより、当該割り込み管理テーブルを更新する、
通信処理方法。 - パケットを受信して当該パケットのデータをメモリへ転送し、前記データを処理する処理ユニットに割り込み信号を出力する通信処理装置を制御する方法であって、
前記通信処理装置は、割り込み管理テーブルを保持し、パケットを受信して当該パケットのデータをメモリに転送し、前記割り込み管理テーブルにおいて受信されるパケットの種別に関連付けられている割り込み制御方法で、前記パケットに対する割り込み信号を出力し、
前記通信処理装置を制御する方法では、
前記通信処理装置を介した通信路を確立し、
前記通信路を特定するための通信路情報を前記通信処理装置に送信することにより、前記通信処理装置に対して、前記通信路情報に対応するパケットの種別および割り込み制御方法を前記割り込み管理テーブルに登録させて、当該割り込み管理テーブルを更新させる、
通信処理装置の制御方法。 - 前記割り込み信号が出力される要因には、パケットのデータが前記メモリに転送されたことを要因とする受信割り込み要因、または、予め定められた期間が経過したことを要因とするタイマ割り込み要因があり、
前記通信処理装置の制御方法では、さらに、
前記割り込み信号を取得し、取得した割り込み信号が前記受信割り込み要因によって出力されたか、前記タイマ割り込み要因によって出力されたかを判定し、
前記受信割り込み要因によって出力されたと判定したときには、第1の受信処理方法により前記メモリに転送されたデータを処理し、
前記タイマ割り込み要因によって出力されたと判定したときには、第1の受信処理方法と異なる第2の受信処理方法により前記メモリに転送されたデータを処理する、
請求項11記載の通信処理装置の制御方法。 - 前記割り込み管理テーブルには、
予め定められた期間ごとに割り込み信号を出力するタイマ割り込み方法が前記割り込み制御方法として登録されてあり、
前記第2の受信処理方法により前記メモリに転送されたデータを処理するときには、
前記メモリに転送された前記タイマ割り込み方法の対象とされるパケットのデータの一群に対する処理が制限されるべきか否かを判定し、
制限されるべきでないと判定したときには、前記一群の全てのパケットのデータを処理し、
制限されるべきと判定したときには、前記一群の全てのパケットのデータのうち、予め定められた数以下のパケットのデータだけを処理する、
請求項12記載の通信処理装置の制御方法。 - 前記割り込み管理テーブルには、
パケットのデータが前記メモリに転送された直後に割り込み信号を出力する即時割り込み方法と、パケットのデータが前記メモリに転送されてから予め定められた時間経過したときに割り込み信号を出力する遅延割り込み方法とが、それぞれ前記割り込み制御方法として登録されてあり、
前記第1の受信処理方法により前記メモリに転送されたデータを処理するときには、
前記処理ユニットが、前記メモリに転送されたパケットのデータの一群が即時割り込み方法の対象とされるか、遅延割り込み方法の対象とされるかを前記一群のパケットの種別に基づいて判定し、
即時割り込み方法の対象とされると判定したときには、前記一群の全てのパケットのデータを処理し、
遅延割り込み方法の対象とされると判定したときには、前記一群の全てのパケットのデータのうち、予め定められた数以下のパケットのデータだけを処理する、
請求項12記載の通信処理装置の制御方法。 - 前記割り込み管理テーブルには、
パケットのデータが前記メモリに転送されてから予め定められた時間経過したときに割り込み信号を出力する遅延割り込み方法が前記割り込み制御方法として登録されてあり、
前記第1の受信処理方法により前記メモリに転送されたデータを処理するときには、
前記割り込み管理テーブルに割り込み制御方法として前記遅延割り込み方法のみが登録されているか否かを判定し、
前記遅延割り込み方法のみが登録されていると判定したときには、前記メモリに転送された全てのパケットのデータを処理し、
前記遅延割り込み方法以外の割り込み制御方法も登録されていると判定したときには、前記メモリに転送された前記遅延割り込み方法の対象とされる全てのパケットのデータのうち、予め定められた数以下のパケットのデータだけを処理する、
請求項12記載の通信処理装置の制御方法。 - パケットを受信して当該パケットのデータをメモリへ転送し、前記データを処理する処理ユニットに割り込み信号を出力する通信処理装置を制御するためのプログラムであって、
前記通信処理装置は、割り込み管理テーブルを保持し、パケットを受信して当該パケットのデータをメモリに転送し、前記割り込み管理テーブルにおいて受信される前記パケットの種別に関連付けられている割り込み制御方法で、前記パケットに対する割り込み信号を出力し、
前記プログラムは、
前記通信処理装置を介した通信路を確立し、
前記通信路を特定するための通信路情報を前記通信処理装置に送信することにより、前記通信処理装置に対して、前記通信路情報に対応するパケットの種別および割り込み制御方法を前記割り込み管理テーブルに登録させて、当該割り込み管理テーブルを更新させる、
ことをコンピュータからなる前記処理ユニットに実行させるプログラム。 - パケットを受信して当該パケットのデータをメモリへ転送し、前記データを処理する処理ユニットに割り込み信号を出力する通信処理装置と、前記処理ユニットとを有する通信機器であって、
前記通信処理装置は、
パケットを受信する受信部と、
前記受信部で受信されるパケットの種類に応じて、複数の分類種別のうちの何れか1つの分類種別に前記パケットを分類する振り分け部と、
前記受信部によって受信されて前記振り分け部によって分類されたパケットのデータを前記メモリに転送する転送制御部と、
分類種別と、割り込み信号を出力するタイミングに関する割り込み制御方法とを関連付けて示す割り込み管理テーブルを記憶している記憶部と、
前記割り込み管理テーブルを参照することにより、前記振り分け部によって分類されるパケットの分類種別に関連付けられた割り込み制御方法を特定し、特定した割り込み制御方法で前記割り込み信号を前記処理ユニットに出力する割り込み制御部と、
前記処理ユニットで起動するアプリケーションプログラムからの指示に応じて、前記割り込み管理テーブルに分類種別および割り込み制御方法を登録することにより、当該割り込み管理テーブルを更新する設定部とを備え、
前記処理ユニットは、
前記アプリケーションプログラムを起動し、前記アプリケーションプログラムによって、前記通信処理装置を介した通信路を確立し、前記通信路を特定するための通信路情報を前記通信処理装置に送信することにより、前記通信処理装置に対して前記指示を行なう、
通信機器。 - 請求項17記載の通信機器を備えたテレビ受像機、レコーダ、録画再生装置、セットトップボックス、またはIP(Internet Protocol)通信装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010512937A JP5205454B2 (ja) | 2008-05-19 | 2009-05-18 | 通信処理装置、通信処理方法、通信処理装置の制御方法および通信機器 |
US12/992,996 US8438323B2 (en) | 2008-05-19 | 2009-05-18 | Communication processing apparatus, communication processing method, control method and communication device of communication processing apparatus |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008130285 | 2008-05-19 | ||
JP2008-130285 | 2008-05-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009141992A1 true WO2009141992A1 (ja) | 2009-11-26 |
Family
ID=41339932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2009/002178 WO2009141992A1 (ja) | 2008-05-19 | 2009-05-18 | 通信処理装置、通信処理方法、通信処理装置の制御方法および通信機器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8438323B2 (ja) |
JP (1) | JP5205454B2 (ja) |
WO (1) | WO2009141992A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012015630A (ja) * | 2010-06-29 | 2012-01-19 | Fujitsu Ltd | 半導体装置、パケット受信方法、およびパケット送信方法 |
JP2020198607A (ja) * | 2019-06-03 | 2020-12-10 | オープン スタック, インコーポレイテッド | タイマ割り込みサービスルーチンを利用したパケット送信装置 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009141992A1 (ja) * | 2008-05-19 | 2009-11-26 | パナソニック株式会社 | 通信処理装置、通信処理方法、通信処理装置の制御方法および通信機器 |
US10904144B2 (en) * | 2012-12-27 | 2021-01-26 | Sitting Man, Llc | Methods, systems, and computer program products for associating a name with a network path |
JP6527399B2 (ja) * | 2015-06-23 | 2019-06-05 | 本田技研工業株式会社 | ネットワークを用いた通信システム |
JP2017059897A (ja) * | 2015-09-14 | 2017-03-23 | 株式会社東芝 | 分類器、通信装置、及び通信方法 |
TWI633432B (zh) * | 2016-12-29 | 2018-08-21 | 宏碁股份有限公司 | 檔案統計方法 |
CN111400210B (zh) * | 2020-03-10 | 2022-05-06 | 苏州盛科通信股份有限公司 | 一种集中式MACsec包处理芯片的中断处理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11150564A (ja) * | 1997-11-17 | 1999-06-02 | Hitachi Ltd | 多重符号化画像音声データの受信装置 |
JP2003152789A (ja) * | 2001-11-14 | 2003-05-23 | Nippon Telegr & Teleph Corp <Ntt> | ストリーム中継制御方法、ストリーム中継制御プログラム及びそのプログラムを記録した媒体、並びにストリーム中継制御装置 |
JP2006041686A (ja) * | 2004-07-23 | 2006-02-09 | Fujitsu I-Network Systems Ltd | パケット交換機 |
JP2008059577A (ja) * | 2006-08-03 | 2008-03-13 | Matsushita Electric Ind Co Ltd | ネットワークチップ及びネットワーク送受信装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2723970B2 (ja) | 1989-05-26 | 1998-03-09 | 株式会社日立製作所 | データ転送制御装置 |
JP3404322B2 (ja) | 1999-05-25 | 2003-05-06 | 株式会社エルミックシステム | 割込処理方法、os支援システム、情報処理装置、記録媒体 |
JP2002217971A (ja) | 2001-01-18 | 2002-08-02 | Fujitsu Ltd | パケット伝送装置及びパケット伝送方法 |
JP5058991B2 (ja) | 2005-06-29 | 2012-10-24 | コンプメディクス リミテッド | 導電ブリッジを備えるセンサ・アセンブリ |
US7872992B2 (en) * | 2005-12-09 | 2011-01-18 | Panasonic Corporation | Network system and relay device |
US20080031279A1 (en) * | 2006-08-03 | 2008-02-07 | Takeshi Hatakeyama | Network chip and network transmission/reception device |
WO2009141992A1 (ja) * | 2008-05-19 | 2009-11-26 | パナソニック株式会社 | 通信処理装置、通信処理方法、通信処理装置の制御方法および通信機器 |
US20100106874A1 (en) * | 2008-10-28 | 2010-04-29 | Charles Dominguez | Packet Filter Optimization For Network Interfaces |
-
2009
- 2009-05-18 WO PCT/JP2009/002178 patent/WO2009141992A1/ja active Application Filing
- 2009-05-18 JP JP2010512937A patent/JP5205454B2/ja not_active Expired - Fee Related
- 2009-05-18 US US12/992,996 patent/US8438323B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11150564A (ja) * | 1997-11-17 | 1999-06-02 | Hitachi Ltd | 多重符号化画像音声データの受信装置 |
JP2003152789A (ja) * | 2001-11-14 | 2003-05-23 | Nippon Telegr & Teleph Corp <Ntt> | ストリーム中継制御方法、ストリーム中継制御プログラム及びそのプログラムを記録した媒体、並びにストリーム中継制御装置 |
JP2006041686A (ja) * | 2004-07-23 | 2006-02-09 | Fujitsu I-Network Systems Ltd | パケット交換機 |
JP2008059577A (ja) * | 2006-08-03 | 2008-03-13 | Matsushita Electric Ind Co Ltd | ネットワークチップ及びネットワーク送受信装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012015630A (ja) * | 2010-06-29 | 2012-01-19 | Fujitsu Ltd | 半導体装置、パケット受信方法、およびパケット送信方法 |
JP2020198607A (ja) * | 2019-06-03 | 2020-12-10 | オープン スタック, インコーポレイテッド | タイマ割り込みサービスルーチンを利用したパケット送信装置 |
Also Published As
Publication number | Publication date |
---|---|
US20110078353A1 (en) | 2011-03-31 |
JPWO2009141992A1 (ja) | 2011-09-29 |
US8438323B2 (en) | 2013-05-07 |
JP5205454B2 (ja) | 2013-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5205454B2 (ja) | 通信処理装置、通信処理方法、通信処理装置の制御方法および通信機器 | |
US7554909B2 (en) | Dynamic service management for multicore processors | |
US7633869B1 (en) | Automatic network traffic characterization | |
EP2959645B1 (en) | Dynamic optimization of tcp connections | |
US20060203730A1 (en) | Method and system for reducing end station latency in response to network congestion | |
US20170214774A1 (en) | Communication traffic processing architectures and methods | |
JPWO2003017577A1 (ja) | 伝送装置および伝送方法 | |
US20150222550A1 (en) | Method and system for supporting packet prioritization at a data network | |
EP1280301A2 (en) | Flow based congestion control | |
WO2014105650A1 (en) | Communication traffic processing architectures and methods | |
US9125089B2 (en) | Method and apparatus for packet aggregation in a network controller | |
CN104052684A (zh) | 动态适配计算机网络中的最大传输单元大小的方法和系统 | |
US10855606B2 (en) | Information processing apparatus and information processing system | |
US20050254447A1 (en) | Domestic multimedia transmission method and system | |
JP2013034164A (ja) | 中継装置、中継方法 | |
US20190124006A1 (en) | Latency correction between transport layer host and deterministic interface circuit | |
US7969977B2 (en) | Processing apparatus and method for processing IP packets | |
CN111669665B (zh) | 媒体流的实时推送方法及服务器 | |
US10887237B2 (en) | Advanced load balancing based on bandwidth estimation | |
US7558288B2 (en) | Layer-based multiple data processing apparatus and method | |
KR101491699B1 (ko) | 소프트웨어 정의 네트워킹에서 제어 장치 및 그 동작 방법 | |
US11876698B2 (en) | High-speed hardware-based traffic analyzer integration with speed test control application | |
Madden | Challenges Using the Linux Network Stack for Real-Time Communication | |
WO2022059162A1 (ja) | 無線通信システム、無線通信方法及びアクセスポイント装置 | |
JP6568571B2 (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: 09750354 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2010512937 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 12992996 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 09750354 Country of ref document: EP Kind code of ref document: A1 |