Method and device for reducing network packet load
Patent Information
- Application Number
- TW113149582
- Authority / Receiving Office
- TW · TW
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-12-19
- Publication Date
- 2026-10-11
- Estimated Expiration
- 2044-12-18
AI Technical Summary
Existing Ethernet systems with multiple data ports struggle to dynamically adjust network packet load when an abnormally high number of packets are detected, leading to inefficiencies and reduced system reliability.
Implement a two-stage filtering mechanism with a three-tier threshold system in the Ethernet Media Access Controller (EMAC) to filter out packets from blacklisted media access control addresses and dynamically adjust packet reception settings based on threshold values, including an intermediate, maximum, and minimum threshold.
Effectively reduces network packet load and improves system reliability by precisely blocking packets from abnormal sources without shutting down data ports, using a dynamic blacklist and filtering mechanism.
Smart Images

Figure TWG2TB001915276_001 
Figure TWG2TB001915276_002 
Figure TWG2TB001915276_003
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of network communication technology, and more particularly to a method and apparatus for reducing network packet load. Prior Technology
[0002] An Ethernet system includes at least one data port for communicating with link partners according to Ethernet standard communication protocols. When an Ethernet system includes more than one data port, it is a multi-port Ethernet system. Figure 1 is a block diagram of a conventional multi-port Ethernet system 100. Network system 100 includes multiple data ports 120A-120N, Ethernet circuitry 130, and a Central Processing Unit (CPU) 140. Ethernet circuitry 130 includes an Ethernet physical layer (ePHY) transceiver 132 and an Ethernet Media Access Controller (EMAC) 134. Multiple link partners located on Ethernet 110 are coupled to Ethernet system 100 via data ports 120A-120N. Each of data ports 120A to 120N is coupled to an Ethernet physical layer transceiver, and the Ethernet media access controller 134 is coupled to the central processing unit 140.
[0003] When a connected party sends Ethernet packets to a target port selected by data ports 120A-120N, the target port then transmits these Ethernet packets to the Ethernet Media Access Controller 134 via Ethernet Physical Layer Transceiver 132. The Ethernet Media Access Controller 134 then extracts data from the received Ethernet packets and transmits the extracted data to the Central Processing Unit 150. When the Central Processing Unit 150 needs to send data to a connected party, it sends the data to the Ethernet Media Access Controller 134. The Ethernet Media Access Controller 134 then generates Ethernet packets based on the data and sends the Ethernet packets to the corresponding data port of the connected party via Ethernet Physical Layer Transceiver 132. The data port then transmits the Ethernet packets to the connected party.
[0004] However, when the Ethernet Media Access Controller 134 detects an abnormally high number of Ethernet packets from a certain data port, simply shutting down that data port is not enough to dynamically adjust the Ethernet load.
[0005] Therefore, there is a need for a method and apparatus to reduce network packet load in order to reduce Ethernet load and improve system reliability. Summary of the Invention
[0006] This invention discloses a method for reducing network packet load, performed by an apparatus, comprising: receiving network packets from an Ethernet physical layer into a receiving slot; determining whether a packet count value of one of the network packets located in the receiving slot exceeds an intermediate threshold; and when the packet count value exceeds the intermediate threshold, filtering out a first network packet from a media access control address in the blacklist according to a blacklist.
[0007] In some embodiments, the method further includes: determining whether the packet count value exceeds a maximum threshold value; and stopping receiving advertising packets when the packet count value exceeds the maximum threshold value; wherein the maximum threshold value is higher than the intermediate threshold value.
[0008] In some embodiments, the method further includes: determining whether the packet count value is lower than a minimum threshold value; and restoring an original packet reception setting when the packet count value is lower than the minimum threshold value; wherein the minimum threshold value is lower than the intermediate threshold value.
[0009] In some implementations, when the second number of second network packets from a second media access control address received within a time window exceeds an abnormal threshold, the second media access control address is recorded in the blacklist.
[0010] In some implementations, when the number of third network packets from a third media access control address in the aforementioned blacklist does not exceed an abnormal threshold within a given time window, the aforementioned third media access control address is removed from the aforementioned blacklist.
[0011] In some implementations, the blacklist is updated by a central processing unit coupled to the device.
[0012] In some implementations, an intermediate threshold value is not a fixed value.
[0013] In some implementations, the network packets are received by the device from the Ethernet physical layer via a Reduced Media Independent Interface (RMII).
[0014] In some implementations, the device described above is an Ethernet Media Access Controller (EMAC).
[0015] This disclosure discloses an apparatus for reducing network packet load, comprising: a processor; and a computer storage medium. The computer storage medium is coupled to the processor and configured to store computer-readable instructions for instructing the processor to perform: receiving network packets from an Ethernet physical layer into a receive slot; determining whether a packet count value of one of the network packets located in the receive slot exceeds the intermediate threshold; and when the packet count value exceeds the intermediate threshold, filtering out first network packets from media access control addresses in the blacklist according to a blacklist; wherein the apparatus is an Ethernet Media Access Controller (EMAC). Simple Explanation of the Diagram
[0016] Figure 1 is a block diagram of a well-known multi-port Ethernet system. Figure 2 is a block diagram of one embodiment of the Ethernet system disclosed herein. Figure 3 is a flowchart illustrating a method for reducing network packet load according to an embodiment of this disclosure. Figure 4 shows an exemplary operating environment for implementing the embodiments disclosed herein. Implementation
[0017] Figure 2 is a block diagram of one embodiment of the Ethernet system 200 disclosed herein. In one embodiment, the Ethernet system 200 includes an Ethernet circuit 230 and a central processing unit (CPU) 240. The Ethernet circuit 230 includes an Ethernet physical layer (ePHY) transceiver 232 and an Ethernet Media Access Controller (EMAC) 234, wherein the EMAC 234 includes a blacklist filter 2342 and an Accept Broadcast Packet (ABP) filter 2344.
[0018] In one embodiment, the Ethernet Media Access Controller 234 can be implemented in any suitable manner (e.g., by analog circuitry, digital circuitry, instructions for execution by the Central Processing Unit 240, or any suitable combination thereof).
[0019] Blacklist filter 2342 is used to filter network packets from a blacklist, wherein the blacklist records the media access control address of the source of the network packets. Broadcast packet receive filter 2344 is used to receive advertising packets from Ethernet physical layer transceiver 232.
[0020] Network packets are transmitted to Ethernet system 200 from multiple link partners (not shown in the figure) in the Ethernet network. These link partners support full-duplex communication and support the IEEE 802.3x or IEEE 802.3az standards. In some embodiments, the network packets are transmitted from Ethernet physical layer 232 to Ethernet media access controller 234 via a Reduced Media Independent Interface (RMII).
[0021] In some embodiments, the Ethernet Media Access Controller 234 may further include a counting device. When the Ethernet Media Access Controller 234 receives a network packet from the Ethernet Entity Layer 232 into a receive slot (RX slot) in the Ethernet Media Access Controller 234, the counting device increments the packet count by 1. When each network packet is taken from or removed from the receive slot by the Central Processing Unit 240, the counting device decrements the packet count by 1.
[0022] The Ethernet Media Access Controller 234 can determine whether the packet count value of one of the network packets located in the aforementioned receiver slot exceeds an intermediate threshold value. When the packet count value exceeds the aforementioned intermediate threshold value, the blacklist filter 2342 in the Ethernet Media Access Controller 234 filters out the first network packet from the media access control address in the aforementioned blacklist according to a blacklist.
[0023] When the packet count exceeds an intermediate threshold, the Ethernet Media Access Controller 234 can further determine whether the packet count exceeds a maximum threshold, wherein the maximum threshold is higher than the intermediate threshold. When the packet count exceeds the maximum threshold, the Ethernet Media Access Controller 234 disables the receive broadcast packet filter 2344, causing the receive broadcast packet filter 2344 to stop receiving advertising packets from the Ethernet Physical Layer Transceiver 232.
[0024] When the packet count value is lower than a minimum threshold value, the Ethernet Media Access Controller 234 can restore an original packet reception setting, wherein the minimum threshold value is lower than the intermediate threshold value.
[0025] For example, suppose the highest threshold, the middle threshold, and the lowest threshold are 70, 50, and 10, respectively. The counting device in the Ethernet Media Access Controller 234 counts the current packet count as 55. The packet count exceeds the middle threshold but does not exceed the highest threshold, so the blacklist filter 2342 in the Ethernet Media Access Controller 234 filters out network packets from media access control addresses in the blacklist according to a blacklist. When the counting device in the Ethernet Media Access Controller 234 counts the current packet count as 8, the packet count is lower than a lowest threshold, and the Ethernet Media Access Controller 234 restores an original packet reception setting. For example, the blacklist filter 2342 stops filtering out network packets from media access control addresses in the blacklist, or the broadcast packet filter 2344 resumes receiving advertising packets from the Ethernet Entity Layer Transceiver 232, etc.
[0026] The central processing unit 240 can monitor whether the second number of second network packets from a second media access control address received within a time window exceeds an abnormal threshold. If the second number of second packets from the second media access control address exceeds the abnormal threshold, the central processing unit 240 can record the second media access control address in a blacklist for filtering by the blacklist filter 2342.
[0027] Furthermore, the central processing unit 240 can also monitor whether the number of third network packets from a third media access control address in the blacklist exceeds an abnormal threshold within a given time window. When the number of third packets from a third media access control address in the blacklist does not exceed the abnormal threshold, the central processing unit 240 can remove the aforementioned third media access control address from the blacklist.
[0028] For example, the time window can be selected as 3 minutes, 5 minutes, or 6 minutes, while the anomaly threshold can be selected as 10 or 30. Those with general knowledge in the field will understand that a longer time window and a larger anomaly threshold indicate a lower frequency of blacklist updates; conversely, a shorter time window and a smaller anomaly threshold indicate a higher frequency of blacklist updates.
[0029] In another embodiment, the Ethernet Media Access Controller 234 may also replace the Central Processing Unit 240 in performing the actions of monitoring network packet counts and updating the blacklist within a single time window.
[0030] In some embodiments, the values of the highest threshold, the middle threshold, the lowest threshold, the time window, and the abnormal threshold are not fixed values, but can be dynamically adjusted by the central processing unit 240 or the Ethernet media access controller 234.
[0031] It should be understood that the Ethernet circuit 230 shown in Figure 2 is an example of an Ethernet system 200 architecture. The Ethernet circuit 230 shown in Figure 2 can be implemented by any type of electronic device, such as the electronic device 400 described with reference to Figure 4 as shown in Figure 4.
[0032] Figure 3 is a flowchart illustrating a method 300 for reducing network packet load according to an embodiment of this disclosure. This method can be implemented by the Ethernet Media Access Controller 234 in Figure 2.
[0033] In step S305, the Ethernet Media Access Controller receives network packets from an Ethernet physical layer into a receive slot. In one embodiment, the network packets are received by the Ethernet Media Access Controller from the Ethernet physical layer via a Reduced Media Independent Interface (RMII).
[0034] In step S310, the Ethernet Media Access Controller determines whether the packet count value of one of the network packets located in the receiving slot exceeds an intermediate threshold value.
[0035] When the packet count exceeds the intermediate threshold (Yes in step S310), in step S315, the Ethernet Media Access Controller filters out the first network packet from the Media Access Controller address in the blacklist according to a blacklist.
[0036] In step S320, the Ethernet Media Access Controller determines whether the packet count value exceeds a maximum threshold value.
[0037] When the packet count exceeds the maximum threshold ("Yes" in step S320), in step S325, the Ethernet Media Access Controller stops receiving advertising packets.
[0038] When the packet count does not exceed the maximum threshold (No in step S320), the process ends and the Ethernet Media Access Controller returns to step S305 to wait for new network packets.
[0039] Returning to step S310, when the packet count value does not exceed the intermediate threshold value ("No" in step S310), in step S330, the Ethernet Media Access Controller determines whether the packet count value is lower than a minimum threshold value.
[0040] When the packet count value is lower than the minimum threshold value ("Yes" in step S330), in step S335, the Ethernet Media Access Controller restores an original packet reception setting.
[0041] When the packet count value is not lower than the minimum threshold value (No in step S330), the process ends and the Ethernet Media Access Controller returns to step S305 to wait for new network packets.
[0042] Method 300 can be implemented, for example, with a combination of hardware and software. More specifically, the software is responsible for maintaining the blacklist. When the Ethernet Media Access Controller (HDMI) detects that the packet count exceeds a middle threshold, it activates the blacklist filter. When the HDMI receives a network packet from the Ethernet Physical Layer transceiver that originates from the blacklist, it directly filters out the packet, without sending it to the receive slot for central processing unit (CPU) access. When the HDMI detects that the packet count exceeds the maximum threshold, it deactivates the broadcast packet filter, causing the receive broadcast packet filter to stop receiving advertising packets from the Ethernet Physical Layer transceiver.
[0043] In summary, the method and apparatus disclosed herein for reducing network packet load employ a two-stage filtering mechanism and a three-tier threshold, enabling the setting of blacklists and precise blocking of network packets originating from abnormal sources' media access control addresses. Furthermore, the blacklist settings can be dynamically adjusted without shutting down data ports, effectively reducing Ethernet network load and improving system reliability.
[0044] It should be noted that the embodiment of the Ethernet Media Access Controller 234 in the Ethernet circuit 230 of Figure 2 can be implemented in hardware, software, firmware, or any combination thereof. For example, all modules in the Ethernet Media Access Controller 234 can be implemented as computer program code configured to execute in one or more processors. Alternatively, all modules in the Ethernet Media Access Controller 234 can be implemented as hardware logic / circuit.
[0045] The embodiments described herein, including systems, methods / processes, and / or apparatuses, can be implemented using a known computer (such as the electronic device 400 shown in Figure 4). For example, Ethernet circuitry 230 or Ethernet media access controller 234 can be implemented using one or more electronic devices 400. For illustrative purposes, the electronic device 400 is described below.
[0046] Referring specifically to Figure 4, which illustrates an exemplary operating environment for implementing the embodiments disclosed herein, it can generally be considered as electronic device 400. Electronic device 400 is merely an example of a suitable computing environment and is not intended to imply any limitation on the use or scope of the invention. Electronic device 400 should also not be construed as having any dependency or requirement in relation to any or a combination of the elements shown.
[0047] This invention can be executed using computer program code or machine-executable instructions. These instructions can be computer-executable instructions for program modules, which are executed by a computer or other machine, such as a personal digital assistant or other portable device. Generally, program modules include routines, programs, objects, components, data structures, etc., and a program module refers to program code that performs a specific task or implements a specific abstract data type. This invention can be implemented in various system configurations, including portable devices, consumer electronics, general-purpose computers, and more specialized computing devices. This invention can also be implemented in distributed computing environments, processing devices connected by communication networks.
[0048] Referring to Figure 4, the electronic device 400 includes a bus 410 directly or indirectly coupled to the following devices: memory 412, one or more processors 414, one or more display elements 416, input / output (I / O) ports 418, input / output (I / O) elements 420, and an illustrative power supply 422. Bus 410 represents an element that may be one or more buses (e.g., address bus, data bus, or a combination thereof). Although the various blocks in Figure 4 are shown as lines for simplicity, the boundaries between the elements are not actually specific; for example, the display elements of the display device may be considered I / O elements; the processor may have memory.
[0049] Electronic device 400 generally includes various computer-readable media. Computer-readable media can be any available media accessible to electronic device 400, including volatile and non-volatile media, and removable and non-removable media. For example, but not limited to, computer-readable media can include computer storage media and communication media. Computer-readable media also includes volatile and non-volatile media, removable and non-removable media implemented in any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, random access memory (RAM), read-only memory (ROM), electronically-erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical disc storage devices, magnetic disks, magnetic disk storage devices or other magnetic storage devices, or any other media that can be used to store necessary information and can be accessed by an electronic device 400. Computer storage media itself does not include signals.
[0050] Communication media generally includes computer-readable instructions, data structures, program modules, or other data in the form of modular data signals, such as carrier waves or other transmission mechanisms, and includes any information transmission medium. The term "modular data signal" refers to a signal having one or more sets of characteristics or modified in a manner that encodes information within the signal. For example, but not limited to, communication media includes wired media such as wired networks or direct wired connections, and wireless media such as audio, radio frequency, infrared, and other wireless media. Combinations of the above media are included within the scope of computer-readable media.
[0051] Memory 412 includes computer storage media in the form of volatile and non-volatile memory. The memory may be removable, non-removable, or a combination of both. Exemplary hardware devices include solid-state memory, hard disk drives, optical disk drives, etc. Electronic device 400 includes one or more processors that read data from entities such as memory 412 or I / O elements 420. Display element 416 displays data instructions to a user or other device. Exemplary display elements include display screens, etc.
[0052] I / O port 418 allows electronic device 400 to be logically connected to other devices, including I / O element 420, some of which are built-in. Exemplary elements include microphones, joysticks, wireless devices, etc. I / O element 420 provides a natural user interface for processing user-generated gestures, voice, or other physiological inputs. In some examples, these inputs may be transmitted to a suitable network element for further processing. Electronic device 400 may be equipped with a depth camera, such as a stereo camera system, an infrared camera system, an RGB camera system, and combinations thereof, to detect and identify objects. Furthermore, electronic device 400 may be equipped with sensors (e.g., radar, LiDAR) to periodically sense the surrounding environment within a sensing range, generating sensor information indicating its relationship with the surrounding environment. Moreover, electronic device 400 may be equipped with an accelerometer or gyroscope to detect motion. The output of the accelerometer or gyroscope may be provided to electronic device 400 for display.
[0053] In addition, the processor 414 in the electronic device 400 can also execute programs and instructions in the memory 412 to perform the actions and steps described in the above embodiments, or other descriptions in the specification.
[0054] Any specific order or hierarchical arrangement of steps in the procedure disclosed herein is merely illustrative. Based on design preferences, it must be understood that any specific order or hierarchical arrangement of steps in the procedure can be rearranged within the scope disclosed herein. The accompanying method claims present the elements of various steps in an exemplary order and should therefore not be limited to any particular order or hierarchy shown herein.
[0055] Although this disclosure has been presented above with examples of implementation, it is not intended to limit this case. Anyone skilled in the art may make some modifications and refinements without departing from the spirit and scope of this disclosure. Therefore, the scope of protection of this case shall be determined by the scope of the appended patent application.
[0056] 100: Multi-Stop Ethernet System 110: Ethernet 120A~120N: Data Port 130: Ethernet circuit 132: ePHY transceiver 134:EMAC 140: CPU 200: Ethernet System 230: Ethernet circuit 232: ePHY transceiver 234:EMAC 2342: Blacklist Filter 2344: ABP Filter 240: CPU 300: Method S305, S310, S315, S320, S325, S330, S335: Steps 400: Electronic Devices 410: Busbar 412: Memory 414: Processor 416: Display element 418:I / O port 420:I / O components 422: Power Supply
[0057] none
Claims
1. A method for reducing network packet load, performed by an apparatus, comprising: Receive network packets from an Ethernet physical layer into a receive slot; determine whether the packet count value of one of the network packets located in the receive slot exceeds an intermediate threshold; and when the packet count value exceeds the intermediate threshold, filter out the first network packet from a media access control address in the blacklist according to a blacklist.
2. The method for reducing network packet load as described in claim 1 further includes: Determine whether the above packet count value exceeds a maximum threshold value; And when the packet count exceeds the maximum threshold, stop receiving advertising packets; wherein the maximum threshold is higher than the intermediate threshold.
3. The method for reducing network packet load as described in claim 1 further includes: Determine whether the above packet count value is lower than a minimum threshold value; And when the packet count value is lower than the minimum threshold value, restore the original packet reception setting; wherein the minimum threshold value is lower than the intermediate threshold value.
4. The method for reducing network packet load as described in claim 1, wherein when a second number of second network packets from a second media access control address received within a time window exceeds an abnormal threshold, the second media access control address is recorded in the blacklist.
5. The method for reducing network packet load as described in claim 1, wherein the third media access control address is removed from the blacklist when the number of third network packets from a third media access control address in the blacklist does not exceed an abnormal threshold value within a time window.
6. The method for reducing network packet load as described in claim 1, wherein the blacklist is updated by a central processing unit coupled to the device.
7. The method for reducing network packet load as described in Request 1, wherein an intermediate threshold value is not a fixed value.
8. The method for reducing network packet load as described in claim 1, wherein the network packets are received by the device from the Ethernet physical layer via a Reduced Media Independent Interface (RMII).
9. The method for reducing network packet load as described in claim 1, wherein the device is an Ethernet Media Access Controller (EMAC).
10. An apparatus for reducing network packet load, comprising: One processor; And a computer storage medium coupled to the processor and configured to store computer-readable instructions for instructing the processor to perform the method for reducing network packet load as described in claim 1; wherein the device is an Ethernet Media Access Controller (EMAC).
Citation Information
Patent Citations
Data transmission method, transmitting equipment and receiving equipment
CN106358239A
Server load balance method based on SDN
CN107846445A
FLOW STATE AWARE MANAGEMENT OF QoS THROUGH DYNAMIC AGGREGATE BANDWIDTH ADJUSTMENTS
US20140146679A1
Escalation security method for use in software defined networks
US20150089566A1
Congestion control within a radio access network
US20150215807A1
