KR101407743B1 - 패킷 처리 장비내에서의 플로우 데이터의 저장 관리 방법 및 패킷 처리 장비 - Google Patents

패킷 처리 장비내에서의 플로우 데이터의 저장 관리 방법 및 패킷 처리 장비 Download PDF

Info

Publication number
KR101407743B1
KR101407743B1 KR1020127011201A KR20127011201A KR101407743B1 KR 101407743 B1 KR101407743 B1 KR 101407743B1 KR 1020127011201 A KR1020127011201 A KR 1020127011201A KR 20127011201 A KR20127011201 A KR 20127011201A KR 101407743 B1 KR101407743 B1 KR 101407743B1
Authority
KR
South Korea
Prior art keywords
packet
flow data
flow
processing equipment
memory
Prior art date
Application number
KR1020127011201A
Other languages
English (en)
Other versions
KR20120070595A (ko
Inventor
게오르그 포스트
루도빅 노이리에
Original Assignee
알까뗄 루슨트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 알까뗄 루슨트 filed Critical 알까뗄 루슨트
Publication of KR20120070595A publication Critical patent/KR20120070595A/ko
Application granted granted Critical
Publication of KR101407743B1 publication Critical patent/KR101407743B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

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

Abstract

플로우 인식 네트워크 노드들에서 제한된 비용에 대해 전송 데이터 처리량을 변경하지 않으면서 플로우 데이터를 저장하기 위해 데이터 패킷들을 처리하기 위한 방법 및 장치가 개시된다. 플로우 인식 네트워크 노드들에서 데이터 패킷들을 처리하기 위한 방법 및 장치는 고속 액세스 내부 메모리와 저속 액세스 외부 메모리를 교대하여 사용하는 것을 포함하며, 이는 대기시간은 적으면서도 포괄적인 플로우 인식을 제공한다. 플로우 인식 네트워크 노드들에서 데이터 패킷들을 처리하기 위한 방법은 본 기술분야에 알려진 플로우 인식 네트워크 노드들의 고속 액세스 메모리의 광범위한 사용의 요구를 극복하는 데에 특히 유용하다.

Description

패킷 처리 장비내에서의 플로우 데이터의 저장 관리 방법 및 패킷 처리 장비{METHOD FOR PROCESSING DATA PACKETS IN FLOW-AWARE NETWORK NODES}
본 발명은 통신 네트워크 분야, 더 정확하게는 패킷 라우터들 내에서의 데이터 패킷 처리의 분야에 관한 것이다.
데이터 패킷 라우터들은 네트워크 노드들 내에 위치된다. 플로우 인식(flow aware) 패킷 네트워크들의 경우에서, 상기 라우터들, 그리고 특히 네트워크의 에지들에 위치된 노드들에 대응하는 라우터들은 시스템에 진입하는 플로우들의 상태 정보의 메모리를 유지해야만 한다. 그러한 기록은 네트워크 노드들에 의해 수신되는 모든 플로우에 대해 달성되어야만 한다. 고속 채널들(≥10Gb/s)의 경우에는, 패킷 처리 동안의 지연을 방지하기 위해 플로우 ID들에 연관된 상기 플로우 상태 정보가 가능한 한 빨리 이용가능하게 될 필요가 있다.
게다가, 플로우 크기는 몇 개(예를 들어, 열두 개)의 패킷을 포함하는 "마우스(mouse)" 플로우로부터 수백 개의 패킷을 포함하는 "엘리펀트(elephant)" 플로우까지 달라질 수 있다. 그러므로, 메모리 용량은 어떠한 상황이라도 대처하기에 충분할 정도로 클 필요가 있다.
따라서, 전송된 패킷들이 그 전송의 데이터 비트레이트에 따라 처리될 수 있도록 플로우 정보 저장소가 대용량 메모리를 저장된 데이터에 대한 감소된 대기시간의 액세스와 결합하는 것이 필요하다. 더욱이, 그러한 메모리의 비용은 광범위한 사용을 위해 가능한 한 낮게 유지되어야만 한다.
그러므로, 본 발명의 목적은 제한된 비용에 대해 전송 데이터 처리량을 변경하지 않으면서 플로우 데이터를 저장하기 위한 장비를 제공하는 것이다.
따라서, 본 발명은 패킷 처리 장비 내에서 플로우 데이터의 저장을 관리하기 위한 방법으로서, 상기 장비는 다수의 별개의 패킷 플로우의 무작위 집합체인 패킷 스트림을 처리하고, 고속 액세스 내부 메모리 및 저속 액세스 외부 메모리를 포함하며, 상기 방법은
- 패킷 처리 장비의 입력에서 데이터 패킷을 수신하는 단계,
- 데이터 패킷 헤더로부터 플로우 ID를 추출하고, 그 플로우 ID를 저속 액세스 외부 메모리 내에서 대응하는 플로우 데이터가 저장되어 있는 어드레스에 맵핑하는 단계,
- 상기 수신된 데이터 패킷이 새로운 플로우에 대응하는지를 판단하는 단계,
상기 수신된 데이터 패킷이 그것의 플로우의 제1 데이터 패킷인 경우,
- 새로운 플로우 데이터 레코드를 생성하는 단계,
상기 플로우의 적어도 하나의 다른 패킷이 패킷 처리 장비 내에 수신되어 있는 경우,
- 상기 수신된 패킷에 대응하는 플로우 데이터가 고속 액세스 내부 메모리 내에서 이용가능한지를 판단하는 단계,
상기 대응하는 플로우 데이터가 고속 액세스 내부 메모리 내에서 이용가능한 경우,
- 상기 플로우 데이터를 찾는 단계,
대응하는 플로우 데이터가 고속 액세스 내부 메모리 내에서 이용가능하지 않은 경우,
- 저속 액세스 외부 메모리로부터 상기 대응하는 플로우 데이터를 검색하고, 그 대응하는 플로우 데이터를 고속 액세스 내부 메모리 내에 저장하는 단계,
- 고속 액세스 내부 메모리로부터의 대응하는 플로우 데이터를 사용하여 패킷 처리를 달성하는 단계,
주어진 플로우의 더 이상의 패킷이 패킷 처리 장비 내에서 찾아지지 않을 때,
- 고속 내부 메모리 내의 플로우 데이터로부터 저속 액세스 외부 메모리 내의 대응하는 플로우 데이터를 갱신하는 단계,
- 대응하는 플로우 데이터 갱신을 보장하는 단계를 포함하는 방법에 관련된다.
본 발명의 다른 양태에 따르면, 플로우 ID를 추출하며 그 플로우 ID를 대응하는 어드레스에 맵핑하는 단계의 시작 시간과 패킷을 처리하는 단계의 시작 시간 사이의 지연은 플로우 ID를 대응하는 어드레스에 맵핑하는 시간에 저속 액세스 외부 메모리의 액세스 대기시간을 더한 것보다 큰 지속시간에 대응한다.
본 발명의 또 다른 양태에 따르면, 대응하는 플로우 데이터 갱신을 보장하는 단계는 플로우 데이터를 패킷을 처리하는 단계의 종료 시간 이후에 저속 액세스 외부 메모리의 기입-액세스 대기시간보다 큰 지연 동안 고속 액세스 내부 메모리 내에 보유함으로써 달성된다.
본 발명의 추가의 양태에 따르면, 고속 액세스 내부 메모리는 온-칩 정적 랜덤 액세스 메모리(SRAM)에 대응하고, 저속 액세스 외부 메모리는 오프-칩 동적 랜덤 액세스 메모리(DRAM)에 대응한다.
본 발명의 다른 양태에 따르면, 상기 방법은 대응하는 플로우 데이터의 고속 액세스 내부 메모리의 메모리 공간을 비우는 것에 대응하는 추가 단계를 포함하며, 상기 추가 단계는 상기 플로우의 패킷이 패킷 처리 장비 내에서 수신되는 경우에 최신 플로우 데이터가 사용될 것을 보장하기 위해 대응하는 플로우 데이터 갱신을 보장하는 단계 이후에 달성된다.
본 발명의 또 다른 양태에 따르면, 고속 액세스 내부 메모리의 용량은 장비 내에서의 이송에서의 최대의 가능한 패킷 수에 대응하는 플로우 데이터를 기록하기 위한 필수 용량에 대응한다.
본 발명의 추가의 양태에 따르면, 데이터 패킷 헤더로부터 플로우 ID 및 메모리 어드레스를 추출하는 단계는 체계화된 데이터 보관소들에 의해 달성된다.
본 발명의 다른 양태에 따르면, 체계화된 데이터 보관소들은 라우팅 룩업 테이블들이다.
본 발명의 또 다른 양태에 따르면, 패킷 처리 장비는 패킷 파이프라인을 포함하고, 적어도 하나의 프로세스는 상기 패킷 파이프라인에서 전송되는 패킷들에 대해 순차적으로 적용된다.
본 발명의 추가의 양태에 따르면, 고속 액세스 내부 메모리는 분리하여 어드레스가능한 섹터들로 구획화되고, 상이한 동시적 프로세스들의 상관관계로 분산된다.
본 발명의 다른 실시예에 따르면, 수신된 패킷들의 타임 슬롯들 중 저속 액세스 외부 메모리에 액세스하기 위한 부분은 내부 서비스 패킷들을 위해 예약된다.
본 발명의 또 다른 실시예에 따르면, 패킷 처리 장비의 입력에서의 데이터 패킷의 수신에서, 패킷 페이로드는 패킷 헤더로부터 분리되고, 상기 패킷 페이로드는 메모리 내에 저장되며, 고속 액세스 내부 메모리로부터의 대응하는 플로우 데이터를 사용하여 패킷 처리를 달성하는 단계는 패킷 헤더에 적용되고, 패킷 페이로드 및 패킷 헤더는 패킷 헤더 처리 후에 합쳐진다.
본 발명은 또한 고속 액세스 내부 메모리 및 저속 액세스 외부 메모리를 포함하는 패킷 처리 장비로서, 상기 패킷 처리 장비는 또한
- 패킷 처리 장비의 입력에서 데이터 패킷을 수신하고,
- 데이터 패킷 헤더로부터 플로우 ID 및 메모리 어드레스를 추출하고,
- 추출된 플로우 ID 및 어드레스에 대응하는 플로우 데이터를 저속 액세스 외부 메모리 내에 저장하고,
- 저속 액세스 외부 메모리로부터 상기 플로우 데이터를 검색하고, 그 플로우 데이터를 고속 액세스 내부 메모리 내에 저장하고,
- 고속 액세스 내부 메모리로부터의 대응하는 플로우 데이터를 사용함으로써 패킷 처리를 달성하고,
- 플로우의 더 이상의 패킷이 패킷 처리 장비 내에서 찾아지지 않을 때, 저속 액세스 외부 메모리의 대응하는 플로우 데이터를 갱신하고,
- 대응하는 플로우 데이터를 고속 액세스 내부 메모리 내에 미리 정해진 시간 동안 보유하는 수단을 포함한다.
본 발명의 다른 양태에 따르면, 패킷 처리를 달성하는 것은 패킷 처리에 따른 고속 액세스 내부 메모리 내의 플로우 데이터의 수정을 포함한다.
본 발명의 또 다른 양태에 따르면, 고속 액세스 내부 메모리는 온-칩 정적 랜덤 액세스 메모리(SRAM)에 대응하며, 저속 액세스 외부 메모리는 오프-칩 동적 랜덤 액세스 메모리(DRAM)에 대응한다.
본 발명의 추가의 양태에 따르면, 상기 수단은 또한 고속 액세스 내부 메모리의 메모리 공간에서 대응하는 플로우 데이터를 제거하도록 구성된다.
도 1은 패킷 처리 장비의 가능한 실시예의 도면이다
도 2는 본 발명의 실시예의 상이한 단계들을 나타낸 개요도이다.
도 3은 서비스 패킷들을 관리하는 데에 요구되는 장비의 구현을 표현한 도면이다.
도 4는 패킷 헤더 처리 장비의 가능한 실시예의 도면이다.
여기에서 사용되는 바와 같이, "플로우(flow)"라는 용어는 공통 속성들, 특히 공통 플로우 ID를 갖는 복수의 데이터 패킷을 지칭한다.
여기에서 사용되는 바와 같이, "플로우 ID"라는 용어는 데이터 플로우의 식별정보를 지칭하며, 상기 식별정보는 대응하는 데이터 플로우를 나타내는 특징들 또는 인자들을 포함한다.
여기에서 사용되는 바와 같이, "액세스 대기시간"이라는 용어는 코어 장치 내에서의 판독 요청의 트리거와 코어 장치 내에서의 데이터가 유효하게 이용가능하게 되는 것 사이에서, 또는 기입 요청과 메모리 장치 내의 저장소의 유효한 갱신 사이에서 요구되는 시간을 지칭한다.
도 1은 본 발명에 따른 패킷 처리 장비(1)의 실시예의 예시를 나타낸 것이다. 상기 장치는 예를 들어 패킷 파이프라인일 수 있는 패킷 프로세서 유닛(3)을 포함한다. 패킷들(4)은 입력(5)에서 수신된 다음, 패킷 스트림으로서 패킷 프로세서 유닛(3)을 따라 상기 패킷 프로세서 유닛(3)의 출력(7)으로 이송되게 된다.
도 2는 도 1에서 설명된 장비에 기초하는 본 발명의 실시예의 상이한 단계들을 나타낸 것이다.
패킷 프로세서 유닛의 입력(5)에서의 수신 시에(단계(101)), 수신된 패킷에 대응하는 플로우 ID를 추출하기 위해 패킷 헤더들이 판독된다(단계(102)). 실제로, 패킷들(4)은 복수의 플로우로부터 무작위로 수신되고, 상기 플로우들은 상이한 기원들(origins) 및 목적지들을 갖는다. 더욱이, 상이한 플로우들은 상이한 크기들(패킷들의 수)을 가질 수 있다. 따라서, 수신된 패킷의 플로우 ID는 외부 저속 액세스 메모리(9) 내에 이미 기록되어 있는 플로우 데이터가 존재하는 플로우 ID들과 비교된다. 상기 메모리는 예를 들어 오프-칩 동적 랜덤 액세스 메모리(DRAM)일 수 있다.
DRAM에 대하여, 액세스 대기시간이 단순히 저속의 데이터 전송을 암시하지는 않는다는 점에 유의해야 한다. 실제로, 데이터 전송 자체는 버스트로 달성될 수 있으며, 따라서 고속 데이터 레이트에 도달할 수 있다.
플로우 ID들의 상기 비교는 체계화된 데이터 보관소(11), 예를 들어 라우팅 룩업 테이블 또는 TCAM(ternary content addressable memory) 또는 복수의 해시 테이블에서 달성된다. 상기 체계화된 데이터 보관소(11) 내에서 블룸(Bloom) 필터들이 사용될 수 있다는 것 또한 유의해야 한다. 알려진 플로우 ID에 일치한 것의 결과로서, 플로우 ID는 외부 저속 액세스 메모리(9) 내에서 대응하는 플로우 데이터가 저장되어 있는 어드레스에 맵핑된다.
또한, 그러한 비교는 수신된 패킷이 새로운 플로우의 제1 패킷인지를 판단하는 것을 허용한다 (단계(103)). 그러한 경우에서, 그 플로우 ID 내에 포함되는 데이터 및 동일 플로우에 관련된 후속 데이터 전부를 저장하기 위해, 새로운 플로우 데이터 레코드가 저속 액세스 외부 메모리(9) 내에 생성된다(단계(104)).
본 발명의 양태는 고속 액세스 내부 메모리(13), 예를 들어 온-칩 정적 랜덤 액세스 메모리(SRAM)를 저속 액세스 외부 메모리(9)와 조합하는 것이다. 그러한 조합은 대용량 메모리 및 감소된 액세스 대기시간을 제공하는 동시에, 상기 메모리의 비용을 제한하는 것을 허용한다. 따라서, 단계(104)에서, 고속 액세스 내부 메모리(13)의 빈 메모리 공간(메모리의 빈 캐시 라인이라고도 칭해짐)이 패킷에 할당된다.
고속 액세스 내부 메모리(13)의 크기를 감소시키기 위해(그리고, 그에 따라 비용을 감소시키기 위해), 패킷 프로세서 유닛(3) 내에서 이송 중인 패킷들에 관련된 플로우 데이터만이 고속 액세스 내부 메모리(13) 내에 배치된다. 그러므로, 고속 액세스 내부 메모리(13)의 용량은 전체 패킷 프로세서 유닛(3)을 따른 상이한 플로우들에 속하는 단일 패킷들만을 갖는 패킷 스트림에 대응하는, 메모리 요구조건에 관한 최악의 경우를 다루기에 충분할 정도로 커야만 한다. 그러한 경우에서, 이송 중인 패킷들(4) 중 어느 것에 대해서도 메모리 공간이 요구된다.
플로우의 제1 패킷이 패킷 처리 장비(1)의 입력에서 수신될 때, 대응하는 최초 플로우 데이터는 저속 액세스 외부 메모리(9) 내에 저장되며, 플로우의 제2 또는 나중의 패킷이 수신될 때, 상기 플로우 데이터는 외부 메모리로부터 검색된다. 두 가지 경우 모두에서, 상기 데이터는 고속 액세스 내부 메모리(13)의 할당된 빈 메모리 공간 내로 복사된다(단계(105)).
그 다음, 패킷 프로세서 유닛(3) 내에서의 이송 동안, 패킷은 상이한 프로세스들(15)을 거친다(단계(106)). 상기 프로세스들(15)은 예를 들어 헤더 수정, 쉐이핑(shaping)과 같은 필터링 프로세스, (패킷 또는 비트 카운터 증분과 같은) 플로우 통계의 수정, 정체 비트의 갱신 또는 플로우 비트레이트 평균 결정일 수 있다.
도 1에 도시된 구현에 의해, 상이한 프로세스들에 대해 요구되는 플로우 데이터가 고속 액세스 내부 메모리(13) 내에서 이용가능해져서, 상기 데이터에 액세스하기 위한 대기시간들이 감소되고, 패킷들의 고속 비트레이트 전송을 방해하지 않게 된다.
게다가, 상이한 프로세스들은 플로우 데이터를 수정하여, 플로우 데이터의 수정된 값들을 갱신하기 위해서도 메모리의 고속 액세스가 필요하게 한다. 플로우의 패킷이 패킷 프로세서 유닛의 출력에 도달할 때, 단계(107)에서 판단되는 패킷 프로세서 유닛(3) 내에서 이송 중인 동일 플로우의 패킷들의 존재 또는 부재의 상관관계로 상이한 경우들이 발생할 수 있다.
동일 플로우의 다른 패킷이 패킷 프로세서 유닛(3) 내에서 이송 중인 경우, 이송 중인 상기 새로운 패킷은 고속 액세스 내부 메모리(13)로부터의 동일한 플로우 데이터를 이용할 것이므로, 플로우 데이터는 상기 고속 액세스 내부 메모리(13) 내에 남아있게 된다. 그 다음, 패킷 프로세스가 종료한다(단계(108)).
패킷 프로세서 유닛(3) 내에서 이송 중인 다른 패킷이 존재하지 않는 경우, 최신 플로우 데이터가 저속 액세스 외부 메모리(9) 내로 복사되고(단계(109)), 결국에는 상기 데이터를 소거하는 것에 의해 고속 액세스 내부 메모리 내의 이러한 플로우 데이터에 대응하는 메모리 공간이 비워지고(단계(110)), 그러면 상기 메모리는 다른 패킷을 위해 재사용될 수 있다.
따라서, 패킷 프로세서 유닛(3)의 입력(5)에서 상기 패킷 프로세서 유닛(3)을 통해 전송된 선행 패킷을 갖는 플로우에 속하는 패킷이 수신될 때, 상기 플로우 데이터는 이미 존재하므로 어떠한 새로운 플로우 데이터 레코드도 생성될 필요가 없다. 그러나, 플로우의 선행 패킷이 여전히 패킷 프로세서 유닛(3) 내에서 이송 중인지에 대한 확인이 필요하다(단계(111)).
두 가지의 구별되는 경우가 발생할 수 있다. 플로우의 선행 패킷이 여전히 패킷 프로세서 유닛(3) 내에서 이송 중인 경우, 플로우 데이터는 여전히 고속 액세스 내부 메모리(13) 내에서 이용가능하고, 새롭게 수신된 패킷 상에서의 프로세스들을 달성하기 위해 사용될 것이다. 그러한 경우에서 다음 단계는 단계(106)이다.
이와 달리, 플로우의 선행 패킷이 이미 패킷 프로세서 유닛(3)의 출력(7)을 떠났다면, 그것은 대응하는 플로우 데이터가 고속 액세스 내부 메모리(13)로부터 소거되었다는 것을 의미하고, 저속 액세스 외부 메모리(9) 내에 기록된 대응하는 플로우 데이터가 고속 액세스 내부 메모리(13) 내로 복사된다(단계(112)).
더욱이, 플로우의 끝에서, 저속 액세스 외부 메모리(9)는 또한 대응하는 플로우 데이터를 삭제함으로써 비워진다. 플로우의 끝은 예를 들어 동일 플로우의 2개의 패킷 간의 최대 시간(예를 들어 2초)을 설정함으로써 결정될 수 있다. 따라서, (2초의) 타이머가 만료되고 나면, 플로우는 종료된 것으로 간주되며, 대응하는 데이터가 메모리(9)로부터 소거된다.
게다가, 고속 액세스 내부 메모리(13)는 주어진 섹터가 주어진 프로세스에 대해 사용되도록 분리하여 어드레스가능한 섹터들로 구획될 수 있다. 그 결과, 하나의 어드레스가능한 섹터가 하나의 프로세스에 대응한다.
본 발명의 다른 양태에 따르면, 패킷 처리의 정확성을 보장하기 위해, 앞에서 설명된 단계들 간에서 타이밍이 준수되어야 한다.
시간축은 도 1의 하단에 나타나 있다. 시간 T1은 패킷 프로세서 유닛(3)의 입력에서의 패킷의 수신에 대응한다. 시간 T2는 저속 액세스 외부 메모리(9)로부터 고속 액세스 내부 메모리(13)를 향한 데이터 전송 또는 데이터 복사의 완료에 대응한다.
플로우 데이터가 고속 액세스 내부 메모리(13)로 전달될 것을 보장하기 위해, T1과 T2 사이의 지연은 외부 메모리(9)에의 액세스의 대기시간과 동일하거나 그보다 커야만 한다.
시간 T3는 고속 액세스 내부 메모리(13)로부터 저속 액세스 외부 메모리(9)로의 최신 플로우 데이터의 전달의 시작에 대응한다. 시간 T4는 고속 액세스 내부 메모리(13) 내에서의 플로우 데이터의 소거에 대응한다.
데이터 저장을 보장하고 최신 데이터의 사용을 보증하기 위해, T3와 T4 사이의 지연은 외부 메모리(9)로의 기입-액세스의 대기시간과 동일하거나 그보다 커서, 최신 데이터의 저장이 시간 T4에서 완료되게 해야만 한다. 실제로, 선행 패킷의 T3와 T4 사이의 지연 동안 패킷 프로세서 유닛(3)의 입력(5)에서 플로우의 새로운 패킷이 도달한 경우, 그러한 지연은 고속 액세스 내부 메모리(13) 내에 여전히 최신 데이터를 갖는 것을 허용한다. 패킷 프로세서 유닛(3)의 입력(5)에서의 플로우의 새로운 패킷의 도달이 동일 플로우의 선행 패킷의 시간 T4 이후에 발생하는 경우, 저속 액세스 외부 메모리(9) 내에 기록되는 데이터는 최신의 것이고 검색될 것이다. 도달이 시간 T3와 T4 사이에서 발생하는 경우, 저속 외부 메모리 내로의 플로우 데이터의 복사가 아직 완료되지 않았으므로, 고속 내부 메모리 내에 여전히 존재하는 플로우 데이터가 사용된다.
본 발명의 다른 양태에 따르면, 패킷 프로세스 장비들의 적절한 기능을 보증하기 위해, 서비스 패킷들이 사용되고 데이터 패킷들 간에서 패킷 프로세서 유닛(3) 내에서 전송된다.
도 3은 이러한 서비스 패킷들의 구조를 나타낸 것이다. 체계화된 데이터 보관소(11)에 의한 플로우 ID의 분석 후에, 데이터 패킷들은 그들의 플로우 ID와 함께 다중화기(17)의 입력에 전송된다. 다중화기의 다른 입력들은 클린업 서비스 패킷들을 제공하는 데이터베이스 클린업 생성기(19) 및 제어/관리 서비스 패킷들을 제공하는 노드 제어, 관리 및 지식 구축 유닛(21)에 접속된다.
따라서, 서비스 패킷들이 데이터 패킷 스트림 내에 삽입된다. 이것은 예를 들어 타임 슬롯들을 수정함으로써 달성될 수 있다. 예를 들어, 50㎱ 대신에 40㎱ 액세스를 사용하면, 내부 서비스 타임 슬롯이라고 칭해지는 하나의 추가의 타임 슬롯이 4개의 타임 슬롯(데이터 패킷 타임 슬롯)마다 추가될 수 있다. 상기 내부 서비스 패킷들은 메모리들 및 데이터베이스들 내에서의 쓸모없는 데이터의 삭제를 제어하고, 또한 노드의 다른 장비들과 제어, 모니터링 또는 관리 정보를 교환한다.
패킷 프로세서 유닛(3)의 출력에서, 패킷들은 역다중화기(23)에 전송되고, 여기에서 데이터 패킷들은 그들의 목적지(25)를 향해 보내지는 반면, 서비스 응답 패킷들은 클린업 서비스 패킷들의 경우에는 데이터베이스 클린업 생성기(19)로 되돌려 보내지고, 제어/관리 패킷들의 경우에는 노드 제어/관리 유닛(21)으로 되돌려 보내지며, 상기 패킷들은 예를 들어 처리되거나 생성되거나 삭제된 상이한 플로우들에 관한 통계 정보를 지닌다.
더욱이, 통계 정보는 데이터베이스 클린업 생성기로부터 제어/관리 유닛(21)으로 전송된다(화살표(27)).
게다가, 정확한 기능을 위해 요구되는 경우, 또는 패킷 프로세서 유닛(3) 내의 유휴 기간들 및 어떠한 처리도 필요로 하지 않는 페이로드를 갖는 대형 패킷들의 지연 동안의 경우, "미사용" 데이터 패킷 타임 슬롯들은 내부 서비스 타임 슬롯들로 변환될 수 있음에 유의해야 한다.
본 발명의 다른 실시예에 따르면, 패킷 페이로드들이 변경되지 않은 채로 남아있는 동안에는 패킷 헤더들만이 처리되고, 이는 적절한 경우에 처리를 가속화하는 것을 허용한다.
도 4에 도시되어 있는 바와 같이, 시간 T'1에서 패킷이 수신된다. 헤더 부분만이 패킷 헤더 프로세서 유닛(3')에 전송되는 한편, 패킷 페이로드는 저속 액세스 외부 메모리(9)와 유사한 큐 메모리(9') 내에 저장된다. 앞에서와 같이, 플로우 ID는 헤더로부터 추출되고, 저속 액세스 외부 메모리(9) 상의 어드레스에 맵핑된다. 시간 T'2에서, 한편에서는 플로우 데이터가 저속 액세스 외부 메모리(9)로부터 고속 액세스 내부 메모리(13)로 전송되는 반면, 다른 편에서는 페이로드가 저장되는 메모리 공간의 저장 포인터가 패킷 헤더 처리 유닛(3')에 보내진다. 그 다음, 프로세스들(15)이 패킷 헤더들에 적용된다. 시간 T'3에서, 한편에서는 최신 플로우 데이터가 고속 액세스 내부 메모리(13)로부터 저속 액세스 외부 메모리(9)로 보내지는 반면, 다른 편에서는 프로세서가 포인터 및 처리된 패킷 헤더를 큐 메모리(9')에 되돌려 보낸다. 패킷의 상태에 따라, 완전한 패킷 컨텐츠가 시간 T'4에서 큐 메모리로부터 최종적으로 복구되거나, 헤더가 추후의 전달을 위해 페이로드와 함께 버퍼링된다. 상기 버퍼링은 큐 및 트래픽 관리자(27)에 의해 관리된다. 어떠한 큐잉도 필요로 하지 않는 패킷들은 컷-스루 다중화기(29)를 통해 즉시 출력에 보내질 수 있고, 그렇지 않으면 패킷 전달 스케줄이 큐 및 트래픽 관리자(27)에 의해 관리된다.

Claims (16)

  1. 패킷 처리 장비(1) 내에서 플로우 데이터의 저장을 관리하기 위한 방법으로서, 상기 패킷 처리 장비(1)는 패킷들(4)의 다수의 별개의 플로우의 무작위 집합체인 패킷 스트림을 처리하며 고속 액세스 내부 메모리(13) 및 저속 액세스 외부 메모리(9)를 포함하며, 상기 방법은
    - 상기 패킷 처리 장비(1)의 입력에서 데이터 패킷을 수신하는 단계(101)와,
    - 데이터 패킷 헤더로부터 플로우 ID를 추출하고, 그 플로우 ID를 상기 저속 액세스 외부 메모리 내에서 대응하는 플로우 데이터가 저장되어 있는 어드레스에 맵핑하는 단계(102)와,
    - 상기 수신된 데이터 패킷이 새로운 플로우의 첫 번째 데이터 패킷에 대응하는지를 판단하는 단계(103)와,
    상기 수신된 데이터 패킷이 상기 새로운 플로우의 첫 번째 데이터 패킷인 경우,
    - 새로운 플로우 데이터 레코드를 생성하는 단계(104)와,
    상기 새로운 플로우의 적어도 하나의 다른 패킷이 상기 패킷 처리 장비(1) 내에 수신되어 있는 경우,
    - 상기 수신된 패킷에 대응하는 플로우 데이터가 상기 고속 액세스 내부 메모리(13) 내에서 이용가능한지를 판단하는 단계(111)와,
    상기 대응하는 플로우 데이터가 상기 고속 액세스 내부 메모리(13) 내에서 이용가능한 경우,
    - 상기 플로우 데이터를 찾는 단계와,
    대응하는 플로우 데이터가 상기 고속 액세스 내부 메모리(13) 내에서 이용가능하지 않은 경우,
    - 상기 저속 액세스 외부 메모리로부터 상기 대응하는 플로우 데이터를 검색하고, 상기 대응하는 플로우 데이터를 상기 고속 액세스 내부 메모리(13) 내에 저장하는 단계(112)와,
    - 상기 고속 액세스 내부 메모리(13)로부터의 대응하는 플로우 데이터를 사용하여 패킷 처리를 수행하는 단계(106)와,
    주어진 플로우에서 더 이상의 패킷이 상기 패킷 처리 장비(1) 내에 위치하지 않을 때,
    - 상기 고속 내부 메모리(13) 내의 상기 플로우 데이터로부터 상기 저속 액세스 외부 메모리(9) 내의 대응하는 플로우 데이터를 갱신하는 단계(109)와,
    - 상기 플로우 데이터를 상기 저속 액세스 외부 메모리(9)의 기입-액세스 대기시간보다 큰 지연 동안 상기 고속 액세스 내부 메모리(13) 내에 보유함으로써 대응하는 플로우 데이터 갱신을 보장하는 단계를 포함하는
    패킷 처리 장비(1) 내에서의 플로우 데이터의 저장 관리 방법.
  2. 제1항에 있어서,
    상기 플로우 ID를 추출하고 그 플로우 ID를 대응하는 어드레스에 맵핑하는 단계(102)의 시작 시간과 상기 패킷을 처리하는 단계(106)의 시작 시간 사이의 지연은 플로우 ID를 상기 대응하는 어드레스에 맵핑하는 시간에 상기 저속 액세스 외부 메모리(9)의 액세스 대기시간을 더한 것보다 큰 지속시간에 대응하는
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 대응하는 플로우 데이터 갱신을 보장하는 단계는 상기 플로우 데이터를 상기 패킷을 처리하는 단계(106)의 종료 시간 이후에 상기 저속 액세스 외부 메모리(9)의 기입-액세스 대기시간보다 큰 지연 동안 상기 고속 액세스 내부 메모리(13) 내에 보유함으로써 달성되는
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  4. 제1항 또는 제2항에 있어서,
    상기 고속 액세스 내부 메모리(13)는 온-칩 정적 랜덤 액세스 메모리(SRAM)에 대응하며, 상기 저속 액세스 외부 메모리(9)는 오프-칩 동적 랜덤 액세스 메모리(DRAM)에 대응하는
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  5. 제1항 또는 제2항에 있어서,
    상기 방법은 상기 대응하는 플로우 데이터의 상기 고속 액세스 내부 메모리(13)의 메모리 공간을 비우는 것에 대응하는 추가 단계(110)를 포함하며, 상기 추가 단계는 상기 플로우의 패킷이 상기 패킷 처리 장비(1) 내에 수신되는 경우에 최신 플로우 데이터가 사용될 것을 보장하기 위해 상기 대응하는 플로우 데이터 갱신을 보장하는 단계 이후에 달성되는
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  6. 제1항 또는 제2항에 있어서,
    상기 고속 액세스 내부 메모리(13)의 용량은 상기 패킷 처리 장비(1) 내에서의 이송중인 최대 사용 가능 패킷들(4)의 수에 대응하는 플로우 데이터를 기록하기 위한 필수 용량에 대응하는
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  7. 제1항 또는 제2항에 있어서,
    상기 데이터 패킷 헤더로부터 플로우 ID를 추출하는 단계는 체계화된 데이터 보관소들(11)에 의해 달성되는
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  8. 제7항에 있어서,
    상기 체계화된 데이터 보관소(11)는 라우팅 룩업 테이블인
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  9. 제1항 또는 제2항에 있어서,
    상기 패킷 처리 장비(1)는 패킷 파이프라인을 포함하며, 상기 패킷 파이프라인에서 전송되는 패킷(4)에 대해 적어도 하나의 프로세스가 순차적으로 적용되는
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  10. 제1항 또는 제2항에 있어서,
    상기 고속 액세스 내부 메모리(13)는 개별로 어드레스가능한 섹터들로 구획화되며, 상이한 동시적 프로세스들(15)의 함수로 분산되는
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  11. 제1항 또는 제2항에 있어서,
    수신된 패킷들의 타임 슬롯들 중 상기 저속 액세스 외부 메모리(9)에 액세스하기 위한 부분은 내부 서비스 패킷들을 위해 예약되는
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  12. 제1항 또는 제2항에 있어서,
    상기 패킷 처리 장비(1)의 입력에서의 데이터 패킷의 수신(101)에서, 패킷 페이로드는 상기 패킷 헤더로부터 분리되고, 상기 패킷 페이로드는 메모리 내에 저장되고, 상기 고속 액세스 내부 메모리(13)로부터의 대응하는 플로우 데이터를 사용하여 패킷 처리를 달성하는 단계(106)는 상기 패킷 헤더에 적용되며, 패킷 페이로드 및 패킷 헤더는 패킷 헤더 처리 후에 합쳐지는
    패킷 처리 장비(1) 내에서의 플로우 데이터 저장 관리 방법.
  13. 고속 액세스 내부 메모리(13) 및 저속 액세스 외부 메모리(9)를 포함하는 패킷 처리 장비(1)로서, 상기 패킷 처리 장비(1)는 또한
    - 상기 패킷 처리 장비(1)의 입력에서 데이터 패킷을 수신하고,
    - 데이터 패킷 헤더로부터 플로우 ID 및 메모리 어드레스를 추출하고,
    - 추출된 플로우 ID 및 어드레스에 대응하는 플로우 데이터를 상기 저속 액세스 외부 메모리(9) 내에 저장하고,
    - 상기 저속 액세스 외부 메모리(9)로부터 상기 플로우 데이터를 검색하며, 상기 플로우 데이터를 상기 고속 액세스 내부 메모리(13) 내에 저장하고,
    - 상기 고속 액세스 내부 메모리(13)로부터의 대응하는 플로우 데이터를 사용함으로써 패킷 처리를 수행하고,
    - 플로우의 더 이상의 패킷이 상기 패킷 처리 장비(1) 내에 위치하지 않을 때, 상기 저속 액세스 외부 메모리(9)의 대응하는 플로우 데이터를 갱신하고,
    - 대응하는 플로우 데이터를 상기 고속 액세스 내부 메모리(13) 내에 미리 정해진 시간 동안 보유하는
    수단을 포함하는
    패킷 처리 장비(1).
  14. 제13항에 있어서,
    상기 패킷 처리를 달성하는 것은 상기 패킷 처리에 따른 상기 고속 액세스 내부 메모리(13) 내의 상기 플로우 데이터의 수정을 포함하는
    패킷 처리 장비(1).
  15. 제13항 또는 제14항에 있어서,
    상기 고속 액세스 내부 메모리(13)는 온-칩 정적 랜덤 액세스 메모리(SRAM)에 대응하며, 상기 저속 액세스 외부 메모리는 오프-칩 동적 랜덤 액세스 메모리(DRAM)에 대응하는
    패킷 처리 장비(1).
  16. 제13항 또는 제14항에 있어서,
    상기 수단은 또한 상기 고속 액세스 내부 메모리(13)의 메모리 공간에서 상기 대응하는 플로우 데이터를 제거하도록 구성되는
    패킷 처리 장비(1).
KR1020127011201A 2009-09-30 2010-09-30 패킷 처리 장비내에서의 플로우 데이터의 저장 관리 방법 및 패킷 처리 장비 KR101407743B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP09290749A EP2306322A1 (en) 2009-09-30 2009-09-30 Method for processing data packets in flow-aware network nodes
EP09290749.2 2009-09-30
PCT/EP2010/064535 WO2011039300A1 (en) 2009-09-30 2010-09-30 Method for processing data packets in flow-aware network nodes

Publications (2)

Publication Number Publication Date
KR20120070595A KR20120070595A (ko) 2012-06-29
KR101407743B1 true KR101407743B1 (ko) 2014-06-16

Family

ID=41345295

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127011201A KR101407743B1 (ko) 2009-09-30 2010-09-30 패킷 처리 장비내에서의 플로우 데이터의 저장 관리 방법 및 패킷 처리 장비

Country Status (6)

Country Link
US (1) US9253093B2 (ko)
EP (1) EP2306322A1 (ko)
JP (1) JP5514913B2 (ko)
KR (1) KR101407743B1 (ko)
CN (1) CN102549552B (ko)
WO (1) WO2011039300A1 (ko)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102209021A (zh) * 2010-03-31 2011-10-05 西门子公司 一种包聚合传输的方法和装置
KR101975528B1 (ko) 2012-07-17 2019-05-07 삼성전자주식회사 패스트 어레이 영역을 갖는 반도체 메모리 셀 어레이 및 그것을 포함하는 반도체 메모리
KR20140052107A (ko) * 2012-10-10 2014-05-07 주식회사 아이디어웨어 타임라인 생성장치 및 방법과 기록매체
CN103927124B (zh) * 2013-01-15 2018-03-13 深圳市腾讯计算机系统有限公司 以Hash方式组织的磁盘访问控制装置及方法
US9515929B2 (en) * 2013-06-28 2016-12-06 Netronome Systems, Inc. Traffic data pre-filtering
US9712442B2 (en) * 2013-09-24 2017-07-18 Broadcom Corporation Efficient memory bandwidth utilization in a network device
US9473405B2 (en) * 2014-03-10 2016-10-18 Palo Alto Research Center Incorporated Concurrent hashes and sub-hashes on data streams
US9917727B2 (en) 2014-06-03 2018-03-13 Nicira, Inc. Consistent hashing for network traffic dispatching
US9397941B2 (en) 2014-06-27 2016-07-19 International Business Machines Corporation Dual purpose on-chip buffer memory for low latency switching
US9998374B1 (en) * 2015-03-01 2018-06-12 Netronome Systems, Inc. Method of handling SDN protocol messages in a modular and partitioned SDN switch
US9503372B1 (en) 2015-03-01 2016-11-22 Netronome Systems, Inc. SDN protocol message handling within a modular and partitioned SDN switch
US9467378B1 (en) 2015-03-01 2016-10-11 Netronome Systems, Inc. Method of generating subflow entries in an SDN switch
US9729442B1 (en) 2015-03-01 2017-08-08 Netronome Systems, Inc. Method of detecting large flows within a switch fabric of an SDN switch
US10009270B1 (en) * 2015-03-01 2018-06-26 Netronome Systems, Inc. Modular and partitioned SDN switch
US9699084B1 (en) 2015-03-01 2017-07-04 Netronome Systems, Inc. Forwarding messages within a switch fabric of an SDN switch
US10412002B1 (en) * 2015-03-25 2019-09-10 Amazon Technologies, Inc. Processing packet data using an offload engine in a service provider environment
IL238690B (en) 2015-05-07 2019-07-31 Mellanox Technologies Ltd Network-based computational accelerator
US10152441B2 (en) 2015-05-18 2018-12-11 Mellanox Technologies, Ltd. Host bus access by add-on devices via a network interface controller
US9912591B1 (en) 2015-05-29 2018-03-06 Netronome Systems, Inc. Flow switch IC that uses flow IDs and an exact-match flow table
US9807006B1 (en) 2015-05-29 2017-10-31 Netronome Systems, Inc. Crossbar and an egress packet modifier in an exact-match flow switch
US9819585B1 (en) * 2015-05-29 2017-11-14 Netronome Systems, Inc. Making a flow ID for an exact-match flow table using a programmable reduce table circuit
US10033638B1 (en) * 2015-05-29 2018-07-24 Netronome Systems, Inc. Executing a selected sequence of instructions depending on packet type in an exact-match flow switch
US9641436B1 (en) 2015-05-29 2017-05-02 Netronome Systems, Inc. Generating a flow ID by passing packet data serially through two CCT circuits
US9756152B1 (en) * 2015-05-29 2017-09-05 Netronome Systems, Inc. Making a flow ID for an exact-match flow table using a byte-wide multiplexer circuit
US9871748B2 (en) * 2015-12-09 2018-01-16 128 Technology, Inc. Router with optimized statistical functionality
US10382350B2 (en) 2017-09-12 2019-08-13 Mellanox Technologies, Ltd. Maintaining packet order in offload of packet processing functions
US11005771B2 (en) 2017-10-16 2021-05-11 Mellanox Technologies, Ltd. Computational accelerator for packet payload operations
US11502948B2 (en) 2017-10-16 2022-11-15 Mellanox Technologies, Ltd. Computational accelerator for storage operations
US10841243B2 (en) 2017-11-08 2020-11-17 Mellanox Technologies, Ltd. NIC with programmable pipeline
US10708240B2 (en) 2017-12-14 2020-07-07 Mellanox Technologies, Ltd. Offloading communication security operations to a network interface controller
US10824469B2 (en) 2018-11-28 2020-11-03 Mellanox Technologies, Ltd. Reordering avoidance for flows during transition between slow-path handling and fast-path handling
US11184439B2 (en) 2019-04-01 2021-11-23 Mellanox Technologies, Ltd. Communication with accelerator via RDMA-based network adapter
IL276538B2 (en) 2020-08-05 2023-08-01 Mellanox Technologies Ltd A cryptographic device for data communication
CN114095153A (zh) 2020-08-05 2022-02-25 迈络思科技有限公司 密码数据通信装置
US11934333B2 (en) 2021-03-25 2024-03-19 Mellanox Technologies, Ltd. Storage protocol emulation in a peripheral device
US11934658B2 (en) 2021-03-25 2024-03-19 Mellanox Technologies, Ltd. Enhanced storage protocol emulation in a peripheral device
US11799761B2 (en) 2022-01-07 2023-10-24 Vmware, Inc. Scaling edge services with minimal disruption
US11888747B2 (en) 2022-01-12 2024-01-30 VMware LLC Probabilistic filters for use in network forwarding and services

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060090039A1 (en) 2004-10-27 2006-04-27 Sanjeev Jain Method and apparatus to enable DRAM to support low-latency access via vertical caching

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11331268A (ja) * 1998-05-11 1999-11-30 Sumitomo Electric Ind Ltd パケット中継装置
US20030061269A1 (en) * 2001-09-17 2003-03-27 Flow Engines, Inc. Data flow engine
US20050204091A1 (en) * 2004-03-11 2005-09-15 Kilbuck Kevin M. Non-volatile memory with synchronous DRAM interface
JP2005347969A (ja) * 2004-06-01 2005-12-15 Matsushita Electric Ind Co Ltd パケット転送装置およびパケット転送方法
JP4483535B2 (ja) * 2004-11-05 2010-06-16 株式会社日立製作所 ネットワーク装置
WO2006080897A1 (en) * 2005-01-26 2006-08-03 Infineon Technologies Ag Improvements in and relating to memory updating
US20090138673A1 (en) * 2007-11-28 2009-05-28 Apple Inc. Internal memory mapped external memory interface
US20100162265A1 (en) * 2008-12-23 2010-06-24 Marco Heddes System-On-A-Chip Employing A Network Of Nodes That Utilize Logical Channels And Logical Mux Channels For Communicating Messages Therebetween
US20120017039A1 (en) * 2010-07-16 2012-01-19 Plx Technology, Inc. Caching using virtual memory

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060090039A1 (en) 2004-10-27 2006-04-27 Sanjeev Jain Method and apparatus to enable DRAM to support low-latency access via vertical caching

Also Published As

Publication number Publication date
EP2306322A1 (en) 2011-04-06
JP5514913B2 (ja) 2014-06-04
CN102549552B (zh) 2015-12-02
US9253093B2 (en) 2016-02-02
WO2011039300A1 (en) 2011-04-07
CN102549552A (zh) 2012-07-04
KR20120070595A (ko) 2012-06-29
US20120314709A1 (en) 2012-12-13
JP2013507022A (ja) 2013-02-28

Similar Documents

Publication Publication Date Title
KR101407743B1 (ko) 패킷 처리 장비내에서의 플로우 데이터의 저장 관리 방법 및 패킷 처리 장비
KR101607180B1 (ko) 패킷 재조립 및 재배열 방법, 장치 및 시스템
WO2021088466A1 (zh) 提高网络芯片报文存储效率的方法、设备及存储介质
US7058789B2 (en) System and method for packet storage and retrieval
US20010014081A1 (en) Packet flow control apparatus and a method for controlling the same
US8243745B2 (en) Buffer management method and packet communication apparatus
JP4541454B2 (ja) 受信データの関数としてデータの送信の開始を制御するための方法および装置
JP2001511978A (ja) ネットワークスイッチ内のブロックされた出力キューに関するパケットを選択的に廃棄するための方法および装置
JP2001511979A (ja) バッファを再要求するための方法および装置
JP2003229907A (ja) ネットワーク・プロセッサ内のデータ・ブロックの再組立てのための方法および装置
CN115516833A (zh) 网络设备中的分组缓冲溢出
JPWO2004066570A1 (ja) ネットワークスイッチ装置およびネットワークスイッチ方法
JP7074839B2 (ja) パケット処理
US20090196288A1 (en) Efficient Packet Replication
US6601116B1 (en) Network switch having descriptor cache and method thereof
US7088731B2 (en) Memory management for packet switching device
US8363653B2 (en) Packet forwarding method and device
US5913042A (en) Method and apparatus for managing packet memory
TW200404206A (en) Increasing memory access efficiency for packet applications
CN112965833B (zh) 日志处理方法及装置
US7783796B2 (en) Method for releasing data of storage apparatus
CN118132506A (zh) 一种片上系统软硬共享缓存架构及方法
CN117376274A (zh) 组播包的复制方法及装置、存储介质及电子装置
JPH0832590A (ja) バッファメモリ読出し順序決定回路及び決定方法
JP2010250486A (ja) ネットワーク中継装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170602

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee