JP2006042288A - Semiconductor integrated circuit - Google Patents

Semiconductor integrated circuit Download PDF

Info

Publication number
JP2006042288A
JP2006042288A JP2004223594A JP2004223594A JP2006042288A JP 2006042288 A JP2006042288 A JP 2006042288A JP 2004223594 A JP2004223594 A JP 2004223594A JP 2004223594 A JP2004223594 A JP 2004223594A JP 2006042288 A JP2006042288 A JP 2006042288A
Authority
JP
Japan
Prior art keywords
snmp
processing unit
area
message
basic information
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
Application number
JP2004223594A
Other languages
Japanese (ja)
Inventor
Yoshihiro Tate
義宏 舘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2004223594A priority Critical patent/JP2006042288A/en
Publication of JP2006042288A publication Critical patent/JP2006042288A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a semiconductor integrated circuit capable of performing an SNMP (Simple Network Management Protocol) processing with less storage capacity. <P>SOLUTION: An SNMP processing circuit 15 comprises: a variable recording unit 21; a buffer memory 22; a message reception processing unit 23; a basic information extraction processing unit 24; a variable extraction processing unit 25; an answer creation processing unit 26; a message creation processing unit 27; and a message transmission processing unit 28. The basic information extraction processing unit 24 moves basic information to a first region wherein a header is stored. The variable extraction processing unit 25 interprets a plurality of variables and writes them in a second region following the first region. The answer creation processing unit 26 reads a plurality of values corresponding to the plurality of variables from the variable recording unit 21 and writes them in a final third region of the buffer. The message creation processing unit 27 creates basic information as an answer and writes it in a fourth region preceding to the third region, thereby creating an SNMP message as an answer. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、SNMP(Simple Network Management Protocol)処理を行うための半導体集積回路に関する。   The present invention relates to a semiconductor integrated circuit for performing SNMP (Simple Network Management Protocol) processing.

現在、インターネット、LAN(Local Area Network)等において、TCP/IPと呼ばれる通信プロトコルの階層モデルが広く用いられている。図6は、TCP/IP階層モデルの各レイヤとISO(International Organization for Standardization)で制定されたOSI(Open Systems Interconnection)参照モデルの各レイヤとのおおよその対応関係を示す図である。   Currently, a hierarchical model of a communication protocol called TCP / IP is widely used in the Internet, LAN (Local Area Network) and the like. FIG. 6 is a diagram showing an approximate correspondence between each layer of the TCP / IP hierarchical model and each layer of the OSI (Open Systems Interconnection) reference model established by ISO (International Organization for Standardization).

TCP/IP階層モデルを用いた装置の通信に関する状態を管理するためのプロトコルとして、SNMP(Simple Network Management Protocol)が広く用いられている。なお、SNMPは、RFC(Request For Comments)1157、1901、1902等で規定されている。
図6に示すように、SNMPは、TCP/IP階層モデルのアプリケーション層に相当するプロトコルであり、下位レイヤ(トランスポート層)としてUDP(User Datagram Protocol)を利用する。UDPは、下位レイヤ(インターネット層)としてIP(Internet Protocol)を利用する。また、IPは、下位レイヤ(ネットワークインタフェース層)として種々のものを利用可能であるが、一般に、Ethernet(登録商標)が広く用いられている。
SNMP (Simple Network Management Protocol) is widely used as a protocol for managing the state related to communication of devices using the TCP / IP hierarchical model. SNMP is defined in RFC (Request For Comments) 1157, 1901, 1902, and the like.
As shown in FIG. 6, SNMP is a protocol corresponding to the application layer of the TCP / IP hierarchical model, and uses UDP (User Datagram Protocol) as a lower layer (transport layer). UDP uses IP (Internet Protocol) as a lower layer (Internet layer). In addition, various IPs can be used as lower layers (network interface layers), but Ethernet (registered trademark) is widely used in general.

SNMPにおいて、他の装置を管理するための装置は、SNMPマネージャと呼ばれ、SNMPマネージャによって管理される装置は、SNMPエージェントと呼ばれる。
SNMPエージェントは、ルータ、ブリッジ等であることが多く、これらの機器において低コストでSNMPを実現するため、SNMPの処理を行うための半導体集積回路が用いられるようになってきている。なお、このようなSNMPの処理を行うための半導体集積回路は、UDP、IP、及び、Ethernet(登録商標)の機能を併せて有する場合もある。
In SNMP, a device for managing other devices is called an SNMP manager, and a device managed by the SNMP manager is called an SNMP agent.
SNMP agents are often routers, bridges, and the like, and semiconductor integrated circuits for performing SNMP processing have come to be used in order to implement SNMP at low cost in these devices. Note that a semiconductor integrated circuit for performing such SNMP processing may also have UDP, IP, and Ethernet (registered trademark) functions.

