[go: up one dir, main page]

JP2005348262A - Data communication system, electronic conference system, data communication method, data communication program, and storage medium - Google Patents

Data communication system, electronic conference system, data communication method, data communication program, and storage medium Download PDF

Info

Publication number
JP2005348262A
JP2005348262A JP2004167650A JP2004167650A JP2005348262A JP 2005348262 A JP2005348262 A JP 2005348262A JP 2004167650 A JP2004167650 A JP 2004167650A JP 2004167650 A JP2004167650 A JP 2004167650A JP 2005348262 A JP2005348262 A JP 2005348262A
Authority
JP
Japan
Prior art keywords
server
client
screen data
screen
transmitted
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.)
Granted
Application number
JP2004167650A
Other languages
Japanese (ja)
Other versions
JP4222561B2 (en
Inventor
Taiga Asano
大雅 淺野
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.)
Ricoh Co Ltd
Original Assignee
Ricoh 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2004167650A priority Critical patent/JP4222561B2/en
Publication of JP2005348262A publication Critical patent/JP2005348262A/en
Application granted granted Critical
Publication of JP4222561B2 publication Critical patent/JP4222561B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】 TCPとUDPとを切り替えてデータ通信を行うデータ通信方式及び電子会議システムを提供する。
【解決手段】 クライアント2は、サーバ1に対してUDPで送信し(S1)、サーバ1は共有を許可すると、クライアント2へ許可を通知するパケットを送信すると共に、クライアント2のネットワークアドレスを記憶する(S2,S3)。クライアント2は、サーバのネットワークアドレスを記憶し、画面データを受信して表示する準備を整える(S4)。サーバからクライアントに対して初期画面データがUDPで送信され(S5a)、サーバの共有画面領域に更新がある度に画面データがUDPで送信される(S5b,S5c,S5d)。画面共有を終了する場合は、クライアントから切断要求をUDPでサーバに送信し(S7)、切断要求を受信したサーバは切断の確認をUDPでクライアントへ送信すると共に、該クライアントへの送受信の設定を解除する(S8,S9)。一方、切断OKを受信したクライアントはサーバへの送受信の設定を解除する(S10)。
【選択図】 図2
PROBLEM TO BE SOLVED: To provide a data communication method and an electronic conference system for performing data communication by switching between TCP and UDP.
A client 2 transmits to the server 1 by UDP (S1). When the server 1 permits sharing, the client 2 transmits a packet notifying permission to the client 2 and stores the network address of the client 2. (S2, S3). The client 2 stores the network address of the server and prepares to receive and display the screen data (S4). Initial screen data is transmitted from the server to the client by UDP (S5a), and screen data is transmitted by UDP every time the shared screen area of the server is updated (S5b, S5c, S5d). When the screen sharing is to be ended, a disconnection request is transmitted from the client to the server by UDP (S7), and the server that has received the disconnection request transmits a confirmation of disconnection to the client by UDP and sets transmission / reception to the client. Release (S8, S9). On the other hand, the client that has received the disconnect OK cancels the transmission / reception setting to the server (S10).
[Selection] Figure 2

Description

本発明は、ある情報機器の表示している画面データを、他の情報機器が共有することが可能な、または、更に他の情報機器からの遠隔操作が可能であるサーバ/クライアント型のデータ通信方式に関する。また、前記通信方式を利用した電子会議システムに関する。また、データ通信方法、データ通信プログラム及び記憶媒体に関する。   The present invention is a server / client type data communication in which screen information displayed by a certain information device can be shared by another information device, or can be remotely operated from another information device. Regarding the method. The present invention also relates to an electronic conference system using the communication method. The present invention also relates to a data communication method, a data communication program, and a storage medium.

近年、コンピュータシステムの処理高速化やネットワークの高速化等により、遠方のユーザと会議を行う電子会議システムが普及し始めている。電子会議システムに用いるソフトウェアとして、以下にあげるものが流通している。   In recent years, electronic conferencing systems that conduct conferences with distant users have become widespread due to the speeding up of computer system processing and network speedup. The following software is distributed in the electronic conference system.

1.Microsoft NetMeeting
米国Microsoft社の販売するWindows(登録商標)系列の一部のOSに、標準で搭載されている電子会議アプリケーションで、サーバのデスクトップ画面全体や、もしくは指定したアプリケーションの画面をクライアントから閲覧する、あるいは遠隔操作することが可能となっている。
1. Microsoft NetMeeting
View the entire server desktop screen or specified application screen from the client using the electronic conference application installed as standard in some Windows (registered trademark) operating systems sold by Microsoft Corporation in the United States, or Remote operation is possible.

2.VNC(Virtual Network Computing)
米国AT&T社の開発した画面共有ソフトであり、基本的にはサーバのデスクトップ画面全体を共有する。RFB(Remote Frame Buffer)プロトコルと呼ばれるプロトコルを用いて、サーバの画面領域の更新部分をエンコードし、クライアントに送信している。このVNCを元に開発されたソフトには、指定したアプリケーションの画面領域のみを共有したり、サーバのデスクトップ画面のうち指定した矩形領域のみを共有することが出来るよう改良されたものがある。画面データのエンコード方式に強力な圧縮を掛けたものなども開発されている。このような改良がなされたものとしては、例えば、TightVNC,eSVNC,VDACC VNC等のソフトが知られている。
2. VNC (Virtual Network Computing)
This is screen sharing software developed by AT & T in the United States, and basically shares the entire desktop screen of the server. An updated part of the screen area of the server is encoded using a protocol called RFB (Remote Frame Buffer) protocol and transmitted to the client. Some software developed based on this VNC has been improved so that only the specified application screen area can be shared, or only the specified rectangular area of the server desktop screen can be shared. A screen data encoding method with strong compression has been developed. As such improvements, software such as TightVNC, eSVNC, VDACC VNC is known, for example.

他にも、画面共有をメイン機能とするソフトウェアとしては、シマンテック社のPC Anywhereや、LapLink Gold、PCのリモート管理ツールとして、Danware社のNetOp Remote Controlや、Radmin社のRemote Administratorなどがある。
また、画面共有機能を利用した教育用途のソフトウェアとして、Danware社のNetOp Schoolや、Cross Tech社開発の、リモコン倶楽部for Schoolがある。
Other software that has screen sharing as its main function includes Symantec PC Anywhere, LapLink Gold, and PC remote management tools such as Danware NetOp Remote Control and Radmin Remote Administrator.
Software for educational use that uses the screen sharing function includes NetOp School of Danware and Remote Control Club for School developed by Cross Tech.

3.MulticastVNC
前記VNCのJava(登録商標)上で動作するクライアントソフトウェアの改良版であり、サーバの画面データを、複数のクライアントに中継する機能を有する。これにより、1つのサーバに、大量のクライアントが接続することにより、画面更新速度が低下するのを低減することが可能となっている。
3. MulticastVNC
It is an improved version of the client software that operates on the Java (registered trademark) of the VNC, and has a function of relaying server screen data to a plurality of clients. Thereby, it is possible to reduce a decrease in the screen update speed due to a large number of clients connected to one server.

4.Windows RemoteDesktop
Microsoft社のOSの一つである、Windows Xp Professionalでは、RemoteDesktopという画面共有機能が備わっている。これも、同様にRemoteDesktopサーバの画面データをRemoteDesktopクライアントで受信し、閲覧したり、クライアントからの遠隔操作を可能にしている。しかし、単純に画面データを送信するだけなので、クライアント機器でWindows MediaPlayerなどのソフトウェアで、ビデオ映像を閲覧しようとすると、コマ落ちが発生するという問題が指摘されている。
4). Windows RemoteDesktop
Windows Xp Professional, one of Microsoft's OSs, has a screen sharing function called RemoteDesktop. Similarly, the screen data of the RemoteDesktop server is received by the RemoteDesktop client and can be browsed or remotely operated from the client. However, since screen data is simply transmitted, it has been pointed out that when a video image is viewed on a client device with software such as Windows MediaPlayer, frames are dropped.

また、特許文献1には、コネクションレス型ネットワークを介して接続された会議出席者と、ブリッジを有するコネクション型ネットワークを介して接続された会議出席者との間でテレコンファレンス(電気的通信手段による会議)を行うことが可能なテレコンファレンス装置に関する技術が開示されている。
特開平10−257053号公報
Patent Document 1 discloses a teleconference (by an electric communication means) between a conference participant connected via a connectionless network and a conference participant connected via a connection network having a bridge. A technology related to a teleconference device capable of performing a conference is disclosed.
Japanese Patent Laid-Open No. 10-270553

しかしながら、画面データの送信は、いずれもデータストリーム型の通信方式であるTCPパケットを使用している。TCP/IP通信においては、通信の確実性が保証されるが、パケットを受信したことに対する返答を行う、つまりACKパケットを返す必要がある。
一方、データグラム型の通信方式であるUDP/IP通信においては、パケットの受信に対して、ACKを返す必要がない。これにより、通信の確実性は保証されないが、通信速度が向上する。また、UDPパケットのヘッダは64ビットであるのに対し、TCPは182ビットあり、このヘッダのオーバーヘッドが通信速度の低下の原因になる場合もある。特に、電子会議システムのように、1つのサーバに対して、複数のクライアントが画面共有によって、サーバ上に表示された文書の閲覧を行ったり、文書をクライアントから遠隔編集する場合には、1クライアント毎にTCP接続を確立させる必要があり、通信速度の低下を招き、クライアントの画面更新が遅くなり、利用者がストレスを感じたり、誤った遠隔操作を行ってしまう可能性も高くなる。例えば、単一のサーバに対して、10台以上のクライアントが接続した場合、既存のソフトウェアでは、画面更新速度が落ちて、実用に耐えられなくなってしまう。
However, transmission of screen data uses a TCP packet that is a data stream type communication method. In TCP / IP communication, the certainty of communication is guaranteed, but it is necessary to respond to reception of a packet, that is, return an ACK packet.
On the other hand, in UDP / IP communication which is a datagram type communication method, it is not necessary to return ACK in response to packet reception. As a result, the reliability of communication is not guaranteed, but the communication speed is improved. The header of a UDP packet is 64 bits, whereas TCP has 182 bits, and the overhead of this header may cause a decrease in communication speed. In particular, when a plurality of clients browse a document displayed on a server by screen sharing or remotely edit a document from a client as in an electronic conference system, one client is used. Each time it is necessary to establish a TCP connection, the communication speed is lowered, the client screen is updated slowly, and the user is likely to feel stress or perform an erroneous remote operation. For example, when 10 or more clients are connected to a single server, the screen update speed is lowered with existing software, and it cannot be put into practical use.

これを解決するため、MulticastVNCのように、中継機器を挟んでやることも可能であるが、中継機器での処理による画面更新の遅れが生じるため、中継機器を介して接続されるクライアントは、その台数が増えれば、それだけ画面更新速度は低下する。   In order to solve this, it is possible to sandwich the relay device like MulticastVNC, but since the screen update is delayed due to processing in the relay device, the client connected via the relay device As the number increases, the screen update speed decreases accordingly.

本発明は上記事情を鑑みてなされたものであり、必要に応じて、TCPとUDPとを切り替えてデータ通信を行うデータ通信方式、電子会議システム、データ通信方法、データ通信プログラム、記憶媒体を提供することを目的とする。   The present invention has been made in view of the above circumstances, and provides a data communication system, an electronic conference system, a data communication method, a data communication program, and a storage medium that perform data communication by switching between TCP and UDP as necessary. The purpose is to do.

前記課題を解決するために、請求項1記載の発明は、サーバとして機能する情報機器と、前記サーバのクライアントとして機能する情報機器を構成要素とし、前記サーバは、その表示画面の少なくとも一部に関するデータを、前記クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する手段を有し、前記クライアントは、前記サーバから受信した画面データを表示装置に表示することにより、前記サーバの表示画面を共有する手段を有するネットワークシステムにおけるデータ通信方式であって、送信する画面領域のデータの種類または表示条件、クライアントとの通信環境、あるいはユーザが与える指示の何れかによって、前記サーバは前記画面データを送信する場合に、送信する画面データの少なくとも一部を、TCPパケットを用いて送信するか、もしくはUDPパケットを用いて送信するかを切り替えて送信する手段を有することを特徴とする。   In order to solve the above-mentioned problem, the invention according to claim 1 includes an information device functioning as a server and an information device functioning as a client of the server, and the server relates to at least a part of a display screen thereof. Means for transmitting data to the client via a network that communicates using an IP protocol, and the client displays the screen data received from the server on a display device, whereby the display screen of the server A data communication method in a network system having means for sharing the screen, wherein the server is configured to transmit the screen data according to any one of the type of data or display condition of the screen area to be transmitted, the communication environment with the client, or an instruction given by the user. At least part of the screen data to be sent Or transmitted using TCP packets, or characterized by having a means for transmitting by switching or transmitted using UDP packets.

請求項2記載の発明は、前記サーバは、UDPマルチキャストまたはUDPブロードキャストパケットを用いて複数の前記クライアントに対して、画面データを同報通信方式で送信する手段を有することを特徴とする。   The invention described in claim 2 is characterized in that the server has means for transmitting screen data to the plurality of clients by a broadcast communication method using a UDP multicast or a UDP broadcast packet.

請求項3記載の発明は、前記サーバは、アプリケーションプログラム毎にTCPパケットで画面データを送信するか、もしくはUDPパケットで送信するかを登録する手段を有し、TCPパケットで送信するよう登録されたアプリケーションプログラムの画面データはTCPパケットで送信し、UDPパケットで送信するよう登録されたアプリケーションプログアムの画面データは、UDPパケットで送信することを特徴する。   According to a third aspect of the present invention, the server has means for registering whether to transmit screen data in a TCP packet or a UDP packet for each application program, and is registered to transmit in a TCP packet. The screen data of the application program is transmitted by a TCP packet, and the screen data of an application program registered to be transmitted by a UDP packet is transmitted by a UDP packet.

請求項4記載の発明は、前記サーバは、アプリケーションプログラムのウィンドウが、最前面に表示されているか、否かを判定する手段を有し、最前面に表示されたウィンドウの画面データを送信する場合はTCPパケットで送信し、最前面にないウィンドウ、またはデスクトップ画面の画面データは、UDPパケットで送信することを特徴する。   According to a fourth aspect of the present invention, the server has means for determining whether or not the window of the application program is displayed in the foreground, and transmits screen data of the window displayed in the foreground. Is transmitted with a TCP packet, and the window data not on the foreground or the screen data of the desktop screen is transmitted with a UDP packet.

請求項5記載の発明は、前記サーバは、アプリケーションプログラムのウィンドウ上に、アクティブであるか、否かを判定する手段を有し、アクティブウィンドウの画面データを送信する場合はTCPパケットで送信し、非アクティブウィンドウ、またはデスクトップ画面の画面データは、UDPパケットで送信することを特徴する。   The invention according to claim 5 has a means for determining whether or not the server is active on the window of the application program. When transmitting the screen data of the active window, the server transmits it with a TCP packet. The screen data of the inactive window or the desktop screen is transmitted by a UDP packet.

請求項6記載の発明は、前記サーバは、起動中のアプリケーションプログラムに対し、TCPパケットで画面データを送信するか、もしくはUDPパケットで送信するかをユーザが指示する手段を有し、TCPパケットで送信するよう登録されたアプリケーションプログラムの画面データはTCPパケットで送信し、UDPパケットで送信するよう登録されたアプリケーションプログアムの画面データはUDPパケットで送信することを特徴する。   According to a sixth aspect of the present invention, the server includes means for a user to instruct whether to transmit screen data using a TCP packet or a UDP packet to a running application program. Screen data of an application program registered to be transmitted is transmitted by a TCP packet, and screen data of an application program registered to be transmitted by a UDP packet is transmitted by a UDP packet.

請求項7記載の発明は、前記サーバは、共有している画面領域のうち任意の領域に関して、TCPパケットで画面データを送信するか、もしくはUDPパケットで送信するかをユーザが指示する手段を有し、TCPパケットで送信するよう登録された画面領域の画面データはTCPパケットで送信し、UDPパケットで送信するよう登録された画面領域の画面データはUDPパケットで送信することを特徴する。   According to a seventh aspect of the present invention, the server has means for the user to instruct whether to transmit screen data using a TCP packet or a UDP packet with respect to an arbitrary one of the shared screen regions. The screen data of the screen area registered to be transmitted by the TCP packet is transmitted by the TCP packet, and the screen data of the screen area registered to be transmitted by the UDP packet is transmitted by the UDP packet.

請求項8記載の発明は、前記サーバは、ユーザの指示により、画面データを送信するプロトコルを切り替える手段を有し、ユーザがTCPプロトコル送信するよう指示した場合はTCPパケットで画面データを送信し、ユーザがUDPプロトコル送信するよう指示した場合はUDPパケットで画面データを送信することを特徴する。   The invention according to claim 8 is characterized in that the server has means for switching a protocol for transmitting screen data according to a user instruction, and when the user instructs to transmit the TCP protocol, transmits the screen data in a TCP packet, When the user instructs to send the UDP protocol, the screen data is sent by the UDP packet.

請求項9記載の発明は、前記サーバは、接続クライアント数を管理する手段と、接続クライアント数に応じて画面データの送信をTCPプロトコルで行うか、もしくはUDPプロトコルで送信するかを切り替える手段を有し、前記接続クライアント数が所定の数より少ない場合は、TCPパケットで画面データを送信し、前記接続クライアント数が所定の数より多い場合は、UDPパケットで画面データを送信することを特徴する。   The invention according to claim 9 is characterized in that the server has means for managing the number of connected clients, and means for switching between screen data transmission using the TCP protocol or UDP protocol depending on the number of connected clients. When the number of connected clients is smaller than a predetermined number, the screen data is transmitted by a TCP packet, and when the number of connected clients is larger than the predetermined number, the screen data is transmitted by a UDP packet.

請求項10記載の発明は、前記サーバは、接続クライアント数が有線LANで接続されているか、もしくは途中で無線LANを介して接続されているかを管理する手段を有し、無線LANを介して接続しているクライアントに対しては、TCPパケットで画面データを送信し、有線LANのみで接続されているクライアントに対しては、UDPパケットで画面データを送信することを特徴する。   The invention according to claim 10 is characterized in that the server has means for managing whether the number of connected clients is connected via a wired LAN or is connected via a wireless LAN in the middle, and is connected via a wireless LAN. It is characterized in that screen data is transmitted with a TCP packet to a client that is connected, and screen data is transmitted with a UDP packet to a client connected only with a wired LAN.

請求項11記載の発明は、前記サーバは、接続クライアント数がLANで接続されているか、もしくはWANを介して接続されているかを管理する手段を有し、WANを介して接続しているクライアントに対しては、TCPパケットで画面データを送信し、LANで接続されているクライアントに対しては、UDPプロトコル送信するよう指示した場合は、UDパケットで画面データを送信することを特徴する。   The invention according to claim 11 is characterized in that the server has means for managing whether the number of connected clients is connected via a LAN or via a WAN, and the client connected via the WAN On the other hand, the screen data is transmitted using a TCP packet, and when the client connected via the LAN is instructed to transmit the UDP protocol, the screen data is transmitted using a UD packet.

請求項12記載の発明は、前記サーバは、送信する画面データの残量、または画面データの送信レートを測定する手段を有し、前記画面データ送信の残量または画面データの送信レートが所定の値より小さい場合は、TCPパケットで画面データを送信し、前記画面データ送信の残量または画面データの送信レートが所定の値を超える場合は、UDPパケットで画面データを送信することを特徴する。   The invention according to claim 12 is characterized in that the server has means for measuring the remaining amount of screen data to be transmitted or the transmission rate of screen data, and the remaining amount of screen data transmission or the transmission rate of screen data is a predetermined value. When the value is smaller than the value, the screen data is transmitted using a TCP packet, and when the remaining screen data transmission amount or the screen data transmission rate exceeds a predetermined value, the screen data is transmitted using a UDP packet.

請求項13記載の発明は、前記サーバは、該サーバと接続クライアントとの間での、ネットワークの通信速度を測定する手段を有し、前記通信速度が所定の値より小さい場合は、UDPパケットで画面データを送信し、前記通信速度が所定の値を超える場合は、TCPパケットで画面データを送信することを特徴する。   According to a thirteenth aspect of the present invention, the server includes means for measuring a network communication speed between the server and the connected client. When the communication speed is smaller than a predetermined value, the server uses a UDP packet. When screen data is transmitted and the communication speed exceeds a predetermined value, the screen data is transmitted by a TCP packet.

請求項14記載の発明は、前記サーバは、該サーバと接続クライアントとの間で、1つのパケットで送信可能なデータ容量(MTU)を測定する手段を有し、前記MTUが所定の値より小さい場合は、UDPパケットで画面データを送信し、前記MTUが所定の値を超える場合は、TCPパケットで画面データを送信することを特徴する。   The invention according to claim 14 is characterized in that the server has means for measuring a data capacity (MTU) that can be transmitted in one packet between the server and the connected client, and the MTU is smaller than a predetermined value. In this case, the screen data is transmitted by a UDP packet, and when the MTU exceeds a predetermined value, the screen data is transmitted by a TCP packet.

請求項15記載の発明は、前記サーバは、該サーバと接続クライアントとの間での、ネットワークのQoSを測定する手段を有し、前記QoSが所定の値より小さい場合は、TCPパケットで画面データを送信し、前記QoSが所定の値を超える場合は、UDPパケットで画面データを送信することを特徴する。   According to a fifteenth aspect of the present invention, the server has means for measuring the QoS of the network between the server and the connection client, and when the QoS is smaller than a predetermined value, the screen data is transmitted with a TCP packet. When the QoS exceeds a predetermined value, the screen data is transmitted using a UDP packet.

請求項16記載の発明は、前記サーバは、接続クライアントの優先権を管理する手段を有し、優先権の与えられているクライアントに対しては、TCPパケットで画面データを送信し、優先権が与えられていないクライアントに対しては、UDPパケットで画面データを送信することを特徴する。   In the invention described in claim 16, the server has means for managing the priority of the connected client, and the screen data is transmitted to the client given the priority by a TCP packet. It is characterized in that screen data is transmitted by a UDP packet to a client not given.

請求項17記載の発明は、前記サーバは、クライアントからの入力イベントを受信し、受信した入力イベントをサーバに転送する手段と、前記クライアントが一定時間内に入力イベントを前記サーバに送信したかを管理する手段とを有し、一定時間内に入力イベントを前記サーバに送信したクライアントに対しては、TCPパケットで画面データを送信し、一定時間内に入力イベントを前記サーバに送信していないクライアントに対しては、UDPパケットで画面データを送信することを特徴する。   The invention according to claim 17 is characterized in that the server receives an input event from the client, forwards the received input event to the server, and whether the client has transmitted the input event to the server within a predetermined time. A client that transmits a screen data in a TCP packet to a client that has transmitted an input event to the server within a predetermined time, and has not transmitted the input event to the server within a predetermined time. Is characterized in that screen data is transmitted by a UDP packet.

請求項18記載の発明は、前記サーバは、画面データを送信する際、送信領域の画面データが文字データを含むものであるか否かを、OSがフォント描画命令を行っている領域であるか否かによって判断する手段を有し、文字データを含む領域の画面データはTCPパケットで送信し、文字データを含まない領域の画面データはUDPパケットで送信することを特徴する。   In the invention described in claim 18, when the server transmits the screen data, whether the screen data in the transmission area includes character data or not, and whether the OS performs the font drawing command or not. The screen data of the area including the character data is transmitted by a TCP packet, and the screen data of the area not including the character data is transmitted by a UDP packet.

請求項19記載の発明は、前記サーバは、該サーバのCPU負荷が所定の負荷量を超えているかどうかを判断する手段を有し、CPU負荷が所定の負荷量以下の場合は、TCPパケットで画面データを送信し、CPU負荷が所定の負荷量を超えている場合は、UDPパケットで画面データを送信することを特徴する。   The invention according to claim 19 is characterized in that the server has means for determining whether or not the CPU load of the server exceeds a predetermined load amount. If the CPU load is equal to or less than the predetermined load amount, the server uses a TCP packet. When the screen data is transmitted and the CPU load exceeds a predetermined load amount, the screen data is transmitted using a UDP packet.

請求項20記載の発明は、サーバとして機能する情報機器と、前記サーバのクライアントとして機能する情報機器を構成要素とし、前記サーバは、その表示画面の少なくとも一部に関するデータを、前記クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する手段を有し、前記クライアントは、前記サーバから受信した画面データを表示装置に表示することにより、前記サーバの表示画面を共有する手段を有するネットワークシステムにおけるデータ通信方式であって、前記ネットワークシステムは、前記サーバから受信した画面データを前記クライアントへと中継する中継機器を含み、前記中継機器は、前記サーバからTCPパケットで受信した画面データをUDPパケットで前記クライアントに送信する手段を有することを特徴とする。   An invention according to claim 20 is composed of an information device functioning as a server and an information device functioning as a client of the server, and the server transmits data relating to at least a part of the display screen to the client according to the IP protocol. A network system having means for transmitting via a network that communicates using the server, wherein the client displays the screen data received from the server on a display device, thereby sharing the display screen of the server The network system includes a relay device that relays the screen data received from the server to the client, and the relay device receives the screen data received from the server by a TCP packet as a UDP packet. To send to the client Characterized in that it.

請求項21記載の発明は、前記中継機器は、UDPマルチキャストまたはUDPブロードキャストパケットを用いて、複数の前記クライアントに対して画面データを同報通信方式で送信する手段を有することを特徴とする。   The invention according to claim 21 is characterized in that the relay device has means for transmitting screen data to the plurality of clients by a broadcast communication method using a UDP multicast or a UDP broadcast packet.

請求項22記載の発明は、前記中継機器は、前記サーバから受信した画面データを記録し、再生する手段を有することを特徴とする。   The invention according to claim 22 is characterized in that the relay device has means for recording and reproducing the screen data received from the server.

請求項23記載の発明は、会議サーバとして機能する情報機器と、前記会議サーバの会議クライアントとして機能する情報機器を構成要素とし、前記会議サーバは、その表示画面の少なくとも一部に関するデータを、前記会議クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する手段を有し、前記会議クライアントは、前記会議サーバから受信した画面データを表示装置に表示することにより、前記会議サーバの表示画面を共有する手段を有する電子会議システムであって、送信する画面領域のデータの種類または表示条件、会議クライアントとの通信環境、あるいはユーザが与える指示の何れかによって、前記会議サーバは前記画面データを送信する場合に、送信する画面データの少なくとも一部を、TCPパケットを用いて送信するか、もしくはUDPパケットを用いて送信するかを切り替えて送信する手段を有することを特徴とする。   The invention according to claim 23 is composed of an information device functioning as a conference server and an information device functioning as a conference client of the conference server, and the conference server receives data relating to at least a part of the display screen, The conference server includes means for transmitting via a network that communicates using the IP protocol, and the conference client displays screen data received from the conference server on a display device, thereby displaying the display screen of the conference server. An electronic conference system having means for sharing the screen, wherein the conference server stores the screen data according to any of the type or display condition of the data of the screen area to be transmitted, the communication environment with the conference client, or an instruction given by the user. When sending, at least part of the screen data to be sent Or transmitted using Tsu bets, or characterized by having a means for transmitting by switching or transmitted using UDP packets.

請求項24記載の発明は、会議サーバとして機能する情報機器と、前記会議サーバの会議クライアントとして機能する情報機器を構成要素とし、前記会議サーバは、その表示画面の少なくとも一部に関するデータを、前記会議クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する手段を有し、前記会議クライアントは、前記会議サーバから受信した画面データを表示装置に表示することにより、前記サーバの表示画面を共有する手段を有する電子会議システムであって、前記ネットワークは、前記会議サーバから受信した画面データを前記会議クライアントへと中継する会議中継機器を含み、前記会議中継機器は、前記会議サーバからTCPパケットで受信した画面データをUDPパケットで前記会議クライアントに送信する手段を有することを特徴とする。   According to a twenty-fourth aspect of the present invention, an information device functioning as a conference server and an information device functioning as a conference client of the conference server are constituent elements, and the conference server stores data related to at least a part of the display screen. Means for transmitting to the conference client via a network that communicates using the IP protocol, and the conference client displays the screen data received from the conference server on a display device, thereby displaying the display screen of the server; An electronic conference system having means for sharing, wherein the network includes a conference relay device that relays screen data received from the conference server to the conference client, and the conference relay device receives a TCP packet from the conference server. The conference client receives the screen data received at the UDP packet. Characterized in that it comprises means to send to.

請求項25記載の発明は、前記会議サーバは、接続する会議クライアントの優先権を管理する手段を有し、優先権の与えられている会議クライアントに対しては、TCPパケットで画面データを送信し、優先権が与えられていない会議クライアントに対しては、UDPパケットで画面データを送信することを特徴とする。   According to a twenty-fifth aspect of the present invention, the conference server has means for managing the priority of the conference client to be connected, and transmits screen data in a TCP packet to the conference client to which the priority is given. The screen data is transmitted by a UDP packet to a conference client to which priority is not given.

請求項26記載の発明は、前記会議サーバは、前記会議クライアントからの入力イベントを受信し、受信した入力イベントを前記会議サーバに転送する手段と、接続会議クライアントが一定時間内に入力イベントを前記サーバに送信したかを管理する手段を有し、一定時間内に入力イベントを会議サーバに送信した会議クライアントに対しては、TCPパケットで画面データを送信し、一定時間内に入力イベントを会議サーバに送信していないクライアントに対しては、UDPパケットで画面データを送信することを特徴する。   According to a twenty-sixth aspect of the present invention, the conference server receives an input event from the conference client, forwards the received input event to the conference server, and the connected conference client receives the input event within a predetermined time. It has means for managing whether it has been sent to the server, and for the conference client that has sent the input event to the conference server within a certain time, the screen data is transmitted with a TCP packet, and the input event is sent within the certain time to the conference server It is characterized in that the screen data is transmitted by a UDP packet to a client that has not transmitted to the client.

請求項27記載の発明は、サーバとして機能する情報機器と、前記サーバのクライアントとして機能する情報機器を構成要素とするネットワークシステムにおけるデータ通信方法であって、前記サーバにおいて、その表示画面の少なくとも一部に関するデータを、前記クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する工程と、前記クライアントにおいて、前記サーバから受信した画面データを表示装置に表示することにより、前記サーバの表示画面を共有する工程とを有し、送信する画面領域のデータの種類または表示条件、クライアントとの通信環境、あるいはユーザが与える指示の何れかによって、前記サーバは前記画面データを送信する場合に、送信する画面データの少なくとも一部を、TCPパケットを用いて送信するか、もしくはUDPパケットを用いて送信するかを切り替えて送信する工程を有することを特徴とする。   The invention according to claim 27 is a data communication method in a network system including information equipment functioning as a server and information equipment functioning as a client of the server, and at least one of display screens of the server. A process for transmitting data relating to a section to the client via a network that communicates using an IP protocol, and displaying the screen data received from the server at the client on a display device, thereby displaying the display screen of the server The server transmits the screen data when the screen data is transmitted according to any one of the type or display condition of the screen area data to be transmitted, the communication environment with the client, or an instruction given by the user. At least part of the screen data Or transmitted using, or characterized by having a step of transmitting by switching or transmitted using UDP packets.

請求項28記載の発明は、サーバとして機能する情報機器と、前記サーバのクライアントとして機能する情報機器と、前記サーバから受信した画面データを前記クライアントへと中継する中継機器とを構成要素とするネットワークシステムにおけるデータ通信方法であって、前記サーバにおいて、その表示画面の少なくとも一部に関するデータを、前記クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する工程と、前記クライアントにおいて、前記サーバから受信した画面データを表示装置に表示することにより、前記サーバの表示画面を共有する工程と、前記中継機器において、前記サーバからTCPパケットで受信した画面データをUDPパケットで前記クライアントに送信する工程を有することを特徴とする。   According to a twenty-eighth aspect of the present invention, there is provided a network comprising information equipment functioning as a server, information equipment functioning as a client of the server, and relay equipment that relays screen data received from the server to the client. A method of data communication in a system, comprising: transmitting data related to at least a part of a display screen of the server via a network that performs communication using an IP protocol to the client; and Displaying the screen data received from the server on the display device to share the display screen of the server, and transmitting, in the relay device, the screen data received from the server in the form of a TCP packet to the client in the form of a UDP packet. It is characterized by having .

請求項29記載のデータ通信プログラムは、請求項27または28に記載のデータ通信方法をコンピュータに実行させることを特徴とする。   A data communication program according to claim 29 causes a computer to execute the data communication method according to claim 27 or 28.

請求項30記載のコンピュータが読み取り可能な記憶媒体は、請求項29記載のデータ通信プログラムを格納することを特徴とする。   A computer-readable storage medium according to a thirtieth aspect stores the data communication program according to the twenty-ninth aspect.

本発明によれば、下記の実施例の説明から明らかなように、送信パケットに対して、パケットを正常に受信したことを応答するACKパケットを返信する必要のある、データストリーム型の通信方式であるTCPパケットによる通信だけでなく、ACKの返信の必要がないため高速であるが、信頼性や、パケットの受信順序を保証しないデータグラム型の通信方式であるUDPパケットを用いて、画面データの送信を行う、高速な画面共有を行う、画面共有サーバと画面共有クライアント間の通信が可能となる。   According to the present invention, as will be apparent from the description of the embodiment below, it is a data stream type communication method that needs to return an ACK packet in response to normal reception of a packet to a transmission packet. It is high-speed because there is no need to send back an ACK as well as communication using a certain TCP packet, but it uses UDP packets, which are datagram-type communication methods that do not guarantee reliability or the order of receiving packets, Communication between the screen sharing server and the screen sharing client is possible.

以下に、添付図面を参照しながら、本発明の実施形態を説明する。   Embodiments of the present invention will be described below with reference to the accompanying drawings.

図1は、本発明の一実施例であるデータ通信システムのネットワーク構成を示した概要図である。
データ通信システムは、サーバとして機能する情報処理装置(サーバ1)と、前記サーバ1のクライアントとして機能する情報処理装置(クライアント2a,2b,・・・,2n)が、IPネットワーク10を介して接続されている。IPネットワークとして、例えば、IEEE802.3で定められているイーサネット(登録商標)LAN等がある。
FIG. 1 is a schematic diagram showing a network configuration of a data communication system according to an embodiment of the present invention.
In the data communication system, an information processing device functioning as a server (server 1) and an information processing device functioning as a client of the server 1 (clients 2a, 2b,..., 2n) are connected via an IP network 10. Has been. As an IP network, for example, there is an Ethernet (registered trademark) LAN defined by IEEE802.3.

サーバ1は表示装置を有し、該表示装置に表示される表示内容の全体または一部を共有画面とし、IPネットワーク10に接続されたクライアント2に対して共有画面データを送信する。クライアント2では、該共有画面データを受信することにより、該クライアントの表示装置にサーバ1の共有画面を表示することができる。
画面を共有する方法は、従来の技術をそのまま利用することができるので、詳細な説明を省略する。概略としては、サーバのアプリケーションが該サーバの画面データの更新部分を検出し、画面の更新領域を一定のアルゴリズムにより分割、エンコードして、クライアントに送信する。受信したクライアントは、更新された領域の画面データをデコードして、共有画面のデータを更新するという方法による。
The server 1 has a display device, and displays all or part of display contents displayed on the display device as a shared screen, and transmits shared screen data to the client 2 connected to the IP network 10. The client 2 can display the shared screen of the server 1 on the display device of the client by receiving the shared screen data.
Since the conventional technique can be used as it is for the method of sharing the screen, detailed description is omitted. As an outline, the server application detects an update portion of the screen data of the server, divides and encodes the screen update area by a certain algorithm, and transmits it to the client. The received client decodes the updated area screen data and updates the shared screen data.

従来の発明においては、画面データの送信をTCPパケットで送信するようになっている。TCPはコネクション型(CO型)のプロトコルであって、コネクションレス型(CL型)のIPにおけるIPパケットの損失をカバーすることが可能な、信頼性の高いプロトコルである。しかしながら、データの転送効率が低下するという問題がある。
一方、本発明では、画面データをUDPパケットで送信する機能を備えている。UDPはCL型のプロトコルであって、データの信頼性はTCPに劣るものの、高速データ転送が可能であるという利点を有する。
In the conventional invention, the screen data is transmitted using TCP packets. TCP is a connection type (CO type) protocol and is a highly reliable protocol capable of covering the loss of IP packets in connectionless type (CL type) IP. However, there is a problem that the data transfer efficiency decreases.
On the other hand, the present invention has a function of transmitting screen data using a UDP packet. UDP is a CL type protocol and has an advantage that high-speed data transfer is possible although data reliability is inferior to TCP.

図2は、UDPパケットのみを送信することにより画面共有を行う方式の処理フローを示した図である。
初期状態として、サーバ1は、UDPポートを開け、UDP用のソケットでクライアントからの接続を待ち受けている状態にある。
クライアント2は、サーバ1に対して画面共有の要求を行うために、UDPパケットを用いて送信する(ステップS1)。パケットを受信したサーバは共有を許可すると、共有の要求を行ったクライアントへ許可を通知するパケットを送信すると共に、共有を許可したクライアントのネットワークアドレス(IPアドレス)を記憶する(ステップS2,S3)。これにより、共有の要求を行ったクライアントに対して、UDPパケットで画面データを送信できるようになると共に、該クライアントからの入力イベントを受信して、リモート操作を可能な状態にする。
FIG. 2 is a diagram showing a processing flow of a method for sharing a screen by transmitting only a UDP packet.
As an initial state, the server 1 is in a state in which a UDP port is opened and a connection from a client is awaited by a UDP socket.
The client 2 transmits using a UDP packet to make a screen sharing request to the server 1 (step S1). When the server that has received the packet permits sharing, it transmits a packet notifying permission to the client that requested sharing, and stores the network address (IP address) of the client that permitted sharing (steps S2 and S3). . As a result, screen data can be transmitted with a UDP packet to a client that has requested sharing, and an input event from the client is received to enable remote operation.

サーバ1からの許可を受信したクライアントは、サーバのネットワークアドレスを記憶し、サーバからの画面データを受信して表示する準備を整える(ステップS4)。
すなわち、UDPポートを開け、UDP用のソケットでサーバ1からの通信パケットを待ち受ける。
The client that has received the permission from the server 1 stores the network address of the server, and prepares to receive and display the screen data from the server (step S4).
That is, the UDP port is opened, and a communication packet from the server 1 is waited at the UDP socket.

なお、ステップS1,S2における一往復のUDPパケットの通信で要求・許可を行うのではなく、認証を行ってもよい。
また、図では省略したが、ここでクライアントとサーバは、共有する画面の大きさやエンコードの方法について、相互の設定を調整する通信が含まれる場合もある。
Note that authentication may be performed instead of requesting / permitting by one-way UDP packet communication in steps S1 and S2.
Although not shown in the figure, the client and server may include communication for adjusting mutual settings for the size of the screen to be shared and the encoding method.

次に、準備が整うと、サーバ1からクライアント2に対して初期画面データがUDPで送信される(ステップS5a)。その後は、サーバ1の共有画面領域に更新がある度に、画面データがUDPパケットで送信される(ステップS5b,S5c,S5d)。
また、クライアントが遠隔操作を行った場合には、入力イベントがUDPパケットでサーバに送信される(ステップS6)。
Next, when preparation is completed, initial screen data is transmitted by UDP from the server 1 to the client 2 (step S5a). Thereafter, every time the shared screen area of the server 1 is updated, the screen data is transmitted as a UDP packet (steps S5b, S5c, S5d).
When the client performs a remote operation, an input event is transmitted to the server by a UDP packet (step S6).

画面共有を終了する場合には、クライアントから切断要求をUDPパケットでサーバに送信する(ステップS7)。切断要求を受信したサーバは、切断の確認をUDPパケットでクライアントへ送信すると共に、該クライアントへの送受信の設定を解除する(ステップS8,S9)。一方、切断OKを受信したクライアントは、サーバへの送受信の設定を解除する(ステップS10)。   When the screen sharing is to be terminated, a disconnection request is transmitted from the client to the server as a UDP packet (step S7). Upon receiving the disconnection request, the server transmits a disconnection confirmation to the client using a UDP packet and cancels the transmission / reception setting for the client (steps S8 and S9). On the other hand, the client that has received the disconnect OK cancels the transmission / reception setting to the server (step S10).

ここで、図2に示した通信方式の場合、サーバとクライアントは、UDPパケットでお互いに一方的にデータを送信しているので、いつ相手が画面共有アプリケーションを終了したのか、或いはネットワークエラーによって通信不能になっているのか、切断OKのパケットが届いていない、等を検出することができない。
そこで、図3に示すアルゴリズムで相手の監視を行う。
Here, in the case of the communication method shown in FIG. 2, the server and the client are unilaterally transmitting data to each other using a UDP packet, so that communication is performed when the other party ends the screen sharing application or a network error occurs. It is impossible to detect whether the packet is disabled or the disconnection OK packet has not arrived.
Therefore, the other party is monitored by the algorithm shown in FIG.

接続を確立した場合、サーバ及びクライアントは、タイマーを用いて、所定の時間毎に、例えば1分毎に、相手の接続を確認するための確認パケットを送信する(ステップS11,S12)。   When the connection is established, the server and the client transmit a confirmation packet for confirming the connection of the other party at a predetermined time, for example, every minute using a timer (steps S11 and S12).

一方で、それと共に、相手からの何らかのパケットが受信されたかどうかを、タイマーを用いて監視する。
例えば、2分間のタイマーで確認を行う。
パケット受信の確認を行い(ステップS21)、データまたは確認パケットを受信すると(ステップS22/Yes)、タイマーをスタートさせる(ステップS23)。2分以内に何らかのパケットを受信した場合(ステップS24/Yes)は、タイマーを再スタートする(ステップS23)。2分以内に受信しなかった場合(ステップS24/No,S25/Yes)は、相手が切断したと判断し、相手との送受信の設定を解除する(ステップS26)。
On the other hand, a timer is used to monitor whether any packet from the other party has been received.
For example, confirmation is performed with a 2-minute timer.
The packet reception is confirmed (step S21). When data or a confirmation packet is received (step S22 / Yes), the timer is started (step S23). If any packet is received within 2 minutes (step S24 / Yes), the timer is restarted (step S23). If it is not received within 2 minutes (step S24 / No, S25 / Yes), it is determined that the other party has disconnected and the transmission / reception setting with the other party is canceled (step S26).

本実施例では、UDPパケットによって送信しているので、画面データや入力イベント等のパケットがネットワーク上で損失する場合があり、その通信は送信先には反映されない。また、送信側でのパケットの送信順序と、送信先でのパケットの受信順序が異なる場合もある。
よって、本発明は、LAN等の短距離ネットワークで、データ通信量の大きいネットワーク回線上でサーバとクライアントが接続されている場合や、画面データの確実性よりも共有画面が頻繁に更新されるような場合に用いることが好ましい。
In this embodiment, since transmission is performed using a UDP packet, packets such as screen data and input events may be lost on the network, and the communication is not reflected on the transmission destination. Further, the packet transmission order at the transmission side may be different from the packet reception order at the transmission destination.
Therefore, according to the present invention, when a server and a client are connected on a network line with a large amount of data communication in a short-distance network such as a LAN, the shared screen is updated more frequently than the certainty of the screen data. It is preferable to use in such a case.

図1では、サーバ1として、大画面表示装置を備えるデスクトップ型PC、或いはワークステーション等を用いている。また、クライアント2として、ラックトップ型PC(ノートPC)を用いているが、必ずしもこのような構成に限定されない。
すなわち、本発明において、サーバとは、ネットワークにおいて共有される画面データを有するコンピュータであり、従って、大画面表示装置を備えていなくても、また、クライアントとしてデスクトップPCを用いても構わない。
In FIG. 1, a desktop PC provided with a large screen display device or a workstation is used as the server 1. Further, although a rack top type PC (notebook PC) is used as the client 2, it is not necessarily limited to such a configuration.
That is, in the present invention, a server is a computer having screen data shared in a network, and therefore, a large-screen display device may not be provided, and a desktop PC may be used as a client.

また、ネットワークの具体的な実施例は、イーサネット(登録商標)有線LANに限定されることはなく、無線LAN、IrDA、Apple Talk、ISDN、電話交換網、デジタル専用線、FR網、・・・等によって接続されている場合や、これらの組み合わせで接続されている場合でもよい。   Further, specific examples of the network are not limited to Ethernet (registered trademark) wired LAN, but are wireless LAN, IrDA, Apple Talk, ISDN, telephone exchange network, digital leased line, FR network,... For example, the connection may be performed by a combination of these methods.

実施例2は、前記実施例1で説明した方式の変更例である。
図4は、サーバとクライアントの接続にTCP/IP接続を利用し、画面データ及び入力イベントの送信にUDPパケットを利用する方式の処理フローを示した図である。
サーバ1とクライアント2は共に、TCPとUDPの2つのソケットを用意する。
TCPパケットで接続すると(ステップS31,S32,S33)、同じネットワークアドレスのUDPソケットを用いて、画面データや入力イベントの送受信を行う(ステップS34a〜d,S35)。
TCP接続の切断の要求を行い、TCP接続を切断すると、UDPソケットも終了し、画面データ及び入力イベントの待ち受けを終了する(ステップS36,S37,S38)。TCPはコネクション型の通信プロトコルであるので、相手との接続の管理はTCP接続の接続管理に任せ、特にアプリケーション側(上位レイヤ)で監視の機能を実装する必要はない。
The second embodiment is a modification of the method described in the first embodiment.
FIG. 4 is a diagram showing a processing flow of a system that uses a TCP / IP connection for connection between a server and a client and uses a UDP packet for transmission of screen data and input events.
Both the server 1 and the client 2 prepare two sockets, TCP and UDP.
When connected by a TCP packet (steps S31, S32, S33), screen data and input events are transmitted / received using a UDP socket having the same network address (steps S34a-d, S35).
When a request for disconnecting the TCP connection is made and the TCP connection is disconnected, the UDP socket is also ended, and waiting for screen data and input events is ended (steps S36, S37, S38). Since TCP is a connection-type communication protocol, management of connection with the other party is left to connection management of the TCP connection, and it is not particularly necessary to implement a monitoring function on the application side (upper layer).

実施例3は、前記実施例2の方式に、更にUDPマルチキャスト或いはUDPブロードキャストを適用した例であり、図5にその処理フローを示す。
また、表1はネットワーク構成におけるネットワークアドレスの一例である。
The third embodiment is an example in which UDP multicast or UDP broadcast is further applied to the method of the second embodiment, and the processing flow is shown in FIG.
Table 1 is an example of a network address in the network configuration.

Figure 2005348262
Figure 2005348262

<1.ブロードキャストの場合>
サーバ1は、UDPソケットで、(133. 139. 100. 111)と(133. 139. 100. 222)からの入力イベントを待ち受けている。また、画面データをブロードキャストアドレス(255. 255. 255. 255)で同一サブネット内にブロードキャスト送信する。パケットはUDPパケットを用いる。
クライアント2a,2bは、(133. 139. 100. 100)からの画面データのブロードキャストを待ち受けている。また、入力イベントを(133. 139. 100. 100)にUDPユニキャストで送信する。
クライアントは、サーバからブロードキャストされた画面データを受信して、画面共有を行う。
<1. For broadcast>
The server 1 is waiting for an input event from (133. 139. 100. 111) and (133. 139. 100. 222) via a UDP socket. The screen data is broadcast by broadcast address (255. 255. 255. 255) within the same subnet. The packet is a UDP packet.
The clients 2a and 2b are waiting for a screen data broadcast from (133. 139. 100. 100). Also, an input event is transmitted to (133. 139. 100. 100) by UDP unicast.
The client receives the screen data broadcast from the server and shares the screen.

<2.マルチキャストの場合>
サーバとクライアントの接続確立時に、サーバ1は、全てのクライアントにマルチキャストアドレスを通知する。
サーバ1は、マルチキャストがクライアントに届くように、マルチキャストの範囲を設定する。すなわち、TTL(Time To Live)の値を適切に設定する。
<2. For multicast>
When establishing a connection between the server and the client, the server 1 notifies all clients of the multicast address.
The server 1 sets a multicast range so that the multicast reaches the client. That is, the value of TTL (Time To Live) is appropriately set.

サーバ1は、UDPソケットで、(133. 139. 100. 111)と(133. 139. 100. 222)からの入力イベントを待ち受けている。また、画面データをマルチキャストアドレス(233. 233. 233. 233)でマルチキャスト送信する。パケットはUDPパケットを用いる。
クライアント2a,2bは、サーバ1から指定されたマルチキャストアドレス(233. 233. 233. 233)からの画面データを待ち受けている。また、入力イベントを(133. 139. 100. 100)にUDPユニキャストで送信する。
The server 1 is waiting for an input event from (133. 139. 100. 111) and (133. 139. 100. 222) via a UDP socket. In addition, the screen data is multicast transmitted by the multicast address (233.233.233.233). The packet is a UDP packet.
The clients 2a and 2b are waiting for screen data from the multicast address (233.233.233.233) designated by the server 1. Also, an input event is transmitted to (133. 139. 100. 100) by UDP unicast.

実施例4は、サーバのアプリケーションの種類によって、TCPとUDPを切り替えて送信する方式例であり、図6は、サーバの画面表示例である。
サーバ1は、予めTCPパケットで送信するように設定したアプリケーションの画面データ11を送信する場合は、TCPパケットにより送信し、それ以外の画面領域(UTD共有アプリケーション画面12等)は、UDPパケットを用いて送信する。
The fourth embodiment is an example of a method of switching between TCP and UDP according to the type of server application, and FIG. 6 is an example of a server screen display.
When the server 1 transmits screen data 11 of an application that is set to be transmitted in advance using a TCP packet, the server 1 transmits the screen data using a TCP packet, and other screen areas (such as the UTD shared application screen 12) use a UDP packet. To send.

例えば、アプリケーションとして、ワードプロセッサソフトであるWordprocと、表計算ソフトであるMatrixcalcというソフトウェアのみをTCPパケットで送信し、画面共有を行っているクライアント側で確実に画面を表示したい場合を考える。
画面共有サーバプログラムに、TCPパケットで送信したいアプリケーションの実行ファイルのパスを登録する。例えば、
C:\Program Files\Wordproc\Wordproc.exe
C:\Program Files\Matrixcalc\Matrixcalc.exe
を登録する。
For example, consider a case in which only the software, Wordproc, which is word processor software, and Matrixcalc, which is spreadsheet software, are transmitted as TCP applications using TCP packets, and the client side that is sharing the screen wants to display the screen reliably.
In the screen sharing server program, register the path of the executable file of the application that you want to send by TCP packet. For example,
C: \ Program Files \ Wordproc \ Wordproc.exe
C: \ Program Files \ Matrixcalc \ Matrixcalc.exe
Register.

図7は、サーバのアプリケーション毎にTCPまたはUDPの何れかで送信する方式について、そのアルゴリズムを示した図である。
サーバ1の表示画面に更新があった場合、画面共有プログラムは、一定のアルゴリズムにより領域を分割して、エンコードするが、ここで分割した画面領域が、登録されたアプリケーションのウィンドウ領域であるか否かを判断する(ステップS51)。
登録されたアプリケーションのウィンドウ領域である場合(ステップS52/Yes)は、エンコード後、TCPパケットで送信するよう指示する(ステップS53)。一方、それ以外の領域である場合(ステップS52/No)は、UDPパケットで送信するよう指示を出す(ステップS54)。
FIG. 7 is a diagram showing an algorithm for a method of transmitting by either TCP or UDP for each application of the server.
When the display screen of the server 1 is updated, the screen sharing program divides and encodes the area by a certain algorithm. Whether or not the divided screen area is a window area of the registered application. Is determined (step S51).
If it is the window area of the registered application (step S52 / Yes), it is instructed to transmit the TCP packet after encoding (step S53). On the other hand, if it is an area other than that (step S52 / No), an instruction is given to transmit by a UDP packet (step S54).

図8は、そのような場合に、TCPパケットとUDPパケットを切り替えて送信する方式について、処理フローを例示したものである。
実施例2で示した処理フローと同様に、TCP/IPで接続管理を行っており(ステップS61〜S63、及びS68〜S70)、必要に応じて画面データをTCPパケットとUDPパケットに切り替えて送信している(ステップS64〜S66)。
FIG. 8 exemplifies a processing flow for a method of switching and transmitting a TCP packet and a UDP packet in such a case.
Similar to the processing flow shown in the second embodiment, connection management is performed using TCP / IP (steps S61 to S63 and S68 to S70), and screen data is switched between a TCP packet and a UDP packet as necessary. (Steps S64 to S66).

実施例5は、サーバのウィンドウが最前面に位置するか否かによって、TCPとUDPを切り替えて送信する方式の例であり、図9は、サーバの画面表示例である。
図9において、最前面ウィンドウ13の画面データを送信する際には、TCPパケットを用いて送信し、それ以外の画面領域(背面ウィンドウ14等)は、UDPパケットを用いて送信する。
The fifth embodiment is an example of a method of switching between TCP and UDP depending on whether or not the server window is positioned in the foreground, and FIG. 9 is an example of a server screen display.
In FIG. 9, when the screen data of the foreground window 13 is transmitted, it is transmitted using a TCP packet, and the other screen areas (such as the rear window 14) are transmitted using a UDP packet.

図10は、サーバのウィンドウが最前面に位置するか否かによって、TCPとUDPを切り替えて送信する方式について、そのアルゴリズムを示した図である。
サーバ1の表示画面に更新があった場合、画面共有プログラムは、一定のアルゴリズムにより領域を分割して、エンコードするが、ここで、分割した画面領域が、最前面にあるウィンドウ領域であるか否かを判断する(ステップS71)。
最前面にあるウィンドウ領域である場合(ステップS72/Yes)は、エンコード後、TCPパケットで送信するよう指示する(ステップS73)。一方、それ以外の領域の場合(ステップS72/No)は、UDPパケットで送信するよう指示を出す(ステップS74)。
FIG. 10 is a diagram showing an algorithm for a method of switching between TCP and UDP depending on whether or not the server window is positioned in the foreground.
When the display screen of the server 1 is updated, the screen sharing program divides and encodes the area by a certain algorithm. Here, whether or not the divided screen area is the window area at the forefront. Is determined (step S71).
If it is the window area in the forefront (step S72 / Yes), it is instructed to transmit by TCP packet after encoding (step S73). On the other hand, in the case of other areas (step S72 / No), an instruction is given to transmit by a UDP packet (step S74).

実施例6は、サーバのウィンドウがアクティブであるか否かによって、TCPとUDPを切り替えて送信する方式の例であり、図11は、サーバの画面表示例である。
例えば、デスクトップ領域をマウスでクリックした場合など、最前面にあるウィンドウが必ずしもアクティブウィンドウであるとは限らないが、非アクティブであっても、最前面にあればTCPパケット送信するようにすることも、あるいは非アクティブの場合、最前面であってもUDPパケットで送信するようにすることも可能である。
Example 6 is an example of a method of switching between TCP and UDP depending on whether or not a server window is active, and FIG. 11 is an example of a server screen display.
For example, when the desktop area is clicked with the mouse, the frontmost window is not necessarily the active window, but even if it is inactive, TCP packets may be sent if it is in the foreground. Alternatively, in the case of inactivity, it is possible to transmit a UDP packet even in the foreground.

図11において、アクティブウィンドウ15の画面データを送信する際には、TCPパケットを用いて送信し、それ以外の画面領域(非アクティブウィンドウ16a,16b等)は、UDPパケットを用いて送信する。   In FIG. 11, when the screen data of the active window 15 is transmitted, it is transmitted using a TCP packet, and other screen areas (inactive windows 16a, 16b, etc.) are transmitted using a UDP packet.

図12は、サーバのウィンドウがアクティブであるか否かによって、TCPとUDPを切り替えて送信する方式について、そのアルゴリズムを示した図である。
サーバ1の表示画面に更新があった場合、画面共有プログラムは、一定のアルゴリズムにより領域を分割して、エンコードするが、ここで分割した画面領域が、アクティブウィンドウ領域であるか否かを判断する(ステップS81)。
分割した画面領域がアクティブウィンドウ領域である場合(ステップS82/Yes)は、エンコード後、TCPパケットで送信するよう指示する(ステップS83)。一方、それ以外の領域の場合(ステップS82/No)は、UDPパケットで送信するよう指示を出す(ステップS84)。
FIG. 12 is a diagram showing an algorithm for a method of switching between TCP and UDP depending on whether or not the server window is active.
When the display screen of the server 1 is updated, the screen sharing program divides and encodes the area according to a certain algorithm, and determines whether the divided screen area is an active window area. (Step S81).
If the divided screen area is an active window area (step S82 / Yes), it is instructed to transmit a TCP packet after encoding (step S83). On the other hand, in the case of other areas (step S82 / No), an instruction is given to transmit by a UDP packet (step S84).

実施例7は、サーバのウィンドウがユーザの指定した文書であるか否かによって、TCPとUDPを切り替えて送信する方式の例であり、図13は、サーバの画面表示例である。
図13において、ユーザ指定文書ウィンドウ17の画面データを送信する際には、TCPパケットを用いて送信し、それ以外の領域(非ユーザ指定文書ウィンドウ18等)は、UDPパケットを用いて送信する。
The seventh embodiment is an example of a method of switching between TCP and UDP depending on whether or not the server window is a document designated by the user, and FIG. 13 is a screen display example of the server.
In FIG. 13, when the screen data of the user-specified document window 17 is transmitted, it is transmitted using a TCP packet, and other areas (such as the non-user-specified document window 18) are transmitted using a UDP packet.

図14は、サーバのウィンドウがユーザの指定した文書であるか否かによって、TCPとUDPを切り替えて送信する方式について、そのアルゴリズムを示した図である。
サーバ1の表示画面に更新があった場合、画面共有プログラムは、一定のアルゴリズムにより領域を分割して、エンコードするが、ここで分割した画面領域がユーザの指定した文書のウィンドウ領域であるか否かを判断する(ステップS91)。
分割した画面領域がアクティブウィンドウ領域である場合(ステップS92/Yes)は、エンコード後、TCPパケットで送信するよう指示する(ステップS93)。一方、それ以外の領域の場合(ステップS93/No)は、UDPパケットで送信するよう指示を出す(ステップS94)。
FIG. 14 is a diagram showing an algorithm for a method of switching between TCP and UDP depending on whether or not the server window is a document designated by the user.
When the display screen of the server 1 is updated, the screen sharing program divides and encodes the area by a certain algorithm. Whether the divided screen area is the window area of the document specified by the user. Is determined (step S91).
If the divided screen area is an active window area (step S92 / Yes), it is instructed to transmit in a TCP packet after encoding (step S93). On the other hand, in the case of other areas (step S93 / No), an instruction to send by a UDP packet is issued (step S94).

例えば、TCPで送信するウィンドウを文書毎に管理し、文書のパスを画面共有プログラムに登録する。例えば、
c:\My Documents\統計\2003Jan.pdf
と登録する。すると、この文書を開くアプリケーション(例えばAcrobat Reader(登録商標))のウィンドウで、該文書を開いているウィンドウ領域の画面データはTCPパケットで送信される。
For example, a window to be transmitted by TCP is managed for each document, and the document path is registered in the screen sharing program. For example,
c: \ My Documents \ Statistics \ 2003Jan.pdf
And register. Then, in the window of an application (for example, Acrobat Reader (registered trademark)) that opens the document, the screen data of the window area in which the document is opened is transmitted by a TCP packet.

実施例7の変更例として、文書毎ではなく、ウィンドウ単位で指定することも可能である。
例えば、
c:\My Documents\統計\2003Jan.pdf
という文書を開いているプログラムAcrobat Reader(登録商標)のウィンドウを指定する。例えば、画面共有プログラムで、TCPパケットで画面送信するウィンドウを選択する機能を設け、この機能を実行すると、実行後最初にマウスでクリックしたウィンドウをTCPパケットで画面データを送信するよう登録し、登録機能を終了するようにする。
As a modified example of the seventh embodiment, it is possible to specify in units of windows instead of for each document.
For example,
c: \ My Documents \ Statistics \ 2003Jan.pdf
Specify the Acrobat Reader (registered trademark) window that opens the document. For example, in the screen sharing program, a function is provided to select a window for transmitting a screen using a TCP packet. When this function is executed, the window that is clicked with the mouse for the first time after execution is registered to transmit screen data using a TCP packet. Let the function end.

実施例8は、サーバのウィンドウがユーザの指定した画面領域であるか否かによって、TCPとUDPを切り替えて送信する方式の例であり、図15は、サーバの画面表示例である。
図15に示すように、ユーザ指定領域19の画面データを送信する際には、TCPパケットを用いて送信し、それ以外の領域は、UDPパケットを用いて送信する。
Example 8 is an example of a method of switching between TCP and UDP depending on whether or not the server window is a screen area designated by the user, and FIG. 15 is an example of a server screen display.
As shown in FIG. 15, when transmitting the screen data of the user designation area 19, it transmits using a TCP packet, and transmits the other area | region using a UDP packet.

図16は、サーバのウィンドウがユーザの指定した画面領域であるか否かによって、TCPとUDPを切り替えて送信する方式について、そのアルゴリズムを示した図である。
サーバ1の表示画面に更新があった場合、画面共有プログラムは、一定のアルゴリズムにより領域を分割して、エンコードするが、ここで分割した画面領域が、ユーザの指定した画面領域であるか否かを判断する(ステップS101)。
ユーザが指定した画面領域である場合(ステップS102/Yes)は、エンコード後、TCPパケットで送信するよう指示を出す(ステップS103)。一方、それ以外の領域の場合(ステップS102/No)は、UDPパケットで送信するよう指示を出す(ステップS104)。
FIG. 16 is a diagram showing an algorithm for a method of switching between TCP and UDP depending on whether or not the server window is a screen area designated by the user.
When the display screen of the server 1 is updated, the screen sharing program divides and encodes the area by a certain algorithm. Whether or not the divided screen area is the screen area specified by the user. Is determined (step S101).
If the screen area is specified by the user (step S102 / Yes), an instruction is given to transmit the packet as a TCP packet after encoding (step S103). On the other hand, in the case of other areas (step S102 / No), an instruction is given to transmit by a UDP packet (step S104).

実施例8の変更例を以下に示す。
画面共有プログラムで、TCPパケットで画面送信する画面領域を選択する機能を設け、この機能を実行すると、実行後最初にマウスでクリックしたウィンドウを左上頂点とし、マウスをクリックした状態のまま移動させ、マウスクリックを放した位置を、右下頂点とする矩形領域をTCPパケットで画面データを送信するよう登録し、登録機能を終了するようにする。最初にクリックした座標と、最後に放した場所の座標を取得して登録する。例えば、(100,200)でクリックを開始し、(400,700)までドラッグして、マウスを放した場合、この両点を対角線上にある2頂点とする矩形領域をTCP送信領域とする。
A modification of the eighth embodiment is shown below.
In the screen sharing program, a function to select the screen area to send the screen by TCP packet is provided, and when this function is executed, the first window clicked with the mouse after execution is set as the upper left vertex, and the mouse is clicked and moved. A rectangular area having the position where the mouse click is released as a lower right vertex is registered so as to transmit screen data using a TCP packet, and the registration function is terminated. Acquire and register the first clicked coordinates and the last released coordinates. For example, when clicking is started at (100, 200), dragging to (400, 700) and the mouse is released, a rectangular area having these two points on the diagonal line as two vertices is set as the TCP transmission area.

また、実施例4〜8において、TCPパケットでの送信を、UDPパケットでの送信より優先して行うことも可能である。これにより、必要とする部分の画面データが早く確実にクライアントの画面に表示することが可能である。   In the fourth to eighth embodiments, transmission using a TCP packet can be performed with priority over transmission using a UDP packet. This makes it possible to display the necessary screen data on the client screen quickly and reliably.

実施例9では、画面データの送信において、TCPパケットにするかUDPパケットにするかをユーザが切り替える手段について説明する。
図17は、通信プロトコルの切り替え指示を行う画面を例示した図であり、サーバの画面共有プログラムにTCP/UDPを選択、切り替えを指示する機能を設ける。
In the ninth embodiment, a means for the user to switch between the TCP packet and the UDP packet when transmitting screen data will be described.
FIG. 17 is a diagram exemplifying a screen for instructing switching of a communication protocol, and a function for instructing switching and selecting TCP / UDP is provided in the screen sharing program of the server.

図18は、通信プロトコルの切り替え動作のフローを示した図である。
このように、最初デフォルト設定では、TCP接続を確立したクライアントに対しては、TCPパケットで画面データを送信するように設定されているとする(ステップS111)。図17のような画面共有プログラムの通信手段切り替え機能により、UDPパケットで送信するよう指示された場合(ステップS112/Yes)は、画面データをUDPパケットで送信する(ステップS113)。また、逆にTCPパケットに戻すことも可能である(ステップS114/Yes,S111)。
例えば、サーバでビデオ映像を再生する場合や、アニメーション効果をふんだんに用いたプレゼンテーションのスライドショーを行う場合、画面データの送信量が多くなり、確実性よりも、速度が要求される場合などに、UDPパケットで送信するモードに切り替える。一方、文字ばかりのデータを共有する場合は、確実に表示されないと困るので、TCPパケットを利用するように切り替える。
FIG. 18 is a diagram showing a flow of the switching operation of the communication protocol.
As described above, in the initial default setting, it is assumed that the screen data is set to be transmitted by the TCP packet to the client that has established the TCP connection (step S111). If the communication means switching function of the screen sharing program as shown in FIG. 17 instructs to transmit the UDP packet (step S112 / Yes), the screen data is transmitted by the UDP packet (step S113). Conversely, it is also possible to return to a TCP packet (steps S114 / Yes, S111).
For example, when a video image is played on a server, or when a slide show of a presentation with a lot of animation effects is performed, the amount of screen data transmission increases, and the UDP packet is used when speed is required rather than certainty. Switch to the transmission mode with. On the other hand, when sharing only character data, it is troublesome if it is not displayed reliably, so switching to use TCP packets.

また、実施例9の変更例として、サーバ側のプログラムから切り替えるのでなく、クライアント側からTCPとUDPの切り替えを要求するようにしてもよい。   Further, as a modification of the ninth embodiment, switching from TCP to UDP may be requested from the client side instead of switching from the server side program.

実施例10では、ユーザ毎にTCPパケットまたはUDPパケットを用いるかを選択する手段について説明する。
図19は、ユーザ毎に通信プロトコルの切り替え指示を行う画面を例示した図であり、クライアント毎にTCPを用いるか、UDPを用いるかを選択することが可能である。
画面共有サーバは、クライアントのIPアドレスまたは、ホスト名、あるいは画面共有プログラムでやり取りする任意の識別名(例えば利用者の名前)を用いて、各クライアント毎の設定を変更する機能を有する。現在接続しているクライアントに対して、TCPとUDPのどちらを用いて、画面データを送信しているかを、管理し、表示すると共に、その設定を変更する機能を有する。
In the tenth embodiment, a means for selecting whether to use a TCP packet or a UDP packet for each user will be described.
FIG. 19 is a diagram illustrating a screen for instructing communication protocol switching for each user, and it is possible to select whether to use TCP or UDP for each client.
The screen sharing server has a function of changing the setting for each client using an IP address or a host name of the client or an arbitrary identification name (for example, a user name) exchanged by the screen sharing program. It has a function of managing and displaying whether the screen data is transmitted to the currently connected client using TCP or UDP, and changing the setting.

図19では、チェックの入っている「亜伊 上男」と「嵯支 須世曾」の2人がTCPで送信するクライアントとして設定されていて、チェックの入っていない「柿 久華子」がUDPで送信するクライアントとして設定されている。
また、図19に示すように、「全員TCP」ボタンの押下により、全員、TCPパケットで送信することも、また、「全員UDP」ボタンの押下により、全員、UDPパケットで送信することも可であり、ネットワークに参加しているクライアントが多数の場合には、このような手段も有効である。
In FIG. 19, “Ai Ueio” and “Seisuke Suzue” who are checked are set as clients to send by TCP, and “Kukako Tsuji” that is not checked is UDP. It is set as a sending client.
Further, as shown in FIG. 19, it is possible to send all members in a TCP packet by pressing the “all TCP” button, or to send all members in a UDP packet by pressing the “all UDP” button. In the case where there are many clients participating in the network, such a means is also effective.

実施例11は、クライアントの接続台数によって、TCPとUDPを切り替えて送信する方式の例であり、図20は、そのアルゴリズムを示した図である。
サーバ1の画面共有プログラムは、ネットワーク上のクライアントの接続台数を監視している(ステップS121)。
接続台数が所定の台数を超えたことを検出した場合(ステップS122/Yes)は、画面データを送信するのに用いる通信方式を、TCPからUDPに切り替える(ステップS124)。これにより、クライアントの台数が多い場合に、通信量が増えて各クライアントの画面表示にディレイが生じるのを低減する。
また、UDPでの通信を行っている場合に、ネットワークに接続されているクライアントの台数が、所定の台数以下である場合(ステップS122/No)は、通信方式をUDPからTCPに切り替える(ステップS123)。接続台数が少なく、ネットワークのデータ通信量が小さい場合には、信頼性の高いTCPにより通信を行う。
The eleventh embodiment is an example of a method of switching between TCP and UDP according to the number of connected clients, and FIG. 20 is a diagram showing the algorithm.
The screen sharing program of the server 1 monitors the number of connected clients on the network (step S121).
When it is detected that the number of connected devices exceeds the predetermined number (step S122 / Yes), the communication method used for transmitting the screen data is switched from TCP to UDP (step S124). As a result, when the number of clients is large, it is possible to reduce the occurrence of a delay in the screen display of each client due to an increase in communication amount.
Further, when performing communication by UDP, if the number of clients connected to the network is equal to or less than the predetermined number (step S122 / No), the communication method is switched from UDP to TCP (step S123). ). When the number of connected devices is small and the amount of data communication on the network is small, communication is performed by TCP with high reliability.

また、実施例11の変更例として、接続台数が所定の台数を超えた場合に、図19で示したダイアログを表示し、UDPに切り替えるクライアントを指定してもよいし、全クライアントをUDPに切り替えてもよい。   Further, as a modification of the eleventh embodiment, when the number of connected devices exceeds a predetermined number, the dialog shown in FIG. 19 may be displayed, and a client to be switched to UDP may be designated, or all clients may be switched to UDP. May be.

実施例12は、クライアントの通信インターフェースによって、TCPとUDPを切り替えて送信する方式の例であり、図21は、そのアルゴリズムを示した図である。
サーバ1上の画面共有プログラムは、クライアントが有線LANでネットワークに接続しているか、無線LANを介して接続しているかを取得する機能を有する。
クライアントは、自身の通信インターフェースに関する情報を、OSのシステム情報から取得することが可能である。クライアントの画面共有プログラムは、サーバ1に接続する際、この通信インターフェース情報を送信する。
一方、サーバ1は、クライアントから送られた通信インターフェースの情報から、それが無線LANかどうかを判定する。例えば、インターフェースの名前、あるいは無線LANであれば、IEEE802.11のどの規格のものであるか等の情報から判断する。
The twelfth embodiment is an example of a method of switching between TCP and UDP by using a communication interface of a client, and FIG. 21 is a diagram showing the algorithm.
The screen sharing program on the server 1 has a function of acquiring whether the client is connected to the network via a wired LAN or via a wireless LAN.
The client can acquire information related to its own communication interface from the system information of the OS. The client screen sharing program transmits this communication interface information when connecting to the server 1.
On the other hand, the server 1 determines from the communication interface information sent from the client whether or not it is a wireless LAN. For example, in the case of an interface name or a wireless LAN, it is determined from information such as which standard of IEEE 802.11.

図21に示すように、クライアントからの接続を受け付けた場合、クライアントの通信インターフェース情報を取得し、有線LANか無線LANかを判断する(ステップS131)。有線LANの場合(ステップS132/No)は、UDPパケットで画面データを送信するよう設定し(ステップS134)、一方で無線LANの場合(ステップS132/Yes)は、TCPパケットで画面データを送信するよう設定する(ステップS133)。   As shown in FIG. 21, when the connection from the client is accepted, the communication interface information of the client is acquired, and it is determined whether it is a wired LAN or a wireless LAN (step S131). In the case of a wired LAN (step S132 / No), the screen data is set to be transmitted by a UDP packet (step S134). On the other hand, in the case of a wireless LAN (step S132 / Yes), the screen data is transmitted by a TCP packet. (Step S133).

また、実施例12の変更例として、サーバ1自身が無線LANインターフェースで通信している場合、デフォルト設定を、TCPパケットで画面データを送信するようにしてもよい。
また、TCPで送信するように設定するインターフェースの対象は、無線LANだけでなく、IrDAやBluetooth(登録商標)も含んで良い。
Further, as a modification of the twelfth embodiment, when the server 1 is communicating with the wireless LAN interface, the screen data may be transmitted with the default setting using a TCP packet.
The target of the interface set to transmit by TCP may include not only a wireless LAN but also IrDA and Bluetooth (registered trademark).

また、別の変更例として、サーバ1及びクライアントの画面共有プログラムに、お互いの通信インターフェースに関する情報のやり取りを行う機能を設け、サーバ1とクライアントの接続確立時に、この情報のやり取りを行うようにしてもよい。
クライアントが無線インターフェースを利用していることを判断すると、上記例のように、TCPパケットで画面データを送信する設定とし、有線LANと判断した場合には、UDPパケットを利用する設定とする。
As another modification, the screen sharing program of the server 1 and the client is provided with a function for exchanging information about the communication interface between the server 1 and the client, and this information is exchanged when the connection between the server 1 and the client is established. Also good.
When it is determined that the client is using the wireless interface, the screen data is set to be transmitted using a TCP packet as in the above example. When it is determined that the client is a wired LAN, the UDP packet is used.

実施例13は、クライアントの接続経路によって、TCPとUDPを切り替えて送信する方式の例であり、図22は、そのアルゴリズムを示した図である。
サーバ1上の画面共有プログラムは、クライアントとLANで接続しているか、WANを介して接続しているかを取得する機能を有する。
The thirteenth embodiment is an example of a method of switching between TCP and UDP according to the connection path of the client, and FIG. 22 is a diagram showing the algorithm.
The screen sharing program on the server 1 has a function of acquiring whether the client is connected via a LAN or via a WAN.

クライアントがLAN接続であるか、WAN接続であるかを判断するには、以下の方法がある。
(方法1)
クライアントは、自身の通信インターフェースに関する情報を、OSのシステム情報から取得することが可能である。クライアントの画面共有プログラムは、はサーバ1に接続する際、この通信インターフェース情報を送信する。
一方、サーバ1は、クライアントから送られた通信インターフェースの情報から、第一の判断を行う。インターフェースがモデムであれば、WANで接続していると判断する。
There are the following methods for determining whether the client is a LAN connection or a WAN connection.
(Method 1)
The client can acquire information related to its own communication interface from the system information of the OS. The client screen sharing program transmits this communication interface information when connecting to the server 1.
On the other hand, the server 1 makes a first determination from information on the communication interface sent from the client. If the interface is a modem, it is determined that the connection is made by WAN.

(方法2)
サーバ1自身のネットワーク情報とクライアントのIPアドレスを照合し、クライアントのIPアドレスがグローバルIPであれば、そのクライアントはWANから接続していると判断する。
(Method 2)
The network information of the server 1 itself is collated with the client IP address, and if the client IP address is a global IP, it is determined that the client is connected from the WAN.

(方法3)
クライアントに対して、ネットワークコマンドの1つであるtracerouteコマンドを使って、ルーティング情報を問い合わせる。そこで、LANの外に出ていることを確認した場合、そのクライアントはWANから接続していると判断する。
(Method 3)
The client uses the traceroute command, which is one of the network commands, to inquire routing information. Therefore, when it is confirmed that the client is outside the LAN, it is determined that the client is connected from the WAN.

図22に示すように、クライアントからの接続を受け付けた場合、クライアントがLAN接続かWAN接続かを判断し(ステップS141)、LAN接続の場合(ステップS142/No)は、UDPパケットで画面データを送信するよう設定する(ステップS144)。一方、WANの場合(ステップS142/Yes)は、TCPパケットで画面データを送信するよう設定する(ステップS143)。   As shown in FIG. 22, when a connection from a client is accepted, it is determined whether the client is a LAN connection or a WAN connection (step S141). When the client is a LAN connection (step S142 / No), screen data is displayed using a UDP packet. The transmission is set (step S144). On the other hand, in the case of WAN (step S142 / Yes), the screen data is set to be transmitted by a TCP packet (step S143).

実施例14は、送信すべきエンコードデータの残量によって、TCPとUDPを切り替えて送信する方式の例であり、図23は、そのアルゴリズムを示した図である。
サーバ1上の画面共有プログラムは、画面更新が行われた場合、更新領域をエンコードして送信するのに必要なデータ量を計測する手段を有する。画面共有プログラムのうち、更新領域をエンコードする部分から、この量を取得する(ステップS151)。
Example 14 is an example of a method of switching between TCP and UDP according to the remaining amount of encoded data to be transmitted, and FIG. 23 is a diagram showing the algorithm.
The screen sharing program on the server 1 has means for measuring the amount of data necessary to encode and transmit the update area when the screen is updated. This amount is obtained from the portion of the screen sharing program that encodes the update area (step S151).

ある時点で、送信すべきエンコードデータ残量が、ある一定以上の場合は、UDPパケットで送信するようにする。例えば、残量が500キロバイトを超えた場合に設定する。
図23に示すように、更新量が所定の閾値を越えた場合(ステップS152/Yes)は、画面データを、UDPパケットで速度を優先して送信し(ステップS153)、そうでない場合(ステップS152/No)は、TCPパケットでクライアントの受信を確認しながら送信する(ステップS154)。
また、UDP通信を行っている場合に、残量が閾値よりも少なくなった場合は、自動的にTCPパケットでの送信に戻す。
If the remaining amount of encoded data to be transmitted at a certain time is greater than a certain level, it is transmitted by a UDP packet. For example, it is set when the remaining amount exceeds 500 kilobytes.
As shown in FIG. 23, when the update amount exceeds a predetermined threshold (step S152 / Yes), the screen data is transmitted with priority given to the speed in the UDP packet (step S153), and otherwise (step S152). / No) is transmitted while confirming reception of the client by a TCP packet (step S154).
In addition, when UDP communication is performed, if the remaining amount becomes smaller than the threshold value, transmission is automatically returned to the TCP packet.

実施例14の変更例として、エンコード前の更新が必要なビットマップデータ量だけで判断してもよい。例えば、残量が1メガバイトを超えた場合に設定する。   As a modification of the fourteenth embodiment, the determination may be made based only on the amount of bitmap data that needs to be updated before encoding. For example, it is set when the remaining amount exceeds 1 megabyte.

実施例15は、送信データレートによって、TCPとUDPを切り替えて送信する方式の例であり、図24は、そのアルゴリズムを示した図である。
サーバ1上の画面共有プログラムは、画面更新が行われた場合、単位時間当たり送信しているデータ送信レート(単位時間あたりの送信データ量)を計測する手段を有する。例えば、OSのシステム情報の送信ビットレートから取得する(ステップS161)。
The fifteenth embodiment is an example of a method of switching between TCP and UDP according to the transmission data rate, and FIG. 24 is a diagram showing the algorithm.
The screen sharing program on the server 1 has means for measuring the data transmission rate (the amount of transmission data per unit time) transmitted per unit time when the screen is updated. For example, it is acquired from the transmission bit rate of the OS system information (step S161).

データレートが所定の閾値よりも小さい場合(ステップS162/Yes)は、画面データを、UDPパケットで速度を優先して送信し(ステップS163)、そうでない場合(ステップS162/No)は、TCPパケットでクライアントの受信を確認しながら送信する(ステップS164)。
また、UDP通信を行っている場合に、データレートが閾値よりも大きくなった場合は、自動的にTCPパケットでの送信に戻す。
When the data rate is smaller than the predetermined threshold value (step S162 / Yes), the screen data is transmitted with priority given to the speed by the UDP packet (step S163). Otherwise (step S162 / No), the TCP packet is transmitted. Then, transmission is performed while confirming reception of the client (step S164).
In addition, when the UDP communication is performed, when the data rate becomes larger than the threshold value, the transmission is automatically returned to the TCP packet.

実施例16は、サーバとクライアントとの間の通信速度によって、TCPとUDPを切り替えて送信する方式の例であり、図25は、そのアルゴリズムを示した図である。
サーバ1及びクライアント上で起動する画面共有プログラムは、クライアントがサーバ1に接続した際、サーバ1とクライアントの間の通信速度を測定する。
サーバ1とクライアントの間の通信速度を測定を行う方法には、従来の測定方法を用いることができる。例えば、インターネット上のウェブサイトで行われているのと同様に、数メガバイトのデータを送信して、所要時間を測定する方法がある。
The sixteenth embodiment is an example of a method of switching between TCP and UDP according to the communication speed between the server and the client, and FIG. 25 is a diagram showing the algorithm.
The screen sharing program activated on the server 1 and the client measures the communication speed between the server 1 and the client when the client connects to the server 1.
A conventional measurement method can be used as a method for measuring the communication speed between the server 1 and the client. For example, there is a method of measuring a required time by transmitting several megabytes of data, as is done in a website on the Internet.

図25に示すように、クライアントからの接続を受け付けた場合、サーバ1は、サーバ1とクライアントの間の通信速度を測定し(ステップS171)、通信速度が所定の値以上の場合(ステップS172/Yes)は、TCPパケットで画面データを送信するよう設定し(ステップS173)、所定の値未満の場合(ステップS172/No)は、UDPパケットで画面データを送信するよう設定する(ステップS174)。
ここで、この判断の基準値は、例えば1メガバイト/秒(Mbps)とすることができる。
As shown in FIG. 25, when the connection from the client is accepted, the server 1 measures the communication speed between the server 1 and the client (step S171), and the communication speed is equal to or higher than a predetermined value (step S172 / Yes) sets the screen data to be transmitted with a TCP packet (step S173), and if it is less than the predetermined value (step S172 / No), the screen data is set to be transmitted with a UDP packet (step S174).
Here, the reference value of this determination can be set to, for example, 1 megabyte / second (Mbps).

実施例17は、サーバとクライアントとの間のMTUによって、TCPとUDPを切り替えて送信する方式の例であり、図26は、そのアルゴリズムを示した図である。
サーバ1上で起動する画面共有プログラムは、クライアントがサーバ1に接続した際、サーバ1とクライアントの間のMTUを測定する手段を有する。
サーバーとクライアントの間のMTUを測定を行う方法には、従来の測定方法を用いることができる。例えば、ネットワークコマンドの1つであるpingコマンドを使って、断片化しない最大データ容量を調べる方法がある。
以下にその原理を示す。
Example 17 is an example of a method of switching between TCP and UDP by MTU between a server and a client, and FIG. 26 is a diagram showing the algorithm.
The screen sharing program activated on the server 1 has means for measuring the MTU between the server 1 and the client when the client connects to the server 1.
A conventional measurement method can be used as a method of measuring the MTU between the server and the client. For example, there is a method of checking the maximum data capacity without fragmentation using a ping command which is one of network commands.
The principle is shown below.

ping -f -l <パケットサイズ> <[相手先ホスト名]または[相手先IPアドレス]>
ただし、
-f・・・パケットの分割を禁止するオプション
-l・・・パケットのサイズを指定するオプション
ping -f -l <packet size><[destination host name] or [destination IP address]>
However,
-f ... Option to prohibit packet fragmentation
-l ... Option to specify the packet size

上記のようなpingコマンドを送信することにより、クライアントに対して、何バイトまでのパケットが分割されずに送信されるかを確認することができる。   By transmitting the ping command as described above, it is possible to confirm to the client how many bytes of packets are transmitted without being divided.

図26に示すように、クライアントからの接続を受け付けた場合、サーバ1は、サーバとクライアントの間のMTUを測定し(ステップS181)、MTUが所定の値以上の場合(ステップS182/Yes)は、TCPパケットで画面データを送信するよう設定し(ステップS183)、所定の値未満の場合(ステップS182/No)は、UDPパケットで画面データを送信するよう設定する(ステップS184)。
ここで、この判断の基準値は、例えば1メガバイトとすることができる。
As shown in FIG. 26, when the connection from the client is accepted, the server 1 measures the MTU between the server and the client (step S181), and when the MTU is equal to or greater than a predetermined value (step S182 / Yes). The screen data is set to be transmitted by the TCP packet (step S183). If the screen data is less than the predetermined value (step S182 / No), the screen data is set to be transmitted by the UDP packet (step S184).
Here, the reference value for this determination can be, for example, 1 megabyte.

前記アルゴリズムにおいて、MTUが小さい場合は、1つのパケットで送れるデータ容量が小さいので、TCPのACK返答を行っていると、通信効率が悪くなるので、UDPパケットで送信している。   In the above algorithm, when the MTU is small, the data capacity that can be transmitted in one packet is small. Therefore, if a TCP ACK response is made, the communication efficiency deteriorates.

実施例18は、サーバとクライアントとの間のQoSによって、TCPとUDPを切り替えて送信する方式の例であり、図27は、そのアルゴリズムを示した図である。
サーバ1上で起動する画面共有プログラムは、クライアントがサーバ1に接続した際、QoSを測定し、帯域幅、最低保証速度、最大遅延時間、パケット間隔、ピーク速度、ネットワークの遅延やジッタ、パケットロス等を測定し、通信品質を評価する手段を有する。
The eighteenth embodiment is an example of a method of switching between TCP and UDP by QoS between the server and the client, and FIG. 27 is a diagram showing the algorithm.
The screen sharing program activated on the server 1 measures the QoS when the client connects to the server 1, and the bandwidth, the minimum guaranteed speed, the maximum delay time, the packet interval, the peak speed, the network delay and jitter, and the packet loss. Etc., and a means for evaluating communication quality.

図27に示すように、クライアントからの接続を受け付けた場合、サーバ1は、サーバとクライアントの間のQoSを測定し(ステップS191)、通信品質が一定の基準を満たしている場合(ステップS192/Yes)は、UDPパケットで画面データを送信するよう設定し(ステップS194)、満たしていないと判断した場合(ステップS192/No)は、TCPパケットで画面データを送信するよう設定する(ステップS193)。
ただし、必ずしも、全てのパラメータを測定する必要はない。
As shown in FIG. 27, when the connection from the client is accepted, the server 1 measures the QoS between the server and the client (step S191), and the communication quality satisfies a certain standard (step S192 / Yes) is set to transmit screen data using a UDP packet (step S194). If it is determined that the screen data is not satisfied (step S192 / No), it is set to transmit screen data using a TCP packet (step S193). .
However, it is not always necessary to measure all parameters.

実施例19は、クライアントの優先順位によって、TCPとUDPを切り替えて送信する方式の例であり、図28は、そのアルゴリズムを示した図である。
サーバ1上で起動する画面共有プログラムは、複数のクライアントが接続して、同時に画面を共有することが可能な画面共有システムにおいて、クライアントに優先順位を付ける機能を有する。
例えば、サーバ1の画面が更新された場合、まず、優先権の与えられたクライアントに対してTCPパケットで確実に画面データを送信し(ステップS201,S202/Yes,S203)、優先権のないクライアントに対しては、その後UDPパケットで、受信確認なしで画面データを送信する(ステップS201,S202/No,S204)。
The nineteenth embodiment is an example of a method for switching between TCP and UDP according to the priority order of the client, and FIG. 28 is a diagram showing the algorithm.
The screen sharing program activated on the server 1 has a function of assigning priorities to clients in a screen sharing system in which a plurality of clients can connect and share screens simultaneously.
For example, when the screen of the server 1 is updated, first, the screen data is surely transmitted to the client given priority by a TCP packet (steps S201, S202 / Yes, S203), and the client without priority Then, the screen data is transmitted without confirmation of reception with a UDP packet (steps S201, S202 / No, S204).

実施例20では、更に、優先権と、共有画面上での遠隔制御の制御権とを関連付けて登録する方法について説明している。
図29に示すように、制御権を得ているクライアントのみ(クライアント「亜伊 上男(192. 168. 0. 2)」)が、遠隔操作が可能で、制御権を所持しているクライアントに対しては、所有していないクライアントよりも先に、TCPパケットで画面データを送信する。一方、制御権のないクライアントは、共有画面を閲覧するだけで、入力イベントはサーバに受け付けられない。また、制御権のないクライアントへの画面データ送信後に、UDPパケットで、受信確認なしで画面データを受信する。
In the twentieth embodiment, a method for registering a priority right and a control right for remote control on a shared screen in association with each other is described.
As shown in Fig. 29, only clients that have control rights (client "Ai Kazuo (192. 168. 0. 2)") can remotely control and have control rights. In this case, the screen data is transmitted by the TCP packet before the client that does not own it. On the other hand, the client without the control right only browses the shared screen, and the input event is not accepted by the server. In addition, after the screen data is transmitted to the client without the control right, the screen data is received with a UDP packet without confirmation of reception.

実施例21では、複数のクライアントが接続して、同時に画面を共有し、遠隔操作することが可能な画面共有システムにおいて、遠隔操作中のクライアントに対して、画面データ送信優先度を高くする方法について説明している。
サーバ1は、クライアントが遠隔操作中であるかどうかを判断する機能を有する。
図30に示すように、クライアントがリモート操作を行うと、サーバ1は、そのクライアントのリモート操作フラッグをONにする(ステップS211)。そこでタイマーをスタートし(ステップS212)、一定時間内に、例えば、1分以内に、クライアントが操作を行ったかどうかで、クライアントが操作中であるかどうかを判断する。例えば、1分以内に何の入力イベントがない場合、サーバ1はそのクライアントが遠隔操作を行っていないと判断して(S213/No,S214/Yes)、リモート操作フラッグをOFFにする(ステップS215)。
Embodiment 21 relates to a method for increasing the screen data transmission priority for a remotely operated client in a screen sharing system in which a plurality of clients can connect, share a screen at the same time, and can be operated remotely. Explains.
The server 1 has a function of determining whether the client is operating remotely.
As shown in FIG. 30, when the client performs a remote operation, the server 1 turns on the remote operation flag of the client (step S211). Therefore, a timer is started (step S212), and it is determined whether or not the client is operating based on whether or not the client has performed an operation within a certain time, for example, within one minute. For example, if there is no input event within 1 minute, the server 1 determines that the client is not performing remote operation (S213 / No, S214 / Yes), and turns off the remote operation flag (step S215). ).

また、画面データの更新があった場合、図31に示すように、サーバ1はリモート操作フラッグのON/OFFを調べ(ステップS221)、フラッグがONのクライアントに対しては、OFFのクライアントよりも先に、TCPパケットで画面データを送信する(ステップS222)。一方、フラッグOFFのクライアントに対しては、ONのクライアントへの画面データ送信後に、UDPパケットで、受信確認なしで画面データを送信する(ステップS223)。
これにより、操作を行っている人に対して、品質・速度を優先して、画面データを送信し、遠隔操作に不便を感じないようにすることが可能である。
When the screen data is updated, as shown in FIG. 31, the server 1 checks ON / OFF of the remote operation flag (step S221), and the client with the flag ON is more than the client with OFF. First, screen data is transmitted by a TCP packet (step S222). On the other hand, for the flag-OFF client, after the screen data is transmitted to the ON client, the screen data is transmitted without confirmation of reception using a UDP packet (step S223).
This makes it possible to give priority to quality and speed to the person performing the operation and transmit the screen data so as not to feel inconvenience in the remote operation.

実施例21の変更例として、例えば、実施例20のように、制御権の管理を組み合わせることも可能である。その場合、制御権のない制御権のないクライアントに対しては、画面データは常にUDPパケットで送信する。   As a modified example of the twenty-first embodiment, for example, as in the twentieth embodiment, it is possible to combine management of control rights. In this case, the screen data is always transmitted as a UDP packet to a client without a control right and without a control right.

実施例22は、共有画面データがフォントデータであるか画像データであるかによって、TCPとUDPを切り替えて送信する方式の例であり、図32は、そのアルゴリズムを示した図である。
画面の更新があった場合、先ず、文字が表示された部分の画像データを、TCPパケットで確実に送信し、その後、その他の領域の画像データをUDPパケットで送信し、クライアントの画面で、文字の部分を読みやすくする。
The twenty-second embodiment is an example of a method of switching between TCP and UDP depending on whether the shared screen data is font data or image data, and FIG. 32 is a diagram showing the algorithm.
When the screen has been updated, first, the image data of the part where the characters are displayed is reliably transmitted by the TCP packet, and then the image data of the other area is transmitted by the UDP packet. Make the part of the text easier to read.

サーバ1上で起動する画面共有プログラムは、共有画面に更新があった場合、更新領域を分割して、エンコードし、クライアントにその画面データを送信するが、ここで、分割した画面領域にOSがフォント描画命令を出している箇所かどうかを判定し(ステップS231)、フォント描画命令を出している領域である場合(ステップS232/Yes)は、TCPパケットで画面データを送信する(ステップS233)。一方、フォント描画命令が出ていない部分については(ステップS232/No)、UDPパケットで画面データを送信する(ステップS234)。また、送信の順序としては、フォント描画部分を先に送信することが望ましい。
フォント描画命令の検出方法として、例えば、サーバ1上で起動する画面共有プログラムが、分割領域のGDI(Graphic Device Interface)命令を調べ、フォント描画命令が出ているか否かによって実行する方法がある。
When the shared screen is updated, the screen sharing program activated on the server 1 divides the update area, encodes it, and transmits the screen data to the client. Here, the OS is placed in the divided screen area. It is determined whether or not the font drawing command has been issued (step S231). If it is the area from which the font drawing command has been issued (step S232 / Yes), screen data is transmitted using a TCP packet (step S233). On the other hand, for the portion where the font drawing command is not issued (step S232 / No), the screen data is transmitted by the UDP packet (step S234). As a transmission order, it is desirable to transmit the font drawing portion first.
As a method for detecting a font drawing command, for example, there is a method in which a screen sharing program started on the server 1 checks a GDI (Graphic Device Interface) command in a divided area and executes it depending on whether or not a font drawing command is issued.

実施例23は、CPUの負荷状況に応じて、TCPとUDPを切り替えて送信する方式の例であり、図33は、そのアルゴリズムを示した図である。
サーバ1上の画面共有プログラムは、画面更新が行われた場合に、CPUの負荷量を計測する手段を有する。例えば、OSのシステム情報のCPU負荷情報から取得する。
Example 23 is an example of a method of switching between TCP and UDP according to the load status of the CPU, and FIG. 33 is a diagram showing the algorithm.
The screen sharing program on the server 1 has means for measuring the load amount of the CPU when the screen is updated. For example, it is acquired from the CPU load information of the OS system information.

図33に示すように、CPUの負荷量を計測し(ステップS241)、CPUの負荷量が所定の閾値を越えた場合(ステップS242/Yes)は、画面データをUDPパケットで速度を優先して送信し(ステップS244)、そうでない場合(ステップS242/No)は、TCPパケットでクライアントの受信を確認しながら送信する(ステップS243)。また、CPUの負荷量が閾値よりも少なくなった場合は、自動的にTCPパケットでの送信に戻す。
閾値の設定として、例えば、CPU負荷が1秒間以上にわたって80%を超えている場合は、UDPパケットに切り替えるようにする。
As shown in FIG. 33, the CPU load is measured (step S241), and if the CPU load exceeds a predetermined threshold (Yes in step S242), the screen data is prioritized for speed with a UDP packet. Transmit (step S244), otherwise (step S242 / No), the TCP packet is transmitted while confirming reception of the client (step S243). When the load amount of the CPU becomes smaller than the threshold value, the transmission is automatically returned to the TCP packet.
As the threshold setting, for example, when the CPU load exceeds 80% for 1 second or more, switching to a UDP packet is performed.

CPUの負荷が大きいときは、それだけ画面更新量が多いため、更新部分の画面データのエンコードに時間が掛かっていることが多い。また、CPU負荷が大きい場合、更新部分の画面データのエンコード処理が遅くなるため、通信処理部分のCPU負荷を小さくする、すなわち、通信速度を速くする必要がある。そのため、TCPパケットからUDPパケットに切り替えることにより、CPU負荷を減らすと共に、クライアントの画面表示の遅延を低減することが可能である。   When the load on the CPU is large, the amount of screen update is large, so it often takes time to encode the screen data of the updated portion. In addition, when the CPU load is large, the encoding process of the screen data in the update portion is slowed down, so it is necessary to reduce the CPU load in the communication processing portion, that is, increase the communication speed. Therefore, by switching from the TCP packet to the UDP packet, it is possible to reduce the CPU load and delay the screen display of the client.

また、上記実施例1から23を適宜組み合わせることにより、高速な画面共有システムが実現される。例えば、制御権のない閲覧のみのクライアントに対しては、無条件で、UDPマルチキャストによって、同報通信により画面データを送信し、制御権のあるクライアントに対しては、最前面にあるアクティブウィンドウの文字描画が部分のデータをTCPパケットで優先的に送信し、それ以外の部分はUDPパケットで送信する。
あるいは、有線LANで接続しているクライアントに対しては、無条件でUDPパケットで画面データを送信し、無線LANで接続しているクライアントに対しては、指定したアプリケーションのみをTCPパケットで優先的に送信し、それ以外の部分はUDPパケットで送信するなどの組み合わせが可能である。
Further, a high-speed screen sharing system can be realized by appropriately combining the above first to third embodiments. For example, for browsing-only clients that do not have control rights, screen data is sent unconditionally by UDP multicast, and broadcast data is transmitted. For clients with control rights, the active window in the foreground is The character drawing part of the data is preferentially transmitted by the TCP packet, and the other part is transmitted by the UDP packet.
Alternatively, screen data is unconditionally transmitted to the client connected via the wired LAN using a UDP packet, and only the designated application is prioritized using the TCP packet for a client connected via the wireless LAN. It is possible to combine such as transmitting to the other part and transmitting the other part by UDP packet.

実施例24〜27では、ネットワークに中継機器(プロキシ)を設けた場合について説明する。
図34は、本発明の一実施例であるデータ通信システムのネットワーク構成を示した概要図である。
データ通信システムは、サーバとして機能する情報処理装置(サーバ1)と、前記サーバ1のクライアントとして機能する情報処理装置(クライアント2a,2b,・・・,2n)と、サーバ1及びクライアント2との間に中継機器3と、を含む形で構成される。サーバ1、クライアント2、中継器機3は、例えば、パーソナルコンピュータであり、これらが、例えば、IEEE802.3で定められているイーサネット(登録商標)LANによるネットワークで接続されている。
In Examples 24 to 27, a case where a relay device (proxy) is provided in the network will be described.
FIG. 34 is a schematic diagram showing a network configuration of a data communication system according to an embodiment of the present invention.
The data communication system includes an information processing device (server 1) that functions as a server, an information processing device (clients 2a, 2b,..., 2n) that functions as a client of the server 1, and a server 1 and a client 2. The relay device 3 is included in between. The server 1, the client 2, and the repeater 3 are, for example, personal computers, which are connected via a network based on an Ethernet (registered trademark) LAN defined by, for example, IEEE 802.3.

サーバ1は、自身の表示装置に表示されるDesktop画面全体、または、そこに表示されている画面の一部を共有画面とし、共有画面データを接続しているクライアント2に送信することにより、受信したクライアントは、表示装置にサーバ1の共有画面を表示することができる。
本例では、サーバ1とクライアント2の間に、中継機器(以下、プロキシと省略する)が存在し、サーバ1から受信した画面データを受信し、プロキシに接続しているクライアントに画面データを転送する。これにより、サーバ1に多数のクライアントが接続した際の、サーバの負荷を低減し、通信効率を向上させることが可能である。
The server 1 receives the entire desktop screen displayed on its display device or a part of the screen displayed on the screen as a shared screen and transmits the shared screen data to the connected client 2. The client can display the shared screen of the server 1 on the display device.
In this example, there is a relay device (hereinafter abbreviated as a proxy) between the server 1 and the client 2, receives the screen data received from the server 1, and transfers the screen data to the client connected to the proxy. To do. As a result, when a large number of clients are connected to the server 1, it is possible to reduce the load on the server and improve the communication efficiency.

また、実施例1の場合と同様に、クライアント2に表示された共有画面内において、該クライアントのマウスやキーボードなどの入力機器からのイベントを、サーバ1に送信することにより、クライアントからサーバの遠隔操作も可能であるが、これもプロキシを通して行ってもよいし、入力イベントはプロキシを介さず、直接サーバに送信するような通信方式を採用してもよい。   Similarly to the case of the first embodiment, by transmitting an event from an input device such as a mouse or a keyboard of the client to the server 1 in the shared screen displayed on the client 2, the client can remotely communicate with the server. Although operation is also possible, this may also be performed through a proxy, and a communication method may be employed in which an input event is transmitted directly to a server without passing through a proxy.

以下に、その原理を説明する。
プロキシを用いた画面の共有方法は、MulticastVNCやVNC Proxyあるいは、VNC Reflector等の従来技術をそのまま利用できるので、詳細は省略する。概略としては、サーバのアプリケーションが、サーバの画面データの更新部分を検出し、画面の更新領域を、一定のアルゴリズムにより分割して、エンコードして、プロキシに送信する。プロキシは、一種の画面共有クライアントとして起動する。プロキシはそれと共に、受信した画面データを接続しているクライアントに転送するサーバとしての機能を持ち、受信したクライアントは、更新された領域の画面データをデコードして、共有画面のデータを更新することにより、サーバの画面を表示することが可能となっている。
The principle will be described below.
Since the screen sharing method using the proxy can use conventional techniques such as Multicast VNC, VNC Proxy, and VNC Reflector as they are, details are omitted. As an outline, the server application detects an update portion of the server screen data, divides the screen update area by a certain algorithm, encodes it, and transmits it to the proxy. The proxy is activated as a kind of screen sharing client. The proxy also has a function as a server that forwards the received screen data to the connected client, and the received client decodes the screen data of the updated area and updates the data of the shared screen. Thus, the server screen can be displayed.

図35を用いて、プロキシを介して画面共有を行う方式の処理フローを説明する。
サーバ1とプロキシ3との接続管理、プロキシ3とクライアント2との接続管理は、実施例2と同様にTCPの接続管理によって行っているものとする。すなわち、プロキシ3はサーバ1に対してTCPによる接続要求を行い(ステップS301)、サーバ1が応答し、サーバ〜プロキシ間のTCP接続が確立する(ステップS302,S303)。また、クライアント2は、プロキシ3に対してTCPによる接続要求を行い(ステップS304)、プロキシ3が応答し、クライアント〜プロキシ間のTCP接続が確立する(ステップS305,S306)。
プロキシ3は、サーバ1からTCPパケットで受信確認を行いながら画面データを受信すると(ステップS307,S308)、その画面データを接続されたクライアントに対してUDPパケットで画面データを送信する(ステップS309)。
A processing flow of a method for sharing a screen via a proxy will be described with reference to FIG.
It is assumed that connection management between the server 1 and the proxy 3 and connection management between the proxy 3 and the client 2 are performed by TCP connection management as in the second embodiment. That is, the proxy 3 makes a TCP connection request to the server 1 (step S301), the server 1 responds, and a TCP connection between the server and the proxy is established (steps S302 and S303). Further, the client 2 makes a TCP connection request to the proxy 3 (step S304), and the proxy 3 responds to establish a TCP connection between the client and the proxy (steps S305 and S306).
When the proxy 3 receives screen data from the server 1 while confirming reception using a TCP packet (steps S307 and S308), the proxy 3 transmits the screen data to the client connected to the screen data using a UDP packet (step S309). .

図35の処理フローの変更例として、例えば、プロキシ3は、サーバ1からUDPパケットで受信した画面データを、UDPパケットでクライアント2に転送してもよい。
また、例えば、サーバ1からUDPパケットで受信した画面データを、TCPパケットでクライアント2に転送してもよい。
あるいは、サーバ1からTCPパケットで受信した画面データを、TCPパケットでクライアント2に転送するという方法もある。
As an example of a change in the processing flow of FIG. 35, for example, the proxy 3 may transfer screen data received from the server 1 using a UDP packet to the client 2 using a UDP packet.
Further, for example, screen data received from the server 1 using a UDP packet may be transferred to the client 2 using a TCP packet.
Alternatively, there is a method of transferring screen data received from the server 1 using a TCP packet to the client 2 using a TCP packet.

また、図34に示した構成の変更例として、例えば、図36に示すように、クライアント2は必ずしもプロキシ3を通してサーバ1から画面データを受信する必要はなく、サーバ1に直接接続されているクライアント2a,2b,・・・,2iと、プロキシを介して接続しているクライアント2j,・・・,2nが混在していても構わない。この場合、遠隔操作を行う優先権のあるクライアントのみ、サーバ1に直接接続し、共有画面を閲覧するだけのクライアントはプロキシ3を介して接続することにより、通信効率を向上することが可能となる。   As an example of a change in the configuration shown in FIG. 34, for example, as shown in FIG. 36, the client 2 does not necessarily need to receive screen data from the server 1 through the proxy 3, but is directly connected to the server 1. 2a, 2b,..., 2i and clients 2j,..., 2n connected via a proxy may be mixed. In this case, it is possible to improve the communication efficiency by connecting directly to the server 1 only with a client having priority to perform remote operation, and connecting the client that only browses the shared screen via the proxy 3. .

実施例25は、プロキシにてUDPマルチキャストあるいはUDPブロードキャストを適用した例であり、図37にその処理フローを示す。また、表2はネットワーク構成におけるネットワークアドレスの一例である。   The twenty-fifth embodiment is an example in which UDP multicast or UDP broadcast is applied at the proxy, and FIG. 37 shows the processing flow. Table 2 is an example of a network address in the network configuration.

Figure 2005348262
Figure 2005348262

<1.ブロードキャストの場合>
サーバ1は、UDPソケットで、(133. 139. 100. 111)と(133. 139. 100. 222)からの入力イベントを待ち受けしている。また、画面データをブロードキャストアドレス(255. 255. 255. 255)で同一サブネット内にブロードキャスト送信する。
クライアント2j,2nは、(133. 139. 100. 100)からの画面データのブロードキャストを待ち受けしている。また、入力イベントを(133. 139. 100. 100)にUDPユニキャストで送信する。
サーバ1は、プロキシ3とTCP接続し、画面データをTCPパケットで、プロキシ3のアドレス(133. 139. 100. 55)に送信している。一方、TCPソケットで、プロキシ3からの入力データを待ち受けている。
プロキシ3は、TCPソケットで、サーバ1のアドレス(133. 139. 100. 100)からの画面データを待ち受けしている。
<1. For broadcast>
The server 1 is waiting for input events from (133. 139. 100. 111) and (133. 139. 100. 222) through a UDP socket. The screen data is broadcast by broadcast address (255. 255. 255. 255) within the same subnet.
The clients 2j and 2n are waiting for a screen data broadcast from (133. 139. 100. 100). Also, an input event is transmitted to (133. 139. 100. 100) by UDP unicast.
The server 1 has a TCP connection with the proxy 3 and transmits screen data to the address of the proxy 3 (133. 139. 100.55) as a TCP packet. On the other hand, the TCP socket is waiting for input data from the proxy 3.
The proxy 3 is a TCP socket and is waiting for screen data from the address of the server 1 (133. 139. 100. 100).

プロキシ3は、サーバ1からの画面データを受信すると、受信した画面データをブロードキャストアドレス(255. 255. 255. 255)で同一サブネット内にブロードキャスト送信する。パケットはUDPパケットを用いる。
また、プロキシ3は、UDPソケットで、クライアントのアドレスである(133. 139. 100. 111)と(133. 139. 100. 222)からの入力イベントを待ち受けしている。
プロキシ3は、クライアントからの入力イベントを受信すると、TCPパケットで、サーバ1に入力イベントを転送する。
クライアント2j,2nは、(133. 139. 100. 55)からの画面データのブロードキャストを待ち受けしている。また、入力イベントを(133. 139. 100. 55)にUDPユニキャストで送信する。
クライアントは、プロキシ3からブロードキャストされた画面データを受信して、画面共有を行う。
When the proxy 3 receives the screen data from the server 1, the proxy 3 broadcasts the received screen data to the same subnet with a broadcast address (255.255.255.255). The packet is a UDP packet.
The proxy 3 is a UDP socket and is waiting for input events from the client addresses (133. 139. 100. 111) and (133. 139. 100. 222).
When the proxy 3 receives an input event from the client, the proxy 3 transfers the input event to the server 1 using a TCP packet.
The clients 2j and 2n are waiting for a screen data broadcast from (133. 139. 100.55). Also, the input event is transmitted to (133. 139. 100. 55) by UDP unicast.
The client receives screen data broadcast from the proxy 3 and performs screen sharing.

<2.マルチキャストの場合>
プロキシ3とクライアント2との接続確立時に、サーバ1は全てのクライアントにマルチキャストアドレスを通知する。
プロキシ3はマルチキャストがクライアントに届くように、マルチキャストの範囲を設定する。すなわち、TTL(Time To Live)の値を適切に設定する。
サーバ1は、プロキシ3とTCP接続し、画面データをTCPパケットで、プロキシ3のアドレス(133. 139. 100. 55)に送信している。一方、TCPソケットで、プロキシ3からの入力データを待ち受けている。
<2. For multicast>
When the connection between the proxy 3 and the client 2 is established, the server 1 notifies all clients of the multicast address.
The proxy 3 sets the multicast range so that the multicast reaches the client. That is, the value of TTL (Time To Live) is set appropriately.
The server 1 has a TCP connection with the proxy 3 and transmits screen data to the address of the proxy 3 (133. 139. 100.55) as a TCP packet. On the other hand, the TCP socket is waiting for input data from the proxy 3.

プロキシ3は、TCPソケットで、サーバ1のアドレス(133. 139. 100. 100)からの画面データを待ち受けしている。
プロキシ3は、サーバ1からの画面データを受信すると、受信した画面データをマルチキャストキャストアドレス(233. 233. 233. 233)でマルチキャスト送信する。パケットはUDPパケットを用いる。
また、プロキシ3は、UDPソケットで、クライアントのアドレスである(133. 139. 100. 111)と(133. 139. 100. 222)からの入力イベントを待ち受けしている。
プロキシ3は、クライアントからの入力イベントを受信すると、TCPパケットで、サーバ1に入力イベントを転送する。
The proxy 3 is a TCP socket and is waiting for screen data from the address of the server 1 (133. 139. 100. 100).
When the proxy 3 receives the screen data from the server 1, the proxy 3 multicasts the received screen data using the multicast cast address (233.233.233.233). The packet is a UDP packet.
The proxy 3 is a UDP socket and is waiting for input events from the client addresses (133. 139. 100. 111) and (133. 139. 100. 222).
When the proxy 3 receives an input event from the client, the proxy 3 transfers the input event to the server 1 using a TCP packet.

クライアント2j,2nは、プロキシから指定されたマルチキャストキャストアドレス(233. 233. 233. 233)からの画面データを待ち受けしている。また、入力イベントを(133. 139. 100. 100)にUDPユニキャストで送信する。   The clients 2j and 2n are waiting for screen data from the multicast cast address (233.233.233.233) designated by the proxy. Also, an input event is transmitted to (133. 139. 100. 100) by UDP unicast.

実施例26では、プロキシにおけるセッション記録及び再生機能について説明する。
プロキシ3は、サーバ1から受信した画面データを、TCPパケットでサーバ1が送信して来た順に、時間情報と共に、順次ファイルに追記していき、蓄積する。時間記録は例えば、記録開始時間を原点とする。
クライアント2は、プロキシ3に接続し、記録されたサーバ1の画面データの再生を要求すると、プロキシ3は、記録した画面データを、記録開始時間からの経過時間の指示に従い、順次クライアントにUDPパケットで送信する。
図38はその様子を示している。サーバ1とプロキシ3の接続が終了後に、クライアント2がプロキシ3に接続して、画面共有の様子を非同期で閲覧することが可能である。なお、再生中は、クライアント2は言うまでもなく閲覧することしかできず、プロキシ3はクライアント2からの入力イベントは受け付けない。
In the twenty-sixth embodiment, a session recording and reproduction function in the proxy will be described.
The proxy 3 sequentially adds and accumulates the screen data received from the server 1 to the file together with the time information in the order in which the server 1 has transmitted the TCP packet. For example, the time recording uses the recording start time as the origin.
When the client 2 connects to the proxy 3 and requests the reproduction of the recorded screen data of the server 1, the proxy 3 sequentially transmits the recorded screen data to the client according to the instruction of the elapsed time from the recording start time. Send with.
FIG. 38 shows such a state. After the connection between the server 1 and the proxy 3 is completed, the client 2 can connect to the proxy 3 to view the screen sharing state asynchronously. Note that during playback, the client 2 can only browse, and the proxy 3 does not accept input events from the client 2.

また、プロキシ3がサーバ1からの画面データを記録中に、クライアント2がプロキシ3に接続し、プロキシ3とサーバ1が接続を開始してからの画面データを時間差付きで閲覧することも可能である。   In addition, while the proxy 3 is recording screen data from the server 1, the client 2 can connect to the proxy 3, and it is possible to view the screen data after the proxy 3 and the server 1 start connection with a time difference. is there.

また、実施例26の変更例として、プロキシに記録した画面データを早送りで再生する機能を有してもよい。
プロキシ3が記録時間データを元に、画面データをクライアント2に送信する際、経過時間を、例えば、記録された値の半分の値として送信間隔を早めることも可能である。
Further, as a modification of the twenty-sixth embodiment, a screen data recorded in the proxy may be played back at a fast forward speed.
When the proxy 3 transmits screen data to the client 2 based on the recording time data, it is possible to shorten the transmission interval by setting the elapsed time to, for example, half of the recorded value.

実施例27,28では、実施例1〜26で説明したデータ通信システムを応用した電子会議システムについて説明する。
例えば、図1で示したネットワーク構成において、サーバ1を会議サーバとし、クライアント2を参加者の利用する参加者端末とする電子会議システムを構築する。
会議サーバは、実施例3で説明したような、画面共有サーバ1のUDPマルチキャストを利用した画面データ送信機能を備える。
会議サーバは、会議室内のネットワークにのみマルチキャストパケットが届くようにTTLを設定する。
また、会議サーバは制御権の管理を行い、基本的に、制御権を持っていない参加者端末にはマルチキャストUDPによって画面データを送信している。
一方、制御権を持っている参加者端末に画面データを送信する場合は、最前面にあるアクティブウィンドウの文字領域の画面データを優先的にTCPパケットを用いて、制御権のある参加者端末で早く正確に表示できるよう送信する。文字領域以外のデータは、UDPパケットで、送信順序の優先度を下げて送信されるようになっている。
In Examples 27 and 28, an electronic conference system to which the data communication system described in Examples 1 to 26 is applied will be described.
For example, in the network configuration shown in FIG. 1, an electronic conference system is constructed in which the server 1 is a conference server and the client 2 is a participant terminal used by a participant.
The conference server has a screen data transmission function using the UDP multicast of the screen sharing server 1 as described in the third embodiment.
The conference server sets the TTL so that the multicast packet reaches only the network in the conference room.
The conference server manages the control right, and basically transmits screen data to the participant terminals that do not have the control right by multicast UDP.
On the other hand, when sending screen data to a participant terminal that has the control right, the screen data in the character area of the active window in the foreground is preferentially used by the TCP terminal in the participant terminal having the control right. Send for quick and accurate display. Data other than the character area is transmitted in a UDP packet with a lower priority in the transmission order.

また、例えば、図36の機器構成で、サーバ1を会議サーバとし、クライアント2を参加者の利用する参加者端末とし、中継機器(プロキシ)3を画面データの録画・再生が可能で、かつマルチキャストUDPパケットによる画面データの転送が可能である会議プロキシとする会議システムを構成する。
会議サーバは、直接接続している参加者端末にマルチキャストパケットが届くようにTTLを設定する。会議プロキシは、プロキシに接続している参加者端末にマルチキャストパケットが届くようにTTLを設定する。
Also, for example, in the device configuration of FIG. 36, the server 1 is a conference server, the client 2 is a participant terminal used by a participant, the relay device (proxy) 3 is capable of recording / reproducing screen data, and multicast. A conference system is configured as a conference proxy capable of transferring screen data using a UDP packet.
The conference server sets the TTL so that the multicast packet reaches the directly connected participant terminal. The conference proxy sets TTL so that multicast packets reach the participant terminals connected to the proxy.

図36のように、一部の参加者端末(2a,2b,・・・,2i)は会議室内に存在し、会議サーバに直接接続しており、会議サーバから直接マルチキャストUDPパケットを受信する。一方、他の一部の参加者端末(2j,・・・,2n)は、他の会議室にあり、会議プロキシを介して接続しており、会議プロキシからのマルチキャストUDPパケットを受信する。   As shown in FIG. 36, some participant terminals (2a, 2b,..., 2i) exist in the conference room, are directly connected to the conference server, and receive multicast UDP packets directly from the conference server. On the other hand, some other participant terminals (2j,..., 2n) are in other conference rooms, are connected via a conference proxy, and receive multicast UDP packets from the conference proxy.

このように通信を管理することにより、ネットワークの通信効率が向上し、遠隔会議に利用した際、スムーズに画面共有が可能となる。
また、途中から会議に参加したい参加者は、プロキシに接続し、会議の初めから共有画面の画面データを再生し、適宜不要な部分を飛ばして再生したり、早送り再生をすることにより、会議の内容を追いかけ、リアルタイムに会議サーバの画面共有したくなったら、会議サーバに接続を切り替え、同期した共有画面を見たり、遠隔操作を行ったりしながら、会議に参加することが可能となる。
By managing the communication in this way, the communication efficiency of the network is improved, and the screen can be shared smoothly when used for a remote conference.
Participants who want to join the conference from the middle connect to the proxy and play the screen data of the shared screen from the beginning of the conference, skipping unnecessary parts as appropriate, or fast-forward playback, If you want to follow the contents and share the screen of the conference server in real time, you can join the conference while switching the connection to the conference server and watching the synchronized shared screen or performing remote operation.

(効果)
以上の説明から明らかなように、送信パケットに対して、パケットを正常に受信したことを応答するACKパケットを返信する必要のある、データストリーム型の通信方式であるTCPパケットによる通信だけでなく、ACKの返信の必要がないため高速であるが、信頼性や、パケットの受信順序を保証しないデータグラム型の通信方式であるUDPパケットを用いて、画面データの送信を行う、高速な画面共有を行う、画面共有サーバと画面共有クライアント間の通信が可能となる。
(effect)
As is clear from the above description, not only communication by a TCP packet that is a data stream type communication method that needs to return an ACK packet in response to the normal reception of the packet to the transmission packet, High-speed screen sharing that uses UDP packets, which are datagram-type communication methods that do not guarantee the reliability or the reception order of packets, because it does not require an ACK reply, but is fast. Communication between the screen sharing server and the screen sharing client can be performed.

また、UDPマルチキャスト,またはUDPブロードキャストパケットで、画面データを同報パケットにより、一度に複数のクライアントに送信することにより、画面共有サーバーの画面データを複数のクライアントに対して、高速に送信する、ネットワーク利用効率の高い通信が可能となる。   Also, a network that transmits screen data of a screen sharing server to a plurality of clients at a high speed by transmitting screen data to a plurality of clients at once by a broadcast packet using a UDP multicast or UDP broadcast packet. Highly efficient communication is possible.

また、パケットタイプを手動または自動で動的に選択することにより、臨機応変に適したパケットタイプで画面データの通信を行うことにより、通信速度の効率を向上させることが可能となる。
また、クライアントの利用者が、画面共有によってサーバの画面データを共有する際に感じる、サーバとのタイムラグによって生じる感覚的不満を緩和することも可能となる。
また、あまり重要でない画面データや、TCPを用いて確実に送信するまでもない良好なネットワーククライアント環境のクライアントに対して、UDPパケットを利用して画面データを送信することにより、TCPパケットを利用する必要のあるクライアントの利用者が、あるいはTCPパケットを用いて、確実に送信する必要のある画面データの転送速度を相対的に速くすることが可能となる。
In addition, by selecting the packet type dynamically manually or automatically, the screen data can be communicated with the packet type suitable for the case, so that the efficiency of the communication speed can be improved.
It is also possible to alleviate the sensory dissatisfaction caused by the time lag with the server, which is felt when the client user shares the screen data of the server by screen sharing.
Also, use TCP packets by sending screen data using UDP packets to less important screen data or clients in a good network client environment that need not be sent reliably using TCP. It is possible to relatively increase the transfer rate of screen data that needs to be reliably transmitted by a client user who needs it or by using a TCP packet.

また、予め、アプリケーション毎に、そのアプリケーションの画面領域が更新されたとき、画面データをTCPパケットで送信するか、UDPパケットで送信するかを指定する機能により、画面データの送信パケットの型を動的に選択して画面共有を行うことにより、クライアントに表示される共有された画面データが、アプリケーションの特性適したものとすることが可能となる。
また、TCPパケットで送信するよう登録されたアプリケーションの画面データの転送速度を相対的に速くすることが可能となる。
また、映像データ再生アプリケーションなどの、TCPパケットによる確実性よりも、画面更新速度を優先するアプリケーションの画面データをUDPパケットにより送信し、クライアントの画面で、画面共有のコマ落ちを減少させることも可能となる。
In addition, when the screen area of the application is updated for each application in advance, the function of specifying whether to transmit the screen data as a TCP packet or a UDP packet is used to change the type of the screen data transmission packet. By selectively selecting and sharing the screen, the shared screen data displayed on the client can be adapted to the characteristics of the application.
In addition, it is possible to relatively increase the screen data transfer rate of an application registered to be transmitted using a TCP packet.
In addition, screen data of applications that prioritize the screen update speed over the certainty of TCP packets, such as video data playback applications, can be transmitted using UDP packets to reduce screen sharing frame drops on the client screen. It becomes.

また、最前面にあるアプリケーションウィンドウをTCPパケットで送信し、それ以外の背面のウィンドウまたはデスクトップ領域をUDPパケットで送信することにより、その時点で重要なデータを表示していることの多い、最前面ウィンドウのデータを確実に送信し、それ以外のウィンドウ領域あるいはデスクトップ領域の、あまり重要でないデータは、確実性よりも、速度のみを優先して送信することにより、通信効率を向上することが可能となる。また、TCPパケットで送信するよう登録された最前面にあるウィンドウの画面データの転送速度を相対的に速くすることが可能となる。   In addition, by sending the application window on the foreground with a TCP packet and sending the other window or desktop area on the other side with a UDP packet, important data is often displayed at that time. It is possible to improve the communication efficiency by transmitting the data of the window reliably, and transmitting the less important data of the other window area or desktop area by giving priority only to the speed rather than the certainty. Become. In addition, it is possible to relatively increase the screen data transfer rate of the frontmost window registered to be transmitted by TCP packets.

また、アクティブなアプリケーションウィンドウをTCPパケットで送信し、それ以外の非アクティブウィンドウまたはデスクトップ領域をUDPパケットで送信することにより、その時点で重要なデータを表示していることの多い、アクティブウィンドウのデータを確実に送信し、それ以外の非アクティブウィンドウ領域あるいはデスクトップ領域の、あまり重要でないデータは、確実性よりも速度のみを優先して送信することにより、通信効率を向上することが可能となる。また、TCPパケットで送信するよう登録されたアクティブウィンドウの画面データの転送速度を相対的に速くすることが可能となる。   Active window data is often displayed as important data at that time by sending active application windows using TCP packets and sending other inactive windows or desktop areas using UDP packets. It is possible to improve the communication efficiency by transmitting the non-critical data in the inactive window area or the desktop area other than that in the non-active window area or the desktop area by giving priority only to the speed over the certainty. In addition, it is possible to relatively increase the transfer rate of the screen data of the active window registered to be transmitted by the TCP packet.

また、画面共有サーバで、アプリケーションによって表示する文書単位で、その文書を表示するアプリケーションの画面領域が更新されたとき、画面データをTCPパケットで送信するか、UDPパケットで送信するかを指定する機能により、画面データの送信パケットの型を動的に選択して画面共有を行うことにより、クライアントに表示される共有された画面データが、アプリケーションの特性適したものとすることが可能となる。
また、文書の重要度により、確実性を優先するか、通信速度を優先するかを選択することが可能となり、通信効率を向上することが可能となる。
また、TCPパケットで送信するよう登録された文書を開いているアプリケーションウィンドウの画面データの転送速度を相対的に速くすることが可能となる。
In addition, when the screen area of the application that displays the document is updated in units of documents displayed by the application on the screen sharing server, the function of designating whether to transmit the screen data using a TCP packet or a UDP packet Thus, by dynamically selecting a screen data transmission packet type and performing screen sharing, the shared screen data displayed on the client can be adapted to the characteristics of the application.
Further, it is possible to select whether priority is given to certainty or priority is given to the communication speed depending on the importance of the document, and communication efficiency can be improved.
In addition, it is possible to relatively increase the screen data transfer speed of an application window that opens a document registered to be transmitted using a TCP packet.

また、画面共有サーバで、デスクトップ領域の内、ある画面領域の画面データをTCPパケットで送信するか、UDPパケットで送信するかを指定する機能により、確実に画面共有を行いたい領域は画面データをTCPパケットで送信し、速度を優先する画面データが表示される画面領域の画面データはUDPパケットで送信することにより、通信効率を向上することが可能となる。また、TCPパケットで送信するよう登録された領域の画面データの転送速度を相対的に速くすることが可能となる。   In addition, the screen sharing server has a function to specify whether screen data of a certain screen area in the desktop area is to be transmitted by TCP packet or UDP packet. It is possible to improve the communication efficiency by transmitting the screen data in the screen area in which the screen data giving priority to the speed is transmitted using the UDP packet. In addition, it is possible to relatively increase the transfer rate of screen data in an area registered to be transmitted by a TCP packet.

また、ユーザの指示により、画面データをTCPパケットで送信するか、UDPパケットで送信するかを切り替える手段を有することにより、ユーザが現在共有している画面データを送信するのに、異なるパケットタイプで通信した方がよいと判断した場合等に、パケットタイプで切り替えることを可能にすることにより、状況に応じて適した画面データ送信を行うことが可能な通信方式を提供することが可能となる。   In addition, by having a means for switching screen data to be transmitted in TCP packets or UDP packets in accordance with user instructions, it is possible to transmit screen data currently shared by users in different packet types. By making it possible to switch by packet type when it is determined that communication is better, it is possible to provide a communication method capable of performing screen data transmission suitable for the situation.

また、画面共有サーバが、自身に接続しているクライアント数が、ある台数より少ない場合は、TCPパケットで画面データを送信し、ある台数より多い場合は、UDPパケットで画面データを送信するよう、自動的に切り替える機能を有することにより、通信効率の高い画面共有を行う通信方式を提供することが可能となる。   In addition, when the number of clients connected to the screen sharing server is smaller than a certain number, the screen data is transmitted with a TCP packet, and when the number is larger than a certain number, the screen data is transmitted with a UDP packet. By having a function of automatically switching, it is possible to provide a communication method for performing screen sharing with high communication efficiency.

また、通信エラーが多く、通信品質の悪い無線通信手段を利用しているクライアントに対しては、自動的にTCPパケットで画面データを送信することにより、データの確実性を保証するし、一方、通信エラーが少なく、通信品質の比較的高い有線通信手段のみでサーバと通信しているクライアントに対してはUDPパケットで画面データを送信するよう選択し、速度及び通信効率を優先することが可能となる。
また、有線LANで接続しているクライアントに対して、UDPパケットを使用して画面データを送信することにより、TCPパケットで送信するよう登録された無線LANを介して接続しているクライアントへの画面データの転送速度を相対的に速くすることが可能となる。
In addition, for clients using wireless communication means with many communication errors and poor communication quality, the screen data is automatically transmitted by TCP packets, thereby ensuring the certainty of the data, It is possible to give priority to speed and communication efficiency by selecting to send screen data with UDP packets to clients communicating with the server using only wired communication means with relatively low communication quality and communication quality. Become.
In addition, by sending screen data using a UDP packet to a client connected via a wired LAN, a screen for a client connected via a wireless LAN registered to send a TCP packet. It becomes possible to relatively increase the data transfer rate.

また、LANで接続しているクライアントに対してはUDPを、WANによりLANの外部のネットワークから接続しているクライアントに対してはTCPを選択し、ネットワーク環境に適した画面共有を行う通信方式を自動的に選択する通信を行うことが可能となる。また、LANで接続されたクライアントに対して、UDPパケットを使用して画面データを送信することにより、TCPパケットで送信するよう登録されたWANを介して接続しているクライアントへの画面データの転送速度を相対的に速くすることが可能となる。   In addition, select UDP for clients connected via LAN, and select TCP for clients connected from a network outside the LAN by WAN, and a communication method for screen sharing suitable for the network environment. Communication that is automatically selected can be performed. In addition, by transmitting screen data using UDP packets to clients connected via LAN, screen data can be transferred to clients connected via WANs registered for transmission using TCP packets. The speed can be relatively increased.

また、画面共有サーバにおいて、送信すべき画面更新データ残量、または画面データの送信レートが一定値より多い場合、UDPパケットで送信し、少ない場合はTCPパケットで確実に送信するよう自動的に切り替えることにより、クライアントの利用者のストレスが少ない画面共有システムにおける通信方式を提供することが可能となる。   In the screen sharing server, when the screen update data remaining amount to be transmitted or the screen data transmission rate is higher than a certain value, it is automatically switched so that it is transmitted with a UDP packet, and when it is small, it is reliably transmitted with a TCP packet. Accordingly, it is possible to provide a communication method in a screen sharing system with less stress on the client user.

また、サーバ/クライアント間の通信速度が一定値より遅い場合、UDPパケットで送信し、高速である場合は、TCPパケットで確実に送信するよう自動的に切り替えることにより、ネットワーク環境に応じ、クライアントの利用者のストレスが少ない画面共有システムにおける通信を行うことが可能となる。また、通信速度の速いクライアントに対して、UDPパケットを使用して画面データを送信することにより、TCPパケットで送信するよう登録された通信速度の遅いクライアントへの画面データの転送速度を相対的に速くすることが可能となる。   In addition, when the communication speed between the server and the client is slower than a certain value, the packet is transmitted by a UDP packet. When the communication speed is high, the TCP / IP packet is automatically switched so as to be surely transmitted. Communication in a screen sharing system with less user stress can be performed. In addition, by transmitting screen data using a UDP packet to a client having a high communication speed, the transfer speed of the screen data to a client having a low communication speed registered to transmit using a TCP packet is relatively set. It can be made faster.

また、画面共有サーバがクライアントとの間のネットワークのMTUを測定し、MTUが一定値より小さい場合、UDPパケットで送信し、大きい場合は、TCPパケットで確実に送信するよう自動的に切り替えることにより、ネットワーク環境に応じ、クライアントの利用者のストレスが少ない画面共有システムにおける通信を行うことが可能となる。   In addition, the screen sharing server measures the MTU of the network with the client, and when the MTU is smaller than a certain value, it is transmitted by a UDP packet, and when it is larger, it is automatically switched so as to be surely transmitted by a TCP packet. Depending on the network environment, it is possible to perform communication in a screen sharing system with less stress on client users.

また、画面共有サーバがクライアントとの間のQoSを測定し、QoSが一定値より大きい場合にはUDPパケットで送信し、小さい場合にはTCPパケットで確実に送信するよう自動的に切り替えることにより、ネットワーク環境に応じ、クライアントの利用者のストレスが少ない画面共有システムにおける通信方式を行うことが可能となる。また、通信品質の良いクライアントに対して、UDPパケットを使用して画面データを送信することにより、TCPパケットで送信するよう登録された通信品質の悪いクライアントへの画面データの転送速度を相対的に速くすることが可能となる。   In addition, the screen sharing server measures the QoS with the client, and when the QoS is larger than a certain value, it is transmitted by a UDP packet, and when it is smaller, it is automatically switched so as to be surely transmitted by a TCP packet. Depending on the network environment, it is possible to perform a communication method in a screen sharing system with less stress on the client user. In addition, by sending screen data using UDP packets to clients with good communication quality, the transfer rate of screen data to clients with poor communication quality registered to send with TCP packets is relatively set. It can be made faster.

また、クライアントの優先権に応じて、画面データの送信に用いるパケットのタイプをTCPとUDPで切り替える機能を有することにより、優先度の高いクライアントにはTCPパケットにより確実に画面データを送信し、他の優先度の低いクライアントにはUDPパケットで画面データを送信することにより、通信効率を向上することが可能となる。また、優先度の低いクライアントに対して、UDPパケットを使用して画面データを送信することにより、TCPパケットで送信するよう登録された優先度の高いクライアントへの画面データの転送速度を相対的に速くすることが可能となる。   In addition, by having a function to switch the type of packet used for screen data transmission between TCP and UDP according to the priority of the client, the screen data is reliably transmitted by TCP packet to clients with high priority. It is possible to improve communication efficiency by transmitting screen data with a UDP packet to a client having a low priority. In addition, by transmitting screen data using a UDP packet to a low-priority client, the transfer rate of the screen data to a high-priority client registered to be transmitted using a TCP packet is relatively set. It can be made faster.

また、クライアントからのリモート操作を行っている途中であるかどうかを判断し、画面データの送信に用いるパケットのタイプをTCPとUDPで切り替えることにより、リモート操作中のクライアントには、TCPパケットにより、確実に画面データを送信し、リモート操作を行っていないクライアントには、UDPパケットで画面データを送信することにより、通信効率を向上することが可能となる。また、リモート操作を行っていないクライアントに対して、UDPパケットを使用して画面データを送信することにより、TCPパケットで送信するよう指示されたリモート操作を行っているクライアントへの画面データの転送速度を相対的に速くすることが可能となる。   In addition, it is determined whether or not the remote operation from the client is in progress, and the type of packet used for transmission of the screen data is switched between TCP and UDP. It is possible to improve the communication efficiency by transmitting the screen data with a UDP packet to a client that reliably transmits the screen data and is not performing a remote operation. In addition, by transmitting screen data using a UDP packet to a client not performing remote operation, the screen data transfer rate to the client performing remote operation instructed to transmit using TCP packet Can be made relatively fast.

また、OSがフォント描画命令を行っている領域であるか、そうでない領域であるかを判断し、画面データの送信に用いるパケットのタイプをTCPとUDPで切り替えることにより、確実性が要求される文字領域の画面データはTCPパケットで送信し、それ以外の領域の画面データはUDPパケットで送信することにより、文字部分を確実にクライアントで送信すると共に、通信速度を向上させ、相対的に文字部分の画面データの転送速度を向上させることが可能となる。また、文字以外のデータを描画する領域に対して、UDPパケットを使用して画面データを送信することにより、TCPパケットで送信するよう登録された文字領域の画面データの転送速度を相対的に速くすることが可能となる。   Also, certainty is required by determining whether the OS is an area where a font rendering command is being issued or not, and switching the packet type used for screen data transmission between TCP and UDP. The screen data in the character area is transmitted with a TCP packet, and the screen data in the other area is transmitted with a UDP packet, so that the character part is reliably transmitted by the client and the communication speed is improved, and the character part is relatively It is possible to improve the screen data transfer speed. In addition, by transmitting screen data using an UDP packet to an area where data other than characters is drawn, the transfer speed of the screen data of the character area registered to be transmitted using a TCP packet is relatively high. It becomes possible to do.

また、画面共有サーバのCPU負荷に応じて、画面データの送信に用いるパケットのタイプをTCPとUDPで切り替えることにより、サーバの処理量が多い場合は、その処理により、画面更新データを生成し、送信する処理が遅くなることを考慮して、UDPパケットで画面データを送信することにより、サーバの負荷量が大きい場合の画面データの送信速度の低下を防止することが可能となる。   Also, according to the CPU load of the screen sharing server, by switching the type of packet used for screen data transmission between TCP and UDP, if the server has a large amount of processing, screen update data is generated by that processing, Considering that transmission processing is delayed, it is possible to prevent a decrease in the transmission speed of screen data when the load amount of the server is large by transmitting the screen data with a UDP packet.

また、中継情報機器が、画面共有サーバとクライアントの間に介在し、画面共有サーバからTCPパケットで受信した画面データを、UDPパケットに変換して、クライアントに送信する機能により、多数のクライアントがサーバに直接接続した場合に生じるサーバの負荷を低減することが可能となる。また、UDPパケットで送信する機能を有することにより、画面データの転送速度を向上させることが可能となる。   In addition, a relay information device is interposed between the screen sharing server and the client, and converts a screen data received as a TCP packet from the screen sharing server into a UDP packet, and sends it to the client. It is possible to reduce the load on the server that occurs when connected directly to the server. Further, by having a function of transmitting with a UDP packet, it is possible to improve the transfer rate of screen data.

また、画面共有サーバからTCPパケットで受信した画面データを、UDPマルチキャストまたはUDPブロードキャストを利用した同報通信により、複数のクライアントが中継情報機器に接続した場合に、クライアント数の増加による、画面データの転送速度の低下を防ぐことが可能となる。   In addition, when multiple clients are connected to a relay information device by broadcast communication using UDP multicast or UDP broadcast, the screen data received by the TCP packet from the screen sharing server is displayed. It is possible to prevent a decrease in transfer speed.

また、更に、受信した画面共有データを記録することにより、非同期でサーバの画面の様子を閲覧することが可能となる。また、記録した画面データをUDPパケットによって送信することにより、通信効率を向上させ、閲覧するクライアントに、不自然さを感じさせない高速な画面再生を実現することが可能となる。更に、マルチキャストまたはブロードキャストを利用した同報通信により、複数のクライアントに対して、クライアント数の増加による、画面再生速度の低下を防ぐことが可能となる。   Furthermore, by recording the received screen sharing data, it becomes possible to view the screen of the server asynchronously. Further, by transmitting the recorded screen data using a UDP packet, it is possible to improve communication efficiency and realize high-speed screen reproduction that does not make the browsing client feel unnatural. Furthermore, it is possible to prevent a decrease in the screen reproduction speed due to an increase in the number of clients for a plurality of clients by broadcast communication using multicast or broadcast.

また、送信パケットに対して、パケットを正常に受信したことを応答するACKパケットを返信する必要のある、データストリーム型の通信方式であるTCPパケットによる通信だけでなく、ACKの返信の必要がないため高速であるが、信頼性や、パケットの受信順序を保証しないデータグラム型の通信方式であるUDPパケットを用いて、画面データの送信を行う、高速な画面共有を行うことが可能である電子会議システムを提供することが可能となる。   In addition, it is not necessary to send back an ACK in response to a TCP packet that is a data stream type communication method that needs to send back an ACK packet that responds to the normal reception of the packet. Therefore, it is possible to perform high-speed screen sharing by transmitting screen data using a UDP packet, which is a datagram-type communication method that does not guarantee the reliability or the reception order of packets. A conference system can be provided.

また、中継機器(プロキシ)が、画面共有サーバとクライアントの間に介在し、画面共有サーバからTCPパケットで受信した画面データを、UDPパケットに変換して、クライアントに送信することにより、多数のクライアントがサーバーに直接接続した場合に生じるサーバーの負荷を低減することが可能な電子会議システムを提供することが可能となる。   In addition, a relay device (proxy) is interposed between the screen sharing server and the client, converts the screen data received from the screen sharing server as a TCP packet into a UDP packet, and sends it to the client. It is possible to provide an electronic conference system that can reduce the load on the server that occurs when the server directly connects to the server.

本発明の一実施例であるデータ通信システムのネットワーク構成を示した概要図である。It is the schematic which showed the network structure of the data communication system which is one Example of this invention. UDPパケットのみを送信することにより画面共有を行う方式の処理フローを例示した図である。It is the figure which illustrated the processing flow of the system which performs screen sharing by transmitting only a UDP packet. UDPでの画面共有において、接続状態の監視のアルゴリズムを示した図である。It is the figure which showed the algorithm of the monitoring of a connection state in the screen sharing by UDP. サーバとクライアントの接続にTCP/IP接続を利用し、画面データ及び入力イベントの送信にUDPパケットを利用し、ユニキャストで通信を行う方式の処理フローを例示した図である。It is the figure which illustrated the processing flow of the system which uses a TCP / IP connection for a connection of a server and a client, uses a UDP packet for transmission of screen data and an input event, and communicates by unicast. サーバとクライアントの接続にTCP/IP接続を利用し、画面データ及び入力イベントの送信にUDPパケットを利用し、ブロードキャスト或いはマルチキャストで同報通信を行う方式の処理フローを例示した図である。It is a figure which illustrated the processing flow of the system which uses a TCP / IP connection for a connection of a server and a client, uses a UDP packet for transmission of screen data and an input event, and performs broadcast communication by broadcast or multicast. サーバのアプリケーション毎にTCPまたはUDPの何れかで送信する方式について、サーバの表示画面を例示した図である。It is the figure which illustrated the display screen of the server about the system which transmits in either TCP or UDP for every application of a server. サーバのアプリケーション毎にTCPまたはUDPの何れかで送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system transmitted by either TCP or UDP for every application of a server. サーバのアプリケーション毎にTCPまたはUDPの何れかで送信する方式について、その処理フローを例示した図である。It is the figure which illustrated the processing flow about the system transmitted by either TCP or UDP for every application of a server. サーバのウィンドウが最前面に位置するか否かによって、TCPとUDPを切り替えて送信する方式について、サーバの表示画面を例示した図である。It is the figure which illustrated the display screen of the server about the system which switches and transmits TCP and UDP according to whether the window of a server is located in the forefront. サーバのウィンドウが最前面に位置するか否かによって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP according to whether the window of a server is located in the foreground. サーバのウィンドウがアクティブであるか否かによって、TCPとUDPを切り替えて送信する方式について、サーバの表示画面を例示した図である。It is the figure which illustrated the display screen of the server about the system which switches and transmits TCP and UDP according to whether the window of a server is active. サーバのウィンドウがアクティブであるか否かによって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP depending on whether the window of a server is active. サーバのウィンドウがユーザの指定した文書であるか否かによって、TCPとUDPを切り替えて送信する方式について、サーバの表示画面を例示した図である。It is the figure which illustrated the display screen of the server about the system which switches and transmits TCP and UDP according to whether the window of a server is a document which the user specified. サーバのウィンドウがユーザの指定した文書であるか否かによって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP according to whether the window of a server is a document designated by the user. サーバのウィンドウがユーザの指定した画面領域であるか否かによって、TCPとUDPを切り替えて送信する方式について、サーバの画面表示を例示した図である。It is the figure which illustrated the screen display of the server about the system which switches and transmits TCP and UDP according to whether the window of a server is a screen area | region designated by the user. サーバのウィンドウがユーザの指定した画面領域であるか否かによって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP according to whether the window of a server is a screen area | region designated by the user. 通信プロトコルの切り替え指示を行う画面を例示した図である。It is the figure which illustrated the screen which performs the switching instruction | indication of a communication protocol. 通信プロトコルの切り替え動作のフローを示した図である。It is the figure which showed the flow of switching operation | movement of a communication protocol. ユーザ毎に通信プロトコルの切り替え指示を行う画面を例示した図である。It is the figure which illustrated the screen which performs the switching instruction | indication of a communication protocol for every user. クライアントの接続台数によって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP according to the number of clients connected. クライアントの通信インターフェースによって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP with the communication interface of a client. クライアントの接続経路によって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP with the connection path | route of a client. 送信すべきエンコードデータの残量によって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP according to the residual amount of the encoding data which should be transmitted. 送信データレートによって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP according to a transmission data rate. サーバとクライアントとの間の通信速度によって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP according to the communication speed between a server and a client. サーバとクライアントとの間のMTUによって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP by MTU between a server and a client. サーバとクライアントとの間のQoSによって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP by QoS between a server and a client. クライアントの優先順位によって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP according to the priority of a client. 遠隔操作の制御権の設定を行う画面を例示した図である。It is the figure which illustrated the screen which sets the control authority of remote operation. リモート操作フラッグの設定について、そのアルゴリズムを示した図である。It is the figure which showed the algorithm about the setting of a remote operation flag. リモート操作フラッグのON/OFFによって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP by ON / OFF of a remote operation flag. 共有画面データがフォントデータであるか画像データであるかによって、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP depending on whether shared screen data is font data or image data. CPUの負荷状況に応じて、TCPとUDPを切り替えて送信する方式について、アルゴリズムを示した図である。It is the figure which showed the algorithm about the system which switches and transmits TCP and UDP according to the load condition of CPU. 本発明の一実施例であるデータ通信システムのネットワーク構成を示した概要図である(プロキシあり・その1)。It is the schematic which showed the network structure of the data communication system which is one Example of this invention (there is a proxy, the 1). プロキシを介して画面共有を行う方式の処理フローを例示した図である。It is the figure which illustrated the processing flow of the system which shares a screen via a proxy. 本発明の一実施例であるデータ通信システムのネットワーク構成を示した概要図である(プロキシあり・その2)。It is the schematic which showed the network structure of the data communication system which is one Example of this invention (there is a proxy, the 2). プロキシにてUDPマルチキャストあるいはUDPブロードキャストを適用した方式について、処理フローを示した図である。It is the figure which showed the processing flow about the system which applied UDP multicast or UDP broadcast in the proxy. プロキシにおける再生機能について、処理フローを示した図である。It is the figure which showed the processing flow about the reproduction | regeneration function in a proxy.

符号の説明Explanation of symbols

1 サーバ(画面共有サーバ)
2 クライアント
3 中継機器(プロキシ)
10 IPネットワーク
11 TCP共有アプリケーションウィンドウ
12 UDP共有アプリケーションウィンドウ
13 最前面ウィンドウ
14 背面ウィンドウ
15 アクティブウィンドウ
16 非アクティブウィンドウ
17 ユーザ指定文書ウィンドウ
18 非ユーザ指定文書ウィンドウ
1 server (screen sharing server)
2 Client 3 Relay device (proxy)
10 IP network 11 TCP shared application window 12 UDP shared application window 13 Frontmost window 14 Rear window 15 Active window 16 Inactive window 17 User specified document window 18 Non user specified document window

Claims (30)

サーバとして機能する情報機器と、
前記サーバのクライアントとして機能する情報機器を構成要素とし、
前記サーバは、その表示画面の少なくとも一部に関するデータを、前記クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する手段を有し、
前記クライアントは、前記サーバから受信した画面データを表示装置に表示することにより、前記サーバの表示画面を共有する手段を有するネットワークシステムにおけるデータ通信方式であって、
送信する画面領域のデータの種類または表示条件、クライアントとの通信環境、あるいはユーザが与える指示の何れかによって、前記サーバは前記画面データを送信する場合に、送信する画面データの少なくとも一部を、TCPパケットを用いて送信するか、もしくはUDPパケットを用いて送信するかを切り替えて送信する手段を有することを特徴とするデータ通信方式。
An information device functioning as a server;
An information device functioning as a client of the server as a component,
The server includes means for transmitting data relating to at least a part of the display screen to the client via a network that performs communication using an IP protocol,
The client is a data communication method in a network system having means for sharing the display screen of the server by displaying the screen data received from the server on a display device,
When the server transmits the screen data according to any of the data type or display condition of the screen area to be transmitted, the communication environment with the client, or an instruction given by the user, at least a part of the screen data to be transmitted is: A data communication system comprising means for switching between transmission using a TCP packet or transmission using a UDP packet.
前記サーバは、UDPマルチキャストまたはUDPブロードキャストパケットを用いて複数の前記クライアントに対して、画面データを同報通信方式で送信する手段を有することを特徴とする請求項1記載のデータ通信方式。   2. The data communication system according to claim 1, wherein the server includes means for transmitting screen data to the plurality of clients by a broadcast communication system using a UDP multicast or a UDP broadcast packet. 前記サーバは、アプリケーションプログラム毎にTCPパケットで画面データを送信するか、もしくはUDPパケットで送信するかを登録する手段を有し、
TCPパケットで送信するよう登録されたアプリケーションプログラムの画面データはTCPパケットで送信し、
UDPパケットで送信するよう登録されたアプリケーションプログアムの画面データは、UDPパケットで送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for registering whether to transmit screen data in a TCP packet or a UDP packet for each application program,
Screen data of application programs registered to be transmitted by TCP packet is transmitted by TCP packet.
3. The data communication method according to claim 1, wherein screen data of an application program registered to be transmitted by a UDP packet is transmitted by a UDP packet.
前記サーバは、アプリケーションプログラムのウィンドウが、最前面に表示されているか、否かを判定する手段を有し、
最前面に表示されたウィンドウの画面データを送信する場合はTCPパケットで送信し、
最前面にないウィンドウ、またはデスクトップ画面の画面データは、UDPパケットで送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for determining whether or not an application program window is displayed in the foreground,
When sending screen data of the window displayed in the foreground, send it with a TCP packet,
The data communication method according to claim 1 or 2, wherein the screen data of a window not on the foreground or the desktop screen is transmitted by a UDP packet.
前記サーバは、アプリケーションプログラムのウィンドウ上に、アクティブであるか、否かを判定する手段を有し、
アクティブウィンドウの画面データを送信する場合はTCPパケットで送信し、
非アクティブウィンドウ、またはデスクトップ画面の画面データは、UDPパケットで送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for determining whether or not it is active on the window of the application program,
When sending screen data of the active window, send it with a TCP packet.
The data communication method according to claim 1 or 2, wherein the screen data of the inactive window or the desktop screen is transmitted by a UDP packet.
前記サーバは、起動中のアプリケーションプログラムに対し、TCPパケットで画面データを送信するか、もしくはUDPパケットで送信するかをユーザが指示する手段を有し、
TCPパケットで送信するよう登録されたアプリケーションプログラムの画面データはTCPパケットで送信し、
UDPパケットで送信するよう登録されたアプリケーションプログアムの画面データはUDPパケットで送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for a user to instruct whether to transmit screen data using a TCP packet or a UDP packet to a running application program,
Screen data of application programs registered to be transmitted by TCP packet is transmitted by TCP packet.
3. The data communication system according to claim 1, wherein screen data of an application program registered to be transmitted by a UDP packet is transmitted by a UDP packet.
前記サーバは、共有している画面領域のうち任意の領域に関して、TCPパケットで画面データを送信するか、もしくはUDPパケットで送信するかをユーザが指示する手段を有し、
TCPパケットで送信するよう登録された画面領域の画面データはTCPパケットで送信し、
UDPパケットで送信するよう登録された画面領域の画面データはUDPパケットで送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for instructing whether to transmit screen data in a TCP packet or a UDP packet for an arbitrary area of the shared screen area,
Screen data of the screen area registered to be transmitted by TCP packet is transmitted by TCP packet.
3. The data communication system according to claim 1, wherein screen data of a screen area registered to be transmitted by a UDP packet is transmitted by a UDP packet.
前記サーバは、ユーザの指示により、画面データを送信するプロトコルを切り替える手段を有し、
ユーザがTCPプロトコル送信するよう指示した場合はTCPパケットで画面データを送信し、
ユーザがUDPプロトコル送信するよう指示した場合はUDPパケットで画面データを送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for switching a protocol for transmitting screen data according to a user instruction,
If the user instructs to send TCP protocol, send screen data with TCP packet,
The data communication system according to claim 1 or 2, wherein when the user instructs to transmit the UDP protocol, the screen data is transmitted by a UDP packet.
前記サーバは、接続クライアント数を管理する手段と、
接続クライアント数に応じて画面データの送信をTCPプロトコルで行うか、もしくはUDPプロトコルで送信するかを切り替える手段を有し、
前記接続クライアント数が所定の数より少ない場合は、TCPパケットで画面データを送信し、
前記接続クライアント数が所定の数より多い場合は、UDPパケットで画面データを送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for managing the number of connected clients;
According to the number of connected clients, there is means for switching between screen data transmission using the TCP protocol or UDP protocol,
When the number of connected clients is less than a predetermined number, screen data is transmitted with a TCP packet,
3. The data communication system according to claim 1, wherein when the number of connected clients is larger than a predetermined number, the screen data is transmitted by a UDP packet.
前記サーバは、接続クライアント数が有線LANで接続されているか、もしくは途中で無線LANを介して接続されているかを管理する手段を有し、
無線LANを介して接続しているクライアントに対しては、TCPパケットで画面データを送信し、
有線LANのみで接続されているクライアントに対しては、UDPパケットで画面データを送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for managing whether the number of connected clients is connected via a wired LAN or connected via a wireless LAN in the middle,
For clients connected via wireless LAN, send screen data in TCP packets,
3. The data communication method according to claim 1, wherein screen data is transmitted by a UDP packet to a client connected only by a wired LAN.
前記サーバは、接続クライアント数がLANで接続されているか、もしくはWANを介して接続されているかを管理する手段を有し、
WANを介して接続しているクライアントに対しては、TCPパケットで画面データを送信し、
LANで接続されているクライアントに対しては、UDPプロトコル送信するよう指示した場合は、UDパケットで画面データを送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for managing whether the number of connected clients is connected via a LAN or via a WAN,
Send screen data in TCP packets to clients connected via WAN,
The data communication method according to claim 1 or 2, wherein when the client connected via the LAN is instructed to transmit the UDP protocol, the screen data is transmitted by a UD packet.
前記サーバは、送信する画面データの残量、または画面データの送信レートを測定する手段を有し、
前記画面データ送信の残量または画面データの送信レートが所定の値より小さい場合は、TCPパケットで画面データを送信し、
前記画面データ送信の残量または画面データの送信レートが所定の値を超える場合は、UDPパケットで画面データを送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for measuring the remaining amount of screen data to be transmitted, or the transmission rate of screen data,
When the screen data transmission remaining amount or the screen data transmission rate is smaller than a predetermined value, the screen data is transmitted by a TCP packet,
The data communication method according to claim 1 or 2, wherein when the remaining amount of screen data transmission or the screen data transmission rate exceeds a predetermined value, the screen data is transmitted by a UDP packet.
前記サーバは、該サーバと接続クライアントとの間での、ネットワークの通信速度を測定する手段を有し、
前記通信速度が所定の値より小さい場合は、UDPパケットで画面データを送信し、
前記通信速度が所定の値を超える場合は、TCPパケットで画面データを送信することを特徴する請求項1または2に記載のデータ通信方式。
The server includes means for measuring a network communication speed between the server and the connection client;
When the communication speed is smaller than a predetermined value, screen data is transmitted with a UDP packet,
3. The data communication method according to claim 1, wherein when the communication speed exceeds a predetermined value, screen data is transmitted by a TCP packet.
前記サーバは、該サーバと接続クライアントとの間で、1つのパケットで送信可能なデータ容量(MTU)を測定する手段を有し、
前記MTUが所定の値より小さい場合は、UDPパケットで画面データを送信し、
前記MTUが所定の値を超える場合は、TCPパケットで画面データを送信することを特徴する請求項1または2に記載のデータ通信方式。
The server includes means for measuring a data capacity (MTU) that can be transmitted in one packet between the server and a connected client,
When the MTU is smaller than a predetermined value, screen data is transmitted with a UDP packet,
The data communication method according to claim 1 or 2, wherein when the MTU exceeds a predetermined value, screen data is transmitted by a TCP packet.
前記サーバは、該サーバと接続クライアントとの間での、ネットワークのQoSを測定する手段を有し、
前記QoSが所定の値より小さい場合は、TCPパケットで画面データを送信し、
前記QoSが所定の値を超える場合は、UDPパケットで画面データを送信することを特徴する請求項1または2に記載のデータ通信方式。
The server comprises means for measuring the QoS of the network between the server and the connecting client;
When the QoS is smaller than a predetermined value, screen data is transmitted with a TCP packet,
The data communication method according to claim 1 or 2, wherein when the QoS exceeds a predetermined value, screen data is transmitted by a UDP packet.
前記サーバは、接続クライアントの優先権を管理する手段を有し、
優先権の与えられているクライアントに対しては、TCPパケットで画面データを送信し、
優先権が与えられていないクライアントに対しては、UDPパケットで画面データを送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for managing priority of connected clients;
Send screen data in TCP packets to clients with priority.
3. The data communication method according to claim 1, wherein screen data is transmitted by a UDP packet to a client to which priority is not given.
前記サーバは、クライアントからの入力イベントを受信し、受信した入力イベントをサーバに転送する手段と、
前記クライアントが一定時間内に入力イベントを前記サーバに送信したかを管理する手段とを有し、
一定時間内に入力イベントを前記サーバに送信したクライアントに対しては、TCPパケットで画面データを送信し、
一定時間内に入力イベントを前記サーバに送信していないクライアントに対しては、UDPパケットで画面データを送信することを特徴する請求項1または2に記載のデータ通信方式。
The server receives an input event from a client and forwards the received input event to the server;
Means for managing whether the client has sent an input event to the server within a certain period of time;
For the client that sent the input event to the server within a certain time, the screen data is sent with a TCP packet,
3. The data communication system according to claim 1, wherein screen data is transmitted by a UDP packet to a client that has not transmitted an input event to the server within a predetermined time.
前記サーバは、画面データを送信する際、送信領域の画面データが文字データを含むものであるか否かを、OSがフォント描画命令を行っている領域であるか否かによって判断する手段を有し、
文字データを含む領域の画面データはTCPパケットで送信し、
文字データを含まない領域の画面データはUDPパケットで送信することを特徴する請求項1または2に記載のデータ通信方式。
The server has means for determining whether or not the screen data in the transmission area includes character data when transmitting the screen data, based on whether or not the OS is a font rendering command.
The screen data of the area including the character data is transmitted by TCP packet,
3. The data communication system according to claim 1, wherein screen data in an area not including character data is transmitted by a UDP packet.
前記サーバは、該サーバのCPU負荷が所定の負荷量を超えているかどうかを判断する手段を有し、
CPU負荷が所定の負荷量以下の場合は、TCPパケットで画面データを送信し、
CPU負荷が所定の負荷量を超えている場合は、UDPパケットで画面データを送信することを特徴する請求項2記載のデータ通信方式。
The server includes means for determining whether the CPU load of the server exceeds a predetermined load amount;
If the CPU load is less than or equal to the predetermined load, send screen data with TCP packets,
3. The data communication system according to claim 2, wherein when the CPU load exceeds a predetermined load amount, the screen data is transmitted by a UDP packet.
サーバとして機能する情報機器と、
前記サーバのクライアントとして機能する情報機器を構成要素とし、
前記サーバは、その表示画面の少なくとも一部に関するデータを、前記クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する手段を有し、
前記クライアントは、前記サーバから受信した画面データを表示装置に表示することにより、前記サーバの表示画面を共有する手段を有するネットワークシステムにおけるデータ通信方式であって、
前記ネットワークシステムは、前記サーバから受信した画面データを前記クライアントへと中継する中継機器を含み、
前記中継機器は、前記サーバからTCPパケットで受信した画面データをUDPパケットで前記クライアントに送信する手段を有することを特徴とするデータ通信方式。
An information device functioning as a server;
An information device functioning as a client of the server as a component,
The server includes means for transmitting data relating to at least a part of the display screen to the client via a network that performs communication using an IP protocol,
The client is a data communication method in a network system having means for sharing the display screen of the server by displaying the screen data received from the server on a display device,
The network system includes a relay device that relays screen data received from the server to the client;
The data relay method according to claim 1, wherein the relay device includes means for transmitting screen data received from the server as a TCP packet to the client as a UDP packet.
前記中継機器は、UDPマルチキャストまたはUDPブロードキャストパケットを用いて、複数の前記クライアントに対して画面データを同報通信方式で送信する手段を有することを特徴とする請求項20記載のデータ通信方式。   21. The data communication system according to claim 20, wherein the relay device includes means for transmitting screen data to the plurality of clients by a broadcast communication system using a UDP multicast or a UDP broadcast packet. 前記中継機器は、前記サーバから受信した画面データを記録し、再生する手段を有することを特徴とする請求項20または21に記載のデータ通信方式。   The data communication system according to claim 20 or 21, wherein the relay device has means for recording and reproducing screen data received from the server. 会議サーバとして機能する情報機器と、
前記会議サーバの会議クライアントとして機能する情報機器を構成要素とし、
前記会議サーバは、その表示画面の少なくとも一部に関するデータを、前記会議クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する手段を有し、
前記会議クライアントは、前記会議サーバから受信した画面データを表示装置に表示することにより、前記会議サーバの表示画面を共有する手段を有する電子会議システムであって、
送信する画面領域のデータの種類または表示条件、会議クライアントとの通信環境、あるいはユーザが与える指示の何れかによって、前記会議サーバは前記画面データを送信する場合に、送信する画面データの少なくとも一部を、TCPパケットを用いて送信するか、もしくはUDPパケットを用いて送信するかを切り替えて送信する手段を有することを特徴とする電子会議システム。
An information device functioning as a conference server;
An information device functioning as a conference client of the conference server is a component,
The conference server includes means for transmitting data relating to at least a part of the display screen to the conference client via a network that performs communication using an IP protocol,
The conference client is an electronic conference system having means for sharing the display screen of the conference server by displaying the screen data received from the conference server on a display device,
At least a part of the screen data to be transmitted when the conference server transmits the screen data according to any of the data type or display condition of the screen area to be transmitted, the communication environment with the conference client, or an instruction given by the user. Is transmitted using a TCP packet or using a UDP packet, and has a means for transmitting the electronic conference system.
会議サーバとして機能する情報機器と、
前記会議サーバの会議クライアントとして機能する情報機器を構成要素とし、
前記会議サーバは、その表示画面の少なくとも一部に関するデータを、前記会議クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する手段を有し、
前記会議クライアントは、前記会議サーバから受信した画面データを表示装置に表示することにより、前記サーバの表示画面を共有する手段を有する電子会議システムであって、
前記ネットワークは、前記会議サーバから受信した画面データを前記会議クライアントへと中継する会議中継機器を含み、
前記会議中継機器は、前記会議サーバからTCPパケットで受信した画面データをUDPパケットで前記会議クライアントに送信する手段を有することを特徴とする電子会議システム。
An information device functioning as a conference server;
An information device functioning as a conference client of the conference server is a component,
The conference server includes means for transmitting data relating to at least a part of the display screen to the conference client via a network that performs communication using an IP protocol,
The conference client is an electronic conference system having means for sharing the display screen of the server by displaying the screen data received from the conference server on a display device,
The network includes a conference relay device that relays screen data received from the conference server to the conference client;
The said conference relay apparatus has a means to transmit the screen data received with the TCP packet from the said conference server to the said conference client with a UDP packet, The electronic conference system characterized by the above-mentioned.
前記会議サーバは、接続する会議クライアントの優先権を管理する手段を有し、
優先権の与えられている会議クライアントに対しては、TCPパケットで画面データを送信し、
優先権が与えられていない会議クライアントに対しては、UDPパケットで画面データを送信することを特徴とする請求項23または24に記載の電子会議システム。
The conference server has means for managing priority of a conference client to be connected,
For the conference client to which priority is given, the screen data is transmitted with a TCP packet,
25. The electronic conference system according to claim 23 or 24, wherein screen data is transmitted by a UDP packet to a conference client to which priority is not given.
前記会議サーバは、前記会議クライアントからの入力イベントを受信し、受信した入力イベントを前記会議サーバに転送する手段と、
接続会議クライアントが一定時間内に入力イベントを前記サーバに送信したかを管理する手段を有し、
一定時間内に入力イベントを会議サーバに送信した会議クライアントに対しては、TCPパケットで画面データを送信し、
一定時間内に入力イベントを会議サーバに送信していないクライアントに対しては、UDPパケットで画面データを送信することを特徴する請求項23または24に記載の電子会議システム。
The conference server receives an input event from the conference client, and transfers the received input event to the conference server;
Means for managing whether the connected conference client has sent an input event to the server within a predetermined time;
For the conference client that has sent the input event to the conference server within a certain time, the screen data is sent by TCP packet,
25. The electronic conference system according to claim 23 or 24, wherein screen data is transmitted by a UDP packet to a client that has not transmitted an input event to the conference server within a predetermined time.
サーバとして機能する情報機器と、前記サーバのクライアントとして機能する情報機器を構成要素とするネットワークシステムにおけるデータ通信方法であって、
前記サーバにおいて、その表示画面の少なくとも一部に関するデータを、前記クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する工程と、
前記クライアントにおいて、前記サーバから受信した画面データを表示装置に表示することにより、前記サーバの表示画面を共有する工程とを有し、
送信する画面領域のデータの種類または表示条件、クライアントとの通信環境、あるいはユーザが与える指示の何れかによって、前記サーバは前記画面データを送信する場合に、送信する画面データの少なくとも一部を、TCPパケットを用いて送信するか、もしくはUDPパケットを用いて送信するかを切り替えて送信する工程を有することを特徴とするデータ通信方法。
A data communication method in a network system including information equipment functioning as a server and information equipment functioning as a client of the server,
In the server, transmitting data relating to at least a part of the display screen to the client via a network that communicates using an IP protocol;
In the client, the screen data received from the server is displayed on a display device, thereby sharing the display screen of the server,
When the server transmits the screen data according to any of the data type or display condition of the screen area to be transmitted, the communication environment with the client, or an instruction given by the user, at least a part of the screen data to be transmitted is: A data communication method comprising a step of switching between transmission using a TCP packet or transmission using a UDP packet.
サーバとして機能する情報機器と、前記サーバのクライアントとして機能する情報機器と、前記サーバから受信した画面データを前記クライアントへと中継する中継機器とを構成要素とするネットワークシステムにおけるデータ通信方法であって、
前記サーバにおいて、その表示画面の少なくとも一部に関するデータを、前記クライアントにIPプロトコルを用いて通信を行うネットワークを介して送信する工程と、
前記クライアントにおいて、前記サーバから受信した画面データを表示装置に表示することにより、前記サーバの表示画面を共有する工程と、
前記中継機器において、前記サーバからTCPパケットで受信した画面データをUDPパケットで前記クライアントに送信する工程を有することを特徴とするデータ通信方法。
A data communication method in a network system comprising information equipment functioning as a server, information equipment functioning as a client of the server, and relay equipment that relays screen data received from the server to the client. ,
In the server, transmitting data relating to at least a part of the display screen to the client via a network that communicates using an IP protocol;
In the client, displaying the screen data received from the server on a display device, thereby sharing the display screen of the server;
A data communication method comprising the step of transmitting screen data received from the server as a TCP packet to the client as a UDP packet in the relay device.
請求項27または28に記載のデータ通信方法をコンピュータに実行させるためのデータ通信プログラム。   A data communication program for causing a computer to execute the data communication method according to claim 27 or 28. 請求項29に記載のデータ通信プログラムを格納したコンピュータが読み取り可能な記憶媒体。   A computer-readable storage medium storing the data communication program according to claim 29.
JP2004167650A 2004-06-04 2004-06-04 Data communication system, electronic conference system, data communication method, data communication program, and storage medium Expired - Fee Related JP4222561B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004167650A JP4222561B2 (en) 2004-06-04 2004-06-04 Data communication system, electronic conference system, data communication method, data communication program, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004167650A JP4222561B2 (en) 2004-06-04 2004-06-04 Data communication system, electronic conference system, data communication method, data communication program, and storage medium

Publications (2)

Publication Number Publication Date
JP2005348262A true JP2005348262A (en) 2005-12-15
JP4222561B2 JP4222561B2 (en) 2009-02-12

Family

ID=35500185

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004167650A Expired - Fee Related JP4222561B2 (en) 2004-06-04 2004-06-04 Data communication system, electronic conference system, data communication method, data communication program, and storage medium

Country Status (1)

Country Link
JP (1) JP4222561B2 (en)

Cited By (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008005390A (en) * 2006-06-26 2008-01-10 Toyota Infotechnology Center Co Ltd Wireless communication apparatus, wireless communication method and program
WO2008047407A1 (en) * 2006-10-17 2008-04-24 Pioneer Corporation Information providing device, information providing method and the like
JP2009140378A (en) * 2007-12-10 2009-06-25 Fujitsu Ltd Data transmission apparatus and data transmission method
EP2151973A1 (en) 2008-07-28 2010-02-10 Funai Electric Co., Ltd. Radio communication system, radio equipment, and server
WO2010073346A1 (en) * 2008-12-25 2010-07-01 三菱電機株式会社 Communication management device, communication device, and communication method
JP2010220112A (en) * 2009-03-18 2010-09-30 Toshiba Corp Telephone system, server and terminal device
JP2010257228A (en) * 2009-04-24 2010-11-11 Nec Corp Server terminal, image processing system, image processing method and program
JP2011035939A (en) * 2010-10-29 2011-02-17 Toshiba Corp Wireless communication apparatus and wireless communication method
JP2011507344A (en) * 2007-12-05 2011-03-03 オンライブ インコーポレイテッド A system to synthesize recorded application state with application streaming interactive video output
JP2011507340A (en) * 2007-12-05 2011-03-03 オンライブ インコーポレイテッド Streaming interactive video integrated with recorded video segments
JP2011508478A (en) * 2007-12-05 2011-03-10 オンライブ インコーポレイテッド How to multicast a view of real-time streaming interactive video
JP2011508477A (en) * 2007-12-05 2011-03-10 オンライブ インコーポレイテッド System and method for compressing streaming interactive video
JP2011509546A (en) * 2007-12-05 2011-03-24 オンライブ インコーポレイテッド Synthesizing linear content and interactive content compressed together as streaming interactive video
JP2011509545A (en) * 2007-12-05 2011-03-24 オンライブ インコーポレイテッド System for collaborative meetings using streaming interactive video
WO2012056783A1 (en) * 2010-10-25 2012-05-03 日本電気株式会社 Content sharing system, mobile terminal, protocol switching method and program
WO2012114371A1 (en) * 2011-02-23 2012-08-30 株式会社日立製作所 Message transmission device and message transmission method
JP2013105320A (en) * 2011-11-14 2013-05-30 Nippon Telegraph & Telephone West Corp Information processing system and information processing method
US8468575B2 (en) 2002-12-10 2013-06-18 Ol2, Inc. System for recursive recombination of streaming interactive video
JP2013127719A (en) * 2011-12-19 2013-06-27 Nippon Telegr & Teleph Corp <Ntt> Web information acquisition method and prefetch proxy server
US8495678B2 (en) 2002-12-10 2013-07-23 Ol2, Inc. System for reporting recorded video preceding system failures
JP2013197998A (en) * 2012-03-21 2013-09-30 Toshiba Corp Server terminal, screen transfer system, and screen transfer method
US8632410B2 (en) 2002-12-10 2014-01-21 Ol2, Inc. Method for user session transitioning among streaming interactive video servers
US8661496B2 (en) 2002-12-10 2014-02-25 Ol2, Inc. System for combining a plurality of views of real-time streaming interactive video
US8834274B2 (en) 2002-12-10 2014-09-16 Ol2, Inc. System for streaming databases serving real-time applications used through streaming interactive
US9015784B2 (en) 2002-12-10 2015-04-21 Ol2, Inc. System for acceleration of web page delivery
US9086788B2 (en) 2011-12-12 2015-07-21 International Business Machines Corporation Context-sensitive collaboration channels
US9108107B2 (en) 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
US9124657B2 (en) 2011-12-14 2015-09-01 International Business Machines Corporation Dynamic screen sharing for optimal performance
US9134889B2 (en) 2011-12-14 2015-09-15 International Business Machines Corporation Variable refresh rates for portions of shared screens
CN105659588A (en) * 2013-08-06 2016-06-08 株式会社理光 Information processing device and determination result providing method
US9582808B2 (en) 2011-12-12 2017-02-28 International Business Machines Corporation Customizing a presentation based on preferences of an audience
US9588652B2 (en) 2011-12-12 2017-03-07 International Business Machines Corporation Providing feedback for screen sharing
JP2017102575A (en) * 2015-11-30 2017-06-08 ブラザー工業株式会社 Communication system, server device, client device, and program
KR101769133B1 (en) * 2015-11-30 2017-08-17 엘아이지넥스원 주식회사 Electronic device adaptively selecting tcp/r-udp and packet transmitting/receiving method thereof
JP2019191962A (en) * 2018-04-25 2019-10-31 富士通株式会社 Screen transmission program, screen transmission method, and screen transmission/reception system
JP2019216473A (en) * 2019-09-13 2019-12-19 株式会社 ゼネテック Information transmission system, information transmission method, information transmission program, server, and mobile terminal
JP2020205075A (en) * 2012-09-12 2020-12-24 アイイーエックス グループ,インコーポレーテッド System and method for tcp-to-multicast (t2m) communications and related network architecture
JP2021515341A (en) * 2018-03-08 2021-06-17 グーグル エルエルシーGoogle LLC Reducing client device latency in rendering remotely generated automation assistant content
US12177137B1 (en) 2022-03-01 2024-12-24 Iex Group, Inc. Scalable virtual network switch architecture

Cited By (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8495678B2 (en) 2002-12-10 2013-07-23 Ol2, Inc. System for reporting recorded video preceding system failures
US9003461B2 (en) 2002-12-10 2015-04-07 Ol2, Inc. Streaming interactive video integrated with recorded video segments
US8893207B2 (en) 2002-12-10 2014-11-18 Ol2, Inc. System and method for compressing streaming interactive video
US8840475B2 (en) 2002-12-10 2014-09-23 Ol2, Inc. Method for user session transitioning among streaming interactive video servers
US9032465B2 (en) 2002-12-10 2015-05-12 Ol2, Inc. Method for multicasting views of real-time streaming interactive video
US8834274B2 (en) 2002-12-10 2014-09-16 Ol2, Inc. System for streaming databases serving real-time applications used through streaming interactive
US8832772B2 (en) 2002-12-10 2014-09-09 Ol2, Inc. System for combining recorded application state with application streaming interactive video output
US8661496B2 (en) 2002-12-10 2014-02-25 Ol2, Inc. System for combining a plurality of views of real-time streaming interactive video
US9108107B2 (en) 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
US8468575B2 (en) 2002-12-10 2013-06-18 Ol2, Inc. System for recursive recombination of streaming interactive video
US8632410B2 (en) 2002-12-10 2014-01-21 Ol2, Inc. Method for user session transitioning among streaming interactive video servers
US8549574B2 (en) 2002-12-10 2013-10-01 Ol2, Inc. Method of combining linear content and interactive content compressed together as streaming interactive video
US8949922B2 (en) 2002-12-10 2015-02-03 Ol2, Inc. System for collaborative conferencing using streaming interactive video
US9015784B2 (en) 2002-12-10 2015-04-21 Ol2, Inc. System for acceleration of web page delivery
JP2008005390A (en) * 2006-06-26 2008-01-10 Toyota Infotechnology Center Co Ltd Wireless communication apparatus, wireless communication method and program
US8472885B2 (en) 2006-10-17 2013-06-25 Pioneer Corporation Information presenting apparatus, information presenting method, and the like, for performing communication with a plurality of devices
WO2008047407A1 (en) * 2006-10-17 2008-04-24 Pioneer Corporation Information providing device, information providing method and the like
JPWO2008047407A1 (en) * 2006-10-17 2010-02-18 パイオニア株式会社 Information presentation device, information presentation method, etc.
JP2011507344A (en) * 2007-12-05 2011-03-03 オンライブ インコーポレイテッド A system to synthesize recorded application state with application streaming interactive video output
JP2011508477A (en) * 2007-12-05 2011-03-10 オンライブ インコーポレイテッド System and method for compressing streaming interactive video
JP2012213189A (en) * 2007-12-05 2012-11-01 Onlive Inc System and method for compressing streaming interactive video
JP2011507340A (en) * 2007-12-05 2011-03-03 オンライブ インコーポレイテッド Streaming interactive video integrated with recorded video segments
JP2011509545A (en) * 2007-12-05 2011-03-24 オンライブ インコーポレイテッド System for collaborative meetings using streaming interactive video
JP2011509546A (en) * 2007-12-05 2011-03-24 オンライブ インコーポレイテッド Synthesizing linear content and interactive content compressed together as streaming interactive video
JP2011508478A (en) * 2007-12-05 2011-03-10 オンライブ インコーポレイテッド How to multicast a view of real-time streaming interactive video
JP2009140378A (en) * 2007-12-10 2009-06-25 Fujitsu Ltd Data transmission apparatus and data transmission method
US8495128B2 (en) 2008-07-28 2013-07-23 Funai Electric Co., Ltd. Radio communication system, radio equipment, and server
EP2151973A1 (en) 2008-07-28 2010-02-10 Funai Electric Co., Ltd. Radio communication system, radio equipment, and server
TWI405436B (en) * 2008-12-25 2013-08-11 Mitsubishi Electric Corp Communication management device, communication device and communication method
JP5084916B2 (en) * 2008-12-25 2012-11-28 三菱電機株式会社 Communication management apparatus and communication method
US8908566B2 (en) 2008-12-25 2014-12-09 Mitsubishi Electric Corporation Communication management device, communication device, and communication method
WO2010073346A1 (en) * 2008-12-25 2010-07-01 三菱電機株式会社 Communication management device, communication device, and communication method
US8127027B2 (en) 2009-03-18 2012-02-28 Kabushiki Kaisha Toshiba Telephone system, server, and terminal device
JP2010220112A (en) * 2009-03-18 2010-09-30 Toshiba Corp Telephone system, server and terminal device
JP2010257228A (en) * 2009-04-24 2010-11-11 Nec Corp Server terminal, image processing system, image processing method and program
WO2012056783A1 (en) * 2010-10-25 2012-05-03 日本電気株式会社 Content sharing system, mobile terminal, protocol switching method and program
US9020473B2 (en) 2010-10-25 2015-04-28 Nec Corporation Content sharing system, mobile terminal, protocol switching method and program
JP2011035939A (en) * 2010-10-29 2011-02-17 Toshiba Corp Wireless communication apparatus and wireless communication method
WO2012114371A1 (en) * 2011-02-23 2012-08-30 株式会社日立製作所 Message transmission device and message transmission method
JP2013105320A (en) * 2011-11-14 2013-05-30 Nippon Telegraph & Telephone West Corp Information processing system and information processing method
US9582808B2 (en) 2011-12-12 2017-02-28 International Business Machines Corporation Customizing a presentation based on preferences of an audience
US9852432B2 (en) 2011-12-12 2017-12-26 International Business Machines Corporation Customizing a presentation based on preferences of an audience
US9086788B2 (en) 2011-12-12 2015-07-21 International Business Machines Corporation Context-sensitive collaboration channels
US9600152B2 (en) 2011-12-12 2017-03-21 International Business Machines Corporation Providing feedback for screen sharing
US9588652B2 (en) 2011-12-12 2017-03-07 International Business Machines Corporation Providing feedback for screen sharing
US9124657B2 (en) 2011-12-14 2015-09-01 International Business Machines Corporation Dynamic screen sharing for optimal performance
US9141264B2 (en) 2011-12-14 2015-09-22 International Business Machines Corporation Variable refresh rates for portions of shared screens
US9134889B2 (en) 2011-12-14 2015-09-15 International Business Machines Corporation Variable refresh rates for portions of shared screens
US9131021B2 (en) 2011-12-14 2015-09-08 International Business Machines Corporation Dynamic screen sharing for optimal performance
JP2013127719A (en) * 2011-12-19 2013-06-27 Nippon Telegr & Teleph Corp <Ntt> Web information acquisition method and prefetch proxy server
JP2013197998A (en) * 2012-03-21 2013-09-30 Toshiba Corp Server terminal, screen transfer system, and screen transfer method
JP7116128B2 (en) 2012-09-12 2022-08-09 アイイーエックス グループ,インコーポレーテッド Systems and methods for TCP-to-multicast (T2M) and related network architectures
JP2020205075A (en) * 2012-09-12 2020-12-24 アイイーエックス グループ,インコーポレーテッド System and method for tcp-to-multicast (t2m) communications and related network architecture
US12148031B2 (en) 2012-09-12 2024-11-19 Iex Group, Inc. System and method for TCP-to-multicast (T2M) communications and related network architecture
CN105659588A (en) * 2013-08-06 2016-06-08 株式会社理光 Information processing device and determination result providing method
EP3032826A4 (en) * 2013-08-06 2016-08-31 Ricoh Co Ltd INFORMATION PROCESSING DEVICE, AND DETERMINATION RESULT COMMUNICATION METHOD
CN105659588B (en) * 2013-08-06 2019-03-08 株式会社理光 Information processing apparatus and determination result providing method
US9742815B2 (en) 2013-08-06 2017-08-22 Ricoh Company, Ltd. Information processing apparatus and determination result providing method
JP2017102575A (en) * 2015-11-30 2017-06-08 ブラザー工業株式会社 Communication system, server device, client device, and program
KR101769133B1 (en) * 2015-11-30 2017-08-17 엘아이지넥스원 주식회사 Electronic device adaptively selecting tcp/r-udp and packet transmitting/receiving method thereof
JP2021515341A (en) * 2018-03-08 2021-06-17 グーグル エルエルシーGoogle LLC Reducing client device latency in rendering remotely generated automation assistant content
JP7170739B2 (en) 2018-03-08 2022-11-14 グーグル エルエルシー Reduced client device latency in rendering remotely generated Automation Assistant content
US11869502B2 (en) 2018-03-08 2024-01-09 Google Llc Mitigation of client device latency in rendering of remotely generated automated assistant content
US12260861B2 (en) 2018-03-08 2025-03-25 Google Llc Mitigation of client device latency in rendering of remotely generated automated assistant content
JP2019191962A (en) * 2018-04-25 2019-10-31 富士通株式会社 Screen transmission program, screen transmission method, and screen transmission/reception system
JP2019216473A (en) * 2019-09-13 2019-12-19 株式会社 ゼネテック Information transmission system, information transmission method, information transmission program, server, and mobile terminal
US12177137B1 (en) 2022-03-01 2024-12-24 Iex Group, Inc. Scalable virtual network switch architecture

Also Published As

Publication number Publication date
JP4222561B2 (en) 2009-02-12

Similar Documents

Publication Publication Date Title
JP4222561B2 (en) Data communication system, electronic conference system, data communication method, data communication program, and storage medium
US7984098B2 (en) Video messaging
JP4467220B2 (en) Voice instant messaging
US8732236B2 (en) Managing network communications between network nodes and stream transport protocol
KR101596530B1 (en) Systems and methods for managing multimedia operations in remote sessions
JP4425577B2 (en) How to present data
US8117332B2 (en) Network streaming over multiple physical interfaces
Inouye et al. System support for mobile multimedia applications
US6771638B1 (en) System and method for temporary data transfer
US20110087915A1 (en) Hybrid reliable streaming protocol for peer-to-peer multicasting
US8793384B2 (en) Recovery of disconnected channels over a reliable protocol
JP2002335278A (en) Wireless data communication network switching device and wireless data communication network switching processing program
US20100296521A1 (en) Efficient bandwidth utilization when streaming data over multiple network interfaces
CN115720384A (en) Connection establishment method and related equipment
WO2023000894A1 (en) Data transmission method and apparatus, and server, storage medium and program product
JP2005526452A (en) Quality-driven streaming method and apparatus
CN115134553A (en) Data transmission method and device, electronic equipment and storage medium
US20110271002A1 (en) Initializing network streaming over multiple physical interfaces
US7349664B2 (en) Communication system and method thereof
McKinley et al. Composable proxy services to support collaboration on the mobile internet
US7502863B2 (en) Method of distributing stream data and system thereof
CN114363351A (en) Proxy connection suppression method, network architecture and proxy server
KR101051710B1 (en) Multiple session establishment method and node using same
CN119697006B (en) Log data processing methods and related equipment
JP2007207013A (en) Information processing apparatus and information sharing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060925

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080819

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081020

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081111

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081114

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20111128

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111128

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121128

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131128

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees