EP2834950A1 - Verfahren und vorrichtung zur bereitstellung einer dynamischen planung von speicherzugriffen auf einen datenspeicher - Google Patents
Verfahren und vorrichtung zur bereitstellung einer dynamischen planung von speicherzugriffen auf einen datenspeicherInfo
- Publication number
- EP2834950A1 EP2834950A1 EP12722332.9A EP12722332A EP2834950A1 EP 2834950 A1 EP2834950 A1 EP 2834950A1 EP 12722332 A EP12722332 A EP 12722332A EP 2834950 A1 EP2834950 A1 EP 2834950A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- data
- memory
- data memory
- network device
- size
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 230000015654 memory Effects 0.000 title claims abstract description 312
- 238000000034 method Methods 0.000 title claims description 28
- 239000000872 buffer Substances 0.000 claims description 105
- 239000002699 waste material Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 5
- 238000007796 conventional method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007334 memory performance Effects 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9047—Buffering arrangements including multiple buffers, e.g. buffer pools
Definitions
- the invention relates to a method and device within a data network for providing a dynamic scheduling of memory accesses and, in particular, to dynamic bandwidth allocation for a memory connected to a network device.
- Fig. 1 shows a diagram for illustrating the problem underlying the present invention.
- the diagram illustrates the bandwidth efficiency of data packets of variable size which are sent through a conventional digital data interface.
- the data bus is working at a frequency of 100MHz and comprises a data bus width of 256 bits.
- the inherent property of this exemplary digital interface is its minimum burst size of 256 bits. If the data packet size is an integer multiple of the minimum burst size then the bandwidth efficiency is 100% as shown in Fig. 1 . For example, if the data packet size is 32 bytes corresponding to 256 bits, the bandwidth efficiency is 100%.
- the bandwidth efficiency is also 100%.
- the data packet size DPS of a data packet DP is only one byte more than the minimum burst size, for example 33 bytes or 65 bytes, the bandwidth efficiency degrades considerably as illustrated in Fig. 1 .
- the bandwidth efficiency drops almost to 50% as shown in Fig. 1 and increases gradually until a bandwidth efficiency of 100% is reached at a data packet size of 64 bytes. Accordingly, there is a need for an apparatus and a method for providing a dynamic scheduling and bandwidth allocation which increases the bandwidth efficiency for data packets with variable data packet size.
- said apparatus is adapted to read egress data packets to be transmitted to a data link of said data network from the data memory slices of the data memory in read operations such that a misbalance between read operations from different data memory slices of said data memory can be minimized.
- the bursts comprise read bursts where data is read from a predetermined number of consecutive memory addresses.
- the bursts comprise also write bursts where data is written to a predetermined number of con- secutive memory addresses.
- the number of memory devices multiplied with the memory device width is equal to the memory width of the data memory.
- the memory width is equal to the bus width of a data bus of a digital interface.
- each memory buffer is adapted to store several bursts and comprises a memory buffer size which corresponds to a number of bursts stored in the respective memory buffer.
- a queue is provided having a memory buffer pointer managed by a queue manager of the apparatus.
- the memory size of the data memory is equal to the memory buffer size multiplied by the number of memory buffers.
- the invention further provides a method for dynamic scheduling of memory accesses to a data memory as a second aspect of the present invention.
- said method comprises the steps of:
- the store and forward network device is formed by a network router.
- the store and forward network device is formed by a network switch.
- Fig. 1 shows a diagram for illustrating the problem underlying the method and apparatus according to the present invention
- the data network device 1 as shown in Fig. 2 is adapted to write ingress data packets DPs received at its ingress data ports, from a data source of the data network into data memory slices DMS of the data memory 4 in write operations. Writing of ingress data packets DPs into data memory slices DMS of the data memory 4 is performed such that the received data packets DPs are evenly distributed in write operations between the different data memory slices DMS of the data memory 4.
- the number of bits in a data burst is the burst size BS of the data burst B and corresponds to a burst length (BL) multiplied with the slice size SS of a data memory slice DMS of the data memory 4:
- M is number of memory buffers MB
- MBS is the memory buffer size of a memory buffer.
- diagram 3A shows a data transport of the data packets DPs with slicing as performed by the apparatus and method according to the first and second aspect of the present invention.
- Fig. 3A three data packets DP1 , DP2, DP3 are transported via the digital interface, wherein the first data packet comprises 100 bytes corresponding to 800 bits so that 4 x 256 bits are transported consecutively via the data bus width of 256 bits.
- the second data packet DP2 comprises 50 bytes corresponding to 400 bits so that 2 x 256 bits have to be transported via the data bus width of 256 bits.
- the buffer size is 4 times the minimum data packet size DPSmin then in the worst case scenario of the data network 3 ⁇ 4 of the memory is wasted because no more than one data packet DP can be stored in a data buffer. Accordingly, the data memory is implemented with 4 times the actual traffic stored during RTT time.
- a slicing is performed, wherein a wide bus is divided to narrow busses that are independent from each other. This property is taken as an advantage in the case of slicing by choosing the slice where to store the received data packet DP.
- a dequeuing is performed wherein a data packet DP is read from the data memory 4 and forwarded to a data link within the data network. As opposed to the enqueuing operation the dequeuing operation specifies precisely which data packet DP is to be sent.
- the method and device according to the present invention with the partitioning of the data bus and memory into slices reduces waste of bandwidth. Balancing of the slices can be performed by mechanisms comprising a static slicing by design or a dynamic slicing during operation. With a static slicing the slice size SS is selected such that even the minimum data packet is spread over more than one slice. Data packets DP can be written such that the slices always toggle. With dynamic slicing it is possible to perform a write balance for read (W4R). When the mechanism detects that one slice is utilized more than the other, it inserts the write operation in unbalanced manner but in the opposite direction. Further, it is possible to perform a read balance for read (R4R). When the method detects that one slice is utilized more than the other it reads the next slice in an unbalanced manner but in the opposite direction. It does this by changing the order that is necessary as explained above.
- W4R write balance for read
- R4R read balance for read
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2012/059035 WO2013170886A1 (en) | 2012-05-15 | 2012-05-15 | A method and device for providing a dynamic scheduling of memory accesses to a data memory |
Publications (1)
Publication Number | Publication Date |
---|---|
EP2834950A1 true EP2834950A1 (de) | 2015-02-11 |
Family
ID=46146846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP12722332.9A Withdrawn EP2834950A1 (de) | 2012-05-15 | 2012-05-15 | Verfahren und vorrichtung zur bereitstellung einer dynamischen planung von speicherzugriffen auf einen datenspeicher |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP2834950A1 (de) |
CN (1) | CN104272682A (de) |
WO (1) | WO2013170886A1 (de) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08316968A (ja) * | 1995-05-23 | 1996-11-29 | Toshiba Corp | Atmスイッチ |
US6987760B2 (en) * | 2001-03-05 | 2006-01-17 | International Business Machines Corporation | High speed network processor |
DE10317370B4 (de) * | 2003-04-15 | 2010-05-12 | Infineon Technologies Ag | Scheduler zum Melden einer Ablaufzeit |
CN1965548B (zh) * | 2004-04-12 | 2012-08-22 | 联合设备技术公司 | 转送突发数据的方法和装置 |
-
2012
- 2012-05-15 CN CN201280072778.2A patent/CN104272682A/zh active Pending
- 2012-05-15 EP EP12722332.9A patent/EP2834950A1/de not_active Withdrawn
- 2012-05-15 WO PCT/EP2012/059035 patent/WO2013170886A1/en active Application Filing
Non-Patent Citations (1)
Title |
---|
See references of WO2013170886A1 * |
Also Published As
Publication number | Publication date |
---|---|
CN104272682A (zh) | 2015-01-07 |
WO2013170886A1 (en) | 2013-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11916781B2 (en) | System and method for facilitating efficient utilization of an output buffer in a network interface controller (NIC) | |
CN106489136B (zh) | 用于在可扩展存储器系统协议中调节包传输的系统及方法 | |
US7558270B1 (en) | Architecture for high speed class of service enabled linecard | |
US7782849B2 (en) | Data switch and switch fabric | |
US7760726B2 (en) | Compact packet switching node storage architecture employing double data rate synchronous dynamic RAM | |
WO2010075201A1 (en) | Packet aggregation and fragmentation at layer-2 over a managed network | |
US20150215226A1 (en) | Device and Method for Packet Processing with Memories Having Different Latencies | |
US11700209B2 (en) | Multi-path packet descriptor delivery scheme | |
US8223788B1 (en) | Method and system for queuing descriptors | |
CN109861931B (zh) | 一种高速以太网交换芯片的存储冗余系统 | |
US8514700B2 (en) | MLPPP occupancy based round robin | |
US7124231B1 (en) | Split transaction reordering circuit | |
US9274586B2 (en) | Intelligent memory interface | |
WO2011085934A1 (en) | A packet buffer comprising a data section and a data description section | |
US8549216B2 (en) | Memory management using packet segmenting and forwarding | |
US20160212070A1 (en) | Packet processing apparatus utilizing ingress drop queue manager circuit to instruct buffer manager circuit to perform cell release of ingress packet and associated packet processing method | |
US20040131055A1 (en) | Memory management free pointer pool | |
US7822051B1 (en) | Method and system for transmitting packets | |
EP1508225B1 (de) | Datenspeicherverfahren mit externem und on-chip speicher in einer paketvermittlungseinheit | |
WO2023202294A1 (zh) | 一种数据流保序方法、数据交换装置及网络 | |
EP1362464A2 (de) | Netzschnittstelle | |
US8572349B2 (en) | Processor with programmable configuration of logical-to-physical address translation on a per-client basis | |
EP2834950A1 (de) | Verfahren und vorrichtung zur bereitstellung einer dynamischen planung von speicherzugriffen auf einen datenspeicher | |
Kabra et al. | Fast buffer memory with deterministic packet departures | |
CN113347112B (zh) | 一种基于多级缓存的数据包转发方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20141107 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
DAX | Request for extension of the european patent (deleted) | ||
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20171201 |