JP5045939B2 - Communication device and relay device - Google Patents
Communication device and relay device Download PDFInfo
- Publication number
- JP5045939B2 JP5045939B2 JP2008085427A JP2008085427A JP5045939B2 JP 5045939 B2 JP5045939 B2 JP 5045939B2 JP 2008085427 A JP2008085427 A JP 2008085427A JP 2008085427 A JP2008085427 A JP 2008085427A JP 5045939 B2 JP5045939 B2 JP 5045939B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- unit
- interface
- bridge
- management
- 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.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims abstract description 122
- 230000005540 biological transmission Effects 0.000 claims description 69
- 238000012546 transfer Methods 0.000 claims description 33
- 230000003247 decreasing effect Effects 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 50
- 238000000034 method Methods 0.000 description 24
- 230000008569 process Effects 0.000 description 22
- 230000006870 function Effects 0.000 description 18
- 230000015654 memory Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 230000004044 response Effects 0.000 description 9
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 8
- 239000000284 extract Substances 0.000 description 5
- HRULVFRXEOZUMJ-UHFFFAOYSA-K potassium;disodium;2-(4-chloro-2-methylphenoxy)propanoate;methyl-dioxido-oxo-$l^{5}-arsane Chemical compound [Na+].[Na+].[K+].C[As]([O-])([O-])=O.[O-]C(=O)C(C)OC1=CC=C(Cl)C=C1C HRULVFRXEOZUMJ-UHFFFAOYSA-K 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- IHWWMRTWJKYVEY-UHFFFAOYSA-N cyclopenta(cd)pyrene 3,4-oxide Chemical compound C1=CC(C2OC22)=C3C2=CC2=CC=CC4=CC=C1C3=C24 IHWWMRTWJKYVEY-UHFFFAOYSA-N 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Communication Control (AREA)
Abstract
Description
この発明は、例えば、PPPoE(Point to Point Protocol over Ethernet(登録商標))プロトコルを用いる通信路において用いられて好適な通信装置および中継装置に関する。 The present invention relates to a communication apparatus and a relay apparatus suitable for use in a communication path using, for example, a PPPoE (Point to Point Protocol over Ethernet (registered trademark)) protocol.
PPPoEのプロトコルを用いた通信システムの一例の構成の概要を図19に示す。 FIG. 19 shows an outline of a configuration of an example of a communication system using the PPPoE protocol.
図19に示すように、インターネット1には、ブロードバンド接続業者2のサーバが接続されている。家庭や事業所の通信設備は、光ケーブルやADSL(Asymmetric Digital Subscriber Line)3を通じてブロードバンド接続業者2と接続され、このブロードバンド接続業者2を通じてインターネット1に接続される。
As shown in FIG. 19, a server of a
家庭や事業所においては、光ケーブルやADSL3は、ブロードバンドモデム/回線終端装置4を通じてルータ5に接続される。ルータ5には、例えばイーサーネット(登録商標)からなるLAN(Local Area Network)を通じて複数台のパーソナルコンピュータ6やゲーム機7が接続されている。
At home or business, an optical cable or
この図19のシステム構成において、ルータ5がPPPoEの機能を備えていれば、複数のパーソナルコンピュータ6からインターネット1に直接にアクセスすることができる。その場合のPPPoEクライアントは、ルータ5である。この場合に、ブロードバンドモデム/回線終端装置4は、PPPoEブリッジと呼ばれる中継装置を備える。
In the system configuration of FIG. 19, if the
なお、ゲーム機7がPPPoEの機能を備えていれば、ゲーム機7は、ブロードバンドモデム/回線終端装置4のPPPoEブリッジを通じて、ルータ5を介さずにPPPoEパケットの転送ができる。
If the
この通信システムにおけるPPPoEでのシーケンスは、例えば特許文献1(特開2003−333064号公報)に示されているように、図20に示すようなものとなる。また、PPPoEフレームのフォーマットは、図21に示すようなものとなっている。先ず、図21のPPPoEフレームのフォーマットについて説明する。 The sequence in PPPoE in this communication system is as shown in FIG. 20, for example, as shown in Patent Document 1 (Japanese Patent Laid-Open No. 2003-333064). Also, the format of the PPPoE frame is as shown in FIG. First, the format of the PPPoE frame in FIG. 21 will be described.
図21に示すように、PPPoEフレームは、宛先アドレス「DESTINATION_ADDR」、送信元アドレス「SOURCE_ADDR」、パケット種別「ETHER_TYPE」、データ「payload」、エラー検出用のチェックサム「CHECKSUM」とからなる。宛先アドレス「DESTINATION_ADDR」、送信元アドレス「SOURCE_ADDR」、パケット種別「ETHER_TYPE」は、PPPoEフレームのヘッダ部である。 As shown in FIG. 21, the PPPoE frame includes a destination address “DESTINATION_ADDR”, a transmission source address “SOURCE_ADDR”, a packet type “ETHER_TYPE”, data “payload”, and an error detection checksum “CHECKSUM”. The destination address “DESTINATION_ADDR”, the source address “SOURCE_ADDR”, and the packet type “ETHER_TYPE” are header parts of the PPPoE frame.
パケット種別「ETHER_TYPE」は、管理用パケットと、データ通信用のパケットとを判別するための判別情報である。具体的には、このパケット種別「ETHER_TYPE」が、「0x8863」であるときには、そのパケットは、管理用パケット(Discovery Stage(PPPoEセッションの開始時))であることを示しており、「0x8864」であるときには、そのパケットは、データ通信用パケット(PPP Session Stage(PPPによる通信時)であることを示している。 The packet type “ETHER_TYPE” is discrimination information for discriminating between a management packet and a data communication packet. Specifically, when the packet type “ETHER_TYPE” is “0x8863”, this indicates that the packet is a management packet (Discovery Stage (at the start of a PPPoE session)), and “0x8864”. In some cases, the packet indicates a data communication packet (PPP Session Stage (during PPP communication)).
したがって、このパケット種別「ETHER_TYPE」が上記のいずれであるかを認定することにより、パケットが管理用のパケットであるか、データ通信用のパケットであるかを判別することができる。 Accordingly, by identifying which of the above packet types “ETHER_TYPE” is, it is possible to determine whether the packet is a management packet or a data communication packet.
データ「payload」は、バージョン「VER」と、タイプ「TYPE」と、パケットのセッションの状態を示すコード「CODE」と、PPPoEのセッション識別情報(セッションID(Identification))「SESSION_ID」と、ペイロードの長さの情報「LENGTH」とからなるヘッダ部と、データ部としてのペイロード「payload」とからなる。 The data “payload” includes the version “VER”, the type “TYPE”, the code “CODE” indicating the session state of the packet, the session identification information of PPPoE (session ID (Identification)) “SESSION_ID”, and the payload It consists of a header portion consisting of length information “LENGTH” and a payload “payload” as a data portion.
セッションIDは、通信を開始しようとする2点間で接続されるパケット伝送路を識別するための伝送路識別情報である。セッションは、ここでは、仮想的な伝送路を意味するものとする。 The session ID is transmission path identification information for identifying a packet transmission path connected between two points to start communication. Here, the session means a virtual transmission path.
コード「CODE」は、図21に示すように、5個のセッションの状態を示すものとされている。すなわち、「CODE」は、PADI(PPPoE Active Discovery Initiation)と、PADO(PPPoE Active Discovery Offer)と、PADR(PPPoE Active Discovery Request)と、PADS(PPPoE Active Discovery Session−confirmation)と、PADT(PPPoE Active Discovery Terminate)との5種のコード情報のいずれかとなる。 The code “CODE” indicates the status of five sessions as shown in FIG. That is, “CODE” includes PADI (PPPoE Active Discovery Initiation), PADO (PPPoE Active Discovery Over), PADR (PPPoE Active Discovery Request), and PADS (CPPE). (Terminate) and any one of the five types of code information.
次に、図20を参照して、PPPoEでの通信シーケンスを説明する。図20において、PPPoEクライアントは、図19のルータなどである。PPPoEサーバは、ブロードバンド接続業者2のサーバである。
Next, a communication sequence in PPPoE will be described with reference to FIG. In FIG. 20, the PPPoE client is the router of FIG. The PPPoE server is a server of the
(1)先ず、PPPoEクライアントは、PPPoEサーバを探すパケット(「CODE」がPADIのパケット;以下、PADIパケットという)をブロードキャストで送信する。 (1) First, the PPPoE client broadcasts a packet for searching for a PPPoE server (“CODE” is a PADI packet; hereinafter referred to as a PADI packet).
(2)PPPoEサーバは、これに対して返答のパケット(「CODE」がPADOのパケット;以下、PADOパケットという)を、PPPoEクライアントに返す。 (2) The PPPoE server returns a reply packet ("CODE" is a PADO packet; hereinafter referred to as a PADO packet) to the PPPoE client.
(3)PPPoEクライアントは、この返答のPADOパケットにより、PPPoEサーバが特定できるので、その特定したPPPoEサーバに、セッションの開始を要求するパケット(「CODE」がPADRのパケット;以下、PADRパケットという)を送る。 (3) Since the PPPoE client can specify the PPPoE server by the PADO packet of this response, a packet requesting the session start of the specified PPPoE server (“CODE” is a PADR packet; hereinafter referred to as a PADR packet) Send.
(4)このPADRパケットを受け取ったPPPoEサーバは、通信を開始しようとする伝送路についてのセッションIDを設定し、当該セッションIDを含めたセッションIDを通知するのためのパケット(「CODE」がPADSのパケット;以下、PADSパケットという)を、PPPoEクライアントに返す。 (4) Upon receiving this PADR packet, the PPPoE server sets a session ID for the transmission path on which communication is to be started, and a packet for notifying the session ID including the session ID (“CODE” is PADS). (Hereinafter referred to as PADS packet) to the PPPoE client.
以上の(1)−(4)までのシーケンス(PPPoEセッションステージ)により、PPPoEサーバは、セッションを確立するPPPoEクライアントの宛先アドレス「DESTINATION_ADDR」を特定し、また、セッションIDの設定およびセッションIDのPPPoEクライアント端末への通知を行う。 Through the above sequence (1) to (4) (PPPoE session stage), the PPPoE server specifies the destination address “DESTATION_ADDR” of the PPPoE client that establishes the session, and sets the session ID and the PPPoE of the session ID. Notify the client terminal.
以上のPPPoEセッションステージの次には、PPPセッションステージのシーケンスが行われる。 Following the PPPoE session stage, a PPP session stage sequence is performed.
(5)先ず、LCP(Link Control Protocol)によりネゴシエーションを行い、データリンク(パケット伝送路)を確立する。 (5) First, negotiation is performed by LCP (Link Control Protocol) to establish a data link (packet transmission path).
(6)次に、認証を行う。 (6) Next, authentication is performed.
(7)次に、PPPのネゴシエーションが開始され、IPCP(Internet Protocol Control Protocol)ネゴシエーションにより、インターネット1上のグローバルIPアドレスの割り当てが行なわれる。 (7) Next, PPP negotiation is started, and global IP addresses on the Internet 1 are assigned by IPCP (Internet Protocol Control Protocol) negotiation.
(8)そして、PPPによる通信が開始される。 (8) Then, communication by PPP is started.
PPPoEクライアントとPPPoEサーバとの間では、上述した(1)−(4)のPPPoEセッションステージでは、管理用のパケットがやり取りされ、それ以降の上述した(5)−(8)のPPPセッションステージでは、データ通信用のパケットがやり取りされる。 Management packets are exchanged between the PPPoE client and the PPPoE server in the above-described PPPoE session stage (1) to (4), and in the subsequent PPP session stage (5) to (8). Packets for data communication are exchanged.
前述したブロードバンドモデム/回線終端装置4のPPPoEブリッジは、図20に示すように、PPPoEクライアントとPPPoEサーバとの間に設けられて、両者の間におけるパケットの中継を行うものである。
The PPPoE bridge of the broadband modem /
ところで、従来のPPPoEブリッジ10は、図22に示すように、WAN(Wide Area Network)側インターフェース11と、LAN側インターフェース12と、ブリッジ部13とで構成されている。
Incidentally, as shown in FIG. 22, the conventional PPPoE bridge 10 includes a WAN (Wide Area Network)
図19の例の場合、WAN側インターフェース11は、インターネット側に接続されるインターフェースであり、LAN側インターフェース12は、ルータ5に接続されるインターフェースである。
In the case of the example of FIG. 19, the
ブリッジ部13は、マイクロコンピュータ(CPU)やDSP(Digital Signal Processor)などで構成されており、ソフトウエア処理により、管理用のパケットと、データ通信用のパケットとを、両者の区別なく、WAN側インターフェース11からLAN側インターフェース12に、あるいはその逆に、図19において、点線矢印で示すように中継転送するようにしている。
The
上記の特許文献は、次の通りである。
図21に示したように、従来のPPPoEブリッジ10においては、管理用のパケットとデータ通信用のパケットとを、ブリッジ部13で全て、ソフトウエアにより扱うようにしていた。このため、セッション数が多くなると、ブリッジ部10を構成するマイクロコンピュータのパフォーマンスが問題になる場合が生じる。
As shown in FIG. 21, in the conventional PPPoE bridge 10, the management unit and the data communication packet are all handled by software in the
また、PPPoEブリッジ10において、セッション管理を行なう必要がある場合がある。例えば、PPPoEブリッジ10のブリッジ部13のソフトウエアプログラムを、インターネットに接続されているサーバにアクセスしてダウンロードして、更新する場合等である。
In some cases, the PPPoE bridge 10 needs to perform session management. For example, the software program of the
このような場合には、PPPoEブリッジ10のブリッジ部13は、セッションを管理して、自身のPPPoE通信をするようにする必要がある。このセッション管理は、従来の場合には、ブリッジ部13で行なう必要があるが、当該ブリッジ部13では管理用パケットとデータ通信用パケットとを共に扱うようにしているため、ブリッジ部13の負荷が加重となり、そのパフォーマンスに問題が生じる場合がある。
In such a case, the
そこで、上記の問題点を解消した新規の中継装置を、出願人は、考案した。図23は、出願人が考案した新規の中継装置の一例としてのPPPoEブリッジ20の構成の概要を示すブロック図である。 Therefore, the applicant has devised a new relay device that solves the above problems. FIG. 23 is a block diagram showing an outline of the configuration of the PPPoE bridge 20 as an example of a new relay device devised by the applicant.
この図23に示すように、この例のPPPoEブリッジ20は、前述した従来例のPPPoEブリッジ部10のWAN側インターフェース11およびLAN側インターフェース12と同様のWAN側インターフェース21およびLAN側インターフェース22を備える。
As shown in FIG. 23, the PPPoE bridge 20 of this example includes a
そして、この例のPPPoEブリッジ20においては、前述した従来例のPPPoEブリッジ部10のブリッジ部10を、管理パケットブリッジ部23と、データパケットブリッジ部24との2つに分け、管理パケットブリッジ部23は、WAN側インターフェース21およびLAN側インターフェース22に対して、データパケットブリッジ部24を介して接続されるように構成する。
In the PPPoE bridge 20 of this example, the bridge unit 10 of the PPPoE bridge unit 10 of the conventional example described above is divided into a management
データパケットブリッジ部24には、WAN側インターフェース21またはLAN側インターフェース22から到来するPPPoEパケットが、管理用のパケットであるか、データ通信用のパケットであるかを判定する機能を備える。
The data
そして、データパケットブリッジ部24は、WAN側インターフェース21またはLAN側インターフェース22から到来するPPPoEパケットが、管理用のパケットであると判定したときには、当該管理用のパケットを管理パケットブリッジ部23に渡すようにする。
When the data
また、データパケットブリッジ部24は、WAN側インターフェース21またはLAN側インターフェース22から到来するPPPoEパケットが、データ通信用のパケットであると判定したときには、当該データ通信用のパケットは、管理パケットブリッジ部23には渡さずに、自己のブリッジ部24内を透過(転送中継)させるようにする。
When the data
つまり、この例のPPPoEブリッジ20においては、管理パケットブリッジ部23は、管理用のパケットのみを取り扱い、データ通信用のパケットは、データパケットブリッジ部24のみを透過するように構成される。
That is, in the PPPoE bridge 20 of this example, the management
すなわち、管理用のパケットは、図23において、太い点線25で示すように、管理パケットブリッジ部23により、WAN側インターフェース21とLAN側インターフェース22との間における中継転送(以下、WAN側インターフェース21とLAN側インターフェース22との間における中継転送をブリッジ転送という)がなされる。また、データ通信用のパケットは、図23において、細い点線26で示すように、データパケットブリッジ部24により、ブリッジ転送がなされる。
That is, as shown by a thick dotted
この結果、この例のPPPoEブリッジ20では、図23のPPPoEのシーケンスに示したPPPoEセッションのシーケンスでの管理用パケットのブリッジ転送は、管理パケットブリッジ部23が実行し、セッションが確立した後のPPPセッションでのデータ通信用パケットのブリッジ転送は、データパケットブリッジ部24を通じてのみ行われる。
As a result, in the PPPoE bridge 20 of this example, the management
したがって、管理パケットブリッジ部23は、マイクロコンピュータ(CPU)を備えて、ソフトウエア処理の構成とされる。管理パケットブリッジ部23は、管理用のパケットのみを取り扱えばよいので、ソフトウエア処理であってもその負担は軽くなり、パフォーマンスが向上する。そして、管理パケットブリッジ部23でセッション管理をすることも容易になる。
Therefore, the management
また、データパケットブリッジ部24は、例えばFPGA(Field Programable Gate Array)などによるハードウエア処理構成とすることができ、データ通信用のパケットのブリッジ転送は、いわゆるワイヤースピードでの高速転送が可能となる。しかも、その場合に、データパケットブリッジ部24は、管理パケットブリッジ部23のパフォーマンスを考慮する必要はないというメリットがある。
The data
ところで、この図23に示すように構成することで、管理パケットブリッジ部23では、ソフトウエア処理により、セッション管理が容易にできるようになるため、未知のセッションのパケットを受信した場合、そのパケットを廃棄して当該セッションを切断するなどの処理をことができる。
By the way, with the configuration shown in FIG. 23, the management
また、例えば管理パケットブリッジ部23のソフトウエアプログラムを新しいものに更新するなど、当該中継装置をPPPoEクライアントとして動作させるようにすることもできるが、その場合に空きのセッションがないときには、セッションを切断して空きを作るなどの処理も行うことができる。
In addition, for example, the software program of the management
そのような場合、管理パケットブリッジ部23からは、LAN側やWAN側からのパケットに関係なく、任意のタイミングで、接続管理用のパケットが送出されたりする。しかし、データパケットブリッジ部24では、管理パケットブリッジ部23からの管理用のパケットの送出タイミングを管理しているわけではない。
In such a case, a connection management packet is transmitted from the management
このため、図23から明らかなように、データパケットブリッジ部24では、LAN側からのデータ通信用パケットをWAN側にブリッジ転送する場合、また、逆に、WAN側からのデータ通信用パケットをLAN側にブリッジ転送する場合において、管理パケットブリッジ部23からの管理用のパケットとの衝突が発生し、いずれかのパケットが廃棄されてしまう可能性が高い。
Therefore, as is apparent from FIG. 23, the data
このような2つの入力パケットの衝突は、上述した中継装置に限らず、パケット通信を行なう他の通信装置においても生じる問題である。 Such a collision between two input packets is a problem that occurs not only in the above-described relay apparatus but also in other communication apparatuses that perform packet communication.
この発明は、以上の問題にかんがみ、2つの入力パケットの衝突が生じないように調停して、必要な送信パケットの廃棄をできるだけ回避することができるようにすることを目的とする。 In view of the above problems, an object of the present invention is to perform arbitration so that a collision between two input packets does not occur, and to avoid discarding a necessary transmission packet as much as possible.
上記課題を解決するために、この発明による通信装置は、
優先順位の情報をヘッダ部に備えるパケットの第1の入力部と、
前記パケットの第2の入力部と、
前記パケットの前記優先順位の情報に基づいて、前記第1の入力部からの前記パケットが、前記優先順位に応じた複数のクラスのいずれのクラスに属するかを判断してクラス分けする第1のクラス分け手段と、
前記複数のクラスのそれぞれに対応する複数のパケット保持領域を備え、前記第1の入力部からの前記パケットを、前記第1のクラス分け手段で判断された前記パケットのクラスに対応する前記パケット保持領域に保持する第1のバッファ部と、
前記複数のクラスのそれぞれに対応する複数のステータス情報保持領域を備え、前記第1の入力部からの前記パケットについて前記第1のクラス分け手段で判断されたクラスに対応する前記ステータス情報保持領域に、対応するクラスの前記第1のバッファ部の前記パケット保持領域に前記パケットが保持されていることを示すステータス情報を保持する第1のステータス情報保持手段と、
前記パケットの前記優先順位の情報に基づいて、前記第2の入力部からの前記パケットが、前記優先順位に応じた複数のクラスのいずれのクラスに属するかを判断してクラス分けする第2のクラス分け手段と、
前記複数のクラスのそれぞれに対応する複数のパケット保持領域を備え、前記第2の入力部からの前記パケットを、前記第2のクラス分け手段で判断された前記パケットのクラスに対応する前記パケット保持領域に保持する第2のバッファ部と、
前記複数のクラスのそれぞれに対応する複数のステータス情報保持領域を備え、前記第2の入力部からの前記パケットについて前記第2のクラス分け手段で判断されたクラスに対応する前記ステータス情報保持領域に、対応するクラスの前記第2のバッファ部の前記パケット保持領域に前記パケットが保持されていることを示すステータス情報を保持する第2のステータス情報保持手段と、
前記第1のステータス情報保持手段および前記第2のステータス情報保持手段の前記複数のステータス情報保持領域に保持されている前記ステータス情報を、前記第1のバッファ部と、前記第2のバッファ部のいずれかを高優先順位として予め定めて、前記複数のクラスの優先順位に従って前記クラス毎に順次に参照し、そのときに最も優先順位が高いクラスの待ちパケットを、前記第1のバッファ部または前記第2のバッファ部から読み出して、出力として送出するようにする送信調停手段と、
を備えることを特徴とする。
In order to solve the above problems, a communication device according to the present invention provides:
A first input portion of a packet comprising priority information in a header portion;
A second input portion of the packet;
First classifying the packet from the first input unit based on the priority information of the packet by determining which class of a plurality of classes according to the priority order belongs to Classification means,
A plurality of packet holding areas corresponding to each of the plurality of classes; and the packet holding corresponding to the class of the packet determined by the first classifying means for the packet from the first input unit. A first buffer section held in the area;
A plurality of status information holding areas corresponding to each of the plurality of classes , wherein the status information holding area corresponding to the class determined by the first classification means for the packet from the first input unit; First status information holding means for holding status information indicating that the packet is held in the packet holding area of the first buffer unit of the corresponding class;
Based on the priority information of the packet, the packet from the second input unit is classified into a plurality of classes according to the priority and classified Classification means,
A plurality of packet holding areas corresponding to each of the plurality of classes, and the packet holding corresponding to the class of the packet determined by the second classification means A second buffer unit held in the area;
A plurality of status information holding areas corresponding to each of the plurality of classes , wherein the status information holding area corresponding to the class determined by the second classification means for the packet from the second input unit; Second status information holding means for holding status information indicating that the packet is held in the packet holding area of the second buffer unit of the corresponding class;
The status information held in the plurality of status information holding areas of the first status information holding unit and the second status information holding unit is transferred to the first buffer unit and the second buffer unit. Any one of them is set as a high priority in advance, and is sequentially referred to for each class according to the priorities of the plurality of classes. Transmission arbitration means for reading from the second buffer unit and sending it as output;
It is characterized by providing.
上述の構成のこの発明の通信装置においては、パケットのヘッダ部には、送信についての優先順位の情報が含まれているので、それに基づいて、パケットの衝突を調停する。 In the communication apparatus of the present invention having the above-described configuration, the packet header portion includes information on the priority order for transmission. Based on this information, the packet collision is arbitrated.
そして、この発明の通信装置においては、パケットを、前記優先順位の情報から複数のクラスにクラス分けし、分けられたクラス毎に、バッファ部に保持する。第1の入力部を通じて入力されるパケットは、第1のバッファ部に、クラス毎に分けられて保持される。また、第2の入力部を通じて入力されるパケットは、第2のバッファ部に、クラス毎に分けられて保持される。 In the communication apparatus according to the present invention, the packets are classified into a plurality of classes based on the priority information, and held in the buffer unit for each of the divided classes. Packets input through the first input unit are stored in the first buffer unit by being divided for each class. Further, packets input through the second input unit are held in the second buffer unit by being divided for each class.
そして、第1のバッファ部と、第2のバッファ部にも送信についての優先順位を付与しておく。例えば、第1のバッファ部の方が優先順位が高いとした場合、送信調停手段は、先ず、第1のバッファ部における優先順位が第1位、第2位、第3位、・・・のクラスを、第1のバッファ部と第2のバッファ部との両方を対象にした全てのクラスにおける優先順位を、第1位、第3位、第5位・・・とする。優先順位が第1位、第2位、第3位、・・・のクラスを、全てのクラスにおける優先順位としては、第2位、第4位、第6位・・・とする。 The first buffer unit and the second buffer unit are also given priorities for transmission. For example, when the priority order of the first buffer unit is higher, the transmission arbitration unit first sets the priority order of the first buffer unit to the first, second, third,. The priorities of all classes for both the first buffer unit and the second buffer unit are the first, third, fifth, etc. The classes with the first, second, third,... Priority are the second, fourth, sixth,...
そして、送信調停手段は、優先順位の高いクラスのパケットから順に読み出して、送出するように調停する。 Then, the transmission arbitration means arbitrates the packets so that they are read out in order from the class packet with the highest priority and are transmitted.
こうして、この発明による通信装置においては、送信調停手段は、2つの入力パケットについて、その入力タイミングが制御できない場合であっても、衝突を回避して、自動的のそれぞれのパケットの優先順位に従った調停をすることができる。 Thus, in the communication apparatus according to the present invention, the transmission arbitration means avoids a collision and automatically follows the priority of each packet even when the input timing of two input packets cannot be controlled. Mediation.
また、この発明による中継装置は、
パケットが管理用であるかデータ通信用であるかを判別するための判別情報と、2点間で接続される当該パケットの伝送路を識別するための伝送路識別情報と、送信についての優先順位の情報とをヘッダ部に含む前記パケットを中継する中継装置であって、
通信の一方の相手方に対して前記パケットの送受信を行うための第1のインターフェースと、
前記通信の他方の相手方に対して前記パケットの送受信を行うための第2のインターフェースと、
前記第1のインターフェースを通じて送受されるパケットのうちの前記管理用のパケットの送受を行なうための第3のインターフェースと、前記第2のインターフェースを通じて送受されるパケットのうちの前記管理用のパケットの送受を行なうための第4のインターフェースと、前記第3および前記第4のインターフェース間での前記管理用のパケットの転送を行う第1のブリッジ部を備える管理パケットブリッジ部と、
前記第1のインターフェースと接続される第5のインターフェースと、前記第2のインターフェースとされる第6のインターフェースと、前記第3のインターフェースと接続される第7のインターフェースと、前記第4のインターフェースと接続される第8のインターフェースと、前記第1のインターフェースおよび前記第2のインターフェース間での前記データ通信用のパケットの転送を行うと共に、前記第5または前記第6のインターフェースを通じて入力される前記管理用パケットは、前記管理パケットブリッジ部に、前記第7または第8のインターフェースを通じて転送し、前記第7または前記第8のインターフェースを通じて入力される前記管理用パケットは、前記第5または第6のインターフェースを通じて前記第1または前記第2のインターフェースに転送するようにする第2のブリッジ部を備える前記データパケットブリッジ部と、
を備える中継装置において、
前記データパケットブリッジ部の前記第2のブリッジ部は、前記第5のインターフェースを通じて入力されるデータ通信用のパケットを前記第6のインターフェースに、前記第8のインターフェースから送られてくる管理用のパケットとの衝突を調停しながら転送する第1のブリッジ部分と、前記第6のインターフェースを通じて入力されるデータ通信用のパケットを前記第5のインターフェースに、前記第7のインターフェースから送られてくる管理用のパケットとの衝突を調停しながら転送する第2のブリッジ部分とからなり、
前記第1および前記第2のブリッジ部分のそれぞれは、
前記パケットの前記優先順位の情報に基づいて、前記第5のインターフェースまたは前記第6のインターフェースからの前記データ通信用のパケットが、前記優先順位に応じたクラスのいずれのクラスに属するかを判断してクラス分けする第1のクラス分け手段と、
前記複数のクラスのそれぞれに対応する複数のパケット保持領域を備え、前記第5のインターフェースまたは前記第6のインターフェースからの前記データ通信用のパケットを、前記第1のクラス分け手段で判断された前記パケットのクラスに対応する前記パケット保持領域に保持する第1のバッファ部と、
前記複数のクラスのそれぞれに対応する複数のステータス情報保持領域を備え、前記第5のインターフェースまたは前記第6のインターフェースからの前記データ通信用のパケットについて前記第1のクラス分け手段で判断されたクラスに対応する前記ステータス情報保持領域に、対応するクラスの前記第1のバッファ部の前記パケット保持領域に前記パケットが保持されていることを示すステータス情報を保持する第1のステータス情報保持手段と、
前記パケットの前記優先順位の情報に基づいて、前記第7のインターフェースまたは前記第8のインターフェースからの前記管理用のパケットが、前記優先順位に応じたクラスのいずれのクラスに属するかを判断してクラス分けする第2のクラス分け手段と、
前記複数のクラスのそれぞれに対応する複数のパケット保持領域を備え、前記第7のインターフェースまたは前記第8のインターフェースからの前記管理用のパケットを、前記第1のクラス分け手段で判断された前記パケットのクラスに対応する前記パケット保持領域に保持する第2のバッファ部と、
前記複数のクラスのそれぞれに対応する複数のステータス情報保持領域を備え、前記第7のインターフェースまたは前記第8のインターフェースからの前記管理用のパケットについて前記第2のクラス分け手段で判断されたクラスのステータス情報保持領域に、対応するクラスの前記第2のバッファ部の前記パケット保持領域に前記パケットが保持されていることを示すステータス情報を保持する第2のステータス情報保持手段と、
前記第1のステータス情報保持手段および前記第2のステータス情報保持手段の前記複数のステータス情報保持領域に保持されている前記ステータス情報を、前記第1のバッファ部と、前記第2のバッファ部のいずれかを高優先順位として予め定めて、前記複数のクラスの優先順位に従って前記クラス毎に順次に参照し、そのときに最も優先順位が高い前記データ通信用のパケットまたは前記管理用のクラスの待ちパケットを、前記第1のバッファ部または前記第2のバッファ部から読み出して、出力として送出するようにする送信調停手段と、
を備えることを特徴とする。
The relay device according to the present invention
Discrimination information for discriminating whether a packet is for management or data communication, transmission path identification information for identifying the transmission path of the packet connected between two points, and priority for transmission A relay device that relays the packet including the information in the header part,
A first interface for transmitting and receiving the packet to one communication partner;
A second interface for transmitting and receiving the packet to the other party of the communication;
A third interface for transmitting and receiving the management packet among packets transmitted and received through the first interface, and a transmission and reception of the management packet among packets transmitted and received through the second interface A management packet bridge unit comprising: a fourth interface for performing: and a first bridge unit for transferring the management packet between the third and fourth interfaces;
A fifth interface connected to the first interface, a sixth interface connected to the second interface, a seventh interface connected to the third interface, and the fourth interface; The management interface that transfers the packet for data communication between the eighth interface to be connected, the first interface, and the second interface, and is input through the fifth or sixth interface. Packet for use is transferred to the management packet bridge unit through the seventh or eighth interface, and the management packet input through the seventh or eighth interface is sent to the fifth or sixth interface. Through the first or the And the data packet bridge portion comprising a second bridge portion to be transferred to the second interface,
In a relay device comprising:
The second bridging unit of the data packet bridging unit sends a data communication packet input through the fifth interface to the sixth interface as a management packet sent from the eighth interface. A first bridge portion that transfers while arbitrating a collision with the data, and a data communication packet input through the sixth interface is sent to the fifth interface from the seventh interface A second bridge portion that transfers while arbitrating the collision with the packet of
Each of the first and second bridge portions is:
Based on the priority information of the packet, it is determined which class of the data communication packet from the fifth interface or the sixth interface belongs to the class according to the priority. First classifying means for classifying
A plurality of packet holding areas corresponding to each of the plurality of classes, the packet for data communication from the fifth interface or the sixth interface being determined by the first classifying means; A first buffer section held in the packet holding area corresponding to a packet class;
A plurality of status information holding areas corresponding to each of the plurality of classes, the class determined by the first classification means for the data communication packet from the fifth interface or the sixth interface; a first status information holding means for holding status information indicating that the status information holding area corresponding, the packet to the packet holding region of the first buffer portion of the corresponding class is held in,
Based on the priority information of the packet, it is determined whether the management packet from the seventh interface or the eighth interface belongs to a class according to the priority. A second classifying means for classifying;
A plurality of packet holding areas corresponding to each of the plurality of classes, wherein the packet for management from the seventh interface or the eighth interface is determined by the first classification means; A second buffer unit held in the packet holding area corresponding to the class of
A plurality of status information holding areas corresponding to each of the plurality of classes, the class of packets determined by the second classification means for the management packet from the seventh interface or the eighth interface; Second status information holding means for holding status information indicating that the packet is held in the packet holding area of the second buffer unit of the corresponding class in the status information holding area;
The status information held in the plurality of status information holding areas of the first status information holding unit and the second status information holding unit is transferred to the first buffer unit and the second buffer unit. One of them is determined as a high priority in advance, and is sequentially referred to for each of the classes according to the priority of the plurality of classes, and at that time, the packet for data communication or the management class having the highest priority is waited for. Transmission arbitration means for reading a packet from the first buffer unit or the second buffer unit and sending the packet as an output;
It is characterized by providing.
上述の構成のこの発明による中継装置によれば、ブリッジ部を、管理用のパケットのみを処理する管理パケットブリッジ部と、データ通信用のパケットのみを中継転送処理するデータパケットブリッジ部とに分けたので、データパケットブリッジ部では、伝送路管理(セッション管理)を行うための処理パフォーマンスを気にすることなく、データ通信用のパケットの中継転送が可能になる。 According to the relay device of the present invention having the above-described configuration, the bridge unit is divided into a management packet bridge unit that processes only management packets and a data packet bridge unit that relays and transfers only data communication packets. Therefore, the data packet bridge unit can relay and transfer a packet for data communication without worrying about processing performance for performing transmission path management (session management).
そして、この発明による中継装置よれば、データパケットブリッジ部では、データ通信用のパケットは、優先順位の情報に応じてクラスに分けられて、第1のバッファ部に保持され、また、管理用のパケットは、優先順位の情報に応じてクラスに分けられて、第1のバッファ部に保持される。 According to the relay device of the present invention, in the data packet bridge unit, the data communication packets are divided into classes according to the priority information, held in the first buffer unit, and also used for management. Packets are classified into classes according to priority information and held in the first buffer unit.
そして、上述の通信装置と同様にして、送信調停手段は、二つのバッファ部の各クラスについて、全体としての優先順位を定め、その定めた優先順位に従って、優先順位の高いクラスのパケットを第1のバッファ部または第2のバッファ部から読み出して送出する。 Then, in the same manner as in the communication apparatus described above, the transmission arbitration means determines the priority order as a whole for each class of the two buffer units, and according to the determined priority order, the first class packet having the higher priority order is set. Are read from the second buffer unit or the second buffer unit and transmitted.
したがって、この発明の中継装置によれば、ブリッジ部を、管理パケットブリッジ部とデータパケットブリッジ部とに分けた構成とした場合に生じるデータパケットブリッジ部における管理用のパケットとデータ通信用のパケットとの衝突を回避して、自動的のそれぞれのパケットの優先順位に従った調停をすることができる。 Therefore, according to the relay device of the present invention, the management packet and the data communication packet in the data packet bridge unit generated when the bridge unit is divided into the management packet bridge unit and the data packet bridge unit, Thus, it is possible to automatically perform arbitration according to the priority order of each packet.
この発明による通信装置によれば、2つの入力パケットについて、その入力タイミングが制御できない場合であっても、衝突を回避して、自動的のそれぞれのパケットの優先順位に従った調停をすることができる。 According to the communication device of the present invention, even when the input timing of two input packets cannot be controlled, collision can be avoided and arbitration can be automatically performed according to the priority order of each packet. it can.
また、この発明による中継装置によれば、ブリッジ部を、管理パケットブリッジ部とデータパケットブリッジ部とに分けた構成として、伝送路管理(セッション管理)を行うための処理パフォーマンスを気にすることなく、データ通信用のパケットの中継転送が可能になると共に、データパケットブリッジ部における管理用のパケットとデータ通信用のパケットとの衝突を回避して、自動的のそれぞれのパケットの優先順位に従った調停をすることができる。 Further, according to the relay device according to the present invention, the bridge unit is divided into the management packet bridge unit and the data packet bridge unit without worrying about processing performance for performing transmission path management (session management). In addition to enabling relay transfer of data communication packets, the data packet bridge unit automatically avoids a collision between a management packet and a data communication packet, and automatically follows the priority of each packet. Mediation can be done.
以下、この発明による中継装置の実施形態を、上述した図19の通信システムの、ブロードバンドモデム/回線終端装置4に設けられるPPPoEブリッジに適用した場合を例に取って、図を参照しながら説明する。この発明による通信装置の実施形態は、以下に説明する中継装置のWAN側またはLAN側の一方についてのデータ送信調停の処理に適用されているものである。
Hereinafter, the embodiment of the relay device according to the present invention will be described with reference to the drawings, taking as an example the case where the relay device according to the present invention is applied to the PPPoE bridge provided in the broadband modem /
図1は、この発明による中継装置の実施形態としてのPPPoEブリッジ30の構成の概要を示すブロック図である。図1に示すように、この実施形態のPPPoEブリッジ30は、WAN側およびLAN側のそれぞれに対して設けられるスイッチングハブ(以下、スイッチという)31および32と、管理パケットブリッジ部33と、データパケットブリッジ部34とからなる。
FIG. 1 is a block diagram showing an outline of a configuration of a PPPoE bridge 30 as an embodiment of a relay apparatus according to the present invention. As shown in FIG. 1, the PPPoE bridge 30 of this embodiment includes switching hubs (hereinafter referred to as switches) 31 and 32 provided for the WAN side and the LAN side, a management
この実施形態では、管理パケットブリッジ部33は、マイクロコンピュータ(CPU)を備え、その処理をソフトウエア処理により実行するものとして構成されている。また、データパケットブリッジ部34は、この例では、FPGAによるハードウエア処理の構成とされる。
In this embodiment, the management
スイッチ31は、WAN側インターフェース部35と、MAC部36とを備える。また、スイッチ32は、LAN側インターフェース部37と、MAC部38とを備える。WAN側インターフェース部35は、インターネット側の伝送路に接続するための物理層(PHY)の機能を備える物理層機能部である。LAN側インターフェース部37は、この例では、イーサーネット(登録商標)に接続するための物理層の機能を備える物理層機能部(PHY)を構成するものである。
The
MAC部36および38は、WANおよびLANを通じた通信をするため、そのプロトコルに応じた処理をするためのコントローラ部である。MAC部36,38は、これがないと、例えばイーサーネット(登録商標)の規格を満足することできないものである。例えば、イーサーネット(登録商標)の規格上、通信速度には多種あり、10BASE−T/100BASE−TX/1000BASE−Tなどがあるが、通信速度が変化してもMAC部と、物理層(PHY)との間で、その変化速度に対応した速さで通信を行なうことができるようになる。
The
MAC部36は、物理層機能部としてのWAN側インターフェース35部とデータパケットブリッジ部34との間に設けられる。また、MAC部38は、物理層機能部としてのLAN側インターフェース部37とデータパケットブリッジ部34との間に設けられる。
The
MAC部36は、WAN側インターフェース部35に接続されるWANに接続される伝送路に対して設けられたものである。この伝送路としては、ケーブルによる有線路でも良いし、無線路であっても良い。また、MAC部38は、LAN側インターフェース部37に接続されるLANに接続される伝送路に対して設けられたものである。この伝送路としても、ケーブルによる有線路でも良いし、無線路であっても良い。
The
管理パケットブリッジ部33には、WAN側に対するMAC部301およびLAN側に対するMAC部302が設けられる。
The management
この実施形態のPPPoEブリッジ30においては、スイッチ31およびスイッチ32に、MAC部36および38を設けたことにより、データパケットブリッジ部34には、MAC部を設ける必要がない。
In the PPPoE bridge 30 of this embodiment, since the
すなわち、MAC部36,38がないときには、データパケットブリッジ部34には、物理層機能部としてのWAN側インターフェース部35およびLAN側インターフェース37に対するものとして、それぞれMAC部を設ける必要がある。そして、管理パケットブリッジ部33のMAC部301および302に対するものとして、データパケットブリッジ部34には、別のMAC部をそれぞれ設ける必要がある。
That is, when the
つまり、通常であれば、データパケットブリッジ部34には、合計4個のMAC部を設ける必要があるが、図1の実施形態の構成においては、MAC部301および302を備えるスイッチ31および32を設けたことにより、それら4個のMAC部を省略することができ、コストアップを抑えることができる。
That is, normally, the data
この実施形態のPPPoE30においては、WAN側のスイッチ31のMAC部36に対してはインターフェース401が設けられ、管理パケットブリッジ部33のMAC部301に対してはインターフェース402が設けられる。また、LAN側のスイッチ32のMAC部38に対してはインターフェース403が設けられ、管理パケットブリッジ部33のMAC部302に対してはインターフェース404が設けられる。
In the PPPoE 30 of this embodiment, an
この実施形態では、データパケットブリッジ部34のインターフェース401〜404は、GMII(Gigabit Medium Independent Interface)が用いられる。したがって、この実施形態の中継装置では、スイッチ31とスイッチ32との間での、データパケットブリッジ部34を通じたデータパケットの転送は、通信速度が一定の高速転送が行われる。また、この実施形態の中継装置では、スイッチ31およびスイッチ32と、管理パケットブリッジ部33との間での、データパケットブリッジ部34を通じた管理パケットの転送も、通信速度が一定の高速転送が行われる。
In this embodiment, GMII (Gigabit Medium Independent Interface) is used for the
データパケットブリッジ部34では、データ通信用のパケットをブリッジ転送するためのハードブリッジ回路405が設けられる。このハードブリッジ回路405は、LAN側のデータ通信用のパケットをWAN側にブリッジ転送して送出するハードブリッジ回路部405Wと、WAN側のデータ通信用のパケットをLAN側にブリッジ転送して送出するハードブリッジ回路部405Lとを備える。
In the data
ハードブリッジ回路部405Wおよび405Lは、データ通信用のパケットをブリッジ転送する機能のみではなく、管理パケットブリッジ部33から送出されてくる管理用のパケットと、データ通信用のパケットとを調停して、両者の衝突によりパケットの廃棄が生じないようにしている。
The hard
この場合、この実施形態のPPPoEブリッジ30においては、次のようにして、管理パケットの転送およびデータパケットの転送がなされる。 In this case, in the PPPoE bridge 30 of this embodiment, the management packet and the data packet are transferred as follows.
すなわち、スイッチ31のWAN側インターフェース部35およびMAC部36を通じて入力されるパケットが、管理用パケットであるときには、そのパケットは、データパケットブリッジ部34では、インターフェース401からインターフェース402への経路を通じて管理パケットブリッジ部33に送られる。そして、管理パケットブリッジ部33では、MAC部301でそのパケットを受け、ソフトウエアによるブリッジ部を通じてMAC部302に至る。その後、当該パケットは、データパケットブリッジ部34に転送され、そのインターフェース404からインターフェース403への経路を通じて、スイッチ32に転送され、スイッチ32のMAC部38およびLAN側インターフェース部37を通じて、LAN側に送出される。
That is, when a packet input through the WAN
また、スイッチ32のLAN側インターフェース部37およびMAC部38を通じて入力されるパケットが、管理用パケットであるときには、そのパケットは、データパケットブリッジ部34では、インターフェース403からインターフェース404への経路を通じて管理パケットブリッジ部33に送られる。そして、管理パケットブリッジ部33では、MAC部302でそのパケットを受け、ソフトウエアによるブリッジ部を通じてMAC部301に至る。その後、当該パケットは、データパケットブリッジ部34に転送され、そのインターフェース402からインターフェース401への経路を通じて、スイッチ31に転送され、スイッチ31のMAC部36およびWAN側インターフェース部35を通じて、WAN側に送出される。
When the packet input through the LAN
また、スイッチ31のWAN側インターフェース部35およびMAC部36を通じて入力されるパケットが、データ通信用パケットであるときには、そのパケットは、データパケットブリッジ部34では、インターフェース401から、内部のブリッジ通路を通じたインターフェース402への経路を通じてスイッチ32に転送される。そして、当該データ通信用パケットは、スイッチ32のMAC部38およびLAN側インターフェース部37を通じて、LAN側に送出される。
Further, when the packet input through the WAN
また、スイッチ32のLAN側インターフェース部37およびMAC部38を通じて入力されるパケットが、データ通信用パケットであるときには、そのパケットは、データパケットブリッジ部34では、インターフェース403から、内部ブリッジ通路を通じたインターフェース404への経路を通じてスイッチ31に送られる。そして、当該データ通信用パケットは、スイッチ31のMAC部36およびWAN側インターフェース部35を通じて、WAN側に送出される。
When the packet input through the LAN
管理パケットブリッジ部33は、前述したように、ソフトウエア処理の構成であるが、管理用のパケットのみを取り扱えばよいので、ソフトウエア処理であってもその負担は軽くなり、パフォーマンスが向上する。そして、管理パケットブリッジ部33でセッション管理をすることも容易になる。
As described above, the management
また、データパケットブリッジ部34は、FPGAによるハードウエア処理構成であるので、データ通信用のパケットのブリッジ転送は、いわゆるワイヤースピードでの高速転送が可能となる。しかも、その場合に、データパケットブリッジ部34は、管理パケットブリッジ部33のパフォーマンスを考慮する必要はない。
Further, since the data
以上の説明では、データ通信用のパケットと管理用のパケットとの調停についての処理動作については触れなかったが、以下に、当該調停を考慮したデータパケットブリッジ部34の構成および処理動作について、さらに説明する。
In the above description, the processing operation for arbitration between the data communication packet and the management packet has not been described. Hereinafter, the configuration and processing operation of the data
図2に、この実施形態のPPPoEブリッジ30における管理パケットブリッジ部33およびデータパケットブリッジ部34の、より詳細な構成について説明する。
FIG. 2 illustrates a more detailed configuration of the management
図2に示すように、管理パケットブリッジ部33は、MAC301(図示は省略)を備えるWANドライバ311と、図示を省略するが、MAC302(図示は省略)を備えるLANドライバ312と、ソフトブリッジ313と、上位アプリケーション(図では上位アプリと略記)314とをソフトウエア機能として有する。すなわち、前述もしたように、管理パケットブリッジ部33は、マイクロコンピュータを備え、このマイクロコンピュータがソフトウエア処理として、各部の機能を実行するものである。
As shown in FIG. 2, the management
WANドライバ311は、データパケットブリッジ部34のWAN側の通路のインターフェースと接続されて、管理用のパケットを、データパケットブリッジ部34を介してWAN側のスイッチ31との間で送受信するためのものである。
The
LANドライバ312は、データパケットブリッジ部34のLAN側の通路のインターフェースと接続されて、管理用のパケットを、データパケットブリッジ部34を介してLAN側のスイッチ32との間で送受信するためのものである。
The
ソフトブリッジ313は、WANドライバ311と、LANドライバ312との間での管理用のブリッジ転送を行う機能を備える。
The
また、ソフトブリッジ313は、後述するように、確立されたセッション(伝送路)のセッションIDを通知するのためのPADSパケットから、確立されたセッションのセッションIDを取得し、取得したセッションIDのセッション開始を上位アプリケーション314に通知すると共に、上位アプリケーション314の指示に従い、取得したセッションIDを、データパケットブリッジ部34のレジスタに対してセットする制御処理を行なう。
Further, as will be described later, the
また、ソフトブリッジ313は、切断要求のPADTパケットから、切断要求されたセッションのセッションIDを取得し、取得したセッションIDのセッション切断を上位アプリケーション314に通知すると共に、上位アプリケーション314の指示に従い、取得したセッションIDを、データパケットブリッジ部34のレジスタに対してクリアする制御処理を行なう。
Further, the
さらに、ソフトブリッジ313は、上位アプリケーション314が管理するセッション以外の未知のセッションのセッションIDのパケットを受け取ったときには、当該パケットを廃棄し、セッション未知通知を上位アプリケーション314に送ると共に、上位アプリケーション314の指示に従い、通信の相手方に成りすまして、つまり、PPPoEクライアントおよびPPPoEサーバに成りすまして、当該未知のセッションを切断する機能も備える。
Furthermore, when the
上位アプリケーション314は、この実施形態では、セッション管理を行なうと共に、上述したようにソフトブリッジ313を制御する。
In this embodiment, the
また、上位アプリケーション314は、例えば、管理パケットブリッジ部33のマイクロコンピュータが記憶するプログラムの更新をネットワークを通じて行うことができる機能を備えている。つまり、上位アプリケーション314は、PPPoEブリッジ部30が、自分からインターネットにアクセスする機能を備える。そして、そのアクセスを行なう必要がある場合に、空きのセッションがない場合に、ソフトブリッジ313に指示して、PPPoEクライアントおよびPPPoEサーバに成りすまして、いずれかのセッションを切断して空きを生成することができる機能も備える。
Further, the
ハードブリッジ回路405は、前述したハードブリッジ回路部405Wおよびハードブリッジ回路部405Lのほかに、セッションIDを保持するためのレジスタ部507と、管理パケットブリッジ部33からのこのレジスタ部507に対するアクセスを受け付けるためのインターフェース508とを備える。
In addition to the hard
ハードブリッジ回路部405Wは、フレーム解析部501と、分配部502と、調停部503とからなる。また、ハードブリッジ回路部405Lは、フレーム解析部504と、分配部505と、調停部506とからなる。
The hard
ハードブリッジ回路部405Wにおいては、フレーム解析部501と、分配部502とは、WAN側のスイッチ31のMAC部36から受け取ったパケットの、インターフェース401からインターフェース402に向かう通路に、シリーズに設けられる。そして、インターフェース404からインターフェース403に向かう通路には、調停部503が設けられ、分配部502と調停部503とが接続されて、分配部502から調停部503へのブリッジ通路が形成される。すなわち、分配部502と調停部503とが接続されることにより、WAN側からのパケットを、LAN側にブリッジ転送するためのブリッジ通路が形成される。
In the hard
また、ハードブリッジ回路部405Lにおいては、フレーム解析部504と、分配部505とは、LAN側のスイッチ32のMAC部38から受け取ったパケットの、インターフェース403からインターフェース404に向かう通路に、シリーズに設けられる。そして、インターフェース402からインターフェース401に向かう通路には、調停部506が設けられ、分配部505と調停部506とが接続されて、分配部505から調停部506へのブリッジ通路が形成される。すなわち、分配部505と調停部506とが接続されることにより、LAN側からのパケットを、WAN側にブリッジ転送するためのブリッジ通路が形成される。
In the hard
さらに、データパケットブリッジ部34のレジスタ部507には、管理パケットブリッジ部33のソフトブリッジ313により、インターフェース508を通じて、当該PPPoEブリッジ30を通じて確立されたセッションのセッションIDが書き込まれる。また、そのセッションが切断されたときには、レジスタ部507のそのセッションIDは、上位アプリケーション314により、クリアされる。
Further, the session ID of the session established through the PPPoE bridge 30 is written to the
このレジスタ部507のセッションIDの情報は、分配部502および505に供給される。
Information on the session ID of the
フレーム解析部501は、WAN側から送られてくるPPPoEパケット(PPPoEフレーム)のヘッダ部を解析し、パケット種別(フレーム種別)「ETHER TYPE」およびセッションIDとを抽出し、抽出したパケット種別の情報およびセッションIDを、受信したパケットと共に分配部502に渡す。
The
分配部502は、パケット種別の情報「ETHER TYPE」に基づき、受け取ったパケットが管理用のパケットか、データ通信用のパケットかのパケット種別判定をする。そして、分配部502は、受け取ったパケットがデータ通信用パケットであると判定したときには、フレーム解析部501から受け取ったセッションIDと、レジスタ部507にセットされているセッションIDとを比較して、一致しているか否かのセッションID判定をする。
Based on the packet type information “ETHER TYPE”, the
分配部502は、フレーム解析部501からのパケットを、前記判定結果に基づいて、インターフェース402に渡すか、調停部503に渡すかの分配処理をする。すなわち、分配部502は、当該パケットが管理用のパケットであるときには、そのパケットは、インターフェース402を通じて管理パケットブリッジ部33に渡すように構成されている。また、分配部502は、当該パケットがデータ通信用であって、セッションID判定結果が一致であるときには、そのパケットは、調停部503に渡すように構成されている。また、分配部502は、セッションID判定結果が不一致であるときには、そのパケットは、インターフェース402を通じて管理パケットブリッジ部33に渡すように構成されている。
The
同様に、フレーム解析部504は、LAN側から送られてくるPPPoEパケット(PPPoEフレーム)のヘッダ部を解析し、パケット種別(フレーム種別)「ETHER TYPE」およびセッションIDとを抽出し、抽出したパケット種別の情報およびセッションIDを、受信したパケットと共に分配部505に渡す。
Similarly, the
そして、分配部505は、パケット種別の情報「ETHER TYPE」に基づき、受け取ったパケットが管理用のパケットか、データ通信用のパケットかのパケット種別判定をする。そして、分配部505は、受け取ったパケットがデータ通信用パケットであると判定したときには、さらに、フレーム解析部501から受け取ったセッションIDと、レジスタ部507にセットされているセッションIDとを比較して、一致しているか否かのセッションID判定をする。
Based on the packet type information “ETHER TYPE”, the
分配部505は、フレーム解析部504からのパケットを、前記判定結果に基づいて、インターフェース404に渡すか、調停部506に渡すかの分配処理をする。すなわち、分配部505は、当該パケットが管理用のパケットであるときには、そのパケットは、インターフェース404を通じて管理パケットブリッジ部33に渡すように構成されている。また、分配部505は、当該パケットがデータ通信用であって、セッションID判定結果が一致であるときには、そのパケットは、調停部506に渡すように構成されている。また、分配部505は、セッションID判定結果が不一致であるときには、そのパケットは、インターフェース404を通じて管理パケットブリッジ部33に渡すように構成されている。
The
また、フレーム解析部501および504は、PPPoEパケット(PPPoEフレーム)のヘッダ部に含まれる当該パケットの優先順位の情報をも抽出して、その優先順位の情報を、分配部502および505を通じて調停部503および506に渡すようにする。
The
図3に、IPv4の場合におけるPPPoEフレームのヘッダ部のフォーマット例を示す。この図3のIPヘッダのフィールド「TOS」の上位6ビットが「DSCP」と呼ばれる優先順位の情報である。 FIG. 3 shows a format example of the header part of the PPPoE frame in the case of IPv4. The high-order 6 bits of the field “TOS” of the IP header of FIG. 3 are information of priority called “DSCP”.
また、図4に、IPv6の場合におけるPPPoEフレームのヘッダ部のフォーマット例を示す。この図4のIPヘッダのフィールド「TC」の上位6ビットが「DSCP」と呼ばれる優先順位の情報である。 FIG. 4 shows a format example of the header part of the PPPoE frame in the case of IPv6. The upper 6 bits of the field “TC” of the IP header in FIG. 4 are information of priority called “DSCP”.
調停部503および506は、分配部502および505からのパケットと、インターフェース404および402からのパケットの衝突が生じないように調停するためのもので、この実施形態では、前述したPPPoEフレームのヘッダ部に含められている各パケットの優先順位の情報に基づいて、パケットの調停を行なう。この調停部503および506の詳細な構成および処理動作については、後で詳述する。
以上の処理により、セッションが確立した後のデータ通信用のパケットは、データパケットブリッジ部34のみを通過(ブリッジ転送)するように制御され、WANやLANを通じて送られてくる管理用のパケットや、未知のパケットは、管理パケットブリッジ部33に送られる。
With the above processing, the packet for data communication after the session is established is controlled so as to pass only the data packet bridge unit 34 (bridge transfer), and the management packet sent through the WAN or LAN, Unknown packets are sent to the management
なお、分配部502および505は、レジスタ部507にセッションIDがセットされていないときには、全てのパケットを管理パケットブリッジ部33側に渡すように構成するようにしても良い。
The
管理パケットブリッジ部33は、PPPoEセッションにおいて受け取る管理用のパケットを、ソフトブリッジ313を通じてブリッジ転送するようにする。そして、管理パケットブリッジ部33は、そのPPPoEセッションにおいて、サーバから通知されたセッションIDを取得して、データパケットブリッジ部34のレジスタ部507にセットするようにする。
The management
また、管理パケットブリッジ部33は、通信状態から切断要求の管理用のパケット(PADTパケット)を受信したときには、そのPADTパケットのヘッダ部に含まれるセッションIDを取得し、そのセッションIDを、データパケットブリッジ部34のレジスタ部507からクリアするようにする。
When the management
次に、以上説明したPPPoEブリッジ30において実行される接続シーケンス、切断シーケンスなどのシーケンスを説明して、この実施形態のPPPoEブリッジ30での処理動作を、さらに説明する。 Next, a sequence such as a connection sequence and a disconnection sequence executed in the PPPoE bridge 30 described above will be described to further explain processing operations in the PPPoE bridge 30 of this embodiment.
[接続シーケンス;図5]
図5は、実施形態のPPPoEブリッジ30における接続シーケンス例を説明するためのシーケンス図である。この図5は、図20で示したPPPoE通信シーケンスに対応するものである。
[Connection sequence; Fig. 5]
FIG. 5 is a sequence diagram for explaining an example of a connection sequence in the PPPoE bridge 30 according to the embodiment. FIG. 5 corresponds to the PPPoE communication sequence shown in FIG.
図20に示したように、PPPoEセッションステージにおいては、(1)−(4)のシーケンスがなされる。なお、図5に示すように、この接続シーケンスが開始される前には、セッションの空きが存在しているとする。セッションの空きや、通信中は、セッション管理を行なう上位アプリケーション314が把握している。
As shown in FIG. 20, in the PPPoE session stage, the sequence (1)-(4) is performed. As shown in FIG. 5, it is assumed that there is a free session before this connection sequence is started. The high-
先ず、PPPoEクライアントからのPPPoEサーバを探すPADIパケットは、LAN側インターフェース部37を通じてデータパケットブリッジ部34に入力される。データパケットブリッジ部34では、分配部505で、このPADIパケットを管理用のパケットと判定する。この判定結果により、分配部505は、インターフェース404を通じて、当該PADIパケットを管理パケットブリッジ部33に渡す。
First, a PADI packet for searching for a PPPoE server from a PPPoE client is input to the data
管理パケットブリッジ部33では、LANドライバ312を通じて、このPADIパケットを受け、ソフトブリッジ313を通じてWANドライバ311に透過(ブリッジ転送)させる。WANドライバ311からのPADIパケットは、データパケットブリッジ部34で、インターフェース402、調停部506およびインターフェース401を順次通り、WAN側インターフェース部35を通じてPPPoEサーバ側に送出される。
The management
次に、PPPoEサーバ側からは、返答のPADOパケットが送られてくるが、このPADOパケットは、WAN側インターフェース部35を通じてデータパケットブリッジ部34に入力される。データパケットブリッジ部34では、分配部502で、このPADOパケットを管理用のパケットと判定する。この判定結果により、分配部502は、インターフェース402を通じて、当該PADOパケットを管理パケットブリッジ部33に渡す。
Next, a reply PADO packet is sent from the PPPoE server side, and this PADO packet is input to the data
管理パケットブリッジ部33では、WANドライバ311を通じて、このPADOパケットを受け、ソフトブリッジ313を通じてLANドライバ312に透過(ブリッジ転送)させる。LANドライバ312からのPADOパケットは、データパケットブリッジ部34で、インターフェース404、調停部503およびインターフェース403を順次通り、LAN側インターフェース部37を通じてPPPoEクライアント側に送出される。
The management
次に、PPPoEクライアント側からは、セッションの開始を要求するPADRパケットが送られてくる。このPADRパケットは、LAN側インターフェース部37を通じてデータパケットブリッジ部34に入力される。データパケットブリッジ部34では、分配部505で、このPADRパケットを管理用のパケットと判定する。この判定結果により、分配部505は、インターフェース404を通じて、当該PADRパケットを管理パケットブリッジ部33に渡す。
Next, a PADR packet requesting the start of a session is sent from the PPPoE client side. The PADR packet is input to the data
管理パケットブリッジ部33では、LANドライバ312を通じて、このPADRパケットを受け、ソフトブリッジ313を通じてWANドライバ311に透過(ブリッジ転送)させる。WANドライバ311からのPADRパケットは、データパケットブリッジ部34で、インターフェース402、調停部506およびインターフェース401を順次通り、WAN側インターフェース部35を通じてPPPoEサーバ側に送出される。
The management
次に、PPPoEサーバ側からは、セッションIDを通知するのためのPADSパケットが送られてくる。このPADSパケットは、WAN側インターフェース部35を通じてデータパケットブリッジ部34に入力される。データパケットブリッジ部34では、分配部502で、このPADSパケットを管理用のパケットと判定する。この判定結果により、分配部502は、インターフェース402を通じて、当該PADSパケットを管理パケットブリッジ部33に渡す。
Next, a PADS packet for notifying the session ID is sent from the PPPoE server side. The PADS packet is input to the data
管理パケットブリッジ部33では、WANドライバ311を通じて、このPADSパケットを受け、ソフトブリッジ313を通じてLANドライバ312に透過(ブリッジ転送)させる。このとき、ソフトブリッジ313は、PADSパケットからセッションIDを取得保持する。そして、ソフトブリッジ313は、取り出したセッションIDと共に、セッション開始通知を上位アプリケーション314に渡す。
The management
上位アプリケーション314は、受け取ったセッションIDをセッション管理のために保持して、当該セッションは通信中とするセッション管理を行なう。そして、上位アプリケーション314は、セッション開始要求をソフトブリッジ313に送る。これを受けたソフトブリッジ313は、データパケットブリッジ部34のレジスタ部507に、確立されたセッションのセッションIDをセットする。
The
レジスタ部507へのセッションIDのセットにより、データパケットブリッジ部34は、LAN側インターフェース部37との間におけるブリッジ転送の処理開始となる。
By setting the session ID in the
その後、ソフトブリッジ313は、PADSパケットを透過させて、LANドライバ312を通じてデータパケットブリッジ部34に送出する。これにより、PADSパケットは、データパケットブリッジ部34を通じてLAN側インターフェースに転送され、PPPoEクライアント側に送出され、セッションが確立される。
Thereafter, the
以上により、セッションが確立された後には、上位アプリケーション314により通信中が管理される。そして、PPPセッションで、WAN側インターフェース部35とLAN側インターフェース部37を通じてやり取りされるデータ通信用パケットは、図3の点線矢印で示すように、データパケットブリッジ部34のみを透過(ブリッジ転送)するようになる。
As described above, after the session is established, the higher-
[切断シーケンス;図6]
図6は、実施形態のPPPoEブリッジ30における切断シーケンス例を説明するためのシーケンス図である。
[Cutting sequence; FIG. 6]
FIG. 6 is a sequence diagram for explaining a disconnection sequence example in the PPPoE bridge 30 of the embodiment.
この図6に示すように、通信中に、PPPoEクライアント側からLAN側インターフェース部37を通じて、切断要求のPADTパケットが到来すると、データパケットブリッジ部34は、分配部505で、このPADTパケットを管理用のパケットと判定する。この判定結果により、分配部505は、インターフェース404を通じて、当該PADTパケットを管理パケットブリッジ部33に渡す。
As shown in FIG. 6, when a disconnect request PADT packet arrives from the PPPoE client side through the LAN
管理パケットブリッジ部33では、LANドライバ312を通じて、このPADTパケットを受け、ソフトブリッジ313を通じてWANドライバ311に透過(ブリッジ転送)させる。このとき、ソフトブリッジ313は、PADTパケットからセッションIDを取り出し、保持しているセッションIDと一致するかどうかチェックして、一致したときには、ソフトブリッジ313は、取り出したセッションIDと共に、上位アプリケーション314にセッション切断通知を送る。
The management
上位アプリケーション314は、受け取ったセッションIDによりセッション切断となったセッションを認識し、そのセッションIDを削除するなどして、それをセッション管理に反映する。そして、上位アプリケーション314は、セッション切断要求をソフトブリッジ313に送る。
The
これを受けたソフトブリッジ313は、データパケットブリッジ部34のレジスタ部507にセットされている、切断されたセッションのセッションIDをクリアする。また、ソフトブリッジ313は、自己が保持しているセッションIDから、当該切断されたセッションのセッションIDを削除しておく。
Receiving this, the
レジスタ部507のセッションIDのクリアにより、データパケットブリッジ部34は、LAN側インターフェース部37との間におけるブリッジ転送の処理停止となる。
By clearing the session ID of the
その後、ソフトブリッジ313は、PADTパケットを透過させて、WANドライバ302を通じてデータパケットブリッジ部34に送出する。これにより、PADTパケットは、データパケットブリッジ部34を通じてLAN側インターフェースに転送され、PPPoEサーバ側に送出される。
Thereafter, the
このPADTパケットを受け取ったPPPoEサーバは、応答のためのPADTパケットをPPPoEクライアントに送ってくる。この応答のPADTパケットは、図5に示すように、WAN側インターフェース部35から、データパケットブリッジ部34を経由して、管理パケットブリッジ部33で透過(ブリッジ転送)されて、LAN側インターフェース部37に送出され、PPPoEクライアントに送られる。これにより、切断シーケンスが完了し、切断されたセッションは空き状態になる。この後、ソフトブリッジ313は、上位アプリケーション314にセッション停止通知を送る。上位アプリケーション314は、当該セッションは空きになったとして、セッション管理する。
The PPPoE server that has received this PADT packet sends a PADT packet for response to the PPPoE client. As shown in FIG. 5, the response PADT packet is transmitted (bridge-transferred) by the management
[未知セッションシーケンス;図7]
図7は、実施形態のPPPoEブリッジ30において、そのときの状況ではありえない未知のパケットを受け取ったときのシーケンス例である。例えば、PPPセッションでの通信中においては、任意のタイミングでLCPエコー要求(LCP Echo−REQ)のパケットが送られ、リンク(セッション)が生きているかどうかを確認するようにされている。したがって、空き状態では、このLCPエコー要求のパケットはありえないパケットであり、そのパケットのセッションIDで示されるセッションは未知のセッションである。
[Unknown session sequence; Fig. 7]
FIG. 7 is a sequence example when the PPPoE bridge 30 according to the embodiment receives an unknown packet that cannot be the situation at that time. For example, during communication in a PPP session, an LCP echo request (LCP Echo-REQ) packet is sent at an arbitrary timing to check whether the link (session) is alive. Therefore, in an idle state, the packet of the LCP echo request is a packet that cannot be present, and the session indicated by the session ID of the packet is an unknown session.
この実施形態のPPPoEブリッジ30は、PPPoEクライアントおよびPPPoEサーバに成りすまして、このような未知のセッションは、切断処理するようにする。 The PPPoE bridge 30 in this embodiment impersonates a PPPoE client and a PPPoE server, and disconnects such unknown sessions.
すなわち、図7に示すように、通信が空き状態において、LCPエコー要求のパケットが、図7では、LAN側インターフェース部37を通じて到来すると、データパケットブリッジ部34では、セッションIDがレジスタ部507にセットされていないので、当該LCPエコー要求のパケットは、管理パケットブリッジ部33に送られる。管理パケットブリッジ部33のソフトブリッジ313は、当該空き状態でのLCPエコー要求のパケットは、ありえないパケットであると判定して、そのパケットからセッションIDを取得した後、当該パケットを廃棄する。
That is, as shown in FIG. 7, when communication is idle, when an LCP echo request packet arrives through the LAN
そして、ソフトブリッジ313は、セッション未知通知を上位アプリケーション314に送る。上位アプリケーション314は、セッション切断要求をソフトブリッジ313に送る。
Then, the
これを受けたソフトブリッジ313は、自己が通信の相手方の双方に成りすまして、つまり、PPPoEクライアントおよびPPPoEサーバに成りすまして、セッション切断シーケンスを実行する。
Receiving this, the
すなわち、ソフトブリッジ313は、LCP切断要求(LCP Term−REQ)のパケットを、データパケットブリッジ部34を通じて、LAN側インターフェース部37から、PPPoEクライアントに送ると共に、WAN側インターフェース部35からPPPoEサーバに送る。
That is, the
LCP切断要求のパケットを受け取ったPPPoEクライアントおよびPPPoEサーバからは、その応答(LCP Term−ACK)のパケットが送られてくる。前述と同様にして、データパケットブリッジ部34を介して、当該応答のパケットを管理パケットブリッジ部33のソフトブリッジ313が受け取り、ソフトブリッジ313は、受け取った応答のパケットを廃棄する。
The response (LCP Term-ACK) packet is sent from the PPPoE client and PPPoE server that have received the LCP disconnection request packet. In the same manner as described above, the response packet is received by the
そして、ソフトブリッジ313は、セッション切断のPADTパケットを、データパケットブリッジ部34を通じて、LAN側インターフェース部37から、PPPoEクライアントに送ると共に、WAN側インターフェース部35からPPPoEサーバに送る。
Then, the
セッション切断のPADTパケットを受け取ったPPPoEクライアントおよびPPPoEサーバからは、その応答としてPADTパケットが送られてくる。前述と同様にして、データパケットブリッジ部34を介して、当該応答のPADTパケットを管理パケットブリッジ部33のソフトブリッジ313が受け取り、ソフトブリッジ313は、受け取った応答のPADTパケットを廃棄する。その後、ソフトブリッジ313は、セッション停止通知を上位アプリケーション314に送る。
The PPPoE client and PPPoE server that have received the session disconnection PADT packet send a PADT packet as a response. Similarly to the above, the PADT packet of the response is received by the
[切断要求シーケンス;図8]
図8は、実施形態のPPPoEブリッジ30が、PPPoEサーバにアクセスするために、通信中のセッションを切断するときのシーケンス例である。
[Disconnection request sequence; FIG. 8]
FIG. 8 is a sequence example when the PPPoE bridge 30 according to the embodiment disconnects a communication session in order to access the PPPoE server.
すなわち、上位アプリケーション314は、通信中のセッションの切断要求をソフトブリッジ313に送る。これを受けたソフトブリッジ313は、データパケットブリッジ部34のレジスタ部507にセットされている通信中のセッションのセッションIDをクリアする。そして、ソフトブリッジ313は、自己が保持しているセッションIDから、当該切断されたセッションのセッションIDを削除しておく。
That is, the
レジスタ部507のセッションIDのクリアにより、データパケットブリッジ部34は、LAN側インターフェース部37との間におけるブリッジ転送の処理停止となる。
By clearing the session ID of the
その後、ソフトブリッジ313は、PPPoEクライアントおよびPPPoEサーバに成りすまして、セッション切断シーケンスを実行する。このセッション切断シーケンスは、図7に示したものと同じであるので、ここでは、説明は省略する。
Thereafter, the
図8には、図示を省略したが、上位アプリケーション314は、ソフトブリッジ313からのセッション停止通知を受けた後に、例えば自己のソフトウエアプログラムの更新のために、PPPoEサーバを介して、特定のサーバにアクセスすることができる。
Although not shown in FIG. 8, after receiving the session stop notification from the
[管理パケットブリッジ部33における処理]
上述した接続シーケンス、切断シーケンスおよび未知セッション切断シーケンスを、管理パケットブリッジ部33が実行するための処理のフローチャートを、図9および図10に示す。なお、上述した図8の切断要求シーケンスをなすための処理のフローチャートについては省略する。この図9および図10のフローチャートの各ステップは、管理パケットブリッジ部33を構成するマイクロコンピュータが実行するもので、ソフトブリッジ313の処理と、上位アプリケーション314の処理を含むものである。
[Processing in Management Packet Bridge 33]
9 and 10 are flowcharts of processing for the management
図9に示すように、管理パケットブリッジ部33は、受け取ったパケットのヘッダ部をチェックし(ステップS101)、受け取ったパケットが確立されたセッションのセッションIDを通知するPADSパケットか否かを判別する(ステップS102)。ステップS102において、受け取ったパケットがPADSパケットであると判別したときには、当該PADSパケットからセッションIDを取得して保持し、セッション開始を管理する(ステップS103)。
As shown in FIG. 9, the management
そして、管理パケットブリッジ部33は、ステップS103で取得したセッションIDを、データパケットブリッジ部34のレジスタ部507にセットし(ステップS104)、受け取ったPADSパケットは、ソフトブリッジ313を通じて透過させる(ステップS105)。そして、ステップS101に戻り、次のパケットのチェックする。
Then, the management
また、管理パケットブリッジ部33は、ステップS102で、受け取ったパケットがPADSパケットではないと判別したときには、受け取ったパケットがセッションの切断通知用のPADTパケットであるか否か判別する(図10のステップS111)。
When the management
このステップS111で、受け取ったパケットがPADTパケットであると判別したときには、管理パケットブリッジ部33は、当該PADTパケットからセッションIDを取得し、当該セッションIDのセッション切断を認識して、セッション管理に反映する(ステップS112)。
When it is determined in step S111 that the received packet is a PADT packet, the management
そして、管理パケットブリッジ部33は、データパケットブリッジ部34のレジスタ部507に記憶保持されている当該セッションIDをクリアする(ステップS113)。そして、ステップS105に進み、当該パケットPADTを透過させた後、ステップS101に戻り、このステップS101以降の処理を繰り返す。
Then, the management
また、ステップS111で、受け取ったパケットがPADTパケットではないと判別したときには、管理パケットブリッジ部33は、その状態でありえない未知のパケットであるか否か判別する(ステップS114)。そして、未知のパケットでないと判別したときには、管理パケットブリッジ部33は、ステップS105に進み、当該パケットPADTを透過させた後、ステップS101に戻り、このステップS101以降の処理を繰り返す。
If it is determined in step S111 that the received packet is not a PADT packet, the management
また、ステップS114で、未知のパケットであると判別したときには、管理パケットブリッジ部33は、当該パケットを廃棄して、通信の相手方の双方に成りすまして、切断シーケンスを実行する(ステップS116)。そして、ステップS101に戻り、このステップS101以降の処理を繰り返す。
If it is determined in step S114 that the packet is an unknown packet, the management
[データパケットブリッジ部34におけるパケット分配処理動作の説明]
データパケットブリッジ部34は、この実施形態では、前述したように、FPGAによるハードウエア構成とされるが、そのパケット分配処理動作を明瞭にするため、その処理手順をフローチャートを用いて説明することとする。
[Description of packet distribution processing operation in data packet bridge unit 34]
In this embodiment, the data
図11に、分配部502または分配部505で、パケットを、データパケットブリッジ部34で転送するのか、管理パケットブリッジ部33に渡すのかのパケット分配処理の手順を説明するフローチャートを示す。なお、この図11のフローチャートでは、管理用のパケットとデータ通信用のパケットとの調停のための情報の処理は省いてある。
FIG. 11 shows a flowchart for explaining a procedure of packet distribution processing in which the
分配部502または分配部505は、パケットを受信すると(ステップS201)、セッションIDがレジスタ部507にセットされているかどうかチェックし(ステップS202)、レジスタ部507にセッションIDがセットされていないときには、パケットは管理パケットブリッジ部33に渡すようにする(ステップS207)。
When the
ステップS202で、セッションIDがレジスタ部507にセットされていることが判明したときには、分配部502または分配部505は、受信したパケットのヘッダ部のパケット種別を参照して、当該パケットが管理用のパケットか、データ通信用のパケットであるかを判定する(ステップS204)。
When it is determined in step S202 that the session ID is set in the
そして、分配部502または分配部505は、受け取ったパケットが管理用のパケットであると判定したときは、管理パケットブリッジ部33に渡すようにする(ステップS207)。
When the
また、分配部502または分配部505は、受け取ったパケットがデータ通信用のパケットであると判定したときは、当該パケットのセッションIDと、レジスタ部507に保持されているセッションIDとを比較して、両者が一致しているか否か判別する(ステップS205)。そして、両者が一致していると判別したときには、分配部502または分配部505は、当該パケットは、データパケットブリッジ部23内を透過させるようにする(ステップS206)。
When the
また、ステップS205で、当該パケットのセッションIDと、レジスタ部507に保持されているセッションIDとが不一致であると判別したときには、分配部502または分配部505は、受け取ったパケットを、管理パケットブリッジ部33に渡すようにする(ステップS207)。
If it is determined in step S205 that the session ID of the packet does not match the session ID held in the
[管理用のパケットと、データ通信用のパケットとの調停処理]
データパケットブリッジ部34の調停部503および506による、管理用のパケットとデータ通信用のパケットとが衝突して廃棄されてしまわないようにする調停処理について、以下に、さらに説明する。
[Arbitration between management packet and data communication packet]
Arbitration processing by the
データパケットブリッジ部34のハードブリッジ回路405を構成するハードブリッジ回路部405Wおよび405Lは、それぞれフレーム解析部501および504、分配部502および505、また、調停部503および506を備えるもので、同じ構成を備え、同様の処理動作をする。そこで、以下の説明においては、説明の煩雑さを避けるため、一方のハードブリッジ回路部405Lを例にとって、その構成および処理動作を説明することとして、ハードブリッジ回路部405Wについての説明は省略する。
The hard
図12は、調停部503の詳細な構成例を含むデータパケットブリッジ部34のハードブリッジ回路部405Lのブロック図である。調停部506も、この調停部503と同様の構成を備えることは言うまでもない。なお、図12では、説明が煩雑になるのを避けるために、既述したパケット分配処理のためのレジスタ部507は省略した。
FIG. 12 is a block diagram of the hard
図12に示すように、この実施形態では、調停部503は、分配部502に接続されるクラス分け部601と、データ通信用のパケットについてのキューステータス保持部602と、データ通信用のパケットのバッファ部603と、送信調停部604と、インターフェース404を通じて送られてくる管理用パケットを受けるフレーム解析部605と、このフレーム解析部605に接続されるクラス分け部606と、管理用のパケットについてのキューステータス保持部607と、管理用のパケットのバッファ部608と、から構成されている。
As shown in FIG. 12, in this embodiment, the
フレーム解析部501は、パケットの調停のための処理動作としては、インターフェース401から受信するパケットから、前述の図3および図4に示したヘッダ部のフィールド「TOS」または「TC」の上位6ビットのDSCP情報を、優先順位の情報として抽出し、分配部502に渡す動作を行なう。分配部502は、フレーム解析部501からのパケットがデータ通信用のパケットであるときには、受け取った優先順位の情報と共に、そのパケットをクラス分け部601に渡すようにする。
The
また、フレーム解析部605は、インターフェース404から受ける管理用のパケットから、前述の図3および図4に示したヘッダ部のフィールド「TOS」または「TC」の上位6ビットのDSCP情報を、優先順位の情報として抽出し、クラス分け部606に渡す動作を行なう。
Also, the
クラス分け部601および606は、同様の構成を備えるもので、この例では、優先順位の情報を解析して、優先順位に応じた複数のクラスに、クラス分けする。この例では、優先順位の高い方から順に、クラス0、クラス1、クラス2、クラス3の4段階にクラス分けする。
The classifying
そして、クラス分け部601および606は、クラス分け結果に応じて、当該パケットのキューステータスを、キューステータス保持部602および607に登録するようにする。
Then, the
キューステータス保持部602および607は、例えばDRAM(Dynamic Random Access Memory)からなるメモリで構成されており、4段階のクラス0、クラス1、クラス2、クラス3のそれぞれ毎に、パケットのキュー状態(送信待ち受け状態)を登録することができるものとして構成されている。
The queue
図13に、この例のキューステータスのフォーマットを示す。図13(A)に示すように、キューステータスは、この例では、16ビットの情報とされる。そして、このキューステータスのうちの1ビット「E」は、図13(B)に示すように、セットされている状態(待ち受けパケット有りの状態)か、空き状態(待ち受けパケット無しの状態)かを示す情報とされる。また、他の1ビット「V」は、図13(B)に示すように、待ち受け状態のパケットが正常にセットされたかどうかの有効性情報とされる。 FIG. 13 shows the format of the queue status in this example. As shown in FIG. 13A, the queue status is 16-bit information in this example. Then, as shown in FIG. 13B, 1 bit “E” in the queue status indicates whether it is set (with a standby packet) or empty (without a standby packet). Information. The other 1 bit “V” is validity information as to whether or not the standby packet is normally set as shown in FIG.
そして、キューステータス保持部602および607は、図13(C)に示すように、優先順位に応じた前記4段階のクラス0、クラス1、クラス2、クラス3に応じた4種のキュークラス0、キュークラス1、キュークラス2、キュークラス3に、記憶部が分けられており、各キュークラスで、この例では、64個のキューステータスが登録可能とされている。つまり、前記4段階のクラス0、クラス1、クラス2、クラス3のそれぞれで、最大64個のパケットがバッファリング可能とされている。
Then, as shown in FIG. 13C, the queue
クラス分け部601および606は、キューステータス保持部607の、前述したクラス分け判定の結果として得たクラスに応じたキュークラスの記憶エリアに、受け取ったパケットについてのキューステータスを、登録するようにする。
The classifying
また、クラス分け部601および606は、パケットを、バッファ部603および608の、そのクラス分け判定の結果として得たクラスに応じた記憶エリアに書き込み、バッファリングさせるようにする。
The classifying
例えば、この実施形態では、バッファ部603および608は、図示は省略するが、4段階のクラスの各クラスに1個が対応するようにされた、4個のFIFO(First In First Out)メモリで構成されている。
For example, in this embodiment, although not shown, the
したがって、クラス分け部601および606は、パケットを、バッファ部603および608の4個のFIFOメモリのうちの、そのクラス分け結果に応じたクラスのFIFOメモリに、書き込むようにする。それぞれのFIFOメモリの容量は、キューステータス保持部602および607のステータス最大保持数に応じたパケットを記憶することができるものとされ、もしも、FIFOメモリが一杯の状態になって、新たなパケットが到来したときには、その新たなパケットが廃棄されることになる。
Accordingly, the classifying
送信調停部604は、キューステータス保持部602および607の各クラスのキューステータスと、バッファ部603および608の対応するクラスのFIFOメモリとの対応を取りながら、インターフェース403側に送信(送出)するパケットを判定して読み出す。
The
上述したように、バッファ部603および608のそれぞれには、この実施形態では、4段階のクラス0、クラス1、クラス2、クラス3に、クラス分けされてパケットがバッファリングされている。したがって、バッファ部603とバッファ608とで同じ優先順位のパケットが次のキューとして存在している場合には、いずれかを優先して選択するようにする必要がある。
As described above, in each of the
この実施形態では、管理用のパケットの方が、データ通信用のパケットよりも優先度が高いとしている。データ通信用のパケットの情報は、再送してもらうことができるなどを考慮して、この実施形態では、このように定めている。 In this embodiment, the management packet has a higher priority than the data communication packet. In this embodiment, the information of the packet for data communication is determined in this way in consideration of being able to be retransmitted.
このため、バッファ部603および608のそれぞれの4段階のクラス0、クラス1、クラス2、クラス3のFIFOメモリ(8個のFIFOメモリ)は、図14において、バッファ部603および608のそれぞれについて、丸数字で示すような優先順位が付与される。
Therefore, the four-
すなわち、バッファ部608の4段階のクラス0、クラス1、クラス2、クラス3のFIFOメモリの優先順位は、第1位、第3位、第5位、第7位となる。また、バッファ部603の4段階のクラス0、クラス1、クラス2、クラス3のFIFOメモリの優先順位は、第2位、第4位、第6位、第8位となる。
That is, the priority order of the four-
したがって、送信調停部604は、先ず、キューステータス保持部607のキュークラス0のキューステータスを参照し、待ちパケットが有ると判断したときには、バッファ部608のクラス0のFIFOメモリからパケットを読み出し、インターフェース403を通じて送信するようにする。
Therefore, the
そして、送信調停部604は、キューステータス保持部607のキュークラス0のキューステータスを参照し、待ちパケットがないと判断したときには、キューステータス保持部602のキュークラス0のキューステータスを参照し、待ちパケットが有ると判断したときには、バッファ部603のクラス0のFIFOメモリからパケットを読み出し、インターフェース403を通じて送信するようにする。
Then, the
以下、同様にして、送信調停部604は、優先順位が上位のキュー(待ちパケット)がなくなったら、その下位のキューステータスを参照して、待ちパケットが有ると判断したときには、バッファ部603または608の対応するクラスのFIFOメモリからパケットを読み出し、インターフェース403を通じて送信するようにする。
Similarly, when there is no higher priority queue (waiting packet), the
以上の送信調停部604の調停処理動作により、管理用のパケットとデータ通信用のパケットとの衝突を回避しながら、優先度の高いパケットは優先して送出するように調停することができる。
Through the arbitration processing operation of the
[調停処理における主要な各部の処理動作の説明]
前述もしたように、データパケットブリッジ部34は、FPGAによるハードウエア構成とされるが、調停部における主要な各部の処理動作を明瞭にするため、以下に、当該主要な各部の処理動作を、それぞれフローチャートを用いて説明する。
[Description of processing operations of each major part in arbitration]
As described above, the data
<フレーム解析部>
図15は、フレーム解析部501または504、あるいはフレーム解析部605(ハードブリッジ回路部405Wのフレーム解析部も同様)の処理動作を説明するためのフローチャートである。ここでは、フレーム解析部501の動作として説明する。
<Frame analysis section>
FIG. 15 is a flowchart for explaining the processing operation of the
フレーム解析部501は、先ず、PPPoEフレーム、すなわち、PPPoEパケットを受信する(ステップS301)。次に、フレーム解析部501は、フレームは、正しく受信されたか否か判別する(ステップS302)。そして、フレームが正しく受信されたと判別したときには、即座にPPPoEフレームのヘッダ部を解析する処理をする(ステップS304)。
First, the
ステップS302で、正しく受信されなかったと判別したときには、エラーステータスをセットし(ステップS303)、その後、ステップS304に進んで、PPPoEフレームのヘッダ部を解析する処理をする。 If it is determined in step S302 that the data has not been received correctly, an error status is set (step S303), and then the process proceeds to step S304 to perform processing for analyzing the header portion of the PPPoE frame.
次に、ステップS303での解析結果として、パケット種別「ETHER_TYPE」の情報と、優先順位のDSCPの情報と、セッションIDなどを抽出し(ステップS305)、それら抽出した情報を後段の各部に渡すフレーム情報として符号化して、後段の処理部に渡す(ステップS306)。そして、ステップS301に戻り、このステップS301からの処理を繰り返す。 Next, as the analysis result in step S303, the packet type “ETHER_TYPE” information, the priority DSCP information, the session ID, and the like are extracted (step S305), and the extracted information is passed to the subsequent units. It is encoded as information and passed to a subsequent processing unit (step S306). And it returns to step S301 and repeats the process from this step S301.
<分配部>
フレーム解析部501またはフレーム解析部504からの情報を受けた分配部502および分配部505の処理は、図16に示すようなものとなる。ここでは、分配部502の処理として説明する。
<Distributor>
The processing of the
すなわち、分配部502は、フレーム解析部501からの符号化フレーム情報のうちの、パケット種別「ETHER_TYPE」の情報およびセッションIDとを用いて、前述したように、受け取ったパケットは、管理パケットブリッジ部33に送るべきものであるか、ハードブリッジ回路405を透過させるものであるかの判定をする(ステップS311)。
That is, the
そして、分配部502は、その判定の結果、受信したパケットの送信先が管理パケットブリッジ部33であるか否か判別し(ステップS312)、送信先が管理パケットブリッジ部33であると判別したときには、インターフェース402を通じて管理パケットブリッジ部33に、当該パケットを渡す。このとき、符号化フレーム情報は、管理パケットブリッジ部33には渡す必要はない。
Then, as a result of the determination, the
ステップS312で、送信先が管理パケットブリッジ部33ではないと判別したときには、分配部502は、符号化フレーム情報の少なくとも優先順位の情報を伴って、調停部503のクラス分け部601にパケットを渡すようにする(ステップS314)。ステップS313またはステップS314で、パケットの送信を終了したらステップS311に戻って、以上の処理を繰り返す。
When it is determined in step S312 that the transmission destination is not the management
<クラス分け部>
クラス分け部601または606(ハードブリッジ回路部405Wのクラス分け部も同様)における処理動作は、図17に示すようなものとなる。ここでは、クラス分け部601の動作として説明する。
<Classification part>
The processing operation in the classifying
クラス分け部601は、受け取った符号化フレーム情報のうちの、優先順位の情報について、予め用意されている4段階のクラス分けのためのテーブル情報を検索し(ステップS321)、いずれのクラスのパケットである決定する(ステップS322)。
The classifying
次に、クラス分け部601は、符号化フレーム情報に含まれるエラーステータスがセット(図15のステップS343参照)されているか否か判別し(ステップS323)、エラーステータスがセットされているときには、そのパケットは、廃棄処理して(ステップS324)、ステップS321に戻り、このステップS321からの処理を繰り返す。
Next, the
また、クラス分け部601は、ステップS323で、エラーステータスがセットされてはいないと判別したときには、パケットは、バッファ部603の、ステップS322で決定されたクラスに対応するFIFOメモリに書き込んでキューイングする(ステップS325)。
If the
次に、クラス分け部601は、キューステータス保持部607の、ステップS322で決定されたクラスに対応するキュークラスのエリアに、キューステータスを登録する(ステップS326)。そして、ステップS321に戻り、このステップS321以降の処理を繰り返す。
Next, the classifying
なお、図13に示されているように、クラス分け部601は、FIFOメモリにパケットの書き込みを開始すると、キューステータスのビット「E」を、「0」から「1」にセットして、パケットをキューイングしたことをキューステータスに反映する。そして、パケットが正常にFIFOに書き込まれたときには、クラス分け部601は、キューステータスのビット「V」を「1」にセットする。しかし、パケットが正常にFIFOに書き込まれなかったときには、クラス分け部601は、キューステータスのビット「V」を「0」にする。
As shown in FIG. 13, when the
また、キューステータスのビット「E」は、送信調停部604が、パケットの送信を完了したときに、送信調停部604が「0」に戻すようにする。
Further, the bit “E” of the queue status causes the
<送信調停部>
送信調停部604(ハードブリッジ回路部405Wの送信調停部も同様)における処理動作は、図18に示すようなものとなる。
<Transmission arbitration unit>
The processing operation in the transmission arbitration unit 604 (same as the transmission arbitration unit of the hard
送信調停部604は、バッファ部603または608に送信待ちのパケット(キュー)が存在するか否かを判別する(ステップS331)。この場合、前述したように、送信調停部604は、優先順位の高いバッファ部608側から先に、キューが存在するか否かを判別するものである。
The
バッファ部603または608にキューが存在すると判別したときには、送信調停部604は、当該キューが存在すると判別されたバッファ部に対応するキューステータス保持部602または607のキューステータスを優先順位が高いものから検索して、バッファ部にキューイングされているパケットのキューステータスを探す。バッファ部603、608の両方にキューが有ると判別したときには、上述した優先順位に従って、交互にバッファ部603、608のキューステータスを探すものとなる(ステップS332)。
When it is determined that there is a queue in the
そして、送信調停部604は、その検索の結果として、キューイングされているものの中で、最も優先順位が高いキューを決定する(ステップS333)。そして、送信調停部604は、そのキューのキューステータス(ビット「V」)を参照して、パケットが有効データか否かチェックする(ステップS334)。
Then, the
そして、送信調停部604は、チェックの結果、無効であって廃棄すべきか否か判別し(ステップS335)、廃棄すべきと判別したときには、当該パケットは送信せずに廃棄処理する(ステップS336)。廃棄処理が終了したら、そのキューステータスを更新し(ステップS338)、その後、ステップS331に戻って、このステップS331からの処理を繰り返す。
Then, the
また、ステップS335で、パケットは有効データであって、廃棄すべきではないと判別したときには、送信調停部604は、パケットをインターフェース403を通じて送信する処理を行う(ステップS337)。送信処理が終了したら、そのキューステータスを更新し(ステップS338)、その後、ステップS331に戻って、このステップS331からの処理を繰り返す。
If it is determined in step S335 that the packet is valid data and should not be discarded, the
[他の実施形態および変形例]
上述の実施の形態では、データパケットブリッジ部34は、FPGAを用いたハードウエア構成としたが、各部を個別の回路構成としたハードウエア構成であってもよ。また、データパケットブリッジ部34をDSPで構成するようにしてもよい。
[Other Embodiments and Modifications]
In the above-described embodiment, the data
また、管理パケットブリッジ部33は、DSPの構成とするようにしてもよい。
Further, the management
また、WAN側インターフェース部35およびLAN側インターフェース部37に接続される伝送路は、ケーブルによる有線路でも良いし、無線路であっても良い。
Also, the transmission path connected to the WAN
また、上述の実施形態は、中継装置をブロードバンドモデム/回線終端装置に含まれるPPPoEブリッジに適用した場合について説明したが、この発明の中継装置は、ルータやゲートウエイ内に設けるようにすることもできる。 Moreover, although the above-mentioned embodiment demonstrated the case where the relay apparatus was applied to the PPPoE bridge | bridging included in a broadband modem / line terminator, the relay apparatus of this invention can also be provided in a router or a gateway. .
また、上述の実施形態は、中継装置にこの発明を適用した場合であるが、PPPoEフレームを扱う通信装置で、2つの経路からの入力パケットの衝突を回避して、調停する場合の全てにおいて適用可能である。 Moreover, although the above-mentioned embodiment is a case where this invention is applied to a relay apparatus, it is applied in all the cases where the communication apparatus which handles a PPPoE frame avoids the collision of the input packet from two paths, and arbitrates. Is possible.
また、上述の説明は、通信プロトコルがPPPoEである場合について説明したが、この発明は、PPPoEと同様のフォーマットの通信プロトコルの場合にも適用可能である。 In the above description, the communication protocol is PPPoE. However, the present invention can also be applied to a communication protocol having the same format as PPPoE.
30…PPPoEブリッジ、33…管理パケットブリッジ部、34…データパケットブリッジ部、313…ソフトブリッジ、405…ハードブリッジ回路、501,504,605…フレーム解析部、502,505…分配部、503,506…調停部、507…レジスタ部、601,606…クラス分け部、603,608…バッファ部 DESCRIPTION OF SYMBOLS 30 ... PPPoE bridge, 33 ... Management packet bridge part, 34 ... Data packet bridge part, 313 ... Soft bridge, 405 ... Hard bridge circuit, 501, 504, 605 ... Frame analysis part, 502, 505 ... Distribution part, 503,506 ... arbitration unit, 507 ... register unit, 601 and 606 ... classifying unit, 603 and 608 ... buffer unit
Claims (4)
前記パケットの第2の入力部と、
前記パケットの前記優先順位の情報に基づいて、前記第1の入力部からの前記パケットが、前記優先順位に応じた複数のクラスのいずれのクラスに属するかを判断してクラス分けする第1のクラス分け手段と、
前記複数のクラスのそれぞれに対応する複数のパケット保持領域を備え、前記第1の入力部からの前記パケットを、前記第1のクラス分け手段で判断された前記パケットのクラスに対応する前記パケット保持領域に保持する第1のバッファ部と、
前記複数のクラスのそれぞれに対応する複数のステータス情報保持領域を備え、前記第1の入力部からの前記パケットについて前記第1のクラス分け手段で判断されたクラスに対応する前記ステータス情報保持領域に、対応するクラスの前記第1のバッファ部の前記パケット保持領域に前記パケットが保持されていることを示すステータス情報を保持する第1のステータス情報保持手段と、
前記パケットの前記優先順位の情報に基づいて、前記第2の入力部からの前記パケットが、前記優先順位に応じた複数のクラスのいずれのクラスに属するかを判断してクラス分けする第2のクラス分け手段と、
前記複数のクラスのそれぞれに対応する複数のパケット保持領域を備え、前記第2の入力部からの前記パケットを、前記第2のクラス分け手段で判断された前記パケットのクラスに対応する前記パケット保持領域に保持する第2のバッファ部と、
前記複数のクラスのそれぞれに対応する複数のステータス情報保持領域を備え、前記第2の入力部からの前記パケットについて前記第2のクラス分け手段で判断されたクラスに対応する前記ステータス情報保持領域に、対応するクラスの前記第2のバッファ部の前記パケット保持領域に前記パケットが保持されていることを示すステータス情報を保持する第2のステータス情報保持手段と、
前記第1のステータス情報保持手段および前記第2のステータス情報保持手段の前記複数のステータス情報保持領域に保持されている前記ステータス情報を、前記第1のバッファ部と、前記第2のバッファ部のいずれかを高優先順位として予め定めて、前記複数のクラスの優先順位に従って前記クラス毎に順次に参照し、そのときに最も優先順位が高いクラスの待ちパケットを、前記第1のバッファ部または前記第2のバッファ部から読み出して、出力として送出するようにする送信調停手段と、
を備えることを特徴とする通信装置。 A first input portion of a packet comprising priority information in a header portion;
A second input portion of the packet;
First classifying the packet from the first input unit based on the priority information of the packet by determining which class of a plurality of classes according to the priority order belongs to Classification means,
A plurality of packet holding areas corresponding to each of the plurality of classes; and the packet holding corresponding to the class of the packet determined by the first classifying means for the packet from the first input unit. A first buffer section held in the area;
A plurality of status information holding areas corresponding to each of the plurality of classes , wherein the status information holding area corresponding to the class determined by the first classification means for the packet from the first input unit; First status information holding means for holding status information indicating that the packet is held in the packet holding area of the first buffer unit of the corresponding class;
Based on the priority information of the packet, the packet from the second input unit is classified into a plurality of classes according to the priority and classified Classification means,
A plurality of packet holding areas corresponding to each of the plurality of classes, and the packet holding corresponding to the class of the packet determined by the second classification means A second buffer unit held in the area;
A plurality of status information holding areas corresponding to each of the plurality of classes , wherein the status information holding area corresponding to the class determined by the second classification means for the packet from the second input unit; Second status information holding means for holding status information indicating that the packet is held in the packet holding area of the second buffer unit of the corresponding class;
The status information held in the plurality of status information holding areas of the first status information holding unit and the second status information holding unit is transferred to the first buffer unit and the second buffer unit. Any one of them is set as a high priority in advance, and is sequentially referred to for each class according to the priorities of the plurality of classes. Transmission arbitration means for reading from the second buffer unit and sending it as output;
A communication apparatus comprising:
前記ステータス情報は、前記第1のバッファ部および前記第2のバッファ部の前記パケット保持領域のそれぞれに前記パケットが正しく書き込まれたか否かの情報を含み、
前記送信調停手段は、前記ステータス情報の前記パケットが正しく書き込まれた否かの情報に基づいて、前記第1のバッファ部または前記第2のバッファ部から読み出したパケットについて、前記出力するかあるいは廃棄するかを判定するようにする
ことを特徴とする通信装置。 The communication device according to claim 1,
The status information includes information on whether or not the packet has been correctly written in each of the packet holding areas of the first buffer unit and the second buffer unit,
The transmission arbitration means outputs or discards the packet read from the first buffer unit or the second buffer unit based on information indicating whether the packet of the status information is correctly written. A communication device characterized by determining whether to do.
通信の一方の相手方に対して前記パケットの送受信を行うための第1のインターフェースと、
前記通信の他方の相手方に対して前記パケットの送受信を行うための第2のインターフェースと、
前記第1のインターフェースを通じて送受されるパケットのうちの前記管理用のパケットの送受を行なうための第3のインターフェースと、前記第2のインターフェースを通じて送受されるパケットのうちの前記管理用のパケットの送受を行なうための第4のインターフェースと、前記第3および前記第4のインターフェース間での前記管理用のパケットの転送を行う第1のブリッジ部を備える管理パケットブリッジ部と、
前記第1のインターフェースと接続される第5のインターフェースと、前記第2のインターフェースとされる第6のインターフェースと、前記第3のインターフェースと接続される第7のインターフェースと、前記第4のインターフェースと接続される第8のインターフェースと、前記第1のインターフェースおよび前記第2のインターフェース間での前記データ通信用のパケットの転送を行うと共に、前記第5または前記第6のインターフェースを通じて入力される前記管理用パケットは、前記管理パケットブリッジ部に、前記第7または第8のインターフェースを通じて転送し、前記第7または前記第8のインターフェースを通じて入力される前記管理用パケットは、前記第5または第6のインターフェースを通じて前記第1または前記第2のインターフェースに転送するようにする第2のブリッジ部を備える前記データパケットブリッジ部と、
を備える中継装置において、
前記データパケットブリッジ部の前記第2のブリッジ部は、前記第5のインターフェースを通じて入力されるデータ通信用のパケットを前記第6のインターフェースに、前記第8のインターフェースから送られてくる管理用のパケットとの衝突を調停しながら転送する第1のブリッジ部分と、前記第6のインターフェースを通じて入力されるデータ通信用のパケットを前記第5のインターフェースに、前記第7のインターフェースから送られてくる管理用のパケットとの衝突を調停しながら転送する第2のブリッジ部分とからなり、
前記第1および前記第2のブリッジ部分のそれぞれは、
前記パケットの前記優先順位の情報に基づいて、前記第5のインターフェースまたは前記第6のインターフェースからの前記データ通信用のパケットが、前記優先順位に応じたクラスのいずれのクラスに属するかを判断してクラス分けする第1のクラス分け手段と、
前記複数のクラスのそれぞれに対応する複数のパケット保持領域を備え、前記第5のインターフェースまたは前記第6のインターフェースからの前記データ通信用のパケットを、前記第1のクラス分け手段で判断された前記パケットのクラスに対応する前記パケット保持領域に保持する第1のバッファ部と、
前記複数のクラスのそれぞれに対応する複数のステータス情報保持領域を備え、前記第5のインターフェースまたは前記第6のインターフェースからの前記データ通信用のパケットについて前記第1のクラス分け手段で判断されたクラスに対応する前記ステータス情報保持領域に、対応するクラスの前記第1のバッファ部の前記パケット保持領域に前記パケットが保持されていることを示すステータス情報を保持する第1のステータス情報保持手段と、
前記パケットの前記優先順位の情報に基づいて、前記第7のインターフェースまたは前記第8のインターフェースからの前記管理用のパケットが、前記優先順位に応じたクラスのいずれのクラスに属するかを判断してクラス分けする第2のクラス分け手段と、
前記複数のクラスのそれぞれに対応する複数のパケット保持領域を備え、前記第7のインターフェースまたは前記第8のインターフェースからの前記管理用のパケットを、前記第1のクラス分け手段で判断された前記パケットのクラスに対応する前記パケット保持領域に保持する第2のバッファ部と、
前記複数のクラスのそれぞれに対応する複数のステータス情報保持領域を備え、前記第7のインターフェースまたは前記第8のインターフェースからの前記管理用のパケットについて前記第2のクラス分け手段で判断されたクラスのステータス情報保持領域に、対応するクラスの前記第2のバッファ部の前記パケット保持領域に前記パケットが保持されていることを示すステータス情報を保持する第2のステータス情報保持手段と、
前記第1のステータス情報保持手段および前記第2のステータス情報保持手段の前記複数のステータス情報保持領域に保持されている前記ステータス情報を、前記第1のバッファ部と、前記第2のバッファ部のいずれかを高優先順位として予め定めて、前記複数のクラスの優先順位に従って前記クラス毎に順次に参照し、そのときに最も優先順位が高い前記データ通信用のパケットまたは前記管理用のクラスの待ちパケットを、前記第1のバッファ部または前記第2のバッファ部から読み出して、出力として送出するようにする送信調停手段と、
を備えることを特徴とする中継装置。 Discrimination information for discriminating whether a packet is for management or data communication, transmission path identification information for identifying the transmission path of the packet connected between two points, and priority for transmission A relay device that relays the packet including the information in the header part,
A first interface for transmitting and receiving the packet to one communication partner;
A second interface for transmitting and receiving the packet to the other party of the communication;
A third interface for transmitting and receiving the management packet among packets transmitted and received through the first interface, and a transmission and reception of the management packet among packets transmitted and received through the second interface A management packet bridge unit comprising: a fourth interface for performing: and a first bridge unit for transferring the management packet between the third and fourth interfaces;
A fifth interface connected to the first interface, a sixth interface connected to the second interface, a seventh interface connected to the third interface, and the fourth interface; The management interface that transfers the packet for data communication between the eighth interface to be connected, the first interface, and the second interface, and is input through the fifth or sixth interface. Packet for use is transferred to the management packet bridge unit through the seventh or eighth interface, and the management packet input through the seventh or eighth interface is sent to the fifth or sixth interface. Through the first or the And the data packet bridge portion comprising a second bridge portion to be transferred to the second interface,
In a relay device comprising:
The second bridging unit of the data packet bridging unit sends a data communication packet input through the fifth interface to the sixth interface as a management packet sent from the eighth interface. A first bridge portion that transfers while arbitrating a collision with the data, and a data communication packet input through the sixth interface is sent to the fifth interface from the seventh interface A second bridge portion that transfers while arbitrating the collision with the packet of
Each of the first and second bridge portions is:
Based on the priority information of the packet, it is determined which class of the data communication packet from the fifth interface or the sixth interface belongs to the class according to the priority. First classifying means for classifying
A plurality of packet holding areas corresponding to each of the plurality of classes, the packet for data communication from the fifth interface or the sixth interface being determined by the first classifying means; A first buffer section held in the packet holding area corresponding to a packet class;
A plurality of status information holding areas corresponding to each of the plurality of classes, the class determined by the first classification means for the data communication packet from the fifth interface or the sixth interface; a first status information holding means for holding status information indicating that the status information holding area corresponding, the packet to the packet holding region of the first buffer portion of the corresponding class is held in,
Based on the priority information of the packet, it is determined whether the management packet from the seventh interface or the eighth interface belongs to a class according to the priority. A second classifying means for classifying;
A plurality of packet holding areas corresponding to each of the plurality of classes, wherein the packet for management from the seventh interface or the eighth interface is determined by the first classification means; A second buffer unit held in the packet holding area corresponding to the class of
A plurality of status information holding areas corresponding to each of the plurality of classes, the class of packets determined by the second classification means for the management packet from the seventh interface or the eighth interface; Second status information holding means for holding status information indicating that the packet is held in the packet holding area of the second buffer unit of the corresponding class in the status information holding area;
The status information held in the plurality of status information holding areas of the first status information holding unit and the second status information holding unit is transferred to the first buffer unit and the second buffer unit. One of them is determined as a high priority in advance, and is sequentially referred to for each class according to the priority of the plurality of classes . At that time, the packet for data communication or the management class waiting for the highest priority is waited for Transmission arbitration means for reading a packet from the first buffer unit or the second buffer unit and sending the packet as an output;
A relay device comprising:
前記管理パケットブリッジ部は、
前記データパケットブリッジ部を通じて受けた前記管理用のパケットを判定して、前記管理用のパケットは前記データパケットブリッジ部に戻すと共に、前記管理用のパケットが確立された伝送路の前記伝送路識別情報の通知用であると判定したときに、当該伝送路識別情報を前記データパケットブリッジ部に保持させるようにし、
前記データパケットブリッジ部は、
前記管理パケットブリッジ部からの前記伝送路識別情報を受けて保持すると共に、前記第1または前記第2のインターフェースを通じて受けた前記パケットに含まれる前記伝送路識別情報と前記保持した前記伝送路識別情報とが一致し、かつ、前記パケットに含まれる判別情報が前記データ通信用であるパケットは、前記第2または前記第1のインターフェースに自ブリッジ部を通じて転送し、それ以外のパケットは、前記管理パケットブリッジ部に渡し、前記管理パケットブリッジ部からのパケットは、前記第1または前記第2のインターフェースに送出するようにする
ことを特徴とする中継装置。 The relay device according to claim 3,
The management packet bridge unit
The management packet received through the data packet bridge unit is determined, the management packet is returned to the data packet bridge unit, and the transmission path identification information of the transmission path in which the management packet is established When it is determined that the information is for notification, the transmission path identification information is held in the data packet bridge unit,
The data packet bridge unit is
The transmission path identification information from the management packet bridge unit is received and held, and the transmission path identification information included in the packet received through the first or second interface and the held transmission path identification information And a packet whose discrimination information included in the packet is for data communication is transferred to the second or first interface through its own bridge unit, and other packets are the management packet A relay apparatus, wherein the packet is passed to a bridge unit and a packet from the management packet bridge unit is sent to the first or second interface.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008085427A JP5045939B2 (en) | 2008-03-28 | 2008-03-28 | Communication device and relay device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008085427A JP5045939B2 (en) | 2008-03-28 | 2008-03-28 | Communication device and relay device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009239785A JP2009239785A (en) | 2009-10-15 |
JP5045939B2 true JP5045939B2 (en) | 2012-10-10 |
Family
ID=41253166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008085427A Active JP5045939B2 (en) | 2008-03-28 | 2008-03-28 | Communication device and relay device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5045939B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5459628B2 (en) * | 2012-01-12 | 2014-04-02 | 横河電機株式会社 | Time synchronization system |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10233796A (en) * | 1997-02-18 | 1998-09-02 | Toshiba Corp | Inter-lan connection device |
JP3439373B2 (en) * | 1999-05-12 | 2003-08-25 | 日本電気通信システム株式会社 | Competitive priority control circuit |
JP2002354000A (en) * | 2001-05-25 | 2002-12-06 | Mitsubishi Electric Corp | Bridge system |
JP2006238039A (en) * | 2005-02-24 | 2006-09-07 | Fujitsu I-Network Systems Ltd | Packet processor |
-
2008
- 2008-03-28 JP JP2008085427A patent/JP5045939B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2009239785A (en) | 2009-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4537357B2 (en) | Dynamic construction of VLAN interface based on subscriber information string | |
US20050111455A1 (en) | VLAN server | |
WO2012096131A1 (en) | Network system and method of controlling path | |
JPH08507909A (en) | Method and apparatus for interfacing a workstation to multiple computer platforms | |
JP5467541B2 (en) | Communication control system, switching node, communication control method, and communication control program | |
JP2006261873A (en) | Packet transfer apparatus and transfer control system therefor | |
JP2002502152A (en) | Proxy server for TCP / IP network address mobile terminal | |
WO2018210310A1 (en) | Ethernet-based multi-channel switch, channel arbitration method, and communication method | |
WO2014023003A1 (en) | Method, apparatus, and system for controlling data transmission | |
US20020099851A1 (en) | Decoupling TCP/IP processing in system area networks | |
EP1993268A2 (en) | Method, system and relay device for transmitting packet | |
JP5045939B2 (en) | Communication device and relay device | |
JP5088492B2 (en) | Relay device | |
JP4106632B2 (en) | Communication apparatus and communication control method | |
US7969994B2 (en) | Method and apparatus for multiple connections to group of switches | |
JP6052876B2 (en) | Relay device, control method thereof, and control program thereof | |
JP2003273885A (en) | Communication system and method for controlling communication used therefor | |
JP4147495B2 (en) | Communication device | |
JP2006246087A (en) | Apparatus and method for data frame transfer | |
JP4993133B2 (en) | Relay device | |
JP3693594B2 (en) | Router device | |
CN109787877B (en) | Box type switch, network interface card and management method for packet transfer | |
JP5815838B2 (en) | Techniques for managing communications in routers | |
TWI738918B (en) | Chassis switches, network interface cards, and methods for management of packet forwarding | |
KR100606350B1 (en) | The common ARP apparatus for routing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111026 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120411 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120604 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120620 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120703 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150727 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5045939 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |