JP2009071538A - Image distribution system - Google Patents

Image distribution system Download PDF

Info

Publication number
JP2009071538A
JP2009071538A JP2007237157A JP2007237157A JP2009071538A JP 2009071538 A JP2009071538 A JP 2009071538A JP 2007237157 A JP2007237157 A JP 2007237157A JP 2007237157 A JP2007237157 A JP 2007237157A JP 2009071538 A JP2009071538 A JP 2009071538A
Authority
JP
Japan
Prior art keywords
client
server
information
image
streaming
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
JP2007237157A
Other languages
Japanese (ja)
Inventor
Tomoya Saito
智哉 齋藤
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2007237157A priority Critical patent/JP2009071538A/en
Publication of JP2009071538A publication Critical patent/JP2009071538A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image distribution system distributing streaming images in the state of reducing load on a network. <P>SOLUTION: The image distribution system comprises: a video distribution server for transmitting the streaming images through the network 3; a plurality of clients (2A-2D) having a relay function of transferring the images received through the network 3; and an enhanced DNS server for selecting one suitable for image transmission out of the video distribution server or the clients on the basis of the information of the tree structure of streaming distribution and returning the information for an inquiry from the client. When the information returned from the extension DNS server is the information of the video distribution server, the client which made the inquiry directly receives the images from the video distribution server. When the returned information is the information of the client, the images are transferred from the client. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は画像配信システムに関し、特に複数のクライアントに対してストリーミング画像を配信する画像配信システムに関する。   The present invention relates to an image distribution system, and more particularly to an image distribution system that distributes streaming images to a plurality of clients.

従来より、ビデオカメラ及びプロジェクタが接続されているサーバ(例えばコンピュータ)と、ネットワークを介して当該サーバに接続される遠隔地のクライアント(例えばコンピュータ)とを備え、サーバ側に存在する診断対象物を、クライアント側で診断する遠隔診断システムが知られている(例えば、特許文献1参照)。   2. Description of the Related Art Conventionally, a server (for example, a computer) to which a video camera and a projector are connected and a remote client (for example, a computer) connected to the server via a network are provided. A remote diagnosis system that performs diagnosis on the client side is known (see, for example, Patent Document 1).

この遠隔診断システムでは、サーバは、サーバに接続されているビデオカメラにより撮影される対象物の撮影画像(例えば、ストリーミング画像)を、ネットワークを介してクライアントに送信するものであり、クライアントは、表示装置の表示画面に立体物を含む撮影画像を表示し、当該表示画面上にアノテーション画像(線、図形、文字)などが書き込まれると、当該アノテーション画像をネットワークを介してサーバに送信するものである。また、サーバは受信したアノテーション画像をプロジェクタに送信し、プロジェクタは受信したアノテーション画像を対象物を含む投影領域の適切な位置(これは、クライアントが、撮影画像の範囲内でアノテーション画像を書き込んだ位置に対応する)に投影する。   In this remote diagnosis system, a server transmits a captured image (for example, a streaming image) of an object captured by a video camera connected to the server to a client via a network. A captured image including a three-dimensional object is displayed on the display screen of the apparatus, and when an annotation image (line, figure, character) or the like is written on the display screen, the annotation image is transmitted to the server via the network. . In addition, the server transmits the received annotation image to the projector, and the projector transmits the received annotation image to an appropriate position of the projection area including the target object (this is the position where the client wrote the annotation image within the captured image range). Project to the corresponding).

このような遠隔診断システムでは、例えば、サーバから配信される画像(ストリーミング画像)をユーザがクライアントを介して観察し、各クライアントのユーザ間でコミュニケーションを図るという運用が想定されている。しかるに、同時に接続しようとするクライアントが増えれば増えるほど回線に負担がかかるため、安定的な通信を行えなくなるという問題がある。   In such a remote diagnosis system, for example, it is assumed that a user observes an image (streaming image) distributed from a server through a client and communicates between users of each client. However, there is a problem in that stable communication cannot be performed because the load on the line increases as the number of clients attempting to connect simultaneously increases.

このような問題を解決するための技術として、最近では、複数のノードへデータを配信する際に、同一経路上でのデータ配信を集約してネットワークへの負荷を分散するもの(マルチキャスト)や、インターネット上において、複数のサーバを分散して配置しておき、ネットワーク識別子(FQDN:Fully Qualified Domain Name)からネットワーク識別番号(IPアドレス)を検索する際に、クライアントのIPアドレスに基づいてクライアントを近隣のサーバに誘導するものや、同一のIPアドレスのサーバをインターネット上に複数配置し、近隣のネットワークへサーバへの経路情報を伝播することで、クライアントを最短のサーバへ誘導するもの(BGP(Border Gateway Protocol) Anycast技術)、などの技術が出現している   As a technique for solving such a problem, recently, when distributing data to a plurality of nodes, the data distribution on the same route is aggregated to distribute the load on the network (multicast), A plurality of servers are distributed on the Internet, and when searching for a network identification number (IP address) from a network identifier (FQDN: Fully Qualified Domain Name), the client is located in the neighborhood based on the client's IP address. That directs the client to the shortest server by deploying multiple servers with the same IP address on the Internet and propagating route information to the server to neighboring networks (BGP (Border Technology such as Gateway Protocol) Anycast technology) has emerged

特開2005−33756号公報JP 2005-33756 A

しかしながら、上記遠隔診断システムに、マルチキャストを採用する場合、全ての機器(ルータなど)をマルチキャストに対応させておく必要があるため、マルチキャストに対応する機器を用意するためにコスト高を招くおそれがある。また、複数のサーバを分散して配置する方法においても、インターネット上に複数のサーバを用意する必要があるため、コスト高を招くおそれがある。また、BGP Anycast技術は、インターネットのように大規模なTCP/IPネットワークにおいて経路情報を交換するためのプロトコルであるBGPによって運用されているネットワーク環境では適用できるが、現段階でのイントラネットではBGPによる運用がなされていないため、例えば、上記遠隔診断システムのネットワークがイントラネットである場合に、当該技術を遠隔診断システムに適用するのは困難であるものと考えられる。   However, when multicast is adopted in the remote diagnosis system, it is necessary to make all devices (such as routers) compatible with multicast, so there is a risk of incurring high costs for preparing devices compatible with multicast. . Also in the method of arranging a plurality of servers in a distributed manner, it is necessary to prepare a plurality of servers on the Internet, which may increase the cost. In addition, BGP Anycast technology can be applied in a network environment operated by BGP, which is a protocol for exchanging route information in a large-scale TCP / IP network such as the Internet, but in the current intranet, it is based on BGP. Since the operation is not performed, for example, when the network of the remote diagnosis system is an intranet, it is considered difficult to apply the technology to the remote diagnosis system.

また、CDN(Contents Delivery Network)を用いたり(例えば、特開2003−152785号公報参照)、P2P(Peer to Peer)を用いたりすることも考えられるが、これらの方法は、ストリーミング画像のリアルタイム配信にはあまり適していないため、上記のように、各クライアント間でリアルタイムに配信される画像を見ながらコミュニケーションを図る遠隔診断システムに、これらの技術を適用するのは難しいと考えられる。   Further, it is conceivable to use a CDN (Contents Delivery Network) (see, for example, Japanese Patent Laid-Open No. 2003-152785) or P2P (Peer to Peer). As described above, it is considered difficult to apply these techniques to a remote diagnosis system that communicates while viewing images distributed in real time between clients.

そこで本発明は上記の課題に鑑みてなされたものであり、ネットワークへの負担を軽減した状態で、ストリーミング画像の配信を行うことが可能な画像配信システムを提供することを目的とする。   Accordingly, the present invention has been made in view of the above problems, and an object of the present invention is to provide an image distribution system capable of distributing streaming images while reducing the burden on the network.

上記課題を解決するために、本発明は、ネットワークに接続され、該ネットワークを介してストリーミング画像を送信する第1サーバと、前記ネットワークに接続され、該ネットワークを介して受信したストリーミング画像を転送する中継機能を有する、複数のクライアントと、前記ネットワークに接続され、前記クライアントからの問い合わせに対し、前記ストリーミング配信のツリー構造の情報に基づいて、前記第1サーバ又は前記ストリーミング画像を現に受信しているクライアントの中から、前記問い合わせを行ったクライアントに対する前記ストリーミング画像の送信に適したものを選択して、その情報を返信する第2サーバと、を備え、前記問い合わせを行ったクライアントは、前記第2サーバから返信された情報が、前記第1サーバの情報であった場合には、前記第1サーバから前記ストリーミング画像を直接受信し、前記第2サーバから返信された情報が、前記複数のクライアントのいずれかの情報であった場合には、そのクライアントから前記ストリーミング画像を受信することを特徴とする画像配信システムである。   In order to solve the above-mentioned problem, the present invention is connected to a network and transmits a streaming image received via the network connected to the first server that transmits the streaming image via the network. A plurality of clients having a relay function, connected to the network, and actually receiving the first server or the streaming image in response to an inquiry from the client based on the tree structure information of the streaming distribution A second server that selects a client suitable for transmission of the streaming image to the client that made the inquiry and sends back the information, and the client that made the inquiry The information returned from the server is the first information. If the information is a server information, the streaming image is directly received from the first server, and the information returned from the second server is one of the plurality of clients. An image distribution system for receiving the streaming image from the client.

これによれば、クライアントから第2サーバに対する問い合わせが行われると、第2サーバは、ストリーミング配信のツリー構造の情報に基づいて、第1サーバ又は現にストリーミング画像を受信しているクライアントの中から、問い合わせを行ったクライアントに対するストリーミング画像の送信に適したものを選択して、その情報を返信することから、問い合わせを行ったクライアントを、配信のためのツリー構造に基づく適切な中継先(クライアント)に接続させることができる。これにより、ネットワークへの負担を軽減した状態で、ストリーミング画像の配信を行うことが可能となる。   According to this, when an inquiry is made from the client to the second server, the second server, based on the streaming distribution tree structure information, from the first server or the client that is currently receiving the streaming image, Since the client selects the one suitable for sending the streaming image to the inquiring client and returns the information, the inquiring client is set as an appropriate relay destination (client) based on the tree structure for distribution. Can be connected. This makes it possible to distribute streaming images while reducing the burden on the network.

この場合において、前記第1サーバ及び前記第2サーバは、同一のネットワークセグメント上に配置されていることとすることができる。   In this case, the first server and the second server can be arranged on the same network segment.

また、前記ストリーミング配信のツリー構造の情報は、前記第1又は第2サーバにより収集されることとすることができる。この場合、前記第1又は第2サーバは、前記第1サーバと前記ストリーミング画像を受信しているクライアントとの間の通信状況に関する情報を取得するとともに、前記クライアント間の接続状態に関する情報を取得して、各情報に基づいて、前記ストリーミング配信のツリー構造の情報を収集することとすることができる。また、前記クライアント間の接続状態に関する情報は、ツリー構造のリーフノードであるクライアントから前記第1又は第2サーバ側に向けて、クライアント情報を順次送信し、前記送信途中で、他のクライアントを経由する場合には、当該他のクライアントは、前記クライアント情報に自己のクライアント情報を付加して、前記第1又は第2サーバ側に送信することとすることができる。   Further, the information on the tree structure of the streaming distribution can be collected by the first or second server. In this case, the first or second server acquires information regarding a communication state between the first server and the client receiving the streaming image, and acquires information regarding a connection state between the clients. Thus, the tree structure information of the streaming distribution can be collected based on each information. In addition, the information regarding the connection state between the clients is transmitted sequentially from the client that is a leaf node of the tree structure toward the first or second server side, and passes through other clients during the transmission. In this case, the other client can add its own client information to the client information and transmit it to the first or second server side.

ストリーミング配信のツリー構造の情報を、第1又は第2サーバにより収集する本発明の画像配信システムでは、前記ストリーミング配信のツリー構造の情報が変動して、前記問い合わせを行ったクライアントに対して前記ストリーミング画像を送信するのに適したサーバ又はクライアントが変更された場合に、前記第1サーバは、前記問い合わせを行ったクライアントに対して、前記ストリーミング画像の受信先を変更させることとすることができる。かかる場合には、新たなクライアントが追加されるなどしてツリー構造が変動しても、そのツリー構造に合わせた適切な受信先を設定することが可能となる。   In the image distribution system of the present invention that collects information on the tree structure of streaming distribution by the first or second server, the streaming structure tree information fluctuates and the streaming is made to the client that has made the inquiry. When a server or a client suitable for transmitting an image is changed, the first server can cause the client that made the inquiry to change the receiving destination of the streaming image. In such a case, even if the tree structure changes due to the addition of a new client or the like, it is possible to set an appropriate receiving destination according to the tree structure.

この場合において、前記問い合わせを行ったクライアントに対して前記ストリーミング画像を送信するのに適したサーバ又はクライアントが変更された場合に、前記第1サーバは、前記問い合わせを行ったクライアントに対して、前記第2サーバに対する再問い合わせを実行させることとすることができる。かかる場合には、画像送信に適したサーバ又はクライアントが変更された場合に、クライアントに再問い合わせを行わせることとすることで、常時適切なサーバ又はクライアントから、ストリーミング画像を受信することが可能となる。また、前記問い合わせを行ったクライアントに対して前記ストリーミング画像を送信するのに適したサーバ又はクライアントが変更された場合に、前記第1サーバは、前記問い合わせを行ったクライアントに対して、新たな接続先を指定して、再接続させることとすることができる。かかる場合には、第1サーバは、新たな接続先を指定して、クライアントに再接続させるため、クライアントは、第2サーバに問い合わせを行うこと無く、ストリーミング画像の送信に適したサーバ又はクライアントに再接続することが可能となる。   In this case, when a server or a client suitable for transmitting the streaming image to the client that made the inquiry is changed, the first server sends the inquiry to the client that made the inquiry The re-inquiry for the second server can be executed. In such a case, when the server or client suitable for image transmission is changed, it is possible to receive a streaming image from the appropriate server or client at all times by allowing the client to make a re-inquiry. Become. In addition, when a server or a client suitable for transmitting the streaming image to the client that made the inquiry is changed, the first server makes a new connection to the client that made the inquiry. You can specify the destination and reconnect. In such a case, since the first server designates a new connection destination and reconnects to the client, the client does not make an inquiry to the second server, and does not contact the server or client suitable for transmitting the streaming image. It becomes possible to reconnect.

本発明によれば、ネットワークへの負担を軽減した状態で、ストリーミング画像の配信を行うことが可能な画像配信システムを提供することができる。   ADVANTAGE OF THE INVENTION According to this invention, the image delivery system which can deliver a streaming image in the state which reduced the burden on a network can be provided.

以下、本発明の一実施形態について図1〜図15(b)に基づいて詳細に説明する。図1には、本実施形態の遠隔診断システム100の構成が概略的に示されている。   Hereinafter, an embodiment of the present invention will be described in detail with reference to FIGS. FIG. 1 schematically shows a configuration of a remote diagnosis system 100 of the present embodiment.

図1の遠隔診断システム100は、ビデオ配信サーバ1Aから配信されるストリーミング画像(診断対象物を撮影した動画)を、複数のクライアント(2A〜2D)を介して、複数のユーザが同時に観察しながら、診断対象物の診断を行うためのシステムである。この遠隔診断システム100は、ネットワーク(イントラネット)3を有しており、このネットワーク3に、ビデオ配信サーバ1Aと、拡張DNSサーバ1Bと、複数のクライアント2A〜2Dと、が接続されている。   The remote diagnosis system 100 in FIG. 1 is configured such that a plurality of users simultaneously observe a streaming image (moving image of a diagnostic object) distributed from the video distribution server 1A via a plurality of clients (2A to 2D). A system for diagnosing a diagnostic object. The remote diagnosis system 100 includes a network (intranet) 3, and a video distribution server 1A, an extended DNS server 1B, and a plurality of clients 2A to 2D are connected to the network 3.

ビデオ配信サーバ1Aは、クライアントに対して同一のビデオコンテンツ(診断対象物をビデオカメラ42(図2(a)参照)で撮影したストリーミング画像)を提供するサーバである。このビデオ配信サーバ1Aは、当該サーバ1Aにネットワークを介して接続されているクライアントのアドレス情報(クライアントリスト)を、拡張DNSサーバ1Bとの間で定期的に交換するとともに、クライアントとの接続が切断された場合には、その切断情報を拡張DNSサーバ1Bに通知する。また、ビデオ配信サーバ1Aは、各クライアントとの接続状況を定期的に取得し、拡張DNSサーバ1Bに対して送信したり、既にストリーミング画像を受信しているクライアントから送られてくる経路情報を定期的に収集したりする。なお、ビデオ配信サーバ1Aには、診断対象物に対して、アノテーション(図形等)を投影することが可能なプロジェクタ(投影装置)が接続されていても良い。   The video distribution server 1A is a server that provides the same video content (a streaming image obtained by capturing a diagnostic object with the video camera 42 (see FIG. 2A)) to a client. The video distribution server 1A periodically exchanges address information (client list) of clients connected to the server 1A via the network with the extended DNS server 1B and disconnects from the client. If it is, the disconnection information is notified to the extended DNS server 1B. Further, the video distribution server 1A periodically acquires the connection status with each client, and periodically transmits the route information transmitted from the client that has already received the streaming image or transmitted to the extended DNS server 1B. Or collect. The video distribution server 1A may be connected to a projector (projection device) that can project an annotation (graphic or the like) on the diagnosis target.

拡張DNSサーバ1Bは、ビデオ配信サーバ1Aへの負荷を軽減するために設計された専用のDNSサーバであり、ビデオ配信サーバ1Aと同一のネットワークセグメント(ツリー構造の最上流)上に配置されている。拡張DNSサーバ1Bは、クライアントから問い合わせを受けると、既にストリーミング画像を受信しているクライアントが存在するか否か、及びそのクライアントが問い合わせを行ったクライアントの近傍に位置するか否かを判断して、各判断がいずれも肯定されるような場合には、問い合わせを行ったクライアントに対して、近傍に位置するクライアントの情報(IPアドレス)を返信する。また、各判断のいずれかが否定される場合には、問い合わせを行ったクライアントに対して、ビデオ配信サーバ1Aの情報(IPアドレス)を返信する。また、拡張DNSサーバ1Bは、ビデオ配信サーバ1Aとの間で、前述した各クライアントの接続状況(クライアントリスト)、及び切断状況のやり取りを行う。   The extended DNS server 1B is a dedicated DNS server designed to reduce the load on the video distribution server 1A, and is arranged on the same network segment (the most upstream of the tree structure) as the video distribution server 1A. . When the extended DNS server 1B receives an inquiry from a client, the extended DNS server 1B determines whether or not there is a client that has already received a streaming image, and whether or not the client is located in the vicinity of the inquired client. If all the determinations are affirmed, information (IP address) of the client located in the vicinity is returned to the client that made the inquiry. If any of the determinations is negative, the information (IP address) of the video distribution server 1A is returned to the inquiring client. Further, the extended DNS server 1B exchanges the connection status (client list) and disconnection status of each client described above with the video distribution server 1A.

複数のクライアント2A〜2Dは、ストリーミング画像を受信し、ディスプレイ44(図2(c)参照)の画面上に表示するものである。これら各クライアント(2A〜2D)は、いわゆる中継機能を有している。すなわち、近傍に同一のストリーミング画像の視聴を希望するクライアントがあれば、そのクライアントに対して、受信中のストリーミング画像を転送することが可能である。   The plurality of clients 2A to 2D receive streaming images and display them on the screen of the display 44 (see FIG. 2C). Each of these clients (2A to 2D) has a so-called relay function. In other words, if there is a client who wants to view the same streaming image in the vicinity, it is possible to transfer the streaming image being received to the client.

次に、ビデオ配信サーバ1A、拡張DNSサーバ1B、クライアント2A〜2Dの機能構成について、図2(a)〜図2(c)に基づいて説明する。   Next, functional configurations of the video distribution server 1A, the extended DNS server 1B, and the clients 2A to 2D will be described with reference to FIGS. 2 (a) to 2 (c).

ビデオ配信サーバ1Aは、図2(a)に示されるように、ビデオ送信部10と、情報交換通知部12と、経路探索部14と、近傍探索部16と、RAM等から構成される記憶部18と、ビデオ配信サーバ1Aの構成各部を統括的に制御する制御部20と、を備えている。   As shown in FIG. 2A, the video distribution server 1A includes a video transmission unit 10, an information exchange notification unit 12, a route search unit 14, a neighborhood search unit 16, a storage unit configured by a RAM, and the like. 18 and a control unit 20 that comprehensively controls each component of the video distribution server 1A.

ビデオ送信部10は、外部から接続されたビデオカメラ42を介して、ストリーミング画像を生成し、そのストリーミング画像(画像データ)をクライアント(2A〜2D)に対して送信する。情報交換通知部12は、ビデオ配信サーバ1Aに接続されている全クライアントの情報(IPアドレス)を拡張DNSサーバ1B(情報交換通知部22)に定期的に通知したり、クライアントとの間の接続を切断した段階で、拡張DNSサーバ1B(情報交換通知部22)に対して、切断したクライアントの情報(IPアドレス)を通知したりする。経路探索部14は、既に接続している各クライアント(2A〜2D)へping/tracerouteプログラムを実行し、各クライアント(2A〜2D)との間の経路情報(例えばhop数)やRTT(Round Trip Time)を定期的に収集する。近傍探索部16は、クライアントから送信されてくるツリー判断情報に基づいてツリー情報を生成する。   The video transmission part 10 produces | generates a streaming image via the video camera 42 connected from the outside, and transmits the streaming image (image data) with respect to a client (2A-2D). The information exchange notifying unit 12 periodically notifies the extended DNS server 1B (information exchange notifying unit 22) of information (IP addresses) of all clients connected to the video distribution server 1A, and connects with the clients. Is disconnected, the extended DNS server 1B (information exchange notification unit 22) is notified of the information (IP address) of the disconnected client. The route search unit 14 executes a ping / traceroute program to each client (2A to 2D) that is already connected, and performs route information (for example, the number of hops) between each client (2A to 2D) and RTT (Round Trip). Time) is collected regularly. The neighborhood search unit 16 generates tree information based on tree determination information transmitted from the client.

拡張DNSサーバ1Bは、図2(b)に示されるように、情報交換通知部22と、アドレス情報応答部24と、RAM等から構成される記憶部26と、拡張DNSサーバ1Bの構成各部を統括的に制御する制御部30と、を備えている。   As shown in FIG. 2B, the extended DNS server 1B includes an information exchange notification unit 22, an address information response unit 24, a storage unit 26 including a RAM and the like, and each component of the extended DNS server 1B. And a control unit 30 that performs overall control.

情報交換通知部22は、ビデオ配信サーバ1Aに接続されている全クライアント(2A〜2D)の情報(IPアドレス)を定期的に受信したり、クライアント(2A〜2D)とビデオ配信サーバ1Aとの間の接続が切断された場合に、当該クライアント(2A〜2D)の情報(IPアドレス)を受信したりする。アドレス情報応答部24は、クライアントからの問い合わせに対して、クライアントの近傍に中継が可能なクライアントが存在するか否かを判断して応答したり、ビデオ配信サーバ1Aからの経路情報に基づいて、最適な接続先のIPアドレスを応答したりする。   The information exchange notifying unit 22 periodically receives information (IP addresses) of all the clients (2A to 2D) connected to the video distribution server 1A, or communicates between the clients (2A to 2D) and the video distribution server 1A. When the connection between them is disconnected, the information (IP address) of the client (2A to 2D) is received. The address information response unit 24 responds to an inquiry from the client by determining whether there is a client that can be relayed in the vicinity of the client, or based on the route information from the video distribution server 1A. Reply with the IP address of the optimal connection destination.

クライアント2A〜2Dのそれぞれは、図2(c)に示されるように、情報交換通知部32と、ストリーミング中継部34と、RAM等から構成される記憶部36と、クライアントの構成各部を統括的に制御する制御部40と、を備えている。   As shown in FIG. 2 (c), each of the clients 2A to 2D controls the information exchange notifying unit 32, the streaming relay unit 34, the storage unit 36 including a RAM and the like, and each component of the client. And a control unit 40 for controlling the operation.

情報交換通知部32は、ビデオ配信サーバ1Aから再接続要求を受信したり、この再接続要求に基づいて、拡張DNSサーバ1Bに対して、問い合わせを行ったり、ビデオ配信サーバ1Aに対してツリー判断情報を送信したりする。   The information exchange notifying unit 32 receives a reconnection request from the video distribution server 1A, makes an inquiry to the extended DNS server 1B based on the reconnection request, and makes a tree determination to the video distribution server 1A. Or send information.

ストリーミング中継部34は、ストリーミング画像(画像データ)を受信して、そのストリーミング画像を、ストリーミング中継部34に接続されたディスプレイ44上に表示する。また、近傍のクライアントからストリーミング画像の転送要求を受けたときには、そのクライアントに対し、ストリーミング中継部34からストリーミング画像を送信(転送)する。   The streaming relay unit 34 receives the streaming image (image data) and displays the streaming image on the display 44 connected to the streaming relay unit 34. When receiving a streaming image transfer request from a nearby client, the streaming relay unit 34 transmits (transfers) the streaming image to the client.

次に、上記のように構成される遠隔診断システム100の処理について、図3(a)〜図15(b)に基づいて説明する。以下においては、遠隔診断システム100の処理について、<接続開始処理>、<配信開始処理>、<ツリー情報評価処理>、<再接続要求処理>、<接続終了処理>に分けて、順に説明するものとする。   Next, processing of the remote diagnosis system 100 configured as described above will be described with reference to FIGS. 3 (a) to 15 (b). In the following, the processing of the remote diagnosis system 100 will be described in order by dividing it into <connection start processing>, <distribution start processing>, <tree information evaluation processing>, <reconnection request processing>, and <connection end processing>. Shall.

<接続開始処理>
図3(a)には、クライアントにおける接続開始処理がフローチャートにて示されている。また、図3(b)には、拡張DNSサーバ1Bにおける、ビデオ配信サーバ1Aへの応答処理がフローチャートにて示されている。
<Connection start processing>
FIG. 3A shows a connection start process in the client in a flowchart. FIG. 3B is a flowchart showing response processing to the video distribution server 1A in the extended DNS server 1B.

これら図3(a)、図3(b)のフローチャートでは、まず、図3(a)のステップS10において、あるクライアントが、拡張DNSサーバ1Bに対して問い合わせを行うと、次のステップS12では、拡張DNSサーバ1Bからの応答を受信するまで待機する。これに対し、拡張DNSサーバ1B側では、図3(b)のステップS20においては、クライアントからの問い合わせを受信したか否かを判断し、図3(a)のステップS10において、クライアントから問い合わせが行われた段階で、ここでの判断が肯定され、ステップS22に移行する。そして、ステップS22では、クライアント情報を探索し(これについては後述する)、ステップS24において、問い合わせを行ったクライアントに対して、接続先とすべきサーバ又はクライアントに関する情報(応答情報)を送信する。   In the flowcharts of FIGS. 3A and 3B, when a client makes an inquiry to the extended DNS server 1B in step S10 of FIG. 3A, first, in the next step S12, It waits until a response from the extended DNS server 1B is received. On the other hand, on the extended DNS server 1B side, in step S20 in FIG. 3B, it is determined whether or not an inquiry from the client is received. In step S10 in FIG. At this stage, the determination here is affirmed, and the process proceeds to step S22. In step S22, client information is searched (this will be described later), and in step S24, information (response information) related to the server or client to be connected to is transmitted to the inquired client.

このようにして、拡張DNSサーバ1Bから送信された応答情報をクライアントが受信すると、図3(a)のステップS12の判断が肯定され、ステップS14に移行し、このステップS14において応答情報を記憶部36に記憶する。そして、次のステップS16では、応答情報(接続先のIPアドレス)に基づいて、接続先(サーバ又はクライアント)に対して、ビデオ配信要求を通知する。   When the client receives the response information transmitted from the extended DNS server 1B in this way, the determination in step S12 in FIG. 3A is affirmed, and the process proceeds to step S14. In step S14, the response information is stored in the storage unit. 36. In the next step S16, a video distribution request is notified to the connection destination (server or client) based on the response information (connection destination IP address).

ここで、上記処理(図3(a)、図3(b)の処理)の具体例について、図4(a)〜図5(b)に基づいて、説明する。   Here, a specific example of the above process (the processes of FIGS. 3A and 3B) will be described with reference to FIGS. 4A to 5B.

まず、図4(a)の点線矢印(1)に示されるように、クライアント2Aが、拡張DNSサーバ1Bに問い合わせを行ったものとする(図3(a)のステップS10)。この問い合わせを受信した拡張DNSサーバ1Bは、クライアント情報を探索するが、(図3(b)のステップS22)、ここでは、ビデオ配信サーバ1Aに接続されているクライアントが1つも無いので、クライアント2Aに対して、ビデオ配信サーバ1Aの情報(IPアドレス)を送信する(図4(a)の点線矢印(2)参照)。この情報を受信したクライアント2Aでは、その情報を記憶部36に記憶するとともに(図3(a)のステップS14)、その情報(ビデオ配信サーバ1AのIPアドレス)に基づいて、ビデオ配信サーバ1Aに対して、ビデオ配信要求を通知することにより、ビデオ配信サーバ1Aとクライアント2Aとの間が接続される(図4(a)の点線両矢印(3)参照)。   First, it is assumed that the client 2A makes an inquiry to the extended DNS server 1B as indicated by the dotted arrow (1) in FIG. 4A (step S10 in FIG. 3A). The extended DNS server 1B that has received this inquiry searches for client information (step S22 in FIG. 3B). Here, since there is no client connected to the video distribution server 1A, the client 2A In response, the information (IP address) of the video distribution server 1A is transmitted (see the dotted arrow (2) in FIG. 4A). In the client 2A that has received this information, the information is stored in the storage unit 36 (step S14 in FIG. 3A), and on the basis of the information (IP address of the video distribution server 1A), the client 2A stores the information. On the other hand, the video delivery server 1A and the client 2A are connected by notifying the video delivery request (see the dotted double arrow (3) in FIG. 4A).

また、同様に、図4(b)の点線矢印(4)に示されるように、クライアント2Dが、拡張DNSサーバ1Bに問い合わせを行った場合(ステップS10)、拡張DNSサーバ1Bは、クライアント情報を探索する(ステップS22)。ここでは、ビデオ配信サーバ1Aに接続されているクライアントとしてクライアント2Aがあるが、クライアント2Aとビデオ配信サーバ1Aとでは、ビデオ配信サーバ1Aの方が、クライアント2Dから近い位置に存在している。したがって、拡張DNSサーバ1Bは、クライアント2Dに対して、ビデオ配信サーバ1Aの情報(IPアドレス)を送信する(図4(b)の点線矢印(5)参照)。この情報を受信したクライアント2Dでは、その情報を記憶部36に記憶するとともに(ステップS14)、その情報(ビデオ配信サーバ1AのIPアドレス)に基づいて、ビデオ配信サーバ1Aに対して、ビデオ配信要求を通知することにより、ビデオ配信サーバ1Aとクライアント2Dとの間が接続される(図4(b)の点線両矢印(6)参照)。   Similarly, as indicated by the dotted arrow (4) in FIG. 4B, when the client 2D makes an inquiry to the extended DNS server 1B (step S10), the extended DNS server 1B displays the client information. Search is performed (step S22). Here, there is a client 2A as a client connected to the video distribution server 1A. In the client 2A and the video distribution server 1A, the video distribution server 1A is closer to the client 2D. Therefore, the extended DNS server 1B transmits the information (IP address) of the video distribution server 1A to the client 2D (see the dotted arrow (5) in FIG. 4B). Upon receiving this information, the client 2D stores the information in the storage unit 36 (step S14), and makes a video distribution request to the video distribution server 1A based on the information (IP address of the video distribution server 1A). Is notified, the video distribution server 1A and the client 2D are connected (see the dotted double arrow (6) in FIG. 4B).

また、図5(a)の点線矢印(7)に示されるように、クライアント2Bが拡張DNSサーバ1Bに問い合わせを行った場合(ステップS10)、拡張DNSサーバ1Bは、クライアント情報を探索する(ステップS22)が、ここでは、クライアント2Aがクライアント2Bに近接しているので、拡張DNSサーバ1Bは、クライアント2Bに対して、クライアント2Aの情報(IPアドレス)を送信する(図5(a)の点線矢印(8)参照)。この情報を受信したクライアント2Bでは、その情報を記憶部36に記憶するとともに(ステップS14)、その情報(クライアント2AのIPアドレス)に基づいて、クライアント2Aに対して、ビデオ配信要求(転送要求)を通知することにより、クライアント2Aとクライアント2Bとの間が接続される(図5(a)の点線両矢印(9)参照)。   When the client 2B makes an inquiry to the extended DNS server 1B (step S10) as indicated by a dotted arrow (7) in FIG. 5A, the extended DNS server 1B searches for client information (step S10). In S22), since the client 2A is close to the client 2B, the extended DNS server 1B transmits the information (IP address) of the client 2A to the client 2B (dotted line in FIG. 5A). Arrow (8)). Upon receiving this information, the client 2B stores the information in the storage unit 36 (step S14) and, based on the information (IP address of the client 2A), sends a video distribution request (transfer request) to the client 2A. Is notified, the connection between the client 2A and the client 2B is established (see the dotted double arrow (9) in FIG. 5A).

更に、図5(b)の点線矢印(10)に示されるように、クライアント2Cが拡張DNSサーバ1Bに問い合わせを行った場合(ステップS10)、拡張DNSサーバ1Bは、クライアント情報を探索する(ステップS22)が、ここでは、ビデオ配信サーバ1Aが最も近いので、拡張DNSサーバ1Bは、クライアント2Bに対して、ビデオ配信サーバ1Aの情報(IPアドレス)を送信する(図5(b)の点線矢印(11)参照)。この情報を受信したクライアント2Cでは、その情報を記憶部36に記憶するとともに(ステップS14)、その情報(ビデオ配信サーバ1AのIPアドレス)に基づいて、ビデオ配信サーバ1Aに対して、ビデオ配信要求を通知することにより、ビデオ配信サーバ1Aとクライアント2Cとの間が接続される(図5(b)の点線両矢印(12)参照)。   Furthermore, as shown by the dotted arrow (10) in FIG. 5B, when the client 2C makes an inquiry to the extended DNS server 1B (step S10), the extended DNS server 1B searches for client information (step S10). In this case, since the video distribution server 1A is the closest, the extended DNS server 1B transmits the information (IP address) of the video distribution server 1A to the client 2B (dotted line arrow in FIG. 5B) (Refer to (11)). Upon receiving this information, the client 2C stores the information in the storage unit 36 (step S14), and makes a video distribution request to the video distribution server 1A based on the information (IP address of the video distribution server 1A). Is notified, the video distribution server 1A and the client 2C are connected (see the dotted double arrow (12) in FIG. 5B).

以上のようにして、問い合わせを行ったクライアントと、ビデオ配信サーバ1A又は他のクライアントとが接続されるようになっている。   As described above, the inquiring client is connected to the video distribution server 1A or another client.

<配信開始処理>
次に、図3(a)のステップS16において、クライアントからサーバ又は別のクライアントに対してビデオ配信(転送)要求が出された際に行われる、ビデオ(ストリーミング画像)の配信開始動作について、図6(a)、図6(b)に沿って説明する。
<Delivery start processing>
Next, a video (streaming image) distribution start operation performed when a video distribution (transfer) request is issued from the client to the server or another client in step S16 in FIG. Description will be made along 6 (a) and FIG. 6 (b).

まず、ビデオ配信要求がビデオ配信サーバ1Aに出された場合の、ビデオ配信サーバ1Aの処理について図6(a)に基づいて説明する。まず、ビデオ配信サーバ1Aは、図6(a)のステップS30において、ビデオ配信要求を受信したか否かを判断する。ここでの判断が肯定された場合には、次のステップS32に移行して、ビデオ配信要求を送信してきたクライアントの情報(IPアドレスなど)を、記憶部18内に記憶されているクライアントリストに追加する。そして、次のステップS34では、ビデオ配信サーバ1Aからクライアントに対して、ストリーミング画像の配信を開始する。その後は、ステップS30において、次のビデオ配信要求を受信するまで、待機する。   First, processing performed by the video distribution server 1A when a video distribution request is issued to the video distribution server 1A will be described with reference to FIG. First, the video distribution server 1A determines whether or not a video distribution request has been received in step S30 of FIG. If the determination here is affirmed, the process proceeds to the next step S32, and information (IP address, etc.) of the client that has transmitted the video distribution request is stored in the client list stored in the storage unit 18. to add. Then, in the next step S34, distribution of the streaming image is started from the video distribution server 1A to the client. After that, in step S30, the process waits until the next video distribution request is received.

次に、あるクライアント(例えば、クライアント2Bとする)から、別のクライアント(例えば、クライアント2Aとする)にビデオ配信要求が出された場合の、クライアント2Aの処理について、図6(b)に基づいて説明する。この図6(b)のステップS40では、クライアント2Aがクライアント2Bから送信されたビデオ配信要求を受信したか否かを判断する。ここでの判断が肯定された場合には、次のステップS42に移行して、ビデオ配信要求を行ったクライアントの情報(IPアドレスなど)を、ビデオ配信サーバ1Aに送信する(この場合、クライアント2Aの情報交換通知部32と、ビデオ配信サーバ1Aの情報交換通知部12との間でクライアント情報がやり取りされる)。そして、ビデオ配信サーバ1Aでは、記憶部18内に記憶されているクライアントリストに、ビデオ配信要求を行ったクライアント2Bを追加する。次いで、ステップS44では、接続先のクライアント2Aからクライアント2Bに対してストリーミング画像の転送を開始する。その後は、ステップS40において、次のビデオ配信要求を受信するまで、待機する。   Next, the processing of the client 2A when a video distribution request is issued from a certain client (for example, the client 2B) to another client (for example, the client 2A) is based on FIG. 6B. I will explain. In step S40 of FIG. 6B, it is determined whether or not the client 2A has received the video distribution request transmitted from the client 2B. If the determination here is affirmed, the process proceeds to the next step S42, and information (IP address or the like) of the client that has requested video distribution is transmitted to the video distribution server 1A (in this case, the client 2A). Client information is exchanged between the information exchange notification unit 32 and the information exchange notification unit 12 of the video distribution server 1A). Then, the video distribution server 1A adds the client 2B that made the video distribution request to the client list stored in the storage unit 18. Next, in step S44, the transfer of the streaming image from the connection destination client 2A to the client 2B is started. Thereafter, in step S40, the process waits until the next video distribution request is received.

<ツリー情報評価処理>
次に、ビデオ配信サーバ1Aにおいて行われる、前述した図3(b)のステップS22(クライアント情報の探索処理)で用いられるツリー情報の評価処理について、図7〜図10に基づいて説明する。まず、図7のステップS50では、経路探索サブルーチンが実行される。この経路探索サブルーチンでは、図8(a)に示されるように、まず、ステップS60において、接続中の全クライアント(記憶部18に記憶されているクライアントリストに掲載されている全クライアント)の情報を取得する。
<Tree information evaluation process>
Next, the tree information evaluation process used in step S22 (client information search process) of FIG. 3B performed in the video distribution server 1A will be described with reference to FIGS. First, in step S50 of FIG. 7, a route search subroutine is executed. In this route search subroutine, as shown in FIG. 8A, first, in step S60, information on all connected clients (all clients listed in the client list stored in the storage unit 18) is obtained. get.

次いで、ステップS62では、経路探索が終了したか否かを判断するが、ここでの判断が否定されると、次のステップS64において、あるクライアント(例えば、クライアント2A)の経路探索を開始する。この場合の探索は、例えば、ping/tracerouteプログラムを実行して、あるクライアント(2A)に対して実際にパケットを送信することにより行われる。この探索が終了すると、次のステップS66において、探索結果を記憶した後、ステップS62に戻る。その後は、ステップS62→S64→S66の処理・判断を繰り返し、全クライアントに対する探索が終了することにより、ステップS62の判断が否定されると、図7のステップS52に移行する。   Next, in step S62, it is determined whether or not the route search is completed. If the determination here is negative, a route search for a certain client (for example, the client 2A) is started in the next step S64. The search in this case is performed, for example, by executing a ping / traceroute program and actually transmitting a packet to a certain client (2A). When this search is completed, the search result is stored in the next step S66, and then the process returns to step S62. Thereafter, the processing / judgment of steps S62 → S64 → S66 is repeated, and when the search for all the clients is completed, if the judgment of step S62 is denied, the process proceeds to step S52 of FIG.

図7のステップS52では、近傍探索サブルーチンを実行する。この近傍探索サブルーチンでは、まず、図8(b)のステップS70において、クライアントからツリー判断情報を取得したか否かを判断する。ここでのツリー判断情報の取得は、図9に示されるフローチャートに沿って行われる。なお、この図9のフローチャートは、接続されているクライアント(ここでは、図10に示されるように、クライアント2A〜2Dが接続されているものとする)において、同時並行的に実行される。   In step S52 of FIG. 7, a neighborhood search subroutine is executed. In this neighborhood search subroutine, first, in step S70 of FIG. 8B, it is determined whether or not tree determination information has been acquired from the client. The acquisition of the tree determination information here is performed according to the flowchart shown in FIG. Note that the flowchart of FIG. 9 is executed in parallel at the connected clients (here, the clients 2A to 2D are connected as shown in FIG. 10).

まず、クライアント2Aの処理について説明する。クライアント2Aでは、図9のステップS80においてクライアント2Aがリーフノードか否かを判断する。ここでは、クライアント2Aは、図10に示されるように、ネットワーク3の末端に位置しているので、判断が肯定され、ステップS82に移行し、ツリー判断情報を生成する。この場合のツリー判断情報としては、例えば、リーフノードのクライアント2Aの下には、クライアントが接続されていないことを意味する「2A(emp)」が生成されるものとする。次いで、図9のステップS88では、クライアント2Aは、上流のクライアント(ここでは、図10に示されるクライアント2C)にツリー判断情報「2A(emp)」を送信して、図9の処理を終了する。なお、クライアント2Bに関しても、図9のステップS80の判断が肯定されるので、クライアント2Aと同様、ステップS82において、ツリー判断情報(ここでは、クライアント2Bの下にクライアントが接続されていないことを意味する「2B(emp)」)を生成し、ステップS88において、上流のクライアント(ここでは、図10に示されるクライアント2C)にツリー判断情報を送信して、図9の処理を終了する。   First, the processing of the client 2A will be described. The client 2A determines whether or not the client 2A is a leaf node in step S80 of FIG. Here, since the client 2A is located at the end of the network 3 as shown in FIG. 10, the determination is affirmed, the process proceeds to step S82, and tree determination information is generated. As tree determination information in this case, for example, “2A (emp)” indicating that the client is not connected is generated under the client 2A of the leaf node. Next, in step S88 of FIG. 9, the client 2A transmits the tree determination information “2A (emp)” to the upstream client (here, the client 2C shown in FIG. 10), and ends the processing of FIG. . Since the determination in step S80 in FIG. 9 is affirmed also for the client 2B, in the same way as the client 2A, in step S82, tree determination information (here, it means that no client is connected under the client 2B) In step S88, the tree determination information is transmitted to the upstream client (here, the client 2C shown in FIG. 10), and the processing in FIG. 9 is terminated.

次にクライアント2Cの処理について説明する。クライアント2Cでは、上記と同様にして、図9のステップS80の判断を行うが、クライアント2Cは、リーフノードではないので、ここでの判断は否定される。次いで、ステップS84では、クライアント2Cが下流のクライアントからツリー判断情報を受信するまで待機する。そして、前述のように、クライアント2A,2Bから送信されたツリー判断情報を受信した段階で、次のステップS86に移行して、受信したツリー判断情報に自己のクライアント情報を追加する。ここでは、クライアント2Cは、「2A(emp)」と「2B(emp)」のツリー判断情報を受信しているので、図10に示されるように、それらのクライアントが下流に存在することを意味する「2C(2A、2B)」というツリー判断情報を生成する。その後は、ステップS88において、ステップS86において生成されたツリー判断情報を上流側(ここでは、ビデオ配信サーバ1A)に送信して、図9の処理を終了する。   Next, the processing of the client 2C will be described. The client 2C makes the determination in step S80 of FIG. 9 in the same manner as described above. However, since the client 2C is not a leaf node, the determination here is denied. Next, in step S84, the process waits until the client 2C receives tree determination information from the downstream client. Then, as described above, when the tree determination information transmitted from the clients 2A and 2B is received, the process proceeds to the next step S86, and the client information is added to the received tree determination information. Here, since the client 2C receives the tree determination information of “2A (emp)” and “2B (emp)”, it means that these clients exist downstream as shown in FIG. The tree determination information “2C (2A, 2B)” is generated. Thereafter, in step S88, the tree determination information generated in step S86 is transmitted to the upstream side (here, the video distribution server 1A), and the processing in FIG. 9 is terminated.

なお、クライアント2Dについては、リーフノードであるので、前述したクライアント2A,2Bと同様のツリー判断情報「2D(emp)」を生成し、その情報を上流側(ここでは、ビデオ配信サーバ1A)に送信する。   Since the client 2D is a leaf node, tree determination information “2D (emp)” similar to that of the clients 2A and 2B described above is generated, and the information is transmitted to the upstream side (here, the video distribution server 1A). Send.

図8(b)に戻り、ステップS70において、上述のようにして、ビデオ配信サーバ1Aがツリー判断情報を取得すると、次のステップS72に移行して、図8(a)のステップS66において記憶部18に記憶された探索結果を読み出し、この探索結果と、ツリー判断情報とを照合する。   Returning to FIG. 8B, when the video distribution server 1A acquires the tree determination information in step S70 as described above, the process proceeds to the next step S72, and in step S66 of FIG. The search result stored in 18 is read, and this search result is compared with the tree determination information.

次いで、ステップS76において、照合結果を記憶部18に記憶した後、図7のステップS54に移行する。   Next, after the collation result is stored in the storage unit 18 in step S76, the process proceeds to step S54 in FIG.

図7のステップS54では、図8(b)のステップS74の照合結果を評価する。例えば、探索結果から、あるクライアントとビデオ配信サーバ1Aとの間には、中継クライアントが存在しているにもかかわらず、そのクライアントが、ビデオ配信サーバ1Aから直接ストリーミング画像を受信していたりしないかどうかなどを判断する。   In step S54 in FIG. 7, the collation result in step S74 in FIG. 8B is evaluated. For example, based on the search result, whether a client receives a streaming image directly from the video distribution server 1A even though there is a relay client between the client and the video distribution server 1A. Judge whether or not.

<再接続要求処理>
次に、ビデオ配信サーバ1Aにおいて不定期で行われる、再接続要求処理について、図11のフローチャートに沿って説明する。この再接続要求処理は、ビデオ配信サーバ1Aにおいて、各クライアントが適切に接続されているかを判断し、接続が適切で無い場合に、そのクライアントに対して再接続を実行させるための処理である。なお、ここでは、図5(b)に示されるように、クライアント2A、2C、2Dがビデオ配信サーバ1Aに接続され、クライアント2Bがクライアント2Aに接続されているものとする。
<Reconnection request processing>
Next, reconnection request processing performed irregularly in the video distribution server 1A will be described with reference to the flowchart of FIG. This reconnection request process is a process for determining whether or not each client is properly connected in the video distribution server 1A and causing the client to perform reconnection when the connection is not appropriate. Here, as shown in FIG. 5B, it is assumed that the clients 2A, 2C, and 2D are connected to the video distribution server 1A and the client 2B is connected to the client 2A.

まず、図11のステップS90では、ビデオ配信サーバ1Aが、記憶部18からストリーミング配信のツリー情報を読み出す。次いで、ビデオ配信サーバ1Aは、ステップS92において、現時点におけるツリーの評価を、前述したステップS54(図7参照)と同様にして、実行する。そして、次のステップS94では、各クライアントの近傍に、中継先となりうる新たなクライアントが発見されたか否かを判断する。この場合、図5(b)に示されるように、クライアント2Aと、ビデオ配信サーバ1Aとの間に、クライアント2Cが存在するにもかかわらず、クライアント2Aがビデオ配信サーバ1Aに直接接続されていることから、クライアント2Aにとってクライアント2Cは新たな中継先となりうるクライアントである。   First, in step S90 of FIG. 11, the video distribution server 1A reads tree information of streaming distribution from the storage unit 18. Next, in step S92, the video distribution server 1A executes evaluation of the tree at the current time in the same manner as in step S54 (see FIG. 7) described above. In the next step S94, it is determined whether or not a new client that can be a relay destination has been found in the vicinity of each client. In this case, as shown in FIG. 5B, the client 2A is directly connected to the video distribution server 1A even though the client 2C exists between the client 2A and the video distribution server 1A. Therefore, for the client 2A, the client 2C is a client that can be a new relay destination.

したがって、ステップS94の判断が肯定されると、次のステップS96に移行し、クライアント2Aに対して、近傍クライアント2Cへの再接続を要求する。この状態が、図12(a)において、点線矢印(13)にて示されている。なお、本実施形態では、ビデオ配信サーバ1Aからクライアント2Aに対して、クライアント2CのIPアドレスを送ることは無いものとする。   Accordingly, when the determination in step S94 is affirmed, the process proceeds to the next step S96, and the client 2A is requested to reconnect to the neighboring client 2C. This state is indicated by a dotted arrow (13) in FIG. In the present embodiment, it is assumed that the IP address of the client 2C is not sent from the video distribution server 1A to the client 2A.

これに対し、クライアント2Aでは、図13のステップS102において、ビデオ配信サーバ1Aから再接続要求を受信したか否かを判断し、ここでの判断が肯定されると、次のステップS104に移行する。このステップS104では、拡張DNSサーバ1Bに対して、再接続先であるクライアントの情報(IPアドレス)を、拡張DNSサーバ1Bに対して問い合わせる。この状態が、図12(a)において、点線矢印(14)にて示されている。そして、次のステップS106において、クライアント情報を、拡張DNSサーバ1Bから受信したか否かを判断し、ここでの判断が肯定されると、ステップS108において、現在接続中のサーバ又はクライアント(ここでは、ビデオ配信サーバ1A)に対して、切断を通知した後、次のステップS110に移行する。なお、クライアント2Aが、再接続先のクライアント情報を拡張DNSサーバ1Bから受信している状態が、図12(a)において、点線矢印(15)にて示されている。   On the other hand, the client 2A determines whether or not a reconnection request is received from the video distribution server 1A in step S102 of FIG. 13, and when the determination here is affirmed, the process proceeds to the next step S104. . In this step S104, the extended DNS server 1B is inquired of the extended DNS server 1B about the information (IP address) of the client that is the reconnection destination. This state is indicated by a dotted arrow (14) in FIG. In the next step S106, it is determined whether or not the client information has been received from the extended DNS server 1B. If the determination here is affirmed, in step S108, the currently connected server or client (here, After the disconnection is notified to the video distribution server 1A), the process proceeds to the next step S110. The state in which the client 2A is receiving the client information of the reconnection destination from the extended DNS server 1B is indicated by a dotted arrow (15) in FIG.

そして、クライアント2Aが、次のステップS110において、受信した再接続先クライアント2Cの情報(IPアドレス)に基づいて、クライアント2Cと接続されることにより、クライアント2Cからクライアント2Aに対して、ストリーミング画像が転送されることになる(図12(b)の点線矢印(16)参照)。   Then, in the next step S110, the client 2A is connected to the client 2C based on the received information (IP address) of the reconnection destination client 2C, whereby a streaming image is transmitted from the client 2C to the client 2A. It will be transferred (see dotted arrow (16) in FIG. 12B).

なお、上記においては、ビデオ配信サーバ1Aからは、クライアント2Aに対して、再接続先のクライアント2Cの情報(IPアドレス)を送信しない場合を前提に説明したが、これに限らず、ビデオ配信サーバ1Aからクライアント2Aに対してクライアント2Cの情報(IPアドレス)を送信することとしても良い。この場合、図14(a)に示されるように、クライアント2AがステップS112において、クライアント2Cへの再接続要求を受信した場合には、次のステップS114において、現在接続中のサーバ又はクライアント(ここでは、ビデオ配信サーバ1A)に対して切断を通知し、次のステップS116において、ステップS112で受信したクライアント情報(IPアドレス)に基づいて、再接続先のクライアントに接続を切り替える。このようにしても、図13の場合と同様の処理結果を得ることが可能である。   In the above description, the video distribution server 1A has been described on the premise that the information (IP address) of the reconnection destination client 2C is not transmitted to the client 2A. Information (IP address) of the client 2C may be transmitted from 1A to the client 2A. In this case, as shown in FIG. 14A, when the client 2A receives a reconnection request to the client 2C in step S112, in the next step S114, the currently connected server or client (here Then, disconnection is notified to the video distribution server 1A), and in the next step S116, the connection is switched to the reconnection destination client based on the client information (IP address) received in step S112. Even in this case, it is possible to obtain the same processing result as in FIG.

また、ビデオ配信サーバ1Aが再接続要求を出さずに、クライアント2Aが自主的に再接続を行うか否かを判断するようにしても良い。具体的には、図14(b)に示されるように、まず、クライアント2Aが、ツリー情報の問い合わせをビデオ配信サーバ1Aに対して行い、ツリー情報を取得する(ステップS120)。そして、そのツリー情報の中から、近傍に位置するクライアントを探索する(ステップS122)。次いで、クライアント2Aは、近傍クライアントを発見したか否かを判断するが(ステップS124)、ここでの判断が肯定された場合(近傍クライアントが発見された場合)には、現在接続中のサーバ又はクライアント(ここでは、ビデオ配信サーバ1A)に対して切断を通知し(ステップS126)、近傍クライアントに接続しなおす(ステップS128)。なお、近傍クライアントが発見されなかった場合は、ステップS124の判断が否定されるので、再接続を実行すること無く、図14(b)の全処理を終了する。なお、この図14(b)の処理については、前述した図13の処理と同時並行的に実行する(すなわち、再接続の判断を、ビデオ配信サーバ1A側及びクライアント側の両方で行う)こととしても良い。   Further, the video distribution server 1A may determine whether or not the client 2A voluntarily reconnects without issuing a reconnection request. Specifically, as shown in FIG. 14B, first, the client 2A makes an inquiry about tree information to the video distribution server 1A, and acquires the tree information (step S120). Then, a client located in the vicinity is searched from the tree information (step S122). Next, the client 2A determines whether or not a nearby client has been found (step S124). If the determination here is affirmative (if a nearby client has been found), the currently connected server or Disconnection is notified to the client (here, the video distribution server 1A) (step S126), and the client is reconnected to the neighboring client (step S128). If no nearby client is found, the determination in step S124 is negative, and the entire process of FIG. 14B is terminated without executing reconnection. Note that the processing in FIG. 14B is executed in parallel with the processing in FIG. 13 described above (that is, reconnection determination is performed on both the video distribution server 1A side and the client side). Also good.

<接続終了処理>
次に、クライアントにおいて、ストリーミング画像の視聴が終了した場合における、接続終了処理について、図15(a)、図15(b)に基づいて説明する。
<Connection termination processing>
Next, connection termination processing in the case where viewing of a streaming image is terminated at the client will be described with reference to FIGS. 15 (a) and 15 (b).

まず、クライアントでは、図15(a)のステップS130において、中継を行っているか否か、すなわち、他のクライアントに対してストリーミング画像を転送しているか否かを判断する。ここで、例えば、判断主体がクライアント2Aである場合には、クライアント2Bに対してストリーミング画像を転送しているので、判断は肯定される。また、例えば、判断主体がクライアント2Bである場合には、他のクライアントに転送をしていないので判断は否定される。   First, in step S130 of FIG. 15A, the client determines whether relaying is being performed, that is, whether a streaming image is being transferred to another client. Here, for example, when the determination subject is the client 2A, since the streaming image is transferred to the client 2B, the determination is affirmed. Further, for example, when the determination subject is the client 2B, the determination is negative because no transfer is made to another client.

ここでの判断が肯定された場合には、ステップS132に移行して、中継先のクライアント(ストリーミング画像を転送している先のクライアント)に対して、接続を終了する旨を通知し、ステップS130に戻る。   If the determination here is affirmed, the process proceeds to step S132 to notify the relay destination client (destination client to which the streaming image is transferred) that the connection is to be terminated, and step S130. Return to.

その後、ステップS132において通知を受けたクライアントと、通知を送信したクライアントとの間の接続が切断された段階で、ステップS130の判断は否定され、ステップS134に移行する。また、初めから中継を行っていなかった場合にも、ステップS134に移行する。そして、ステップS134において、クライアント(他のクライアントに画像を中継(転送)していないクライアント)から、ビデオ配信サーバ1Aに対してビデオ配信停止を通知した段階で、図15(a)の処理が終了する。   Thereafter, when the connection between the client that has received the notification in step S132 and the client that has transmitted the notification is disconnected, the determination in step S130 is denied, and the process proceeds to step S134. Also, if the relay has not been performed from the beginning, the process proceeds to step S134. In step S134, when the client (the client that has not relayed (transferred) the image to another client) has notified the video distribution server 1A of the video distribution stop, the processing in FIG. To do.

これに対し、ビデオ配信サーバ1Aでは、図15(b)のステップS140において、図15(a)のステップS134の通知を受信したか否かを判断し、ここでの判断が肯定されると、次のステップS142において、記憶部18に記憶されているクライアントリストからそのクライアントの情報を削除する。次いで、ステップS144において、そのクライアントに対するストリーミング画像の送信を停止する。その後は、ビデオ配信サーバ1Aの電源がオフされるまで、ステップS140→S142→S144の処理・判断が繰り返される。   On the other hand, in the video distribution server 1A, in step S140 in FIG. 15B, it is determined whether or not the notification in step S134 in FIG. 15A is received. If the determination here is affirmed, In the next step S142, the client information is deleted from the client list stored in the storage unit 18. Next, in step S144, transmission of the streaming image to the client is stopped. Thereafter, the processing and determination of steps S140 → S142 → S144 are repeated until the video distribution server 1A is turned off.

以上、詳細に説明したように、本実施形態によると、クライアント(2A〜2D)から拡張DNSサーバ1Bに対する問い合わせが行われると、拡張DNSサーバ1Bは、ネットワーク3の配信のためのツリー構造の情報に基づいて、ビデオ配信サーバ1A又は現にストリーミング画像を受信しているクライアントの中から、問い合わせを行ったクライアントに対するストリーミング画像の送信に適したものを選択して、その情報を返信する。したがって、本実施形態によると、問い合わせを行ったクライアントを、ツリー構造に基づく適切な中継先(クライアント)に接続させることができる。これにより、例えば、図5(b)に示されるように、ストリーミング画像を受信しているクライアントが4台ある場合でも、ビデオ配信サーバ1Aから直接画像を受信するクライアントの数を3台にすることができる。このように、ネットワークへの負担が軽減された状態で、ストリーミング画像の配信を行うことができるようになる。   As described above in detail, according to the present embodiment, when an inquiry is made from the clients (2A to 2D) to the extended DNS server 1B, the extended DNS server 1B has information on the tree structure for distribution of the network 3. Based on the above, the video distribution server 1A or the client that is currently receiving the streaming image is selected from the clients that are suitable for transmitting the streaming image to the inquiring client, and the information is returned. Therefore, according to the present embodiment, the client that has made the inquiry can be connected to an appropriate relay destination (client) based on the tree structure. Thereby, for example, as shown in FIG. 5B, even when there are four clients receiving streaming images, the number of clients that directly receive images from the video distribution server 1A is set to three. Can do. In this way, streaming images can be distributed in a state where the burden on the network is reduced.

また、本実施形態によると、新たなクライアントが追加されるなどして配信のためのツリー構造が変動しても、そのツリー構造に合わせた適切な受信先を設定することができる。例えば、クライアント2Aが、ビデオ配信サーバ1Aに接続され(図4(a)参照)、その後に、クライアント2Cがビデオ配信サーバ1Aに接続された場合(図5(b)参照)、クライアント2Aが、ビデオ配信サーバ1Aからの再接続要求を受けて、クライアント2Cに再接続するようになっているので、例えば、図12(b)に示されるように、ストリーミング画像を受信しているクライアントが4台ある場合でも、ビデオ配信サーバ1Aから直接画像を受信するクライアントの数を2台のみにすることができる(すなわち、図5(b)の状態と比較して、ビデオ配信サーバ1Aから直接画像を受信しているクライアントを1台減少させることができる)。このように、ビデオ配信サーバ1Aでは、定期的又は不定期で、ツリー構造の変動を監視し、その変動に応じた再接続要求をクライアントに対して出すこととしているので、ネットワークへの負担が極力軽減された状態で、各クライアントへのストリーミング画像の配信を行うことが可能である。   Further, according to the present embodiment, even if a tree structure for distribution changes due to addition of a new client or the like, it is possible to set an appropriate receiving destination according to the tree structure. For example, when the client 2A is connected to the video distribution server 1A (see FIG. 4A) and then the client 2C is connected to the video distribution server 1A (see FIG. 5B), the client 2A In response to the reconnection request from the video distribution server 1A, the client 2C is reconnected. For example, as shown in FIG. 12B, four clients are receiving streaming images. Even in some cases, the number of clients that directly receive images from the video distribution server 1A can be reduced to only two (that is, the images are received directly from the video distribution server 1A compared to the state of FIG. 5B). 1 client can be reduced). As described above, the video distribution server 1A monitors the change in the tree structure periodically or irregularly, and issues a reconnection request according to the change to the client. Therefore, the burden on the network is minimized. It is possible to distribute the streaming image to each client in a reduced state.

なお、上記実施形態では、ビデオ配信サーバ1Aと、拡張DNSサーバ1Bとを別々の装置で構成することとしたが、これに限らず、1つのサーバに、ビデオ配信サーバ1A及び拡張DNSサーバ1Bと同一の機能を持たせることとしても良い。   In the above embodiment, the video distribution server 1A and the extended DNS server 1B are configured as separate devices. However, the present invention is not limited to this, and the video distribution server 1A and the extended DNS server 1B are connected to one server. It is good also as giving the same function.

なお、上記実施形態では、経路探索部14及び近傍探索部16が、ビデオ配信サーバ1A内に設けられた場合について説明したが、これに限られるものではなく、経路探索部14及び近傍探索部16の少なくとも一方が、拡張DNSサーバ1B内に設けられても良い。   In the above embodiment, the case where the route search unit 14 and the neighborhood search unit 16 are provided in the video distribution server 1A has been described. However, the present invention is not limited to this, and the route search unit 14 and the neighborhood search unit 16 are provided. At least one of the above may be provided in the extended DNS server 1B.

上述した実施例は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。   The embodiment described above is a preferred embodiment of the present invention. However, the present invention is not limited to this, and various modifications can be made without departing from the scope of the present invention.

一実施形態に係る遠隔診断システムを概略的に示す図である。It is a figure showing roughly the remote diagnosis system concerning one embodiment. ビデオ配信サーバ、拡張DNSサーバ、及びクライアントの機能構成を示すブロック図である。It is a block diagram which shows the function structure of a video delivery server, an extended DNS server, and a client. クライアントの接続開始処理と、拡張DNSサーバの問い合わせ処理とを示すフローチャートである。It is a flowchart which shows the connection start process of a client, and the inquiry process of an extended DNS server. 図3(a)、図3(b)の処理の具体例を示す図(その1)である。FIG. 6 is a diagram (part 1) illustrating a specific example of the processing of FIGS. 3 (a) and 3 (b). 図3(a)、図3(b)の処理の具体例を示す図(その2)である。FIG. 4B is a diagram (part 2) illustrating a specific example of the processing of FIG. 3A and FIG. ビデオ配信サーバによる配信開始処理、及びクライアントによる転送開始処理を示すフローチャートである。It is a flowchart which shows the delivery start process by a video delivery server, and the transfer start process by a client. ビデオ配信サーバによるツリー評価処理を示すフローチャートである。It is a flowchart which shows the tree evaluation process by a video delivery server. 図7の経路探索サブルーチン、及び近傍探索サブルーチンを示すフローチャートである。It is a flowchart which shows the route search subroutine of FIG. 7, and a neighborhood search subroutine. クライアントによるツリー情報送信処理を示すフローチャートである。It is a flowchart which shows the tree information transmission process by a client. 図9の処理の具体例を示す図である。It is a figure which shows the specific example of the process of FIG. ビデオ配信サーバによる再接続要求処理を示すフローチャートである。It is a flowchart which shows the reconnection request process by a video delivery server. 再接続処理の具体例を示す図である。It is a figure which shows the specific example of a reconnection process. クライアントによる再接続処理を示す図である。It is a figure which shows the reconnection process by a client. 再接続処理の変形例を示す図である。It is a figure which shows the modification of a reconnection process. クライアントによる接続終了処理、及びビデオ配信サーバによる配信停止処理を示すフローチャートである。It is a flowchart which shows the connection termination process by a client, and the delivery stop process by a video delivery server.

符号の説明Explanation of symbols

1A ビデオ配信サーバ
1B 拡張DNSサーバ
2A〜2D クライアント
3 ネットワーク
100 遠隔診断システム
1A Video distribution server 1B Extended DNS server 2A to 2D client 3 Network 100 Remote diagnosis system

Claims (8)

ネットワークに接続され、該ネットワークを介してストリーミング画像を送信する第1サーバと、
前記ネットワークに接続され、該ネットワークを介して受信したストリーミング画像を転送する中継機能を有する、複数のクライアントと、
前記ネットワークに接続され、前記クライアントからの問い合わせに対し、前記ネットワークにおけるストリーミング配信のツリー構造の情報に基づいて、前記第1サーバ又は前記ストリーミング画像を現に受信しているクライアントの中から、前記問い合わせを行ったクライアントに対する前記ストリーミング画像の送信に適したものを選択して、その情報を返信する第2サーバと、を備え、
前記問い合わせを行ったクライアントは、
前記第2サーバから返信された情報が、前記第1サーバの情報であった場合には、前記第1サーバから前記ストリーミング画像を直接受信し、前記第2サーバから返信された情報が、前記複数のクライアントのいずれかの情報であった場合には、そのクライアントから前記ストリーミング画像を受信することを特徴とする画像配信システム。
A first server connected to a network and transmitting a streaming image via the network;
A plurality of clients connected to the network and having a relay function of transferring a streaming image received via the network;
In response to an inquiry from the client connected to the network, the inquiry is made from the first server or the client that is currently receiving the streaming image based on information of a tree structure of streaming distribution in the network. A second server that selects the one suitable for transmission of the streaming image to the client that has been performed and returns the information;
The client that made the inquiry
When the information returned from the second server is the information of the first server, the streaming image is directly received from the first server, and the information returned from the second server is the plurality of information. When the information is any one of the clients, the streaming image is received from the client.
前記第1サーバ及び前記第2サーバは、同一のネットワークセグメント上に配置されていることを特徴とする請求項1に記載の画像配信システム。 The image distribution system according to claim 1, wherein the first server and the second server are arranged on the same network segment. 前記ストリーミング配信のツリー構造の情報は、前記第1又は第2サーバにより収集されることを特徴とする請求項1又は2に記載の画像配信システム。 The image distribution system according to claim 1 or 2, wherein the information of the tree structure of the streaming distribution is collected by the first or second server. 前記第1又は第2サーバは、前記第1サーバと前記ストリーミング画像を受信しているクライアントとの間の通信状況に関する情報を取得するとともに、前記クライアント間の接続状態に関する情報を取得して、各情報に基づいて、前記ストリーミング配信のツリー構造の情報を収集することを特徴とする請求項3に記載の画像配信システム。 The first or second server acquires information related to a communication status between the first server and a client receiving the streaming image, and acquires information related to a connection status between the clients. 4. The image distribution system according to claim 3, wherein information on the tree structure of the streaming distribution is collected based on the information. 前記クライアント間の接続状態に関する情報は、ツリー構造のリーフノードであるクライアントから前記第1又は第2サーバ側に向けて、クライアント情報を順次送信し、前記送信途中で、他のクライアントを経由する場合には、当該他のクライアントは、前記クライアント情報に自己のクライアント情報を付加して、前記第1又は第2サーバ側に送信することを特徴とする請求項4に記載の画像配信システム。 The information regarding the connection state between the clients is when the client information is sequentially transmitted from the client which is a leaf node of the tree structure toward the first or second server side, and passes through another client during the transmission. 5. The image delivery system according to claim 4, wherein the other client adds its own client information to the client information and transmits the client information to the first or second server side. 前記ストリーミング配信のツリー構造の情報が変動して、前記問い合わせを行ったクライアントに対して前記ストリーミング画像を送信するのに適したサーバ又はクライアントが変更された場合に、
前記第1サーバは、前記問い合わせを行ったクライアントに対して、前記ストリーミング画像の受信先を変更させることを特徴とする請求項3〜5のいずれか一項に記載の画像配信システム。
When the information of the tree structure of the streaming distribution fluctuates and a server or a client suitable for transmitting the streaming image to the client that made the inquiry is changed,
The image delivery system according to any one of claims 3 to 5, wherein the first server causes the client that has made the inquiry to change a receiving destination of the streaming image.
前記問い合わせを行ったクライアントに対して前記ストリーミング画像を送信するのに適したサーバ又はクライアントが変更された場合に、
前記第1サーバは、前記問い合わせを行ったクライアントに対して、前記第2サーバに対する再問い合わせを実行させることを特徴とする請求項6に記載の画像配信システム。
When a server or client suitable for transmitting the streaming image to the client that made the inquiry is changed,
The image distribution system according to claim 6, wherein the first server causes the client that has made the inquiry to execute a re-inquiry with respect to the second server.
前記問い合わせを行ったクライアントに対して前記ストリーミング画像を送信するのに適したサーバ又はクライアントが変更された場合に、
前記第1サーバは、前記問い合わせを行ったクライアントに対して、新たな接続先を指定して、再接続させることを特徴とする請求項6に記載の画像配信システム。
When a server or client suitable for transmitting the streaming image to the client that made the inquiry is changed,
The image distribution system according to claim 6, wherein the first server specifies a new connection destination and reconnects to the client that has made the inquiry.
JP2007237157A 2007-09-12 2007-09-12 Image distribution system Pending JP2009071538A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007237157A JP2009071538A (en) 2007-09-12 2007-09-12 Image distribution system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007237157A JP2009071538A (en) 2007-09-12 2007-09-12 Image distribution system

Publications (1)

Publication Number Publication Date
JP2009071538A true JP2009071538A (en) 2009-04-02

Family

ID=40607354

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007237157A Pending JP2009071538A (en) 2007-09-12 2007-09-12 Image distribution system

Country Status (1)

Country Link
JP (1) JP2009071538A (en)

Cited By (85)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013538410A (en) * 2010-09-28 2013-10-10 アマゾン テクノロジーズ インコーポレーテッド Request routing in network environments
US8782236B1 (en) 2009-06-16 2014-07-15 Amazon Technologies, Inc. Managing resources using resource expiration data
US8924528B1 (en) 2010-09-28 2014-12-30 Amazon Technologies, Inc. Latency measurement in resource requests
US8930513B1 (en) 2010-09-28 2015-01-06 Amazon Technologies, Inc. Latency measurement in resource requests
US8930544B2 (en) 2008-03-31 2015-01-06 Amazon Technologies, Inc. Network resource identification
US8938526B1 (en) 2010-09-28 2015-01-20 Amazon Technologies, Inc. Request routing management based on network components
US8996664B2 (en) 2009-03-27 2015-03-31 Amazon Technologies, Inc. Translation of resource identifiers using popularity information upon client request
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
US9003040B2 (en) 2010-11-22 2015-04-07 Amazon Technologies, Inc. Request routing processing
US9009286B2 (en) 2008-03-31 2015-04-14 Amazon Technologies, Inc. Locality based content distribution
US9021129B2 (en) 2007-06-29 2015-04-28 Amazon Technologies, Inc. Request routing utilizing client location information
US9021127B2 (en) 2007-06-29 2015-04-28 Amazon Technologies, Inc. Updating routing information based on client location
US9021128B2 (en) 2008-06-30 2015-04-28 Amazon Technologies, Inc. Request routing using network computing components
US9026616B2 (en) 2008-03-31 2015-05-05 Amazon Technologies, Inc. Content delivery reconciliation
US9049350B2 (en) 2012-04-02 2015-06-02 Canon Kabushiki Kaisha Imaging apparatus that transmits media data to reception apparatus, method of processing information, and storage medium
US9083743B1 (en) 2012-03-21 2015-07-14 Amazon Technologies, Inc. Managing request routing information utilizing performance information
US9106701B2 (en) 2010-09-28 2015-08-11 Amazon Technologies, Inc. Request routing management based on network components
US9130756B2 (en) 2009-09-04 2015-09-08 Amazon Technologies, Inc. Managing secure content in a content delivery network
US9135048B2 (en) 2012-09-20 2015-09-15 Amazon Technologies, Inc. Automated profiling of resource usage
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US9191458B2 (en) 2009-03-27 2015-11-17 Amazon Technologies, Inc. Request routing using a popularity identifier at a DNS nameserver
US9210235B2 (en) 2008-03-31 2015-12-08 Amazon Technologies, Inc. Client side cache management
US9208097B2 (en) 2008-03-31 2015-12-08 Amazon Technologies, Inc. Cache optimization
US9237114B2 (en) 2009-03-27 2016-01-12 Amazon Technologies, Inc. Managing resources in resource cache components
US9246776B2 (en) 2009-10-02 2016-01-26 Amazon Technologies, Inc. Forward-based resource delivery network management techniques
US9251112B2 (en) 2008-11-17 2016-02-02 Amazon Technologies, Inc. Managing content delivery network service providers
US9288153B2 (en) 2010-08-26 2016-03-15 Amazon Technologies, Inc. Processing encoded content
US9294391B1 (en) 2013-06-04 2016-03-22 Amazon Technologies, Inc. Managing network computing components utilizing request routing
US9323577B2 (en) 2012-09-20 2016-04-26 Amazon Technologies, Inc. Automated profiling of resource usage
US9391949B1 (en) 2010-12-03 2016-07-12 Amazon Technologies, Inc. Request routing processing
US9407699B2 (en) 2008-03-31 2016-08-02 Amazon Technologies, Inc. Content management
US9407681B1 (en) 2010-09-28 2016-08-02 Amazon Technologies, Inc. Latency measurement in resource requests
US9444759B2 (en) 2008-11-17 2016-09-13 Amazon Technologies, Inc. Service provider registration by a content broker
US9451046B2 (en) 2008-11-17 2016-09-20 Amazon Technologies, Inc. Managing CDN registration by a storage provider
US9479476B2 (en) 2008-03-31 2016-10-25 Amazon Technologies, Inc. Processing of DNS queries
US9495338B1 (en) 2010-01-28 2016-11-15 Amazon Technologies, Inc. Content distribution network
US9497259B1 (en) 2010-09-28 2016-11-15 Amazon Technologies, Inc. Point of presence management in request routing
US9515949B2 (en) 2008-11-17 2016-12-06 Amazon Technologies, Inc. Managing content delivery network service providers
US9525659B1 (en) 2012-09-04 2016-12-20 Amazon Technologies, Inc. Request routing utilizing point of presence load information
US9571389B2 (en) 2008-03-31 2017-02-14 Amazon Technologies, Inc. Request routing based on class
US9628554B2 (en) 2012-02-10 2017-04-18 Amazon Technologies, Inc. Dynamic content delivery
US9712484B1 (en) 2010-09-28 2017-07-18 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US9734472B2 (en) 2008-11-17 2017-08-15 Amazon Technologies, Inc. Request routing utilizing cost information
US9742795B1 (en) 2015-09-24 2017-08-22 Amazon Technologies, Inc. Mitigating network attacks
US9774619B1 (en) 2015-09-24 2017-09-26 Amazon Technologies, Inc. Mitigating network attacks
US9787775B1 (en) 2010-09-28 2017-10-10 Amazon Technologies, Inc. Point of presence management in request routing
US9794281B1 (en) 2015-09-24 2017-10-17 Amazon Technologies, Inc. Identifying sources of network attacks
US9819567B1 (en) 2015-03-30 2017-11-14 Amazon Technologies, Inc. Traffic surge management for points of presence
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
US9887931B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9887932B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9912740B2 (en) 2008-06-30 2018-03-06 Amazon Technologies, Inc. Latency measurement in resource requests
US9985927B2 (en) 2008-11-17 2018-05-29 Amazon Technologies, Inc. Managing content delivery network service providers by a content broker
US9992086B1 (en) 2016-08-23 2018-06-05 Amazon Technologies, Inc. External health checking of virtual private cloud network environments
US10021179B1 (en) 2012-02-21 2018-07-10 Amazon Technologies, Inc. Local resource delivery network
US10033691B1 (en) 2016-08-24 2018-07-24 Amazon Technologies, Inc. Adaptive resolution of domain name requests in virtual private cloud network environments
US10033627B1 (en) 2014-12-18 2018-07-24 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10049051B1 (en) 2015-12-11 2018-08-14 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10091096B1 (en) 2014-12-18 2018-10-02 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10097566B1 (en) 2015-07-31 2018-10-09 Amazon Technologies, Inc. Identifying targets of network attacks
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US10205698B1 (en) 2012-12-19 2019-02-12 Amazon Technologies, Inc. Source-dependent address resolution
US10225326B1 (en) 2015-03-23 2019-03-05 Amazon Technologies, Inc. Point of presence based data uploading
US10257307B1 (en) 2015-12-11 2019-04-09 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10270878B1 (en) 2015-11-10 2019-04-23 Amazon Technologies, Inc. Routing for origin-facing points of presence
US10348639B2 (en) 2015-12-18 2019-07-09 Amazon Technologies, Inc. Use of virtual endpoints to improve data transmission rates
US10372499B1 (en) 2016-12-27 2019-08-06 Amazon Technologies, Inc. Efficient region selection system for executing request-driven code
US10447648B2 (en) 2017-06-19 2019-10-15 Amazon Technologies, Inc. Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP
US10469513B2 (en) 2016-10-05 2019-11-05 Amazon Technologies, Inc. Encrypted network addresses
US10503613B1 (en) 2017-04-21 2019-12-10 Amazon Technologies, Inc. Efficient serving of resources during server unavailability
US10592578B1 (en) 2018-03-07 2020-03-17 Amazon Technologies, Inc. Predictive content push-enabled content delivery network
US10601767B2 (en) 2009-03-27 2020-03-24 Amazon Technologies, Inc. DNS query processing based on application information
US10616179B1 (en) 2015-06-25 2020-04-07 Amazon Technologies, Inc. Selective routing of domain name system (DNS) requests
US10623408B1 (en) 2012-04-02 2020-04-14 Amazon Technologies, Inc. Context sensitive object management
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10862852B1 (en) 2018-11-16 2020-12-08 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
US10938884B1 (en) 2017-01-30 2021-03-02 Amazon Technologies, Inc. Origin server cloaking using virtual private cloud network environments
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
US11025747B1 (en) 2018-12-12 2021-06-01 Amazon Technologies, Inc. Content request pattern-based routing system
US11075987B1 (en) 2017-06-12 2021-07-27 Amazon Technologies, Inc. Load estimating content delivery network
US11290418B2 (en) 2017-09-25 2022-03-29 Amazon Technologies, Inc. Hybrid content request routing system
CN114286125A (en) * 2021-12-30 2022-04-05 北京爱学习博乐教育科技有限公司 Enterprise live broadcast implementation method and system
US11604667B2 (en) 2011-04-27 2023-03-14 Amazon Technologies, Inc. Optimized deployment based upon customer locality

Cited By (179)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9992303B2 (en) 2007-06-29 2018-06-05 Amazon Technologies, Inc. Request routing utilizing client location information
US10027582B2 (en) 2007-06-29 2018-07-17 Amazon Technologies, Inc. Updating routing information based on client location
US9021127B2 (en) 2007-06-29 2015-04-28 Amazon Technologies, Inc. Updating routing information based on client location
US9021129B2 (en) 2007-06-29 2015-04-28 Amazon Technologies, Inc. Request routing utilizing client location information
US11245770B2 (en) 2008-03-31 2022-02-08 Amazon Technologies, Inc. Locality based content distribution
US10157135B2 (en) 2008-03-31 2018-12-18 Amazon Technologies, Inc. Cache optimization
US9887915B2 (en) 2008-03-31 2018-02-06 Amazon Technologies, Inc. Request routing based on class
US11451472B2 (en) 2008-03-31 2022-09-20 Amazon Technologies, Inc. Request routing based on class
US10554748B2 (en) 2008-03-31 2020-02-04 Amazon Technologies, Inc. Content management
US9888089B2 (en) 2008-03-31 2018-02-06 Amazon Technologies, Inc. Client side cache management
US9009286B2 (en) 2008-03-31 2015-04-14 Amazon Technologies, Inc. Locality based content distribution
US9894168B2 (en) 2008-03-31 2018-02-13 Amazon Technologies, Inc. Locality based content distribution
US11909639B2 (en) 2008-03-31 2024-02-20 Amazon Technologies, Inc. Request routing based on class
US10530874B2 (en) 2008-03-31 2020-01-07 Amazon Technologies, Inc. Locality based content distribution
US9026616B2 (en) 2008-03-31 2015-05-05 Amazon Technologies, Inc. Content delivery reconciliation
US11194719B2 (en) 2008-03-31 2021-12-07 Amazon Technologies, Inc. Cache optimization
US9332078B2 (en) 2008-03-31 2016-05-03 Amazon Technologies, Inc. Locality based content distribution
US9954934B2 (en) 2008-03-31 2018-04-24 Amazon Technologies, Inc. Content delivery reconciliation
US10797995B2 (en) 2008-03-31 2020-10-06 Amazon Technologies, Inc. Request routing based on class
US8930544B2 (en) 2008-03-31 2015-01-06 Amazon Technologies, Inc. Network resource identification
US10158729B2 (en) 2008-03-31 2018-12-18 Amazon Technologies, Inc. Locality based content distribution
US10305797B2 (en) 2008-03-31 2019-05-28 Amazon Technologies, Inc. Request routing based on class
US10771552B2 (en) 2008-03-31 2020-09-08 Amazon Technologies, Inc. Content management
US9621660B2 (en) 2008-03-31 2017-04-11 Amazon Technologies, Inc. Locality based content distribution
US9407699B2 (en) 2008-03-31 2016-08-02 Amazon Technologies, Inc. Content management
US10645149B2 (en) 2008-03-31 2020-05-05 Amazon Technologies, Inc. Content delivery reconciliation
US9571389B2 (en) 2008-03-31 2017-02-14 Amazon Technologies, Inc. Request routing based on class
US9544394B2 (en) 2008-03-31 2017-01-10 Amazon Technologies, Inc. Network resource identification
US9210235B2 (en) 2008-03-31 2015-12-08 Amazon Technologies, Inc. Client side cache management
US9208097B2 (en) 2008-03-31 2015-12-08 Amazon Technologies, Inc. Cache optimization
US10511567B2 (en) 2008-03-31 2019-12-17 Amazon Technologies, Inc. Network resource identification
US9479476B2 (en) 2008-03-31 2016-10-25 Amazon Technologies, Inc. Processing of DNS queries
US9608957B2 (en) 2008-06-30 2017-03-28 Amazon Technologies, Inc. Request routing using network computing components
US9912740B2 (en) 2008-06-30 2018-03-06 Amazon Technologies, Inc. Latency measurement in resource requests
US9021128B2 (en) 2008-06-30 2015-04-28 Amazon Technologies, Inc. Request routing using network computing components
US11115500B2 (en) 2008-11-17 2021-09-07 Amazon Technologies, Inc. Request routing utilizing client location information
US11283715B2 (en) 2008-11-17 2022-03-22 Amazon Technologies, Inc. Updating routing information based on client location
US9787599B2 (en) 2008-11-17 2017-10-10 Amazon Technologies, Inc. Managing content delivery network service providers
US9734472B2 (en) 2008-11-17 2017-08-15 Amazon Technologies, Inc. Request routing utilizing cost information
US9251112B2 (en) 2008-11-17 2016-02-02 Amazon Technologies, Inc. Managing content delivery network service providers
US10523783B2 (en) 2008-11-17 2019-12-31 Amazon Technologies, Inc. Request routing utilizing client location information
US9444759B2 (en) 2008-11-17 2016-09-13 Amazon Technologies, Inc. Service provider registration by a content broker
US9451046B2 (en) 2008-11-17 2016-09-20 Amazon Technologies, Inc. Managing CDN registration by a storage provider
US10116584B2 (en) 2008-11-17 2018-10-30 Amazon Technologies, Inc. Managing content delivery network service providers
US11811657B2 (en) 2008-11-17 2023-11-07 Amazon Technologies, Inc. Updating routing information based on client location
US10742550B2 (en) 2008-11-17 2020-08-11 Amazon Technologies, Inc. Updating routing information based on client location
US9515949B2 (en) 2008-11-17 2016-12-06 Amazon Technologies, Inc. Managing content delivery network service providers
US9985927B2 (en) 2008-11-17 2018-05-29 Amazon Technologies, Inc. Managing content delivery network service providers by a content broker
US9590946B2 (en) 2008-11-17 2017-03-07 Amazon Technologies, Inc. Managing content delivery network service providers
US8996664B2 (en) 2009-03-27 2015-03-31 Amazon Technologies, Inc. Translation of resource identifiers using popularity information upon client request
US10601767B2 (en) 2009-03-27 2020-03-24 Amazon Technologies, Inc. DNS query processing based on application information
US9237114B2 (en) 2009-03-27 2016-01-12 Amazon Technologies, Inc. Managing resources in resource cache components
US10491534B2 (en) 2009-03-27 2019-11-26 Amazon Technologies, Inc. Managing resources and entries in tracking information in resource cache components
US9191458B2 (en) 2009-03-27 2015-11-17 Amazon Technologies, Inc. Request routing using a popularity identifier at a DNS nameserver
US10264062B2 (en) 2009-03-27 2019-04-16 Amazon Technologies, Inc. Request routing using a popularity identifier to identify a cache component
US10230819B2 (en) 2009-03-27 2019-03-12 Amazon Technologies, Inc. Translation of resource identifiers using popularity information upon client request
US9083675B2 (en) 2009-03-27 2015-07-14 Amazon Technologies, Inc. Translation of resource identifiers using popularity information upon client request
US10574787B2 (en) 2009-03-27 2020-02-25 Amazon Technologies, Inc. Translation of resource identifiers using popularity information upon client request
US9176894B2 (en) 2009-06-16 2015-11-03 Amazon Technologies, Inc. Managing resources using resource expiration data
US8782236B1 (en) 2009-06-16 2014-07-15 Amazon Technologies, Inc. Managing resources using resource expiration data
US10521348B2 (en) 2009-06-16 2019-12-31 Amazon Technologies, Inc. Managing resources using resource expiration data
US10783077B2 (en) 2009-06-16 2020-09-22 Amazon Technologies, Inc. Managing resources using resource expiration data
US9712325B2 (en) 2009-09-04 2017-07-18 Amazon Technologies, Inc. Managing secure content in a content delivery network
US10135620B2 (en) 2009-09-04 2018-11-20 Amazon Technologis, Inc. Managing secure content in a content delivery network
US9130756B2 (en) 2009-09-04 2015-09-08 Amazon Technologies, Inc. Managing secure content in a content delivery network
US10785037B2 (en) 2009-09-04 2020-09-22 Amazon Technologies, Inc. Managing secure content in a content delivery network
US10218584B2 (en) 2009-10-02 2019-02-26 Amazon Technologies, Inc. Forward-based resource delivery network management techniques
US9893957B2 (en) 2009-10-02 2018-02-13 Amazon Technologies, Inc. Forward-based resource delivery network management techniques
US9246776B2 (en) 2009-10-02 2016-01-26 Amazon Technologies, Inc. Forward-based resource delivery network management techniques
US11205037B2 (en) 2010-01-28 2021-12-21 Amazon Technologies, Inc. Content distribution network
US10506029B2 (en) 2010-01-28 2019-12-10 Amazon Technologies, Inc. Content distribution network
US9495338B1 (en) 2010-01-28 2016-11-15 Amazon Technologies, Inc. Content distribution network
US9288153B2 (en) 2010-08-26 2016-03-15 Amazon Technologies, Inc. Processing encoded content
US10097398B1 (en) 2010-09-28 2018-10-09 Amazon Technologies, Inc. Point of presence management in request routing
US9794216B2 (en) 2010-09-28 2017-10-17 Amazon Technologies, Inc. Request routing in a networked environment
US8819283B2 (en) 2010-09-28 2014-08-26 Amazon Technologies, Inc. Request routing in a networked environment
US8924528B1 (en) 2010-09-28 2014-12-30 Amazon Technologies, Inc. Latency measurement in resource requests
US9407681B1 (en) 2010-09-28 2016-08-02 Amazon Technologies, Inc. Latency measurement in resource requests
US9253065B2 (en) 2010-09-28 2016-02-02 Amazon Technologies, Inc. Latency measurement in resource requests
US10015237B2 (en) 2010-09-28 2018-07-03 Amazon Technologies, Inc. Point of presence management in request routing
US9191338B2 (en) 2010-09-28 2015-11-17 Amazon Technologies, Inc. Request routing in a networked environment
US9185012B2 (en) 2010-09-28 2015-11-10 Amazon Technologies, Inc. Latency measurement in resource requests
US8930513B1 (en) 2010-09-28 2015-01-06 Amazon Technologies, Inc. Latency measurement in resource requests
US11336712B2 (en) 2010-09-28 2022-05-17 Amazon Technologies, Inc. Point of presence management in request routing
US9712484B1 (en) 2010-09-28 2017-07-18 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US8938526B1 (en) 2010-09-28 2015-01-20 Amazon Technologies, Inc. Request routing management based on network components
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
US10079742B1 (en) 2010-09-28 2018-09-18 Amazon Technologies, Inc. Latency measurement in resource requests
US9160703B2 (en) 2010-09-28 2015-10-13 Amazon Technologies, Inc. Request routing management based on network components
JP2013538410A (en) * 2010-09-28 2013-10-10 アマゾン テクノロジーズ インコーポレーテッド Request routing in network environments
US10778554B2 (en) 2010-09-28 2020-09-15 Amazon Technologies, Inc. Latency measurement in resource requests
US10225322B2 (en) 2010-09-28 2019-03-05 Amazon Technologies, Inc. Point of presence management in request routing
US11108729B2 (en) 2010-09-28 2021-08-31 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
US9800539B2 (en) 2010-09-28 2017-10-24 Amazon Technologies, Inc. Request routing management based on network components
US9787775B1 (en) 2010-09-28 2017-10-10 Amazon Technologies, Inc. Point of presence management in request routing
US9497259B1 (en) 2010-09-28 2016-11-15 Amazon Technologies, Inc. Point of presence management in request routing
US10931738B2 (en) 2010-09-28 2021-02-23 Amazon Technologies, Inc. Point of presence management in request routing
US9106701B2 (en) 2010-09-28 2015-08-11 Amazon Technologies, Inc. Request routing management based on network components
US9003040B2 (en) 2010-11-22 2015-04-07 Amazon Technologies, Inc. Request routing processing
US9930131B2 (en) 2010-11-22 2018-03-27 Amazon Technologies, Inc. Request routing processing
US10951725B2 (en) 2010-11-22 2021-03-16 Amazon Technologies, Inc. Request routing processing
US10200492B2 (en) 2010-11-22 2019-02-05 Amazon Technologies, Inc. Request routing processing
US9391949B1 (en) 2010-12-03 2016-07-12 Amazon Technologies, Inc. Request routing processing
US11604667B2 (en) 2011-04-27 2023-03-14 Amazon Technologies, Inc. Optimized deployment based upon customer locality
US9628554B2 (en) 2012-02-10 2017-04-18 Amazon Technologies, Inc. Dynamic content delivery
US10021179B1 (en) 2012-02-21 2018-07-10 Amazon Technologies, Inc. Local resource delivery network
US9083743B1 (en) 2012-03-21 2015-07-14 Amazon Technologies, Inc. Managing request routing information utilizing performance information
US9172674B1 (en) 2012-03-21 2015-10-27 Amazon Technologies, Inc. Managing request routing information utilizing performance information
US9049350B2 (en) 2012-04-02 2015-06-02 Canon Kabushiki Kaisha Imaging apparatus that transmits media data to reception apparatus, method of processing information, and storage medium
US10623408B1 (en) 2012-04-02 2020-04-14 Amazon Technologies, Inc. Context sensitive object management
US11303717B2 (en) 2012-06-11 2022-04-12 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US11729294B2 (en) 2012-06-11 2023-08-15 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US10225362B2 (en) 2012-06-11 2019-03-05 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US9525659B1 (en) 2012-09-04 2016-12-20 Amazon Technologies, Inc. Request routing utilizing point of presence load information
US9135048B2 (en) 2012-09-20 2015-09-15 Amazon Technologies, Inc. Automated profiling of resource usage
US9323577B2 (en) 2012-09-20 2016-04-26 Amazon Technologies, Inc. Automated profiling of resource usage
US10542079B2 (en) 2012-09-20 2020-01-21 Amazon Technologies, Inc. Automated profiling of resource usage
US10015241B2 (en) 2012-09-20 2018-07-03 Amazon Technologies, Inc. Automated profiling of resource usage
US10205698B1 (en) 2012-12-19 2019-02-12 Amazon Technologies, Inc. Source-dependent address resolution
US10645056B2 (en) 2012-12-19 2020-05-05 Amazon Technologies, Inc. Source-dependent address resolution
US9294391B1 (en) 2013-06-04 2016-03-22 Amazon Technologies, Inc. Managing network computing components utilizing request routing
US9929959B2 (en) 2013-06-04 2018-03-27 Amazon Technologies, Inc. Managing network computing components utilizing request routing
US10374955B2 (en) 2013-06-04 2019-08-06 Amazon Technologies, Inc. Managing network computing components utilizing request routing
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10728133B2 (en) 2014-12-18 2020-07-28 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US11381487B2 (en) 2014-12-18 2022-07-05 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10091096B1 (en) 2014-12-18 2018-10-02 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10033627B1 (en) 2014-12-18 2018-07-24 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US11863417B2 (en) 2014-12-18 2024-01-02 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US11297140B2 (en) 2015-03-23 2022-04-05 Amazon Technologies, Inc. Point of presence based data uploading
US10225326B1 (en) 2015-03-23 2019-03-05 Amazon Technologies, Inc. Point of presence based data uploading
US9887931B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9887932B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9819567B1 (en) 2015-03-30 2017-11-14 Amazon Technologies, Inc. Traffic surge management for points of presence
US10469355B2 (en) 2015-03-30 2019-11-05 Amazon Technologies, Inc. Traffic surge management for points of presence
US11461402B2 (en) 2015-05-13 2022-10-04 Amazon Technologies, Inc. Routing based request correlation
US10691752B2 (en) 2015-05-13 2020-06-23 Amazon Technologies, Inc. Routing based request correlation
US10180993B2 (en) 2015-05-13 2019-01-15 Amazon Technologies, Inc. Routing based request correlation
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
US10616179B1 (en) 2015-06-25 2020-04-07 Amazon Technologies, Inc. Selective routing of domain name system (DNS) requests
US10097566B1 (en) 2015-07-31 2018-10-09 Amazon Technologies, Inc. Identifying targets of network attacks
US10200402B2 (en) 2015-09-24 2019-02-05 Amazon Technologies, Inc. Mitigating network attacks
US9774619B1 (en) 2015-09-24 2017-09-26 Amazon Technologies, Inc. Mitigating network attacks
US9742795B1 (en) 2015-09-24 2017-08-22 Amazon Technologies, Inc. Mitigating network attacks
US9794281B1 (en) 2015-09-24 2017-10-17 Amazon Technologies, Inc. Identifying sources of network attacks
US11134134B2 (en) 2015-11-10 2021-09-28 Amazon Technologies, Inc. Routing for origin-facing points of presence
US10270878B1 (en) 2015-11-10 2019-04-23 Amazon Technologies, Inc. Routing for origin-facing points of presence
US10049051B1 (en) 2015-12-11 2018-08-14 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10257307B1 (en) 2015-12-11 2019-04-09 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10348639B2 (en) 2015-12-18 2019-07-09 Amazon Technologies, Inc. Use of virtual endpoints to improve data transmission rates
US11463550B2 (en) 2016-06-06 2022-10-04 Amazon Technologies, Inc. Request management for hierarchical cache
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10666756B2 (en) 2016-06-06 2020-05-26 Amazon Technologies, Inc. Request management for hierarchical cache
US11457088B2 (en) 2016-06-29 2022-09-27 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US10516590B2 (en) 2016-08-23 2019-12-24 Amazon Technologies, Inc. External health checking of virtual private cloud network environments
US9992086B1 (en) 2016-08-23 2018-06-05 Amazon Technologies, Inc. External health checking of virtual private cloud network environments
US10469442B2 (en) 2016-08-24 2019-11-05 Amazon Technologies, Inc. Adaptive resolution of domain name requests in virtual private cloud network environments
US10033691B1 (en) 2016-08-24 2018-07-24 Amazon Technologies, Inc. Adaptive resolution of domain name requests in virtual private cloud network environments
US10505961B2 (en) 2016-10-05 2019-12-10 Amazon Technologies, Inc. Digitally signed network address
US10616250B2 (en) 2016-10-05 2020-04-07 Amazon Technologies, Inc. Network addresses with encoded DNS-level information
US10469513B2 (en) 2016-10-05 2019-11-05 Amazon Technologies, Inc. Encrypted network addresses
US11330008B2 (en) 2016-10-05 2022-05-10 Amazon Technologies, Inc. Network addresses with encoded DNS-level information
US11762703B2 (en) 2016-12-27 2023-09-19 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10372499B1 (en) 2016-12-27 2019-08-06 Amazon Technologies, Inc. Efficient region selection system for executing request-driven code
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10938884B1 (en) 2017-01-30 2021-03-02 Amazon Technologies, Inc. Origin server cloaking using virtual private cloud network environments
US10503613B1 (en) 2017-04-21 2019-12-10 Amazon Technologies, Inc. Efficient serving of resources during server unavailability
US11075987B1 (en) 2017-06-12 2021-07-27 Amazon Technologies, Inc. Load estimating content delivery network
US10447648B2 (en) 2017-06-19 2019-10-15 Amazon Technologies, Inc. Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP
US11290418B2 (en) 2017-09-25 2022-03-29 Amazon Technologies, Inc. Hybrid content request routing system
US10592578B1 (en) 2018-03-07 2020-03-17 Amazon Technologies, Inc. Predictive content push-enabled content delivery network
US11362986B2 (en) 2018-11-16 2022-06-14 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
US10862852B1 (en) 2018-11-16 2020-12-08 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
US11025747B1 (en) 2018-12-12 2021-06-01 Amazon Technologies, Inc. Content request pattern-based routing system
CN114286125B (en) * 2021-12-30 2023-12-19 北京爱学习博乐教育科技有限公司 Method and system for realizing enterprise live broadcast
CN114286125A (en) * 2021-12-30 2022-04-05 北京爱学习博乐教育科技有限公司 Enterprise live broadcast implementation method and system

Similar Documents

Publication Publication Date Title
JP2009071538A (en) Image distribution system
JP6047229B2 (en) Name-based neighbor discovery and multi-hop service discovery in information-centric networks
US8116235B2 (en) Peer-to-peer aided live video sharing system
KR20020017926A (en) Sub- network aware distributed internet contents delivery network and control mechanism
JP3872051B2 (en) System and method for searching and distributing contents, and program
KR101473660B1 (en) Web-based real time data pushing method and system thereof
KR20090078717A (en) Upnp apparatus for providing multiple remote access service to universal plug and play network and method thereof
JP5913258B2 (en) Relay device and data transfer method
US8619631B2 (en) Information communication system, information communication method, node device included in information communication system and recording medium recording information processing program
WO2013143360A1 (en) Method for downloading service data and mobile terminal
WO2013152718A1 (en) Path computation element communication protocol session establishment method and device
JP4115354B2 (en) Peer-to-peer communication system
US8051157B2 (en) Discovery apparatus and method
JP4730261B2 (en) Communications system
JP2015228112A (en) Communication device, communication device control method, and program
CN104660550A (en) Method for performing session migration among plurality of servers
KR100768631B1 (en) Method And Apparatus For Content Routing Of Content Level In The Content Delivery Network
EP2216940A1 (en) Method, system and device for switching source
JP2012165269A (en) Relay server and relay communication system
JP2008108116A (en) Two-way communication system, server device, relay device, two-way communication method, and program
JP3682439B2 (en) Data communication system and method, server device, client device, and program
JP5723808B2 (en) COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM
KR20130059379A (en) Confidential or protected access to a network of nodes distributed over a communication architecture with the aid of a topology server
JP2018110342A (en) Band steering system and band steering method
JP2009060252A (en) Data acquiring method