SNMPの機能を有する半導体集積回路においては、Ethernet(登録商標)フレーム、IPデータグラム、UDPデータグラム、及び/又は、SNMPメッセージを受信するための受信バッファ及び送信するための送信バッファとは別に、SNMPメッセージを作成するための作業領域が必要である。一般には、受信バッファとして512バイト程度、作業領域として40バイト程度、送信バッファとして512バイト程度が必要である。
このように、SNMPの機能を有する半導体集積回路においては、大量のメモリを必要とするため、コストが高くなってしまっていた。
In a semiconductor integrated circuit having an SNMP function, an Ethernet (registered trademark) frame, an IP datagram, a UDP datagram, and / or a reception buffer for receiving an SNMP message and a transmission buffer for transmitting, A work area for creating an SNMP message is required. Generally, about 512 bytes are required as a reception buffer, about 40 bytes as a work area, and about 512 bytes as a transmission buffer.
As described above, the semiconductor integrated circuit having the SNMP function requires a large amount of memory, which increases the cost.

ところで、ネットワークプロトコルを用いて情報を相手機側へ送信する装置において、送信バッファと受信バッファを別々に設け、相手機側から直前の送信情報の再送信を要求された場合、現在の送信バッファの内容より再送信情報を直接再構成して、相手機側へ送信するとともに、相手機側より認識不可や現在受付不可の信号を受信した場合、受信バッファの内容より拒絶信号を受信バッファ内で再構成して受信バッファから相手機側へ送信し、送信バッファの内容は保持しておくことを特徴とする情報観測伝送装置が知られている(例えば、特許文献1参照)。
しかしながら、特許文献1に掲載された情報観測伝送装置は、システムに必要なRAM容量を削減するものであるが、SNMPの処理に関するものではない。
By the way, in a device that transmits information to the partner side using a network protocol, a transmission buffer and a reception buffer are provided separately, and when the partner side requests retransmission of the previous transmission information, The retransmit information is directly reconfigured from the contents and transmitted to the partner machine. When a signal that cannot be recognized or cannot be accepted is received from the partner machine, the rejection signal is re-established in the receive buffer from the contents of the receive buffer. There is known an information observation transmission device that is configured to transmit from a reception buffer to a partner device side and retain the contents of the transmission buffer (see, for example, Patent Document 1).
However, the information observation / transmission apparatus described in Patent Document 1 reduces the RAM capacity necessary for the system, but does not relate to SNMP processing.

また、ネットワークから受信したパケットからポイント・ツー・ポイント・プロトコル・ヘッダ情報を選択的に分離するためのシステムであって、パケットを受信し、そこから、パケットに関して使用したサブプロトコルを識別するサブプロトコル検出装置と、サブプロトコル検出装置に接続していて、サブプロトコルの識別に基づいて、パケットからポイント・ツー・ポイント・プロトコル・ヘッダ情報の少なくとも一部を分離し、そうすることにより、パケットの全体のサイズを小さくするヘッダ分離装置とを備えるシステムが知られている(例えば、特許文献2参照)。
しかしながら、特許文献2に掲載されたシステムは、パケットからポイント・ツー・ポイント・プロトコル・ヘッダ情報の少なくとも一部を分離し、そうすることにより、パケットの全体のサイズを小さくし、システム・バスの有効帯域幅を広くするものであるが、SNMPの処理に関するものではない。
A system for selectively separating point-to-point protocol header information from a packet received from a network, wherein the sub-protocol receives the packet and identifies the sub-protocol used for the packet from there A detection device and a sub-protocol detection device, and based on the identification of the sub-protocol, separates at least a portion of the point-to-point protocol header information from the packet and thereby the entire packet There is known a system including a header separation device that reduces the size of (see, for example, Patent Document 2).
However, the system described in US Pat. No. 6,057,059 separates at least a portion of the point-to-point protocol header information from the packet, thereby reducing the overall size of the packet and reducing the system bus Although the effective bandwidth is widened, it is not related to SNMP processing.

特開2001−127792号公報JP 2001-127772 A 特開2001−60984号公報JP 2001-60984 A

そこで、上記の点に鑑み、本発明は、少ない記憶容量でSNMPの処理を行うことができる半導体集積回路を提供することを目的とする。   In view of the above, an object of the present invention is to provide a semiconductor integrated circuit capable of performing SNMP processing with a small storage capacity.

