WO2021171364A1 - 通信装置、受信側通信装置、通信方法、及びプログラム - Google Patents

通信装置、受信側通信装置、通信方法、及びプログラム Download PDF

Info

Publication number
WO2021171364A1
WO2021171364A1 PCT/JP2020/007460 JP2020007460W WO2021171364A1 WO 2021171364 A1 WO2021171364 A1 WO 2021171364A1 JP 2020007460 W JP2020007460 W JP 2020007460W WO 2021171364 A1 WO2021171364 A1 WO 2021171364A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
address
identification
destination
assigned
Prior art date
Application number
PCT/JP2020/007460
Other languages
English (en)
French (fr)
Inventor
光男 天坂
智広 岡田
俊介 本間
孝幸 中村
佐藤 卓哉
Original Assignee
日本電信電話株式会社
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 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to US17/759,871 priority Critical patent/US20230119073A1/en
Priority to PCT/JP2020/007460 priority patent/WO2021171364A1/ja
Priority to JP2022502367A priority patent/JPWO2021171364A1/ja
Publication of WO2021171364A1 publication Critical patent/WO2021171364A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/56Routing software
    • H04L45/566Routing instructions carried by the data packet, e.g. active networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks

Definitions

  • FIG. 2 is a diagram for explaining the configuration and operation of the system according to the first embodiment.
  • this system includes a game server 10, an SLG (Sender) 100 on the transmitting side, SLG (Receiver) 200-1 to 200-3 on the receiving side, a controller 300, and the Internet 20 and the like.
  • the communication network enables communication between devices.
  • the game server 10 unicasts a packet of operation data of the room (2) to the user terminals (destination IP addresses: D, E, G) participating in the room (2). Then, a packet of the operation data of the room (1) is unicasted to the user terminals (destination IP addresses: F, H, I) participating in the room (1).
  • the SLG (Receiver) 200-2 When the SLG (Receiver) 200-2 receives the packet transferred by multicast, it acquires the destination IP address from the redelivery table (FIG. 4) based on the destination IP address (multicast address) and the identification ID of the packet. , The destination of the received packet is converted from the multicast address to the destination IP address, and the converted packet is transmitted.
  • SLG (Receiver) 200-1 registers the above information in the redistribution table, and if it has not joined the multicast domain, it newly joins the multicast domain. Specifically, the SLG (Receiver) 200-1 transmits a join request (join) to the multicast domain in the same manner as when a normal terminal joins the multicast domain. As a result, the data of the room (1) is also distributed to the user terminal B.
  • the method of Example 1 eliminates the need for prior arrangement of identification information for the contents of the server and the addition of identification information to the packet by the server.
  • FIG. 5 is a diagram showing an example of the functional configuration of the SLG (Sender) 100.
  • the SLG (Sender) 100 includes an IF 110, a source IP determination unit 120, a hash calculation unit 130, a packet pool unit 140, a destination address conversion unit 150, a packet transmission determination unit 160, and a destination IP addition request transmission unit. It includes 170, a storage unit 180, and an IF 190.
  • the IF110 receives a packet from the game server 10 or the like.
  • the source IP determination unit 120 determines whether or not the IP address of the source of the received packet is pre-registered.
  • the hash calculation unit 130 calculates the hash value from the payload value of the received packet.
  • the destination IP addition request transmission unit 170 executes a registration request toward the controller 300 for a destination (a user terminal newly joined to the group) that is not stored in the conversion table.
  • the storage unit 180 stores the conversion table.
  • the destination IP addition request transmission unit 170 may be referred to as a transmission unit.
  • FIG. 6 is a diagram showing an example of the functional configuration of the SLG (Receiver) 200.
  • the SLG (Receiver) 200 includes an IF 210, an MC address determination unit 220, a packet duplication unit 230, a storage unit 240, and an IF 250.
  • the packet duplication unit 230 receives the packet. Is duplicated into two packets, and the destination IP addresses are converted to D and E, respectively, and transmitted.
  • FIG. 7 is a diagram showing an example of the functional configuration of the controller 300.
  • the controller 300 includes an IF 310, a destination IP addition request receiving unit 320, a destination IP addition instruction transmitting unit 330, a storage unit 340, and an IF 350.
  • the destination IP addition instruction transmission unit 330 confirms the IP address of the destination SLG (Receiver) 299 for transmitting the address addition request by referring to the storage unit 340, and transmits the address addition request via the IF350. ..
  • the IF350 transmits a packet.
  • the destination IP addition instruction transmission unit 330 and IF350 may be referred to as transmission units.
  • the SLG (Sender) 100 receives the packet.
  • the source IP determination unit 120 confirms whether or not the source IP address of the packet is registered. For example, assuming that the IP address of the game server 10 is registered, the source IP determination unit 120 determines whether or not the source of the packet is the game server 10.
  • the packet transmission determination unit 160 determines whether or not a packet having the same destination IP address as the destination IP address of the current packet already exists in a pool other than pool 1.
  • the packet sent first is targeted.
  • the packet transmission determination unit 160 determines whether or not there are a plurality of packets in the “pool 2”. If Yes, in S107, the destination address translation unit 150 refers to the translation table, changes the destination of the first packet in the "pool 2", adds an identification ID, and discards the remaining packets.
  • the destination address translation unit 150 outputs a packet from the IF 190, and the packet is forwarded by the multicast protocol.
  • the process returns to S101.
  • the destination IP addition request transmission unit 170 adds the destination IP address, MC address, and identification ID of the corresponding packet to the conversion table stored in the storage unit 180, and controls communication to the controller 300.
  • a request for adding a destination IP is transmitted by (C-plane communication).
  • the identification ID can be determined by the pool in which the packet is stored.
  • FIG. 9 is a diagram for explaining the configuration and operation of the communication system according to the second embodiment.
  • the system includes a game server 400, an SLG (Sender) 500 on the transmitting side, an SLG (Receiver) 600-1 to 600-3 on the receiving side, and a controller 700, and has a network 20 (example). : Internet) etc. enables communication between devices.
  • the game server 400 and the SGL are directly linked, so that the game server 400 can transfer the data to all the target user terminals only by unicasting the single data to be distributed.
  • the SLG (Sender) 500 converts the unicast packet received from the game server 400 into a multicast packet based on the conversion table, and transmits the multicast packet to the SLG (Receiver) 600 using the above tunneling. ..
  • the SLG (Receiver) 600 converts the multicast packet into a unicast packet based on the redistribution table and transmits it to the destination user terminal.
  • FIG. 13 shows an example of the redistribution table held by the SLG (Receiver) 600-3.
  • the redistribution table is a table in which the multicast address, the identification ID, and the destination IP address are associated with each other, as in the first embodiment.
  • the game server 400 is unicast to the default port of the IP address of the SLG (Sender) 400 for each content (here, operation data for each room) based on the distribution table (FIG. 10) and the user table (FIG. 11). Send a cast.
  • the SLG (Sender) 500 that has received the packet transmitted from the game server 400 acquires the MC address and the identification ID from the destination port of the received packet based on the conversion table, and converts the destination of the packet into the MC address. At the same time, an identification ID is given to the packet and the packet is sent to the multicast domain.
  • packets are forwarded according to the normal multicast routing protocol.
  • SLG Receiveiver 600-3
  • the SLG (Receiver) 600-3 When the SLG (Receiver) 600-3 receives the packet transferred by multicast, it acquires the destination IP address from the redelivery table (FIG. 13) based on the destination IP address (multicast address) and the identification ID of the packet. , The destination of the received packet is converted from the multicast address to the destination IP address, and the converted packet is transmitted.
  • the user terminal B transmits a participation request (data distribution request) to the room 1 to the game server 400.
  • the packet related to the request is forwarded by normal IP routing.
  • the game server 400 that has received the participation request approves the user related to the user terminal B in S2, and then adds the user to the user table in the game server 400. As shown in FIG. 14, "B, room (1) is added. According to the distribution table (FIG. 10) already shown, the destination port of data to the user terminal B is 50002.
  • the game server 400 requests the controller 700 to add the user by C-plane communication.
  • the game server 400 also transmits the corresponding records of the distribution table and the user table. Specifically, "operation data to room (1), 103.1.1.1, 50001" and "B, room (1)" are transmitted.
  • the controller 700 acquires the identification ID of the corresponding content from the conversion table of the SLG (sender) 500.
  • "21" corresponding to 50001 is acquired as the identification ID.
  • the controller 500 instructs the SLG (Receiver) 600-1 to which the user terminal B is connected to register in the redistribution table.
  • the SLG (Receiver) 600-1 itself does not participate in the multicast domain, an instruction to participate is also given. Participation in multicast depends on the protocol of each domain, but normal terminals can participate in the same way as when joining a multicast domain. As a result, the data of the room (1) is also distributed to the user terminal B.
  • the method of the second embodiment eliminates the need to correspond to the multicast address of the server / terminal and can be realized by one multicast address.
  • the method of Example 2 can reduce the number of packets transmitted by the server and reduce the load on the server.
  • FIG. 15 is a diagram showing an example of the functional configuration of the game server 400.
  • the game server 400 includes a content storage unit 410, a distribution unit 420, a storage unit 430, a request reception unit 440, a destination IP addition request transmission unit 450, and an IF460.
  • the content storage unit 410 stores each content data.
  • the distribution unit 420 transmits the content data as a packet via IF460.
  • the storage unit 430 stores the distribution table and the user table.
  • the request reception unit 440 receives a distribution request (participation request) from the user terminal.
  • the destination IP addition request transmission unit 450 transmits a destination IP addition request to the controller 700.
  • IF460 sends and receives packets.
  • FIG. 16 is a diagram showing an example of the functional configuration of the SLG (Sender) 500.
  • the SLG (Sender) 500 includes an IF 510, a packet reception unit 520, a target packet determination unit 530, an address translation unit 540, a storage unit 550, a controller transmission / reception unit 560, an IF 570, and an IF 580.
  • the address translation unit 540 and IF580 may be referred to as an address translation unit.
  • the packet receiving unit 520 receives the packet via the IF 510.
  • the target packet determination unit 530 determines whether or not the received packet is a packet to be converted into a multicast packet.
  • the address translation unit 540 translates the destination of the packet into a multicast address based on the translation table, assigns an identification ID to the packet, and transmits the packet via IF580.
  • the storage unit 550 stores the conversion table.
  • the controller transmission / reception unit 560 transmits information to the controller 700 and receives information from the controller 700.
  • FIG. 17 is a diagram showing an example of the functional configuration of the SLG (Receiver) 600.
  • the SLG (Receiver) 600 includes an IF 610, an MC address determination unit 620, a packet duplication unit 630, a storage unit 640, and an IF 650.
  • the IF610 receives the packet.
  • the storage unit 640 stores the redistribution table.
  • the MC address determination unit 620 determines whether or not the destination address of the received packet is the address to be converted based on the destination address and the identification ID of the received packet based on the redistribution table.
  • the packet duplication unit 630 replicates as many packets as necessary based on the redelivery table for the packet having the address to be converted, converts the destination IP address of each packet from the multicast address to the corresponding destination IP address, and IF650. Pass to. IF650 transmits a packet.
  • the packet duplication unit 630 and IF650 may be referred to as a transmission unit.
  • FIG. 18 is a diagram showing an example of the functional configuration of the controller 700.
  • the controller 700 includes an IF 710, a destination IP addition request receiving unit 720, a destination IP addition instruction transmitting unit 730, a storage unit 740, an SLG (Sender) transmitting / receiving unit 750, an IF 760, and an IF 770.
  • the destination IP addition request receiving unit 720 receives a packet from the destination IP addition request transmitting unit 450 of the SLG (Sender) 600 via the IF710.
  • the storage unit 740 stores the IP address information of each SLG and the IP address information of the user terminal connected to the subordinate.
  • the destination IP addition instruction transmission unit 730 acquires the IP address of the SLG (Receiver) of the destination to which the instruction is transmitted from the storage unit 740, and sends a request for address addition to the destination.
  • the destination IP addition instruction transmission unit 730 and IF760 may be referred to as transmission units.
  • the SLG (Sender) transmission / reception unit 750 transmits information to the SLG (sender) 500 and receives information from the SLG (sender) 500.
  • the game servers 10, 400, the SLGs of Examples 1 and 2, and the controllers 300, 700 can all be realized by, for example, causing a computer to execute a program.
  • This computer may be a physical computer or a virtual machine.
  • This "computer” may have a configuration including a CPU included in a router, a switch, or the like, a memory, or the like.
  • the SLG may be referred to as a communication device.
  • the device game servers 10, 400, SLGs of Examples 1 and 2, controllers 300, 700
  • the device is implemented by the device using hardware resources such as a CPU and memory built in the computer. It can be realized by executing the program corresponding to the processing.
  • the above program can be recorded on a computer-readable recording medium (portable memory, etc.), stored, and distributed. It is also possible to provide the above program through a network such as the Internet or e-mail.
  • FIG. 19 is a diagram showing a hardware configuration example of the computer.
  • the computer of FIG. 19 has a drive device 1000, an auxiliary storage device 1002, a memory device 1003, a CPU 1004, an interface device 1005, a display device 1006, an input device 1007, and the like, each of which is connected to each other by a bus B.
  • the program that realizes the processing on the computer is provided by, for example, a recording medium 1001 such as a CD-ROM or a memory card.
  • a recording medium 1001 such as a CD-ROM or a memory card.
  • the program is installed in the auxiliary storage device 1002 from the recording medium 1001 via the drive device 1000.
  • the program does not necessarily have to be installed from the recording medium 1001, and may be downloaded from another computer via the network.
  • the auxiliary storage device 1002 stores the installed program and also stores necessary files, data, and the like.
  • the memory device 1003 reads and stores the program from the auxiliary storage device 1002 when the program is instructed to start.
  • the CPU 1004 realizes the function related to the device according to the program stored in the memory device 1003.
  • the interface device 1005 is used as an interface for connecting to a network, and functions as an input means and an output means via the network.
  • the display device 1006 displays a programmatic GUI (Graphical User Interface) or the like.
  • the input device 157 is composed of a keyboard, a mouse, buttons, a touch panel, and the like, and is used for inputting various operation instructions.
  • This specification discloses at least the communication device, the receiving side communication device, the communication method, and the program of each of the following items.
  • a storage unit that stores conversion tables and A receiver that receives packets from the server to the user terminal, and Based on the conversion table, the destination address of the packet is converted into a multicast address, an identification ID for identifying the group to which the user terminal belongs is assigned to the packet, and the packet to which the identification ID is assigned is transmitted.
  • (Section 2) Registration that requests that the receiving unit register the identification ID corresponding to the group and the IP address addressed to the user terminal when the receiving unit receives the packet addressed to the user terminal newly joined to the group from the server.
  • the communication device further comprising a transmitter for transmitting a request to a controller.
  • a storage unit that stores conversion tables and A receiver that receives packets destined for a specific port from the server, and Based on the translation table, the destination address of the packet is translated into a multicast address, an identification ID for identifying the group corresponding to the specific port is assigned to the packet, and the packet to which the identification ID is assigned is assigned.
  • (Section 4) A receiving-side communication device that receives a packet transmitted from the communication device according to any one of paragraphs 1 to 3.
  • a receiving-side communication device including a transmitting unit that transmits a packet destined for the IP address to one or more user terminals having an IP address corresponding to the identification ID assigned to the received packet.
  • a controller including a transmitter for transmitting a registration request requesting registration of a multicast address, an identification ID, and a destination IP address to the receiving side communication device according to the fourth item.
  • a communication method that includes steps. (Section 7) A communication method executed by a communication device having a storage unit for storing a conversion table. Steps to receive packets destined for a particular port from the server, Based on the conversion table, the destination address of the packet is converted into a multicast address, an identification ID for identifying the group corresponding to the specific port is assigned to the packet, and the packet to which the identification ID is assigned is assigned.
  • (Section 8) A program for causing a computer to function as each part of the communication device according to any one of items 1 to 3.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

通信装置において、変換テーブルを格納する記憶部と、サーバからユーザ端末宛のパケットを受信する受信部と、前記変換テーブルに基づいて、前記パケットの宛先アドレスをマルチキャストアドレスに変換するとともに、当該パケットに、前記ユーザ端末が属するグループを識別する識別IDを付与し、当該識別IDが付与されたパケットを送信するアドレス変換部とを備える。

Description

通信装置、受信側通信装置、通信方法、及びプログラム
 本発明は、映像やゲーム等のコンテンツを複数のユーザ端末に配信する技術に関連するものである。
 映像等のコンテンツの配信が増加するにつれて、ネットワークにおける中継トラフィック量が増加傾向にある。
 また、不特定多数のユーザ端末に対して、コンテンツを同時配信するゲーム等のアプリケーションも増加している。このようなゲームにおいては、ユーザの任意のグループにおいてコンテンツが変更され、グループが短期間で変更されることが一般的である。
IETF "Gateway Function for Network Slicing draft-homma-rtgwg-slice-gateway-01" https://tools.ietf.org/html/draft-homma-rtgwg-slice-gateway-01
特開2019-757410号公報
 上記のゲームのように、不特定多数のユーザ端末に対してコンテンツを同時配信するアプリケーションにおいて、従来のユニキャスト方式やマルチキャスト方式でのパケット転送では、処理負荷や管理負荷が増大し、効率的なパケット転送が難しいという課題がある。
 本発明は上記の点に鑑みてなされたものであり、不特定多数のユーザ端末に対してコンテンツを同時配信するアプリケーションにおいて、効率的にパケット転送を行うことを可能とする技術を提供することを目的とする。
 開示の技術によれば、変換テーブルを格納する記憶部と、
 サーバからユーザ端末宛のパケットを受信する受信部と、
 前記変換テーブルに基づいて、前記パケットの宛先アドレスをマルチキャストアドレスに変換するとともに、当該パケットに、前記ユーザ端末が属するグループを識別する識別IDを付与し、当該識別IDが付与されたパケットを送信するアドレス変換部と
 を備える通信装置が提供される。
 開示の技術によれば、不特定多数のユーザ端末に対してコンテンツを同時配信するアプリケーションにおいて、効率的にパケット転送を行うことを可能とする技術が提供される。
本発明の実施の形態の概要を説明するための図である。 実施例1におけるシステムの構成及び動作を説明するための図である。 SLG(Sender)における変換テーブルを示す図である。 SLG(Receiver)における再配信テーブルを示す図である。 SLG(Sender)の機能構成図である。 SLG(Receiver)の機能構成図である。 コントローラの機能構成図である。 SLG(Sender)の動作を説明するためのフローチャートである。 実施例2におけるシステムの構成及び動作を説明するための図である。 コントローラにおける配信テーブルを示す図である。 コントローラにおけるユーザテーブルを示す図である。 SLG(Sender)における変換テーブルを示す図である。 SLG(Receiver)における再配信テーブルを示す図である。 利用開始フローを示す図である。 ゲームサーバの機能構成図である。 SLG(Sender)の機能構成図である。 SLG(Receiver)の機能構成図である。 コントローラの機能構成図である。 装置のハードウェア構成例を示す図である。
 以下、図面を参照して本発明の実施の形態(本実施の形態)を説明する。以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。
 例えば、以下で説明する実施の形態では、不特定多数のユーザ端末に対してコンテンツを同時配信するアプリケーションの例としてゲームを挙げているが、これは一例に過ぎない。本発明は、ゲームに限らない様々なコンテンツ配信に適用可能である。また、以下では、ユーザ端末が属するグループの例として「ルーム」を用いているが、ユーザ端末が属するグループは「ルーム」に限られない。
 また、本実施の形態では、ネットワークスライシング技術を使用しているが、ネットワークスライシング技術を使用することは必須ではなく、ネットワークスライシング技術を使用しないで本発明を実施してもよい。
 (実施の形態の概要)
 本実施の形態では、図1に示すようなゲームサーバ10からのコンテンツ配信を行うシステムを想定している。図1に示すシステムにおいて、ゲームサーバ10から、インターネット20を介して不特定多数のユーザ端末に対してコンテンツが同時配信される。図1に示す例では、「ルームA」に参加している複数のユーザ端末と、ルームBに参加している複数のユーザ端末が示されている。
 図1の例において、ルームAに属するユーザ端末にはゲームサーバ10からコンテンツ(1)が配信され、ルームBに属するユーザ端末にはゲームサーバ10からコンテンツ(2)が配信される。コンテンツは、任意のグループで頻繁に変更され、また、グループも頻繁に変更される。
 上記のようなゲームでのコンテンツ配信におけるパケット転送の既存技術として、ユニキャスト方式、マルチキャスト方式、特許文献1に記載のトラヒック変換方式がある。
 ユニキャスト方式では、全てのユーザ端末に対して、対象データをユニキャストで配信するため、中継装置と配信サーバで負荷が増大してしまう。また、各ユーザ端末向けに順番に送信するため、ユーザ端末毎にパケットの到着時間が異なってしまう。
 マルチキャスト方式では、作成されたグループ毎に個別のマルチキャストアドレスを設定してデータ配信を行うため、全端末及びサーバにおいてマルチキャスト対応が必要になるとともに、膨大なマルチキャストアドレスの管理が必要となる。
 また、トラヒック変換方式では、ユニキャストで配信したパケットをネットワーク側がマルチキャストパケットに変換する。しかし、この方式では、事前に変換するマルチキャストアドレスに対応した識別情報の付与が必要になる。
 本実施の形態では、ドメイン間の接続点にSlice Gateway(以降SLG)を配備するアーキテクチャを採用し、ドメインの両端のSLGにおいてユニキャストパケットとマルチキャストアドレスを変換することで、既存方式の課題を解決し、効率的にパケット転送を行うことを可能としている。
 以下、本実施の形態に係る具体的なシステムの構成及び動作例として、実施例1、実施例2を説明する。
 (実施例1)
 <全体の構成>
 図2は、実施例1におけるシステムの構成と動作を説明するための図である。図2に示すように、本システムには、ゲームサーバ10、送信側のSLG(Sender)100、受信側のSLG(Receiver)200―1~200-3、コントローラ300が備えられ、インターネット20等の通信ネットワークにより装置間での通信が可能になっている。
 また、SLG(Receiver)200―1~200-3には、ゲームサーバ10により提供されるサービスを利用する複数のユーザ端末が接続されている。各ユーザ端末には、図示のとおりにグローバルIPアドレスが割り当てられている。なお、図では、図示の便宜上、グローバルIPアドレスを「グローバルIP」と記述し、宛先IPアドレスを「宛先IP」と記述している。
 実施例1では、ゲームサーバ10は通常通り、各ユーザ端末に向けてユンキャストでパケットを送信する。また、各SLGはマルチキャストドメインに所属し、マルチキャストプロトコルに対応しており、SLG同士がマルチキャスト方式のSenderとReceiverになる。また、SLG間のパケット転送については、VLANID等の識別IDを用いることで、トンネリング(例:VXLAN)を実施している。
 SLG(Sender)100は、ゲームサーバ10から受信したユニキャストのパケットを、変換テーブルに基づいて、マルチキャストのパケットに変換し、上記のトンネリングを用いてマルチキャストのパケットをSLG(Receiver)200に送信する。SLG(Receiver)200は、再配信テーブルに基づいて、マルチキャストのパケットをユニキャストのパケットに変換し、宛先のユーザ端末に送信する。
 図3に、SLG(Sender)100が保持する変換テーブルの例を示す。図3に示すように、変換テーブルは、宛先IPアドレス、マルチキャストアドレス(MCアドレス)、識別IDが対応付けられたテーブルである。識別IDは、該当宛先IPアドレスのユーザ端末が参加しているルーム(グループ)に対応する。図3は、ルーム(1)のデータに識別ID=21を付与し、ルーム(2)のデータに識別ID=22を付与することを示している。
 図4に、SLG(Receiver)200―2が保持する再配信テーブルの例を示す。図4に示すように、再配信テーブルは、マルチキャストアドレス、識別ID、宛先IPアドレスが対応付けられたテーブルである。
 <動作例>
 図2を参照し実施例1における全体の動作例を説明する。図2に示すように、ゲームサーバ10は、ルーム(2)に参加しているユーザ端末(宛先IPアドレス:D,E,G)宛にルーム(2)の操作データのパケットをユニキャストで送信し、ルーム(1)に参加しているユーザ端末(宛先IPアドレス:F,H,I)宛にルーム(1)の操作データのパケットをユニキャストで送信する。
 ゲームサーバ10から送信されたパケットを受信したSLG(Sender)100は、データ別(ルーム別)にパケットを一旦プールする(バッファに保持する)。SLG(Sender)100は、図3に示す変換テーブルを参照することにより、パケットの宛先アドレスを、パケットの宛先IPアドレスに対応するマルチキャストアドレスに変換するとともに、パケットの宛先IPアドレスに対応する識別IDをパケットに付与し、識別IDが付与されたパケットを送信する。なお、本実施の形態(実施例1、実施例2)において、識別IDは、「マルチキャストアドレスを宛先アドレスとして持つパケット」の外側に付与してもよいし、「マルチキャストアドレスを宛先アドレスとして持つパケット」の内側に付与してもよい。
 ネットワーク20(マルチキャストドメイン)内では、通常のマルチキャストルーティングプロトコルに従ってパケットが転送される。
 受信側のSLGの動作に関して、SLG(Receiver)200-2を例にとって説明する。
 SLG(Receiver)200-2は、マルチキャストで転送されてきたパケットを受信すると、パケットの宛先IPアドレス(マルチキャストアドレス)と識別IDに基づいて、再配信テーブル(図4)から宛先IPアドレスを取得し、受信したパケットの宛先をマルチキャストアドレスから当該宛先IPアドレスに変換し、当該変換をしたパケットを送信する。
 例えば、「マルチキャストアドレス=224.1.1.1、識別ID=21」であるパケットを受信した場合、SLG(Receiver)200-2は、再配信テーブルを参照することにより、宛先IPアドレス=Fのユーザ端末宛てにパケットを送信する。
 次に、グローバルIPアドレス=Bのユーザ端末(「ユーザ端末B」と記述する)が、ルーム(1)に新たに参加する場合の動作を説明する。
 まず、ユーザ端末Bは、ゲームサーバ10に対してルーム(1)への参加要求を送信する。当該参加要求は、通常のルーティングでネットワーク20を介してゲームサーバ10に届けられる。
 参加要求を受信したゲームサーバ10は、既に操作データを送信している宛先に加えて、ユーザ端末B宛にルーム(1)の操作データのパケットをユニキャストで送信する。
 ユーザ端末B宛のパケットを受信したSLG(Sender)100は、パケットの宛先IPアドレス(=B)を取得するとともに、パケット内のデータがルーム(1)の操作データであることを検知し、ユーザ端末B(宛先IPアドレス=B)に、ルーム(1)の識別ID=21を割り当てることを決定する。
 SLG(Sender)100は、変換テーブルに「宛先IPアドレス=B、MCアドレス=224.1.1.1、識別ID=21」を追加するとともに、コントローラ300に対し、C-plane通信により、ユーザ端末B(宛先IPアドレス=B)の登録要求を送信する。この登録要求には、例えば、「MCアドレス=224.1.1.1、識別ID=21、宛先IPアドレス=B」を受信側のSLGに登録することを要求することを示す情報が含まれる。
 上記登録要求を受信したコントローラ300は、ユーザ端末Bが接続されるSLG(Receiver)200-1に対し、「MCアドレス=224.1.1.1、識別ID=21、宛先IPアドレス=B」を登録するよう要求する。
 SLG(Receiver)200-1は、上記情報を再配信テーブルに登録するとともに、マルチキャストドメインに参加していなければ、新たにマルチキャストドメインに参加する。具体的には、SLG(Receiver)200-1は、通常端末がマルチキャストドメインに参加する場合と同様にして、マルチキャストドメインに対して参加要求(join)を送信する。これにより、ユーザ端末Bにもルーム(1)のデータが配信されるようになる。
 <実施例1の他方式との比較>
 実施例1の方式をユニキャスト方式と比較すると、実施例1の方式により、中継トラフィックを削減できる。また、NW内でパケットが複製されるため、各ユーザへの遅延が均一化される。
 実施例1の方式をマルチキャスト方式と比較すると、実施例1の方式により、サーバ・端末のマルチキャストアドレスへの対応が不要となるとともに、一つのマルチキャストアドレスで実現可能となる。
 実施例1の方式をトラヒック変換方式と比較すると、実施例1の方式により、サーバのコンテンツに対する事前の識別情報の取り決めや、サーバによるパケットへの識別情報付与が不要となる。
 <装置構成例>
 以下、実施例1におけるSLG(Sender)100、SLG(Receiver)200、コントローラ300の機能構成の例を説明する。以降の装置構成の説明において、インタフェースを「IF」と呼ぶ。
 図5は、SLG(Sender)100の機能構成の例を示す図である。図5に示すよう、SLG(Sender)100は、IF110、送信元IP判定部120、ハッシュ計算部130、パケットプール部140、宛先アドレス変換部150、パケット送信判定部160、宛先IP追加要望送信部170、記憶部180、IF190を備える。
 IF110は、ゲームサーバ10等からパケットを受信する。送信元IP判定部120は、受信したパケットの送信元のIPアドレスが事前登録されているものかどうかを判定する。
 ハッシュ計算部130は、受信したパケットのペイロード値からハッシュ値を計算する。パケットプール部140は、ハッシュ値毎にパケットを一時的に保存する。例えば、ハッシュ値=ABCDであるパケットをプール1に保存し、ハッシュ値=EFGHであるパケットをプール2に保存する、といったようにパケットを保存する。
 パケット送信判定部160は、パケットプール部140の状況から、パケットの変換・送信等の判断を実施する。判断方法の例については後述する。宛先アドレス変換部150は、パケットの宛先をマルチキャストアドレスに変換し、識別IDを付与し、IF190に渡す。IF190は、パケットを送信する。なお、宛先アドレス変換部150とIF190とをアドレス変換部と称してもよい。
 宛先IP追加要望送信部170は、変換テーブルに保存されていない宛先(新たにグループに参加したユーザ端末)に関して、コントローラ300に向けて登録要求を実施する。記憶部180は、変換テーブルを保存する。なお、宛先IP追加要望送信部170を送信部と称してもよい。
 図6は、SLG(Receiver)200の機能構成の例を示す図である。図6に示すよう、SLG(Receiver)200は、IF210、MCアドレス判定部220、パケット複製部230、記憶部240、IF250を備える。
 IF210は、パケットを受信する。記憶部240は、再配信テーブルを保存する。MCアドレス判定部220は、再配信テーブルに基づき、受信したパケットの宛先アドレス及び識別IDに基づいて、受信したパケットの宛先アドレスが変換対象のアドレスか否かの判定を行う。パケット複製部230は、変換対象のアドレスを持つパケットについて、再配信テーブルに基づき、必要な分だけ、パケットを複製し、各パケットの宛先IPアドレスをマルチキャストアドレスから該当の宛先IPアドレスに変換し、IF250に渡す。IF250はパケットを送信する。パケット複製部230とIF250を送信部と称してもよい。
 例えば、図4の再配信テーブルを持つSLG(Receiver)200-2が、MCアドレス=224.1.1.1、識別ID=22を付加したパケットを受信した場合、パケット複製部230は、パケットを複製して2つのパケットとし、それぞれ宛先IPアドレスをD、Eに変換して送信する。
 図7は、コントローラ300の機能構成の例を示す図である。図7に示すよう、コントローラ300は、IF310、宛先IP追加要望受信部320、宛先IP追加指示送信部330、記憶部340、IF350を備える。
 IF310はパケットを受信する。宛先IP追加要望受信部320は、IF310を介して、SLG(Sender)100の宛先IP追加要望送信部170から宛先IP追加要望を受信する。記憶部340には、各SLGのIPアドレス情報、各SLG配下に接続されるユーザ端末のIPアドレス情報等が保存されている。
 宛先IP追加指示送信部330は、記憶部340を参照することにより、アドレス追加の依頼を送信する宛先のSLG(Receiver)299のIPアドレスを確認し、アドレス追加の依頼をIF350を介して送信する。IF350はパケットを送信する。宛先IP追加指示送信部330とIF350を送信部と称してもよい。
 <SLG(Sender)100の動作フロー>
 次に、図5に示した構成を備えるSLG(Sender)100の動作例について、図8のフローチャートを参照して説明する。
 S101において、SLG(Sender)100はパケットを受信する。S102において、送信元IP判定部120は、パケットの送信元IPアドレスの登録があるかどうかを確認する。例えば、ゲームサーバ10のIPアドレスが登録されているとすると、送信元IP判定部120は、パケットの送信元がゲームサーバ10であるかどうを判定する。
 登録がある場合、S103に進み、ハッシュ計算部130が、パケットのペイロードをハッシュ化し、S104において、パケットプール部140が、ハッシュ値毎にパケットをプールする。ここで、便宜上、今回の(今回受信した)パケットを格納したプールを「プール1」とする。
 S105において、パケット送信判定部160は、今回のパケットの宛先IPアドレスと同じ宛先IPアドレスのパケットがプール1以外のプール内に既にあるかどうかを判定する。
 S105がYesとなる場合、S106に進む。便宜上、今回のパケットの宛先IPアドレスと同じ宛先IPアドレスのパケットが既にあるプールを「プール2」とする。ここで、「プール2」にあるパケットがゲームサーバ10から先に送られたパケットであり、「プール1」にあるパケットが次に送られたパケットである。
 S106では、先に送られたほうのパケットを対象としている。S106において、パケット送信判定部160は、「プール2」に複数のパケットがあるかどうかを判定する。Yesである場合、S107において、宛先アドレス変換部150は、変換テーブルを参照して、「プール2」内の最初のパケットの宛先を変更し、識別IDを付加し、残りのパケットは廃棄する。S108において、宛先アドレス変換部150は、IF190からパケットを出力し、パケットはマルチキャストプロトコルで転送される。
 S102で登録がない場合、及び、S106でNoとなる場合、S111に進み、ユニキャストでパケットを転送する。
 S105の判定がNoになる場合(受信したパケットの宛先IPアドレスと同じ宛先IPアドレスのパケットが「プール1」以外のプール内にない場合)、S109において、パケット送信判定部160は、「プール1」に、変換テーブルに宛先IPの登録がないパケットがあるかどうかを判定する。言い換えると、パケット送信判定部160は、「プール1」に保存した、S101で受信したパケットの宛先IPアドレスが変換テーブルに登録されているかどうかを判定する。
 S109の判定がNoの場合、S101に戻る。S109の判定がYesの場合、宛先IP追加要望送信部170は、記憶部180に格納されている変換テーブルに該当パケットの宛先IPアドレス、MCアドレス、識別IDを追加するとともに、コントローラ300へ制御通信(C-plane通信)にて宛先IP追加要望を送信する。なお、識別IDは、パケットを保存したプールにより決定することができる。
 (実施例2)
 <全体の構成>
 図9は、実施例2における通信システムの構成と動作を説明するための図である。図9に示すように、本システムには、ゲームサーバ400、送信側のSLG(Sender)500、受信側のSLG(Receiver)600―1~600-3、コントローラ700が備えられ、ネットワーク20(例:インターネット)等により装置間での通信が可能になっている。
 また、SLG(Receiver)600―1~600-3には、ゲームサーバ400により提供されるサービスを利用する複数のユーザ端末が接続されている。各ユーザ端末には、図示のとおりにグローバルIPアドレスが割り当てられている。
 実施例2では、ゲームサーバ400とSGLとが直接連携することで、ゲームサーバ400は、配信する単一データをユニキャストするだけで、対象となる全ユーザ端末にデータを転送することができる。
 各SLGはマルチキャストドメインに所属し、マルチキャストプロトコルに対応しており、SLG同士がマルチキャスト方式のSenderとReceiverになる。また、SLG間のパケット転送については、VLANID等の識別IDを用いることで、VXLAN等によるトンネリングを実施している。
 SLG(Sender)500は、ゲームサーバ400から受信したユニキャストのパケットを、変換テーブルに基づいて、マルチキャストのパケットに変換し、上記のトンネリングを用いてマルチキャストのパケットをSLG(Receiver)600に送信する。SLG(Receiver)600は、再配信テーブルに基づいて、マルチキャストのパケットをユニキャストのパケットに変換し、宛先のユーザ端末に送信する。
 図10に、ゲームサーバ400が保持する配信テーブルの例を示す。図10に示すように、配信テーブルは、コンテンツ、宛先IPアドレス、宛先ポートが対応付けられたテーブルである。図11に、ゲームサーバ400が保持するユーザテーブルの例を示す。図11に示すように、ユーザテーブルは、ユーザ端末のIPアドレス(ユーザIP)、コンテンツが対応付けられたテーブルである。
 図12に、SLG(Sender)500が保持する変換テーブルの例を示す。図12に示すように、変換テーブルは、宛先ポート、マルチキャストアドレス(MCアドレス)、識別IDが対応付けられたテーブルである。識別IDは、ユーザ端末が参加しているルームに対応する。図12は、ルーム(1)のデータに識別ID=21を付与し、ルーム(2)のデータに識別ID=22を付与することを示している。
 図13に、SLG(Receiver)600―3が保持する再配信テーブルの例を示す。図13に示すように、再配信テーブルは、実施例1と同様に、マルチキャストアドレス、識別ID、宛先IPアドレスが対応付けられたテーブルである。
 <動作例>
 図9を参照して実施例2における全体の動作例を説明する。ゲームサーバ400は、配信テーブル(図10)とユーザテーブル(図11)に基づいて、コンテンツ毎(ここではルーム毎の操作データ)に、SLG(Sender)400のIPアドレスの既定のポート宛にユニキャスト送信を行う。図9の例では、ルーム(1)への操作データは宛先ポート=50001宛に送信され、ルーム(2)への操作データは宛先ポート=50002宛に送信される。例えば、ユーザ端末D宛のルーム(2)の操作データが発生した場合、ゲームサーバ400は、配信テーブル(図10)とユーザテーブル(図11)に基づいて、宛先ポート=50002宛に操作データのパケットをユニキャストで送信する。
 ゲームサーバ400から送信されたパケットを受信したSLG(Sender)500は、変換テーブルに基づいて、受信したパケットの宛先ポートからMCアドレスと識別IDを取得し、パケットの宛先を当該MCアドレスに変換するとともに、パケットに識別IDを付与してマルチキャストドメインに送出する。
 ネットワーク20(マルチキャストドメイン)内では、通常のマルチキャストルーティングプロトコルに従ってパケットが転送される。
 受信側のSLGの動作に関して、SLG(Receiver)600-3を例にとって説明する。
 SLG(Receiver)600-3は、マルチキャストで転送されてきたパケットを受信すると、パケットの宛先IPアドレス(マルチキャストアドレス)と識別IDに基づいて、再配信テーブル(図13)から宛先IPアドレスを取得し、受信したパケットの宛先をマルチキャストアドレスから当該宛先IPアドレスに変換し、当該変換をしたパケットを送信する。
 例えば、「マルチキャストアドレス=224.1.1.1、識別ID=21」であるパケットを受信した場合、SLG(Receiver)600-3は、再配信テーブルを参照することにより、宛先IPアドレス=H、Iのユーザ端末宛てにパケットを送信する。
 グローバルIPアドレス=Bのユーザ端末(「ユーザ端末B」と記述する)が、ルーム(1)に新たに参加する場合の動作を図14を参照して説明する。
 S1において、ユーザ端末Bは、ゲームサーバ400に対してルーム1への参加要求(データの配信要求)を送信する。要求に係るパケットは、通常のIPルーティングで転送される。
 参加要求を受信したゲームサーバ400は、S2において、ユーザ端末Bに係るユーザの承認を行った後、ゲームサーバ400内のユーザテーブルにユーザを追加する。図14に示すとおり、「B、ルーム(1)が追加される。なお、既に示した配信テーブル(図10)により、ユーザ端末Bへのデータの宛先ポートは50002となる。
 S3において、ゲームサーバ400は、C-plane通信により、コントローラ700に対して当該ユーザの追加を依頼する。同時にゲームサーバ400は、配信テーブルとユーザテーブルの該当レコードも送信する。具体的には、「ルーム(1)への操作データ、103.1.1.1、50001」、「B、ルーム(1)」が送信される。
 S4において、コントローラ700は、SLG(sender)500の変換テーブルから該当のコンテンツの識別IDを取得する。ここでは、識別IDとして、50001に対応する「21」が取得される。
 S5において、コントローラ500は、ユーザ端末Bが接続されるSLG(Receiver)600-1に対して、再配信テーブルへ登録を指示する。本例では、図14に示すとおり、「224.1.1.1、21、B」が登録される。また、SLG(Receiver)600-1自体がマルチキャストドメインに参加していない場合は、合わせて参加指示を行う。マルチキャストへの参加は各ドメインのプロトコルに依存するが、通常端末がマルチキャストドメインに参加する場合と同様にして参加することができる。これにより、ユーザ端末Bにもルーム(1)のデータが配信されるようになる。
 <実施例2の他方式との比較>
 実施例2の方式をユニキャスト方式と比較すると、実施例2の方式により、中継トラフィックを削減できる。また、NW内でパケットが複製されるため、各ユーザへの遅延が均一化される。
 実施例2の方式をマルチキャスト方式と比較すると、実施例2の方式により、サーバ・端末のマルチキャストアドレスへの対応が不要となるとともに、一つのマルチキャストアドレスで実現可能となる。
 実施例2の方式をトラヒック変換方式と比較すると、実施例2の方式により、サーバが送信するパケットを削減でき、サーバの負荷が軽減する。
 <装置構成>
 以下、実施例2におけるゲームサーバ400、SLG(Sender)500、SLG(Receiver)600、コントローラ700の機能構成の例を説明する。
 図15は、ゲームサーバ400の機能構成の例を示す図である。図4に示すように、ゲームサーバ400は、コンテンツ保存部410、配信部420、記憶部430、要求受付部440、宛先IP追加要望送信部450、IF460を備える。
 コンテンツ保存部410は、各コンテンツデータを保存する。配信部420は、コンテンツデータをパケットにしてIF460を介して送信する。記憶部430は、配信テーブルとユーザテーブルを保存する。要求受付部440は、ユーザ端末からの配信要求(参加要求)を受け付ける。宛先IP追加要望送信部450は、コントローラ700に対して宛先IP追加要望を送信する。IF460はパケットの送受信を行う。
 図16は、SLG(Sender)500の機能構成の例を示す図である。図16に示すよう、SLG(Sender)500は、IF510、パケット受信部520、対象パケット判定部530、アドレス変換部540、記憶部550、コントローラ送受信部560、IF570、IF580を備える。なお、アドレス変換部540とIF580をアドレス変換部と称してもよい。
 IF510、570、580はパケットの送受信を行う。パケット受信部520は、IF510を介してパケットを受信する。対象パケット判定部530は、受信したパケットがマルチキャストパケットへの変換の対象となるパケットか否かを判定する。
 アドレス変換部540は、変換テーブルに基づき、パケットの宛先をマルチキャストアドレスに変換するとともに、パケットに識別IDを付与し、IF580を介して送信する。
記憶部550は変換テーブルを保存する。コントローラ送受信部560は、コントローラ700宛に情報を送信するととともに、コントローラ700から情報を受信する。
 図17は、SLG(Receiver)600の機能構成の例を示す図である。図17に示すよう、SLG(Receiver)600は、IF610、MCアドレス判定部620、パケット複製部630、記憶部640、IF650を備える。
 IF610は、パケットを受信する。記憶部640は、再配信テーブルを保存する。MCアドレス判定部620は、再配信テーブルに基づき、受信したパケットの宛先アドレス及び識別IDに基づいて、受信したパケットの宛先アドレスが変換対象のアドレスか否かの判定を行う。パケット複製部630は、変換対象のアドレスを持つパケットについて、再配信テーブルに基づき、必要な分だけパケットを複製し、各パケットの宛先IPアドレスをマルチキャストアドレスから該当の宛先IPアドレスに変換し、IF650に渡す。IF650はパケットを送信する。パケット複製部630とIF650を送信部と称してもよい。
 図18は、コントローラ700の機能構成の例を示す図である。図18に示すよう、コントローラ700は、IF710、宛先IP追加要望受信部720、宛先IP追加指示送信部730、記憶部740、SLG(Sender)送受信部750、IF760、IF770を備える。
 IF710、760、770はパケットの送受信を行う。宛先IP追加要望受信部720は、SLG(Sender)600の宛先IP追加要望送信部450からIF710を介してパケットを受信する。
 記憶部740は、各SLGのIPアドレス情報や配下に接続されるユーザ端末のIPアドレス情報を保存する。宛先IP追加指示送信部730は、記憶部740から、指示を送信する宛先のSLG(Receiver)のIPアドレスを取得し、当該宛先にアドレス追加の依頼を送付する。宛先IP追加指示送信部730とIF760を送信部と称してもよい。SLG(Sender)送受信部750は、SLG(sender)500宛に情報を送信するとともに、SLG(sender)500から情報を受信する。
 (ハードウェア構成例)
 ゲームサーバ10、400、実施例1、2の各SLG、コントローラ300、700はいずれも、例えば、コンピュータにプログラムを実行させることにより実現できる。このコンピュータは、物理的なコンピュータであってもよいし、仮想マシンであってもよい。この「コンピュータ」は、ルータやスイッチ等に含まれるCPUとメモリ等からなる構成であってもよい。SLGを通信装置と称してもよい。
 すなわち、当該装置(ゲームサーバ10、400、実施例1、2の各SLG、コントローラ300、700)は、コンピュータに内蔵されるCPUやメモリ等のハードウェア資源を用いて、当該装置で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
 図19は、上記コンピュータのハードウェア構成例を示す図である。図19のコンピュータは、それぞれバスBで相互に接続されているドライブ装置1000、補助記憶装置1002、メモリ装置1003、CPU1004、インタフェース装置1005、表示装置1006、及び入力装置1007等を有する。
 当該コンピュータでの処理を実現するプログラムは、例えば、CD-ROM又はメモリカード等の記録媒体1001によって提供される。プログラムを記憶した記録媒体1001がドライブ装置1000にセットされると、プログラムが記録媒体1001からドライブ装置1000を介して補助記憶装置1002にインストールされる。但し、プログラムのインストールは必ずしも記録媒体1001より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置1002は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
 メモリ装置1003は、プログラムの起動指示があった場合に、補助記憶装置1002からプログラムを読み出して格納する。CPU1004は、メモリ装置1003に格納されたプログラムに従って、当該装置に係る機能を実現する。インタフェース装置1005は、ネットワークに接続するためのインタフェースとして用いられ、ネットワークを介した入力手段及び出力手段として機能する。表示装置1006はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置157はキーボード及びマウス、ボタン、又はタッチパネル等で構成され、様々な操作指示を入力させるために用いられる。
 (実施の形態のまとめ)
 本明細書には、少なくとも下記各項の通信装置、受信側通信装置、通信方法、及びプログラムが開示されている。
(第1項)
 変換テーブルを格納する記憶部と、
 サーバからユーザ端末宛のパケットを受信する受信部と、
 前記変換テーブルに基づいて、前記パケットの宛先アドレスをマルチキャストアドレスに変換するとともに、当該パケットに、前記ユーザ端末が属するグループを識別する識別IDを付与し、当該識別IDが付与されたパケットを送信するアドレス変換部と
 を備える通信装置。
(第2項)
 前記受信部が、新たにグループに参加したユーザ端末宛のパケットを前記サーバから受信した場合に、当該グループに対応する識別IDと、当該ユーザ端末宛のIPアドレスとを登録することを要求する登録要求をコントローラに送信する送信部
 を更に備える第1項に記載の通信装置。
(第3項)
 変換テーブルを格納する記憶部と、
 サーバから特定のポート宛のパケットを受信する受信部と、
 前記変換テーブルに基づいて、前記パケットの宛先アドレスをマルチキャストアドレスに変換するとともに、当該パケットに、前記特定のポートに対応するグループを識別する識別IDを付与し、当該識別IDが付与されたパケットを送信するアドレス変換部と
 を備える通信装置。
(第4項)
 第1項ないし第3項のうちいずれか1項に記載の前記通信装置から送信されたパケットを受信する受信側通信装置であって、
 前記受信したパケットに付与されている識別IDに対応するIPアドレスを持つ1以上のユーザ端末に、当該IPアドレスを宛先としたパケットを送信する送信部
 を備える受信側通信装置。
(第5項)
 第4項に記載の前記受信側通信装置に対して、マルチキャストアドレス、識別ID、及び宛先IPアドレスとを登録することを要求する登録要求を送信する送信部
 を備えるコントローラ。
(第6項)
 変換テーブルを格納する記憶部を備える通信装置が実行する通信方法であって、
 サーバからユーザ端末宛のパケットを受信するステップと、
 前記変換テーブルに基づいて、前記パケットの宛先アドレスをマルチキャストアドレスに変換するとともに、当該パケットに、前記ユーザ端末が属するグループを識別する識別IDを付与し、当該識別IDが付与されたパケットを送信するステップと
 を備える通信方法。
(第7項)
 変換テーブルを格納する記憶部を備える通信装置が実行する通信方法であって、
 サーバから特定のポート宛のパケットを受信するステップと、
 前記変換テーブルに基づいて、前記パケットの宛先アドレスをマルチキャストアドレスに変換するとともに、当該パケットに、前記特定のポートに対応するグループを識別する識別IDを付与し、当該識別IDが付与されたパケットを送信するステップと
 を備える通信方法。
(第8項)
 コンピュータを、第1項ないし第3項のうちいずれか1項に記載の前記通信装置における各部として機能させるためのプログラム。
 以上、本実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
10、400 ゲームサーバ
20 ネットワーク
100、200、500、600 SLG
300、700 コントローラ
110、190 IF
120 送信元IP判定部
130 ハッシュ計算部
140 パケットプール部
150 宛先アドレス変換部
160 パケット送信判定部
170 宛先IP追加要望送信部
180 記憶部
210、250 IF
220 MCアドレス判定部
230 パケット複製部
240 記憶部
310、350 IF
320 宛先IP追加要望受信部
330 宛先IP追加指示送信部
340 記憶部
410 コンテンツ保存部
420 配信部
430 記憶部
440 要求受付部
450 宛先IP追加要望送信部
460 IF
510、570、580 IF
520 パケット受信部
530 対象パケット判定部
540 アドレス変換部
550 記憶部
560 コントローラ送受信部
610、650 IF
620 MCアドレス判定部
630 パケット複製部
640 記憶部
710、760、770 IF
720 宛先IP追加要望受信部
730 宛先IP追加指示送信部
740 記憶部
750 SLG(Sender)送受信部
1000 ドライブ装置
1001 記録媒体
1002 補助記憶装置
1003 メモリ装置
1004 CPU
1005 インタフェース装置
1006 表示装置
1007 入力装置

Claims (8)

  1.  変換テーブルを格納する記憶部と、
     サーバからユーザ端末宛のパケットを受信する受信部と、
     前記変換テーブルに基づいて、前記パケットの宛先アドレスをマルチキャストアドレスに変換するとともに、当該パケットに、前記ユーザ端末が属するグループを識別する識別IDを付与し、当該識別IDが付与されたパケットを送信するアドレス変換部と
     を備える通信装置。
  2.  前記受信部が、新たにグループに参加したユーザ端末宛のパケットを前記サーバから受信した場合に、当該グループに対応する識別IDと、当該ユーザ端末宛のIPアドレスとを登録することを要求する登録要求をコントローラに送信する送信部
     を更に備える請求項1に記載の通信装置。
  3.  変換テーブルを格納する記憶部と、
     サーバから特定のポート宛のパケットを受信する受信部と、
     前記変換テーブルに基づいて、前記パケットの宛先アドレスをマルチキャストアドレスに変換するとともに、当該パケットに、前記特定のポートに対応するグループを識別する識別IDを付与し、当該識別IDが付与されたパケットを送信するアドレス変換部と
     を備える通信装置。
  4.  請求項1ないし3のうちいずれか1項に記載の前記通信装置から送信されたパケットを受信する受信側通信装置であって、
     前記受信したパケットに付与されている識別IDに対応するIPアドレスを持つ1以上のユーザ端末に、当該IPアドレスを宛先としたパケットを送信する送信部
     を備える受信側通信装置。
  5.  請求項4に記載の前記受信側通信装置に対して、マルチキャストアドレス、識別ID、及び宛先IPアドレスとを登録することを要求する登録要求を送信する送信部
     を備えるコントローラ。
  6.  変換テーブルを格納する記憶部を備える通信装置が実行する通信方法であって、
     サーバからユーザ端末宛のパケットを受信するステップと、
     前記変換テーブルに基づいて、前記パケットの宛先アドレスをマルチキャストアドレスに変換するとともに、当該パケットに、前記ユーザ端末が属するグループを識別する識別IDを付与し、当該識別IDが付与されたパケットを送信するステップと
     を備える通信方法。
  7.  変換テーブルを格納する記憶部を備える通信装置が実行する通信方法であって、
     サーバから特定のポート宛のパケットを受信するステップと、
     前記変換テーブルに基づいて、前記パケットの宛先アドレスをマルチキャストアドレスに変換するとともに、当該パケットに、前記特定のポートに対応するグループを識別する識別IDを付与し、当該識別IDが付与されたパケットを送信するステップと
     を備える通信方法。
  8.  コンピュータを、請求項1ないし3のうちいずれか1項に記載の前記通信装置における各部として機能させるためのプログラム。
PCT/JP2020/007460 2020-02-25 2020-02-25 通信装置、受信側通信装置、通信方法、及びプログラム WO2021171364A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/759,871 US20230119073A1 (en) 2020-02-25 2020-02-25 Communication apparatus, receiving side communication apparatus, communication method and program
PCT/JP2020/007460 WO2021171364A1 (ja) 2020-02-25 2020-02-25 通信装置、受信側通信装置、通信方法、及びプログラム
JP2022502367A JPWO2021171364A1 (ja) 2020-02-25 2020-02-25

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/007460 WO2021171364A1 (ja) 2020-02-25 2020-02-25 通信装置、受信側通信装置、通信方法、及びプログラム

Publications (1)

Publication Number Publication Date
WO2021171364A1 true WO2021171364A1 (ja) 2021-09-02

Family

ID=77490807

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/007460 WO2021171364A1 (ja) 2020-02-25 2020-02-25 通信装置、受信側通信装置、通信方法、及びプログラム

Country Status (3)

Country Link
US (1) US20230119073A1 (ja)
JP (1) JPWO2021171364A1 (ja)
WO (1) WO2021171364A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011147025A (ja) * 2010-01-15 2011-07-28 Fujitsu Ltd 配信装置、配信プログラムおよび配信方法
JP2019017004A (ja) * 2017-07-07 2019-01-31 中華電信股▲分▼有限公司 OpenFlowプロトコルとUDPポート番号アドレス変換を用いてマルチキャストパケットに非マルチキャストネットワークをトラバースさせるシステム及び方法
JP2019075741A (ja) * 2017-10-18 2019-05-16 日本電信電話株式会社 トラヒック変換方法、配信システム、ユニキャスト・マルチキャスト変換装置、マルチキャスト・ユニキャスト変換装置、ユニキャスト・マルチキャスト変換プログラム、及びマルチキャスト・ユニキャスト変換プログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4728511B2 (ja) * 2001-06-14 2011-07-20 古河電気工業株式会社 データ中継方法、その装置およびその装置を用いたデータ中継システム
US8649309B2 (en) * 2008-01-24 2014-02-11 Samsung Electronics Co., Ltd. Apparatus and method for creating data path for broadcasting service in cellular network
US10491591B2 (en) * 2015-04-02 2019-11-26 Telefonaktiebolaget Lm Ericsson (Publ) Enhanced network security
CN109391500B (zh) * 2017-08-11 2021-08-31 华为技术有限公司 一种配置管理方法、装置及设备
JP2019096924A (ja) * 2017-11-17 2019-06-20 富士通株式会社 伝送装置、および伝送方法
US10581738B2 (en) * 2018-01-19 2020-03-03 Cisco Technology, Inc. Efficient inter-VLAN routing in openflow networks
US10439935B2 (en) * 2018-02-26 2019-10-08 Verizon Patent And Licensing Inc. Systems and methods for providing external services to core network traffic
US10924401B2 (en) * 2019-05-15 2021-02-16 International Business Machines Corporation Live application and kernel migration using routing table entries

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011147025A (ja) * 2010-01-15 2011-07-28 Fujitsu Ltd 配信装置、配信プログラムおよび配信方法
JP2019017004A (ja) * 2017-07-07 2019-01-31 中華電信股▲分▼有限公司 OpenFlowプロトコルとUDPポート番号アドレス変換を用いてマルチキャストパケットに非マルチキャストネットワークをトラバースさせるシステム及び方法
JP2019075741A (ja) * 2017-10-18 2019-05-16 日本電信電話株式会社 トラヒック変換方法、配信システム、ユニキャスト・マルチキャスト変換装置、マルチキャスト・ユニキャスト変換装置、ユニキャスト・マルチキャスト変換プログラム、及びマルチキャスト・ユニキャスト変換プログラム

Also Published As

Publication number Publication date
JPWO2021171364A1 (ja) 2021-09-02
US20230119073A1 (en) 2023-04-20

Similar Documents

Publication Publication Date Title
JP4464766B2 (ja) マルチキャスト配信制御装置
JP3925188B2 (ja) アプリケーションレイヤ・マルチキャスト方法及び中継ノードシステム
JP4077330B2 (ja) データ生成装置
US7577141B2 (en) Communication system
US7388877B2 (en) Packet transfer apparatus
JP2008079175A (ja) フレーム転送システム
JP5962676B2 (ja) 情報処理装置、情報処理方法及びプログラム
CN101252529A (zh) 一种组播报文的转发方法和设备
JP4476839B2 (ja) データ配信システム、中継装置、データ配信方法
JPH11313059A (ja) マルチキャスト通信方法及びそのシステム並びにマルチキャスト通信プログラムを記録した記録媒体
WO2014014909A1 (en) Control system for conferencing applications in named-data networks
US10708196B2 (en) Modifications of headend forwarding rules to join wide area network branch hosts to multicast groups
JP2006074132A (ja) マルチキャスト通信方法及びゲートウェイ装置
JP4494279B2 (ja) マルチキャスト制御方法、マルチキャスト制御装置、及びコンテンツ属性情報管理装置、並びにプログラム
JP2008060631A (ja) 通信装置及びマルチキャストユーザ認証方法
WO2021171364A1 (ja) 通信装置、受信側通信装置、通信方法、及びプログラム
JP2002064558A (ja) Ipマルチキャスト経路制御方法およびルータ
JP3782272B2 (ja) マルチキャストシステム、管理サーバ、マルチキャストグループ管理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP5553425B2 (ja) マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法
JP2004129159A (ja) パケット変換方法、パケット通信システム、パケット変換装置、パケット変換プログラムおよび記録媒体
JP4361446B2 (ja) マルチキャスト制御方法、マルチキャストエリア管理装置、及びマルチキャスト制御装置、並びにプログラム
JP6371321B2 (ja) 通信システム、及びパケット転送方法
US20050195805A1 (en) Traffic distribuiton method and traffic distribution system of IP key telephone
JP5713499B2 (ja) 多地点配信方法及び多地点配信システム
JP2009070172A (ja) コンテンツ分散保存システム、提供元サーバ装置登録方法、ノード装置、及びノード処理プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20921295

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022502367

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20921295

Country of ref document: EP

Kind code of ref document: A1