JP2005086525A - Communication system in ad hoc network - Google Patents

Communication system in ad hoc network Download PDF

Info

Publication number
JP2005086525A
JP2005086525A JP2003317073A JP2003317073A JP2005086525A JP 2005086525 A JP2005086525 A JP 2005086525A JP 2003317073 A JP2003317073 A JP 2003317073A JP 2003317073 A JP2003317073 A JP 2003317073A JP 2005086525 A JP2005086525 A JP 2005086525A
Authority
JP
Japan
Prior art keywords
terminal
tcp
tcp communication
packet
module
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.)
Pending
Application number
JP2003317073A
Other languages
Japanese (ja)
Inventor
Hei Cho
兵 張
Nouri Shirazi Mahdad
シラジ マハダド ヌリ
Shinsuke Tanaka
信介 田中
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.)
ATR Advanced Telecommunications Research Institute International
National Institute of Information and Communications Technology
Original Assignee
ATR Advanced Telecommunications Research Institute International
National Institute of Information and Communications Technology
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 ATR Advanced Telecommunications Research Institute International, National Institute of Information and Communications Technology filed Critical ATR Advanced Telecommunications Research Institute International
Priority to JP2003317073A priority Critical patent/JP2005086525A/en
Publication of JP2005086525A publication Critical patent/JP2005086525A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a communication system for appropriately controlling TCP communication in accordance with link disconnection or new link connection in an ad hoc network for using a table drive type routing protocol to perform routing. <P>SOLUTION: When a terminal 1 starts TCP communication, a transmission destination address and a transmission source port number are registered in a socket information management table, when a terminal 3 detects link disconnection, Metric of path information of a routing table is updated to BIG and an Update packet including the updated path information is broadcasted, and when a terminal 2 and the terminal 1 receive the Update packet, the Metric is updated to BIG. When the Metric becomes the BIG, the terminal 1 acquires the transmission destination address of the path information, refers to the socket information management table and freezes TCP communication using a transmission source port number corresponding to the acquired transmission destination address. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、アドホックネットワークにおける通信方式に関し、特に、テーブル駆動型のルーティングプロトコルを用いてルーティングを行なうアドホックネットワークにおける通信方式に関する。   The present invention relates to a communication method in an ad hoc network, and more particularly to a communication method in an ad hoc network that performs routing using a table-driven routing protocol.

アドホックネットワークとは、複数の無線端末が相互に通信を行なうことによって自律的、即時的に構築されるネットワークをいう。アドホックネットワークでは、通信する2つの無線端末が互いの通信エリアに存在しない場合、2つの無線端末の中間に位置する無線端末がルータとして機能しデータパケットを中継するので、広範囲のマルチホップネットワークを形成することができる。   An ad hoc network is a network that is autonomously and instantaneously constructed by a plurality of wireless terminals communicating with each other. In an ad hoc network, when two wireless terminals that communicate with each other do not exist in each other's communication area, a wireless terminal located between the two wireless terminals functions as a router and relays data packets, thereby forming a wide-range multi-hop network. can do.

アドホックネットワークでは、中継する無線端末の移動などにより、リンクの切断が頻繁に生じる。そのため、迅速にルートを再構築することが必要となり、そのためのルーティングプロトコルが種々提案されている。   In an ad hoc network, link disconnection frequently occurs due to movement of a wireless terminal to be relayed. Therefore, it is necessary to quickly reconstruct the route, and various routing protocols have been proposed.

現在までに提案されているアドホックネットワークのルーティングプロトコルは、2つのグループに分けられる。   The routing protocols for ad hoc networks proposed to date can be divided into two groups.

第1のグループは、オンデマンド型のルーティングプロトコルである。このグループのルーティングプロトコルでは、通信要求が発生するたびに(オンデマンド)、宛先までのルートを探索する。代表的なプロトコルとして、Dynamic Source Routing(DSR)プロトコルがある。   The first group is an on-demand routing protocol. In this group of routing protocols, every time a communication request occurs (on demand), a route to the destination is searched. A typical protocol is the Dynamic Source Routing (DSR) protocol.

第2のグループは、テーブル駆動型のルーティングプロトコルである。このグループのルーティングプロトコルでは、各宛先へのルートを予めテーブルのエントリとして作成しておく。代表的なプロトコルとして、Destination-Sequenced-Distance-Vector(DSDV)プロトコルがある(たとえば、非特許文献1参照)。   The second group is a table driven routing protocol. In this group of routing protocols, a route to each destination is created in advance as a table entry. As a typical protocol, there is a Destination-Sequenced-Distance-Vector (DSDV) protocol (see, for example, Non-Patent Document 1).

ところで、有線ネットワーク上で運用されているアプリケーションの多くは、トランスポート層のプロトコルとしてTCPを用いている。したがって、アドホックネットワーク上でも既存のアプリケーションを動作させるためには、トランスポート層のプロトコルとしてTCPを用いることが必要となる。   By the way, many of the applications operated on the wired network use TCP as a transport layer protocol. Therefore, in order to operate an existing application even on an ad hoc network, it is necessary to use TCP as a transport layer protocol.

TCP通信では、コネクションを確立したTCP通信の端末の間のどこかでリンクが切断されていても、TCP通信が続行され、無駄なパケットの送信が行なわれるとともに、TCP通信のスループットが低下する。   In the TCP communication, even if the link is disconnected somewhere between the terminals of the TCP communication that established the connection, the TCP communication is continued, a useless packet is transmitted, and the throughput of the TCP communication is reduced.

この問題に対処する方法として、非特許文献2では、オンデマンド型ルーティングプロトコルであるDSRを対象に、リンクが切断されたときにTCP通信をフリーズし、新たにリンクが接続されたときにTCP通信のフリーズを解除するといったTCP通信の制御方式が記載されている。
C.E.Perkins and P.Bhagwat, "Destination sequenced distance-vector rooting (DSDV) for mobile computers", Proc.ACM/IEEE SIGCOM94, pp234-244,Aug.1994 G.Holland and N.H.Vaidya, "Analysis of TCP performance over middle ad hoc networks", Proc.ACM/IEEE MOBICOM'99, pp219-230, Aug.1999
As a method for dealing with this problem, in Non-Patent Document 2, for DSR which is an on-demand type routing protocol, TCP communication is frozen when a link is disconnected, and TCP communication is performed when a link is newly connected. A TCP communication control method for releasing the freeze is described.
CEPerkins and P. Bhagwat, "Destination sequenced distance-vector rooting (DSDV) for mobile computers", Proc. ACM / IEEE SIGCOM94, pp234-244, Aug. 1994 G. Holland and NHVaidya, "Analysis of TCP performance over middle ad hoc networks", Proc. ACM / IEEE MOBICOM'99, pp219-230, Aug.1999

しかしながら、上述の非特許文献2に記載されている方式は、オンデマンド型のルーティングプロトコルに特有の方式である。テーブル駆動型のルーティングテーブルには、このような方式を用いることができない。   However, the method described in Non-Patent Document 2 described above is a method specific to an on-demand type routing protocol. Such a method cannot be used for a table-driven routing table.

また、オンデマンド型のルーティングプロトコルでは、パケットの転送要求に応じてルートの探索を行なうため、パケットの転送開始が遅れるのに対して、テーブル駆動型のルーティングプロトコルでは、このような問題がない。また、テーブル駆動型のルーティングプロトコルでは、ネットワークのトポロジイの変化に反応してネットワーク全体に経路の更新情報が伝送される。   In the on-demand routing protocol, the route search is performed in response to a packet transfer request, so that the start of packet transfer is delayed, whereas the table-driven routing protocol does not have such a problem. In the table driven routing protocol, route update information is transmitted to the entire network in response to a change in the topology of the network.

したがって、パケットの転送が迅速に開始されるとともに、トポロジイのダイナミックな変化に迅速に対応できるという利点を有するテーブル駆動型のルーティングプロトコルにおいて、リンクが切断されたとき、または新たなリンクが接続されたときに、TCP通信を制御することが重要である。   Thus, in a table-driven routing protocol that has the advantage of being able to quickly start forwarding packets and respond quickly to dynamic changes in topology, when a link is broken or a new link is connected Sometimes it is important to control TCP communication.

それゆえに、本発明の目的は、テーブル駆動型のルーティングプロトコルを用いてルーティングを行なうアドホックネットワークにおいて、リンクの切断または新たなリンクの接続に応じて、TCP通信を適切に制御するアドホックネットワークにおける通信方式を提供することである。   SUMMARY OF THE INVENTION Therefore, an object of the present invention is to provide a communication system in an ad hoc network that appropriately controls TCP communication according to link disconnection or new link connection in an ad hoc network that performs routing using a table-driven routing protocol. Is to provide.

上記課題を解決するために、本発明は、テーブル駆動型のルーティングプロトコルを用いてルーティングを行なうアドホックネットワークにおける通信方式であって、TCP通信の送信元端末が、TCP通信のコネクションの確立時に、TCP通信の送信先端末のアドレス、送信元ポート番号、および送信先ポート番号を含むソケット情報をソケット情報管理テーブルに登録するステップと、各端末が、リンクの切断を検知したときに、自己の端末のルーティングテーブルの対応する経路情報のメトリックをリンク切断を示す値または記号に更新し、更新した経路情報を含むパケットをブロードキャスト送信するステップと、各端末が、更新された経路情報を含むパケットを受信したときに、自己の端末のルーティングテーブルの対応する経路情報のメトリックをリンク切断を示す値または記号に更新し、更新した経路情報を含むパケットをブロードキャスト送信するステップと、TCP通信の送信元端末が、自己の端末のルーティングテーブル内の経路情報のメトリックがリンク切断を示す値または記号となったときに、ルーティングテーブルから経路情報の送信先端末のアドレスを取得し、ソケット情報管理テーブルを参照して、取得した送信先端末のアドレスを含むソケット情報を特定し、特定したソケット情報に含まれる送信元ポート番号を用いたTCP通信をフリーズするステップとを含む。   In order to solve the above-described problems, the present invention is a communication method in an ad hoc network that performs routing using a table-driven routing protocol, in which a TCP communication source terminal establishes a TCP communication connection when a TCP communication connection is established. Registering the socket information including the address of the communication destination terminal, the source port number, and the destination port number in the socket information management table, and when each terminal detects link disconnection, The step of updating the corresponding route information metric in the routing table to a value or symbol indicating link disconnection, broadcasting a packet including the updated route information, and each terminal receiving the packet including the updated route information When the corresponding routing table of its own terminal The information metric is updated to a value or symbol indicating link disconnection, the packet including the updated route information is broadcasted, and the transmission source terminal of the TCP communication has the metric of the route information in the routing table of its own terminal When a link disconnection value or symbol is obtained, the address of the destination terminal of the route information is acquired from the routing table, and the socket information including the acquired address of the destination terminal is identified by referring to the socket information management table And freezing TCP communication using the source port number included in the specified socket information.

好ましくは、ソケット情報は、TCP通信の状態がフリーズか、通常の動作状態を示すアクションかを示すステイタスをさらに含み、ソケット情報を登録するステップでは、TCP通信の送信元端末が、送信先端末のアドレス、送信元ポート番号、および送信先ポート番号に加えて、アクションを示すステイタスをさらに含むソケット情報をソケット情報管理テーブルに登録し、TCP通信をフリーズするステップでは、TCP通信の送信元端末が、ソケット情報のステイタスがアクションのときに限り、ソケット情報の送信元ポート番号を用いたTCP通信をフリーズし、TCP通信の送信元端末が、TCP通信のフリーズ後に、ソケット情報のステイタスをフリーズに更新するステップをさらに含む。   Preferably, the socket information further includes a status indicating whether the state of the TCP communication is frozen or an action indicating a normal operation state. In the step of registering the socket information, the source terminal of the TCP communication In the step of registering the socket information further including the status indicating the action in addition to the address, the transmission source port number, and the transmission destination port number in the socket information management table, and freezing the TCP communication, the transmission communication terminal of the TCP communication Only when the status of the socket information is an action, the TCP communication using the source port number of the socket information is frozen, and the source terminal of the TCP communication updates the status of the socket information to freeze after the TCP communication is frozen. The method further includes a step.

より好ましくは、アドホックネットワークにおける通信方式は、さらに、各端末が、新たな経路を発見したときには、メトリックをホップ数とした新たな経路の経路情報でルーティングテーブルを更新し、更新した経路情報をブロードキャスト送信するステップと、TCP通信の送信元端末が、自己の端末のルーティングテーブル内の経路情報のメトリックがリンク切断を示す値または記号からホップ数に変化したときには、ルーティングテーブルから経路情報の送信先端末のアドレスを取得し、ソケット情報管理テーブルを参照して、取得した送信先端末のアドレスを含むソケット情報を特定し、特定したソケット情報のステイタスがフリーズのときに限り、特定したソケット情報の送信元ポート番号を用いたTCP通信のフリーズ状態を解除するステップと、TCP通信の送信元端末が、TCP通信のフリーズ状態の解除後に、ソケット情報のステイタスをアクションに更新するステップとを含む。   More preferably, in the communication method in the ad hoc network, when each terminal discovers a new route, the routing table is updated with the route information of the new route with the metric as the number of hops, and the updated route information is broadcast. The transmission step, and when the metric of the route information in the routing table of its own terminal changes from a value or symbol indicating link disconnection to the number of hops, the destination terminal of the route information from the routing table The socket information management table is referenced to identify the socket information including the address of the acquired destination terminal. The source of the identified socket information is only when the status of the identified socket information is frozen. Freeze state of TCP communication using port number A step of dividing, the source terminal of the TCP communication, after release of the freeze state of the TCP communication, and updating the status of the socket information to the action.

より好ましくは、テーブル駆動型のルーティングプロトコルは、DSDVプロトコルである。   More preferably, the table driven routing protocol is the DSDV protocol.

好ましくは、TCP通信の送信元端末が、TCP通信のコネクションの切断時に、TCP通信の送信先端末のアドレス、送信元ポート番号、および送信先ポート番号を含むソケット情報をソケット情報管理テーブルから削除するステップをさらに含む。   Preferably, when the TCP communication source terminal disconnects the TCP communication connection, the socket information including the address of the TCP communication destination terminal, the source port number, and the destination port number is deleted from the socket information management table. The method further includes a step.

また、本発明は、テーブル駆動型のルーティングプロトコルを用いてルーティングを行なうアドホックネットワークにおける通信方式であって、TCP通信の送信元端末のIPを実行処理するIPモジュールが、TCPを実行処理するTCPモジュールによるTCP通信のコネクションの確立時に、TCP通信の送信先端末のアドレス、送信元ポート番号、および送信先ポート番号とを含むソケット情報をインターネット層のソケット情報管理テーブルに登録するステップと、各端末のテーブル駆動型のルーティングプロトコルを実行処理するデーモンが、MACプロトコルを実行処理するMACモジュールから、転送されなかったパケットとともにリンクが切断された旨の通知を受けたときに、自己の端末のルーティングテーブルの対応する経路情報のメトリックをリンク切断を示す値または記号に更新し、更新した経路情報を含むパケットをUDPプロトコルを実行処理するUDPモジュールによってブロードキャスト送信させるステップと、各端末のデーモンが、更新された経路情報を含むパケットを受信したときに、自己の端末のルーティングテーブルの対応する経路情報のメトリックをリンク切断を示す値または記号に更新し、更新した経路情報を含むパケットをUDPモジュールによってブロードキャスト送信させるステップと、TCP通信の送信元端末のデーモンが、自己の端末のルーティングテーブル内の経路情報のメトリックを監視し、経路情報のメトリックがリンク切断を示す値または記号となったときに、ルーティングテーブルから経路情報の送信先端末のアドレスを取得し、ソケット情報管理テーブルを参照して、取得した送信先端末のアドレスを含むソケット情報を特定し、TCPモジュールに対して、特定したソケット情報に含まれる送信元ポート番号を用いたTCP通信をフリーズさせるステップとを含む。   The present invention is also a communication method in an ad hoc network that performs routing using a table-driven routing protocol, and an IP module that executes IP of a TCP communication source terminal executes TCP processing. Registering socket information including a TCP communication destination terminal address, a source port number, and a destination port number in the Internet layer socket information management table when establishing a TCP communication connection by When the daemon that executes the table-driven routing protocol receives a notification from the MAC module that executes the MAC protocol that the link has been disconnected together with the packet that has not been transferred, the routing table of its own terminal Corresponding A step of updating the routing information metric to a value or symbol indicating link disconnection, broadcasting a packet including the updated routing information by a UDP module executing the UDP protocol, and the daemon of each terminal updating the routing information Updating the corresponding route information metric in the routing table of its own terminal to a value or symbol indicating link disconnection when the packet including the route information is received, and broadcasting the packet including the updated route information by the UDP module; When the TCP communication source terminal daemon monitors the routing information metric in the routing table of its own terminal and the routing information metric becomes a value or symbol indicating link disconnection, the routing information from the routing table Of the destination device TCP address using the source port number included in the specified socket information is acquired for the TCP module by specifying the socket information including the address of the acquired destination terminal by acquiring the address and referring to the socket information management table Freezing the communication.

好ましくは、ソケット情報を登録するステップは、TCP通信の送信元端末のIPモジュールが、IPパケットを送信するときに、IPパケットからTCPヘッダを取得するステップと、TCP通信の送信元端末のIPモジュールが、TCPヘッダ内のCode BitにSYNが設定されているときには、さらに、IPパケットよりIPヘッダを取得するステップと、TCP通信の送信元端末のIPモジュールが、IPヘッダ内の送信元端末のアドレスが自端末のアドレスであるときには、取得したTCPヘッダから送信元ポート番号および送信先ポート番号を取得し、取得したIPヘッダから送信先端末のアドレスを取得し、取得した送信先端末のアドレス、送信元ポート番号、および送信先ポート番号をメモリに保持するステップと、TCP通信の送信元端末のIPモジュールが、コネクション確立処理中であることを示すフラグを所定の値に設定するステップと、TCP通信の送信元端末のIPモジュールが、フラグが所定の値に設定されているときに、IPパケットを受信したときには、IPパケットからTCPヘッダを取得するステップと、TCP通信の送信元端末のIPモジュールが、TCPヘッダ内のCode BitにSYN、またはACKが設定されているときには、さらに、IPパケットよりIPヘッダを取得するステップと、TCP通信の送信元端末のIPモジュールが、IPヘッダ内の送信先端末のアドレスが自端末のアドレスであるときには、メモリに保持されている送信先端末のアドレス、送信元ポート番号および送信先ポート番号とを含み、通常の動作状態を示すアクションをステイタスとして含むソケット情報をソケット情報管理テーブルに登録するステップを含む。   Preferably, the step of registering the socket information includes a step of obtaining a TCP header from the IP packet when the IP module of the TCP communication source terminal transmits the IP packet, and an IP module of the TCP communication source terminal. However, when SYN is set in the Code Bit in the TCP header, the step of acquiring the IP header from the IP packet, and the IP module of the source terminal of the TCP communication are the addresses of the source terminal in the IP header. Is the address of the own terminal, the source port number and the destination port number are acquired from the acquired TCP header, the address of the destination terminal is acquired from the acquired IP header, and the address and transmission of the acquired destination terminal are transmitted. Storing the source port number and the destination port number in memory; The step of setting a flag indicating that the IP module of the source terminal of CP communication is in the process of establishing a connection to a predetermined value, and the flag of the IP module of the source terminal of TCP communication are set to a predetermined value When the IP packet is received, the step of obtaining the TCP header from the IP packet and the IP module of the TCP communication transmission source terminal are set to SYN or ACK in the Code Bit in the TCP header. Sometimes, further, the step of obtaining the IP header from the IP packet and the IP module of the TCP communication source terminal are held in the memory when the address of the destination terminal in the IP header is the address of the own terminal Including the destination terminal address, source port number and destination port number. The socket information including an action indicating the work status as a status comprising the step of registering the socket information management table.

より好ましくは、アドホックネットワークにおける通信方式は、さらに、TCP通信の送信元端末のIPモジュールが、IPパケットを送信するときに、IPパケットからTCPヘッダを取得するステップと、TCP通信の送信元端末のIPモジュールが、TCPヘッダ内のCode BitにFINが設定されているときには、さらに、IPパケットよりIPヘッダを取得するステップと、TCP通信の送信元端末のIPモジュールが、IPヘッダ内の送信元端末のアドレスが自端末のアドレスであるときには、取得したTCPヘッダから送信元ポート番号および送信先ポート番号を取得し、取得したIPヘッダから送信先端末のアドレスを取得するステップと、TCP通信の送信元端末のIPモジュールが、取得した送信先端末のアドレス、送信元ポート番号、および送信先ポート番号を含むソケット情報をソケット情報管理テーブルから削除するステップとを含む。   More preferably, the communication method in the ad hoc network further includes a step of acquiring a TCP header from the IP packet when the IP module of the TCP communication source terminal transmits the IP packet, and the TCP communication source terminal When FIN is set in the Code Bit in the TCP header, the IP module further acquires the IP header from the IP packet, and the IP module of the TCP communication source terminal is connected to the source terminal in the IP header. A source port number and a destination port number are acquired from the acquired TCP header and the address of the destination terminal is acquired from the acquired IP header, and a TCP communication source The IP module of the terminal acquires the address of the acquired destination terminal. , Source port number, and the socket information including destination port number and a step of deleting from the socket information management table.

本発明によれば、テーブル駆動型のルーティングプロトコルを用いてルーティングを行なうアドホックネットワークにおいて、リンクの切断または新たなリンクの接続に応じて、TCP通信を適切に制御することができる。   According to the present invention, in an ad hoc network that performs routing using a table-driven routing protocol, TCP communication can be appropriately controlled according to link disconnection or new link connection.

以下、本発明の実施の形態について図面を用いて説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、アドホックネットワークの構成を示す。同図に示すように、複数の無線端末1〜7が自律的にネットワークを構成している。このアドホックネットワークにより、たとえば、無線端末3は、無線端末4から離れた位置にあり、直接パケットを受取ることができないので、無線端末4から送信されたパケットは、無線端末2、無線端末9、および無線端末6とによって中継されて無線端末3へ届けられる。   FIG. 1 shows the configuration of an ad hoc network. As shown in the figure, a plurality of wireless terminals 1 to 7 autonomously form a network. With this ad hoc network, for example, the wireless terminal 3 is located away from the wireless terminal 4 and cannot directly receive the packet. Therefore, the packet transmitted from the wireless terminal 4 is transmitted to the wireless terminal 2, the wireless terminal 9, and It is relayed by the wireless terminal 6 and delivered to the wireless terminal 3.

図2は、無線端末1の構成を示す。他の無線端末2〜9の構成も同一である。
図2を参照して、無線端末1は、入力部11と、表示部12と、アンテナ25と、電子メールアプリケーション13と、通信制御部14とを備える。
FIG. 2 shows the configuration of the wireless terminal 1. The configurations of the other wireless terminals 2 to 9 are the same.
With reference to FIG. 2, the wireless terminal 1 includes an input unit 11, a display unit 12, an antenna 25, an e-mail application 13, and a communication control unit 14.

電子メールアプリケーション13は、いわゆるメイラであって、入力部11からのメッセージ、宛先などの入力に基づき、データを作成し、通信制御部14にデータを送る。また、電子メールアプリケーション13は、通信制御部14から受けたデータに基づきメッセージを表示部12に表示させる。   The e-mail application 13 is a so-called mailer, which creates data based on input of a message, a destination, and the like from the input unit 11 and sends the data to the communication control unit 14. Further, the e-mail application 13 causes the display unit 12 to display a message based on the data received from the communication control unit 14.

アンテナ25は、他の無線端末から無線信号を受信するとともに、他の無線端末へ無線信号を送信する。   The antenna 25 receives radio signals from other radio terminals and transmits radio signals to other radio terminals.

通信制御部14は、ARPA(Advanced Research Projects Agency)インターネット階層構造に従って、通信制御を行なう複数のモジュールを備える。   The communication control unit 14 includes a plurality of modules that perform communication control according to an ARPA (Advanced Research Projects Agency) Internet hierarchical structure.

物理層の無線インタフェースモジュール24は、所定の規定にしたがって、送信信号または受信信号の変復調、および周波数変換などを行なう。   The radio interface module 24 in the physical layer performs modulation / demodulation of transmission signals or reception signals, frequency conversion, and the like according to a predetermined rule.

ネットワーク層の上位層のLLCモジュール22は、LLCプロトコルの実行処理部であり、隣接する無線端末との間でリンクの接続および解放を行なう。   The LLC module 22 in the upper layer of the network layer is an execution processing unit of the LLC protocol, and connects and releases a link with an adjacent wireless terminal.

ネットワーク層の下位層のMACモジュール23は、MACプロトコルの実行処理部であり、再送制御などを行なう。MACモジュール23は、パケットの再送回数が所定値を越えたことによってリンクが切断されたことを検知して、DSDVデーモン16にリンク切断されたこと、および再送されなかったIPパケットを通知する。   The MAC module 23 in the lower layer of the network layer is a MAC protocol execution processing unit, and performs retransmission control and the like. The MAC module 23 detects that the link has been disconnected because the number of packet retransmissions exceeds a predetermined value, and notifies the DSDV daemon 16 of the link disconnection and the IP packet that has not been retransmitted.

インターネット層のIPモジュール19は、IP(Internet Protocol)の実行処理部である。IPモジュール19は、IPパケットを生成する。IPパケットは、IPヘッダと、上位のプロトコルのパケットを格納するためのIPデータ部とからなる。   The IP module 19 in the Internet layer is an execution processing unit for IP (Internet Protocol). The IP module 19 generates an IP packet. The IP packet includes an IP header and an IP data portion for storing a packet of a higher protocol.

図3は、IPヘッダの構成を示す。同図に示すIPヘッダ内の送信先アドレスおよび送信元アドレスは、ソケット情報管理テーブル20内のソケット情報の作成のために用いられる。   FIG. 3 shows the configuration of the IP header. The destination address and the source address in the IP header shown in the figure are used for creating socket information in the socket information management table 20.

トランスポート層のTCPモジュール17は、TCP(Transmission Control Protocol)の実行処理部である。TCPモジュール17は、TCPパケットを生成する。TCPパケットは、TCPヘッダと、上位のプロトコルのデータを格納するためのTCPデータ部とからなる。このTCPパケットは、IPモジュール19に渡されて、IPパケット内のIPデータ部に格納される。   The TCP module 17 in the transport layer is a TCP (Transmission Control Protocol) execution processing unit. The TCP module 17 generates a TCP packet. The TCP packet is composed of a TCP header and a TCP data part for storing data of an upper protocol. This TCP packet is transferred to the IP module 19 and stored in the IP data portion in the IP packet.

図4は、TCPヘッダの構成を示す。同図に示すTCPヘッダ内の送信元ポート番号とは、送信元の無線端末で複数のアプリケーションが動作しているときに、このTCPパケットを出力したアプリケーションを特定する番号である。また、送信先ポート番号とは、送信先の無線端末で複数のアプリケーションが動作しているときに、このTCPパケットを届けるアプリケーションを特定する番号である。これらの送信元ポート番号および送信先ポート番号は、ソケット情報管理テ−ブル20内のソケット情報の作成のために用いられる。   FIG. 4 shows the structure of the TCP header. The source port number in the TCP header shown in the figure is a number that identifies the application that has output this TCP packet when a plurality of applications are operating on the source wireless terminal. The transmission destination port number is a number that identifies an application that delivers this TCP packet when a plurality of applications are operating on the wireless terminal of the transmission destination. These source port number and destination port number are used for creating socket information in the socket information management table 20.

TCP通信は、エンド・ツー・エンドのコネクション型通信プロトコルであるる。TCP通信のコネクション接続を要求する端末(以下、TCP通信接続要求端末)のTCPモジュール17は、コネクションの確立時に、TCPヘッダ内のCode BitにSYN(Synchronize Flag)を設定したコネクションの接続要求を示す第1パケットをTCP通信のコネクション接続を受理する端末(以下、TCP通信接続受理端末)のTCPモジュール17へ送信する。これを受けて、TCP通信接続受理端末)のTCPモジュール17は、TCPヘッダ内のCode BitにSYN(Synchronize Flag)およびACK(確認応答)を設定したコネクションの接続要求受理および接続完了を示す第2パケットをTCP通信接続要求端末のTCPモジュール17へ送信する。さらに、これを受けて、TCP通信接続要求端末のTCPモジュール17は、TCPヘッダ内のCode BitをACK(確認応答)に設定したコネクションの接続完了を示す第3パケットをTCP通信接続受理端末のTCPモジュール17へ送信する。   TCP communication is an end-to-end connection-oriented communication protocol. The TCP module 17 of a terminal requesting connection connection of TCP communication (hereinafter referred to as a TCP communication connection request terminal) indicates a connection request for connection in which SYN (Synchronize Flag) is set in the Code Bit in the TCP header when the connection is established. The first packet is transmitted to the TCP module 17 of a terminal that accepts a connection connection for TCP communication (hereinafter, a TCP communication connection acceptance terminal). In response, the TCP module 17 of the TCP communication connection accepting terminal) receives the connection request acceptance and connection completion of the connection in which SYN (Synchronize Flag) and ACK (confirmation response) are set in the Code Bit in the TCP header. The packet is transmitted to the TCP module 17 of the TCP communication connection requesting terminal. Further, in response to this, the TCP module 17 of the TCP communication connection requesting terminal sends a third packet indicating the connection completion of the connection in which the Code Bit in the TCP header is set to ACK (acknowledgment response) to the TCP of the TCP communication connection receiving terminal. Transmit to module 17.

TCP通信接続要求端末がTCP通信の送信元端末(すなわち、データを送信し、そのデータに対するACKを受信する側の端末)のときには、TCPモジュール17による第1パケットの送信がIPモジュール19に検知され、かつTCPモジュール17による第2パケットの受信がIPモジュール19に検知されることによって、TCP通信接続要求端末にソケット情報が作成される。   When the TCP communication connection requesting terminal is a TCP communication source terminal (that is, a terminal that transmits data and receives an ACK for the data), the IP module 19 detects the transmission of the first packet by the TCP module 17. When the IP module 19 detects the reception of the second packet by the TCP module 17, socket information is created in the TCP communication connection request terminal.

また、TCP通信接続受理端末がTCP通信の送信元端末のときには、TCPモジュール17による第2パケットの送信がIPモジュール19に検知され、かつTCPモジュール17による第3パケットの受信がIPモジュール19に検知されることによって、TCP通信接続受理端末にソケット情報が作成される。   When the TCP communication connection receiving terminal is a TCP communication source terminal, the IP module 19 detects the transmission of the second packet by the TCP module 17 and the IP module 19 detects the reception of the third packet by the TCP module 17. As a result, socket information is created in the TCP communication connection receiving terminal.

コネクションの切断要求は、TCP通信要求端末およびTCP通信受理端末のいずれの側からでも行なうことができる。TCP通信のコネクション切断を要求する端末(以下、TCP通信切断要求端末)のTCPモジュール17は、コネクションの切断時に、TCPヘッダ内のCode BitをFIN(Finish Flag)に設定したコネクションの切断要求を示す第1パケットをTCP通信のコネクション切断を受理する端末(以下、TCP通信切断受理端末)へ送信する。これを受けて、TCP通信切断受理端末のTCPモジュール17は、TCPヘッダ内のCode BitをACK(確認応答)に設定したコネクションの切断要求受理を示す第2パケットと、TCPヘッダ内のCode BitをFIN(Finish Flag)に設定したコネクションの切断完了を示す第3パケットをTCP通信切断要求端末のTCPモジュール17へ送信する。さらに、これを受けて、TCP通信切断要求端末のTCPモジュール17は、TCPヘッダ内のCode BitをACK(確認応答)に設定したコネクションの切断完了を示す第4パケットをTCP通信切断受理端末のTCPモジュール17へ送信する。   The connection disconnection request can be made from either the TCP communication requesting terminal or the TCP communication receiving terminal. The TCP module 17 of a terminal requesting disconnection of TCP communication (hereinafter referred to as a TCP communication disconnection request terminal) indicates a disconnection request for a connection in which the Code Bit in the TCP header is set to FIN (Finish Flag) when the connection is disconnected. The first packet is transmitted to a terminal that accepts a disconnection of TCP communication (hereinafter, a TCP communication disconnection acceptance terminal). In response to this, the TCP module 17 of the TCP communication disconnection receiving terminal sets the second packet indicating acceptance of the disconnection request for the connection in which the Code Bit in the TCP header is set to ACK (acknowledgment response), and the Code Bit in the TCP header. A third packet indicating completion of disconnection of the connection set in FIN (Finish Flag) is transmitted to the TCP module 17 of the TCP communication disconnection request terminal. In response to this, the TCP module 17 of the TCP communication disconnection requesting terminal sends a fourth packet indicating the completion of disconnection of the connection in which the Code Bit in the TCP header is set to ACK (acknowledgment response) to the TCP communication disconnection receiving terminal TCP Transmit to module 17.

TCP通信切断要求端末がTCP通信の送信元端末のときには、TCPモジュール17による第1パケットの送信がIPモジュール19に検知されることによって、TCP通信切断要求端末のソケット情報が削除される。   When the TCP communication disconnection requesting terminal is a TCP communication transmission source terminal, the transmission of the first packet by the TCP module 17 is detected by the IP module 19, whereby the socket information of the TCP communication disconnection requesting terminal is deleted.

また、TCP通信切断受理端末がTCP通信の送信元端末のときには、TCPモジュール17による第3パケットの送信がIPモジュール19に検知されることによって、TCP通信切断受理端末のソケット情報が削除される。   When the TCP communication disconnection receiving terminal is a TCP communication source terminal, the socket information of the TCP communication disconnection receiving terminal is deleted when the IP module 19 detects the transmission of the third packet by the TCP module 17.

TCPモジュール17は、DSDVデーモン16から送信元ポート番号とともに、TCP通信をフリーズする指示を受けると後述するTCP通信フリーズ処理を実行する。   When the TCP module 17 receives an instruction to freeze the TCP communication together with the transmission source port number from the DSDV daemon 16, the TCP module 17 executes a TCP communication freeze process to be described later.

また、TCPモジュール17は、DSDVデーモン16から、送信元ポート番号とともに、TCP通信のフリーズを解除する指示を受けると、後述するTCP通信フリーズ解除処理を実行する。   When the TCP module 17 receives an instruction to release the freeze of TCP communication from the DSDV daemon 16 together with the transmission source port number, the TCP module freeze release process described later is executed.

トランスポート層のUDPモジュール18は、UDP(User Datagram Protocol)の実行処理部である。UDPモジュール18は、DSDVデーモン16で作成されたUpdateパケットをブロードキャスト送信し、他の無線端末からブロードキャスト送信されたUpdateパケットを受信して、DSDVデーモン16に渡す。   The UDP module 18 in the transport layer is a UDP (User Datagram Protocol) execution processing unit. The UDP module 18 broadcasts an Update packet created by the DSDV daemon 16, receives an Update packet broadcast from another wireless terminal, and passes it to the DSDV daemon 16.

プロセス/アプリケーション層のSMTPモジュール15は、SMTP(Simple Mail Transfer Protocol)の実行処理部である。SMTPモジュール15は、電子メールアプリケーション13から受取ったデータに基づき、全二重通信チャネルの確保や、メッセージの交換などを行なう。   The process / application layer SMTP module 15 is an execution processing unit of SMTP (Simple Mail Transfer Protocol). The SMTP module 15 secures a full-duplex communication channel and exchanges messages based on the data received from the e-mail application 13.

プロセス/アプリケーション層のDSDVデーモン16は、他の通信制御モジュールの実行状態を監視するとともに、他の通信制御モジュールからのリクエストを処理する。つまり、DSDVデーモン16は、テーブル駆動型ルーティングプロトコルであるDSDVプロトコルの実行処理部であるとともに、本実施の形態特有の処理を行なう。   The process / application layer DSDV daemon 16 monitors the execution status of other communication control modules and processes requests from other communication control modules. That is, the DSDV daemon 16 is an execution processing unit for the DSDV protocol that is a table-driven routing protocol, and performs processing unique to the present embodiment.

以下、本発明の実施形態の特徴的な処理である、以下の(1)〜(6)の処理について説明する。(1) アドホックネットワークのルーティング、(2) リンク切断の検知および通知、(3)ソケット情報の登録、(4) TCP通信フリーズの移行制御、(5) TCP通信フリーズの解除制御、(6)ソケット情報の削除。これらのうち、(1)および(2)は、従来のDSDVデーモンでも行なわれている処理であり、(3)および(6)は、本実施の形態のIPモジュール19の特有の処理であり、(4)および(5)は、本実施の形態のDSDVデーモン16の特有の処理である。   Hereinafter, the following processes (1) to (6), which are characteristic processes of the embodiment of the present invention, will be described. (1) Ad hoc network routing, (2) Link disconnection detection and notification, (3) Registration of socket information, (4) TCP communication freeze transition control, (5) TCP communication freeze release control, (6) Socket Delete information. Among these, (1) and (2) are processes performed in the conventional DSDV daemon, and (3) and (6) are processes unique to the IP module 19 of the present embodiment. (4) and (5) are specific processes of the DSDV daemon 16 of this embodiment.

以下、(1)〜(6)の処理内容について説明する。   Hereinafter, the processing contents of (1) to (6) will be described.

(1) アドホックネットワークのルーティング
DSDVデーモン16は、定期的に経路情報を交換しあって、取得した経路情報に基づいて最適な経路を算出して、インターネット層にルーティングテーブル21を動的に作成する。
(1) Routing of ad hoc network The DSDV daemon 16 periodically exchanges route information, calculates the optimum route based on the obtained route information, and dynamically creates the routing table 21 in the Internet layer. .

図5は、ルーティングテーブル21の例を示す。同図を参照して、このルーティングテーブル21の各エントリである経路情報は、送信先アドレスと、NextHopアドレスと、Metricと、SeqNumとからなる。   FIG. 5 shows an example of the routing table 21. Referring to the figure, the route information which is each entry of this routing table 21 includes a transmission destination address, a NextHop address, a Metric, and a SeqNum.

送信先アドレスは、送信先端末のIPアドレスを示す。NextHopアドレスは、次のホップ端末のIPアドレスを示す。Metricが所定値BIGのときには、この経路情報による経路(リンク)が切断されていることを表わす。Metricが所定値BIG以外のときは、送信先端末までのホップ数を示す。ここで、所定値BIGは、送信先端末までのホップ数を表わすための数値となることがありなえないような、十分に大きな値とする。SeqNum(Sequence Number)とは、この経路情報が生成された順番を示す。   The transmission destination address indicates the IP address of the transmission destination terminal. The NextHop address indicates the IP address of the next hop terminal. When Metric is a predetermined value BIG, it indicates that the route (link) based on this route information is disconnected. When Metric is other than the predetermined value BIG, it indicates the number of hops to the destination terminal. Here, the predetermined value BIG is a sufficiently large value that cannot be a numerical value for representing the number of hops to the destination terminal. SeqNum (Sequence Number) indicates the order in which the route information is generated.

図5に示すルーティングテーブルの例では、第1の経路は、送信元端末を無線端末1とし、送信先端末を無線端末3とする経路であり、無線端末1が送信したパケットを最初に中継する端末が無線端末2であり、無線端末1が送信したパケットは、(Metricが4より)3つの中継端末を経由して無線端末3に届くことを示している。   In the example of the routing table shown in FIG. 5, the first route is a route in which the transmission source terminal is the wireless terminal 1 and the transmission destination terminal is the wireless terminal 3, and the packet transmitted by the wireless terminal 1 is relayed first. This indicates that the terminal is the wireless terminal 2 and the packet transmitted by the wireless terminal 1 reaches the wireless terminal 3 via three relay terminals (from Metric 4).

また、第2の経路は、送信元端末を無線端末1とし、送信先端末を無線端末7とする経路であり、無線端末1が送信したパケットを最初に中継する端末が無線端末5であり、無線端末1が送信したパケットは、(Metricが3より)2つの中継端末を経由して無線端末7に届くことを示している。   The second route is a route in which the transmission source terminal is the wireless terminal 1 and the transmission destination terminal is the wireless terminal 7, and the terminal that relays the packet transmitted by the wireless terminal 1 first is the wireless terminal 5. The packet transmitted by the wireless terminal 1 is transmitted to the wireless terminal 7 via two relay terminals (from Metric 3).

また、第3の経路は、送信元端末を無線端末1とし、送信先端末を無線端末4とする経路であり、無線端末1が送信したパケットを最初に中継する端末が無線端末2であり、無線端末1が送信したパケットは、(Metricが2より)1つの中継端末(つまり、無線端末2)を経由して無線端末4に届くことを示している。   The third route is a route in which the transmission source terminal is the wireless terminal 1 and the transmission destination terminal is the wireless terminal 4, and the terminal that first relays the packet transmitted by the wireless terminal 1 is the wireless terminal 2, The packet transmitted by the wireless terminal 1 (from Metric 2) indicates that it reaches the wireless terminal 4 via one relay terminal (that is, the wireless terminal 2).

DSDVデーモン16は、次のようにして定期的な経路の探索処理を行なう。まず、DSDVデーモン16は、自己の経路情報のSeqNumをインクリメントする。これによって、この経路情報は、他の無線端末が持つルーティングテーブル21内の経路情報よりも新しいことを表わす。DSDVデーモン16は、Updateパケットに最新のルーティングテーブル21内の経路情報のすべてを登録して、UpdateパケットをUDPモジュール18によってブロードキャスト送信する。   The DSDV daemon 16 performs a periodic route search process as follows. First, the DSDV daemon 16 increments SeqNum of its route information. As a result, this route information indicates that it is newer than the route information in the routing table 21 possessed by other wireless terminals. The DSDV daemon 16 registers all the route information in the latest routing table 21 in the Update packet, and broadcasts the Update packet by the UDP module 18.

他の無線端末のDSDVデーモン16は、このUpdateパケットを受信すると、このUpdateパケット内の経路情報に基づき、自己の無線端末のルーティングテーブル21内の経路情報を更新するとともに、必要に応じて、自己の無線端末のルーティングテーブル21内の経路情報をすべて登録したUpdateパケットをUDPモジュール18によってブロードキャスト送信する。   When the DSDV daemon 16 of another wireless terminal receives this Update packet, it updates the route information in the routing table 21 of its own wireless terminal based on the route information in this Update packet, and if necessary, The UDP module 18 broadcasts an Update packet in which all the route information in the routing table 21 of the wireless terminal is registered.

また、DSDVデーモン16は、次のようにしてIPパケットの転送処理を行なう。DSDVデーモン16は、ルーティングテーブル20を参照して、生成したIPパケットまたは他の無線端末から受取ったIPパケットの送信先アドレスと同一の送信先アドレスの経路情報を特定し、下位のモジュールに対して、その経路情報のNextHopアドレスで特定される無線端末へIPパケットを送信させる。   The DSDV daemon 16 performs IP packet transfer processing as follows. The DSDV daemon 16 refers to the routing table 20 and identifies the route information of the same destination address as the destination address of the generated IP packet or the IP packet received from another wireless terminal. The IP packet is transmitted to the wireless terminal specified by the NextHop address of the route information.

(2) リンク切断の検知および通知
DSDVデーモン16は、MACモジュール23からリンクが切断された旨の通知を受けたとき、または他の無線端末からリンクが切断された旨の通知を受けたときには、上述の定期的な探索処理によらずに、自己の無線端末のルーティングテーブル21を更新するとともに、即座にUDPモジュール18によりUpdateパケットをブロードキャスト送信させて、リンクが切断したことを他の無線端末へ通知する。
(2) Detection and notification of link disconnection When the DSDV daemon 16 receives a notification from the MAC module 23 that the link has been disconnected or from another wireless terminal that has received a notification that the link has been disconnected, Regardless of the periodic search process described above, the routing table 21 of the wireless terminal itself is updated, and the UDP packet is immediately broadcast by the UDP module 18 to notify other wireless terminals that the link has been disconnected. Notice.

図6に示すフローチャートを用いて、DSDVデーモン16によるリンク切断の検知および通知処理の手順を説明する。   With reference to the flowchart shown in FIG. 6, the procedure of link disconnection detection and notification processing by the DSDV daemon 16 will be described.

いずれかの無線端末のMACモジュール23が、キャリアセンスによって、パケットの再送回数が所定回数を越えたことを検知することによって、リンクが切断されていることを検知して、リンクが切断されたこと、および転送されなかったIPパケットをDSDVデーモン16に通知する(S101)。   The MAC module 23 of any wireless terminal detects that the link has been disconnected by detecting that the number of retransmissions of the packet has exceeded a predetermined number by carrier sense, and the link has been disconnected. The DSDV daemon 16 is notified of the IP packet that has not been transferred (S101).

DSDVデーモン16は、転送されなかったパケットのIPヘッダの送信先アドレスがルーティングテーブル21内に存在するか否かを調べ、存在している場合には、ルーティングテーブル21内のその送信先アドレスが含まれる経路情報のMetricをBIGに更新する(S102,S103)。   The DSDV daemon 16 checks whether or not the destination address of the IP header of the packet that has not been transferred exists in the routing table 21, and if it exists, the destination address in the routing table 21 is included. The route information is updated to BIG (S102, S103).

DSDVデーモン16は、変更した経路情報を含むUpdateパケットを作成して、そのUpdateパケットをUDPモジュール18に送り、ブロードキャスト送信させる(S104)。   The DSDV daemon 16 creates an Update packet including the changed route information, and sends the Update packet to the UDP module 18 for broadcast transmission (S104).

他の無線端末のDSDVデーモン16は、UDPモジュール18が受信したUpdateパケットを受取る(S105)。   The DSDV daemon 16 of another wireless terminal receives the Update packet received by the UDP module 18 (S105).

DSDVデーモン16は、Updateパケットに含まれる経路情報の送信先アドレスがルーティングテーブル21内に存在し、かつそのMetricがBIGでない場合には、ルーティングテーブル21内のその送信先アドレスが含まれる経路情報のMetricをBIGに更新する(S106,S107)。   If the destination address of the route information included in the Update packet exists in the routing table 21 and the metric is not BIG, the DSDV daemon 16 indicates that the destination information of the route information including the destination address in the routing table 21 is included. The Metric is updated to BIG (S106, S107).

DSDVデーモン16は、変更した経路情報を含むUpdateパケットを作成して、そのUpdateパケットをUDPモジュール18に送り、ブロードキャスト送信させる(S108)。   The DSDV daemon 16 creates an Update packet including the changed route information, and sends the Update packet to the UDP module 18 for broadcast transmission (S108).

上述のS105〜S108の処理は、S106においてUpdateパケットに含まれる経路情報の送信先アドレスがルーティングテーブル21内に存在しないと判定されるか、または存在してもそのMetricがBIGと判定されるまで、繰り返される。   The processes of S105 to S108 described above are performed until it is determined in S106 that the destination address of the route information included in the Update packet does not exist in the routing table 21, or even if it exists, the Metric is determined to be BIG. ,Repeated.

(3) ソケット情報の登録
TCP通信接続要求端末およびTCP通信接続受理端末のIPモジュール19は、アプリケーション13から自端末が、TCP通信においてデータを送信し、そのデータに対するACKを受信する側の端末(以下、TCP通信の送信元端末という)であるとの通知を受けたときには、TCP通信のコネクションの確立時に、図2に示すTCPヘッダと、図3に示すIPヘッダとに基づいて、そのTCP通信に関するソケット情報をインターネット層のソケット情報管理テーブル20に登録する。
(3) Registration of Socket Information The IP module 19 of the TCP communication connection requesting terminal and the TCP communication connection receiving terminal transmits a terminal in TCP communication from the application 13 and receives a ACK for the data (terminal on the side ( (Hereinafter referred to as a TCP communication source terminal), the TCP communication is established based on the TCP header shown in FIG. 2 and the IP header shown in FIG. Is registered in the socket information management table 20 of the Internet layer.

図7は、TCP通信の送信元端末が無線端末1のときのソケット情報管理テーブル20の例を示す。同図を参照して、ソケット情報管理テーブル20内の各エントリであるソケット情報は、送信先アドレスと、送信元ポート番号と、送信先ポート番号と、ステイタスとからなる。   FIG. 7 shows an example of the socket information management table 20 when the TCP communication source terminal is the wireless terminal 1. Referring to the figure, socket information which is each entry in socket information management table 20 includes a transmission destination address, a transmission source port number, a transmission destination port number, and a status.

ここで、送信先アドレスとは、送信先端末のIPアドレスを示す。送信元ポート番号とは、送信元の無線端末(すなわち、自端末)で複数のアプリケーションが動作しているときに、TCPパケットを出力したアプリケーションを特定する番号である。また、送信先ポート番号とは、送信先の無線端末で複数のアプリケーションが動作しているときに、TCPパケットを届けるアプリケーションを特定する番号である。ステイタスは、ACTIONとFREEZEの2つの状態をとる。ステイタスがACTIONとは、TCP通信が通常に行なわれていることを示し、ステイタスがFREEZEとは、TCP通信がフリーズしていることを示す。   Here, the transmission destination address indicates the IP address of the transmission destination terminal. The transmission source port number is a number that identifies an application that has output a TCP packet when a plurality of applications are operating on the transmission source wireless terminal (that is, the own terminal). The transmission destination port number is a number that identifies an application that delivers a TCP packet when a plurality of applications are operating on the wireless terminal of the transmission destination. The status takes two states, ACTION and FREEZE. A status of ACTION indicates that TCP communication is normally performed, and a status of FREEZE indicates that the TCP communication is frozen.

このソケット情報管理テーブル20の例では、無線端末1のポート1と、無線端末3のポート2との間で、TCP通信が行なわれており、通常に動作中(ACTION)であることを示している。また、無線端末1のポート2と、無線端末7のポート1との間で、TCP通信が行なわれ、通常に動作中(ACTION)であることを示している。   The example of the socket information management table 20 indicates that TCP communication is being performed between the port 1 of the wireless terminal 1 and the port 2 of the wireless terminal 3 and is normally operating (ACTION). Yes. Further, TCP communication is performed between the port 2 of the wireless terminal 1 and the port 1 of the wireless terminal 7, indicating that it is normally operating (ACTION).

TCP通信の送信元端末のIPモジュール19は、2段階の手続きによりソケット情報の登録を行なう。すなわち、TCP通信の送信元端末のIPモジュール19は、IPパケットの送信時にソケット情報の抽出処理を行ない、その後、IPパケットの受信時にソケット情報の登録処理を行なうことによって、ソケット情報の登録を行なう。   The IP module 19 of the TCP communication source terminal registers the socket information by a two-step procedure. That is, the IP module 19 of the TCP communication source terminal performs socket information extraction processing when transmitting an IP packet, and then performs socket information registration processing when receiving an IP packet, thereby registering socket information. .

図8は、ソケット情報の抽出処理を示すフローチャートである。同図を参照して、TCP通信の送信元端末のIPモジュール19は、作成したIPパケットにTCPヘッダが含まれているときには、そのTCPヘッダを取得する(S201)。   FIG. 8 is a flowchart showing socket information extraction processing. With reference to the figure, when the TCP module is included in the created IP packet, the IP module 19 of the TCP communication transmission source terminal acquires the TCP header (S201).

TCP通信の送信元端末のIPモジュール19は、取得したTCPヘッダのCode BitにSYNが設定されているとき(すなわち、TCP接続要求端末が第1パケットを送信するとき)、あるいは取得したTCPヘッダのCode BitにSYNとACKが設定されているとき(すなわち、TCP接続受理端末が第2パケットを送信するとき)には、作成したIPパケットからIPヘッダを取得する(S202、S203)。   The IP module 19 of the transmission source terminal of the TCP communication, when SYN is set in the Code Bit of the acquired TCP header (that is, when the TCP connection requesting terminal transmits the first packet), or the acquired TCP header When SYN and ACK are set in the Code Bit (that is, when the TCP connection receiving terminal transmits the second packet), an IP header is acquired from the created IP packet (S202, S203).

そして、TCP通信の送信元端末のIPモジュール19は、取得したIPヘッダ内の送信元アドレスが自端末のアドレスと一致するときには、取得したTCPヘッダから送信元ポート番号と送信先ポート番号とを取得する(S204、S205)。   Then, the IP module 19 of the TCP communication source terminal acquires the source port number and the destination port number from the acquired TCP header when the source address in the acquired IP header matches the address of the own terminal. (S204, S205).

次に、TCP通信の送信元端末のIPモジュール19は、取得したIPヘッダより送信先アドレスを取得する(S206)。   Next, the IP module 19 of the TCP communication transmission source terminal acquires the transmission destination address from the acquired IP header (S206).

次に、TCP通信の送信元端末のIPモジュール19は、取得した送信先アドレス、送信元ポート番号、および送信先ポート番号(送信元情報、送信先情報)をメモリに保持する(S207)。   Next, the IP module 19 of the transmission source terminal of TCP communication holds the acquired transmission destination address, transmission source port number, and transmission destination port number (transmission source information, transmission destination information) in the memory (S207).

次に、TCP通信の送信元端末のIPモジュール19は、コネクション確立処理を行なっていることを表わすフラグSYNCを「1」に設定する。   Next, the IP module 19 of the TCP communication source terminal sets a flag SYNC indicating that connection establishment processing is being performed to “1”.

次に、IPモジュール19は、IPパケットを送信する(S209)。   Next, the IP module 19 transmits an IP packet (S209).

図9は、ソケット情報の登録処理を示すフローチャートである。同図を参照して、TCP通信の送信元端末のIPモジュール19は、SYNCフラグが「1」に設定されているときに、受信したIPパケットにTCPヘッダが含まれているときには、そのTCPヘッダを取得する(S601、S602)。   FIG. 9 is a flowchart showing socket information registration processing. With reference to the figure, when the SYNC flag is set to “1” and the received IP packet includes a TCP header, the IP module 19 of the TCP communication source terminal determines that TCP header. Is acquired (S601, S602).

次に、TCP通信の送信元端末のIPモジュール19は、取得したTCPヘッダのCode BitにSYNとACKが設定されているとき(すなわち、TCP接続要求端末が第2パケットを受信したとき)、あるいは取得したTCPヘッダのCode BitにACKが設定されているとき(すなわち、TCP接続受理端末が第3パケットを受信したとき)には、受信したIPパケットからIPヘッダを取得する(S603、S604)。   Next, the IP module 19 of the TCP communication transmission source terminal is set when SYN and ACK are set in the Code Bit of the acquired TCP header (that is, when the TCP connection requesting terminal receives the second packet), or When ACK is set in the Code Bit of the acquired TCP header (that is, when the TCP connection receiving terminal receives the third packet), the IP header is acquired from the received IP packet (S603, S604).

次に、TCP通信の送信元端末のIPモジュール19は、取得したIPヘッダ内の送信先アドレスが自端末のアドレスと一致するときに、メモリに送信先アドレス、送信元ポート番号、および送信先ポート番号(送信元情報、送信先情報)が保持されているときには、メモリからこれらを取出し、インターネット層にソケット情報管理テーブル20が未だ作成されていないときには新たにソケット情報管理テーブル20を作成してこのテーブルの1つのエントリに、またはソケット情報管理テーブル20が既に作成されているときにはこのテーブルの新たなエントリに、取出した送信先アドレス、送信元ポート番号、および送信先ポート番号と、ステイタス(ACTION)とからなるソケット情報を書込む(S606、S607)。   Next, when the transmission destination address in the acquired IP header matches the address of the own terminal, the IP module 19 of the transmission source terminal of TCP communication stores the transmission destination address, the transmission source port number, and the transmission destination port in the memory. When the numbers (source information, destination information) are held, they are taken out from the memory, and when the socket information management table 20 is not yet created in the Internet layer, a new socket information management table 20 is created In one entry of the table, or when the socket information management table 20 has already been created, the extracted transmission destination address, transmission source port number, transmission destination port number, and status (ACTION) are added to this table. Socket information consisting of the following is written (S606, S607).

次に、TCP通信の送信元端末のIPモジュール19は、ソケット情報管理テーブル20に書込んだ送信先アドレス、送信元ポート番号、および送信先ポート番号をメモリから削除し、SYNCフラグを「0」に設定する(S608、S609)。   Next, the IP module 19 of the TCP communication transmission source terminal deletes the transmission destination address, transmission source port number, and transmission destination port number written in the socket information management table 20 from the memory, and sets the SYNC flag to “0”. (S608, S609).

(4) TCP通信フリーズの移行制御
上述の(1)で説明したように、DSDVデーモン16は、リンクの切断の通知を受けると、リンクが切断された経路情報のMetricをBIGに更新される。DSDVデーモン16は、ルーティングテーブル21の経路情報のMetricの変化を監視し、経路情報のMetricがBIGに変化したときには、送信元ポート番号を指定したTCP通信フリーズの移行制御を行なう。
(4) TCP Communication Freeze Migration Control As described in (1) above, when the DSDV daemon 16 receives a link disconnection notification, it updates the metric of the path information about the link disconnection to BIG. The DSDV daemon 16 monitors the change in the metric of the route information in the routing table 21. When the metric of the route information changes to BIG, the DSDV daemon 16 performs a TCP communication freeze transition control specifying the transmission source port number.

ここで、TCP通信フリーズとは、TCPモジュール17による、指定された送信元ポート番号を用いたTCP通信の現在の状態を保持したまま、その実行を一時的に停止することをいう。具体的には、TCP通信フリーズ時には、新規パケットの送信を停止し、再送タイマを停止し、TCP通信フリーズ直前のウインドウサイズを保持し、および/または平均RTT(Round Trip Time)値の計算を行なわない。以下、これらについて説明する。   Here, the TCP communication freeze means that the execution is temporarily stopped while maintaining the current state of the TCP communication using the designated transmission source port number by the TCP module 17. Specifically, at the time of TCP communication freeze, the transmission of new packets is stopped, the retransmission timer is stopped, the window size immediately before the TCP communication freeze is held, and / or the average RTT (Round Trip Time) value is calculated. Absent. Hereinafter, these will be described.

TCP通信では、シーケンス番号を用いてパケットの通信を行なっている。送信側では、次に送信するパケットのシーケンス番号が送信可能な最大シーケンス番号以下のときに、そのパケットの送信を行なうことができる。   In TCP communication, packet communication is performed using a sequence number. On the transmission side, when the sequence number of the next packet to be transmitted is equal to or less than the maximum sequence number that can be transmitted, the packet can be transmitted.

したがって、TCP通信フリーズ時には、送信可能な最大シーケンス番号に、既に受信したシーケンス番号を設定することによって新規パケットの送信を停止する。また、その設定前の送信可能な最大シーケンス番号を別の領域に保持しておき、TCP通信のフリーズが解除されたときに、この保持しておいた送信可能な最大シーケンス番号を用いることによって、TCP通信フリーズの直前の状態にもどすことができ、TCP通信のスループットの低下を防止することができる。   Therefore, when the TCP communication is frozen, the transmission of a new packet is stopped by setting the already received sequence number as the maximum sequence number that can be transmitted. In addition, the maximum sequence number that can be transmitted before the setting is held in another area, and when the freeze of the TCP communication is canceled, by using this stored maximum sequence number that can be transmitted, It is possible to return to the state immediately before the TCP communication freeze, and to prevent a decrease in the throughput of the TCP communication.

TCP通信では、パケットの送信時に再送タイマをスタートさせ、タイムアウト値に達するまでに確認応答パケット(ACK)が返ってこないときには、パケットの再送を行なうが、このタイムアウト値は、平均RTT値の関数となる。平均RTT値は、パケットが送信されてから確認応答パケット(ACK)が返ってくるまでの時間であるRTT(Round Trip Time)値を計測し、その平均を算出することによって得られる。   In TCP communication, when a packet is transmitted, a retransmission timer is started. When an acknowledgment packet (ACK) is not returned by the time the timeout value is reached, the packet is retransmitted. This timeout value is a function of the average RTT value. Become. The average RTT value is obtained by measuring an RTT (Round Trip Time) value, which is a time from when a packet is transmitted until an acknowledgment packet (ACK) is returned, and calculating the average.

また、TCP通信では、スラインディングウインドウ方式により、パケットの送信量を制御している。ウインドウサイズとは、一度に送出するパケット数をいう。受信側で1つのパケットを受取るごとに、確認応答パケット(ACK)を送信する。送信側でこの確認応答パケット(ACK)を受信したときには、ウインドウをスライディングさせて、次のパケットを送信する。   In TCP communication, the amount of packet transmission is controlled by a sliding window method. The window size is the number of packets transmitted at a time. Each time one packet is received at the receiving side, an acknowledgment packet (ACK) is transmitted. When the transmission side receives this acknowledgment packet (ACK), it slides the window and transmits the next packet.

TCP通信では、スロースタートおよび輻輳回避のアルゴリズムによって、ウインドウサイズを調整している。スロースタートでは、送信側で、再送タイマがタイムアウト値に達するとウインドウサイズを1に減らし、その後指数関数的にウインドウサイズを増加させる。輻輳回避では、ウインドウサイズが、タイムアウト時の半分の大きさになると、ウインドウサイズを1個ずつ増加させる。   In TCP communication, the window size is adjusted by a slow start and congestion avoidance algorithm. In the slow start, when the retransmission timer reaches the timeout value, the transmission side decreases the window size to 1, and then increases the window size exponentially. In congestion avoidance, the window size is increased by one when the window size becomes half the size at the time of timeout.

したがって、TCP通信フリーズ時には、再送タイマを停止することによって、パケットの無駄な再送を防止することができる。   Therefore, when the TCP communication freezes, it is possible to prevent unnecessary retransmission of the packet by stopping the retransmission timer.

また、TCP通信フリーズの間にウインドウサイズがでたらめな値に更新され、TCP通信フリーズの解除後に、更新されたでたらめな値または初期値からウインドウサイズをスタートするとなると、TCP通信のスループットが低下する。したがって、TCP通信フリーズ時には、TCP通信フリーズ直前のウインドウサイズを保持し、TCP通信フリーズの解除後に、保持されているウインドウサイズに基いて最適なウインドウサイズを設定することによって、TCP通信のスループットの低下を防止することができる。   Further, if the window size is updated to a random value during the TCP communication freeze and the window size is started from the updated random value or the initial value after the release of the TCP communication freeze, the throughput of the TCP communication decreases. Therefore, at the time of TCP communication freeze, the window size immediately before the TCP communication freeze is retained, and after the TCP communication freeze is released, the optimum window size is set based on the retained window size, thereby reducing the TCP communication throughput. Can be prevented.

さらに、TCP通信フリーズ時には、平均RTT値の計算を行なわないことにより、RTT値の無駄な計測を防止することができる。   Furthermore, when the TCP communication freeze is performed, the calculation of the average RTT value is not performed, so that unnecessary measurement of the RTT value can be prevented.

図10に示すフローチャートを用いて、DSDVデーモン16によるTCP通信フリーズの移行制御処理の手順を説明する。   The procedure of the TCP communication freeze migration control process by the DSDV daemon 16 will be described with reference to the flowchart shown in FIG.

DSDVデーモン16は、ルーティングテーブル21にMetricの値を監視し、図11に示すようにルーティングテーブルのようにMetricがBIGとなる経路情報が発生したときには、ルーティングテーブル21からその経路情報の送信先アドレスを取得する(S301,S302)。   The DSDV daemon 16 monitors the value of Metric in the routing table 21, and when route information in which Metric is BIG occurs as shown in FIG. 11, the destination address of the route information from the routing table 21. Is acquired (S301, S302).

DSDVデーモン16は、インターネット層にソケット情報管理テーブル20が存在し、かつ、そのソケット情報管理テーブル20に取得した送信先アドレスと同一の送信先アドレスのソケット情報が存在するか否かを調べる(S303,S304)。   The DSDV daemon 16 checks whether or not the socket information management table 20 exists in the Internet layer and socket information of the same destination address as the acquired destination address exists in the socket information management table 20 (S303). , S304).

DSDVデーモン16は、そのようなソケット情報が存在するときには、そのソケット情報のステイタスがACTIONであるか否かを調べ、ACTIONであるときには、TCPモジュール17に対して、そのソケット情報に含まれる送信元ポート番号を用いたTCP通信のフリーズを指示する(S304,S305)。   When such socket information exists, the DSDV daemon 16 checks whether or not the status of the socket information is ACTION, and when it is ACTION, the DSDV daemon 16 sends to the TCP module 17 the transmission source included in the socket information. An instruction to freeze TCP communication using the port number is given (S304, S305).

さらに、DSDVデーモン16は、ルーティングテーブル21内のそのソケット情報のステイタスをFREEZEに更新する。これにより、図7のソケット情報管理テーブル20は、図12に示すようなソケット情報管理テーブル20に変更される(S306)。   Further, the DSDV daemon 16 updates the status of the socket information in the routing table 21 to FREEZE. Thereby, the socket information management table 20 of FIG. 7 is changed to the socket information management table 20 as shown in FIG. 12 (S306).

(5) TCP通信フリーズの解除制御
DSDVデーモン16による定期探索処理によって、TCP通信フリーズしているTCP通信の送信先端末への新たなルートが発見されたときには、ルーティングテーブル21のMetricは、BIGからBIG以外の値に更新される。DSDVデーモン16は、ルーティングテーブル21の経路情報のMetricの変化を監視し、MetricがBIGからBIG以外の値に変化したときには、TCP通信フリーズの解除制御を行なう。
(5) TCP communication freeze release control When a new route to the destination terminal of TCP communication frozen in the TCP communication is discovered by the periodic search processing by the DSDV daemon 16, the Metric of the routing table 21 is changed from BIG. Updated to a value other than BIG. The DSDV daemon 16 monitors the change in Metric of the route information in the routing table 21 and performs TCP communication freeze release control when Metric changes from BIG to a value other than BIG.

ここで、TCP通信フリーズの解除とは、TCPモジュール17による、指定された送信元ポート番号を用いたTCP通信のフリーズ状態を解除すること、具体的には、新規パケットの送信を再開し、再送タイマを動作させ、ウインドウサイズをTCP通信フリーズ直前の値からスタートさせ、および/または平均RTT値の計算を再開する(再開前のパケットはすべて計算の対象外とする)ことをいう。   Here, the release of the TCP communication freeze is to release the freeze state of the TCP communication using the designated transmission source port number by the TCP module 17, more specifically, the transmission of a new packet is resumed and retransmitted. It means that the timer is operated, the window size is started from the value immediately before the TCP communication freeze, and / or the calculation of the average RTT value is restarted (all the packets before the restart are excluded from the calculation).

図13に示すフローチャートを用いて、DSDVデーモン16によるTCP通信フリーズの解除制御処理の手順を説明する。   The procedure of the TCP communication freeze release control process by the DSDV daemon 16 will be described with reference to the flowchart shown in FIG.

DSDVデーモン16は、ルーティングテーブル21にMetricの値を監視し、図14に示すルーティングテーブルのようにMetricがBIGからBIG以外の値に変化した経路情報が発生したときには、ルーティングテーブル21からその経路情報の送信先アドレスを取得する(S401,S402)。   The DSDV daemon 16 monitors the value of Metric in the routing table 21, and when route information in which Metric has changed from BIG to a value other than BIG is generated as shown in the routing table of FIG. Is acquired (S401, S402).

DSDVデーモン16は、インターネット層にソケット情報管理テーブル20が存在し、かつ、そのソケット情報管理テーブル20に取得した送信先アドレスと同一の送信先アドレスのソケット情報が存在するか否かを調べる(S403,S404)。   The DSDV daemon 16 checks whether or not the socket information management table 20 exists in the Internet layer and socket information of the same destination address as the acquired destination address exists in the socket information management table 20 (S403). , S404).

DSDVデーモン16は、そのようなソケット情報が存在するときには、そのソケット情報のステイタスがFREEZEであるか否かを調べ、FREEZEであるときには、TCPモジュール17にそのソケット情報に含まれる送信元ポート番号とともにTCP通信フリーズの解除を指示する(S405,S406)。   When such socket information exists, the DSDV daemon 16 checks whether or not the status of the socket information is FREEZE. An instruction to cancel the TCP communication freeze is issued (S405, S406).

さらに、DSDVデーモン16は、ルーティングテーブル21内のそのソケット情報のステイタスをACTIONに更新する。これにより、図12のソケット情報管理テーブル20は、図7のソケット情報管理テーブル20にもどされる(S407)。   Furthermore, the DSDV daemon 16 updates the status of the socket information in the routing table 21 to ACTION. As a result, the socket information management table 20 in FIG. 12 is returned to the socket information management table 20 in FIG. 7 (S407).

(6) ソケット情報の削除
TCP通信の送信元端末のIPモジュール19は、TCP通信のコネクションの切断時に、図2に示すTCPヘッダと、図3に示すIPヘッダとに基づいて、そのTCP通信に関するソケット情報を、ソケット情報管理テーブル20から削除する。
(6) Deletion of socket information The IP module 19 of the source terminal of TCP communication relates to the TCP communication based on the TCP header shown in FIG. 2 and the IP header shown in FIG. 3 when the TCP communication connection is disconnected. The socket information is deleted from the socket information management table 20.

図15は、ソケット情報の削除処理を示すフローチャートである。同図を参照して、TCP通信の送信元端末のIPモジュール19は、作成したIPパケットにTCPヘッダが含まれているときには、そのTCPヘッダを取得する(S501)。   FIG. 15 is a flowchart showing socket information deletion processing. With reference to the figure, when the TCP module is included in the created IP packet, the IP module 19 of the TCP communication transmission source terminal acquires the TCP header (S501).

TCP通信の送信元端末のIPモジュール19は、取得したTCPヘッダのCode BitにFINが設定されているとき(すなわち、TCP切断要求端末が第1パケットを送信するとき、あるいはTCP通信切断受理端末が第3パケットを送信するとき)には、作成したIPパケットからIPヘッダを取得する(S502、S503)。   When the FIN is set in the Code Bit of the acquired TCP header (that is, when the TCP disconnection requesting terminal transmits the first packet, or the TCP communication disconnection receiving terminal When transmitting the third packet), an IP header is acquired from the created IP packet (S502, S503).

そして、TCP通信の送信元端末のIPモジュール19は、取得したIPヘッダ内の送信元アドレスが自端末のアドレスと一致するときには、取得したTCPヘッダから送信元ポート番号と送信先ポート番号とを取得する(S504、S505)。   Then, the IP module 19 of the TCP communication source terminal acquires the source port number and the destination port number from the acquired TCP header when the source address in the acquired IP header matches the address of the own terminal. (S504, S505).

次に、TCP通信の送信元端末のIPモジュール19は、取得したIPヘッダより送信先アドレスを取得する(S506)。   Next, the IP module 19 of the source terminal of TCP communication acquires the destination address from the acquired IP header (S506).

次に、TCP通信の送信元端末のIPモジュール19は、取得した送信先アドレス、送信元ポート番号、および送信先ポート番号を含むソケット情報がインターネット層のソケット情報管理テーブル20が登録されているときには、そのソケット情報を削除する(S507)。   Next, when the socket information including the acquired transmission destination address, transmission source port number, and transmission destination port number is registered in the socket information management table 20 of the Internet layer, the IP module 19 of the transmission source terminal of TCP communication is registered. The socket information is deleted (S507).

(アドホックネットワークによる通信動作の例)
次に、図16を参照して、アドホックネットワークによる通信動作の例を説明する。この例では、無線端末1がTCP通信の送信元端末であり、無線端末1がTCP通信接続要求端末で、無線端末4がTCP通信接続受理端末であるとする。
(Example of communication operation by ad hoc network)
Next, an example of a communication operation using an ad hoc network will be described with reference to FIG. In this example, it is assumed that the wireless terminal 1 is a TCP communication source terminal, the wireless terminal 1 is a TCP communication connection requesting terminal, and the wireless terminal 4 is a TCP communication connection accepting terminal.

無線端末1のTCPモジュール17と、無線端末4のTCPモジュール17とは、TCP通信を行なう。無線端末1のIPモジュール19は、TCPモジュール17によるTCP通信のコネクション確立時に、TCPヘッダおよびIPヘッダに基づいて、ソケット情報をインターネット層のソケット情報管理テーブル20に登録する。無線端末1のソケット情報は、図16に示すように、送信先アドレスが無線端末4のアドレスで、送信元ポート番号が1で、送信先ポート番号が2で、ステイタスがACTIONである。   The TCP module 17 of the wireless terminal 1 and the TCP module 17 of the wireless terminal 4 perform TCP communication. When the TCP module 17 establishes a TCP communication connection, the IP module 19 of the wireless terminal 1 registers socket information in the socket information management table 20 in the Internet layer based on the TCP header and the IP header. In the socket information of the wireless terminal 1, as shown in FIG. 16, the transmission destination address is the address of the wireless terminal 4, the transmission source port number is 1, the transmission destination port number is 2, and the status is ACTION.

無線端末1のルーティングテーブル21は、送信先アドレスが無線端末4のアドレスで、NextHopアドレスが無線端末2のアドレスで、Metricが3で、SeqNumが0である経路情報を有する。また、無線端末2のルーティングテーブル21は、送信先アドレスが無線端末4のアドレスで、NextHopアドレスが無線端末3のアドレスで、Metricが2で、SeqNumが0である経路情報を有する。また、無線端末3のルーティングテーブル21は、送信先アドレスが無線端末4のアドレスで、NextHopアドレスが無線端末4のアドレスで、Metricが1で、SeqNumが0である経路情報を有する。したがって、無線端末1から送信されたパケットは、無線端末2と無線端末3とを経由して無線端末4に届けられる。   The routing table 21 of the wireless terminal 1 has route information in which the transmission destination address is the address of the wireless terminal 4, the NextHop address is the address of the wireless terminal 2, the Metric is 3, and the SeqNum is 0. Further, the routing table 21 of the wireless terminal 2 has route information in which the transmission destination address is the address of the wireless terminal 4, the NextHop address is the address of the wireless terminal 3, the Metric is 2 and the SeqNum is 0. Further, the routing table 21 of the wireless terminal 3 has route information in which the transmission destination address is the address of the wireless terminal 4, the NextHop address is the address of the wireless terminal 4, Metric is 1 and SeqNum is 0. Therefore, the packet transmitted from the wireless terminal 1 is delivered to the wireless terminal 4 via the wireless terminal 2 and the wireless terminal 3.

無線端末3のMACモジュール23が、パケットの再送回数が所定回数を越えたときにリンクが切断されていることを検知して、リンクが切断されたこと、および転送されなかったIPパケットをDSDVデーモン16に通知する。無線端末3のDSDVデーモン16は、転送されなかったIPパケットのIPヘッダの送信先アドレスである無線端末4のアドレスがルーティングテーブル21内に存在しているので、ルーティングテーブル21内の送信先アドレスが無線端末4のアドレスである経路情報のMetricをBIGに更新する。無線端末3のDSDVデーモン16は、変更した経路情報を含むUpdateパケットを作成して、そのUpdateパケットをUDPモジュール18に送り、ブロードキャスト送信させる。   When the MAC module 23 of the wireless terminal 3 detects that the link is disconnected when the number of packet retransmissions exceeds a predetermined number, the DSDV daemon detects that the link has been disconnected and the IP packet that has not been transferred. 16 is notified. The DSDV daemon 16 of the wireless terminal 3 has the address of the wireless terminal 4 that is the transmission destination address of the IP header of the IP packet that has not been transferred, in the routing table 21. The metric of the route information that is the address of the wireless terminal 4 is updated to BIG. The DSDV daemon 16 of the wireless terminal 3 creates an Update packet including the changed route information, and sends the Update packet to the UDP module 18 for broadcast transmission.

無線端末2のDSDVデーモン16は、UDPモジュール18によって、Updateパケットを受信する。無線端末2のDSDVデーモン16は、Updateパケットに含まれる経路情報の送信先アドレスである無線端末4のアドレスがルーティングテーブル21内に存在し、かつそのMetricがBIGでないので、ルーティングテーブル21内の送信先アドレスが無線端末4のアドレスである経路情報のMetricをBIGに更新する。無線端末2のDSDVデーモン16は、変更した経路情報を含むUpdateパケットを作成して、そのUpdateパケットをUDPモジュール18に送り、ブロードキャスト送信させる。   The DSDV daemon 16 of the wireless terminal 2 receives the Update packet by the UDP module 18. The DSDV daemon 16 of the wireless terminal 2 transmits the transmission in the routing table 21 because the address of the wireless terminal 4 that is the transmission destination address of the route information included in the Update packet exists in the routing table 21 and its Metric is not BIG. The metric of the route information whose destination address is the address of the wireless terminal 4 is updated to BIG. The DSDV daemon 16 of the wireless terminal 2 creates an Update packet including the changed route information, and sends the Update packet to the UDP module 18 for broadcast transmission.

無線端末1のDSDVデーモン16は、UDPモジュール18によって、Updateパケットを受信する。無線端末1のDSDVデーモン16は、Updateパケットに含まれる経路情報の送信先アドレスである無線端末4のアドレスがルーティングテーブル21内に存在し、かつそのMetricがBIGでないので、ルーティングテーブル21内の送信先アドレスが無線端末4のアドレスである経路情報のMetricをBIGに更新する。   The DSDV daemon 16 of the wireless terminal 1 receives the Update packet by the UDP module 18. The DSDV daemon 16 of the wireless terminal 1 transmits the transmission in the routing table 21 because the address of the wireless terminal 4 that is the transmission destination address of the route information included in the Update packet exists in the routing table 21 and its Metric is not BIG. The metric of the route information whose destination address is the address of the wireless terminal 4 is updated to BIG.

無線端末1のDSDVデーモン16は、ルーティングテーブル21のMetricの値を監視し、MetricがBIGとなる経路情報が発生したことを検知して、ルーティングテーブル21からその経路情報の送信先アドレスである無線端末4のアドレスを取得する。無線端末1のDSDVデーモン16は、インターネット層にソケット情報管理テーブル20が存在し、かつ、そのソケット情報管理テーブル20に取得した無線端末4のアドレスを送信先アドレスとするソケット情報が存在するので、そのソケット情報のステイタスがACTIONであるか否かを調べる。無線端末1のDSDVデーモン16は、ステイタスがACTIONであるので、TCPモジュール17に対して、そのソケット情報に含まれる送信元ポート番号を用いたTCP通信のフリーズを指示する。TCPモジュール17は、指示された送信元ポート番号を用いたTCP通信をフリーズする。さらに、無線端末1のDSDVデーモン16は、ルーティングテーブル21内のそのソケット情報のステイタスをFREEZEに更新する。   The DSDV daemon 16 of the wireless terminal 1 monitors the value of Metric in the routing table 21, detects the occurrence of route information in which Metric becomes BIG, and transmits the wireless address that is the destination address of the route information from the routing table 21. The address of the terminal 4 is acquired. The DSDV daemon 16 of the wireless terminal 1 has a socket information management table 20 in the Internet layer, and socket information with the acquired address of the wireless terminal 4 as the transmission destination address in the socket information management table 20. It is checked whether or not the status of the socket information is ACTION. Since the status is ACTION, the DSDV daemon 16 of the wireless terminal 1 instructs the TCP module 17 to freeze TCP communication using the transmission source port number included in the socket information. The TCP module 17 freezes the TCP communication using the instructed transmission source port number. Further, the DSDV daemon 16 of the wireless terminal 1 updates the status of the socket information in the routing table 21 to FREEZE.

以上のように、本発明の実施形態に係る、テーブル駆動型のルーティングプロトコルを用いてルーティングを行なうアドホックネットワークにおける通信方式によれば、リンクが切断されたときにTCP通信をフリーズし、新たなリンクが接続されたときにTCP通信フリーズを解除することによって、TCP通信を適切に制御することができ、TCP通信のスループットの低下を防止することができる。   As described above, according to the communication method in the ad hoc network that performs routing using the table-driven routing protocol according to the embodiment of the present invention, the TCP communication is frozen when the link is disconnected, and a new link is created. By releasing the TCP communication freeze when is connected, it is possible to appropriately control the TCP communication and prevent a decrease in the throughput of the TCP communication.

本発明は、上記の実施形態に限定されるものではなく、たとえば、以下のような変形例も含む。   The present invention is not limited to the above embodiment, and includes, for example, the following modifications.

(1) リンクの切断
本発明の実施の形態では、MACモジュール23が、パケットの再送回数が所定回数を越えたときにリンクが切断されていることを検知したが、これに限定するものではない。たとえば、IPアドレスとMACアドレスとがマッチングできなかった際に格納されるARPバッファに溢れが生じた場合に、リンクの切断を検知するものとしてもよい。
(1) Link disconnection In the embodiment of the present invention, the MAC module 23 detects that the link is disconnected when the number of packet retransmissions exceeds a predetermined number. However, the present invention is not limited to this. . For example, when the ARP buffer stored when the IP address and the MAC address cannot be matched overflows, the link disconnection may be detected.

(2) テーブル駆動型のルーティングプロトコル
本発明の実施の形態では、テーブル駆動型のルーティングプロトコルの例として、DSDVプロトコルを取り上げたが、これに限定するものではなく、その他のテーブル駆動型のルーティングプロトコルであっても、同様にして実施できる。
(2) Table-driven routing protocol In the embodiment of the present invention, the DSDV protocol is taken as an example of the table-driven routing protocol. However, the present invention is not limited to this, and other table-driven routing protocols are used. However, it can be carried out in the same manner.

(3) リンク切断を示すMetric
本発明の実施形態では、Metricが所定値BIGのときに、リンクが切断されていることを表わしたが、これに限定されるものではなく、Metricが所定の記号のときに、リンクが切断されていることを表わすものとしてもよい。
(3) Metric indicating link disconnection
In the embodiment of the present invention, the link is disconnected when Metric is a predetermined value BIG. However, the present invention is not limited to this, and the link is disconnected when Metric is a predetermined symbol. It is also possible to express that

(4) DSDVデーモン
本発明の実施の形態では、DSDVデーモンが、(1) アドホックネットワークのルーティング、(2) リンク切断の検知および通知、(4) TCP通信フリーズの移行制御、(5) TCP通信フリーズの解除制御を行なったが、これに限定するものではない。たとえば、(1)および(2)をDSDVデーモンが行ない、(4)および(5)は、DSDVデーモンとは別の1または2個のデーモンが行なうものとしてもよい。
(4) DSDV daemon In the embodiment of the present invention, the DSDV daemon (1) ad hoc network routing, (2) link disconnection detection and notification, (4) TCP communication freeze transition control, (5) TCP communication Although freeze release control is performed, the present invention is not limited to this. For example, (1) and (2) may be performed by the DSDV daemon, and (4) and (5) may be performed by one or two daemons other than the DSDV daemon.

(5) アプリケーションとプロセス/アプリケーションのプロトコル
本発明の実施形態では、アプリケーションとしてメイラ、プロセス/アプリケーションのプロトコルとしてSMTPを用いて説明を行なったが、これに限定するものではなく、トランスポート層としてTCPを用いるものであれば、どのようなものでもよい。
(5) Application and Process / Application Protocol In the embodiment of the present invention, description has been given using Mailer as an application and SMTP as a process / application protocol. However, the present invention is not limited to this, and TCP is used as a transport layer. As long as it uses, any thing may be used.

(6) TCP通信フリーズ
本発明の実施の形態で述べたTCP通信のフリーズ時の処理に代えて、あるいは加えて、たとえば、以下の処理を行なうものとしてもよい。
(6) TCP communication freeze In place of or in addition to the TCP communication freeze processing described in the embodiment of the present invention, for example, the following processing may be performed.

(a) フリーズ状態にあるTCP通信におけるACK受信処理
送信側のTCP通信がフリーズ状態にあっても、受信側のTCP通信はそれを知ることができない。そのため、送信側からの経路上にリンク切断が発生していたとしても、受信側はかまわずACKを送信する。これにより、送信側のTCP通信がフリーズ状態にあるにもかかわらず、ACKを受信する場合がある。これに対処するために、以下の処理を行なう。
(A) ACK reception process in TCP communication in freeze state Even if the TCP communication on the transmission side is in the freeze state, the TCP communication on the reception side cannot know it. For this reason, even if link disconnection occurs on the path from the transmission side, the reception side does not matter, and ACK is transmitted. As a result, the ACK may be received even though the TCP communication on the transmission side is in a frozen state. In order to cope with this, the following processing is performed.

フリーズ状態にある送信側TCPは、ACKを受信しても新規パケットの送信は行なわない。フリーズ状態にある送信側TCPは、受信したACKに登録されているシーケンス番号と直前に受信したACKに登録されているシーケンス番号とを比較する。その結果、送信側TCPは、新しいACKを受信したと判断した場合は、送信側TCPが保持している直前に受信したACKのシーケンス番号と、受信した最大のシーケンス番号とを更新する。また、直前に受信したACKのシーケンス番号と重複するシーケンス番号を持つACKを受信したときには、重複回数をカウントするのみで、他の受信処理は行なわない。   The transmitting TCP in the frozen state does not transmit a new packet even if it receives an ACK. The sending TCP in the frozen state compares the sequence number registered in the received ACK with the sequence number registered in the ACK received immediately before. As a result, when it is determined that a new ACK has been received, the transmission side TCP updates the sequence number of the ACK received immediately before held by the transmission side TCP and the maximum sequence number received. When an ACK having a sequence number that overlaps with the sequence number of the ACK received immediately before is received, only the number of times of duplication is counted, and no other reception processing is performed.

(b) リンク切断を通知されたDSDVにおけるキュー制御
DSDVでは、経路が見つからない場合、送信または転送するパケットをキューに格納する。そして、経路回復後にキューに格納されているパケットを優先的に送信または転送することで、リンク切断中のパケットロスを回避している。
(B) Queue control in DSDV notified of link disconnection In DSDV, when a route is not found, a packet to be transmitted or transferred is stored in a queue. Packet loss during link disconnection is avoided by preferentially transmitting or transferring packets stored in the queue after route recovery.

しかし、DSDVのキューにも閾値が設けられており、閾値を越えるパケットが送られると、FIFOによってキューに格納されている最も古いパケットが破棄される。また、DSDVのキューにパケットが格納されることで、経路回復後にTCPのパラメータを制御したとしても、TCPからは制御できないパケットがDSDVから送信される。   However, a threshold is also provided in the DSDV queue, and when a packet exceeding the threshold is sent, the oldest packet stored in the queue is discarded by the FIFO. Further, by storing the packet in the DSDV queue, even if the TCP parameter is controlled after the path recovery, the packet that cannot be controlled from the TCP is transmitted from the DSDV.

そこで、リンク切断中にDSDVが受信したパケットは、すべて破棄するものとし、TCP通信フリーズの解除後に、送信側のTCPから受信側のTCPに対して問合せを行ない、DSDVで破棄されたパケットもすべてTCPが再送を行なうことで、TCPによるパケット送信の一元管理が可能となり、通信制御を容易にすることができる。   Therefore, all the packets received by DSDV during link disconnection are discarded, and after the TCP communication freeze is canceled, an inquiry is made from the sending TCP to the receiving TCP, and all packets discarded by DSDV are also discarded. When TCP performs retransmission, unified management of packet transmission by TCP is possible, and communication control can be facilitated.

(7) ソケット情報の削除
本発明の実施形態では、TCP通信切断要求端末のIPモジュール17は、第1パケットを送信するときにソケット情報を削除したが、第2および第3パケットを受信したときに、ソケット情報を削除するものとしてもよい。また、TCP通信切断受理端末のIPモジュール17は、第2および第3パケットを送信するときにソケット情報を削除したが、第4パケットを受信したときに、ソケット情報を削除するものとしてもよい。
(7) Deletion of socket information In the embodiment of the present invention, the IP module 17 of the TCP communication disconnection request terminal deletes the socket information when transmitting the first packet, but receives the second and third packets. In addition, the socket information may be deleted. The IP module 17 of the TCP communication disconnection receiving terminal deletes the socket information when transmitting the second and third packets, but may delete the socket information when receiving the fourth packet.

(8) Code Bitの参照
S203において、TCP通信の送信元端末のIPモジュール19は、取得したTCPヘッダのCode BitにSYNが設定されているときがTCP接続要求端末が第1パケットを送信するときであると識別し、取得したTCPヘッダのCode BitにSYNとACKが設定されているときがTCP接続受理端末が第2パケットを送信するときであると識別したが、これに限定するものではない。TCP通信の送信元端末のIPモジュール19は、取得したTCPヘッダのCode BitにSYNが設定されているときがTCP接続要求端末が第1パケットを送信するとき、またはTCP接続受理端末が第2パケットを送信するときであると識別するものとしてもよい。つまり、第2パケットの送信をSYNのみを参照して判断してもよい。
(8) Reference to Code Bit In S203, when the TCP connection requesting terminal transmits the first packet when the IP module 19 of the TCP communication transmission source terminal is set to SYN in the Code Bit of the acquired TCP header It is identified that the TCP connection receiving terminal transmits the second packet when SYN and ACK are set in the Code Bit of the acquired TCP header. However, the present invention is not limited to this. . The IP module 19 of the TCP communication transmission source terminal transmits the first packet when the TCP connection requesting terminal transmits the first packet when SYN is set in the Code Bit of the acquired TCP header, or the TCP connection receiving terminal transmits the second packet. It is good also as what identifies as it is time to transmit. That is, the transmission of the second packet may be determined with reference to only SYN.

S603において、TCP通信の送信元端末のIPモジュール19は、取得したTCPヘッダのCode BitにSYNとACKが設定されているときがTCP接続要求端末が第2パケットを受信したときであると識別し、取得したTCPヘッダのCode BitにACKが設定されているときがTCP接続受理端末が第3パケットを受信したときであると識別したが、これに限定するものではない。TCP通信の送信元端末のIPモジュール19は、取得したTCPヘッダのCode BitにSYNが設定されているときがTCP接続要求端末が第2パケットを受信したときであると識別し、取得したTCPヘッダのCode BitにACKが設定されているときにがTCP接続受理端末が第3パケットを受信したときであると識別するものとしてもよい。つまり、第2パケットの受信をSYNのみを参照して判断してもよい。   In step S603, the IP module 19 of the TCP communication transmission source terminal identifies that the TCP connection requesting terminal has received the second packet when SYN and ACK are set in the Code Bit of the acquired TCP header. Although it has been identified that the time when ACK is set in the Code Bit of the acquired TCP header is the time when the TCP connection receiving terminal has received the third packet, the present invention is not limited to this. The IP module 19 of the TCP communication transmission source terminal identifies that the TCP connection requesting terminal has received the second packet when SYN is set in the Code Bit of the acquired TCP header, and acquires the acquired TCP header. It is also possible to identify that the time when the ACK is set in the Code Bit is that the TCP connection receiving terminal has received the third packet. That is, the reception of the second packet may be determined with reference to only SYN.

今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。   The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

アドホックネットワークの構成を示す図である。It is a figure which shows the structure of an ad hoc network. 無線端末1の構成を示す図である。1 is a diagram illustrating a configuration of a wireless terminal 1. FIG. IPヘッダの構成を示す図である。It is a figure which shows the structure of an IP header. TCPヘッダの構成を示す図である。It is a figure which shows the structure of a TCP header. ルーティングテーブル21の例を示す図である。It is a figure which shows the example of the routing table. DSDVデーモン16によるリンク切断の検知および通知処理の手順を示すフローチャートである。6 is a flowchart illustrating a procedure of link disconnection detection and notification processing by the DSDV daemon 16; TCP通信の送信元端末が無線端末1のときのソケット情報管理テーブル20の例を示す図である。It is a figure which shows the example of the socket information management table 20 when the transmission origin terminal of TCP communication is the wireless terminal 1. IPモジュール19によるソケット情報の抽出処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of the extraction process of the socket information by IP module 19. IPモジュール19によるソケット情報の登録処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of the registration process of the socket information by IP module 19. DSDVデーモン16によるTCP通信フリーズ移行制御処理の手順を示すフローチャートである。6 is a flowchart showing a procedure of TCP communication freeze transition control processing by the DSDV daemon 16; ルーティングテーブル21の例を示す図である。It is a figure which shows the example of the routing table. TCP通信の送信元端末が無線端末1のときのソケット情報管理テーブル20の例を示す図である。It is a figure which shows the example of the socket information management table 20 when the transmission origin terminal of TCP communication is the wireless terminal 1. DSDVデーモン16によるTCP通信フリーズ解除制御処理の手順を示すフローチャートである。6 is a flowchart showing a procedure of TCP communication freeze release control processing by the DSDV daemon 16; ルーティングテーブル21の例を示す図である。It is a figure which shows the example of the routing table. DSDVデーモン16によるソケット情報の削除処理の手順を示すフローチャートである。10 is a flowchart showing a procedure of socket information deletion processing by the DSDV daemon 16; 本発明の実施形態に係るアドホックネットワークの通信方式の通信動作の例を示す図である。It is a figure which shows the example of communication operation | movement of the communication system of the ad hoc network which concerns on embodiment of this invention.

符号の説明Explanation of symbols

1〜9 無線端末、11 入力部、12 表示部、13 電子メールアプリケーション、14 通信制御部、15 SMTPモジュール、16 DSDVデーモン、17 TCPモジュール、18 UDPモジュール、19 IPモジュール、20 ソケット情報管理テーブル、21 ルーティングテーブル、22 LLCモジュール、23 MACモジュール、24 無線インタフェースモジュール、25 アンテナ。   1 to 9 wireless terminal, 11 input unit, 12 display unit, 13 e-mail application, 14 communication control unit, 15 SMTP module, 16 DSDV daemon, 17 TCP module, 18 UDP module, 19 IP module, 20 socket information management table, 21 routing table, 22 LLC module, 23 MAC module, 24 radio interface module, 25 antenna.

Claims (8)

テーブル駆動型のルーティングプロトコルを用いてルーティングを行なうアドホックネットワークにおける通信方式であって、
TCP通信の送信元端末が、TCP通信のコネクションの確立時に、前記TCP通信の送信先端末のアドレス、送信元ポート番号、および送信先ポート番号を含むソケット情報をソケット情報管理テーブルに登録するステップと、
各端末が、リンクの切断を検知したときに、自己の端末のルーティングテーブルの対応する経路情報のメトリックをリンク切断を示す値または記号に更新し、更新した経路情報を含むパケットをブロードキャスト送信するステップと、
各端末が、前記更新された経路情報を含むパケットを受信したときに、自己の端末のルーティングテーブルの対応する経路情報のメトリックをリンク切断を示す値または記号に更新し、更新した経路情報を含むパケットをブロードキャスト送信するステップと、
前記TCP通信の送信元端末が、自己の端末のルーティングテーブル内の経路情報のメトリックがリンク切断を示す値または記号となったときに、前記ルーティングテーブルから前記経路情報の送信先端末のアドレスを取得し、前記ソケット情報管理テーブルを参照して、前記取得した送信先端末のアドレスを含むソケット情報を特定し、前記特定したソケット情報に含まれる送信元ポート番号を用いたTCP通信をフリーズするステップとを含む、アドホックネットワークにおける通信方式。
A communication method in an ad hoc network that performs routing using a table-driven routing protocol,
A TCP communication source terminal, when establishing a TCP communication connection, registering socket information including an address of the TCP communication destination terminal, a source port number, and a destination port number in a socket information management table; ,
When each terminal detects link disconnection, the corresponding route information metric in the routing table of its own terminal is updated to a value or symbol indicating link disconnection, and a packet including the updated route information is broadcasted When,
When each terminal receives a packet containing the updated route information, the corresponding route information metric in the routing table of its own terminal is updated to a value or symbol indicating link disconnection, and the updated route information is included. Broadcasting a packet;
The source terminal of the TCP communication acquires the address of the destination terminal of the route information from the routing table when the metric of the route information in the routing table of the terminal becomes a value or symbol indicating link disconnection. And referring to the socket information management table, identifying socket information including an address of the acquired destination terminal, and freezing TCP communication using a source port number included in the identified socket information; A communication method in an ad hoc network.
前記ソケット情報は、TCP通信の状態がフリーズか、通常の動作状態を示すアクションかを示すステイタスをさらに含み、
前記ソケット情報を登録するステップでは、前記TCP通信の送信元端末が、前記送信先端末のアドレス、送信元ポート番号、および送信先ポート番号に加えて、アクションを示すステイタスをさらに含むソケット情報をソケット情報管理テーブルに登録し、
前記TCP通信をフリーズするステップでは、前記TCP通信の送信元端末が、前記ソケット情報のステイタスがアクションのときに限り、前記ソケット情報の送信元ポート番号を用いたTCP通信をフリーズし、
前記TCP通信の送信元端末が、前記TCP通信のフリーズ後に、前記ソケット情報のステイタスをフリーズに更新するステップをさらに含む、請求項1記載のアドホックネットワークにおける通信方式。
The socket information further includes a status indicating whether the TCP communication state is frozen or an action indicating a normal operation state,
In the step of registering the socket information, the source terminal of the TCP communication sets the socket information further including a status indicating an action in addition to the address of the destination terminal, the source port number, and the destination port number. Register in the information management table,
In the step of freezing the TCP communication, the source terminal of the TCP communication freezes the TCP communication using the source port number of the socket information only when the status of the socket information is an action,
The communication method in the ad hoc network according to claim 1, further comprising the step of the TCP communication source terminal updating the status of the socket information to freeze after the TCP communication freeze.
前記アドホックネットワークにおける通信方式は、さらに、
各端末が、新たな経路を発見したときには、メトリックをホップ数とした前記新たな経路の経路情報でルーティングテーブルを更新し、更新した経路情報をブロードキャスト送信するステップと、
前記TCP通信の送信元端末が、自己の端末のルーティングテーブル内の経路情報のメトリックがリンク切断を示す値または記号からホップ数に変化したときには、前記ルーティングテーブルから前記経路情報の送信先端末のアドレスを取得し、前記ソケット情報管理テーブルを参照して、前記取得した送信先端末のアドレスを含むソケット情報を特定し、前記特定したソケット情報のステイタスがフリーズのときに限り、前記特定したソケット情報の送信元ポート番号を用いたTCP通信のフリーズ状態を解除するステップと、
前記TCP通信の送信元端末が、前記TCP通信のフリーズ状態の解除後に、前記ソケット情報のステイタスをアクションに更新するステップとを含む、請求項2記載のアドホックネットワークにおける通信方式。
The communication method in the ad hoc network further includes:
When each terminal discovers a new route, the routing table is updated with the route information of the new route with the metric as the number of hops, and the updated route information is broadcasted.
When the metric of the route information in the routing table of the terminal of the TCP communication changes from a value or symbol indicating link disconnection to the number of hops, the address of the destination terminal of the route information from the routing table The socket information management table is referenced to identify socket information including the address of the acquired destination terminal, and only when the status of the identified socket information is frozen, Canceling the freeze state of TCP communication using the source port number;
The communication method in the ad hoc network according to claim 2, further comprising a step of updating a status of the socket information to an action after the TCP communication source terminal is released from the freeze state of the TCP communication.
前記テーブル駆動型のルーティングプロトコルは、DSDVプロトコルである、請求項3記載のアドホックネットワークにおける通信方式。   The communication method in an ad hoc network according to claim 3, wherein the table-driven routing protocol is a DSDV protocol. 前記TCP通信の送信元端末が、TCP通信のコネクションの切断時に、前記TCP通信の送信先端末のアドレス、送信元ポート番号、および送信先ポート番号を含むソケット情報をソケット情報管理テーブルから削除するステップをさらに含む請求項1記載のアドホックネットワークにおける通信方式。   The TCP communication source terminal deletes, from the socket information management table, socket information including the TCP communication destination terminal address, source port number, and destination port number when the TCP communication connection is disconnected. The communication method in the ad hoc network according to claim 1, further comprising: テーブル駆動型のルーティングプロトコルを用いてルーティングを行なうアドホックネットワークにおける通信方式であって、
TCP通信の送信元端末のIPを実行処理するIPモジュールが、TCPを実行処理するTCPモジュールによるTCP通信のコネクションの確立時に、前記TCP通信の送信先端末のアドレス、送信元ポート番号、および送信先ポート番号とを含むソケット情報をインターネット層のソケット情報管理テーブルに登録するステップと、
各端末のテーブル駆動型のルーティングプロトコルを実行処理するデーモンが、MACプロトコルを実行処理するMACモジュールから、転送されなかったパケットとともにリンクが切断された旨の通知を受けたときに、自己の端末のルーティングテーブルの対応する経路情報のメトリックをリンク切断を示す値または記号に更新し、更新した経路情報を含むパケットをUDPプロトコルを実行処理するUDPモジュールによってブロードキャスト送信させるステップと、
各端末の前記デーモンが、前記更新された経路情報を含むパケットを受信したときに、自己の端末のルーティングテーブルの対応する経路情報のメトリックをリンク切断を示す値または記号に更新し、更新した経路情報を含むパケットを前記UDPモジュールによってブロードキャスト送信させるステップと、
TCP通信の送信元端末の前記デーモンが、自己の端末のルーティングテーブル内の経路情報のメトリックを監視し、経路情報のメトリックがリンク切断を示す値または記号となったときに、前記ルーティングテーブルから前記経路情報の送信先端末のアドレスを取得し、前記ソケット情報管理テーブルを参照して、前記取得した送信先端末のアドレスを含むソケット情報を特定し、前記TCPモジュールに対して、前記特定したソケット情報に含まれる送信元ポート番号を用いたTCP通信をフリーズさせるステップとを含む、アドホックネットワークにおける通信方式。
A communication method in an ad hoc network that performs routing using a table-driven routing protocol,
When the IP module that executes the IP of the TCP communication source terminal establishes a TCP communication connection by the TCP module that executes the TCP, the address of the TCP communication destination terminal, the source port number, and the destination Registering socket information including the port number in the socket information management table of the Internet layer;
When the daemon that executes the table-driven routing protocol of each terminal receives notification from the MAC module that executes the MAC protocol that the link has been disconnected together with the packet that has not been transferred, Updating a corresponding route information metric in the routing table to a value or symbol indicating link disconnection, and broadcasting a packet including the updated route information by a UDP module that executes the UDP protocol;
When the daemon of each terminal receives a packet including the updated route information, the metric of the corresponding route information in the routing table of its own terminal is updated to a value or symbol indicating link disconnection, and the updated route Broadcasting a packet containing information by the UDP module;
The daemon of the TCP communication source terminal monitors the metric of the route information in the routing table of its own terminal, and when the metric of the route information becomes a value or symbol indicating link disconnection, The address of the destination terminal of the route information is acquired, the socket information including the address of the acquired destination terminal is specified with reference to the socket information management table, and the specified socket information is specified for the TCP module. A communication method in an ad hoc network, including the step of freezing TCP communication using a transmission source port number included in.
前記ソケット情報を登録するステップは、
前記TCP通信の送信元端末のIPモジュールが、IPパケットを送信するときに、前記IPパケットからTCPヘッダを取得するステップと、
前記TCP通信の送信元端末のIPモジュールが、前記TCPヘッダ内のCode BitにSYNが設定されているときには、さらに、前記IPパケットよりIPヘッダを取得するステップと、
前記TCP通信の送信元端末のIPモジュールが、前記IPヘッダ内の送信元端末のアドレスが自端末のアドレスであるときには、前記取得したTCPヘッダから送信元ポート番号および送信先ポート番号を取得し、前記取得したIPヘッダから送信先端末のアドレスを取得し、前記取得した送信先端末のアドレス、送信元ポート番号、および送信先ポート番号をメモリに保持するステップと、
前記TCP通信の送信元端末のIPモジュールが、コネクション確立処理中であることを示すフラグを所定の値に設定するステップと、
前記TCP通信の送信元端末のIPモジュールが、前記フラグが前記所定の値に設定されているときに、IPパケットを受信したときには、前記IPパケットからTCPヘッダを取得するステップと、
前記TCP通信の送信元端末のIPモジュールが、前記TCPヘッダ内のCode BitにSYN、またはACKが設定されているときには、さらに、前記IPパケットよりIPヘッダを取得するステップと、
前記TCP通信の送信元端末のIPモジュールが、前記IPヘッダ内の送信先端末のアドレスが自端末のアドレスであるときには、前記メモリに保持されている送信先端末のアドレス、送信元ポート番号および送信先ポート番号とを含み、通常の動作状態を示すアクションをステイタスとして含むソケット情報をソケット情報管理テーブルに登録するステップを含む、請求項6記載のアドホックネットワークにおける通信方式。
The step of registering the socket information includes:
When the IP module of the TCP communication source terminal transmits an IP packet, obtaining a TCP header from the IP packet;
When the IP module of the TCP communication source terminal is set to SYN in the Code Bit in the TCP header, the step of acquiring an IP header from the IP packet;
When the IP module of the source terminal of the TCP communication is the address of the source terminal in the IP header, the source port number and the destination port number are acquired from the acquired TCP header, Obtaining a destination terminal address from the obtained IP header, and holding the obtained destination terminal address, source port number, and destination port number in a memory;
A step of setting a flag indicating that the IP module of the TCP communication source terminal is in the process of establishing a connection to a predetermined value;
When the IP module of the TCP communication source terminal receives an IP packet when the flag is set to the predetermined value, obtaining a TCP header from the IP packet;
When the IP module of the source terminal of the TCP communication is set to SYN or ACK in the Code Bit in the TCP header, a step of acquiring an IP header from the IP packet;
The IP module of the source terminal of the TCP communication, when the address of the destination terminal in the IP header is the address of the own terminal, the address of the destination terminal, the source port number and the transmission held in the memory The communication method in the ad hoc network according to claim 6, further comprising: registering socket information including a destination port number and an action indicating a normal operation state as a status in a socket information management table.
前記アドホックネットワークにおける通信方式は、さらに、
前記TCP通信の送信元端末のIPモジュールが、IPパケットを送信するときに、前記IPパケットからTCPヘッダを取得するステップと、
前記TCP通信の送信元端末のIPモジュールが、前記TCPヘッダ内のCode BitにFINが設定されているときには、さらに、前記IPパケットよりIPヘッダを取得するステップと、
前記TCP通信の送信元端末のIPモジュールが、前記IPヘッダ内の送信元端末のアドレスが自端末のアドレスであるときには、前記取得したTCPヘッダから送信元ポート番号および送信先ポート番号を取得し、前記取得したIPヘッダから送信先端末のアドレスを取得するステップと、
前記TCP通信の送信元端末のIPモジュールが、前記取得した送信先端末のアドレス、送信元ポート番号、および送信先ポート番号を含むソケット情報を前記ソケット情報管理テーブルから削除するステップとを含む、請求項7記載のアドホックネットワークにおける通信方式。
The communication method in the ad hoc network further includes:
When the IP module of the TCP communication source terminal transmits an IP packet, obtaining a TCP header from the IP packet;
When the IP module of the TCP communication source terminal has FIN set in the Code Bit in the TCP header, the IP module further obtains an IP header from the IP packet;
When the IP module of the source terminal of the TCP communication is the address of the source terminal in the IP header, the source port number and the destination port number are acquired from the acquired TCP header, Obtaining a destination terminal address from the obtained IP header;
The IP module of the source terminal of the TCP communication includes a step of deleting socket information including the acquired destination terminal address, source port number, and destination port number from the socket information management table. Item 8. A communication method in an ad hoc network according to Item 7.
JP2003317073A 2003-09-09 2003-09-09 Communication system in ad hoc network Pending JP2005086525A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003317073A JP2005086525A (en) 2003-09-09 2003-09-09 Communication system in ad hoc network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003317073A JP2005086525A (en) 2003-09-09 2003-09-09 Communication system in ad hoc network

Publications (1)

Publication Number Publication Date
JP2005086525A true JP2005086525A (en) 2005-03-31

Family

ID=34416774

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003317073A Pending JP2005086525A (en) 2003-09-09 2003-09-09 Communication system in ad hoc network

Country Status (1)

Country Link
JP (1) JP2005086525A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006345135A (en) * 2005-06-08 2006-12-21 Seiko Epson Corp System and device for ciphering data, and device and method for deciphering data
JP2007110471A (en) * 2005-10-14 2007-04-26 Japan Radio Co Ltd Information transmission device and communication system
JP2007116230A (en) * 2005-10-18 2007-05-10 Sony Corp Radio communication device, radio communication method, and computer program
JP2008228300A (en) * 2007-03-08 2008-09-25 Samsung Electronics Co Ltd Terminal information releasing and processing apparatus and its method in broadband wireless access communication system using multi-hop relay scheme
JP2010245783A (en) * 2009-04-03 2010-10-28 Mitsubishi Electric Corp Mobile router ad-hoc network communication system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006345135A (en) * 2005-06-08 2006-12-21 Seiko Epson Corp System and device for ciphering data, and device and method for deciphering data
JP2007110471A (en) * 2005-10-14 2007-04-26 Japan Radio Co Ltd Information transmission device and communication system
JP4644092B2 (en) * 2005-10-14 2011-03-02 日本無線株式会社 Information transmission apparatus and communication system
JP2007116230A (en) * 2005-10-18 2007-05-10 Sony Corp Radio communication device, radio communication method, and computer program
JP4561585B2 (en) * 2005-10-18 2010-10-13 ソニー株式会社 Wireless communication apparatus, wireless communication method, and computer program
JP2008228300A (en) * 2007-03-08 2008-09-25 Samsung Electronics Co Ltd Terminal information releasing and processing apparatus and its method in broadband wireless access communication system using multi-hop relay scheme
JP2010245783A (en) * 2009-04-03 2010-10-28 Mitsubishi Electric Corp Mobile router ad-hoc network communication system

Similar Documents

Publication Publication Date Title
Perkins et al. Ad hoc on-demand distance vector (AODV) routing
Perkins et al. RFC3561: Ad hoc on-demand distance vector (AODV) routing
US8755294B2 (en) Communication system, communication method, communication terminal device, control method thereof, and program
US6845091B2 (en) Mobile ad hoc extensions for the internet
US7698463B2 (en) System and method for disseminating topology and link-state information to routing nodes in a mobile ad hoc network
US7512120B2 (en) Node, correspondent node, mobility anchor point, and home agent in packet communication system, packet communication system, and path MTU discovery method
EP2296326B1 (en) Route selection in wireless networks
EP2421206B1 (en) Flooding-based routing protocol having database pruning and rate-controlled state refresh
JP5087553B2 (en) Method and system for adaptive wireless routing protocol in mesh networks
US20040028023A1 (en) Method and apparatus for providing ad-hoc networked sensors and protocols
US20100020740A1 (en) Wireless Communication System, Wireless Communication Device, Wireless Communication Method, and Program
JP2004336716A (en) Path mtu discovery system and method for ad-hoc network
JP4572173B2 (en) Wireless communication apparatus, wireless communication method, and route information table creation method
JP2006101428A (en) Wireless network control device and its method, control program and recording medium
JP2005086525A (en) Communication system in ad hoc network
JP5307898B2 (en) Network node
JP7326230B2 (en) Communication system, node, communication method and program
JP2006050377A (en) Radio network system
KR100943638B1 (en) Method and device for reactive routing in low power sensor network
JP2006050228A (en) Radio network system
Garcia-Luna-Aceves et al. Simple and Efficient Loop-Free Multipath Routing in Wireless Networks
CN116192741A (en) Data transmission method based on ad hoc network
Venkatraman et al. Reliability improvement of Real-Time data in MANET-A proposal
Das Network Working Group C. Perkins Request for Comments: 3561 Nokia Research Center Category: Experimental E. Belding-Royer University of California, Santa Barbara
Deziel et al. A Reliable Transport Protocol for Resource Constrained Nodes: CRCTP-Protocol Design

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060908

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081002

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081014

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090407