以上の課題を解決するため、本発明に係る半導体集積回路は、SNMP(Simple Network Management Protocol)処理を行うための半導体集積回路であって、SNMPの管理対象である複数の変数の値を記録するための変数記録部と、フレーム、パケット、及び/又は、データグラムをそれぞれ格納するための複数のバッファを有するバッファメモリと、複数のバッファの中の1つのバッファに第1のSNMPメッセージを含むフレーム、パケット、及び/又は、データグラムが下位レイヤによって書き込まれた場合に、下位レイヤからその旨の通知を受けるためのメッセージ受信処理部と、第1のSNMPメッセージの中の基本情報を、1つのバッファ内のフレーム、パケット、及び/又は、データグラムの中のヘッダが格納されている領域の全部又は一部である第1の領域に移動及び/又はコピーするための基本情報抽出処理部と、第1のSNMPメッセージの中のVariable Bindings内の複数の変数を解釈して、第1の領域の後に続く第2の領域に書き込むための変数抽出処理部と、第2の領域内に格納されている複数の変数にそれぞれ対応する複数の値を変数記録部から読み出し、第2の領域内に格納されている複数の変数にそれぞれ対応させて第1のSNMPメッセージへの回答としてのVariable Bindingsを作成し、1つのバッファの末尾の第3の領域に書き込むための回答作成処理部と、第1の領域内に格納されている基本情報に基づいて第1のSNMPメッセージへの回答としての基本情報を作成し、第3の領域の前の第4の領域に書き込むことにより、第1のSNMPメッセージへの回答としての第2のSNMPメッセージを作成するためのメッセージ作成処理部と、第2のSNMPメッセージが作成された旨を下位レイヤに通知するためのメッセージ送信処理部とを具備する。   In order to solve the above problems, a semiconductor integrated circuit according to the present invention is a semiconductor integrated circuit for performing SNMP (Simple Network Management Protocol) processing, and records values of a plurality of variables which are management targets of SNMP. A variable recording unit, a buffer memory having a plurality of buffers for storing frames, packets, and / or datagrams respectively, and a frame including a first SNMP message in one of the plurality of buffers When a packet and / or datagram is written by a lower layer, a message reception processing unit for receiving a notification from the lower layer and basic information in the first SNMP message All of the area in the buffer where frames, packets and / or headers in the datagram are stored or A basic information extraction processing unit for moving and / or copying to a first area that is a part, and interpreting a plurality of variables in Variable Bindings in the first SNMP message, after the first area A variable extraction processing unit for writing to the subsequent second area and a plurality of values respectively corresponding to the plurality of variables stored in the second area are read from the variable recording unit and stored in the second area. A response creation processing unit for creating Variable Bindings as a reply to the first SNMP message in correspondence with each of the plurality of variables, and writing in a third area at the end of one buffer; The basic information as a response to the first SNMP message is created based on the basic information stored in the first information, and written to the fourth area before the third area, thereby writing the first SNMP message. Answers and A message creation processing unit for creating the second SNMP message, and a message transmission processing unit for notifying the lower layer that the second SNMP message has been created.

この半導体集積回路において、第1又は第2のSNMPメッセージ内の基本情報が、バージョン、コミュニティ、PDU(Protocol Data Unit)、リクエストID、エラーステータス、及び/又は、エラーインデックスを含むこととしても良い。   In this semiconductor integrated circuit, the basic information in the first or second SNMP message may include a version, a community, a PDU (Protocol Data Unit), a request ID, an error status, and / or an error index.

また、複数のバッファが固定長であることとしても良い。   Further, the plurality of buffers may have a fixed length.

以下、図面を参照しながら、本発明を実施するための最良の形態について説明する。なお、同一の構成要素には同一の参照符号を付して、説明を省略する。
図1は、本発明の一実施形態としてのSNMP(Simple Network Management Protocol)処理回路を用いたシステムの概要を示すブロック図である。このシステムは、ネットワークNに接続されたSNMPマネージャ1と、SNMPエージェント11とを具備する。SNMPマネージャ1とSNMPエージェント11は、ネットワークNを介して接続されている。なお、本実施形態においては、ネットワークNは、Ethernet(登録商標)であるものとする。
The best mode for carrying out the present invention will be described below with reference to the drawings. In addition, the same referential mark is attached | subjected to the same component and description is abbreviate | omitted.
FIG. 1 is a block diagram showing an outline of a system using an SNMP (Simple Network Management Protocol) processing circuit as an embodiment of the present invention. This system includes an SNMP manager 1 and an SNMP agent 11 connected to a network N. The SNMP manager 1 and the SNMP agent 11 are connected via a network N. In the present embodiment, the network N is assumed to be Ethernet (registered trademark).

SNMPマネージャ1は、ネットワークコントローラ2と、IP(Internet Protocol)処理回路3と、UDP(User Datagram Protocol)処理回路4と、SNMP処理回路5とを具備する。
SNMPエージェント11は、ネットワークコントローラ12と、IP処理回路13と、UDP処理回路14と、本発明の一実施形態としてのSNMP処理回路15とを具備する。
The SNMP manager 1 includes a network controller 2, an IP (Internet Protocol) processing circuit 3, a UDP (User Datagram Protocol) processing circuit 4, and an SNMP processing circuit 5.
The SNMP agent 11 includes a network controller 12, an IP processing circuit 13, a UDP processing circuit 14, and an SNMP processing circuit 15 as an embodiment of the present invention.

図2は、SNMP処理回路15の内部構成の概要を示す図である。図2に示すように、SNMP処理回路15は、変数記録部21と、バッファメモリ22と、メッセージ受信処理部23と、基本情報抽出処理部24と、変数抽出処理部25と、回答作成処理部26と、メッセージ作成処理部27と、メッセージ送信処理部28とを具備する。
変数記録部21は、SNMPの管理対象である複数の変数の値を記録する。
FIG. 2 is a diagram showing an outline of the internal configuration of the SNMP processing circuit 15. As shown in FIG. 2, the SNMP processing circuit 15 includes a variable recording unit 21, a buffer memory 22, a message reception processing unit 23, a basic information extraction processing unit 24, a variable extraction processing unit 25, and an answer creation processing unit. 26, a message creation processing unit 27, and a message transmission processing unit 28.
The variable recording unit 21 records values of a plurality of variables that are SNMP management targets.

バッファメモリ22は、ネットワークコントローラ2、IP処理回路3、UDP処理回路4、及び、SNMP処理回路5によって共用されており、Ethernet(登録商標)フレームをそれぞれ格納するための複数のバッファを有する。本実施形態においては、複数のバッファは、メモリ管理を単純にするため、例えば数十バイト程度の固定長であるものとする。なお、複数のバッファが、可変長であることとしても良い。
SNMPマネージャ1(図1参照)がSNMPエージェント11(図1参照)にSNMPメッセージを含むEthernet(登録商標)フレームを送信すると、送信されたEthernet(登録商標)フレームは、ネットワークコントローラ12によってバッファメモリ22内の複数のバッファの中の1つのバッファに書き込まれる。
The buffer memory 22 is shared by the network controller 2, the IP processing circuit 3, the UDP processing circuit 4, and the SNMP processing circuit 5, and has a plurality of buffers for storing Ethernet (registered trademark) frames. In the present embodiment, the plurality of buffers are assumed to have a fixed length of, for example, several tens of bytes in order to simplify memory management. Note that the plurality of buffers may be variable length.
When the SNMP manager 1 (see FIG. 1) transmits an Ethernet (registered trademark) frame including an SNMP message to the SNMP agent 11 (see FIG. 1), the transmitted Ethernet (registered trademark) frame is sent to the buffer memory 22 by the network controller 12. Are written in one of the plurality of buffers.

図3は、SNMPメッセージを含むEthernet(登録商標)フレームのフォーマットの例を示す図である。図3に示すように、Ethernet(登録商標)フレームは、Ethernet(登録商標)ヘッダとIPデータグラムとを含む。
Ethernet(登録商標)ヘッダは、送信元MAC(Media Access Control)アドレス(6バイト)、あて先MACアドレス(6バイト)、データタイプ(2バイト)の計14バイトである。
FIG. 3 is a diagram showing an example of an Ethernet (registered trademark) frame format including an SNMP message. As shown in FIG. 3, the Ethernet (registered trademark) frame includes an Ethernet (registered trademark) header and an IP datagram.
The Ethernet (registered trademark) header has a total of 14 bytes including a source MAC (Media Access Control) address (6 bytes), a destination MAC address (6 bytes), and a data type (2 bytes).

IPデータグラムは、IPヘッダとUDPデータグラムとを含む。
IPヘッダは、バージョン(4ビット)、ヘッダ長(4ビット)、サービスタイプ(1バイト)、データグラム長(2バイト)、ID(2バイト)、フラグ(3ビット)、フラグメント・オフセット(13ビット)、TTL(1バイト)、プロトコル番号(1バイト)、ヘッダ・チェックサム(2バイト)、送信元IPアドレス(4バイト)、あて先IPアドレス(4バイト)の計20バイトである。なお、IPヘッダは、32ビット単位でオプションを含むことが可能である。
The IP datagram includes an IP header and a UDP datagram.
IP header includes version (4 bits), header length (4 bits), service type (1 byte), datagram length (2 bytes), ID (2 bytes), flag (3 bits), fragment offset (13 bits) ), TTL (1 byte), protocol number (1 byte), header checksum (2 bytes), source IP address (4 bytes), and destination IP address (4 bytes). Note that the IP header can include options in units of 32 bits.

UDPデータグラムは、UDPヘッダとSNMPメッセージとを含む。
UDPヘッダは、送信元ポート番号(2バイト)、あて先ポート番号(2バイト)、長さ(2バイト)、チェックサム(2バイト)の計8バイトである。
The UDP datagram includes a UDP header and an SNMP message.
The UDP header has a total of 8 bytes including a source port number (2 bytes), a destination port number (2 bytes), a length (2 bytes), and a checksum (2 bytes).

SNMPメッセージは、基本情報と、Variable Bindingsとを含む。
基本情報は、バージョン、コミュニティ、PDU(Protocol Data Unit)、リクエストID、エラーステータス、及び、エラーインデックスを含む。
SNMPにおいて、オブジェクトIDとインスタンスの組み合わせ、又は、オブジェクトIDとインスタンスと値の組み合わせは、Variable Bindingと呼ばれており、Variable Bindingの集合は、Variable Bindingsと呼ばれている。
基本情報及びVariable Bindingsは可変長である。
The SNMP message includes basic information and Variable Bindings.
The basic information includes version, community, PDU (Protocol Data Unit), request ID, error status, and error index.
In SNMP, a combination of an object ID and an instance, or a combination of an object ID, an instance, and a value is called Variable Binding, and a set of Variable Bindings is called Variable Bindings.
Basic information and Variable Bindings are variable length.

Ethernet(登録商標)ヘッダは、ネットワークコントローラ12で使用されるものであり、IPヘッダは、IP処理回路13で使用されるものであり、UDPヘッダは、UDP処理回路14で処理されるものである。Ethernet(登録商標)ヘッダ、IPヘッダ、及び、UDPヘッダは、使用された後にそのまま放置されても良いし、消去されても良い。いずれとするかは、Ethernet(登録商標)、IP、及び、UDPの実装に委ねられている。   The Ethernet (registered trademark) header is used by the network controller 12, the IP header is used by the IP processing circuit 13, and the UDP header is processed by the UDP processing circuit 14. . The Ethernet (registered trademark) header, the IP header, and the UDP header may be left as they are after being used, or may be deleted. Which is left to the implementation of Ethernet (registered trademark), IP, and UDP.

再び図2を参照すると、Ethernet(登録商標)フレームがネットワークコントローラ12によってバッファメモリ22内の複数のバッファの中の1つのバッファに書き込まれ、ネットワークコントローラ12、IP処理回路13、及び、UDP処理回路14の処理を経ると、UDP処理回路14は、その旨をメッセージ受信処理部23に通知する。
メッセージ受信処理部23は、UDP処理回路14から通知を受けると、基本情報抽出処理部24に動作するように指示する。
Referring to FIG. 2 again, the Ethernet® frame is written by the network controller 12 into one of the plurality of buffers in the buffer memory 22, and the network controller 12, the IP processing circuit 13, and the UDP processing circuit. After the processing of 14, the UDP processing circuit 14 notifies the message reception processing unit 23 to that effect.
When receiving the notification from the UDP processing circuit 14, the message reception processing unit 23 instructs the basic information extraction processing unit 24 to operate.

このとき、Ethernet(登録商標)ヘッダ、IPヘッダ、及び、UDPヘッダ(図3参照)は不要となっており、Ethernet(登録商標)ヘッダ、IPヘッダ、及び、UDPヘッダが格納されている領域は、空き領域として利用可能である。
基本情報抽出処理部24は、SNMPメッセージ内の基本情報を、バッファ内の先頭の第1の領域(Ethernet(登録商標)ヘッダ、IPヘッダ、及び、UDPヘッダが格納されていた領域の一部又は全部)に移動及び/又はコピーする。図4(A)は、このときのバッファ内の様子を示す図である。なお、元の基本情報は、不要であり、そのまま放置されても良いし、消去されても良い。また、基本情報のうち不要な情報は、移動及び/又はコピーしなくても良い。さらに、基本情報とともに送信元IPアドレス(IPヘッダ内)、送信元ポート番号(UDPヘッダ内)、あて先ポート番号(UDPヘッダ内)等の情報を、第1の領域に移動及び/又はコピーすることとしても良い。
At this time, the Ethernet (registered trademark) header, the IP header, and the UDP header (see FIG. 3) are unnecessary, and the area in which the Ethernet (registered trademark) header, the IP header, and the UDP header are stored is It can be used as a free area.
The basic information extraction processing unit 24 converts the basic information in the SNMP message into a first area in the buffer (Ethernet (registered trademark) header, IP header, part of the area in which the UDP header was stored, or Move and / or copy all). FIG. 4A is a diagram showing a state in the buffer at this time. Note that the original basic information is unnecessary and may be left as it is or may be deleted. Further, unnecessary information in the basic information may not be moved and / or copied. Furthermore, information such as the source IP address (in the IP header), the source port number (in the UDP header), the destination port number (in the UDP header), etc. is moved and / or copied to the first area together with the basic information. It is also good.

次に、変数抽出処理部25が、SNMPメッセージ内のVariable Bindingsを解釈し、各変数を第1の領域の後の第2の領域に格納する。図4(B)は、このときのバッファ内の様子を示す図である。このとき、各変数をSNMP処理回路15内部に保持しているOIDデータベースのエントリを示すように変換することで、第2の領域を小さく(節約)することができる。なお、元のVariable Bindingsは、不要であり、そのまま放置されても良いし、消去されても良い。いずれにしても、元のVariable Bindingsが格納されていた領域は、空き領域として利用可能である。   Next, the variable extraction processing unit 25 interprets Variable Bindings in the SNMP message, and stores each variable in the second area after the first area. FIG. 4B is a diagram showing a state in the buffer at this time. At this time, the second area can be reduced (saved) by converting each variable to indicate an entry in the OID database held in the SNMP processing circuit 15. Note that the original Variable Bindings is unnecessary and may be left as it is or may be deleted. In any case, the area in which the original variable bindings are stored can be used as a free area.

次に、回答作成処理部26が、第2の領域内の各変数にそれぞれ対応する値を変数記録部21から読み出し、SNMPマネージャ1から受信したSNMPメッセージへの応答としてのVariable Bindingsを作成し、バッファの末尾の第3の領域に書き込む。図5(A)は、このときのバッファ内の様子を示す図である。なお、第2の領域内の各変数は、不要であり、そのまま放置されても良いし、消去されても良い。いずれにしても、第2の領域は、空き領域として利用可能である。   Next, the answer creation processing unit 26 reads values corresponding to the respective variables in the second area from the variable recording unit 21, creates Variable Bindings as a response to the SNMP message received from the SNMP manager 1, Write to the third area at the end of the buffer. FIG. 5A is a diagram showing a state in the buffer at this time. Note that each variable in the second area is unnecessary and may be left as it is or may be deleted. In any case, the second area can be used as an empty area.

次に、メッセージ作成処理部27が、第1の領域内の基本情報に基づいて、SNMPマネージャ1から受信したSNMPメッセージへの回答としての基本情報を作成し、第3の領域の前の第4の領域に書き込むことにより、SNMPマネージャ1から受信したSNMPメッセージへの回答としてのSNMPメッセージを作成する。図5(B)は、このときのバッファ内の様子を示す図である。なお、第1の領域内の基本情報は、不要であり、そのまま放置されても良いし、消去されても良い。いずれにしても、第1の領域は、空き領域として利用可能である。   Next, the message creation processing unit 27 creates basic information as a reply to the SNMP message received from the SNMP manager 1 based on the basic information in the first area, and the fourth information before the third area. The SNMP message as an answer to the SNMP message received from the SNMP manager 1 is created. FIG. 5B is a diagram showing a state in the buffer at this time. The basic information in the first area is unnecessary and may be left as it is or may be deleted. In any case, the first area can be used as an empty area.

このようにしてSNMPマネージャ1から受信したSNMPメッセージへの回答としてのSNMPメッセージが作成されると、メッセージ送信処理部28は、UDP処理回路14に通知する。
この後、UDP処理回路14が、図5(B)中の基本情報の前の領域にUDPヘッダを書き込み、IP処理回路13が、UDPヘッダの前の領域にIPヘッダを書き込み、ネットワークコントローラ12が、IPヘッダの前の領域にEthernet(登録商標)ヘッダを書き込むことにより、Ethernet(登録商標)フレームを作成することが可能である。
When the SNMP message as a reply to the SNMP message received from the SNMP manager 1 is created in this way, the message transmission processing unit 28 notifies the UDP processing circuit 14.
Thereafter, the UDP processing circuit 14 writes the UDP header in the area before the basic information in FIG. 5B, the IP processing circuit 13 writes the IP header in the area before the UDP header, and the network controller 12 It is possible to create an Ethernet (registered trademark) frame by writing an Ethernet (registered trademark) header in an area in front of the IP header.

このように、SNMP処理回路15によれば、SNMPマネージャ1から受信したEthernet(登録商標)フレームが格納されているバッファ内に、SNMPマネージャ1から受信したSNMPメッセージへの回答としてのSNMPメッセージを作成することができる。これにより、少ない記憶容量でSNMP処理を行うことが可能となる。また、受信したEthernet(登録商標)フレームが格納されているバッファ以外に新たなメモリ領域を必要としないため、SNMP処理回路15の処理負荷が大きいときにメモリを確保できずにSNMP処理性能が低下することがない。   Thus, according to the SNMP processing circuit 15, an SNMP message as a reply to the SNMP message received from the SNMP manager 1 is created in the buffer in which the Ethernet (registered trademark) frame received from the SNMP manager 1 is stored. can do. This makes it possible to perform SNMP processing with a small storage capacity. Further, since no new memory area is required other than the buffer in which the received Ethernet (registered trademark) frame is stored, when the processing load of the SNMP processing circuit 15 is large, the memory cannot be secured and the SNMP processing performance is deteriorated. There is nothing to do.

なお、本実施形態はSNMP処理を行うものであるが、下位プロトコルのヘッダ部分を空き領域として利用することは、他のプロトコル処理でも可能である。   Although this embodiment performs SNMP processing, it is possible to use the header portion of the lower protocol as a free area in other protocol processing.

また、Ethernet(登録商標)ヘッダは14バイトであり、ネットワークインタフェース層の他のプロトコル(例えば、PPP(Point to Point Protocol)等)とは異なることがある。しかし、ネットワークインタフェース層としてEthernet(登録商標)以外のものを利用した場合でも、基本情報や変数の変換方法を空き領域の大きさに従い調整することで適用可能である。Ethernet(登録商標)ヘッダ及びIPヘッダの一部の情報を上位プロトコルで利用する場合はヘッダを削除できるとは限らないが、必要な情報のみ抽出してヘッダを縮小することや、固定長のバッファ内に専用の領域を準備することで適用可能である。   The Ethernet (registered trademark) header has 14 bytes, and may be different from other protocols (for example, PPP (Point to Point Protocol)) of the network interface layer. However, even when a network interface layer other than Ethernet (registered trademark) is used, it can be applied by adjusting the basic information and variable conversion method according to the size of the free area. When using a part of information of Ethernet (registered trademark) header and IP header in higher-level protocol, the header may not be deleted, but only necessary information can be extracted to reduce the header, or a fixed length buffer. It can be applied by preparing a dedicated area inside.

また、バッファ内の空き領域(図3〜図5参照)は、基本情報抽出処理部24、変数抽出処理部25、回答作成処理部26、及び、メッセージ作成処理部27間の入出力において利用するだけでなく、基本情報抽出処理部24、変数抽出処理部25、回答作成処理部26、及び、メッセージ作成処理部27の内部処理用の作業領域として利用可能である。   The free space in the buffer (see FIGS. 3 to 5) is used for input / output among the basic information extraction processing unit 24, variable extraction processing unit 25, answer creation processing unit 26, and message creation processing unit 27. In addition, the basic information extraction processing unit 24, the variable extraction processing unit 25, the answer creation processing unit 26, and the message creation processing unit 27 can be used as work areas for internal processing.

また、図3において、受信したEthernet(登録商標)フレームより後の空き領域を利用することも可能である。しかし、この空き領域が存在するか否かは、受信したEthernet(登録商標)フレーム長に依存する。また、この空き領域が存在する場合は、受信したEthernet(登録商標)フレーム長が短い。つまりVariable Bindingsに含まれる変数の数が少ないため、Ethernet(登録商標)ヘッダ、IPヘッダ、及び、UDPヘッダの領域で足りる。よって、受信したEthernet(登録商標)フレームより後の空き領域を利用することは、Ethernet(登録商標)ヘッダ、IPヘッダ、及び、UDPヘッダの領域を利用する場合と比べて効果が少ない。   In FIG. 3, it is also possible to use an empty area after the received Ethernet (registered trademark) frame. However, whether or not this free area exists depends on the received Ethernet (registered trademark) frame length. When this empty area exists, the received Ethernet (registered trademark) frame length is short. That is, since the number of variables included in Variable Bindings is small, the Ethernet (registered trademark) header, IP header, and UDP header regions are sufficient. Therefore, using an empty area after the received Ethernet (registered trademark) frame is less effective than using the Ethernet (registered trademark) header, IP header, and UDP header areas.

また、ネットワークコントローラ12、IP処理回路13、及び、UDP処理回路14がバッファ内の不要となった領域(各ヘッダが格納されていた領域)を保持したまま動作する場合、受信したSNMPメッセージより前に空き領域が存在することが期待できる。このような場合であれば、バッファを可変長としても良い。   In addition, when the network controller 12, the IP processing circuit 13, and the UDP processing circuit 14 operate while holding unnecessary areas (areas where each header is stored) in the buffer, the received message is before the received SNMP message. Can be expected to have free space. In such a case, the buffer may have a variable length.

また、バッファを可変長とするなどした結果、受信したSNMPメッセージ長より回答としてのSNMPメッセージ長の方が大きくなる場合、受信バッファとは別に送信バッファを確保しても良い。このとき、作業領域は、受信バッファ又は送信バッファのどちらかにとることと、分割して両方にとることが可能である。   In addition, when the SNMP message length as a response becomes larger than the received SNMP message length as a result of making the buffer variable, the transmission buffer may be secured separately from the reception buffer. At this time, the work area can be either a reception buffer or a transmission buffer, or can be divided and taken as both.

本発明は、SNMP(Simple Network Management Protocol)処理を行うための半導体集積回路において利用可能である。この回路は、ルータ、ブリッジ等において利用可能である。   The present invention can be used in a semiconductor integrated circuit for performing SNMP (Simple Network Management Protocol) processing. This circuit can be used in routers, bridges, and the like.

本発明の一実施形態に係る半導体集積回路を用いたシステムを示す図。1 is a diagram showing a system using a semiconductor integrated circuit according to an embodiment of the present invention. 図1のSNMP処理回路15の内部構成の概要を示す図。The figure which shows the outline | summary of the internal structure of the SNMP process circuit 15 of FIG. 図2のバッファメモリ22内のフレームのフォーマットを示す図。The figure which shows the format of the flame | frame in the buffer memory 22 of FIG. 図2のバッファメモリ22内の様子を示す図。The figure which shows the mode in the buffer memory 22 of FIG. 図2のバッファメモリ22内の様子を示す図。The figure which shows the mode in the buffer memory 22 of FIG. OSI参照モデルとTCP/IP階層モデルとの対応関係を示す図。The figure which shows the correspondence of an OSI reference model and a TCP / IP hierarchy model.

符号の説明Explanation of symbols

1 SNMPマネージャ、2 ネットワークコントローラ、3 IP処理回路、4 UDP処理回路、5 SNMP処理回路、11 SNMPエージェント、12 ネットワークコントローラ、13 IP処理回路、14 UDP処理回路、15 SNMP処理回路、21 変数記録部、22 バッファメモリ、23 メッセージ受信処理部、24 基本情報抽出処理部、25 変数抽出処理部、26 回答作成処理部、27 メッセージ作成処理部、28 メッセージ送信処理部   DESCRIPTION OF SYMBOLS 1 SNMP manager, 2 Network controller, 3 IP processing circuit, 4 UDP processing circuit, 5 SNMP processing circuit, 11 SNMP agent, 12 Network controller, 13 IP processing circuit, 14 UDP processing circuit, 15 SNMP processing circuit, 21 Variable recording part , 22 buffer memory, 23 message reception processing unit, 24 basic information extraction processing unit, 25 variable extraction processing unit, 26 reply creation processing unit, 27 message creation processing unit, 28 message transmission processing unit

Claims (3)

SNMP(Simple Network Management Protocol)処理を行うための半導体集積回路であって、
SNMPの管理対象である複数の変数の値を記録するための変数記録部と、
フレーム、パケット、及び/又は、データグラムをそれぞれ格納するための複数のバッファを有するバッファメモリと、
前記複数のバッファの中の1つのバッファに第1のSNMPメッセージを含むフレーム、パケット、及び/又は、データグラムが下位レイヤによって書き込まれた場合に、前記下位レイヤからその旨の通知を受けるためのメッセージ受信処理部と、
前記第1のSNMPメッセージの中の基本情報を、前記1つのバッファ内のフレーム、パケット、及び/又は、データグラムの中のヘッダが格納されている領域の全部又は一部である第1の領域に移動及び/又はコピーするための基本情報抽出処理部と、
前記第1のSNMPメッセージの中のVariable Bindings内の複数の変数を解釈して、前記第1の領域の後に続く第2の領域に書き込むための変数抽出処理部と、
前記第2の領域内に格納されている複数の変数にそれぞれ対応する複数の値を前記変数記録部から読み出し、前記第2の領域内に格納されている複数の変数にそれぞれ対応させて前記第1のSNMPメッセージへの回答としてのVariable Bindingsを作成し、前記1つのバッファの末尾の第3の領域に書き込むための回答作成処理部と、
前記第1の領域内に格納されている基本情報に基づいて前記第1のSNMPメッセージへの回答としての基本情報を作成し、前記第3の領域の前の第4の領域に書き込むことにより、前記第1のSNMPメッセージへの回答としての第2のSNMPメッセージを作成するためのメッセージ作成処理部と、
前記第2のSNMPメッセージが作成された旨を前記下位レイヤに通知するためのメッセージ送信処理部と、
を具備する半導体集積回路。
A semiconductor integrated circuit for performing SNMP (Simple Network Management Protocol) processing,
A variable recording unit for recording values of a plurality of variables to be managed by SNMP;
A buffer memory having a plurality of buffers for respectively storing frames, packets, and / or datagrams;
To receive a notification from the lower layer when a frame, packet, and / or datagram containing the first SNMP message is written by the lower layer in one of the plurality of buffers. A message reception processing unit;
A first area in which basic information in the first SNMP message is all or part of an area in which a header in a frame, packet, and / or datagram in the one buffer is stored A basic information extraction processing unit for moving and / or copying to
A variable extraction processing unit for interpreting a plurality of variables in Variable Bindings in the first SNMP message and writing in a second area following the first area;
A plurality of values respectively corresponding to a plurality of variables stored in the second area are read from the variable recording unit, and each of the values is associated with the plurality of variables stored in the second area. An answer creation processing unit for creating Variable Bindings as a reply to one SNMP message and writing it in the third area at the end of the one buffer;
By creating basic information as a reply to the first SNMP message based on the basic information stored in the first area and writing it in the fourth area before the third area, A message creation processing unit for creating a second SNMP message as a reply to the first SNMP message;
A message transmission processing unit for notifying the lower layer that the second SNMP message has been created;
A semiconductor integrated circuit comprising:
前記第1又は第2のSNMPメッセージ内の基本情報が、バージョン、コミュニティ、PDU(Protocol Data Unit)、リクエストID、エラーステータス、及び/又は、エラーインデックスを含む、請求項1記載の半導体集積回路。   The semiconductor integrated circuit according to claim 1, wherein the basic information in the first or second SNMP message includes a version, a community, a PDU (Protocol Data Unit), a request ID, an error status, and / or an error index. 前記複数のバッファが固定長である、請求項1又は2記載の半導体集積回路。   The semiconductor integrated circuit according to claim 1, wherein the plurality of buffers have a fixed length.
JP2004223594A 2004-07-30 2004-07-30 Semiconductor integrated circuit Withdrawn JP2006042288A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004223594A JP2006042288A (en) 2004-07-30 2004-07-30 Semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004223594A JP2006042288A (en) 2004-07-30 2004-07-30 Semiconductor integrated circuit

Publications (1)

Publication Number Publication Date
JP2006042288A true JP2006042288A (en) 2006-02-09

Family

ID=35906738

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004223594A Withdrawn JP2006042288A (en) 2004-07-30 2004-07-30 Semiconductor integrated circuit

Country Status (1)

Country Link
JP (1) JP2006042288A (en)

Similar Documents

Publication Publication Date Title
DE60305378T2 (en) A method for passing on a network stack
US7414975B2 (en) Protocol stack
JP4627669B2 (en) Packet transfer apparatus and transfer control method thereof
US8121148B2 (en) Protocol stack using shared memory
US7386628B1 (en) Methods and systems for processing network data packets
US20050129047A1 (en) Switch capable of controlling data packet transmission and related method
US20030225889A1 (en) Method and system for layering an infinite request/reply data stream on finite, unidirectional, time-limited transports
US7269661B2 (en) Method using receive and transmit protocol aware logic modules for confirming checksum values stored in network packet
JP2000106572A (en) Method and system for address conversion
US20070291782A1 (en) Acknowledgement filtering
US5802064A (en) Protocol header alignment
US20050041587A1 (en) Providing information on ethernet network congestion
JPH11168492A (en) Repeating method for router and router system
JP4040045B2 (en) Data transfer device
JP2006042288A (en) Semiconductor integrated circuit
JP2008113327A (en) Network interface device
JP2006203735A (en) Communication device
US20050044261A1 (en) Method of operating a network switch
US20040223506A1 (en) Packet communication device sending delayed acknowledgement through network
EP4287567A1 (en) Data processing method, apparatus and chip
JP4597102B2 (en) Packet switching equipment
JP4321390B2 (en) Semiconductor integrated circuit
JP4001044B2 (en) Packet receiving method and packet receiving apparatus
JP3605005B2 (en) System and method for selectively separating point-to-point protocol header information
JP5543278B2 (en) Discarded packet monitoring device, discarded packet monitoring method, and discarded packet monitoring program

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20071002