"異なる通信バスに夫々接続する複数の通信部と、書き換え可能な記憶部と、記憶してあるコンピュータプログラムに基づき、1又は複数の通信部にて受信した1又は複数の情報を他の1又は複数の通信部から送信する中継処理を実行するプロセッサとを備える中継装置であって、前記記憶部には、受信した通信バス毎、及び、各通信バスで受信した情報の識別情報毎に、中継先を特定するルーティングテーブルが記憶してあり、前記プロセッサは、前記中継先を特定するために前記ルーティングテーブルを読み出すための特定の命令コードを実行する実行手段を備えることを特徴とする中継装置。前記ルーティングテーブルは、受信した情報を格納する格納領域と、前記情報毎に、前記情報を読み出すための前記ルーティングテーブル内の格納先を示すインデックス情報とを含み、前記実行手段は、前記インデックス情報を参照する手段と、前記インデックス情報に基づき、ルーティングテーブル内から情報を読み出す手段と、読み出した情報から中継する情報を作成する手段とを備えることを特徴とする請求項1に記載の中継装置。前記ルーティングテーブルは、中継する情報を格納し、中継先が対応付けられている格納領域と、前記情報毎に前記ルーティングテーブル内の格納先を示すインデックス情報とを含み、前記実行手段は、前記インデックス情報を参照する手段と、前記インデックス情報に基づき、ルーティングテーブル内に情報を格納する手段とを備えることを特徴とする請求項1に記載の中継装置。請求項1乃至3のいずれかに記載の中継装置と、該中継装置の前記複数の通信部に夫々接続される複数の通信バスとを含むことを特徴とする通信ハーネス。情報を送受信する複数の通信装置と、該複数の通信装置が夫々接続された複数の通信バスと、該複数の通信バスが接続された請求項1乃至3のいずれかに記載の中継装置とを含むことを特徴とする通信システム。特許文献1又は2に記載されている構成では、ルーティングテーブルをメモリに記憶しておき、中継処理プログラムに基づくCPUから、又は中継処理を行なうように構成された回路から、一の通信バスから情報を受信する都度、又は、一の情報を送信するタイミングが到来する都度、メモリ内のルーティングテーブルからIDと中継先の通信バスとの対応を読み出して中継先の通信バスを特定する処理を毎回行なう。このような構成では、メモリからの読み出しによって処理が遅くなったり、メモリに記憶するルーティングテーブルの情報量が多くなったりするなどの問題がある。また、特許文献3に開示されているように、車載ECUは、昨今ではハードウェアコストの削減のため、車種又はオプションなどの違いで夫々のハードウェアを製作することを回避するため、書き換え可能なコンピュータプログラムに基づくマイクロコンピュータ以下マイコンという処理が採用されている。このような事情から、処理の高速化、及びメモリの節約のために結局、ルーティングテーブルの内容を組み込んだコンピュータプログラムをCPUに読み出させて実行するマイコンを用いた構成が採用されているのが現実である。つまり、コンピュータプログラムの実行コード内に、ある情報を受信した場合の中継先が既に規定されており、テーブルの読み出し処理が不要である。特許文献2にも、中継装置が起動するときに、メモリに記憶されているルーティングテーブルを読み込んで変換し、中継処理回路内に組み込んで用いることが記載されている。一方で、電子制御にて実現される機能が増加していることから車載ECUの数も膨大である。中継装置も、2つの通信バス間の情報の中継ではなく、3つ以上の通信バス間の情報の中継処理が必要になってきている。したがって、ある情報は1の通信バスから他の3つの通信バスへ中継し、2つの通信バスから夫々受信した2つの情報をまとめて、他の1の通信バスから送信するなどの多様な中継バリエーションが存在する。更に、車両メーカ、車種又はオプション毎に、通信バスの数、各通信バスに接続されるECUの種類が異なるから、中継バリエーションが増加する。ルーティングテーブルの内容を組み込んだコンピュータプログラムをCPUに読み出させる構成では、異なるバリエーション毎に、中継処理のプログラムを開発しなければならず、開発コストを抑えることが困難である。本発明は斯かる事情に鑑みてなされたものであり、多様な中継バリエーションに対応するためにルーティングテーブルを置換することが可能であり、且つ、置換された異なるルーティングテーブルに対応可能な中継装置、該中継装置を含む通信ハーネス、及び前記中継装置を含む通信システムを提供することを目的とする。本発明に係る中継装置は、異なる通信バスに夫々接続する複数の通信部と、書き換え可能な記憶部と、記憶してあるコンピュータプログラムに基づき、1又は複数の通信部にて受信した1又は複数の情報を他の1又は複数の通信部から送信する中継処理を実行するプロセッサとを備える中継装置であって、前記記憶部には、受信した通信バス毎、及び、各通信バスで受信した情報の識別情報毎に、中継先を特定するルーティングテーブルが記憶してあり、前記プロセッサは、前記中継先を特定するために前記ルーティングテーブルを読み出すための特定の命令コードを実行する実行手段を備えることを特徴とする。本発明に係る中継装置は、前記ルーティングテーブルは、受信した情報を格納する格納領域と、前記情報毎に、前記情報を読み出すための前記ルーティングテーブル内の格納先を示すインデックス情報とを含み、前記実行手段は、前記インデックス情報を参照する手段と、前記インデックス情報に基づき、ルーティングテーブル内から情報を読み出す手段と、読み出した情報から中継する情報を作成する手段とを備えることを特徴とする。本発明に係る中継装置は、前記ルーティングテーブルは、中継する情報を格納し、中継先が対応付けられている格納領域と、前記情報毎に前記ルーティングテーブル内の格納先を示すインデックス情報とを含み、前記実行手段は、前記インデックス情報を参照する手段と、前記インデックス情報に基づき、ルーティングテーブル内に情報を格納する手段とを備えることを特徴とする。本発明に係る通信ハーネスは、上記発明の中継装置のいずれかと、該中継装置の前記複数の通信部に夫々接続される複数の通信バスとを含むことを特徴とする。本発明に係る通信システムは、情報を送受信する複数の通信装置と、該複数の通信装置が夫々接続された複数の通信バスと、該複数の通信バスが接続された上記発明の中継装置のいずれかとを含むことを特徴とする。本発明では、中継装置の記憶部には書き換え可能なルーティングテーブルが記憶され、該ルーティングテーブルは、受信した通信バス毎、及び各通信バスで受信した情報の識別情報毎に中継先を特定するものであって、コンピュータプログラムに基づき中継処理を実行するプロセッサは、前記ルーティングテーブルを読み出すための特定の命令コードを実行する。特定の命令コードは、一定の条件を満たすルーティングテーブルであれば内容が異なるルーティングテーブルに対し普遍的に対応するものである。本発明では、ルーティングテーブルは受信した情報を格納する格納領域を含み、該格納領域には中継先が対応付けられており、当該格納先のインデックス情報を含む。プロセッサが特定の命令コードに基づき、ルーティングテーブルから情報を読み出すに際し、インデックス情報を参照する手段と、インデックス情報に基づき受信した情報の格納先から情報を読み出す手段とを実行することにより、内容が異なるルーティングテーブルであってもインデックス情報に基づき、ルーティングテーブル内の情報を読み出すことが可能である。本発明では、ルーティングテーブルは中継送信する情報を格納する格納領域を含み、該格納領域には中継先が対応付けられており、当該格納先のインデックス情報を含む。プロセッサが特定の命令コードに基づき、ルーティングテーブルに前記中継する情報を格納するに際し、インデックス情報を参照する手段と、インデックス情報に基づき格納領域に情報を格納する手段とを実行し、送信する情報を作成することにより、内容が異なるルーティングテーブルであってもインデックス情報に基づき、格納領域に対応付けられた中継先へ、情報を送信することが可能である。本発明による場合、多様な中継バリエーションに対応するためにルーティングテーブルを置換することが可能である。そして、置換されたルーティングテーブルに対しても特定の命令コードを実行することにより、置換された異なるルーティングテーブルに対応して受信した情報を管理し、中継する情報を作成することができる。したがって、異なる中継バリエーション夫々に応じてプロセッサが中継処理を実行するためのコンピュータプログラムを作成し直す必要がない。これにより、開発コストを抑えることが可能である。また、中継処理を実行するためのコンピュータプログラムを作成し直す必要がないから、本発明の中継装置の検査を行なうに際し、前記コンピュータプログラムの検査は、異なる中継バリエーション毎に毎回行なう必要がなく、異なる中継バリエーションに対応させた異なるルーティングテーブルを含めた動作のみ検査すればよい。したがって、中継装置及び該中継装置を含む通信システム構築後の検査の項目を減少させ、製造コストを抑えることも可能である。以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。なお、以下の実施の形態では本発明を、車載機器を制御する車載通信システムに適用した場合の例を挙げて説明する。図1は、本実施の形態における車載通信システムの構成を示すブロック図である。車載通信システムは、複数の通信バス11,12,13,14と、通信バス11,12,13,14夫々に接続されているECU21,22,23,24と、通信バス11,12,13,14間の情報の中継処理を行なう中継装置3とを含む。実施の形態1では、通信バス11,12,13,14を介した通信は、いずれもCANプロトコルに準じる。複数の通信バス11,12,13,14は、接続されるECU21,22,23,24の制御対象の種類で区別されている。換言すれば、送受信される情報種類で区別される。通信速度は、通信バス11,12,13,14毎に異なる設定とされていてもよい。例えば、通信バス11には走行制御系の制御を行なう複数のECU21が接続されており、車速等の制御系の情報が送受信される。通信バス12には、電力制御系の制御を行なう複数のECU22が接続されており、バッテリー情報などの電力制御系の情報が送受信される。通信バス13には、カーナビゲーションシステムなどのアクセサリ系の制御を行なう複数のECU23が接続されており、時間情報、位置情報などのマルチメディア系の情報が送受信される。通信バス14には、ボディの制御を行なう複数のECU24が接続されており、ドアロック、セキュリティなどに関する情報が送受信される。中継装置3は、CPUCentralProcessingUnit30と、第1通信部31と、第2通信部32と、第3通信部33と、第4通信部34と、フラッシュメモリ35と、RAMRandomAccessMemory36とを備えている。CPU30は、フラッシュメモリ35に記憶されているルーティングテーブル37及び後述のコンピュータプログラムに基づき、RAM36を送信バッファ又は受信バッファとして用い、第1~第4通信部31~34を介した送受信を実行して中継処理を実現する。CPU30はMPUMicroProcessingUnitに代替されてもよい。第1~第4通信部31~34は夫々、CANコントローラ及びCANトランシーバを含み、CANプロトコルに基づき、各種情報を含むCANメッセージの送受信を実現する。第1通信部31は通信バス11に、第2通信部32は通信バス12に、第3通信部33は通信バス13に、第4通信部34は通信バス14に接続されている。フラッシュメモリ35は、書き換え可能な不揮発性メモリであり、後述するようにCPU30が読み出すコンピュータプログラム及びルーティングテーブルを記憶する。なお、フラッシュメモリ35の代替として、EEPROM登録商標などの不揮発性メモリを用いてもよい。RAM36は、送受信バッファとして用いられる。CPU30は、第1~第4通信部31~34にて受信したCANメッセージ、及び、第1~第4通信部31~34にて送信するCANメッセージをRAM36に記憶する。なお、CPU30、第1~第4通信部31~34におけるCANコントローラ部、フラッシュメモリ35及びRAM36でマイコンとして構成されていてよい。図2は、フラッシュメモリ35に記憶される情報の内容を模式的に示す模式図である。フラッシュメモリ35には、ルーティングテーブル37、ルーティングプログラム38、及びプラットフォームプログラム39が記憶されている。他に、図示しないドライバプログラム等が記憶されていてもよい。プラットフォームプログラム39は、第1~第4通信部31~34にてCANメッセージを受信した場合に、CPU30へ受信割込を通知し、RAM36の受信バッファに書き込む処理、CPU30が作成して与えたCANメッセージを、第1~第4通信部31~34へ与えて送信せしめる処理など、基本的な入出力処理を各機器で共通化したプログラムである。ルーティングプログラム38は、CPU30による中継処理、即ち後述のフローチャートに示すような処理手順を実現するためのプログラムである。ルーティングプログラム38は、ルーティングテーブル37が、他のルーティングテーブル40に置換された場合でも、書き換え不要となるように、車種又はオプション依存の実行コードを含まない。ルーティングプログラム38は、置換されたルーティングテーブル40にも対応するように、ルーティングテーブル37、及びルーティングテーブル40、並びに他のルーティングテーブルにも対応する共通化された実行コードを含むように構成されている。実行コードについては、後述の各フローチャートにて詳細を説明する。ルーティングテーブル37は、CANメッセージを受信した場合に参照する受信テーブルと、CANメッセージを送信する場合に参照する送信テーブルとに区別されている。受信テーブル及び送信テーブルとに夫々分けて記憶する構成としてもよい。図3は、ルーティングテーブル37の受信テーブルの内容例を示す説明図である。受信テーブルは、通信バス11~14毎に、受信するCANメッセージのCANID別のレコードからなる。各レコードは図3の例では、中継対象であるか否かOK:中継対象である/NG:中継対象でない、即時中継先の情報、受信したCANメッセージに含まれるデータ部分の情報長DLC:DataLengthCode、データの格納領域、未中継のデータを受信しているか否かを示す受信フラグON:受信/OFF中継済みの情報からなる。レコード長は定められている。各レコードは通信バス11のCANID0のレコードから順に、フラッシュメモリ35上の受信テーブル用の領域の先頭から順に記憶される。CANIDは、例えば11ビットで表わされ、CANの規定により最大値は0x7FFである。中継対象であるか否かの情報は、例えば1ビット又は8ビットで表わされ、OKは1、NGは0とする。即時中継先は、例えば5ビットで表わし、1ビットずつ、通信バス11~14、即ち第1~第4通信部31~34に割り振り1ビットは予備、0の場合は中継先でなく、1の場合は中継先であることを表す。DLCは、例えば4ビットで表わされ、0~8である。データの格納領域は8ビット用意されている。なおデータは、複数のシグナル情報からなる。例えば車両のドアの開閉状態のシグナル情報を、1ビットずつ1:開/0:閉で表わすことができる。具体的には、受信したCANメッセージのデータ部分の8ビットの内、先頭から5ビットで順に、前部座席右側ドアの開閉、前部座席左側ドアの開閉、後部座席右側ドアの開閉、後部座席左側ドアの開閉、リアドアの開閉を表すことが可能である。受信フラグは、例えば8ビットで表わされ、ON:受信は0x01、OFF:中継済みは0x00とする。図3に示す内容例では例えば、通信バス11から受信されるCANIDが0のCANメッセージは、中継対象でないNG。また、通信バス11から受信されるCANIDが0x050のCANメッセージは、中継対象でありOK、即時中継先は01110bであって、通信バス11に対応する末尾のビットと、予備の先頭ビットとが0であって他のビットは1であるから、通信バス12~14即ち第2通信部32~第4通信部34により即時中継する。そして、CANIDが0x050のCANメッセージのデータxとデータ長xxは、夫々当該レコードの格納領域に格納される。受信フラグはOFFとされている。また、CANIDが0x051のCANメッセージは、中継対象であるがOK、即時中継先は00000bであって即時中継しない。CANIDが0x051のCANメッセージのデータyとデータ長yyは、夫々当該レコードの格納領域に格納され、中継済みとなるまで受信フラグはONである。また、ルーティングテーブル37はインデックス情報を含む。図4は、受信テーブルのインデックス情報の内容例を示す説明図である。インデックス情報には、受信したCANメッセージにより受信したシグナルの数、各シグナルの受信テーブル内の格納位置が含まれる。格納位置は、受信テーブルの各レコード内のデータ中の対象シグナルの開始バイト、開始バイト内のシグナルの開始ビット、及びシグナルのビット長により表されている。図4に示す例では例えば、受信したCANメッセージのデータ内に含まれるシグナルの総数は50であることが示されている。また、1つめのシグナルは受信テーブルの0x0051番目のレコードのデータの0バイト目の0ビット目の1ビット分に格納され、2つめのシグナルは同レコードのデータの0バイト目の3ビット目からの2ビット分に格納されることが示されている。同様にして、25番目のシグナルは受信テーブルの0x0880番目のレコードのデータの0バイト目の4ビット目の2ビット分に格納されることが示されている。同様にして、50番目のシグナルは、受信テーブルの0x10A0番目のレコードのデータの0バイト目の7ビット目の1ビットに格納されることが示されている。インデックス情報を参照して受信テーブルを読み出すことにより、受信テーブルの内容が異なる場合であっても、ルーティングプログラム38に基づく処理を実行するCPU30は、受信テーブルが記憶されている記憶領域のいずれのアドレスの何バイト目の何ビット目から何ビット分読み出せばよいかを特定することができる。なお、受信テーブルの定義に応じて、インデックス情報は予め設計により定まるものである。したがって、図4に示すようなインデックス情報は、図3に示すような受信テーブルを含むルーティングテーブル37内に共に記憶される。ルーティングテーブル37が例えばルーティングテーブル40に置換された場合、受信テーブルのインデックス情報はルーティングテーブル40内の受信テーブルと共に記憶される。ルーティングテーブル37が他のルーティングテーブル40に置換された場合でも、ルーティングプログラム38に基づくCPU30の処理は変更する必要がない。インデックス情報のレコードは先頭から順に読み出せばよく、レコードの型が定まっていれば内容によらない。図5は、ルーティングテーブル37の送信テーブルの内容例を示す説明図である。送信テーブルは、CANID別のレコードからなる。各レコードは、CANID、中継先のバス情報、送信するCANメッセージに含まれるデータ部分の情報長DLC、データの格納領域、及び送信条件からなる。送信条件は必須ではない。なお、レコード長は定められている。各レコードは、先頭のCANIDが0x010のCANメッセージから、フラッシュメモリ35上の送信テーブル用の領域の先頭から順に記憶される。図5に示す内容例では、CANIDは例えば11ビットで表わされる。中継先のバス情報は例えば5ビットで表わし、各ビットは予備通信バス14通信バス13通信バス12通信バス11に対応し、夫々1であるときは中継先であり、0であるときは中継先でない。例えば、CANIDが0x010の送信CANメッセージの中継先のバスは通信バス11、即ち当該メッセージは第1通信部31から10ミリ秒毎に送信するCANメッセージである。また、CANIDが0x010の送信CANメッセージのデータ部分の格納領域に例えば情報長がkkのkが格納される。送信条件は、イグニッション位置がACCアクセサリであるなどの時間以外の条件でもよい。他には、データ内のシグナル値が何らかの条件を満たすか否かなどであってもよい。またルーティングテーブル37は、送信テーブルに対応するインデックス情報も含む。図6は、送信テーブルのインデックス情報の内容例を示す説明図である。インデックス情報には、送信するCANメッセージに格納すべきシグナルの数、各シグナルの送信テーブル内の格納位置が含まれる。格納位置は、送信テーブルの各レコード内のデータ中の対象シグナルの開始バイト、開始バイト内のシグナルの開始ビット、及びシグナルのビット長により表されている。図6に示す例では例えば、送信するCANメッセージのデータ内に含まれるシグナルの総数は50であることが示されている。1つめのシグナルは、送信テーブルの0x00番目のレコードのデータの0バイト目の0ビット目の1ビット分に格納すべきであり、2つ目のシグナルは同レコードのデータの0バイト目の1ビット目から2ビット分に格納すべきであることが示されている。同様にして、25番目のシグナルは、送信テーブルの0x08番目のレコードのデータの0バイト目の0ビット目から2ビット分に、26番目のシグナルは同レコードのデータの0バイト目の2ビット目から3ビット分に、27番目のシグナルは同レコードのデータの5ビット目の1ビットに、28番目のシグナルは同レコードのデータの6ビット目の1ビットに、29番目のシグナルは同レコードのデータの7ビット目の1ビットに格納すべきであることが示されている。なお本実施の形態の例では、受信するCANメッセージに含まれるシグナルの総数と、送信するシグナルの総数とは一致してある。同一の通し番号のシグナルは、同一のシグナルである。同一のシグナルについて、受信テーブルのインデックス情報と、送信テーブルのインデックス情報とを1つのレコードにまとめるようにしてもよい。図3~図6に示した各テーブル及びインデックス情報に基づき、中継装置3のCPU30は、以下に説明するような中継処理を実行する。なおCPU30は、ルーティングプログラム38に基づき、即時中継処理及び定期的中継処理を夫々実現する。即時中継処理では、CPU30は、CANメッセージを受信した時点で直接的に、第1~第4通信バス11~14のいずれか1つ又は複数へ中継する。定期的中継処理では、CPU30は、CANメッセージを受信した時点では、CANメッセージに含まれるデータを受信テーブル内のデータ格納領域受信バッファに記憶しておき、例えば10ミリ秒などの一定期間が経過する都度、定期的に、受信バッファからデータを参照して送信テーブルにてCANメッセージを作成し、送信する。CPU30は、即時中継処理及び定期的中継処理を実現するために、CANメッセージを受信したときの受信処理と、周期的に実行する送信処理とにタスクを区別して夫々実行する。図7は、中継装置3における受信処理の処理手順の一例を示すフローチャートである。プラットフォームプログラム39に基づく処理により、CPU30へ受信割込みが通知された場合に、CPU30はルーティングプログラム38に基づいて以下の処理を実行する。CPU30は、受信したCANメッセージのCANID及び受信したバスが通信バス11~14のいずれであるかを特定するステップS11。CPU30は、特定したCANID及び通信バスに基づき、ルーティングテーブル37の中継要否を参照するステップS12。図3に示したように、通信バス11~14毎に、受信したメッセージのCANID別に、中継対象であるか否かがテーブル化されている。ステップS12では具体的には、CPU30は、ルーティングプログラム38に基づき、通信バス及びCANIDを引数としてルーティングテーブル37を読み出し、読み出した戻り値としてルーティングテーブル37内に記憶されている中継対象であるか否かの結果を返す関数を呼び出す処理を行なう。CPU30は、ステップS12の参照結果戻り値に基づき、中継の要否を判定しステップS13、要と判定した場合S13:YES、ルーティングテーブル37内の即時中継先を参照しステップS14、参照結果に基づき即時中継処理を実行するステップS15。CPU30は、即時中継処理後、受信したメッセージに含まれているデータを読み出しステップS16、読み出したデータを受信テーブルのデータ格納領域に格納しステップS17、受信フラグをONに設定しステップS18、処理を終了する。CPU30は、ステップS13にて、参照結果に基づき不要と判定した場合S13:NO、処理をそのまま終了する。図8は、中継装置3における即時中継処理の処理手順の一例を示すフローチャートである。図8に示すフローチャートは、図7のステップS15の詳細な手順に対応する。CPU30は、図7のステップS14の参照結果に基づき、即時中継対象であるか否かを判断するステップS51。具体的には、参照結果が0x0000000bでない場合、CPU30は即時中継対象であると判断する。CPU30は、即時中継対象であると判断した場合S51:YES、即時中継先として通信バス11を選択しステップS52、参照結果である即時中継先と、選択してある通信バス11とが一致するか否かを判断するステップS53。CPU30は、一致したと判断した場合S53:YES、プラットフォームプログラム39に基づく処理により、選択してある通信バス11へ、即ち選択した通信バス11に接続する第1通信部31から、受信したCANメッセージを即時送信せしめるべく、プラットフォームプログラム39の処理を実行しステップS54、次の処理へ進む。CPU30は、全通信バス11~14を選択したか否かを判断しステップS55、全てを選択していないと判断した場合S55:NO、次の通信バス12、即ち第2通信部32を選択しステップS56、処理をステップS53へ戻し、次の通信バス12への即時送信処理を実行する。CPU30は、通信バス13及び通信バス14についてもステップS52~S54の処理を実行し、全通信バス11~14を選択したと判断した場合S55:YES、受信したCANメッセージについての即時中継処理を終了し、図7のステップS16へ処理を戻す。ステップS51にて、即時中継対象でないと判断した場合S51:NO、受信したメッセージについての即時中継処理を終了し、図7のステップS16へ処理を戻す。図7及び図8のフローチャートに示した処理手順について、具体例を挙げて説明する。具体例として、通信バス12から、CANIDが0x100のCANメッセージが送信された場合の処理を説明する。CPU30は、第2通信部32からCANメッセージの受信について通知を受け、CANIDを0x100、通信バスを通信バス12と特定するS11。CPU30は、ルーティングテーブル37から通信バス12の0x100番目のレコードを参照し、中継対象であるか否かの結果を返す関数を呼び出すS12。当該関数により、図3に示すようにOKが返されるから、CPU30は、中継要と判定しS13:YES、同一レコードの即時中継先01001bを参照しS14、参照した即時中継先を与えてS15の即時中継処理を実行する。CPU30は、即時中継処理にて、参照した即時中継先は0x00でないので即時中継対象であると判断するS51:YES。CPU30は、最初の通信バス11を選択しS52、01001bの通信バス11に対応する末尾ビットは1であるから即時中継先と一致すると判断しS53:YES、選択した通信バス11に対応する第1通信部31から、受信してあるCANメッセージを直接的に送信するS54。CPU30は、全ての通信バス11~14を選択していないからS55:NO、次の通信バス12を選択するS56。CPU30は、処理をステップS53に戻し、即時中継先01001bの通信バス12に対応する末尾から2つ目のビットが0であるから即時中継先と一致しないと判断しS53:NO、処理をステップS55へ進める。そしてCPU30は、未だ全ての通信バス11~14を選択していないからS55:NO、次の通信バス13を選択するS56。CPU30は、処理をステップS53へ戻し、即時中継先01001bの通信バス13に対応する末尾から3つ目のビットが0であるから即時中継先と一致しないと判断しS53:NO、処理をステップS55へ進める。CPU30は、未だ全ての通信バス11~14を選択していないからS55:NO、次の通信バス14を選択するS56。CPU30は、処理をステップS53へ戻し、即時中継先01001bの通信バス14に対応する末尾から4つ目のビットが1であるから即時中継先と一致すると判断しS53:YES、選択した通信バス14に対応する第4通信部34から、受信してあるCANメッセージを直接的に送信するS54。ステップS55で全ての通信バス11~14を選択したと判断し、図7のステップS16に戻る。CPU30は、受信したCANメッセージのデータv及び情報長vvを読み出しS16、ルーティングテーブル37の受信テーブル内の対応するレコードのデータ格納領域に書き込みS17、受信フラグをONに設定しS18、処理を終了する。次に、中継装置3における送信処理について説明する。図9は、中継装置3における送信処理の処理手順の一例を示すフローチャートである。中継装置3は、図示しないタイマ部にて、例えば10ミリ秒の一定期間をカウントしており、10ミリ秒が経過する都度、タイマ割込をCPU30へ通知する。CPU30は、当該タイマ割込が通知された場合に、ルーティングプログラム38に基づき以下の処理を実行する。CPU30は、送信するCANメッセージのレコード数を取得するステップS201。レコード数は、送信レコードの総レコード数を計数してもよいし、予め別にレコード数を記録しておき、CPU30がこれを参照するようにしてもよい。CPU30は、カウント用の変数Lに0を代入しステップS202、送信テーブルのL番目のレコード先頭は0番目を順に読み出すステップS203。CPU30は、当該レコードをインデックス先とするシグナルのインデックス情報を抽出するステップS204。抽出したインデックス情報を1つ選択しステップS205、選択したインデックス情報のシグナルが受信テーブル内のいずれに格納されているかを、受信テーブルのインデックス情報から特定するステップS206。CPU30は、特定した受信テーブル内のレコードを参照しステップS207、受信フラグがONであるか否かを判断するステップS208。CPU30は、受信フラグがONである場合S208:YES、ステップS206でインデックス情報から特定した格納位置からシグナルを取得しステップS209、取得したシグナルを、ステップS205にて選択してある送信テーブルのインデックス情報が示す格納位置に格納するステップS210。CPU30は、ステップS204で抽出したインデックス情報を全て選択したか否かを判断しステップS211、全てを選択していないと判断した場合S211:NO、処理をステップS205へ戻し、次のインデックス情報を選択するS205。次に選択したインデックス情報のシグナルが格納されている受信テーブルのレコード内の受信フラグがOFFであると判断した場合S208:NO、処理をステップS211へ進める。CPU30は、ステップS211にて全てを選択したと判断した場合S211:YES、送信するCANメッセージのデータが完成しているので、ステップS203で読み出している当該レコードの送信条件が成立しているか否かを判断するステップS212。CPU30は、送信条件が成立していると判断した場合S212:YES、当該レコード内のデータ部分を含むCANメッセージを、当該レコード内の中継先バスに対応する第1~第4通信部31~34のいずれかに与えて送信せしめるステップS213。次にCPU30は、カウント用の変数Lに1を加算しステップS214、ステップS201で取得したレコード数と変数Lとが一致するか否かを判断するステップS215。即ちCPU30は、送信テーブル内の全てのレコードについて処理を実行したか否かを判断するS215。CPU30は、ステップS215で一致しないと判断した場合S215:NO、処理をステップS203へ戻し、次のL番目のレコードを読み出すS203。CPU30は、ステップS212にて送信条件が不成立であると判断した場合S212:NO、処理をステップS214へ進め、次のレコードについて処理を実行する。CPU30は、ステップS215にて、ステップS201で取得したレコード数と変数Lとが一致すると判断した場合S215:YES、受信テーブルの全レコードの受信フラグをOFFとしステップS216、処理を終了する。図9のフローチャートに示した処理手順について、具体例を挙げて説明する。具体例として、図5の送信テーブルの内容例の内、CANIDが0x0A0のレコードを読み出した場合S203の処理を説明する。なお当該レコードは、0x08番目のレコードであるとする。CPU30は、0x08番目のレコードをインデックス先とするシグナルのインデックス情報25~29を抽出するS204。抽出したインデックス情報の内、25番目のシグナルのインデックス情報を選択しS205、選択したインデックス情報のシグナルが受信テーブル内のいずれに格納されているかを、受信テーブルのインデックス情報25番目からpos0x0880であると特定するS206。CPU30は、受信テーブル内のpos0x0880番目のレコード、即ち通信バス12から受信したCANID0x080のレコードを参照しS207、受信フラグがONであると判断するS208:YES。CPU30は、受信テーブル内の当該レコードのデータ格納領域から、ステップS206で特定した格納位置、即ち開始バイト0、開始ビット0、ビット長1を参考にしてシグナルを取得するS209。そしてCPU30は、ステップS205で選択した25番目のインデックス情報送信テーブルの格納位置の情報に基づき、送信テーブルのCANIDが0x0A0のレコードのデータ格納領域の0番目のバイトの0番目のビットから2ビット分、取得したシグナルの情報を格納するS210。CPU30は、次に26番目のインデックス情報に基づき、即ち通信バス12から受信したCANID0x080のレコードを参照しS207、ステップS206で特定した格納位置からシグナルを取得するS209。抽出したインデックス情報25~29から送信するCANメッセージを完成させ、送信条件が成立しているか否かを判断しS212、送信条件は送信周期が20ミリ秒毎であるから、10ミリ秒毎の送信処理の2回につき1回、送信テーブルの当該レコードの送信S213を実行する。このように、ルーティングテーブル37が一定の型のレコードから構成されており、各レコードを読み出す方法が、上述した各処理手順内の特定の方法に定められる構成とすることにより、ルーティングテーブル37が、例えばルーティングテーブル40に置換されたとしても、ルーティングプログラム38に基づく処理は変更する必要が無い。特に、ルーティングテーブル37又はルーティングテーブル40がインデックス情報を含むことによって、置換された異なるルーティングテーブル40に対応して受信した情報を管理し、中継する情報を作成することができる。なお、上述のように開示された本実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。"