JP4143663B2 - Network system - Google Patents

Network system Download PDF

Info

Publication number
JP4143663B2
JP4143663B2 JP2006270964A JP2006270964A JP4143663B2 JP 4143663 B2 JP4143663 B2 JP 4143663B2 JP 2006270964 A JP2006270964 A JP 2006270964A JP 2006270964 A JP2006270964 A JP 2006270964A JP 4143663 B2 JP4143663 B2 JP 4143663B2
Authority
JP
Japan
Prior art keywords
packet
terminal
management server
pppoe
address
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.)
Expired - Fee Related
Application number
JP2006270964A
Other languages
Japanese (ja)
Other versions
JP2007166590A5 (en
JP2007166590A (en
Inventor
宗俊 柘植
亮 中村
敏之 齋藤
康也 篠原
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.)
Hitachi Communication Technologies Ltd
Original Assignee
Hitachi Communication Technologies Ltd
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 Hitachi Communication Technologies Ltd filed Critical Hitachi Communication Technologies Ltd
Priority to JP2006270964A priority Critical patent/JP4143663B2/en
Publication of JP2007166590A publication Critical patent/JP2007166590A/en
Publication of JP2007166590A5 publication Critical patent/JP2007166590A5/ja
Application granted granted Critical
Publication of JP4143663B2 publication Critical patent/JP4143663B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、パケット転送装置に関し、更に詳しくは、広域網であるインターネットに接続されたアクセス網において、ISP(Internet Service Provider)に接続されるユーザ端末数の制限機能を備えたパケット転送装置に関する。   The present invention relates to a packet transfer apparatus, and more particularly to a packet transfer apparatus having a function of limiting the number of user terminals connected to an ISP (Internet Service Provider) in an access network connected to the Internet, which is a wide area network.

ユーザ端末からインターネットへのアクセス回線の広帯域化と、ネットワーク機能を搭載した各種家電機器の普及に伴って、単一ユーザが所有する複数の端末を同時にISP(Internet Service Provider)の管理サーバに接続する要求が多くなっている。ここで「単一ユーザ」とは、ISPにおけるインターネット接続サービスの契約単位となるユーザを意味し、一般的には、1つのアクセス回線を介してISPに接続される個々の世帯を指す。   With the widening of access lines from user terminals to the Internet and the widespread use of home appliances equipped with network functions, multiple terminals owned by a single user are simultaneously connected to an ISP (Internet Service Provider) management server. The demand is increasing. Here, “single user” means a user as a contract unit of Internet connection service in ISP, and generally indicates an individual household connected to ISP through one access line.

ユーザ端末をインターネットに接続するためには、各ユーザ端末にIP(Internet Protocol)アドレスを割り当てる必要がある。IPアドレスの割当ては、一般に、DHCP(Dynamic Host Configuration Protocol)やPPPoE(Point-to-Point Protocol over Ethernet)等の通信プロトコルに従って行われる。   In order to connect a user terminal to the Internet, it is necessary to assign an IP (Internet Protocol) address to each user terminal. The IP address is generally assigned according to a communication protocol such as DHCP (Dynamic Host Configuration Protocol) or PPPoE (Point-to-Point Protocol over Ethernet).

DHCPは、ユーザ端末がレイヤ2のサブネットワークに接続された時、そのサブネットワーク上の端末として妥当なIPアドレスをユーザ端末に動的に割り当てるための通信プロトコルである。また、PPPoEは、各ISPに所属するBAS(Broadband Access Server)とユーザ端末との間のEthernet(登録商標)回線上に、ポイント・ツー・ポイントの仮想的なレイヤ2セッション(PPPoEセッション)を接続するための通信プロトコルである。この場合、各ユーザ端末には、PPPoEセッションを介して、PPP(Point-to-Point Protocol)プロトコルによってIPアドレスが割り当てられる。   DHCP is a communication protocol for dynamically assigning an appropriate IP address to a user terminal as a terminal on the subnetwork when the user terminal is connected to a layer-2 subnetwork. PPPoE connects a point-to-point virtual layer 2 session (PPPoE session) over an Ethernet (registered trademark) line between a BAS (Broadband Access Server) belonging to each ISP and a user terminal. Is a communication protocol. In this case, an IP address is assigned to each user terminal by a PPP (Point-to-Point Protocol) protocol via a PPPoE session.

単一ユーザが複数の端末を所有する場合、各ユーザ端末は、例えば、ユーザ宅に設置されたホームルータ(レイヤ3のパケット中継装置)を経由してアクセス網に接続される接続形態と、レイヤ2のパケット中継装置であるハブを通してアクセス網に接続される接続形態がある。DHCPやPPPoEにおいて、ISPの管理サーバがIPアドレスを割り当てるクライアントは、前者の接続形態ではホームルータであり、後者の接続形態では個々のユーザ端末である。   When a single user owns a plurality of terminals, each user terminal is connected to an access network via a home router (layer 3 packet relay device) installed in the user's house, for example, There is a connection form that is connected to an access network through a hub that is a packet relay device of No. 2. In DHCP or PPPoE, a client to which an ISP management server assigns an IP address is a home router in the former connection form and an individual user terminal in the latter connection form.

例えば、DHCPを適用した場合、前者の接続形態では、IPアドレスはホームルータにのみ割り当てられるが、後者の接続形態では、ユーザが所有する複数の端末にそれぞれ個別のIPアドレスが割り当てられる。後者の接続形態にPPPoEを適用した場合、ユーザが所有する複数の端末が、それぞれ個別にPPPoEセッションを接続できる。PPPoEが適用される通信環境では、1台のクライアント(ユーザ端末またはホームルータ)が複数のPPPoEセッションを必要とする場合がある。例えば、PPPoEセッション毎に異なったサービスを利用する場合や、同一クライアントを異なる複数のISPに接続する場合である。   For example, when DHCP is applied, the IP address is assigned only to the home router in the former connection form, but in the latter connection form, individual IP addresses are assigned to a plurality of terminals owned by the user. When PPPoE is applied to the latter connection form, a plurality of terminals owned by the user can individually connect PPPoE sessions. In a communication environment to which PPPoE is applied, a single client (user terminal or home router) may require a plurality of PPPoE sessions. For example, a case where a different service is used for each PPPoE session, or a case where the same client is connected to a plurality of different ISPs.

以上のように、ISPが各ユーザに割り当てるIPアドレスの数や、同一ユーザが接続するPPPoEセッションの数は、ユーザが所有する端末の数、ホームルータの有無、ユーザが利用したいサービスの種類などの条件によって異なる。しかしながら、各ユーザからのIPアドレスの割当て要求やPPPoEセッションの接続要求を無制限に受け付けると、ISPの管理サーバであるBASまたはDHCPサーバにおける負荷が増大する。また、特定のユーザが多数のIPアドレスを使用すると、通信リソースの占有によって、ユーザ間での享有できる通信サービスに不公平が生じるため、ユーザ毎に、割当て可能なIPアドレス数や同時に接続可能なセッション数を制限する必要がある。   As described above, the number of IP addresses that the ISP assigns to each user, the number of PPPoE sessions connected by the same user, the number of terminals owned by the user, the presence or absence of a home router, the type of service that the user wants to use, etc. Varies depending on conditions. However, if an unlimited number of IP address assignment requests and PPPoE session connection requests are received from each user, the load on the BAS or DHCP server that is the ISP management server increases. In addition, when a specific user uses a large number of IP addresses, communication resources that can be enjoyed among users will be unfair due to the occupation of communication resources. Therefore, the number of IP addresses that can be allocated and simultaneous connections are possible for each user. You need to limit the number of sessions.

例えば、ユーザ端末とISPの管理サーバ(DHCPサーバまたはBAS)が、ユーザ毎に個別のアクセス回線(物理的な回線、またはVLAN:Virtual Local Area Network等の論理的な回線)で接続されたネットワーク構成の場合、管理サーバ側で、アクセス回線毎の割当てIPアドレスやセッション数を管理することにより、ユーザ毎の割当てIPアドレス数や接続セッション数を制限できる。   For example, a network configuration in which a user terminal and an ISP management server (DHCP server or BAS) are connected by an individual access line (physical line or logical line such as VLAN: Virtual Local Area Network) for each user In this case, it is possible to limit the number of assigned IP addresses and the number of connected sessions for each user by managing the assigned IP addresses and the number of sessions for each access line on the management server side.

しかしながら、ユーザ端末が接続されたアクセス回線と管理サーバとの間にレイヤ2スイッチ(L2SW)を配置し、このL2SWで複数ユーザのトラフィックを単一アクセス回線に集約して管理サーバに転送するネットワーク構成においては、管理サーバは、ユーザ毎に個別のアクセス回線を識別することができない。この場合、管理サーバ側では、ユーザ毎の割当てIPアドレス数や接続セッション数を制限することが不可能となる。 However, a network configuration in which a layer 2 switch (L2SW) is arranged between the access line to which the user terminal is connected and the management server, and traffic of a plurality of users is aggregated to a single access line by this L2SW and transferred to the management server. In this case, the management server cannot identify individual access lines for each user. In this case, it becomes impossible on the management server side to limit the number of assigned IP addresses and the number of connected sessions for each user.

上述したL2SWが適用されたアクセス網構成において、ユーザ毎の割当てIPアドレス数やセッション数の制限する従来技術として、例えば、次のものが知られている。
(1)ISPの管理サーバ(DHCPサーバまたはBAS)とL2SWとを連携させ、ユーザ端末からセッション接続要求パケットまたはIPアドレス割当て要求パケットを受信したL2SWが、管理サーバに、要求パケットを受信したアクセス回線の識別情報を通知する方式。
(2)セッション接続手順に付随してユーザ認証を行う場合に、認証サーバが、ユーザ毎に割当て済みのIPアドレス数や接続中のセッション数を記憶しておき、これらの数が上限値に達したユーザからの新たなセッション接続要求を拒否する方式。
DHCPを適用した通信環境において、方式(1)について述べた公知文献として、例えば、特許文献1がある。
In the access network configuration to which the above-described L2SW is applied, for example, the following is known as a conventional technique for limiting the number of assigned IP addresses and the number of sessions for each user.
(1) An access line in which an ISP management server (DHCP server or BAS) is linked to an L2SW, and the L2SW that has received a session connection request packet or an IP address allocation request packet from a user terminal receives the request packet from the user server A method to notify the identification information.
(2) When performing user authentication accompanying the session connection procedure, the authentication server stores the number of IP addresses assigned for each user and the number of connected sessions, and these numbers reach the upper limit. A method for rejecting new session connection requests from successful users.
As a known document describing the method (1) in a communication environment to which DHCP is applied, for example, there is Patent Document 1.

特開2000−112852号公報JP 2000-112852 A

然るに、上述した従来方式(1)、(2)は、何れもISPに所属する管理サーバ(DHCPサーバ、BASまたは認証サーバ)に適用されるものであり、L2SW単独でユーザへの割当てIPアドレス数や接続セッション数を制限するものではない。従来方式(1)は、L2SWと管理サーバとの連携を前提としているため、例えば、L2SWが、管理サーバの所属するISPとは独立した企業体によって運用され、L2SWと管理サーバとの間の連携動作(アクセス回線の識別情報の通知)を保証できない場合、実現困難となる。   However, the above-described conventional methods (1) and (2) are both applied to a management server (DHCP server, BAS or authentication server) belonging to an ISP, and the number of IP addresses assigned to users by L2SW alone. It does not limit the number of connected sessions. Since the conventional method (1) is based on the premise of cooperation between the L2SW and the management server, for example, the L2SW is operated by a business entity independent of the ISP to which the management server belongs, and the cooperation between the L2SW and the management server is performed. If the operation (notification of access line identification information) cannot be guaranteed, it will be difficult to implement.

また、ISPの管理サーバには複数のL2SWが接続され、ISPの管理サーバは、これらのL2SWを介して多数のユーザ端末からセッションの接続要求やIPアドレスの割当て要求を受け付けているため、従来方式(1)、(2)は、接続ユーザ端末を制限するための処理負荷が管理サーバに集中するという問題がある。   Also, since a plurality of L2SWs are connected to the ISP management server, and the ISP management server accepts session connection requests and IP address assignment requests from a large number of user terminals via these L2SWs, (1) and (2) have a problem that the processing load for restricting connected user terminals is concentrated on the management server.

本発明の目的は、ISPの管理サーバの負荷を軽減して、ユーザ毎の割当てIPアドレス数やPPPoEセッション数を制限可能なパケット転送装置(L2SW)を提供することにある。   An object of the present invention is to provide a packet transfer apparatus (L2SW) that can reduce the load of an ISP management server and limit the number of assigned IP addresses and the number of PPPoE sessions for each user.

上記目的を達成するため、本発明のパケット転送装置は、
それぞれが少なくとも1つのユーザ端末と接続されたアクセス回線を収容する複数の第1インタフェース部と、ユーザ端末と広域ネットワークとの間の通信に必要な通信制御情報を管理する管理サーバと接続するための第2インタフェース部と、制御部とからなり、
上記制御部が、ユーザ端末の固定アドレスと対応して、該ユーザ端末が接続された第1インタフェース部を特定する接続ポート識別子と、管理サーバから該ユーザ端末に動的に割り当てられ、該ユーザ端末が各ユーザパケットに適用する特定ヘッダ情報との関係を示す複数のテーブルエントリからなる管理テーブルを備え、
上記制御部が、広域ネットワークとの通信に先立って各ユーザ端末が管理サーバとの間で実行する所定の通信プロトコル手順の実行中に、上記管理テーブルに基づいて、ユーザ端末への特定ヘッダ情報の割当て可否を判定し、特定ヘッダ情報の割当てが不可と判断されたユーザ端末については、該ユーザ端末からの受信パケット、または該ユーザ端末宛の上記管理サーバからの受信パケットを廃棄することを特徴とする。
In order to achieve the above object, the packet transfer apparatus of the present invention provides:
A plurality of first interface units each accommodating an access line connected to at least one user terminal, and a management server for managing communication control information necessary for communication between the user terminal and the wide area network It consists of a second interface part and a control part.
The control unit corresponds to the fixed address of the user terminal, and a connection port identifier that identifies the first interface unit to which the user terminal is connected, and is dynamically assigned to the user terminal from the management server. Comprises a management table consisting of a plurality of table entries indicating the relationship with specific header information applied to each user packet,
During execution of a predetermined communication protocol procedure that each user terminal executes with the management server prior to communication with the wide area network, the control unit is configured to send specific header information to the user terminal based on the management table. It is determined whether allocation is possible, and for a user terminal for which it is determined that allocation of specific header information is impossible, a received packet from the user terminal or a received packet from the management server addressed to the user terminal is discarded. To do.

更に詳述すると、本発明のパケット転送装置は、上記制御部が、ユーザ端末から、所定の通信プロトコル手順における最初のパケットを受信した時、上記管理テーブルに基づいて、該ユーザ端末への特定ヘッダ情報の割当て可否を判定し、特定ヘッダ情報の割当てが可と判断されたユーザ端末については、上記管理テーブルに該ユーザ端末の固定アドレスと対応した新たなテーブルエントリを追加しておき、上記管理サーバからユーザ端末に通知される特定ヘッダ情報をテーブルエントリに登録することを特徴とする。   More specifically, in the packet transfer apparatus of the present invention, when the control unit receives the first packet in a predetermined communication protocol procedure from the user terminal, the specific header to the user terminal is based on the management table. For the user terminal for which it is determined whether or not the information can be allocated, and for which the specific header information is determined to be allocated, a new table entry corresponding to the fixed address of the user terminal is added to the management table, and the management server The specific header information notified to the user terminal is registered in the table entry.

上述した所定の通信プロトコル手順が、例えば、PPPoE(Point-to-Point Protocol over Ethernet)の場合、管理テーブルに登録される固定アドレスはユーザ端末のMACアドレス、特定ヘッダ情報はPPPoEセッション識別子となる。この場合、上記制御部は、上記管理テーブルに登録された同一接続ポート識別子をもつPPPoEセッション識別子の個数が所定値に達していた時、上記接続ポート識別子をもつ第1インタフェース部に接続されたユーザ端末から発生する新たなPPPoEセッションの接続要求を受付不可と判断し、該ユーザ端末から送信されたPPPoEディスカバリステージのパケットを廃棄する。また、上記制御部は、上記管理テーブルに登録された同一接続ポート識別子をもつPPPoEセッション識別子の個数が所定値以内にある時、同一ユーザ端末からの複数のPPPoEセッション接続要求を受け入れ、該ユーザ端末と前記管理サーバとの間でPPPoEパケットを中継する。   When the predetermined communication protocol procedure described above is, for example, PPPoE (Point-to-Point Protocol over Ethernet), the fixed address registered in the management table is the MAC address of the user terminal, and the specific header information is the PPPoE session identifier. In this case, when the number of PPPoE session identifiers having the same connection port identifier registered in the management table reaches a predetermined value, the control unit is connected to the first interface unit having the connection port identifier. It is determined that a connection request for a new PPPoE session generated from the terminal cannot be accepted, and the PPPoE discovery stage packet transmitted from the user terminal is discarded. The control unit accepts a plurality of PPPoE session connection requests from the same user terminal when the number of PPPoE session identifiers having the same connection port identifier registered in the management table is within a predetermined value, and the user terminal And relay the PPPoE packet to the management server.

所定の通信プロトコル手順が、例えば、DHCP(Dynamic Host Configuration Protocol)の場合、管理テーブルに登録される固定アドレスはユーザ端末のMACアドレス、特定ヘッダ情報はユーザ端末のIPアドレスとなる。この場合、上記制御部は、管理テーブルに登録された同一接続ポート識別子をもつテーブルエントリの個数が所定値に達していた時、上記接続ポート識別子をもつ第1インタフェース部に接続されたユーザ端末から発生するIPアドレスの割当て要求を受付不可と判断し、ユーザ端末から送信されたIPアドレス取得のためのDHCPパケットを廃棄する。   When the predetermined communication protocol procedure is, for example, DHCP (Dynamic Host Configuration Protocol), the fixed address registered in the management table is the MAC address of the user terminal, and the specific header information is the IP address of the user terminal. In this case, when the number of table entries having the same connection port identifier registered in the management table has reached a predetermined value, the control unit receives from the user terminal connected to the first interface unit having the connection port identifier. The generated IP address assignment request is determined to be unacceptable, and the DHCP packet for acquiring the IP address transmitted from the user terminal is discarded.

本発明によれば、ISPの管理サーバと複数のユーザ端末との間に配置されるパケット転送装置(L2SW)が単独で、アクセス回線毎の割当てIPアドレス数や接続セッション数を制限できるため、ISPの管理サーバにおける負荷の集中を軽減することが可能となる。   According to the present invention, since the packet transfer device (L2SW) arranged between the ISP management server and a plurality of user terminals can be limited, the number of assigned IP addresses and the number of connection sessions for each access line can be limited. It is possible to reduce the load concentration on the management server.

以下、図面を参照して本発明の実施例について説明する。   Embodiments of the present invention will be described below with reference to the drawings.

図1は、本発明のパケット転送装置(レイヤ2スイッチ:L2SW)10を含むネットワーク構成の第1の実施例を示す。
ここに示したネットワークは、L2SW10に収容された複数のユーザ網NW(NW−A、NW−B、NW−C、・・・)と、インターネットIPNWとからなり、L2SW10は、ISPが管理するBAS(Broadband Access Server)30を介して、インターネットIPNWに接続されている。BAS30には、インターネット接続要求元のユーザを認証するために認証サーバ31が接続されている。但し、認証サーバ31の機能は、BAS30に内蔵されていてもよい
ユーザ網NWには、例えば、NW−A、NW−Cのように、複数のユーザ端末20(20−A1〜20−A2、20−C1〜20−C3)が、宅内ハブ21(21A、21C)を介して、L2SW10に接続されるものと、NW−Bのように、ユーザ端末20−B1が、アクセス回線50Bを介してダイレクトにL2SW10に接続されるものとがある。
ここで、例えば、ユーザ端末20−B1の位置にホームルータを配置し、図示しない複数のユーザ端末をホームルータ経由でアクセス回線50Bに接続してもよい。同様に、宅内ハブ21の何れかの支線に、ホームルータを経由して複数のユーザ端末を接続してもよい。従って、以下の説明において、ユーザ端末20には、このようなホームルータも含まれるものとする。
FIG. 1 shows a first embodiment of a network configuration including a packet transfer apparatus (layer 2 switch: L2SW) 10 of the present invention.
The network shown here includes a plurality of user networks NW (NW-A, NW-B, NW-C,...) Accommodated in the L2SW 10 and an Internet IPNW. The L2SW 10 is a BAS managed by the ISP. (Broadband Access Server) 30 is connected to the Internet IPNW. An authentication server 31 is connected to the BAS 30 in order to authenticate the user who requested the Internet connection. However, the function of the authentication server 31 may be built in the BAS 30. The user network NW includes a plurality of user terminals 20 (20-A1 to 20-A2, NW-A, NW-C, for example). 20-C1 to 20-C3) are connected to the L2SW 10 via the home hub 21 (21A, 21C) and, like the NW-B, the user terminal 20-B1 is connected via the access line 50B. Some are directly connected to the L2SW 10.
Here, for example, a home router may be arranged at the position of the user terminal 20-B1, and a plurality of user terminals (not shown) may be connected to the access line 50B via the home router. Similarly, a plurality of user terminals may be connected to any branch line of the home hub 21 via a home router. Therefore, in the following description, it is assumed that the user terminal 20 includes such a home router.

L2SW10は、これらのユーザ網に接続されたアクセス回線50a、50b、50c、・・・と、BAS30との接続回線50uとを収容する各入出力ポート(入出力回線インタフェース)に対して、個別のポートID(Pa、Pb、Pc、・・・Pu)を割り当てている。   The L2SW 10 is connected to each input / output port (input / output line interface) that accommodates the access lines 50a, 50b, 50c,... Connected to these user networks and the connection line 50u to the BAS 30. Port IDs (Pa, Pb, Pc,... Pu) are assigned.

各ユーザ端末20は、L2SW10を介して、BAS30との間でPPPoEセッションの接続手順を実行する。PPPoEセッションの接続と、認証サーバ31によるユーザ認証およびIPアドレス割当てに成功すると、各ユーザ端末20は、セッション識別子(S−ID)と割当てIPアドレスとを適用して、PPPoEセッションを通してインターネットへのユーザパケットの送信が可能となる。BAS30は、PPPoEセッションから受信したユーザパケットをデカプセル化し、IPパケット形式でインターネットIPNWに中継すると共に、インターネットIPNWから受信したIPパケットをPPPoEヘッダでカプセル化し、宛先アドレスと対応したPPPoEセッションに中継する。   Each user terminal 20 executes a PPPoE session connection procedure with the BAS 30 via the L2SW 10. When the connection of the PPPoE session, the user authentication by the authentication server 31 and the IP address assignment are successful, each user terminal 20 applies the session identifier (S-ID) and the assigned IP address, and the user to the Internet through the PPPoE session. Packet transmission is possible. The BAS 30 decapsulates the user packet received from the PPPoE session, relays it to the Internet IPNW in the IP packet format, encapsulates the IP packet received from the Internet IPNW with the PPPoE header, and relays it to the PPPoE session corresponding to the destination address.

本実施例では、L2SW10が、PPPoEセッション管理テーブル40を備え、このテーブルを参照して、各ユーザ端末とBAS30との間での通信パケットの転送を制御することを特徴としている。PPPoEセッション管理テーブル40には、図3で詳述するように、PPPoEセッションの接続を要求したユーザ端末の固定アドレス(MACアドレス)と対応して、接続ポートIDと接続済みセッションの識別子(セッションID)とが記憶される。   The present embodiment is characterized in that the L2SW 10 includes a PPPoE session management table 40, and refers to this table to control the transfer of communication packets between each user terminal and the BAS 30. In the PPPoE session management table 40, as described in detail in FIG. 3, the connection port ID and the identifier of the connected session (session ID) are associated with the fixed address (MAC address) of the user terminal that requested the PPPoE session connection. ) Is stored.

L2SW10は、ユーザ端末20またはBAS30からPPPoEパケットを受信すると、受信パケットに付されたレイヤ2のヘッダ(MAC)情報のみならず、PPPoEメッセージの種類も判定した上で、PPPoEセッション管理テーブル40に従ったパケット転送制御を行う。例えば、ユーザ端末から新たPPPoEセッションの接続要求パケットを受信した時、L2SW10は、PPPoEセッション管理テーブル40を参照して、当該ユーザ端末とBAS30との間の接続済みのセッション数が予め決められた上限値に達しているか否かを判定する。   When the L2SW 10 receives the PPPoE packet from the user terminal 20 or the BAS 30, it determines not only the layer 2 header (MAC) information attached to the received packet but also the type of the PPPoE message, and then follows the PPPoE session management table 40. Perform packet transfer control. For example, when a connection request packet for a new PPPoE session is received from a user terminal, the L2SW 10 refers to the PPPoE session management table 40 and the upper limit in which the number of connected sessions between the user terminal and the BAS 30 is determined in advance. Determine whether the value has been reached.

もし、接続済みセッション数が上限値に達していなければ、L2SW10は、ユーザ端末のMACアドレスをもつ新たなテーブルエントリをPPPoEセッション管理テーブル40に登録して、受信パケットをBAS30に転送する。接続済みセッション数が上限値に達していた場合、L2SW10は、受信パケットを廃棄することによって、同一ユーザ端末が上限値を越えるセッションを接続するのを阻止する。新たなセッション接続を阻止するためには、L2SW10が、新たなテーブルエントリをPPPoEセッション管理テーブル40に登録することなく、PPPoEセッションの接続要求パケットをBAS30に転送しておき、BAS30から応答パケットを受信した時、該応答パケットに対応するテーブルエントリがPPPoEセッション管理テーブル40に未登録であることを理由に、受信パケットを廃棄するようにしてもよい。   If the number of connected sessions has not reached the upper limit value, the L2SW 10 registers a new table entry having the MAC address of the user terminal in the PPPoE session management table 40 and transfers the received packet to the BAS 30. When the number of connected sessions has reached the upper limit value, the L2SW 10 prevents the same user terminal from connecting a session exceeding the upper limit value by discarding the received packet. In order to prevent a new session connection, the L2SW 10 does not register a new table entry in the PPPoE session management table 40, but forwards a connection request packet for the PPPoE session to the BAS 30 and receives a response packet from the BAS 30. In this case, the received packet may be discarded because the table entry corresponding to the response packet is not registered in the PPPoE session management table 40.

図2は、本発明のL2SW10の1実施例を示すブロック構成図である。
L2SW10は、プロセッサ(制御部)11と、プロセッサ11が実行する各種のプログラムを格納したメモリ12と、データメモリ13と、複数対の入力回線インタフェース14−iおよび出力回線インタフェース15−i(i=1〜n)と、これらの要素を接続する内部バス16とからなる。メモリ12には、本発明に関係するプログラムとして、上りPPPoEパケット処理ルーチン100と、下りPPPoEパケット処理ルーチン200と、タイムアウト監視ルーチン300が用意されている。また、メモリ13には、前述したPPPoEセッション管理テーブル40と、その他のテーブルとして、例えば、パケット転送に必要なルーティング情報を定義したルーティングテーブルが用意されている。
FIG. 2 is a block diagram showing an embodiment of the L2SW 10 of the present invention.
The L2SW 10 includes a processor (control unit) 11, a memory 12 storing various programs executed by the processor 11, a data memory 13, a plurality of pairs of input line interfaces 14-i and output line interfaces 15- i (i = 1 to n) and an internal bus 16 for connecting these elements. The memory 12 is provided with an upstream PPPoE packet processing routine 100, a downstream PPPoE packet processing routine 200, and a timeout monitoring routine 300 as programs related to the present invention. In addition, the memory 13 includes a PPPoE session management table 40 described above and a routing table that defines, for example, routing information necessary for packet transfer as other tables.

入力回線インタフェース14−iと出力回線インタフェース15−iは、図1に示した回線50A〜50Uの何れかに接続され、それぞれポートID(Pa〜Pu)が割り当てられている。アクセス回線50からの受信信号は、入力回線インタフェース14−iで処理され、受信パケットに変換して入力バッファに一時的に蓄積される。 The input line interface 14-i and the output line interface 15- i are connected to any of the lines 50A to 50U shown in FIG. 1, and are assigned port IDs (Pa to Pu), respectively. A received signal from the access line 50 is processed by the input line interface 14-i, converted into a received packet, and temporarily stored in the input buffer.

プロセッサ11は、これらの入力回線インタフェースを循環的にアクセスし、入力バッファから受信パケットを順次に読み出す。プロセッサ11は、ユーザ網に接続されたアクセス回線50A〜50Cを収容している入力回線インタフェースからの受信パケットは、上りPPPoEパケット処理ルーチン100によって処理し、BAS30との接続回線を収容している入力回線インタフェース14−nからの受信パケットは、下りPPPoEパケット処理ルーチン200によって処理する。上りPPPoEパケット処理ルーチン100と下りPPPoEパケット処理ルーチン200については、図8、図9を参照して後で詳述する。   The processor 11 cyclically accesses these input line interfaces and sequentially reads received packets from the input buffer. The processor 11 processes the received packet from the input line interface that accommodates the access lines 50A to 50C connected to the user network by the upstream PPPoE packet processing routine 100, and the input that accommodates the connection line with the BAS 30. Packets received from the line interface 14-n are processed by the downstream PPPoE packet processing routine 200. The upstream PPPoE packet processing routine 100 and the downstream PPPoE packet processing routine 200 will be described in detail later with reference to FIGS.

図3は、PPPoEセッション管理テーブル40の1例を示す。
PPPoEセッション管理テーブル40は、ユーザ端末20のMACアドレス41と対応して、接続ポートID欄42と、セッションID欄43と、タイムアウト時刻欄44とをもつ複数のテーブルエントリ400−1、400−2、・・・からなる。
FIG. 3 shows an example of the PPPoE session management table 40.
The PPPoE session management table 40 corresponds to the MAC address 41 of the user terminal 20 and includes a plurality of table entries 400-1, 400-2 having a connection port ID column 42, a session ID column 43, and a timeout time column 44. It consists of ...

接続ポートID欄42は、MACアドレス41をもつユーザ端末と接続されたアクセス回線50が収容された入力回線インタフェース14のポートIDを示す。セッションID欄43は、上記ユーザ端末とBAS30との間に既に接続済みとなっているPPPoEセッションの識別子を示す。本実施例では、個々のユーザ端末が同時に接続可能なPPPoEセッションの個数に制限があり、各テーブルエントリ400には、予め決められた上限値の範囲内で、セッションIDが登録される。タイムアウト時刻欄44には、セッションIDと対応して、PPPoEセッションを自動的に切断するためのタイムアウト時刻が登録される。   The connection port ID column 42 indicates the port ID of the input line interface 14 in which the access line 50 connected to the user terminal having the MAC address 41 is accommodated. The session ID column 43 indicates an identifier of a PPPoE session that has already been connected between the user terminal and the BAS 30. In this embodiment, there is a limit to the number of PPPoE sessions that can be simultaneously connected to individual user terminals, and session IDs are registered in each table entry 400 within a predetermined upper limit range. In the timeout time column 44, a timeout time for automatically disconnecting the PPPoE session is registered in association with the session ID.

上記PPPoEセッション管理テーブル40には、L2SW10が、ユーザ端末から最初のPPPoEセッションの接続要求パケット(PPPoE Active Discovery Initiation:PADI)を受信した時点で、MACアドレス41にユーザ端末のMACアドレス、接続ポートID欄42に上記接続要求パケットの入力ポートIDを含む新たなテーブルエントリが追加される。セッションID欄43には、BAS30からのセッションID割当て待ち状態にあることを示す予約コードが設定され、タイムアウト時刻欄44には、現在時刻に所定時間を加えたタイムアウト時刻が設定される。上述したPPPoEセッション管理テーブル40への新たなテーブルエントリの追加は、上りPPPoEパケット処理ルーチン100によって行われる。   In the PPPoE session management table 40, when the L2SW 10 receives a connection request packet (PPPoE Active Discovery Initiation: PADI) of the first PPPoE session from the user terminal, the MAC address 41 and the connection port ID of the user terminal are stored in the MAC address 41. A new table entry including the input port ID of the connection request packet is added to the column 42. In the session ID column 43, a reservation code indicating that the session ID allocation waiting state from the BAS 30 is waited is set, and in the timeout time column 44, a timeout time obtained by adding a predetermined time to the current time is set. The addition of a new table entry to the PPPoE session management table 40 described above is performed by the upstream PPPoE packet processing routine 100.

PADIパケットを受信した時、該パケットの送信元MACアドレスをもつテーブルエントリが既に存在していた場合、PPPoEセッション管理テーブル40への新たなテーブルエントリの追加はなく、既存のテーブルエントリに対して、上述したセッションID(予約コード)とタイムアウト時刻の値が追加される。上りPPPoEパケット処理ルーチン100は、PADIパケットの受信の都度、PPPoEセッション管理テーブル40を参照し、受信パケットの送信元MACアドレスと対応するセッションIDの個数をチェックすることによって、登録セッションIDの個数が既に上限値に達したユーザ端末からの新たなPPPoEセッションの接続要求を阻止する
タイムアウト時刻欄44の値は、当該PPPoEセッションでの通信パケットの受信の都度、上りPPPoEパケット処理ルーチン100および下りPPPoEパケット処理ルーチン200によって更新される。タイム監視ルーチン300は、タイムアウト時刻欄44を定期的にチェックし、タイムアウト時刻に達したセッションIDをPPPoEセッション管理テーブル40から自動的に削除する。1つのセッションIDの削除によって、セッションID欄43が空になった場合、テーブルエントリそのものがPPPoEセッション管理テーブル40から削除される。
When a table entry having the source MAC address of the packet already exists when the PADI packet is received, no new table entry is added to the PPPoE session management table 40, and the existing table entry is The session ID (reservation code) and timeout time value described above are added. The upstream PPPoE packet processing routine 100 refers to the PPPoE session management table 40 each time a PADI packet is received, and checks the number of session IDs corresponding to the transmission source MAC address of the received packet, thereby obtaining the number of registered session IDs. The value of the time-out time field 44 that blocks a connection request for a new PPPoE session from a user terminal that has already reached the upper limit value is the value of the upstream PPPoE packet processing routine 100 and the downstream PPPoE packet each time a communication packet is received in the PPPoE session. It is updated by the processing routine 200. The time monitoring routine 300 periodically checks the timeout time column 44 and automatically deletes the session ID that has reached the timeout time from the PPPoE session management table 40. When the session ID column 43 becomes empty due to deletion of one session ID, the table entry itself is deleted from the PPPoE session management table 40.

ここでは、セッションID毎に異なったタイムアウト時刻44の値が設定されているが、タイムアウト時刻は、同一テーブルエントリ内の複数のセッションIDで共用してもよい。この場合、同一ユーザ端末が接続した全てのPPPoEセッションでパケット通信が途絶えた時、タイムアウトが発生し、テーブルエントリがPPPoEセッション管理テーブル40から削除されることになる。   Here, a different time-out time 44 value is set for each session ID, but the time-out time may be shared by a plurality of session IDs in the same table entry. In this case, when packet communication is interrupted in all PPPoE sessions connected by the same user terminal, a timeout occurs and the table entry is deleted from the PPPoE session management table 40.

図1において、各ユーザ端末20に付随して表示したMACとS−IDの値は、各ユーザ端末のMACアドレスと、そのユーザ端末が接続中のPPPoEセッションのセッションIDを示している。図3のテーブルエントリ400−1〜400−4は、それぞれユーザ端末20−A1、20−B1、20−C1、20−C2によるPPPoEセッションの接続状態を示している。   In FIG. 1, the MAC and S-ID values displayed accompanying each user terminal 20 indicate the MAC address of each user terminal and the session ID of the PPPoE session to which the user terminal is connected. Table entries 400-1 to 400-4 in FIG. 3 indicate the connection states of the PPPoE sessions by the user terminals 20-A1, 20-B1, 20-C1, and 20-C2, respectively.

図4は、PPPoEのパケットフォーマットを示す。
PPPoEのパケットは、MACヘッダ81と、PPPoEヘッダ82と、PPPoEペイロード83とからなる。MACヘッダ81は、サブネット区間におけるパケットの宛先および送信元のアドレスを示す宛先MACアドレス811および送信元MACアドレス812と、MACヘッダに続くパケットの形式を示すタイプ813と、その他の情報を含んでいる。PPPoEパケットの場合、タイプ813の値によって、MACヘッダ81の次にPPPoEヘッダ82が位置していることが判る。
FIG. 4 shows a PPPoE packet format.
The PPPoE packet includes a MAC header 81, a PPPoE header 82, and a PPPoE payload 83. The MAC header 81 includes a destination MAC address 811 and a source MAC address 812 indicating the destination and source addresses of the packet in the subnet section, a type 813 indicating the format of the packet following the MAC header, and other information. . In the case of a PPPoE packet, the value of type 813 indicates that the PPPoE header 82 is located next to the MAC header 81.

PPPoEヘッダ82は、パケット種別コード821と、セッション識別子(S−ID)822と、その他の情報項目を含んでいる。パケット種別コード821の値によって、PPPoEペイロード83に含まれるパケット(メッセージ)の種類が特定される。セッションID値が未定の段階で送信されるPPPoEパケット、例えば、PADI、PADO(PPPoE Active Discovery Offer)、PADRの場合、S−ID822には、セッションIDが未決定であることを示す値が設定される。既にセッションIDが決定している段階で送信されるPPPoEパケット、例えば、PADS(PPPoE Active Discovery Session-confirmation)、PADT(PPPoE Active Discovery Terminate)およびセッションステージの通信パケットの場合、S−ID822の値によってPPPoEセッションを識別できる。   The PPPoE header 82 includes a packet type code 821, a session identifier (S-ID) 822, and other information items. The type of packet (message) included in the PPPoE payload 83 is specified by the value of the packet type code 821. In the case of a PPPoE packet that is transmitted when the session ID value is undetermined, for example, PADI, PADO (PPPoE Active Discovery Offer), and PADR, a value indicating that the session ID has not been determined is set in S-ID 822. The In the case of PPPoE packets transmitted at the stage where the session ID has already been determined, for example, PADS (PPPoE Active Discovery Session-confirmation), PADT (PPPoE Active Discovery Terminate) and session stage communication packets, depending on the value of S-ID 822 A PPPoE session can be identified.

PPPoEディスカバリステージの通信パケットは、PPPoEペイロード83に新たなセッションに関する各種のパラメータ値を含み、PPPoEセッションステージ以降の通信パケットは、PPPoEペイロード83に各種のPPPパケットを含む。   The communication packet in the PPPoE discovery stage includes various parameter values related to the new session in the PPPoE payload 83, and the communication packet after the PPPoE session stage includes various PPP packets in the PPPoE payload 83.

図5は、ユーザ端末20が、BAS30との間に新たなPPPoEセッションを接続する場合のL2SW10の動作を示す通信シーケンスを示す。
図5において、ステップSQ1〜SQ8は、本発明が関係するPPPoEディスカバリステージの通信シーケンスであり、ステップSQ9、SQ10、SQ11は、PPPoEディスカバリステージで接続されたPPPoEセッションを通して行われるPPPoEセッションステージの通信シーケンスを示している。
FIG. 5 shows a communication sequence showing the operation of the L2SW 10 when the user terminal 20 connects a new PPPoE session with the BAS 30.
5, steps SQ1 to SQ8 are PPPoE discovery stage communication sequences related to the present invention, and steps SQ9, SQ10, and SQ11 are PPPoE session stage communication sequences performed through a PPPoE session connected in the PPPoE discovery stage. Is shown.

新たなPPPoEセッションを接続する場合、ユーザ端末20は、BAS30宛にPPPoEのPADI(PPPoE Active Discovery Initiation)パケットを送信する(SQ1)。L2SW10は、PADIパケットを受信すると、PPPoEセッション管理テーブル40を参照して、受信パケットの送信元MACアドレスと接続ポートIDとで特定されるユーザ別の接続セッション数をチェックする(S10)。ここで、もし、MACアドレス41が送信元MACアドレスに一致するテーブルエントリがPPPoEセッション管理テーブル40に無ければ、L2SW10は、送信元MACアドレスをMACアドレス41とする新たなテーブルエントリを追加した後、受信パケットをBAS30に転送する(SQ2)。   When a new PPPoE session is connected, the user terminal 20 transmits a PPPoE PADI (PPPoE Active Discovery Initiation) packet to the BAS 30 (SQ1). When receiving the PADI packet, the L2SW 10 refers to the PPPoE session management table 40 and checks the number of connection sessions for each user specified by the transmission source MAC address and connection port ID of the received packet (S10). Here, if there is no table entry whose MAC address 41 matches the source MAC address in the PPPoE session management table 40, the L2SW 10 adds a new table entry with the source MAC address as the MAC address 41, The received packet is transferred to the BAS 30 (SQ2).

PPPoEセッション管理テーブル40に、MACアドレス41が送信元MACアドレスに一致するテーブルエントリが既に存在していた場合、L2SW10は、接続セッション数が上限値に達していなければ、セッションID欄を予約した後、受信パケットをBAS30に転送し、接続済みセッション数が上限値に達していれば、受信パケットを廃棄する。但し、受信したPADIパケットをBAS30に転送しておき、BAS30から応答パケットを受信した時、接続済みセッション数が上限値に達していることを理由に、応答パケットを廃棄するようにしてもよい。   If there is already a table entry whose MAC address 41 matches the source MAC address in the PPPoE session management table 40, the L2SW 10 reserves the session ID column if the number of connected sessions has not reached the upper limit. The received packet is transferred to the BAS 30, and if the number of connected sessions has reached the upper limit, the received packet is discarded. However, the received PADI packet may be transferred to the BAS 30, and when the response packet is received from the BAS 30, the response packet may be discarded because the number of connected sessions has reached the upper limit.

BAS30は、PADIパケットを受信すると、応答パケットとして、PPPoEのPADO(PPPoE Active Discovery Offer)パケットを返信する(SQ3)。L2SW10は、BAS30からPADOパケットを受信すると、受信パケットの宛先MACアドレスに対応するテーブルエントリがPPPoEセッション管理テーブル40に登録されているか否かをチェックする(S11)。宛先MACアドレスを持つテーブルエントリが登録済みで、且つ、セッションID欄が予約済みであれば、L2SW10は、受信パケットを宛先MACアドレスと対応するポートIDをもつ出力回線インタフェースに出力する。これによって、PADOパケットが要求元のユーザ端末20に転送される(SQ4)。セッションID欄が予約されていなかった場合、または、宛先MACアドレスと対応するテーブルエントリが未登録の場合、L2SW10は、受信パケットを廃棄する。   Upon receiving the PADI packet, the BAS 30 returns a PPPoE PADO (PPPoE Active Discovery Offer) packet as a response packet (SQ3). When the L2SW 10 receives the PADO packet from the BAS 30, the L2SW 10 checks whether or not a table entry corresponding to the destination MAC address of the received packet is registered in the PPPoE session management table 40 (S11). If the table entry having the destination MAC address has been registered and the session ID column has been reserved, the L2SW 10 outputs the received packet to the output line interface having the port ID corresponding to the destination MAC address. As a result, the PADO packet is transferred to the requesting user terminal 20 (SQ4). When the session ID column is not reserved or when the table entry corresponding to the destination MAC address is not registered, the L2SW 10 discards the received packet.

PADOパケットを受信したユーザ端末20は、次に、BAS30宛にPPPoEのPADR(PPPoE Active Discovery request)パケットを送信する(SQ5)。L2SW10は、PADRを受信すると、PPPoEセッション管理テーブル40をチェックし(S12)、MACアドレス41が受信パケットの送信元MACアドレスに一致するテーブルエントリが登録済みで、セッションID欄が予約済みの場合は、受信パケットをBAS30に転送する(SQ6)。送信元MACアドレスに該当するテーブルエントリが未登録、またはセッションID欄の予約がなければ、L2SW10は、受信パケットを廃棄する。   The user terminal 20 that has received the PADO packet then transmits a PPPoE PADR (PPPoE Active Discovery request) packet to the BAS 30 (SQ5). When the L2SW 10 receives the PADR, the L2SW 10 checks the PPPoE session management table 40 (S12). When the table entry whose MAC address 41 matches the transmission source MAC address of the received packet has been registered, and the session ID column is reserved. The received packet is transferred to the BAS 30 (SQ6). If the table entry corresponding to the transmission source MAC address is not registered or there is no reservation in the session ID column, the L2SW 10 discards the received packet.

BAS30は、PADRパケットを受信すると、応答パケットとして、PPPoEのPADS(PPPoE Active Discovery Session-configuration)パケットを返信する(SQ7)。L2SW10は、BAS30からPADSパケットを受信すると、PPPoEセッション管理テーブル40から、受信パケットの宛先MACアドレスと対応するテーブルエントリを検索し、受信したPADSパケットが示すセッションIDをこのテーブルエントリに登録(S13)した後、PADSパケットをユーザ端末20に転送する(SQ8)。PADSパケットを受信した場合も、送信元MACアドレスに該当するテーブルエントリが未登録、またはセッションID欄の予約がなければ、L2SW10は、受信パケットを廃棄する。   When receiving the PADR packet, the BAS 30 returns a PPPoE PADS (PPPoE Active Discovery Session-configuration) packet as a response packet (SQ7). When receiving the PADS packet from the BAS 30, the L2SW 10 searches the PPPoE session management table 40 for a table entry corresponding to the destination MAC address of the received packet, and registers the session ID indicated by the received PADS packet in this table entry (S13). After that, the PADS packet is transferred to the user terminal 20 (SQ8). Even when a PADS packet is received, if the table entry corresponding to the source MAC address is not registered or there is no reservation in the session ID column, the L2SW 10 discards the received packet.

PADSパケットを受信したユーザ端末20は、この後、BAS30との間で、PPP
oEセッションステージのPPPリンクの確立手順(SQ9)、ユーザ認証手順(SQ10)、IPアドレス割当て手順(SQ11)を実行することによって、インターネット通信状態となる。
After receiving the PADS packet, the user terminal 20 makes a PPP connection with the BAS 30.
By executing the PPP link establishment procedure (SQ9), user authentication procedure (SQ10), and IP address assignment procedure (SQ11) in the oE session stage, an Internet communication state is established.

図6は、PPPoEセッションステージにおけるデータパケットの通信シーケンスを示す。ユーザ端末20が送受信するデータパケット(PPPパケット)は、セッションID822を含むPPPoEヘッダによってカプセル化されている。   FIG. 6 shows a communication sequence of data packets in the PPPoE session stage. A data packet (PPP packet) transmitted and received by the user terminal 20 is encapsulated by a PPPoE header including a session ID 822.

ユーザ端末20がデータパケットを送信すると(SQ21)、これを受信したL2SW10が、PPPoEセッション管理テーブル40をチェックし(S20)、受信パケットの送信元MACアドレスに該当するテーブルエントリに、受信パケットのセッションIDが登録済みであることを確認して、受信パケットをBAS30に転送する(SQ22)。送信元MACアドレスに該当するテーブルエントリが未登録の場合、または、受信パケットが示すセッションIDがテーブルエントリに未登録の場合、L2SW10は、受信パケットを廃棄する。BAS30は、L2SW10からデータパケットを受信すると、これをデカプセル化した後、インターネットに転送する。   When the user terminal 20 transmits a data packet (SQ21), the L2SW 10 that has received the data packet checks the PPPoE session management table 40 (S20), and enters the session of the received packet in the table entry corresponding to the transmission source MAC address of the received packet. After confirming that the ID has been registered, the received packet is transferred to the BAS 30 (SQ22). When the table entry corresponding to the transmission source MAC address is not registered, or when the session ID indicated by the received packet is not registered in the table entry, the L2SW 10 discards the received packet. When the BAS 30 receives the data packet from the L2SW 10, it decapsulates it and transfers it to the Internet.

一方、インターネット(例えば、Webサーバ)からユーザ端末20宛に送信されたデータパケットは、BAS30によって、セッションID822を含むPPPoEヘッダでカプセル化され、L2SW10に送信される(SQ23)。L2SW10は、BAS10からデータパケットを受信すると、PPPoEセッション管理テーブル40をチェックし(S21)、受信パケットの宛先MACアドレスに該当するテーブルエントリに、受信パケットのセッションIDが登録済みであることを確認して、受信パケットをユーザ端末20に転送する(SQ24)。宛先MACアドレスに該当するテーブルエントリが未登録の場合、または、受信パケットが示すセッションIDがテーブルエントリに未登録の場合、L2SW10は、受信パケットを廃棄する。   On the other hand, a data packet transmitted from the Internet (for example, a Web server) to the user terminal 20 is encapsulated by the BAS 30 with a PPPoE header including the session ID 822 and transmitted to the L2SW 10 (SQ23). When the L2SW 10 receives the data packet from the BAS 10, the L2SW 10 checks the PPPoE session management table 40 (S21), and confirms that the session ID of the received packet has been registered in the table entry corresponding to the destination MAC address of the received packet. The received packet is transferred to the user terminal 20 (SQ24). If the table entry corresponding to the destination MAC address is not registered, or if the session ID indicated by the received packet is not registered in the table entry, the L2SW 10 discards the received packet.

図7は、PPPoEセッション切断時の通信シーケンスを示す。
PPPoEセッション切断シーケンスは、PPPoEのセッションステージSQ30と、それに続くPPPoEのディスカバリステージに分けられる。
FIG. 7 shows a communication sequence when a PPPoE session is disconnected.
The PPPoE session disconnection sequence is divided into a PPPoE session stage SQ30 and a subsequent PPPoE discovery stage.

ユーザ端末20側からセッションを切断する場合、ユーザ端末は、BAS30との間で、PPPoEのセッションステージSQ30(IPアドレスの解放手順とPPPリンクの切断手順)を実行した後、BAS30宛にPPPoEのPADT(PPoE Active Discovery Terminate)パケットを送信する(SQ31)。L2SW10は、PADTパケットを受信すると、PPoEセッション管理テーブル40から、受信パケットの送信元MACアドレスと対応するテーブルエントリを検索し、受信パケットが示すセッションIDを削除(S31)した後、受信パケットをBAS30に転送する(SQ32)。   When disconnecting a session from the user terminal 20 side, the user terminal performs a PPPoE session stage SQ30 (IP address release procedure and PPP link disconnection procedure) with the BAS 30, and then sends a PPPoE PADT to the BAS 30. A (PPoE Active Discovery Terminate) packet is transmitted (SQ31). Upon receiving the PADT packet, the L2SW 10 searches the PPoE session management table 40 for a table entry corresponding to the transmission source MAC address of the received packet, deletes the session ID indicated by the received packet (S31), and then converts the received packet to the BAS30. (SQ32).

尚、セッションIDの削除によって、上記テーブルエントリのセッションID欄43が空になった場合、L2SW10は、テーブルエントリそのものをPPoEセッション管理テーブル40から削除する。
BAS30側からPPPoEセッションを切断する場合も、図7と同様の手順で、PPoEセッション管理テーブル40のデータ削除とPADTパケットの転送が行われる。
When the session ID field 43 of the table entry becomes empty due to the deletion of the session ID, the L2SW 10 deletes the table entry itself from the PPoE session management table 40.
Even when the PPPoE session is disconnected from the BAS 30 side, the data deletion of the PPoE session management table 40 and the transfer of the PADT packet are performed in the same procedure as in FIG.

図8は、上りPPPoEパケット処理ルーチン100のフローチャートを示す。
L2SW10のプロセッサ11は、ユーザ網NWと接続された入力回線インタフェース14から受信パケットを読み出すと、PPPoEセッション管理テーブル40から、MACアドレス41が受信パケットの送信元MACアドレスと一致するテーブルエントリを検索する(ステップ101)。検索の結果(102)、MACアドレスが一致するテーブルエントリが無かった場合、プロセッサ11は、受信パケットの種類を判定し(103)、受信パケットがPADIパケットでなければ、受信パケットを廃棄して(121)、このルーチンを終了する。
FIG. 8 shows a flowchart of the upstream PPPoE packet processing routine 100.
When the processor 11 of the L2SW 10 reads the received packet from the input line interface 14 connected to the user network NW, the processor 11 searches the PPPoE session management table 40 for a table entry in which the MAC address 41 matches the source MAC address of the received packet. (Step 101). As a result of the search (102), if there is no table entry with a matching MAC address, the processor 11 determines the type of the received packet (103). If the received packet is not a PADI packet, the received packet is discarded ( 121) This routine is terminated.

受信パケットがPADIパケットの場合、プロセッサ11は、受信パケットの入力ポートIDと同一の接続ポートID42で、PPPoEセッション管理テーブル40に登録済みのセッション数をカウントし、セッション数が予め決められた上限値MAXに達しているか否かを判定する(104)。セッション数が上限値に達していた場合は、プロセッサ11は、受信パケットを廃棄して(121)、このルーチンを終了する。   When the received packet is a PADI packet, the processor 11 counts the number of sessions registered in the PPPoE session management table 40 with the same connection port ID 42 as the input port ID of the received packet, and the number of sessions is a predetermined upper limit value. It is determined whether or not MAX has been reached (104). If the number of sessions has reached the upper limit value, the processor 11 discards the received packet (121) and ends this routine.

セッション数が上限値未満の場合、プロセッサ11は、MACアドレス41、接続ポートID42に受信パケットの送信元MACアドレスと入力ポートIDを含み、セッションID欄43の1つ空きフィールドを予約した新たなテーブルエントリを生成し、これをPPPoEセッション管理テーブル40に追加する(105)。この後、プロセッサ11は、予約されたセッションIDフィールドと対応するタイムアウト時刻44を更新し(119)、受信パケットをBAS30との接続回線50Uが収容された出力回線インタフェース15−nに中継し(120)、このルーチンを終了する。 If the number of sessions is less than the upper limit value, the processor 11, the MAC address 41 includes an input port ID and the source MAC address of the received packet to the connection port ID 42, a new reserved one empty field session ID column 43 A table entry is generated and added to the PPPoE session management table 40 (105). Thereafter, the processor 11 updates the time-out time 44 corresponding to the reserved session ID field (119), and relays the received packet to the output line interface 15-n accommodating the connection line 50U with the BAS 30 (120). ), This routine is terminated.

ステップ102で、MACアドレス41が受信パケットの送信元MACアドレスと一致するテーブルエントリが検索された場合、プロセッサ11は、検索されたテーブルエントリが示す接続ポートID42と、受信パケットの入力ポートIDを比較する(106)。ポートIDが一致した場合、プロセッサ11は、受信パケットの種類を判定する(108)。ポートIDが不一致の場合は、プロセッサ11は、モバイル型のユーザ端末が別のユーザ網に移動してパケットを送信したものと判断し、テーブルエントリの接続ポートID42の値を受信パケットの入力ポートIDに変更(107)してから、受信パケットの種類を判定する(108)。但し、ポートIDが不一致の場合、破線で示すように、受信パケットを廃棄して(121)、このルーチンを終了するようにしてもよい。   In step 102, when a table entry in which the MAC address 41 matches the transmission source MAC address of the received packet is searched, the processor 11 compares the connection port ID 42 indicated by the searched table entry with the input port ID of the received packet. (106). If the port IDs match, the processor 11 determines the type of the received packet (108). If the port IDs do not match, the processor 11 determines that the mobile user terminal has moved to another user network and transmitted the packet, and determines the value of the connection port ID 42 in the table entry as the input port ID of the received packet. Then, the type of the received packet is determined (108). However, if the port IDs do not match, the received packet may be discarded (121) as shown by the broken line, and this routine may be terminated.

ステップ108で、受信パケットがPADIパケットの場合、プロセッサ11は、受信パケットの入力ポートIDと同一の接続ポートID42で、PPPoEセッション管理テーブル40に登録済みのセッション数(セッションIDの個数)をカウントし、セッション数が予め決められた上限値に達しているか否かを判定する(109)。セッション数が上限値に達していた場合、プロセッサ11は、受信パケットを廃棄して(121)、このルーチンを終了する。セッション数が上限値未満の場合、プロセッサ11は、セッションID欄43の1つの空きフィードを予約し(110)、これと対応するタイムアウト時刻を更新し(119)、受信パケットをBAS30に中継して(120)、このルーチンを終了する。   If the received packet is a PADI packet in step 108, the processor 11 counts the number of sessions (number of session IDs) registered in the PPPoE session management table 40 with the same connection port ID 42 as the input port ID of the received packet. It is determined whether the number of sessions has reached a predetermined upper limit value (109). If the number of sessions has reached the upper limit value, the processor 11 discards the received packet (121) and ends this routine. If the number of sessions is less than the upper limit, the processor 11 reserves one empty feed in the session ID field 43 (110), updates the corresponding timeout time (119), and relays the received packet to the BAS 30. (120) This routine is terminated.

受信パケットがPADIパケットでなかった場合、プロセッサ11は、受信パケットがPADRパケットか否かを判定する(111)。受信パケットがPADRパケットの場合、プロセッサ11は、検索されたテーブルエントリのセッションID欄をチェックし(112)、セッションID欄が予約されていなければ、受信パケットを廃棄して(121)、このルーチンを終了する。セッションID欄が予約されていた場合、プロセッサ11は、タイムアウト時刻を更新し(119)、受信パケットをBAS30に中継して(120)、このルーチンを終了する。   If the received packet is not a PADI packet, the processor 11 determines whether the received packet is a PADR packet (111). If the received packet is a PADR packet, the processor 11 checks the session ID field of the retrieved table entry (112). If the session ID field is not reserved, the processor 11 discards the received packet (121), and this routine. Exit. If the session ID field is reserved, the processor 11 updates the timeout time (119), relays the received packet to the BAS 30 (120), and ends this routine.

ステップ111で、受信パケットがPADRパケットでなかった場合、プロセッサ11は、受信パケットがPADTパケットか否かを判定する(113)。受信パケットがPADTパケットの場合、プロセッサ11は、受信したPADTパケットが示す切断対象となるセッションIDが、テーブルエントリのセッションID欄43に登録されているか否かを判定する(114)。もし、切断対象セッションIDがテーブルエントリに登録されていなければ、プロセッサ11は、受信パケットを廃棄して(121)、このルーチンを終了する。   If it is determined in step 111 that the received packet is not a PADR packet, the processor 11 determines whether the received packet is a PADT packet (113). If the received packet is a PADT packet, the processor 11 determines whether or not the session ID to be disconnected indicated by the received PADT packet is registered in the session ID column 43 of the table entry (114). If the session ID to be disconnected is not registered in the table entry, the processor 11 discards the received packet (121) and ends this routine.

切断対象セッションIDがテーブルエントリに登録されていた場合、プロセッサ11は、該テーブルエントリから切断対象セッションIDを削除し(115)、テーブルエントリの残りセッション数(ID数)を判定する(116)。残りセッション数がゼロでなければ、プロセッサ11は、受信パケットをBAS30に中継して(120)、このルーチンを終了する。セッションIDの削除によって、テーブルエントリの残りセッション数がゼロになった場合、プロセッサ11は、テーブルエントリそのものをPPPoEセッション管理テーブル40から削除し(117)、受信パケットをBAS30に中継して(120)、このルーチンを終了する。   When the disconnection target session ID is registered in the table entry, the processor 11 deletes the disconnection target session ID from the table entry (115), and determines the number of remaining sessions (ID number) of the table entry (116). If the number of remaining sessions is not zero, the processor 11 relays the received packet to the BAS 30 (120) and ends this routine. When the number of remaining sessions in the table entry becomes zero due to deletion of the session ID, the processor 11 deletes the table entry itself from the PPPoE session management table 40 (117), and relays the received packet to the BAS 30 (120). This routine is terminated.

ステップ113で、受信パケットがPADTパケットでなかった場合、プロセッサ11は、受信パケットが示すセッションIDが、テーブルエントリのセッションID欄43に登録されているか否かを判定する(118)。もし、セッションIDがテーブルエントリに登録されていなければ、プロセッサ11は、受信パケットを廃棄して(121)、このルーチンを終了し、セッションIDがテーブルエントリに登録されていた場合は、受信パケットが示すセッションIDと対応するタイムアウト時刻を更新し(119)、受信パケットをBAS30に中継して(120)、このルーチンを終了する。   If the received packet is not a PADT packet in step 113, the processor 11 determines whether or not the session ID indicated by the received packet is registered in the session ID column 43 of the table entry (118). If the session ID is not registered in the table entry, the processor 11 discards the received packet (121) and terminates this routine. If the session ID is registered in the table entry, the processor 11 The timeout time corresponding to the indicated session ID is updated (119), the received packet is relayed to the BAS 30 (120), and this routine is terminated.

図9は、下りPPPoEパケット処理ルーチン200のフローチャートを示す。
L2SW10のプロセッサ11は、BAS30と接続された入力回線インタフェース14−nから受信パケットを読み出すと、PPPoEセッション管理テーブル40から、MACアドレス41が受信パケットの宛先MACアドレスと一致するテーブルエントリを検索する(ステップ201)。検索の結果(202)、宛先MACアドレスに該当するテーブルエントリが無かった場合、プロセッサ11は、受信パケットを廃棄して(216)、このルーチンを終了する。
FIG. 9 shows a flowchart of the downlink PPPoE packet processing routine 200.
When the processor 11 of the L2SW 10 reads the received packet from the input line interface 14-n connected to the BAS 30, the processor 11 searches the PPPoE session management table 40 for a table entry in which the MAC address 41 matches the destination MAC address of the received packet ( Step 201). As a result of the search (202), if there is no table entry corresponding to the destination MAC address, the processor 11 discards the received packet (216) and ends this routine.

宛先MACアドレスに該当するテーブルエントリが検索された場合、プロセッサ11は、受信パケットの種類を判定する。受信パケットがPADOパケットの場合(203)、プロセッサ11は、上記テーブルエントリのセッションID欄43をチェックし(204)、予約されていなければ、受信パケットを廃棄して(216)、このルーチンを終了する。セッションID欄43が予約されていた場合、プロセッサ11は、予約フィールドと対応するタイムアウト時刻を更新し(214)、受信パケットを宛先MACアドレスと対応するユーザ網接続用の何れかの出力回線インタフェース15に中継して(215)、このルーチンを終了する。   When a table entry corresponding to the destination MAC address is retrieved, the processor 11 determines the type of the received packet. If the received packet is a PADO packet (203), the processor 11 checks the session ID field 43 of the table entry (204), and if not reserved, discards the received packet (216) and terminates this routine. To do. If the session ID column 43 is reserved, the processor 11 updates the timeout time corresponding to the reservation field (214), and any output line interface 15 for connecting the received packet to the user network corresponding to the destination MAC address. (215), and this routine is finished.

受信パケットがPADSパケットの場合(205)、プロセッサ11は、該PADSパケットが示す割当てセッションIDが上記テーブルエントリに既に登録済みか否かを判定する(206)。もし、登録済みであれば、プロセッサ11は、上記テーブルエントリのタイムアウト時刻欄44で、上記セッションIDと対応したタイムアウト時刻の値を更新し(214)、受信パケットを宛先MACアドレスと対応するユーザ網接続用の何れかの出力回線インタフェース15に中継して(215)、このルーチンを終了する。   When the received packet is a PADS packet (205), the processor 11 determines whether or not the assigned session ID indicated by the PADS packet has already been registered in the table entry (206). If registered, the processor 11 updates the timeout time value corresponding to the session ID in the timeout time field 44 of the table entry (214), and the received packet is a user network corresponding to the destination MAC address. It relays to one of the output line interfaces 15 for connection (215), and this routine is finished.

ステップ206で、テーブルエントリに割当てセッションIDが未登録の場合、プロセッサは、上記テーブルエントリのセッションID欄43をチェックし(207)、予約されていなければ、受信パケットを廃棄して(216)、このルーチンを終了する。セッションID欄43が予約されていた場合、プロセッサ11は、PADSパケットが示す割当てセッションIDをセッションID欄43に登録し(208)、該セッションIDと対応するタイムアウト時刻を更新し(214)、受信パケットを宛先MACアドレスと対応するユーザ網接続用の何れかの出力回線インタフェース15に中継して(215)、このルーチンを終了する。   In step 206, if the assigned session ID is not registered in the table entry, the processor checks the session ID field 43 of the table entry (207), and if not reserved, discards the received packet (216), This routine ends. If the session ID column 43 is reserved, the processor 11 registers the assigned session ID indicated by the PADS packet in the session ID column 43 (208), updates the timeout time corresponding to the session ID (214), and receives it. The packet is relayed to any one of the output line interfaces 15 for connection to the user network corresponding to the destination MAC address (215), and this routine is finished.

ステップ205で、受信パケットがPADSパケットでなかった場合、プロセッサ11は、受信パケットのセッションIDがテーブルエントリのセッションID欄43に登録済みか否かを判定する(209)。もし、受信パケットのセッションIDが未登録の場合、プロセッサ11は、受信パケットを廃棄して(216)、このルーチンを終了し、登録済みの場合は、受信パケットがPADTパケットか否かを判定する(210)。   If the received packet is not a PADS packet in step 205, the processor 11 determines whether or not the session ID of the received packet has been registered in the session ID column 43 of the table entry (209). If the session ID of the received packet has not been registered, the processor 11 discards the received packet (216), and ends this routine. If it has been registered, the processor 11 determines whether the received packet is a PADT packet. (210).

受信パケットがPADTパケットの場合、プロセッサ11は、PADSパケットが示すセッションIDをテーブルエントリから削除し(211)、該テーブルエントリの残りのセッション数(セッションIDの個数)をチェックする(212)。残りのセッション数がゼロでなければ、受信パケットを宛先MACアドレスと対応するユーザ網接続用の何れかの出力回線インタフェース15に中継して(215)、このルーチンを終了する。残りのセッション数がゼロとなった場合、プロセッサ11は、上記テーブルエントリそのものをPPPoEセッション管理テーブル40から削除(213)した後、ステップ215を実行する。   If the received packet is a PADT packet, the processor 11 deletes the session ID indicated by the PADS packet from the table entry (211), and checks the number of remaining sessions (number of session IDs) in the table entry (212). If the number of remaining sessions is not zero, the received packet is relayed to one of the output network interfaces 15 for connection to the user network corresponding to the destination MAC address (215), and this routine is terminated. When the number of remaining sessions becomes zero, the processor 11 deletes the table entry itself from the PPPoE session management table 40 (213), and then executes step 215.

ステップ210で、受信パケットがPADT以外のパケット(例えば、データパケット)の場合、プロセッサ11は、受信パケットが示すセッションIDと対応するタイムアウト時刻を更新し(214)、受信パケットを宛先MACアドレスと対応するユーザ網接続用の何れかの出力回線インタフェース15に中継して(215)、このルーチンを終了する。   In step 210, when the received packet is a packet other than PADT (for example, a data packet), the processor 11 updates the timeout time corresponding to the session ID indicated by the received packet (214), and the received packet is associated with the destination MAC address. Relay to any one of the output line interfaces 15 for user network connection (215), and this routine is terminated.

図10は、本発明のパケット転送装置(レイヤ2スイッチ:L2SW)10を含むネットワーク構成の第2の実施例を示す。図1と比較すると、本実施例のネットワークは、L2SW10が、IPアドレス管理テーブル70を備え、ルータ32を介してインターネットIPNWに接続されたことに特徴がある。   FIG. 10 shows a second embodiment of the network configuration including the packet transfer apparatus (layer 2 switch: L2SW) 10 of the present invention. Compared with FIG. 1, the network of this embodiment is characterized in that the L2SW 10 includes an IP address management table 70 and is connected to the Internet IPNW via the router 32.

ここで、ルータ32は、DHCP(Dynamic Host Configuration Protocol)に従って、ユーザ端末20に使用期限付きのIPアドレスの割当て/解放を行うDHCPサーバとしての機能を備えている。但し、ルータ32の位置に、DHCPリレーエージェントを配置してもよい。この場合、ルータ32とは別にDHCPサーバを配置しておき、ユーザ端末20とDHCPサーバが、ルータ32(DHCPリレーエージェント)を介して、DHCPパケットを送受信することになる。
本実施例では、L2SW10が、IPアドレス管理テーブル70を用いて、アクセス回線毎にユーザ端末への割当てIPアドレス数を制限し、ユーザ端末20とルータ32との間のパケット通信を制御する。
Here, the router 32 has a function as a DHCP server that assigns / releases an IP address with an expiration date to the user terminal 20 in accordance with DHCP (Dynamic Host Configuration Protocol). However, a DHCP relay agent may be arranged at the position of the router 32. In this case, a DHCP server is arranged separately from the router 32, and the user terminal 20 and the DHCP server transmit and receive DHCP packets via the router 32 (DHCP relay agent).
In this embodiment, the L2SW 10 controls the packet communication between the user terminal 20 and the router 32 by using the IP address management table 70 to limit the number of IP addresses allocated to the user terminal for each access line.

図11は、実施例2に適用されるL2SW10のブロック構成図である。
本実施例のL2SW10は、図2に示したL2SWと同一の構成要素からなり、メモリ12に、プロセッサ11が実行する本発明に関係するプログラムとして、上りパケット処理ルーチン400、下りパケット処理ルーチン500、リース期間監視ルーチン600が用意されている。また、メモリ13に、IPアドレス管理テーブル70を備えている。
FIG. 11 is a block diagram of the L2SW 10 applied to the second embodiment.
The L2SW 10 of the present embodiment is composed of the same components as the L2SW shown in FIG. 2, and the upstream packet processing routine 400, the downstream packet processing routine 500, and the program related to the present invention executed by the processor 11 are stored in the memory 12. A lease period monitoring routine 600 is prepared. The memory 13 includes an IP address management table 70.

上りパケット処理ルーチン400は、ユーザ端末20から受信したIPパケット(DHCPパケットを含む)またはARP(Address Resolution Protocol)パケットの転送を制御するためのプログラムであり、必要に応じてIPアドレス管理テーブル70を更新し、IPアドレス管理テーブル70に従って、受信パケットのルータ32への中継要否を判断する。   The upstream packet processing routine 400 is a program for controlling the transfer of IP packets (including DHCP packets) or ARP (Address Resolution Protocol) packets received from the user terminal 20, and the IP address management table 70 is stored as necessary. It is updated, and it is determined whether the received packet needs to be relayed to the router 32 according to the IP address management table 70.

下りパケット処理ルーチン500は、ルータ32から受信したIPパケット(DHCPパケットを含む)またはARPパケットのユーザ端末20への転送を制御するためのプログラムであり、必要に応じてIPアドレス管理テーブル70を更新し、IPアドレス管理テーブル70に従って、受信パケットのユーザ端末20への中継要否を判断する。   The downlink packet processing routine 500 is a program for controlling the transfer of IP packets (including DHCP packets) or ARP packets received from the router 32 to the user terminal 20, and updates the IP address management table 70 as necessary. Then, according to the IP address management table 70, it is determined whether the received packet needs to be relayed to the user terminal 20.

図12は、IPアドレス管理テーブル70の1例を示す。
IPアドレス管理テーブル70は、ユーザ端末20のMACアドレス71と対応して、接続ポートID72と、割当てIPアドレス73と、リース終了時刻74とを示す複数のテーブルエントリ700−1、700−2、・・・からなる。
FIG. 12 shows an example of the IP address management table 70.
The IP address management table 70 corresponds to the MAC address 71 of the user terminal 20 and includes a plurality of table entries 700-1, 700-2 indicating a connection port ID 72, an assigned IP address 73, and a lease end time 74.・ ・ Consists of.

接続ポートID72は、実施例1と同様、MACアドレス71をもつユーザ端末との接続されたアクセス回線が収容された入力回線インタフェースのポート識別子を示し、割当てIPアドレス73は、ルータ32が上記ユーザ端末に割り当てた期限付きのIPアドレスの値を示し、リース終了時刻74は、割当てIPアドレスの有効期限を示している。 Similarly to the first embodiment, the connection port ID 72 indicates the port identifier of the input line interface that accommodates the access line connected to the user terminal having the MAC address 71, and the assigned IP address 73 is assigned to the router 32 by the router 32. Indicates the value of the IP address with a time limit assigned to, and the lease end time 74 indicates the expiration date of the assigned IP address.

IPアドレス管理テーブル70には、L2SW10が、ユーザ端末から接続要求(DHCP DISCOVER)パケットを受信した時、上りパケット処理ルーチン400によって、新たなテーブルエントリが追加される。また、各テーブルエントリには、L2SW10が、ユーザ端末からのIPアドレス割当て要求(DHCP REQUEST)に応答してルータ32が返送するIPアドレス通知(DHCP ACK)パケットを受信した時、下りパケット処理ルーチン500によって、割当てIPアドレス73とリース終了時刻74とが登録される。 When the L2SW 10 receives a connection request (DHCP DISCOVER) packet from the user terminal, a new table entry is added to the IP address management table 70 by the upstream packet processing routine 400. Also, in each table entry, when the L2SW 10 receives an IP address notification (DHCP ACK) packet returned by the router 32 in response to an IP address allocation request (DHCP REQUEST) from the user terminal, the downlink packet processing routine 500 Thus, the assigned IP address 73 and the lease end time 74 are registered.

リース終了時刻74は、ユーザ端末からの要求によって延長可能であり、リース期間監視ルーチン600によって定期的にチェックされる。リース終了時刻に達したテーブルエントリは、リース期間監視ルーチン600によって、IPアドレス管理テーブル70から自動的に削除される。
実施例1では、一つのMACアドレス(ユーザ端末)に対して複数のセッションIDを割り当てることができたが、実施例2では、各MACアドレス(ユーザ端末)に対して一つのIPアドレスが割り当てられる。
The lease end time 74 can be extended by a request from the user terminal, and is periodically checked by the lease period monitoring routine 600. The table entry that has reached the lease end time is automatically deleted from the IP address management table 70 by the lease period monitoring routine 600.
In the first embodiment, a plurality of session IDs can be assigned to one MAC address (user terminal). However, in the second embodiment, one IP address is assigned to each MAC address (user terminal). .

図13は、本実施例でL2SW10が送受信するデータパケットおよびDHCPパケットのフォーマットを示す。
L2SW10がユーザ端末20、またはルータ32から受信するデータパケットおよびDHCPパケットは、MACヘッダ81と、IPヘッダ84と、IPペイロード85とからなる。IPヘッダには、プロトコルタイプ841、送信元IPアドレス842、宛先IPアドレス843、その他の情報項目が含まれる。プロトコルタイプ841は、IPペイロード85に適用されるプロトコルを示しており、例えば、IPペイロードがUDPパケットを含む場合、プロトコルタイプ841には、UDPパケットを示す特定値が設定される。
FIG. 13 shows a format of a data packet and a DHCP packet transmitted and received by the L2SW 10 in this embodiment.
A data packet and a DHCP packet received by the L2SW 10 from the user terminal 20 or the router 32 include a MAC header 81, an IP header 84, and an IP payload 85. The IP header includes a protocol type 841, a source IP address 842, a destination IP address 843, and other information items. The protocol type 841 indicates a protocol applied to the IP payload 85. For example, when the IP payload includes a UDP packet, a specific value indicating the UDP packet is set in the protocol type 841.

DHCPパケットは、UDP(User Datagram Protocol)パケットの一種であり、図14に示すように、IPペイロード85に、UDPヘッダ86とDHCPメッセージ87とを含む。UDPヘッダ86には、送信元ポート番号861、宛先ポート番号862、その他の情報項目が含まれる。DHCPパケットの場合、送信元ポート番号と宛先ポート番号は、DHCPプロトコルを示す特定値が設定され、UDPヘッダ86の後にDHCP以外の別プロトコルのデータが続く場合は、そのプロトコルに対応した値が設定される。   The DHCP packet is a kind of UDP (User Datagram Protocol) packet. As shown in FIG. 14, the IP payload 85 includes a UDP header 86 and a DHCP message 87. The UDP header 86 includes a transmission source port number 861, a destination port number 862, and other information items. In the case of a DHCP packet, the source port number and the destination port number are set to specific values indicating the DHCP protocol. If data of another protocol other than DHCP follows after the UDP header 86, values corresponding to the protocol are set. Is done.

DHCPメッセージ87は、割当てIPアドレス871、メッセージタイプ872、リース期間873、その他の情報項目が含まれる。割当てIPアドレス871は、ルータ32がユーザ端末に割り当てたIPアドレス、または割当て候補IPアドレスを示す。割当てIPアドレスが未定の場合は、未定であることを示す特定値が設定される。   The DHCP message 87 includes an assigned IP address 871, a message type 872, a lease period 873, and other information items. The assigned IP address 871 indicates an IP address assigned to the user terminal by the router 32 or an assignment candidate IP address. When the assigned IP address is undetermined, a specific value indicating undetermined is set.

メッセージタイプ872には、DHCPメッセージのタイプ、例えば、「DISCOVER」、「OFFER」、「REQUEST」、「ACK」、「NAK」、「DECLINE」または「RELEASE」を示すコードが設定される。リース期間873には、ルータ32がユーザ端末に割り当てたIPアドレスの有効期間を表す値(または希望値)が設定される。但し、リース期間873は、DHCPメッセージの種類によっては不要となる。   In the message type 872, a code indicating a DHCP message type, for example, “DISCOVER”, “OFFER”, “REQUEST”, “ACK”, “NAK”, “DECLINE”, or “RELEASE” is set. In the lease period 873, a value (or desired value) representing the valid period of the IP address assigned to the user terminal by the router 32 is set. However, the lease period 873 becomes unnecessary depending on the type of the DHCP message.

図15は、ユーザ端末が、IPアドレスと対応するMACアドレスを知るための送信するARPパケットのフォーマットを示す。ARPパケットは、MACヘッダ81の後にARPメッセージMを含んでいる。   FIG. 15 shows a format of an ARP packet to be transmitted for the user terminal to know the MAC address corresponding to the IP address. The ARP packet includes an ARP message M after the MAC header 81.

図16は、上りパケット処理ルーチン400のフローチャートを示す。
L2SW10のプロセッサ11は、ユーザ網NWと接続された入力回線インタフェース14から受信パケットを読み出すと、IPアドレス管理テーブル70から、MACアドレス71が受信パケットの送信元アドレスと一致するテーブルエントリを検索する(ステップ401)。検索の結果(402)、送信元MACアドレスに該当するテーブルエントリが無かった場合、プロセッサ11は、受信パケットの種類を判定し(403)、受信パケットがDHCP DISCOVERパケットでなければ、受信パケットを廃棄して(414)、このルーチンを終了する。
FIG. 16 shows a flowchart of the upstream packet processing routine 400.
When the processor 11 of the L2SW 10 reads out the received packet from the input line interface 14 connected to the user network NW, the processor 11 searches the IP address management table 70 for a table entry in which the MAC address 71 matches the source address of the received packet ( Step 401). As a result of the search (402), if there is no table entry corresponding to the source MAC address, the processor 11 determines the type of the received packet (403). If the received packet is not a DHCP DISCOVER packet, the received packet is discarded. (414), and this routine is finished.

受信パケットがDHCP DISCOVERパケットの場合、プロセッサ11は、受信パケットの入力ポートIDと同一の接続ポートID72で、IPアドレス管理テーブル70に登録済みの割当てIPアドレス数(テーブルエントリ数)をカウントし、割当てIPアドレス数が予め決められた上限値MAXに達しているか否かを判定する(404)。同一の接続ポートIDで割当てIPアドレス数が既に上限値に達していた場合、プロセッサ11は、受信パケットを廃棄して(414)、このルーチンを終了する。   If the received packet is a DHCP DISCOVER packet, the processor 11 counts the number of assigned IP addresses (number of table entries) registered in the IP address management table 70 with the same connection port ID 72 as the input port ID of the received packet. It is determined whether the number of IP addresses has reached a predetermined upper limit MAX (404). If the number of assigned IP addresses with the same connection port ID has already reached the upper limit value, the processor 11 discards the received packet (414) and ends this routine.

割当てIPアドレス数が未だ上限値に達していなければ、プロセッサ11は、MACアドレス71と接続ポートID72に、受信パケットの送信元MACアドレスと入力ポートIDを含み、割当てIPアドレス73とリソース終了時刻74が空欄の新たなテーブルエントリを生成し、これをIPアドレス管理テーブル70に追加する(405)。この後、プロセッサ11は、受信パケットをルータ32との接続回線を収容した出力回線インタフェース15−nに中継して(413)、このルーチンを終了する。   If the number of assigned IP addresses has not yet reached the upper limit, the processor 11 includes the MAC address 71 and the connection port ID 72 including the source MAC address and input port ID of the received packet, and the assigned IP address 73 and the resource end time 74. A new table entry with a blank is generated and added to the IP address management table 70 (405). Thereafter, the processor 11 relays the received packet to the output line interface 15-n accommodating the connection line with the router 32 (413), and ends this routine.

ステップ402で、受信パケットの送信元MACアドレスに該当するテーブルエントリが見つかった場合、プロセッサ11は、検索されたテーブルエントリの接続ポートID72と受信パケットの入力ポートIDとを比較する(40)。ポートIDが一致した場合、プロセッサ11は、受信パケットの種類を判定し(408)、ポートIDが不一致の場合は、モバイル型のユーザ端末が別のユーザ網に移動してパケットを送信したものと理解して、上記テーブルエントリの接続ポートID72の値を受信パケットの入力ポートIDに変更(407)してから、受信パケットの種類を判定する(408)。但し、ポートIDが不一致の場合、破線で示すように、受信パケットを廃棄して(414)、このルーチンを終了するようにしてもよい。 If a table entry corresponding to the transmission source MAC address of the received packet is found in step 402, the processor 11 compares the connection port ID 72 of the retrieved table entry with the input port ID of the received packet (40 6 ). If the port IDs match, the processor 11 determines the type of the received packet (408). If the port IDs do not match, the processor 11 moves to another user network and transmits the packet. Understandably, the value of the connection port ID 72 in the table entry is changed to the input port ID of the received packet (407), and then the type of the received packet is determined (408). However, if the port IDs do not match, the received packet may be discarded (414) as shown by the broken line, and this routine may be terminated.

受信パケットがDHCP DISCOVERパケットの場合、プロセッサ11は、同一のユーザ端末からDHCP DISCOVERパケットが再度送信されたものと理解して、上記テーブルエントリの割当てIPアドレス73をクリア(409)した後、受信パケットをルータ32との接続回線を収容した出力回線インタフェース15−nに中継して(413)、このルーチンを終了する。   If the received packet is a DHCP DISCOVER packet, the processor 11 understands that the DHCP DISCOVER packet has been transmitted again from the same user terminal, clears (409) the assigned IP address 73 of the table entry, and then receives the received packet. Is relayed to the output line interface 15-n accommodating the connection line with the router 32 (413), and this routine is terminated.

受信パケットが、IPアドレス解放のためのDHCP DECLINEパケットまたはDHCP RELEASEパケットの場合(410)、プロセッサ11は、上記テーブルエントリをIPアドレス管理テーブル70から削除(412)した後、受信パケットをルータ32との接続回線を収容した出力回線インタフェース15−nに中継して(413)、このルーチンを終了する。   When the received packet is a DHCP DECLINE packet or a DHCP RELEASE packet for releasing the IP address (410), the processor 11 deletes the table entry from the IP address management table 70 (412), and then sends the received packet to the router 32. Is relayed to the output line interface 15-n accommodating the connection line (413), and this routine is terminated.

受信パケットが、DHCP DISCOVERパケット、DHCP DECLINEパケット、DHCP RELEASEパケットの何れにも該当しなかった場合、すなわち、ステップ410の判定結果がNoの場合、プロセッサ11は、受信パケットをルータ32との接続回線を収容した出力回線インタフェース15−nに中継して(413)、このルーチンを終了する。   When the received packet does not correspond to any of the DHCP DISCOVER packet, the DHCP DECLINE packet, and the DHCP RELEASE packet, that is, when the determination result in Step 410 is No, the processor 11 connects the received packet to the router 32. Is relayed to the output line interface 15-n that accommodates (413), and this routine is terminated.

図17は、下りパケット処理ルーチン500のフローチャートを示す。
L2SW10のプロセッサ11は、ルータ32と接続された入力回線インタフェース14−nから受信パケットを読み出すと、IPアドレス管理テーブル70から、MACアドレス71が受信パケットの送信元アドレスと一致するテーブルエントリを検索する(ステップ501)。検索の結果(502)、宛先MACアドレスに該当するテーブルエントリが無かった場合、プロセッサ11は、受信パケットを廃棄して(509)、このルーチンを終了する。
FIG. 17 shows a flowchart of the downstream packet processing routine 500.
When the processor 11 of the L2SW 10 reads the received packet from the input line interface 14-n connected to the router 32, the processor 11 searches the IP address management table 70 for a table entry in which the MAC address 71 matches the source address of the received packet. (Step 501). As a result of the search (502), if there is no table entry corresponding to the destination MAC address, the processor 11 discards the received packet (509) and ends this routine.

宛先MACアドレスに該当するテーブルエントリが見つかった場合、プロセッサ11は、受信パケットの種類を判定する。受信パケットが、DHCP ACK(Acknowledge)パケットの場合(503)、プロセッサ11は、上記テーブルエントリの割当てIPアドレス73に、受信したDHCP ACKパケットが示す割当てIPアドレスの値を登録し(504)、上記テーブルエントリのリソース終了時刻74に、現在時刻に上記DHCP ACKパケットが示すリース期間を加えた値を設定する(505)。この後、プロセッサ11は、受信パケットを宛先MACアドレスと対応する出力回線インタフェース15に中継して(508)、このルーチンを終了する。   If a table entry corresponding to the destination MAC address is found, the processor 11 determines the type of the received packet. When the received packet is a DHCP ACK (Acknowledge) packet (503), the processor 11 registers the value of the assigned IP address indicated by the received DHCP ACK packet in the assigned IP address 73 of the table entry (504). A value obtained by adding the lease period indicated by the DHCP ACK packet to the current time is set to the resource end time 74 of the table entry (505). Thereafter, the processor 11 relays the received packet to the output line interface 15 corresponding to the destination MAC address (508), and ends this routine.

受信パケットが、DHCP NAK(Negative Acknowledge)パケットの場合(506)、プロセッサ11は、IPアドレス管理テーブル70から上記検索テーブルエントリを削除し(507)、受信パケットを宛先MACアドレスと対応する出力回線インタフェース15に中継して(508)、このルーチンを終了する。受信パケットが、DHCP ACKパケット、DHCP NAKパケット以外のパケットの場合、プロセッサ11は、受信パケットを宛先MACアドレスと対応する出力回線インタフェース15に中継して(508)、このルーチンを終了する。   When the received packet is a DHCP NAK (Negative Acknowledge) packet (506), the processor 11 deletes the search table entry from the IP address management table 70 (507), and the output line interface corresponding to the received packet and the destination MAC address. 15 (508), this routine is terminated. If the received packet is a packet other than a DHCP ACK packet or a DHCP NAK packet, the processor 11 relays the received packet to the output line interface 15 corresponding to the destination MAC address (508), and ends this routine.

図18は、実施例2において、ユーザ端末20が、L2SW10を介して、ルータ(DHCPサーバ)32との間で行うIPアドレス割当てのための通信シーケンスを示す。
インターネットIPNWへのアクセスに先立って、ユーザ端末20は、ルータ32に、DHCP DISCOVERパケットを送信する(SQ41)。上記DHCP DISCOVERパケットを受信したL2SW10は、上りパケット処理ルーチン400を実行して、IPアドレス管理テーブル70を参照し、接続ポート当たりの割当てIPアドレスの個数をチェックし、割当てIPアドレス数が上限値に達していなければ、IPアドレス管理テーブル70に新たなテーブルエントリを追加して(S40)、受信パケットをルータ32に中継する(SQ42)。割当てIPアドレス数が上限値に達していれば、ユーザ要求は無視され、受信パケットは廃棄される。
FIG. 18 shows a communication sequence for IP address assignment performed by the user terminal 20 with the router (DHCP server) 32 via the L2SW 10 in the second embodiment.
Prior to access to the Internet IPNW, the user terminal 20 transmits a DHCP DISCOVER packet to the router 32 (SQ41). The L2SW 10 that has received the DHCP DISCOVER packet executes the upstream packet processing routine 400, refers to the IP address management table 70, checks the number of assigned IP addresses per connection port, and sets the number of assigned IP addresses to the upper limit. If not reached, a new table entry is added to the IP address management table 70 (S40), and the received packet is relayed to the router 32 (SQ42). If the number of assigned IP addresses reaches the upper limit, the user request is ignored and the received packet is discarded.

ルータ32は、上記DHCP DISCOVERパケットに応答して、DHCP OFFERパケットを返送する(SQ43)。上記DHCP OFFERパケットを受信したL2SW10は、下りパケット処理ルーチン500を実行してIPアドレス管理テーブル70をチェックし、受信パケットの宛先MACアドレスと対応するテーブルエントリが登録済みであることを確認して(S41)、受信パケットをユーザ端末20に中継する(SQ44)。   In response to the DHCP DISCOVER packet, the router 32 returns a DHCP OFFER packet (SQ43). The L2SW 10 that has received the DHCP OFFER packet executes the downlink packet processing routine 500 to check the IP address management table 70 and confirms that the table entry corresponding to the destination MAC address of the received packet has been registered ( S41), the received packet is relayed to the user terminal 20 (SQ44).

DHCP OFFERパケットを受信したユーザ端末20は、次に、DHCP REQUESTパケットをルータ32に送信する(SQ45)。上記DHCP REQUESTパケットは、L2SW10によってルータ32に中継され(SQ46)、ルータ32は、上記DHCP REQUESTパケットに応答して、割当てIPアドレスとリース期間を指定したDHCP ACKパケットを返送する(SQ47)。L2SW10は、上記DHCP ACKパケットを受信すると、IPアドレス管理テーブルで宛先MACアドレスに該当するテーブルエントリの有無をチェックし、受信パケットが示す割当てIPアドレスとリース期間をIPアドレス管理テーブルに登録(S42)した後、受信パケットをユーザ端末20に中継する(SQ48)。   The user terminal 20 that has received the DHCP OFFER packet then transmits a DHCP REQUEST packet to the router 32 (SQ45). The DHCP REQUEST packet is relayed to the router 32 by the L2SW 10 (SQ46). In response to the DHCP REQUEST packet, the router 32 returns a DHCP ACK packet specifying the assigned IP address and lease period (SQ47). When the L2SW 10 receives the DHCP ACK packet, the L2SW 10 checks the presence or absence of a table entry corresponding to the destination MAC address in the IP address management table, and registers the assigned IP address and lease period indicated by the received packet in the IP address management table (S42). After that, the received packet is relayed to the user terminal 20 (SQ48).

ユーザ端末20は、上記DHCP ACKパケットによって割当てIPアドレスを取得すると、ARPプロトコルに従って、上記割当てIPアドレスに対応するMACアドレスの問合せを行い、自端末以外に同一IPアドレスをもつユーザ端末が存在していないことを確認して(SQ50)、インターネットIPNWとの通信を開始する。   When the user terminal 20 acquires the assigned IP address by the DHCP ACK packet, the user terminal 20 inquires about the MAC address corresponding to the assigned IP address according to the ARP protocol, and there is a user terminal having the same IP address other than the own terminal. After confirming that there is no communication (SQ50), communication with the Internet IPNW is started.

図19は、実施例2におけるユーザIPパケット(またはARPパケット)の通信シーケンスを示す。
ユーザ端末20が、割当てIPアドレスを送信元IPアドレスに適用して、ユーザIPパケットを送信すると(SQ51)、これを受信したL2SW10は、上りパケット処理ルーチン400を実行して、IPアドレス管理テーブル70を参照し(S50)、受信パケットの送信元MACアドレスに該当するテーブルエントリがIPアドレス管理テーブル70に登録済みであることを確認して、受信パケットをルータ32に中継する(SQ52)。
FIG. 19 shows a communication sequence of user IP packets (or ARP packets) in the second embodiment.
When the user terminal 20 applies the assigned IP address to the transmission source IP address and transmits the user IP packet (SQ51), the L2SW 10 that has received this executes the upstream packet processing routine 400 to execute the IP address management table 70. (S50), it is confirmed that the table entry corresponding to the source MAC address of the received packet has been registered in the IP address management table 70, and the received packet is relayed to the router 32 (SQ52).

送信元MACアドレスに該当するテーブルエントリがIPアドレス管理テーブル70に未登録の場合、L2SW10(上りパケット処理ルーチン400)は、受信パケットを廃棄する。但し、上り方向の受信パケットをルータ32に中継しておき、ルータ側から受信する下り方向のパケットを下りパケット処理ルーチン500によって廃棄するようにしてもよい。   If the table entry corresponding to the source MAC address is not registered in the IP address management table 70, the L2SW 10 (upstream packet processing routine 400) discards the received packet. However, the upstream reception packet may be relayed to the router 32, and the downstream packet received from the router side may be discarded by the downstream packet processing routine 500.

インターネットIPNW上のサーバがユーザ端末20宛に送信したIPパケットは、ルータ32を介してL2SW10に転送される(SQ53)。L2SW10は、上記IPパケットを受信すると、下りパケット処理ルーチン500を実行して、IPアドレス管理テーブル70を参照し(S51)、IPアドレス管理テーブル70に受信パケットの宛先MACアドレスに該当するテーブルエントリが登録済みであることを確認して、受信パケットをユーザ端末20に中継する(SQ54)。宛先MACアドレスと対応するテーブルエントリがIPアドレス管理テーブル70に未登録の場合、L2SW10(下りパケット処理ルーチン500)は、受信パケットを廃棄する。   The IP packet transmitted from the server on the Internet IPNW to the user terminal 20 is transferred to the L2SW 10 via the router 32 (SQ53). When the L2SW 10 receives the IP packet, the L2SW 10 executes the downlink packet processing routine 500 to refer to the IP address management table 70 (S51), and the table entry corresponding to the destination MAC address of the received packet is stored in the IP address management table 70. After confirming that it has been registered, the received packet is relayed to the user terminal 20 (SQ54). When the table entry corresponding to the destination MAC address is not registered in the IP address management table 70, the L2SW 10 (downstream packet processing routine 500) discards the received packet.

図20は、実施例2において、ユーザ端末20が、L2SW10を介して、ルータ(DHCPサーバ)32との間で行うIPアドレス解放のための通信シーケンスを示す。
ユーザ端末20は、自分に割り当てられたIPアドレスを無効化または解放する時、ルータ32宛に、DHCP DECLINEパケットまたはDHCP RELEASEパケットを送信する(SQ61)。DHCP DECLINEパケットは、ユーザ端末に割り当てられたIPアドレスが、ARP手順によって、別のユーザ端末に割り当てられたIPアドレスと競合することが判明した時、IPアドレスの割当てを無効にするために送信されるDHCPパケットであり、DHCP RELEASEパケットは、正常に割り当てられたIPパケットが不要になった時、IPパケットを解放するために送信されるDHCPパケットである。
FIG. 20 shows a communication sequence for releasing an IP address performed by the user terminal 20 with the router (DHCP server) 32 via the L2SW 10 in the second embodiment.
When invalidating or releasing the IP address assigned to the user terminal 20, the user terminal 20 sends a DHCP DECLINE packet or a DHCP RELEASE packet to the router 32 (SQ61). DHCP DECLINE packet, IP address assigned to the user terminal, the ARP procedure, when it is found to compete with the IP address assigned to another user terminal, is transmitted to disable the assignment of IP addresses The DHCP RELEASE packet is a DHCP packet that is transmitted to release an IP packet when a normally assigned IP packet becomes unnecessary.

上記DHCPパケットを受信したL2SW10は、上りパケット処理ルーチン400を実行して、受信パケットで解放要求されたIPアドレス(送信元MACアドレスに対応するテーブルエントリ)をIPアドレス管理テーブル70から削除(S60)した後、受信パケットをルータ32に中継する(SQ62)。
IPアドレス管理テーブル70からのテーブルエントリの削除は、上述したDHCP DECLINEパケットまたはDHCP RELEASEパケットの受信時以外に、例えば、リソース終了時刻に達した時、あるいは、ユーザ端末からのリース期間の延長要求がルータ32によって拒否された時にも行われる。
The L2SW 10 that has received the DHCP packet executes the upstream packet processing routine 400 and deletes the IP address (table entry corresponding to the source MAC address) requested to be released by the received packet from the IP address management table 70 (S60). After that, the received packet is relayed to the router 32 (SQ62).
The table entry is deleted from the IP address management table 70, for example, when the resource end time is reached or a lease period extension request is received from the user terminal other than when the DHCP DECLINE packet or DHCP RELEASE packet is received. This is also done when it is rejected by the router 32.

例えば、ユーザ端末20が、リース期間の延長要求(DHCP REQUEST)パケットを送信すると(SQ71)、L2SW10は、上りパケット処理ルーチン400を実行して、受信パケットをルータ32に中継する(SQ72)。ここで、ルータ32が、リース期間の延長を拒否するDHCP NAKパケットを返送(SQ73)した場合、L2SW10は、下りパケット処理ルーチン500を実行し、IPアドレス管理テーブル70から、上記DHCP NAKパケットの宛先MACアドレスと対応するテーブルエントリを削除して(S70)、受信パケットをユーザ端末20に中継する。   For example, when the user terminal 20 transmits a lease period extension request (DHCP REQUEST) packet (SQ71), the L2SW 10 executes the upstream packet processing routine 400 and relays the received packet to the router 32 (SQ72). Here, when the router 32 returns a DHCP NAK packet that refuses to extend the lease period (SQ73), the L2SW 10 executes the downstream packet processing routine 500, and the destination of the DHCP NAK packet is read from the IP address management table 70. The table entry corresponding to the MAC address is deleted (S70), and the received packet is relayed to the user terminal 20.

以上の実施例では、ISPの管理サーバ(BASや、DHCPサーバとしての機能を備えたルータ)に1つのパケット転送装置(L2SW)10が接続されたネットワーク構成(図1、図10)について説明したが、実際の応用においては、管理サーバには、複数のパケット転送装置が接続され、これらのパケット転送装置を介して多数のユーザ端末が管理サーバと交信する。   In the above embodiments, a network configuration (FIGS. 1 and 10) in which one packet transfer device (L2SW) 10 is connected to an ISP management server (a router having a function as a BAS or DHCP server) has been described. However, in an actual application, a plurality of packet transfer apparatuses are connected to the management server, and a large number of user terminals communicate with the management server via these packet transfer apparatuses.

本発明の実施例によれば、各パケット転送装置(L2SW)10が、それぞれ単独で、管理サーバに接続されるユーザ端末数をアクセス回線毎に制限することができるため、管理サーバの負荷を軽減することが可能となる。
また、本発明によれば、ISPの管理サーバとの連携を前提とすることなく、広域ネットワークであるインターネットへのユーザ端末の接続数を制限できるため、既存ネットワーク環境への導入が容易であり、例えば、同一ユーザがIPアドレスの割当て要求やセッション接続要求を大量に発信する不正なDoS(Denial of Service)攻撃に対する耐性を高めることが可能となる。
According to the embodiment of the present invention, each packet transfer device (L2SW) 10 can independently limit the number of user terminals connected to the management server for each access line, thereby reducing the load on the management server. It becomes possible to do.
In addition, according to the present invention, the number of user terminals connected to the Internet, which is a wide area network, can be limited without assuming cooperation with an ISP management server, so that it can be easily introduced into an existing network environment, For example, it is possible to increase resistance to an unauthorized DoS (Denial of Service) attack in which the same user transmits a large number of IP address assignment requests and session connection requests.

尚、実施例では、L2SWの各回線インタフェース部が、それぞれアクセス回線を介して個別のユーザ網に接続されたネットワーク構成について説明したが、本発明は、回線インタフェース部に収容される特定のアクセス回線が、例えば、ポートVLAとタグVLANとの変換機能を備えた別のL2SWを介して、複数のユーザ網に接続されるネットワーク構成に対しても適用可能である。この場合、上記特定アクセス回線では複数のタグVLANが多重化された状態となるため、例えば、図3に示したPPPoEセッション管理テーブル40において、上記特定アクセス回線の接続ポートIDについては、ポートIDとVLAN−IDとの組み合わせを適用することによって、VLAN毎にユーザ端末の接続数(PPPoEセッション数)を制限することが可能となる。 In the embodiment, the network configuration in which each line interface unit of the L2SW is connected to an individual user network via an access line has been described. However, the present invention is not limited to a specific access line accommodated in the line interface unit. but, for example, via another L2SW having a conversion function between ports VLA N and tag VLAN, it is also applicable to network configuration being connected to a plurality of user network. In this case, since a plurality of tag VLANs are multiplexed on the specific access line, for example, in the PPPoE session management table 40 shown in FIG. By applying a combination with VLAN-ID, it is possible to limit the number of connected user terminals (number of PPPoE sessions) for each VLAN.

また、実施例では、各アクセス回線に個別のユーザ端末、またはHUBを介して複数のユーザ端末を接続したネットワーク構成について説明したが、本発明は、例えば、OLT(Optical Line Terminal)に収容された各光ファイバをスプリッタで複数の支線光ファイバに分岐し、各支線光ファイバにONU(Optical Network Unit)を介してユーザ端末を接続したPON(Passive Optical Network)において、各光ファイバから受信したパケットを上位網との接続回線に多重化するためにOLTに配置されるL2SWに対しても適用できる。   In the embodiment, the network configuration in which individual user terminals or a plurality of user terminals are connected to each access line via the HUB has been described. However, the present invention is accommodated in, for example, an OLT (Optical Line Terminal). Each optical fiber is split into a plurality of branch optical fibers by a splitter, and a packet received from each optical fiber is received in a PON (Passive Optical Network) in which a user terminal is connected to each branch optical fiber via an ONU (Optical Network Unit). The present invention can also be applied to an L2SW arranged in an OLT for multiplexing on a connection line with a host network.

本発明のパケット転送装置(L2SW)を含むネットワーク構成の第1の実施例を示す図。The figure which shows the 1st Example of the network structure containing the packet transfer apparatus (L2SW) of this invention. 第1実施例に適用されるL2SW10のブロック構成図。The block block diagram of L2SW10 applied to 1st Example. 第1実施例のL2SW10が備えるPPPoEセッション管理テーブル40を示す図。The figure which shows the PPPoE session management table 40 with which L2SW10 of 1st Example is provided. PPPoEパケットのフォーマット図。The format figure of a PPPoE packet. 第1実施例におけるPPPoEセッション接続時のL2SWの動作を示す通信シーケンス図。The communication sequence diagram which shows operation | movement of L2SW at the time of the PPPoE session connection in 1st Example. 第1実施例におけるPPPoEセッションステージにおけるデータパケットの通信シーケンスを示す図。The figure which shows the communication sequence of the data packet in the PPPoE session stage in 1st Example. 第1実施例におけるPPPoEセッションの切断時の通信シーケンスを示す図。The figure which shows the communication sequence at the time of the cutting | disconnection of the PPPoE session in 1st Example. L2SW10で実行される上りPPPoEパケット処理ルーチン100のフローチャート。5 is a flowchart of an upstream PPPoE packet processing routine 100 executed by the L2SW 10. L2SW10で実行される下りPPPoEパケット処理ルーチン200のフローチャート。The flowchart of the downstream PPPoE packet processing routine 200 performed by L2SW10. 本発明のパケット転送装置(L2SW)を含むネットワーク構成の第2の実施例を示す図。The figure which shows the 2nd Example of the network structure containing the packet transfer apparatus (L2SW) of this invention. 第2実施例に適用されるL2SW10のブロック構成図。The block block diagram of L2SW10 applied to 2nd Example. 第2実施例のL2SW10が備えるIPアドレス管理テーブル70を示す図。The figure which shows the IP address management table 70 with which L2SW10 of 2nd Example is provided. 第2実施例でL2SWが送受信するパケットのフォーマット図。The format figure of the packet which L2SW transmits / receives in 2nd Example. 図13のIPペイロード87に含まれるDHCPパケットのフォーマット図。FIG. 14 is a format diagram of a DHCP packet included in the IP payload 87 of FIG. 13. ARPパケットのフォーマット図。The format diagram of an ARP packet. 第2実施例のL2SW10で実行される上りパケット処理ルーチン400のフローチャート。The flowchart of the upstream packet processing routine 400 performed by L2SW10 of 2nd Example. 第2実施例のL2SW10で実行される下りパケット処理ルーチン500のフローチャート。The flowchart of the downlink packet processing routine 500 performed by L2SW10 of 2nd Example. 第2実施例におけるIPアドレス割当て時のL2SWの動作を示す通信シーケンス図。The communication sequence diagram which shows operation | movement of L2SW at the time of IP address allocation in 2nd Example. 第2実施例におけるデータパケットの通信シーケンスを示す図。The figure which shows the communication sequence of the data packet in 2nd Example. 第2実施例におけるIPアドレス解放のための通信シーケンスを示す図。The figure which shows the communication sequence for IP address release in 2nd Example.

符号の説明Explanation of symbols

NW:ユーザ網、IPNW:インターネット、10:パケット転送装置(L2SW)、
11:プロセッサ、14:入力回線インタフェース、15:出力回線インタフェース、
20:ユーザ端末、21:HUB、30:BAS、31:認証サーバ、
32:ルータ(DHCPサーバ)、40:PPPoEセッション管理テーブル、
70:IPアドレス管理テーブル、100:上りPPPoEパケット処理ルーチン、
200:下りPPPoEパケット処理ルーチン、300:タイムアウト監視ルーチン、
400:上りパケット処理ルーチン、500:下りパケット処理ルーチン、
600:リース期間監視ルーチン。
NW: user network, IPNW: Internet, 10: packet transfer device (L2SW),
11: processor, 14: input line interface, 15: output line interface,
20: User terminal, 21: HUB, 30: BAS, 31: Authentication server,
32: Router (DHCP server), 40: PPPoE session management table,
70: IP address management table, 100: Upstream PPPoE packet processing routine,
200: Downstream PPPoE packet processing routine, 300: Timeout monitoring routine,
400: upstream packet processing routine, 500: downstream packet processing routine,
600: Lease period monitoring routine.

Claims (11)

端末と広域ネットワークを接続するネットワークシステムであって、該ネットワークシステムは、更に管理サーバと接続され、
上記管理サーバが、上記端末から広域ネットワークに送信されるパケット中に設定すべき特定ヘッダ情報を上記端末に割り当て、
上記端末から上記管理サーバまでの通信経路上に位置した該管理サーバ以外の装置が、上記特定ヘッダ情報の既割当数に基づいて上記端末からの特定ヘッダ情報割当要求パケットを廃棄することを特徴とするネットワークシステム。
A network system for connecting a terminal and a wide area network, the network system being further connected to a management server,
The management server assigns to the terminal specific header information to be set in each packet transmitted from the terminal to the wide area network,
Characterized in that said management server other than the devices located on a communication path from the terminal to the management server, based on the already allocated number of the specific header information, discarding the specific header information assignment request packet from the terminal Network system.
前記管理サーバからの新たな特定ヘッダ情報の割当が、割当数の上限を超える場合、前記端末から上記管理サーバまでの通信経路上に位置した該管理サーバ以外の装置が、該端末からの受信パケット、または上記管理サーバから該端末宛のパケットを廃棄することを特徴とする請求項1に記載のネットワークシステム。 When the assignment of new specific header information from the management server exceeds the upper limit of the number of assignments , devices other than the management server located on the communication path from the terminal to the management server receive packets from the terminal. 2. The network system according to claim 1, wherein a packet addressed to the terminal is discarded from the management server. 前記端末と前記広域ネットワーク間の通信プロトコル手順が、PPPoE(Point-to-Point Protocol over Ethernet)であり、前記特定ヘッダ情報が、PPPoEセッション識別子であることを特徴とする請求項1に記載のネットワークシステム。   The network according to claim 1, wherein a communication protocol procedure between the terminal and the wide area network is PPPoE (Point-to-Point Protocol over Ethernet), and the specific header information is a PPPoE session identifier. system. 前記特定ヘッダ情報が、前記端末のIPアドレスであり、該IPアドレスは、DHCPを用いて前記管理サーバから割り当てられることを特徴とする請求項1に記載のネットワークシステム。   The network system according to claim 1, wherein the specific header information is an IP address of the terminal, and the IP address is assigned from the management server using DHCP. 前記特定ヘッダ情報が、前記端末から前記管理サーバまでの通信経路上に位置した上記管理サーバ以外の装置において、上記端末の固定アドレスと対応づけて管理されることを特徴とする請求項1に記載のネットワークシステム。 2. The specific header information is managed in association with a fixed address of the terminal in an apparatus other than the management server located on a communication path from the terminal to the management server. Network system. 前記端末の固定アドレスが、該端末のMACアドレスであることを特徴とする請求項5に記載のネットワークシステム。   6. The network system according to claim 5, wherein the fixed address of the terminal is a MAC address of the terminal. 前記端末から前記管理サーバまでの通信経路上に位置した該管理サーバ以外の装置が、前記特定ヘッダ情報の既割当数に基づいて、上記端末への新たな特定ヘッダ情報の割当可否を判断し、上記新たな特定ヘッダ情報の割当が可と判断された場合に前記固定アドレス管理しておき、上記管理サーバから上記端末に通知される新たな特定ヘッダ情報を上記固定アドレスと対応付けて保持することを特徴とする請求項5に記載のネットワークシステム。 The terminal from other than the management server located on a communication path to the management server apparatus, based on the already allocated number of the specific header information, and determines the assignment executability of new specific header information to the terminal, the previously manages the fixed address, the new specific header information notified to the terminal from the management server to hold in association with the fixed address when the allocation of a new specific header information is determined as Yes The network system according to claim 5. 前記特定ヘッダ情報と前記固定アドレスの対応関係が、更に上記特定ヘッダ情報の有効期限を示す時刻情報を含み、前記端末から前記管理サーバまでの通信経路上に位置した該管理サーバ以外の装置が、上記時刻情報に従って期限切れになった上記特定ヘッダ情報を自動的に上記対応関係から削除し、上記削除された特定ヘッダ情報と対応する上記固定アドレスを送信元または宛先とする受信パケットを廃棄することを特徴とする請求項7に記載のネットワークシステム。 The correspondence relationship between the specific header information and the fixed address further includes time information indicating an expiration date of the specific header information, and a device other than the management server located on the communication path from the terminal to the management server, The specific header information expired according to the time information is automatically deleted from the correspondence, and the received packet having the fixed address corresponding to the deleted specific header information as a transmission source or destination is discarded. The network system according to claim 7, wherein: 前記端末から前記管理サーバまでの通信経路上に位置した該管理サーバ以外の装置が、パケットを受信した際、該受信パケットの送信元または宛先アドレスとなっている固定アドレスに対応した前記時刻情報を更新することを特徴とする請求項8に記載のネットワークシステム。 When a device other than the management server located on the communication path from the terminal to the management server receives a packet, the time information corresponding to the fixed address that is the source or destination address of the received packet is The network system according to claim 8, wherein the network system is updated. 前記端末から前記管理サーバまでの通信経路上に位置した該管理サーバ以外の装置が上記端末への前記特定ヘッダ情報の割当個数を保持し、上記端末の前記PPPoEセッション識別子の個数が所定値に達していた時、上記端末から送信される新たなPPPoEセッションの接続要求を受付不可と判断し、上記端末から送信されるPPPoEディスカバリステージのパケットを廃棄することを特徴とする請求項3に記載のネットワークシステム。 The terminal from other than the management server located on a communication path to the management server device holds the assignment number of the particular header information to the terminal, the number of the PPPoE session identifier of the terminal to a predetermined value 4. The method according to claim 3, wherein when it has been reached, it is determined that a connection request for a new PPPoE session transmitted from the terminal cannot be accepted, and a PPPoE discovery stage packet transmitted from the terminal is discarded. Network system. 前記端末から前記管理サーバまでの通信経路上に位置した該管理サーバ以外の装置が上記端末への前記特定ヘッダ情報の割当個数を保持し、上記端末の前記PPPoEセッション識別子の個数が所定内である場合、上記端末から送信される新たなPPPoEセッションの接続要求を受付可と判断し、該端末と上記管理サーバとの間で通信されるPPPoEパケットを中継することを特徴とする請求項3に記載のネットワークシステム。 The terminal from other than the management server located on a communication path to the management server device holds the assignment number of the particular header information to the terminal, the number of the PPPoE session identifier of the terminal in a predetermined 4. If there is, it is determined that a connection request for a new PPPoE session transmitted from the terminal can be accepted, and a PPPoE packet communicated between the terminal and the management server is relayed. The network system described.
JP2006270964A 2006-10-02 2006-10-02 Network system Expired - Fee Related JP4143663B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006270964A JP4143663B2 (en) 2006-10-02 2006-10-02 Network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006270964A JP4143663B2 (en) 2006-10-02 2006-10-02 Network system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005357714A Division JP3920305B1 (en) 2005-12-12 2005-12-12 Packet transfer device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008006745A Division JP4621259B2 (en) 2008-01-16 2008-01-16 Packet transfer control method

Publications (3)

Publication Number Publication Date
JP2007166590A JP2007166590A (en) 2007-06-28
JP2007166590A5 JP2007166590A5 (en) 2008-02-28
JP4143663B2 true JP4143663B2 (en) 2008-09-03

Family

ID=38248917

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006270964A Expired - Fee Related JP4143663B2 (en) 2006-10-02 2006-10-02 Network system

Country Status (1)

Country Link
JP (1) JP4143663B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009140163A (en) * 2007-12-05 2009-06-25 Fuji Electric Systems Co Ltd Session management device
JP2009294915A (en) * 2008-06-05 2009-12-17 Nippon Telegr & Teleph Corp <Ntt> Information communication service providing device, information communication service providing method and information communication service providing program
JP6235644B2 (en) * 2016-03-28 2017-11-22 西日本電信電話株式会社 Subscriber line termination device, accommodation station device, and alarm transmission method

Also Published As

Publication number Publication date
JP2007166590A (en) 2007-06-28

Similar Documents

Publication Publication Date Title
JP3920305B1 (en) Packet transfer device
US7733859B2 (en) Apparatus and method for packet forwarding in layer 2 network
JP4738901B2 (en) VLANID dynamic allocation method and packet transfer apparatus
JP4541848B2 (en) User terminal connection control method and apparatus
JP4394590B2 (en) Packet relay apparatus and communication bandwidth control method
US7477648B2 (en) Packet forwarding apparatus and access network system
JP4680866B2 (en) Packet transfer device with gateway load balancing function
EP1535449B1 (en) System and method for dynamic simultaneous connection to multiple service providers
US20070195804A1 (en) Ppp gateway apparatus for connecting ppp clients to l2sw
US20080285569A1 (en) Device for Session-Based Packet Switching
JP2004048234A (en) User authentication system and user authentication method
JP2004328027A (en) Relaying apparatus
JP4621259B2 (en) Packet transfer control method
US20050157722A1 (en) Access user management system and access user management apparatus
JP4143663B2 (en) Network system
JP3757863B2 (en) Access network equipment
JP5261432B2 (en) Communication system, packet transfer method, network switching apparatus, access control apparatus, and program
JP2005064936A (en) PPPoE SESSION DISPERSING METHOD AND SYSTEM IN PLURALITY OF BRAS APPARATUS
EP2854343B1 (en) Subscriber service selection over non-channelized media
JP2009267987A (en) Station-side apparatus, pon system and home gateway device
JP2004207788A (en) Access control method, access controller, and access control system using the same
CN116232786A (en) Method, equipment and system for controlling user to access network
JP5733102B2 (en) Network system, address assignment server, and address assignment program

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080116

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080116

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20080116

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20080212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080219

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080418

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: 20080520

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: 20080616

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees