JP2002152256A - アドレス変換装置及びその方法 - Google Patents

アドレス変換装置及びその方法

Info

Publication number
JP2002152256A
JP2002152256A JP2000342147A JP2000342147A JP2002152256A JP 2002152256 A JP2002152256 A JP 2002152256A JP 2000342147 A JP2000342147 A JP 2000342147A JP 2000342147 A JP2000342147 A JP 2000342147A JP 2002152256 A JP2002152256 A JP 2002152256A
Authority
JP
Japan
Prior art keywords
address
data
rtsp
router
network
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
JP2000342147A
Other languages
English (en)
Inventor
Nobuyoshi Tomita
展由 富田
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.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2000342147A priority Critical patent/JP2002152256A/ja
Publication of JP2002152256A publication Critical patent/JP2002152256A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】ルータに負荷をかけることなくアドレスの変換
を実現でき、かつ高速なデータ伝送を実現できるアドレ
ス変換装置及びその変換方法を提供する。 【解決手段】 RTSPプロキシ310またはNAT管
理モジュール320によってカーネル330に対してア
ドレス変換のための設定を行い、当該設定に従って、カ
ーネル330はネットワークインターフェース340か
ら転送されてきたデータに対してアドレス変換処理を行
い、アドレス変換されたデータをネットワークインター
フェース340を介して宛先に転送するので、アドレス
変換をユーザ空間に上げることなく、カーネル内で実現
でき、ルータの処理負荷の軽減及び高速なデータ転送を
実現できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ネットワーク上に
おいて、局地ネットワーク(ローカルネットワーク)と
広域ネットワーク(グローバルネットワーク)との間に
設けられ、アドレスの変換機能を持つアドレス変換装置
及びその変換方法に関するものである。
【0002】
【従来の技術】近年、広域のデータ通信ネットワーク、
例えばインターネットの利用が急速に普及しており、イ
ンターネット経由で文字情報のほか、画像、音声など種
々の情報データを授受することが一般的に行われてい
る。このインターネットにおいて、IP(Internet Pro
tocol )に従ってデータの伝送が行われいる。ネットワ
ークに接続されている各端末機器、例えば、各コンピュ
ータにそれぞれIPアドレスが割り当てられているの
で、ネットワーク経由で通信を行う場合、このIPアド
レスによって目的の端末機器をネットワーク上で一意的
に特定することができる。
【0003】現在実際に使用されているIPアドレスは
32ビット長のデータからなり、近年のネットワーク利
用者の急激な増加に伴って各コンピュータに割り当てる
ことができるアドレスが不足している。このため、IP
アドレスを示すデータのビット長を拡張して、例えば、
アドレス区間を現在の32ビットから128ビットに拡
張する新しいIPv6(Internet Protocol version 6
)が提案されている。しかし、IPv6の普及には時
間が必要であるため、現状では、インターネットで用い
られているIPアドレス(以下、区別のためグローバル
アドレスと表記する)とは別に、各LAN(Local Area
Network)に接続されたコンピュータにはそれぞれのL
AN内部のみで使用できるアドレス(以下、これをロー
カルアドレスと表記する)が割り当てられている。
【0004】LANの内部において、それぞれの端末の
間に通信を行う場合、ローカルアドレスを用いて端末の
特定が行われる。このローカルアドレスは、グローバル
アドレスを意識することなく割り当てられているので、
グローバルアドレスと等しくなることがあり得る。この
ため、インターネットなどのグローバルネットワークに
接続しているホスト、例えば、WWW(World Wide We
b)サーバなどを利用する場合には、NAT(Network A
ddress Translator)と呼ばれるアドレス変換機能を持
つルータを介して通信を行う必要がある。
【0005】このNATは、ホスト間のコネクションを
通信時の両ホストのネットワークアドレスとポート番号
の組で認識を行う。これにより、端末のローカルアドレ
スをルータに割り当てられたグローバルアドレスに変
換、またはルータに割り当てられたグローバルアドレス
を端末のローカルアドレスに変換することで、ローカル
アドレスを持つ端末がグローバルアドレスを持つホスト
を経由してグローバルネットワークに接続されている端
末あるいは他のローカルネットワークに接続されている
端末と自由に通信することができる。
【0006】グローバルネットワーク、例えば、インタ
ーネットを用いてビデオ会議や、VoD(Video on Dem
and )など音声・動画像のデータで形成されたストリー
ムデータをリアルタイムに再生して見る場合、一般にパ
ケットの廃棄やデータエラー時に再送を行うTCP(Tr
ansmission Control Protocol )のようなトランスポー
トプロトコルは、リアルタイム性を保つことができない
ために使えない。また、TCPは一対一通信用のプロト
コルであり、複数の相手に音声・動画像のデータを送信
することはできない。そこで、一般にこのような用途に
はUDP(UserDatagram Protocol)が用いられる。
【0007】UDPは、アプリケーションのプロセスが
リモートマシン上の他のアプリケーションプロセスへデ
ータを転送することを、最小のオーバーヘッドで行える
ように設計されている。そのため、UDPのヘッダ部分
に入る情報は、送信元ポート番号、宛て先ポート番号、
データ長、チェックサムのみであり、TCPヘッダに存
在するようなパケットの順序を表す番号を入れるフィー
ルドなどがないため、ネットワークでパケットの順序が
狂ってしまった場合に、その順序を正しく入れ替えるな
どの処理ができない。また、送信時のタイムスタンプな
どの時間情報を入れるフィールドは、TCPにもUDP
にも存在しない。
【0008】そこで、RTP(Real-time Transport Pr
otocol)が考え出された。RTPは、インターネットな
どのグローバルネットワークにおいて、リアルタイムに
音声や動画を送受信するためのトランスポートプロトコ
ルである。
【0009】一般に、RTPはUDP上で用いられる。
RTPはヘッダにシーケンス番号、タイムスタンプなど
を入れて送信するため、受信側でパケットの順序訂正が
できるし、ネットワークでの伝搬遅延の揺らぎを吸収す
ることができるなど、様々な利点がある。例えば、Vo
IP(Voice over IP )の技術などで用いられている。
【0010】また、RTSP(Real-time Streaming Pr
otocol)はリアルタイムデータの伝送を制御するアプリ
ケーションレベルのプロトコルであり、これを用いるこ
とで、オーディオ/ビデオ(音声/動画)などの情報を
オンデマンドで伝送・制御することが可能となる。対象
となるデータは、リアルタイムに生成されるものと、予
め蓄積されたものの両方を含む。
【0011】RTSPは一つまたは複数の時間同期され
たオーディオ/ビデオなどのような連続メディアのスト
リームを確立して制御する。RTSP自体はストリーム
データを運ぶものではなく、ストリームデータの送出を
遠隔から制御するものである。言い換えると、RTSP
はマルチメディアデータ送出において、リモートコント
ロールの機能を持つプロトコルである。
【0012】RTSPによって制御されるストリームデ
ータの伝送には、RTPなどのトランスポートプロトコ
ルを使用することができるがRTSPの操作はメディア
データを運ぶためのトランスポート機構には依存しな
い。即ち、実際のストリームデータがUDPで伝送され
るときに、TCPコネクション上で制御データを交換す
るなどといったことが可能である。こうすることで、例
えばRTSPリクエストがメディアサーバに届かない場
合などにも、ストリームデータが伝送されることにな
る。
【0013】
【発明が解決しようとする課題】ところで、アドレス変
換機能を持つルータを経由してLANとインターネット
とでRTSPをやりとりする場合には、RTSPのメッ
セージ中にクライアント端末がストリームデータを受信
するためのポート番号などを記述されているため、デー
タを単純にNATを通して転送されるわけには行かず、
RTSPプロキシをルータ上に実装してそれがメッセー
ジの書き換えを行う必要がある。
【0014】この場合、このルータ自身がストリームデ
ータをインターネット側から受信するポート番号をRT
SPメッセージに入れてサーバ側に送ることにより、ス
トリームデータはRTSPプロキシが中継することで転
送できる。しかし、ストリームデータをRTSPプロキ
シが受け取り、また、クライアント側に送信するので、
ルータに負荷がかかり、データを高速に伝送できないと
いう不利益がある。
【0015】本発明は、かかる事情に鑑みてなされたも
のであり、その目的は、アドレス変換のために負荷をか
けることなくアドレスの変換を実現でき、高速なデータ
伝送を実現できるアドレス変換装置及びその変換方法を
提供することにある。
【0016】
【課題を解決するための手段】上記目的を達成するた
め、本発明のアドレス変換装置は、局地ネットワークと
広域ネットワークとの間に設けられ、上記局地ネットワ
ーク内に用いられる局地アドレスと上記広域ネットワー
ク内に用いられる広域アドレスとの変換を行うアドレス
変換装置であって、上記アドレス変換のための設定を行
う設定手段と、上記設定手段によって行われた設定に従
ってカーネル内においてアドレスの変換を行う変換手段
と、ネットワークから受信したデータを上記変換手段に
送信し、また、上記変換手段によってアドレス変換が行
われたデータをネットワークに送信する送受信手段とを
有する。
【0017】また、本発明では、好適には、上記設定手
段は、上記カーネルの階層より上位の階層にあるプロキ
シ内に設けられている。
【0018】また、本発明では、好適には、上記設定手
段は、上記カーネルの階層より上位の階層に設けられた
アドレス変換管理モジュールである。
【0019】また、本発明のアドレス変換方法は、局地
ネットワークと広域ネットワークとの間に設けられ、上
記局地ネットワーク内に用いられる局地アドレスと上記
広域ネットワーク内に用いられる広域アドレスとの変換
を行うアドレス変換方法であって、上記アドレス変換の
ための設定処理を行うステップと、上記ネットワークか
ら受信したデータを変換を行う変換部に転送するステッ
プと、上記変換部において、上記設定に従ってカーネル
内においてアドレスの変換を行うステップと、上記アド
レス変換が行われたデータをネットワークに送信するス
テップとを有する。
【0020】
【発明の実施の形態】図1は本発明に係るアドレス変換
装置を用いて構成されたネットワークシステムの一実施
形態を示す構成図である。図示のように、このネットワ
ークシステムには、グローバルネットワーク(WAN:
Wide Area Network )、例えば、インターネット10
と、ローカルネットワーク(LAN)20と、インター
ネット10とローカルネットワーク20との間に接続さ
れているルータ30が含まれている。
【0021】インターネット10に、ホストサーバ、例
えば、Webサーバ12が接続され、ローカルネットワ
ーク20には、クライアント22と24が接続されてい
る。インターネット10に接続されている端末、例え
ば、図1に示すホストサーバ12にグローバルなIPア
ドレス、即ち、グローバルアドレスが割り当てられ、ロ
ーカルネットワーク20に接続されている各クライアン
トには、それぞれローカルアドレスが割り当てられてい
る。グローバルアドレスは、インターネット10におい
て一意的に決められており、このグローバルアドレスに
よって、インターネット10に接続されているすべての
ホストサーバを一意的に識別することができる。一方、
ローカルアドレスは、ローカルネットワーク20の内部
において一意的に決められ、ローカルネットワーク20
において、このローカルネットワークアドレスによって
それぞれのクライアントが一意的に識別できる。
【0022】ルータ30には、グローバルアドレスとロ
ーカルアドレスの両方が割り当てられている。また、ロ
ーカルネットワーク20には、例えば、一つまたは複数
のグローバルアドレスが割り当てられている。ルータ3
0は、インターネット10のホストサーバとローカルネ
ットワークのクライアントとの間にパケット通信を行う
場合、アドレスの変換を行うNAT機能、即ちアドレス
変換機能を持つ。
【0023】本発明にかかるアドレス変換装置は、ルー
タにおいてこの変換機能を実現するための構成部分を抽
象化したものである。なお、ルータには上述したアドレ
ス変換機能のほか、パケット通信を行う場合データ伝送
の経路を決定する経路制御機能などをも有する。本発明
では、ルータのアドレス変換機能のみに注目し、経路制
御機能などについては特に言及しないので、以下の説明
では、ルータは即ち本発明のアドレス変換装置そのもの
と考えてよい。
【0024】図2は、ルータ30におけるアドレス変換
の概念を示す図である。図示のように、ここで、例え
ば、ローカルネットワーク20に接続されているクライ
アント22に割り当てられているアドレス(ローカルア
ドレス)をLAとし、ルータ30に割り当てられている
グローバルアドレスをGAとし、グローバルネットワー
ク10に接続されているホストサーバ12に割り当てら
れたグローバルアドレスをGBとする。
【0025】ネットワークを介して行われたデータ通信
が、例えば、一定のサイズに形成されたパケットを単位
に行われるとする。パケットの形成は、所定の通信プロ
トコルに従って行われる。各パケットの中に、パケット
情報の特性を示すヘッダ部分が含まれている。異なるプ
ロトコルに従って形成されたヘッダの内容も異なる。例
えば、TCPプロトコルに従ってデータ通信が行われる
場合、各パケットに図3に示すヘッダ部分が付加され
る。図3に示すように、TCPヘッダに、送信元のポー
ト番号と宛先のポート番号の他に、パケットの形成順番
を示すシーケンス番号、応答確認番号、送信データの誤
りを検出するチェックサムなどの情報が含まれる。
【0026】また、UDPプロトコルに従って形成され
たパケットのヘッダ情報が図4に示されている。図示の
ように、UDPヘッダには、送信元ポート、宛先ポート
の他に、セグメント長及びチェックサムが含まれてい
る。パケット通信が行われる場合、ヘッダ部分に続き、
情報データが伝送される。
【0027】上述したように、何れかのプロトコルによ
って生成されたパケットのヘッダ部分には、送信元と宛
先、即ち、受信側を識別する通信ポートの番号がかなら
ず含まれている。これらの情報に基づき、ネットワーク
システムにおいて、送信側と受信側をそれぞれ認識する
ことが可能である。各パケットのヘッダ部分にある送信
元IPアドレスと宛先IPアドレスは、それぞれ送信側
と受信側のマシンを特定し、送信元ポート番号と宛先ポ
ート番号はそれぞれ送信側と受信側のアプリケーション
を特定するための識別情報である。
【0028】図2において、一般性を失わせないため、
送信側を認識する認識情報、即ち、送信側アドレスをS
RC ADRとし、受信側を認識する認識情報、即ち受
信側アドレスをDST ADRとしてそれぞれを表記し
ている。ローカルネットワーク20のクライアント22
(以下、便宜上これをローカルクライアントという)か
らグローバルネットワーク10のホストサーバ12(以
下、便宜上これをグローバルサーバという)にデータが
送信される場合、送信情報に、送信側を識別するアドレ
ス、例えば図2に示すSRC ADRと受信側を識別す
るアドレス、例えば、図2に示すDST ADRが含ま
れる。ここで、SRC ADR=LA、また、DST
ADR=GBとなっている。
【0029】このデータがルータ30によって一旦受信
され、アドレスの変換が行われた後、宛先のグローバル
サーバ12に送信される。この場合のアドレス変換処理
として、図2に示すように、宛先を示すアドレスDST
ADRの内容が変換されず、送信元のアドレスSRC
ADRがローカルクライアント22のアドレスLAか
らルータ30に割り当てられたグローバルアドレスGA
に変換される。
【0030】一方、グローバルサーバ12からローカル
クライアント22にデータが送信された場合、図2に示
すように、SRC ADR=GB,DST ADR=G
Aとなっている。グローバルサーバ12によって送信さ
れたデータがルータ30に送られ、ルータ30はこのデ
ータを受信した後、アドレス変換を行う。ここで、送信
元を示すアドレスSRC ADRの内容が変換されず、
宛先を示すアドレスDST ADRがローカルクライア
ント22のアドレスLAに変換される。そして、ルータ
30によって、アドレス変換後のデータがローカルネッ
トワーク20を介して、ローカルクライアント22に送
信される。
【0031】インターネットなどのIPネットワークに
おいては、リアルタイムに音声や動画などのデータを伝
送するために、高速なデータ通信が要求されている。こ
のために考案されたのは、RTPである。RTPは、通
常UDPの上で用いられている。図5は、RTPのパケ
ットのデータ構成を示している。一般にはRTPはUD
P上に用いることができ、図5に示すように、RTPの
パケットの前にIPヘッダに続いてUDPヘッダが配置
されている。
【0032】RTPパケットは、RTPヘッダ部分とデ
ータ部分によって構成されている。RTPヘッダ部分に
は、バージョン情報V、パディング情報P、拡張ヘッダ
の有無を示す情報X、マーカービットM、シーケンス番
号、RTPタイムスタンプなどが含まれている。このた
め、受信側では、シーケンス番号、RTPタイムスタン
プに基づき、パケットの順序訂正ができるほか、ネット
ワークでの遅延の揺らぎを吸収することができる。RT
Pパケットのデータ部分は、例えば、MPEG2規格に
従って動画情報を符号化、さらに圧縮して生成したデー
タが含まれる。
【0033】受信側において、受信したRTPパケット
をそのヘッダ部分に含まれたシーケンス番号及びタイム
スタンプに従って順序を正しく再生し、例えば、MPE
G2の動画データの場合、受信データを復号、伸長処理
することによって、もとの動画情報を再生することがで
きる。このように、RTPに従って動画のほか、リアル
タイム性が要求される音声情報などのデータをも伝送で
きる。
【0034】また、IPネットワーク上でリアルタイム
のデータ伝送を制御するアプリケーションレベルのプロ
トコルRTSPがあり、これを用いることでオーディ
オ、ビデオなどの情報をオンデマンドで伝送・制御する
ことできる。図6は、RTSPを用いたメディアデータ
の伝送と制御システム及びその制御内容を示している。
【0035】図6(a)は、メディアデータの伝送と制
御を行うシステムの構成を示している。図示のように、
このシステムは、ネットワーク(図示せず、例えば、イ
ンターネットなどのIPネットワーク)を介して接続さ
れている再生端末とメディアサーバによって構成されて
いる。メディアサーバは、再生端末の指示に従って、音
声、動画などのメディア情報に基づいて生成されたメデ
ィアデータを提供し、再生端末はメディアサーバによっ
て提供されたメディアデータを音声または画像情報に変
換して、再生する。
【0036】図6(b)はメディアデータの伝送制御メ
ソッドを示している。なお、伝送制御メソッドは、例え
ば再生端末側によってメディアサーバに送信され、再生
動作を指示する制御命令に相当するものである。図示の
ように、メディアデータの伝送制御のメソッドには、デ
ータ伝送のリソースを確保する“SETUP”メソッ
ド、確保されたリソースを用いてメディアデータ送出の
開始を指示する“PLAY”メソッド、データの送出を
一時停止する“PAUSE”メソッド、リソースの開放
を指示する“TEARDOWN”メソッド、及び様々な
オプション機能提供する“OPTION”メソッドなど
がある。
【0037】RTSP自体はメディアデータからなるス
トリームデータを伝送するものではなく、ストリームデ
ータの送出を遠隔から制御するものである。即ち、RT
SPは、メディアデータの伝送において、リモートコン
トロールの機能を持つプロトコルである。
【0038】RTSPによって制御されるストリームデ
ータの伝送には、RTPなどのトランスポートプロトコ
ルを使用することができる。RTSPの操作はメディア
データを運ぶためのトランスポート機構には依存しな
い。即ち、実際のストリームデータがUDPで伝送され
るときに、TCPコネクション上で制御データを交換す
ることができる。しかし、アドレス変換機能を持つルー
タを経由してローカルネットワークとインターネットな
どのグローバルネットワークとの間でデータ伝送を行う
場合に、RTSPのメッセージ中にクライアント端末が
ストリームデータを受信するためのポート番号などが記
述されている。このため、データが単純にNATを通過
することができず、例えばRTSPプロキシをルータ上
に実装してそれがメッセージの書き換えを行う必要があ
る。
【0039】図7はRTSPプロキシがない場合のRT
SP伝送におけるデータの流れ及び送受信されるRTS
Pメッセージを示している。図7(a)は、RTSPプ
ロキシがない場合において、RTSP伝送を行う場合の
データの流れを示している。図示のように、RTSPサ
ーバ100(S)とRTSPクライアント200(C)
との間に、RTSPメッセージ、例えば図6(b)に示
すRTSPメソッドが送受信される。そして、RTSP
サーバ100からRTSPクライアント200にストリ
ームデータが送信される。
【0040】図7(b)に、データ伝送開始時にRTS
Pクライアント200とRTSPサーバ100との間に
授受されたセットアップメッセージを示している。図示
のように、まず、クライアント200からサーバ100
に“SETUP”メソッドが送信され、それに伴ってデ
ータ送信を要求するファイル名、伝送に用いられるRT
SPのバージョンなども送信される。そして、シーケン
ス番号(CSeq)とデータ伝送情報(Transpo
rt)が送信される。データ伝送情報には、伝送用プロ
トコル、データ伝送方式(unicast:一対一通
信)のほか、RTSPクライアント200が使用する通
信ポートの番号が含まれる。
【0041】図7(b)に示すように、通信ポート番号
9000−9001がRTSPサーバ100に通知され
る。ここで、通信ポート番号9000は、RTPに基づ
き、映像、音声などのメディアデータからなるストリー
ムデータを受信するために使用される通信ポートの番号
を示し、通信ポート番号9001は、RTCP(RTPcon
trol protocol)に基づきRTPデータの状態などを通
知するためのポート番号を示している。
【0042】RTSPクライアント200からメッセー
ジを受け取ったあと、RTSPサーバ100からRTS
Pクライアント200に応答メッセージが送信される。
図7(b)に示すように、この応答メッセージには、ま
ず、RTSPバージョンと確認情報(200 OK)が
含まれ、そして、シーケンス番号、セッション番号のほ
かに、伝送情報が含まれる。
【0043】伝送情報には、伝送用プロトコル、データ
伝送方式(unicast:一対一通信)のほか、RT
SPクライアント200の通信ポート番号及びRTSP
サーバ100が使用する通信ポートの番号が含まれる。
RTSPクライアント200の通信ポート番号9000
−9001は、RTSPクライアント200から受け取
った通信ポート番号である。RTSPサーバ100が使
用する通信ポート番号5000−5001がRTSPク
ライアント200に通知される。通信ポート番号500
0は、RTPプロトコルに基づき伝送制御を行うメッセ
ージを送受信するために使用される通信ポートの番号を
示し、通信ポート番号5001は、RTSPプロトコル
に基づきメディアデータからなるストリームデータを送
信するためのポート番号を示している。
【0044】図7(b)に示すメッセージの送受信によ
って、RTSPクライアント200とRTSPサーバ1
00間にメディアデータを伝送するために必要リソース
が確立される。RTSPクライアント200から送信さ
れた指示に従って、RTSPサーバ100から要求され
たメディアデータが設定された通信ポートを介してRT
SPクライアント200に送信される。
【0045】図7に示すメディアデータの伝送制御例で
は、RTSPクライアント200とRTSPサーバ10
0が同じネットワークに接続されている。このため、R
TSPクライアント200とRTSPサーバ100との
間に、アドレスの変換を行う必要がない。しかし、RT
SPクライアント200とRTSPサーバ100とが異
なるネットワークに接続されている場合、例えば、RT
SPサーバ100がインターネットなどのグローバルネ
ットワークに接続され、RSTPクライアント200が
ローカルネットワークに接続されている場合には、RT
SPクライアント200にローカルネットワーク内のみ
に一意的に識別可能なローカルアドレスが割り当てら
れ、RTSPサーバ100にはグローバルネットワーク
に一意的に識別可能なグローバルアドレスが割り当てら
れている。このため、RTSPクライアント200とR
TSPサーバ100との間にデータ伝送を行う場合、ア
ドレスの変換を行う必要がある。
【0046】図8は、RTSPクライアント200とR
TSPサーバ100との間にルータ300(R)を介在
してデータの伝送を行うシステムの一例を示している。
RTSPサーバ100はインターネットなどのグローバ
ルネットワークを介してルータ300に接続され、RT
SPクライアント200は、ローカルネットワークを介
してルータ300に接続されている。RTSPサーバ1
00にグローバルアドレスが割り当てられ、RTSPク
ライアント200にローカルアドレスが割り当てられて
いる。そして、ルータ300にはグローバルアドレスと
ローカルアドレス両方が割り当てられている。
【0047】ルータ300は、ローカルアドレスからグ
ローバルアドレス、あるいはグローバルアドレスからロ
ーカルアドレスといったアドレス変換を行う。図8
(b)は、データ伝送開始前にRTSPクライアント2
00とルータ300、及びルータ300とRTSPサー
バ100との間のセットアップメッセージの授受を示し
ている。以下、図8(a)及び図8(b)を参照しつ
つ、データ伝送開始前のセットアップ処理を説明し、ル
ータ300のアドレス変換機能について説明する。
【0048】セットアップ開始時に、まず、RTSPク
ライアント200からルータ300にセットアップメッ
セージが送信される。図8(b)に示すように、RTS
Pクライアント200からルータ300に、まず、“S
ETUP”メソッドが送信され、それに伴って要求され
るメディアデータのファイル名及びRTSPバージョン
情報が送信される。そして、シーケンス番号に続き、デ
ータ伝送情報が送信される。このデータ伝送情報には、
伝送用プロトコル、データ伝送方式(unicast:
一対一通信)のほか、RTSPクライアント200が使
用する通信ポートの番号が含まれる。
【0049】図8(b)に示すように、通信ポート番号
9000−9001がルータ300に通知される。ここ
で、通信ポート番号9000は、RTPに基づき映像、
音声などのメディアデータからなるストリームデータを
受信するために使用される通信ポートの番号を示し、通
信ポート番号9001は、RTCPに基づきRTPデー
タの状態などを通知するためのポート番号を示してい
る。
【0050】ルータ300は、RTSPクライアント2
00からセットアップメッセージを受け取ったあと、ま
ず、RTSPサーバ100に“SETUP”メソッドを
送信する。そして、RTSPクライアント200によっ
て要求されたデーターファイル名、及び通信に用いられ
るプロトコルのバージョン情報を送信する。続いて、シ
ーケンス番号とデータ伝送情報が送信される。データ伝
送情報には、伝送用プロトコル、データ伝送方式(un
icast:一対一通信)のほか、ルータ300が使用
する通信ポートの番号が含まれる。
【0051】図8(b)に示すように、通信ポート番号
12000−12001がRTSPサーバ100に通知
される。ここで、通信ポート番号12000は、RTP
に基づき映像、音声などのメディアデータからなるスト
リームデータを受信するために使用される通信ポートの
番号を示し、通信ポート番号12001は、RTCPに
基づきRTPデータの状態などを通知するためのポート
番号を示している。
【0052】RTSPサーバ100がルータ300から
のセットアップメッセージを受信したあと、ルータ30
0に応答メッセージを送信する。図示のように、まず、
RTSPサーバ100からルータ300に、RTSPバ
ージョン情報と確認情報(200 OK)が送信され
る。続いて、シーケンス番号、セッション番号のほか
に、伝送情報が送信される。
【0053】伝送情報には、伝送用プロトコル、データ
伝送方式(unicast:一対一通信)のほか、RT
SPクライアントのポート番号とRTSPサーバ100
が使用する通信ポートの番号が含まれる。RTSPクラ
イアントの通信ポート番号として、ルータ300から受
信した通信ポート番号12000−12001が送信さ
れる。そして、RTSPサーバ100の通信ポート番号
5000−5001がルータ300に通知される。ここ
で、通信ポート番号5000は、RTPに基づき、メデ
ィアデータからなるストリームデータを送信するための
ポート番号を示し、通信ポート番号5001は、RTC
Pに基づきRTPデータの状態などを通知するためのポ
ート番号を示している。
【0054】ルータ300は、RTSPサーバ100か
ら応答メッセージを受信したあと、RTSPクライアン
ト200にこの応答メッセージを転送する。図示のよう
に、まず、ルータ300からRTSPクライアント20
0に、RTSPバージョン情報と確認情報(200 O
K)が送信される。続いて、シーケンス番号、セッショ
ン番号のほかに、伝送情報が送信される。
【0055】伝送情報には、伝送用プロトコル、データ
伝送方式(unicast:一対一通信)のほか、RT
SPクライアントのポート番号とRTSPサーバ100
が使用する通信ポートの番号が含まれる。RTSPクラ
イアントの通信ポート番号として、RTSPクライアン
ト200から受信した通信ポート番号9000−900
1が送信される。そして、ルータ300がRTSPクラ
イアント200との通信に割り当てられた通信ポート番
号10000−10001がRTSPクライアント20
0に通知される。通信ポート番号10000は、RTP
に基づきメディアデータからなるストリームデータを送
信するために使用される通信ポートの番号を示し、通信
ポート番号10001は、RTCSPに基づきRTPデ
ータ野状態などを通知するためのポート番号を示してい
る。
【0056】上述したように、RTSPクライアント2
00とルータ300、そして、ルータ300とRTSP
サーバ100との間にメッセージの送受信を行うことに
よって、セットアップの処理が実現され、RTSPサー
バ100からRTSPクライアント200にメディアデ
ータの送信に必要なリソースを確保できる。
【0057】そして、セットアップ処理のあと、RTS
Pサーバ100は、RTSPクライアント200からの
指示に従ってメディアデータをルータ300を介してR
TSPクライアント200に送信する。これによって、
図6に示すように、再生端末の利用者はネットワークを
介して遠隔地にあるRTSPサーバに保持されているメ
ディアデータをネットワークを介してリアルタイムで取
得でき、手元の再生端末でメディアデータを復号、伸長
などの処理をして、音声または動画情報を再生すること
ができる。なお、RTSPサーバ100から送信される
メディアデータは、データ蓄積装置によって蓄積媒体、
例えば、ハードディスク、または光ディスクなどの媒体
から読み出した蓄積データでもよいし、実際に撮像装置
などより取得した実時間情報、いわゆるライブ情報から
生成されたデータでもよい。
【0058】次に、ルータ300におけるアドレス変換
についてさらに詳しく説明する。図9は、一般にルータ
300におけるアドレス変換処理時のデータの経路を示
している。図示のように、メディアデータからなるスト
リームデータがネットワークインターフェースによって
受信され、カーネルを介してユーザ空間にあるRTSP
プロキシに転送される。そして、RTSPプロキシにお
いてアドレス情報が書き換えられたあと、カーネルを介
してネットワークインターフェースに転送される。そし
て、ネットワークインターフェースによって次のルータ
または目的のサーバあるいは端末に転送される。
【0059】上述したアドレス変換処理では、ストリー
ムデータがカーネル空間からユーザ空間まで上げられ
る。ユーザ空間において、所定のアプリケーション、図
9の場合RTSPプロキシによってIPアドレスとポー
ト番号の付け替えが行われる。このため、アドレス変換
を行うルータ300の負荷が大きくなり、データを高速
に転送することが困難であった。
【0060】本発明では、ルータにおけるアドレス変換
処理は、RTSPプロキシによって実現するのではな
く、ルータ上のプロキシなどのモジュールが直接、また
はNAT管理モジュールを経由して、RTPなど高速に
伝送したいデータに関するNAT設定をすることで、伝
送データをRTSPプロキシなどのユーザ空間に上げる
ことなく、カーネル内でアドレス変換を行い、転送する
ことによって、アドレス変換によるルータの処理負荷の
軽減をはかり、高速なデータ伝送を実現する。
【0061】図10は、本発明におけるルータのアドレ
ス変換処理時のデータの流れを示している。図示のよう
に、ルータ300aにおいて、ユーザ空間にあるRTS
Pプロキシ310が直接カーネル330に対してアドレ
ス変換処理の設定(NAT設定)を行い、またはRTS
Pプロキシ310がNAT管理モジュール320を介し
てカーネル330に対してNAT設定を行う。この設定
に基づき、カーネル330によって、ネットワークイン
ターフェース340から受け取ったデータストリームデ
ータに対して、アドレス変換が行われる。そして、アド
レス変換されたストリームデータがカーネル330内で
転送され、ネットワークインターフェース340を介し
て宛先となるクライアント、サーバ、あるいは次の中継
ルータに出力される。
【0062】図11は、図10に示すルータ300aに
おけるアドレス変換処理のフローチャートである。以
下、図10及び図11を参照しつつ、本発明のアドレス
変換装置(ルータ)におけるアドレス変換処理について
説明する。
【0063】まず、RTSPクライアント200からル
ータ300aに“SETUP”メソッドで始まるセット
アップメッセージが送られる。これを受けて、ルータ3
00aでは、受信したメッセージからRTSPクライア
ント200のストリームデータ受信ポートの番号が取得
される(ステップS1)。
【0064】次に、ルータ300aにおいて、RTSP
サーバからストリームデータを受信するための受信ポー
トが作成され、当該受信ポートの番号が確定される(ス
テップS2)。そして、当該受信ポート番号を用いて、
RTSPクライアント200から受信したセットアップ
メッセージに対して、ポート番号の書き換えなどのアド
レス変換処理を行って、RTSPサーバ100に対し
て、“SETUP”で始まるセットアップメッセージを
送信する(ステップS3)。
【0065】RTSPサーバ100において、ルータ3
00aからのセットアップメッセージを受信したとき、
応答メッセージ“SETUP REPLY”がルータ3
00aに送信される。ルータ300aにおいて、RTS
Pサーバ100からのメッセージを受信すると、このメ
ッセージからRTSPサーバ100に割り当てられたス
トリームデータ送信ポートの番号が取得される(ステッ
プS4)。
【0066】次いで、ルータ300aでは、RTSPク
ライアント200にストリームデータを送信するための
送信ポートが作成される(ステップS5)。
【0067】次に、ルータ300aにおいて、カーネル
に対してアドレス変換のための設定(NATの設定)が
行われる。このアドレス変換は、RTSPプロキシによ
ってカーネルに対して直接行うこともできるし、また、
NAT管理モジュールを介して間接的に行うこともでき
る(ステップS6)。
【0068】そして、ルータ300aでは、RTSPサ
ーバ100から受信したメッセージに対して、書き換え
処理が行われる(ステップS7)。この書き換えによっ
て、RTSPサーバ100のストリームデータ送信ポー
ト番号が、ルータ300aに作成されたストリームデー
タ送信ポートの番号に書き換えられる。この書き換えら
れたメッセージがルータ300aによって、RTSPク
ライアント200に送信される。
【0069】次に、RTSPクライアント200から、
指定したファイルの内容を再生するメッセージ、例えば
“PLAY”メソッドを含むメッセージが送信される。
ルータ300aでは、このメッセージを受信すると、そ
のままRTSPサーバ100に転送される(ステップS
8)。
【0070】RTSPサーバ100において、再生メッ
セージを受信すると、ルータ300aに対して応答メッ
セージ(“PLAY REPLY”)が送信される。ル
ータ300aでは、このメッセージを受信してそのまま
RTSPクライアント200に転送される(ステップS
9)。
【0071】そして、RTSPサーバ100は、ストリ
ームデータをセットアップのときに作成された送信ポー
トから出力する。このストリームデータはルータ300
aに送信され、ルータ300aにおいて、カーネル内に
おいてアドレスの変換、例えばポート番号の書き換えが
行われ、変換したストリームデータがRTSPクライア
ント200に送信される(ステップS10)。
【0072】以上説明したように、ルータ300aのア
ドレス変換及びデータ転送処理において、ストリームデ
ータをユーザ空間に上げずに、カーネル内で処理され、
また転送されることによって、高速なデータ転送を実現
でき、また、ルータに負荷をかけずにストリームデータ
の転送を実現できる。
【0073】なお、上述した例は、RTSPプロキシに
ついて説明したが、本発明のアドレス変換装置は、RT
SPプロキシの他に、例えば、FTP(File Transfer
Protocol)において、グローバルネットワーク、例え
ば、インターネット側からローカルネットワーク内のF
TPサーバにアクセスしたい場合などにも応用すること
ができる。
【0074】図12は、FTPの動作モデルを示してい
る。図示のように、FTPでは、標準のFTPコマンド
及び応答メッセージを転送する制御コネクションと、実
際にファイルデータを転送するデータコネクションの2
本のコネクションを用いてファイルの転送が行われる。
【0075】図13は、グローバルネットワークに接続
されているFTPサーバ110と、ローカルネットワー
クに接続されているFTPクライアント210と、ルー
タ310によって構成されているファイル転送システム
を示している。上述したRTSPの場合と同様、端末の
ポート番号を通知する場合には、ルータ310にあるF
TPプロキシなどが必要となる。このとき、ルータ31
0上にFTPプロキシを置き、制御コネクションのデー
タがFTPプロキシ経由で転送される。
【0076】データコネクションにおいてファイル転送
を開始する前に、予めFTPプロキシによって直接また
は間接的にNATの設定を行うことによって、データコ
ネクションのデータ転送は、FTPプロキシを通過させ
ることなく、カーネル内においてアドレス変換され、転
送されるので、ルータ310においてアドレス変換によ
る負荷の増加を回避でき、高速のデータ転送を実現でき
る。
【0077】
【発明の効果】以上説明したように、本発明のアドレス
変換装置及びその変換方法によれば、ネットワークを経
由してデータ伝送を行う場合において、RTPなどのデ
ータをルータのユーザ空間に上げることなく、カーネル
内でアドレスの変換が行われ、転送される。これによっ
て、アドレス変換によるルータの処理負荷を低減でき、
高速なデータ転送を実現できる利点がある。
【図面の簡単な説明】
【図1】本発明に係るアドレス変換を装置を含むネット
ワークシステムの一構成例を示す構成図である。
【図2】ルータにおけるアドレス変換処理の概念を示す
図である。
【図3】TCPパケットの構成を示す図である。
【図4】UDPパケットの構成を示す図である。
【図5】RTPパケットの構成を示す図である。
【図6】RTSPを用いたメディアデータの伝送及びそ
の制御を示す図である。
【図7】RTSPプロキシがない場合のRTSP伝送に
おけるデータの流れ及びセットアップメッセージを示す
図である。
【図8】RTSPプロキシによるRTSP伝送における
データの流れ及びセットアップメッセージを示す図であ
る。
【図9】ルータにおける一般的なデータ転送を示す図で
ある。
【図10】本発明においてルータのカーネル内における
アドレス変換及びデータ転送を示す図である。
【図11】ルータにおけるアドレス変換及びデータ転送
処理のフローチャートである。
【図12】FTPの動作モデルを示す図である。
【図13】本発明を応用したFTPファイル転送システ
ムにおけるアドレス変換及びデータ転送処理を示す図で
ある。
【符号の説明】
10…インターネット、12…サーバ、20…ローカル
ネットワーク、22,24…クライアント、30…ルー
タ、100…RTSPサーバ、110…FTPサーバ、
200…RTSPクライアント、210…FTPクライ
アント、300,300a,310…ルータ。

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】局地ネットワークと広域ネットワークとの
    間に設けられ、上記局地ネットワーク内に用いられる局
    地アドレスと上記広域ネットワーク内に用いられる広域
    アドレスとの変換を行うアドレス変換装置であって、 上記アドレス変換のための設定を行う設定手段と、 上記設定手段によって行われた設定に従ってカーネル内
    においてアドレスの変換を行う変換手段と、 ネットワークから受信したデータを上記変換手段に送信
    し、また、上記変換手段によってアドレス変換が行われ
    たデータをネットワークに送信する送受信手段とを有す
    るアドレス変換装置。
  2. 【請求項2】上記設定手段は、上記カーネルの階層より
    上位の階層にあるプロキシ内に設けられている請求項1
    記載のアドレス変換装置。
  3. 【請求項3】上記設定手段は、上記カーネルの階層より
    上位の階層に設けられたアドレス変換管理モジュールで
    ある請求項1記載のアドレス変換装置。
  4. 【請求項4】局地ネットワークと広域ネットワークとの
    間に設けられ、上記局地ネットワーク内に用いられる局
    地アドレスと上記広域ネットワーク内に用いられる広域
    アドレスとの変換を行うアドレス変換方法であって、 上記アドレス変換のための設定処理を行うステップと、 上記ネットワークから受信したデータを変換を行う変換
    部に転送するステップと、 上記変換部において、上記設定に従ってカーネル内にお
    いてアドレスの変換を行うステップと、 上記アドレス変換が行われたデータをネットワークに送
    信するステップとを有するアドレス変換方法。
  5. 【請求項5】上記設定処理は、上記カーネルの階層より
    上位の階層にあるプロキシによって行われる請求項4記
    載のアドレス変換方法。
  6. 【請求項6】上記設定処理は、上記カーネルの階層より
    上位の階層に設けられたアドレス変換管理モジュールに
    よって行われる請求項4記載のアドレス変換方法。
JP2000342147A 2000-11-09 2000-11-09 アドレス変換装置及びその方法 Pending JP2002152256A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000342147A JP2002152256A (ja) 2000-11-09 2000-11-09 アドレス変換装置及びその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000342147A JP2002152256A (ja) 2000-11-09 2000-11-09 アドレス変換装置及びその方法

Publications (1)

Publication Number Publication Date
JP2002152256A true JP2002152256A (ja) 2002-05-24

Family

ID=18816760

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000342147A Pending JP2002152256A (ja) 2000-11-09 2000-11-09 アドレス変換装置及びその方法

Country Status (1)

Country Link
JP (1) JP2002152256A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011071745A (ja) * 2009-09-25 2011-04-07 Brother Industries Ltd 通信方法、通信システム、端末装置
JP2011103566A (ja) * 2009-11-11 2011-05-26 Hitachi Ltd ゲートウェイ装置およびポート番号割当て方法
CN106130908A (zh) * 2016-06-03 2016-11-16 北京小米移动软件有限公司 报文传输方法和装置、智能终端

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011071745A (ja) * 2009-09-25 2011-04-07 Brother Industries Ltd 通信方法、通信システム、端末装置
JP2011103566A (ja) * 2009-11-11 2011-05-26 Hitachi Ltd ゲートウェイ装置およびポート番号割当て方法
CN106130908A (zh) * 2016-06-03 2016-11-16 北京小米移动软件有限公司 报文传输方法和装置、智能终端
CN106130908B (zh) * 2016-06-03 2019-08-06 北京小米移动软件有限公司 报文传输方法和装置、智能终端

Similar Documents

Publication Publication Date Title
US7447775B1 (en) Methods and apparatus for supporting transmission of streaming data
US7720983B2 (en) Fast startup for streaming media
US20190379735A1 (en) Method and apparatus for multimedia communication, and storage medium
US7675939B2 (en) Transmission apparatus and method, reception apparatus and method, communication system, recording medium, and program
US7840651B2 (en) Client-server emulation supporting multicast transmissions of media objects
US8307107B2 (en) Methods and apparatuses to extend header for transferring data
WO2007093127A1 (fr) Système, procédé et dispositif de configuration d'une session média interactive d'après un sous-système ip multimédia
US20080082674A1 (en) Method, Network and Network Proxy for Transmitting Information
CN113872916A (zh) 数据重传方法、网络设备和计算机可读存储介质
US20130117460A1 (en) Data management methods for use in a network system and network systems using the same
US20110295943A1 (en) Data processing system and method
CN107819809A (zh) 对内容进行同步操作的方法及装置
US7543072B1 (en) Method and system capable of performing a data stream over multiple TCP connections or concurrent interleave of multiple data streams over multiple TCP connections
EP2211507B1 (en) Method, device and system for processing real time streaming protocol
CN109361671A (zh) 一种基于sip协议的流媒体传输架构方法
CN110519331B (zh) 一种视联网资源处理方法及装置
JP2008193500A (ja) データ送信装置及びデータ中継装置
JP2002152256A (ja) アドレス変換装置及びその方法
JP4078594B2 (ja) 情報処理装置および方法、並びにプログラム
JP4617474B2 (ja) データ中継装置およびデータ中継システム
CN101499968A (zh) 一种多媒体数据的传输方法及系统
CN110719435B (zh) 一种进行终端会议的方法和系统
JP2005210352A (ja) Ipアドレス変換装置及び変換方法
JP2002152307A (ja) データ受信装置、データ送信装置、データ通信システム、データ受信方法、データ送信方法、データ通信方法、並びにプログラム記憶媒体
KR102272335B1 (ko) Udp기반의 멀티캐스트로 컨텐츠를 제공하는 방법, 서버 그리고 사용자 단말