Method and apparatus for reducing network packet load

By employing a two-level filtering mechanism and a three-level threshold mechanism, the load of the Ethernet network system is dynamically adjusted, solving the problem of the inability to dynamically adjust the load in existing technologies, thereby reducing packet load and improving system reliability.

CN122268775APending Publication Date: 2026-06-23NUVOTON
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
NUVOTON
Filing Date
2025-07-25
Publication Date
2026-06-23

Smart Images

  • Figure CN122268775A_ABST
    Figure CN122268775A_ABST
Patent Text Reader

Abstract

The present invention provides a method and apparatus for reducing network packet load, which is performed by an apparatus, and the method comprises the steps of: receiving network packets from an Ethernet physical layer into a receiving slot; determining whether a packet count value of the network packets in the receiving slot exceeds an intermediate threshold value; and filtering out first network packets from media access control addresses in a blacklist according to the blacklist when the packet count value exceeds the intermediate threshold value.
Need to check novelty before this filing date? Find Prior Art

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. Background Technology

[0002] An Ethernet network system includes at least one data port for communicating with a link partner according to the Ethernet standard communication protocol. When an Ethernet network system includes more than one data port, it is called a multi-port Ethernet network system. Figure 1 This is a block diagram of an existing multi-port Ethernet network system 100. Network system 100 includes multiple data ports 120A-120N, an Ethernet circuit 130, and a Central Processing Unit (CPU) 140. Ethernet circuit 130 includes an Ethernet physical layer (ePHY) transceiver 132 and an Ethernet Media Access Controller (EMAC) 134. Multiple connected parties located on Ethernet network 110 are coupled to Ethernet network system 100 via data ports 120A-120N. Each of data ports 120A-120N is coupled to the Ethernet physical layer transceiver, and the Ethernet Media Access Controller 134 is coupled to the CPU 140.

[0003] When a connected party sends Ethernet packets to a destination port selected by data ports 120A-120N, the destination port then transmits these Ethernet packets to the Ethernet Media Access Controller 134 via Ethernet Entity 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 Entity 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 network load and improve system reliability. Summary of the Invention

[0006] This disclosure proposes a method for reducing network packet load, performed by an apparatus, comprising: receiving network packets from an Ethernet physical layer into a receive slot; determining whether a packet count value of the network packets located in the receive slot exceeds an intermediate threshold value; and when the packet count value exceeds the intermediate threshold value, filtering out first network packets from media access control addresses 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 blacklist does not exceed an abnormal threshold within a given time window, the third media access control address is removed from the 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 above-described device 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: receive network packets from an Ethernet physical layer into a receive slot; determine whether a packet count value of the network packets located in the receive slot exceeds the intermediate threshold; and when the packet count value exceeds the intermediate threshold, filter 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). Attached Figure Description

[0016] Figure 1 This is a block diagram of an existing multiport Ethernet network system.

[0017] Figure 2 This is a block diagram of an embodiment of the Ethernet network system disclosed herein.

[0018] Figure 3 This diagram shows a flowchart of a method for reducing network packet load according to an embodiment of the present disclosure.

[0019] Figure 4 This illustrates an exemplary operating environment used to implement the embodiments disclosed herein.

[0020] Attached icon number

[0021] 100: Multiport Ethernet System

[0022] 110: Ethernet

[0023] 120A~120N: Data Port

[0024] 130: Ethernet circuit

[0025] 132: ePHY transceiver

[0026] 134:EMAC

[0027] 140: CPU

[0028] 200: Ethernet Network System

[0029] 230: Ethernet circuit

[0030] 232: ePHY transceiver

[0031] 234:EMAC

[0032] 2342: Blacklist Filter

[0033] 2344: ABP Filter

[0034] 240: CPU

[0035] 300: Method

[0036] S305, S310, S315, S320, S325, S330, S335: Step 400: Electronic Device

[0037] 410: Bus

[0038] 412: Memory

[0039] 414: Processor

[0040] 416: Display element

[0041] 418: I / O Ports

[0042] 420:I / O components

[0043] 422: Power Supply Detailed Implementation

[0044] Figure 2 This is a block diagram of an embodiment of the Ethernet network system 200 disclosed herein. In one embodiment, the Ethernet network system 200 includes an Ethernet network circuit 230 and a central processing unit (CPU) 240. The Ethernet network circuit 230 includes an Ethernet physical layer (ePHY) transceiver 232 and an Ethernet media access controller (EMAC) 234, wherein the Ethernet media access controller 234 includes a blacklist filter 2342 and an Accept Broadcast Packet (ABP) filter 2344.

[0045] 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).

[0046] 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 entity layer transceiver 232.

[0047] Network packets are transmitted to Ethernet system 200 through multiple link partners (not shown in the figure) in the Ethernet network. These link partners support full-duplex communication and support either 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).

[0048] 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 Physical 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 away or removed from the receive slot by the Central Processing Unit 240, the counting device decrements the packet count by 1.

[0049] Ethernet Media Access Controller 234 can determine whether a packet count value of a network packet located in the receiving slot exceeds an intermediate threshold value. When the packet count value exceeds the intermediate threshold value, the blacklist filter 2342 in Ethernet Media Access Controller 234 filters out the first network packet from a Media Access Control address in the blacklist according to a blacklist.

[0050] 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 Entity Layer Transceiver 232.

[0051] 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.

[0052] 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. When the counting device in the Ethernet Media Access Controller 234 counts the current packet count as 8, the packet count is below 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.

[0053] 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.

[0054] 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.

[0055] 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.

[0056] In another embodiment, the Ethernet media access controller 234 may also replace the central processing unit 240 in performing the actions of monitoring the number of network packets and updating the blacklist within a single time window.

[0057] 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.

[0058] This should be understandable. Figure 2 The Ethernet circuit 230 shown is an example of an Ethernet system 200 architecture. Figure 2 The Ethernet circuit 230 shown can be implemented via any type of electronic device, such as a reference. Figure 4 The described electronic device 400, such as Figure 4 As shown.

[0059] Figure 3 This diagram shows a flowchart of a method 300 for reducing network packet load according to an embodiment of this disclosure. This method can be... Figure 2 The Ethernet media access controller 234 is implemented in the middle.

[0060] 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).

[0061] In step S310, the Ethernet Media Access Controller determines whether the packet count value of the network packet located in the receiving slot exceeds an intermediate threshold value.

[0062] 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 control address in the blacklist according to a blacklist.

[0063] In step S320, the Ethernet media access controller determines whether the packet count value exceeds a maximum threshold value.

[0064] When the packet count exceeds the maximum threshold ("Yes" in step S320), in step S325, the Ethernet media access controller stops receiving advertising packets.

[0065] When the packet count value does not exceed the maximum threshold value (No in step S320), the process ends and the Ethernet media access controller returns to step S305 to wait for new network packets.

[0066] 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.

[0067] 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.

[0068] 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.

[0069] Method 300 can be implemented, for example, using 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, eliminating the need to send it to the receive slot for central processing unit (CPU) access. When the HDMI detects that the packet count exceeds a 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.

[0070] 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 a blacklist 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.

[0071] It should be noted that, Figure 2 Embodiments of the Ethernet media access controller 234 in the Ethernet circuit 230 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 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.

[0072] The embodiments described herein, including systems, methods / processes, and / or apparatuses, can be implemented using well-known computers (such as...). Figure 4 The electronic device 400 shown is used to implement this. For example, the Ethernet circuit 230 or the 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.

[0073] For details, please refer to the following: Figure 4 , Figure 4The exemplary operating environment shown for implementing the embodiments disclosed herein can generally be considered as electronic device 400. Electronic device 400 is merely one 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.

[0074] This invention can be executed by computer code or machine-usable instructions. These instructions can be computer-executable instructions for a program module, which is executed by a computer or other machine, such as a personal digital assistant or other portable device. Generally, a program module includes routines, programs, objects, components, data structures, etc., and refers to 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.

[0075] refer to Figure 4 Electronic device 400 includes a bus 410 directly or indirectly coupled to the following devices: a 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., an address bus, a data bus, or a combination thereof). Although Figure 4 For simplicity, the various blocks are shown as lines. In reality, the boundaries between the various elements are not specific. For example, the presentation elements of the display device can be regarded as I / O elements; the processor may have memory.

[0076] Electronic device 400 generally includes various computer-readable media. Computer-readable media can be any available media accessible to electronic device 400, including both 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 disks, magnetic disk storage devices or other magnetic storage devices, or any other media that can be used to store desired information and can be accessed by an electronic device 400. Computer storage media itself does not include signals.

[0077] Communication media generally include 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 in 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.

[0078] 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 indications to a user or other device. Exemplary display elements include display screens, etc.

[0079] 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, this input 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 association 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.

[0080] In addition, the processor 414 in the electronic device 400 may also execute the programs and instructions in the memory 412 to perform the actions and steps described in the above embodiments, or other descriptions in the specification.

[0081] Any specific order or hierarchical arrangement of steps disclosed herein is merely illustrative. It should be understood, based on design preferences, 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.

[0082] Although this disclosure has been presented above with examples, it is not intended to limit this case. Any person 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 claims.

Claims

1. A method for reducing network packet load, performed by a device, characterized in that, include: Receive network packets from an Ethernet physical layer into a receive slot; Determine whether the packet count value of the network packet located in the above receiving slot exceeds an intermediate threshold value; as well as When the packet count exceeds the intermediate threshold, the first network packet from a media access control address in the blacklist is filtered out according to a blacklist.

2. The method for reducing network packet load as described in claim 1, characterized in that, Including: 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; The highest threshold value mentioned above is higher than the intermediate threshold value mentioned above.

3. The method for reducing network packet load as described in claim 1, characterized in that, Including: 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 settings. The minimum threshold value mentioned above is lower than the intermediate threshold value mentioned above.

4. The method for reducing network packet load as described in claim 1, characterized in that, When the 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, characterized in that, 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.

6. The method for reducing network packet load as described in claim 1, characterized in that, The blacklist is updated by a central processing unit coupled to the device.

7. The method for reducing network packet load as described in claim 1, characterized in that, The intermediate threshold value is not a fixed value.

8. The method for reducing network packet load as described in claim 1, characterized in that, The aforementioned network packets are received by the aforementioned device from the aforementioned Ethernet physical layer via a simplified media independent interface.

9. The method for reducing network packet load as described in claim 1, characterized in that, The aforementioned device is an Ethernet media access controller.

10. An apparatus for reducing network packet load, characterized in that, include: One processor; as well as 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; The aforementioned device is an Ethernet media access controller.