WO2009101962A1 - 通信システム、通信方法、情報記録媒体、ならびに、プログラム - Google Patents

通信システム、通信方法、情報記録媒体、ならびに、プログラム Download PDF

Info

Publication number
WO2009101962A1
WO2009101962A1 PCT/JP2009/052283 JP2009052283W WO2009101962A1 WO 2009101962 A1 WO2009101962 A1 WO 2009101962A1 JP 2009052283 W JP2009052283 W JP 2009052283W WO 2009101962 A1 WO2009101962 A1 WO 2009101962A1
Authority
WO
WIPO (PCT)
Prior art keywords
communication
terminal device
router
computer
terminal
Prior art date
Application number
PCT/JP2009/052283
Other languages
English (en)
French (fr)
Inventor
Shoji Mori
Original Assignee
Konami Digital Entertainment 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 Konami Digital Entertainment Co., Ltd. filed Critical Konami Digital Entertainment Co., Ltd.
Priority to CN2009801000557A priority Critical patent/CN101785248B/zh
Priority to US12/867,744 priority patent/US8560676B2/en
Publication of WO2009101962A1 publication Critical patent/WO2009101962A1/ja

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/75Enforcing rules, e.g. detecting foul play or generating lists of cheating players
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • A63F13/12
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/31Communication aspects specific to video games, e.g. between several handheld game devices at close range
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/71Game security or game management aspects using secure communication between game devices and game servers, e.g. by encrypting game data or authenticating players
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • A63F13/335Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using Internet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/402Communication between platforms, i.e. physical link to protocol
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/407Data transfer via internet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/532Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing using secure communication, e.g. by encryption, authentication
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5586Details of game data or player data management for enforcing rights or rules, e.g. to prevent foul play

Definitions

  • the present invention relates to a communication system and a communication method suitable for detecting fraud such as a user using a router device trying to invalidate a result of a communication battle by changing the setting of the router device in a communication battle game.
  • the present invention also relates to a computer-readable information recording medium that records a program that realizes these on a computer, and the program.
  • a terminal device used by a user first connects to a server device called a lobby server and introduces an opponent. Then, after the opponent is determined, the terminal devices perform peer-to-peer communication to play a communication battle game, never win or lose, and report the battle result to the server device. Further, from the viewpoint of the spread of home LAN (Local Area Network) and network security, it is becoming common for a terminal apparatus to connect to the Internet via a router apparatus or a firewall.
  • LAN Local Area Network
  • patent document 1 respond corresponds to such an action by specifying in which terminal device in battle the cause of the failure of communication exists.
  • each terminal device tries communication with another communication device such as a lobby server when communication fails while performing a battle with the opponent's terminal device, and if this succeeds, the terminal device of the opponent If there is a failure, it is determined that there is a failure between itself and the computer communication network. And according to the said technique, the presence or absence of the said fault can be made into the criterion of a cheat action of a user.
  • the present invention solves the above-described problems, and a user who uses a router device attempts to invalidate the result of the communication battle by changing the setting of the router device in the communication battle game. It is an object of the present invention to provide a communication system suitable for detection, a communication method, a computer-readable information recording medium in which a program for realizing the above in a computer is recorded, and the program.
  • a communication system includes a first terminal device connected to a computer communication network via a first router device, and a second terminal device connected to the computer communication network via a second router device.
  • each of the first terminal device and the second terminal device includes a counterparty communication unit, a router identifier acquisition unit, a router communication unit, and a status transmission unit.
  • the partner communication unit communicates with the communication partner via the router device to which the terminal device is connected.
  • the opponent communication unit is responsible for communication processing for realizing a battle between players in a network communication battle game.
  • the router identifier acquisition unit acquires the communication identifier of the router device to which the communication partner is connected.
  • the communication identifier typically means an IP address and a port number.
  • route information through which the packet passes is described in the packet. From this, it is possible to know the router device of the communication partner.
  • the IP address related to the introduction corresponds to the IP address itself of the router device of the communication partner.
  • the introduced IP address itself is the communication identifier of the router device, and the introduced IP address and port number pair is the communication partner's terminal device. It corresponds to a communication identifier.
  • the router communication unit communicates with the router device having the acquired communication identifier.
  • communication with a communication partner is typically performed in accordance with a predetermined communication battle protocol using an IP address and a port number.
  • the router communication unit determines whether or not communication to the router device is possible.
  • the communication identifier of the router device to which the communication partner is connected is an IP address, for example, by transmitting a packet based on the PING protocol to the router device and examining its response It is possible to check whether communication with the router device is possible.
  • the status transmission unit determines whether communication from the counterpart communication unit to the communication partner is successful, and whether communication from the router communication unit to the router device to which the communication partner is connected is successful. Is transmitted to the server device at a predetermined timing.
  • the connection status information specifies whether the communication by the router communication unit is successful or not It may be limited only when communication with the communication partner has failed.
  • the predetermined timing when communication with the communication partner fails at regular intervals, when the battle with the communication partner is finished and the battle result is reported, or an appropriate combination thereof is considered. It is done.
  • the server device has a situation receiving unit and a fraud determination unit.
  • the status receiving unit receives the connection status information transmitted from the first terminal device and the connection status information transmitted from the second terminal device.
  • the connection status information is transmitted at a predetermined timing as described above, and the status receiving unit stores the latest connection status information received from both terminal devices in a RAM (Random Access Memory) or the like. It is typical to do.
  • the fraud determination unit based on the received connection status information from the first terminal device and the connection status information from the second terminal device, (1) Communication from the first terminal device to the second terminal device succeeds, communication from the second terminal device to the first terminal device fails, and communication from the second terminal device to the first router device succeeds. Is determined that the user of the first terminal device has cheated, (2) Communication from the second terminal device to the first terminal device succeeds, communication from the first terminal device to the second terminal device fails, and communication from the first terminal device to the second router device succeeds. If it is specified that the user is using the second terminal device, it is determined that there is an illegal act.
  • connection status information from both terminal devices has reached the server device, it is between the first terminal device and the first router device and the Internet, and between the second terminal device and the second router device and the Internet. It is considered that there is no mechanical failure (cable disconnected, power off, etc.).
  • a typical example assumed as an illegal act performed by the users of both terminal apparatuses is “a filtering rule that rejects inflow of packets from the terminal apparatus of the communication partner when the communication battle is considered disadvantageous. It is a cheat action such that the match is impossible and the match result is invalidated by temporarily adopting.
  • the user who uses a router apparatus can detect as much as possible fraud, such as trying to invalidate the result of a communication battle by changing the setting of a router apparatus in a communication battle game. .
  • the fraud determination unit can be configured as follows. (3) When the connection status information to be transmitted from the first terminal device is not received for a predetermined period and the connection status information to be transmitted from the second terminal device is received during the predetermined period, the first terminal device Determined that the user was cheating, (4) When the connection status information to be transmitted from the second terminal device is not received during the predetermined period, and the connection status information to be transmitted from the first terminal device is received during the predetermined period, the second terminal It is determined that the user of the device has cheated.
  • the present invention relates to a preferred embodiment of the above invention, and a typical example assumed as a fraudulent act performed by a user in the above (3) and (4) is “When a communication battle is considered disadvantageous, its own terminal device This is a cheat action such as making the battle impossible and making the battle result invalid by disabling communication.
  • the user who uses the router device changes the setting of the router device in the communication battle game, turns off the power, or disconnects the connection, thereby invalidating the result of the communication battle. It will be possible to detect as much as possible.
  • the communication system of the present invention can be configured as follows.
  • the partner communication unit designates the sending information that has failed to be transmitted to the communication partner as the connection status information and transmits it to the server device.
  • connection status information The communication with the communication partner by the counterpart communication unit has failed, and the router communication unit has successfully communicated with the router to which the communication partner is connected.
  • the server device further includes an information relay unit, and when the condition (1) is satisfied, the information relay unit transmits the sending information specified in the connection status information from the second terminal device to the first terminal device. If the condition (2) is satisfied, the sending information specified in the connection status information from the first terminal device is transmitted to the second terminal device, and the sending information is relayed.
  • the contents of the packet that failed to be transmitted to the terminal device determined to be performing an illegal act are transmitted from the server device.
  • each of the first terminal device and the second terminal device further includes an information receiving unit, the information receiving unit receives the sending information transmitted from the server device, and the counterpart communication unit is an information receiving unit. It is assumed that the sending information received by is communicated from the communication partner.
  • the packet that was supposed to be sent from the other party does not arrive for some reason (typically by cheating), is relayed from the server device, and if this is received, the battle continues based on the sent information To do.
  • the cheating action as described above occurs, the fraudulent act on the perpetrator side can be detected, but the communication battle is continued via the server device.
  • the game can continue as if no action occurred.
  • a communication method includes a first terminal device connected to a computer communication network via a first router device, and a second terminal connected to the computer communication network via a second router device. And a server device connected to the computer communication network, the first terminal device, the second terminal device, a first router device, a computer communication network, a second router device, The first terminal device and the second terminal device each include a counterpart communication unit, a router identifier acquisition unit, a router communication unit, and a status transmission unit, and a server device.
  • the communication method includes a counterparty communication process, a router identifier acquisition process, a router communication process, a situation transmission process, a situation reception process, and a fraud determination process, and is configured as follows. .
  • the partner communication unit communicates with the communication partner via the router device to which the terminal device is connected.
  • the router identifier acquisition unit acquires the communication identifier of the router device to which the communication counterpart is connected. If the communication with the communication partner fails after successful communication, the router communication unit communicates with the router device having the acquired communication identifier.
  • the status transmission step communication with the communication partner is performed in the partner communication step. Connection status information that specifies whether or not communication to the router device to which the communication partner is connected in the router communication step is successful. To the server apparatus at the timing.
  • the status receiving unit receives the connection status information transmitted from the first terminal device and the connection status information transmitted from the second terminal device, and in the fraud determination step.
  • the fraud determination unit receives the connection status information from the first terminal device and the connection status information from the second terminal device. (1) Communication from the first terminal device to the second terminal device succeeds, communication from the second terminal device to the first terminal device fails, and communication from the second terminal device to the first router device succeeds. Is determined that the user of the first terminal device has cheated, (2) Communication from the second terminal device to the first terminal device succeeds, communication from the first terminal device to the second terminal device fails, and communication from the first terminal device to the second router device succeeds. If it is specified that the user is using the second terminal device, it is determined that there is an illegal act.
  • a program according to another aspect of the present invention causes a first terminal computer to function as a first terminal device of the communication system, and a second terminal computer to function as a second terminal device of the communication system, And a server program that causes the server computer to function as a server device of the communication system.
  • program of the present invention can be recorded on a computer-readable information storage medium such as a compact disk, flexible disk, hard disk, magneto-optical disk, digital video disk, magnetic tape, and semiconductor memory.
  • a computer-readable information storage medium such as a compact disk, flexible disk, hard disk, magneto-optical disk, digital video disk, magnetic tape, and semiconductor memory.
  • the above program can be distributed and sold via a computer communication network independently of the computer on which the program is executed.
  • the information storage medium can be distributed and sold independently from the computer.
  • a communication system suitable for detecting fraud such as a user using a router device attempting to invalidate a result of a communication battle by changing the setting of the router device in a communication battle game, It is possible to provide a communication method, a computer-readable information recording medium in which a program for realizing these in a computer is recorded, and the program.
  • Information processing apparatus 101
  • CPU 102
  • ROM 103
  • RAM 104
  • Controller 105
  • Controller 106
  • External Memory 107
  • Image Processing Unit 108
  • DVD-ROM Drive 109
  • Voice processing part 111
  • Microphone 201
  • Communication system 211
  • 1st terminal device 212
  • 1st router apparatus 221 2nd terminal apparatus 222
  • Server apparatus 241
  • Terminal apparatus 502
  • Counterpart communication part 503
  • Router identifier acquisition part 504
  • Router communication part 505 status transmission unit
  • 506 information reception unit 701 status reception unit 702 fraud determination unit
  • 703 information relay unit 703 information relay unit
  • the communication system according to the present embodiment is set so that a predetermined program operates on a server computer connected to a computer communication network such as the Internet to function as a server device and can communicate with a terminal device such as a mobile phone or a mobile game device. It is realized by doing.
  • the terminal device and the server device are different in processing capability, the fundamental operation principle and configuration are common. Therefore, in the following, the outline of the information processing apparatus will be described, and differences between the case where the information processing apparatus is applied to a terminal apparatus and a server apparatus will be described as appropriate accordingly.
  • FIG. 1 is a schematic diagram illustrating a schematic configuration of a typical information processing apparatus that can function as a server apparatus or a terminal apparatus according to the present embodiment by executing a program.
  • a description will be given with reference to FIG. 1
  • the information processing apparatus 100 includes a CPU (Central Processing Unit) 101, a ROM 102, a RAM (Random Access Memory) 103, an interface 104, a controller 105, an external memory 106, an image processing unit 107, and a DVD-ROM.
  • a (Digital Versatile Disc ROM) drive 108, a NIC (Network Interface Card) 109, an audio processing unit 110, and a microphone 111 can be provided.
  • Various input / output devices can be omitted as appropriate.
  • a DVD-ROM storing a game program and data is loaded into the DVD-ROM drive 108 and the information processing apparatus 100 is turned on to execute the program, thereby realizing the server apparatus of the present embodiment.
  • the terminal device of this embodiment is implement
  • the NIC 109 is a wireless LAN card in a situation where a home wireless LAN is set.
  • a server device is typically connected to the Internet as a wired LAN card.
  • An access point device accessed by a wireless LAN card included in a terminal device has a router function or is connected to the Internet via another router device, so that communication between the terminal device and the server device is possible.
  • the CPU 101 controls the overall operation of the information processing apparatus 100 and is connected to each component to exchange control signals and data.
  • the CPU 101 uses arithmetic operations such as addition / subtraction / multiplication / division, logical sum, logical product using ALU (Arithmetic Logic Unit) (not shown) for a storage area called a register (not shown) that can be accessed at high speed.
  • Logic operations such as logical negation, bit operations such as bit sum, bit product, bit inversion, bit shift, and bit rotation can be performed.
  • the CPU 101 itself is configured and can be implemented with a coprocessor so that saturation operations such as addition, subtraction, multiplication, division, etc. for multimedia processing, and trigonometric functions, etc., can be performed at high speed. There is.
  • the ROM 102 records an IPL (Initial Program Loader) that is executed immediately after the power is turned on, and when this is executed, the program recorded on the DVD-ROM is read into the RAM 103 and the execution by the CPU 101 is started.
  • the ROM 102 stores an operating system program and various data necessary for operation control of the entire information processing apparatus 100.
  • the RAM 103 is for temporarily storing data and programs, and holds programs and data read from the DVD-ROM and other data necessary for game progress and chat communication.
  • the CPU 101 provides a variable area in the RAM 103, performs an operation by directly operating the ALU on the value stored in the variable, or temporarily stores the value stored in the RAM 103 in a register. Perform operations such as performing operations on registers and writing back the operation results to memory.
  • the controller 105 connected via the interface 104 receives an operation input performed when the user executes the game.
  • the external memory 106 detachably connected via the interface 104 stores data indicating game play status (past results, etc.), data indicating game progress, and log of chat communication in the case of a network match ( Data) is stored in a rewritable manner. The user can record these data in the external memory 106 as appropriate by inputting an instruction via the controller 105.
  • the DVD-ROM drive 108 On the DVD-ROM mounted on the DVD-ROM drive 108, a program for realizing the game and image data and sound data associated with the game are recorded. Under the control of the CPU 101, the DVD-ROM drive 108 performs a reading process on the DVD-ROM mounted thereon, reads necessary programs and data, and these are temporarily stored in the RAM 103 or the like.
  • the image processing unit 107 processes the data read from the DVD-ROM by the CPU 101 or an image arithmetic processor (not shown) included in the image processing unit 107, and then processes the processed data in a frame memory ( (Not shown).
  • the image information recorded in the frame memory is converted into a video signal at a predetermined synchronization timing and output to a monitor (not shown) connected to the image processing unit 107. Thereby, various image displays are possible.
  • the image calculation processor can execute a two-dimensional image overlay calculation, a transparency calculation such as ⁇ blending, and various saturation calculations at high speed.
  • polygon information arranged in the virtual three-dimensional space and added with various texture information is rendered by the Z buffer method, and the polygon arranged in the virtual three-dimensional space from the predetermined viewpoint position is determined in the direction of the predetermined line of sight It is also possible to perform high-speed execution of operations for obtaining rendered images.
  • the CPU 101 and the image arithmetic processor work together to draw a character string as a two-dimensional image in the frame memory or on each polygon surface according to the font information that defines the character shape. is there.
  • the NIC 109 is used to connect the information processing apparatus 100 to a computer communication network (not shown) such as the Internet, and conforms to the 10BASE-T / 100BASE-T standard used when configuring a LAN.
  • Analog modem for connecting to the Internet using a telephone line, ISDN (Integrated Services Digital Network) modem, ADSL (Asymmetric Digital Subscriber Line) modem, cable modem for connecting to the Internet using a cable television line, etc. These are configured by an interface (not shown) that mediates between these and the CPU 101.
  • the audio processing unit 110 converts audio data read from the DVD-ROM into an analog audio signal and outputs it from a speaker (not shown) connected thereto. Also, under the control of the CPU 101, sound effects and music data to be generated during the progress of the game are generated, and the corresponding sound is output from a speaker, headphones (not shown), and earphones (not shown). Output.
  • the audio processing unit 110 converts the MIDI data into PCM data with reference to the sound source data included in the audio data. If the compressed audio data is in ADPCM format or Ogg Vorbis format, it is expanded and converted to PCM data.
  • the PCM data can be output by performing D / A (Digital / Analog) conversion at a timing corresponding to the sampling frequency and outputting it to a speaker.
  • a microphone 111 can be connected to the information processing apparatus 100 via the interface 104.
  • the analog signal from the microphone 111 is subjected to A / D conversion at an appropriate sampling frequency so that processing such as mixing in the sound processing unit 110 can be performed as a PCM format digital signal.
  • the information processing apparatus 100 uses a large-capacity external storage device such as a hard disk to perform the same function as the ROM 102, the RAM 103, the external memory 106, the DVD-ROM attached to the DVD-ROM drive 108, and the like. You may comprise.
  • a large-capacity external storage device such as a hard disk to perform the same function as the ROM 102, the RAM 103, the external memory 106, the DVD-ROM attached to the DVD-ROM drive 108, and the like. You may comprise.
  • a keyboard for receiving a character string editing input from a user a mouse for receiving various position designations and selection inputs, and the like are connected.
  • a general-purpose personal computer can be used instead of the information processing apparatus 100 of the present embodiment.
  • the server device and the terminal device are realized by executing the program by the information processing device 100, but may be realized on a general computer. This is because the information processing apparatus 100 and a general computer are not greatly different in configuration and function. As described above, in the present application, a general computer and the information processing apparatus 100 will be described in the same manner.
  • a general computer includes a CPU, a RAM, a ROM, a DVD-ROM drive, and a NIC as in the information processing apparatus 100 corresponding to a so-called consumer game apparatus, and has a simpler function than the information processing apparatus 100.
  • a hard disk as an external storage device
  • a flexible disk a magneto-optical disk, a magnetic tape, and the like can be used.
  • the controller 105 not the controller 105 but a keyboard or a mouse is used as an input device.
  • the present invention can be realized by appropriately using these various devices as platforms for realizing terminal devices and server devices. Can be realized.
  • FIG. 2 is an explanatory diagram showing a schematic configuration of the communication system according to the present embodiment.
  • a description will be given with reference to FIG.
  • the communication system 201 includes a first terminal device 211, a second terminal device 221, and a server device 231 that can communicate with each other via the Internet 241.
  • the first terminal device 211 is connected to the Internet 241 via the first router device 212
  • the second terminal device 221 is connected to the Internet 241 via the second router device 222.
  • the first router device 212 is a boundary between the Internet 241 and the home LAN where the first terminal device 211 exists, and functions as a gateway / firewall / address / port number conversion device.
  • the second router device 222 becomes a boundary between the Internet 241 and the home LAN where the second terminal device 221 exists, and functions as a gateway / firewall / address / port number conversion device.
  • a predetermined terminal program operates in the first terminal device 211 and the second terminal device 221, a predetermined terminal program operates.
  • This terminal program realizes a communication battle game.
  • the online battle game proceeds in the following procedure.
  • the first terminal device 211 applies for introduction of the opponent to the server device 231 which is a lobby server.
  • the IP address of the server device 231 is represented as “S”
  • the port number for introduction application is represented as “V”
  • the communication destination is represented as “S / V”.
  • the server device 231 acquires the IP address (hereinafter referred to as “R1”) of the first router device 212 as the identification information of the first terminal device 211 seeking the opponent.
  • the server device 231 acquires the IP address (hereinafter referred to as “R2”) of the second router device 222.
  • R1 and R2 are the IP addresses of the first router device 212 and the second router device 222
  • the address is converted and the notification is relayed to the first terminal device 211 and the second terminal device 221. That is, a notification introducing R2 arrives at the port number P of the first terminal device 211, and a notification introducing R1 arrives at the port number P of the second terminal device 221.
  • These address translation rules are stored as part of the filtering rules of the first router device 212 and the second router device 222.
  • the terminal devices that perform the battle perform peer-to-peer communication using a predetermined battle port number (hereinafter referred to as “Q”) for use in battle communication.
  • Q a predetermined battle port number
  • the first terminal device 211 starts communication with the predetermined battle port number Q of the IP address R2, and the second terminal device 221 sets the predetermined battle port number Q of the IP address R1. On the other hand, communication is started.
  • the communication for R1 / Q reaches the port Q of the first terminal device 211 by address conversion of the first router device 212, and the communication for R2 / Q is performed by the address conversion of the second router device 222.
  • the port Q of the terminal device 221 is reached.
  • the first router device 212 and the second router device 222 themselves are connected to the Internet 241 it is configured to respond to the ping / icmp protocol (the default value of the port number is 1). Typical. In this case, a value other than 1 is adopted as the value of Q.
  • the destination of the packet addressed to the first terminal device 211 is R1 / Q
  • the destination of the packet addressed to the first router device 212 is R1 / 1. If ACK is returned for sending these packets, communication to the first terminal device 211 and communication to the first router device 212 are successful.
  • the destination of the packet addressed to the second terminal device 221 is R2 / Q
  • the destination of the packet addressed to the second router device 222 is R2 / 1. If ACK is returned for sending these packets, communication to the second terminal device 221 and communication to the second router device 222 are successful.
  • the port numbers P and Q are not necessarily constants. It is also possible to check the connection of the router device using a protocol or port number other than the ping / icmp protocol.
  • the correspondence between the port numbers used by the first terminal device 211 and the second terminal device 221 in the home LAN and the port numbers used by the first router device 212 and the second router device 222 on the Internet 241 is If it is transmitted to the server device 231 by the technique, and is introduced at the time of introduction to the first terminal device 211 and the second terminal device 221 so that they can get to know each other, Communication can be configured. Therefore, these embodiments are also included in the scope of the present invention.
  • FIG. 3 is a diagram illustrating a state in which normal communication is possible among the first terminal device 211, the first router device 212, the second terminal device 221, the second router device 222, and the server device 231.
  • FIG. 3 a description will be given with reference to FIG.
  • the first terminal device 211, the second terminal device 221, and the server device 231 communicate mainly, and the first router device 212 and the second router device 222 are the two. Since the processing is performed by communicating with others, the starting points of the arrows in this figure are the first terminal device 211, the second terminal device 221, and the server device 231.
  • the first terminal device 211 is turned off.
  • the first router device 212 is turned off.
  • the gateway / firewall setting of the first router device 212 is temporarily changed to block all communication between the first router device 212 and the Internet 241.
  • the gateway / firewall setting of the first router device 212 is temporarily changed to block communication from the second terminal device 221 to the first terminal device 211.
  • FIG. 4 shows a part of the configuration by performing the unauthorized setting as described above between the first terminal device 211, the first router device 212, the second terminal device 221, the second router device 222, and the server device 231. It is explanatory drawing which shows a mode that communication is impossible. Hereinafter, a description will be given with reference to FIG.
  • the arrow from the second terminal device 221 to the first terminal device 211 is marked with a cross (“ ⁇ ⁇ ⁇ ”), but the other arrows are marked with a circle. It remains in a state where communication is possible with the mark attached.
  • positioning of the arrow which was symmetrical with the 1st terminal device 211 and the 2nd terminal device 221 is asymmetric in this figure. In this embodiment, this asymmetry is used to detect an illegal act of the user of the first terminal device 211.
  • FIG. 5 is a schematic diagram showing a schematic configuration of a terminal device that functions as the first terminal device 211 and the second terminal device 221 of the present embodiment.
  • FIG. 6 is a flowchart showing a flow of control of terminal processing executed by the terminal device.
  • the terminal device 501 includes a counterparty communication unit 502, a router identifier acquisition unit 503, a router communication unit 504, a status transmission unit 505, and an information reception unit 506.
  • the terminal device 501 accesses the server device 231 functioning as the lobby server, receives an introduction of an IP address and a port number that the communication partner discloses to the Internet, and receives the partner communication unit.
  • initial setting of peer-to-peer communication is performed (step S601).
  • the IP address and the port number obtained here are used directly by the counterpart terminal device 501 when the counterpart terminal device 501 is directly connected to the Internet 241.
  • the partner terminal device 501 is connected to the Internet 241 via a router device. Therefore, when the packet arrives at the port number obtained in step S601, the IP address of the router device used by the partner terminal device 501. When the packet arrives at the port number known in step S601, the packet is sent to the partner terminal device 501. Relayed to
  • the IP address and port number of the other party obtained here are temporarily stored in the RAM 103 or the like. Therefore, the CPU 101 functions as the router identifier acquisition unit 503 in cooperation with the NIC 109 and the RAM 103.
  • step S602 if a packet has arrived from the other party's terminal device 501 or server device 231 (step S602; Yes), the terminal device 501 receives this (step S603), but does not arrive (step S602). No) The communication battle game calculation process is performed as it is (step S604). Various game techniques can be applied as they are for the calculation processing contents of the online battle game.
  • the packet is exchanged with the other terminal device 501 while the communication battle continues, and when the communication battle is completed and the battle result is reported, the packet is exchanged with the server device 231. Is exchanged. Therefore, in this case, the CPU 101 functions as the counterpart communication unit 502 in cooperation with the NIC 109 and the RAM 103.
  • a calculation process is also performed in which a packet arriving by relaying the server device 231 from the partner terminal device 501 is directly received from the partner terminal device 501 and the battle of the communication battle game is advanced.
  • the CPU 101 functions as the information receiving unit 506 in cooperation with the NIC 109 and the RAM 103.
  • step S605 when it becomes a situation where a packet should be transmitted to the opponent by the calculation process of the communication battle game (step S605; opponent), the opponent communication unit 502 sends the packet to the IP address and port number introduced in step S601. Transmission is attempted (step S606). Also in this case, the CPU 101 functions as the counterpart communication unit 502 in cooperation with the NIC 109 and the RAM 103.
  • step S607 if the transmission is successful (step S607; Yes), it is determined whether or not the server device 231 is notified of the success (step S608).
  • the notification to the server device 231 is typically performed at a fixed interval, or when a predetermined number of packets are transmitted, or when the communication battle is completed, etc.
  • the state of the battle is broadcast to another terminal device 501 of the Internet 241, it is typically performed every time together with information indicating the state of the communication battle game.
  • step S608 If notification is to be made (step S608; Yes), a connection status packet designating that communication with the other party has been successful is transmitted to the server device 231 (step S609), and the process returns to step S602; S608; No), it returns to step S602 as it is.
  • step S607 if a time-out occurs in communication with the other party and transmission fails (step S607; No), packet transmission based on the protocol is sent to the ping / icmp protocol port of the IP address introduced in step S601. An attempt is made to check whether communication with the other router device is possible (step S610).
  • the other router device When the other router device receives the ping / icmp inquiry, the other router device returns an ACK or a response packet without flowing the packet into the LAN. Therefore, even if the unauthorized setting as in (6) is performed, an ACK or response packet from the other router device should be obtained.
  • step S611 A connection information packet that specifies the contents of the non-delivery packet that failed to be transmitted in steps S606 and S607 as transmission information is generated and transmitted to the server device 231 (step S611), and the process returns to step S602.
  • step S610 whether or not the packet transmission in step S610 has succeeded represents whether or not the communication to the other router device has succeeded. If the connection status packet generated in step S611 includes a non-delivery packet, communication to the counterpart terminal device 501 has failed. Therefore, there is no need to explicitly specify in the connection information packet that communication with the counterpart terminal device 501 has failed.
  • the reason why the contents of the packet that failed to be transmitted is transmitted to the server apparatus 231 is to notify the counterpart terminal apparatus 501 of the contents of the packet via the server apparatus 231. This makes it possible to deal with temporary network malfunctions and to make the other party's fraudulent acts virtually meaningless.
  • the CPU 101 functions as the status transmission unit 505 in cooperation with the RAM 103 and the NIC 109.
  • a connection status for designating whether communication from the counterpart communication unit 502 to the communication counterpart is successful and whether communication from the router communication unit 504 to the router to which the communication counterpart is connected is successful Information is transmitted to the server device at a predetermined timing.
  • connection status information If communication with the communication partner is successful, naturally, communication with the router device of the communication partner is successful, and therefore whether or not the communication by the router communication unit 504 is successful in the connection status information.
  • the designation may be made only when communication with the communication partner has failed. As typical examples of the predetermined timing, when communication with the communication partner fails at regular intervals, when the battle with the communication partner is finished and the battle result is reported, or an appropriate combination thereof is considered. It is done.
  • the server device 231 looks at the contents of the connection status packet transmitted from the terminal device 501 (the first terminal device 211 and the second terminal device 221). Then, a process for determining whether or not an illegal act has occurred is performed.
  • FIG. 7 is a schematic diagram illustrating a schematic configuration of the server apparatus 231.
  • FIG. 8 is a flowchart illustrating a flow of control of service processing executed by the server apparatus 231.
  • connection status packet processing Various known techniques can be applied to functions as a lobby server, such as introducing opponents and accumulating battle results to generate rankings.
  • the server device 231 includes a status receiving unit 701, a fraud determination unit 702, and an information relay unit 703.
  • the CPU 101 of the server device 231 monitors the NIC 109 to check whether or not a packet has arrived from various external devices such as the first terminal device 211 and the second terminal device 221. If it has not arrived (step S801) (step S801; No), it waits for a certain period of time or performs other processing as appropriate in a coroutine (step S802), and then returns to step S801.
  • step S801 if the packet has arrived (step S801; Yes), the packet is received (step S803). Then, the type of the packet is checked (step S804). If this packet is a connection status packet transmitted from the first terminal device 211 (step S804; from the first terminal), the latest connection status from the first terminal device 211 is obtained. The packet is stored in the RAM 103 (step S805), and the process proceeds to step S811.
  • Step S804 If this is a connection status packet transmitted from the second terminal device 221 (step S804; from the second terminal), it is stored in the RAM 103 as the latest connection status packet from the second terminal device 221 ( Step S806), the process proceeds to Step S811.
  • step S804 If this is another type of packet (step S804; other), processing corresponding to the packet is executed (step S807), and the process returns to step S801.
  • the processing performed here includes, for example, processing as a lobby server.
  • Step S811 When the latest connection status packet from the first terminal device 211 and the latest connection status packet from the second terminal device 221 are prepared (step S811; Yes), these connection status packets are examined ( Step S812).
  • connection status packets from the both may be correlated one-to-one and examined in the order of arrival, but each time a new connection status packet arrives, the past is discarded, In addition to referring to the latest ones, discard the connection status packet that was subject to judgment in the following judgment process, and make the next judgment after the connection status packets from both parties are prepared for the first time after the judgment is made. Typical.
  • step S812 first terminal-> second terminal, first terminal --- second terminal, first router --- second terminal
  • step S821 It is determined that the user of the one terminal device 211 has cheated (step S821), and that effect is recorded in the RAM 103 (step S822).
  • the CPU 101 transmits the non-delivery packet specified in the connection status packet from the second terminal device 221 to the first terminal device 211 via the NIC 109 (step S823), and proceeds to step S871. .
  • Step S812 first terminal ⁇ ⁇ —second terminal, first terminal— ⁇ ⁇ second terminal, first terminal— ⁇ ⁇ second router
  • the CPU 101 transmits the non-delivery packet specified in the connection status packet from the first terminal device 211 to the second terminal device 221 via the NIC 109 (step S833), and proceeds to step S871. .
  • the server apparatus 231 relays the non-delivery packet in steps S823 and S833, the CPU 101 functions as the information relay unit 703 in cooperation with the NIC 109.
  • step S812 If any other connection status is found (step S812; other), for example, the judgment standard disclosed in Patent Document 1 is applied to determine the cause of fraud (step S834), and the result is stored in the RAM 103. (Step S835), and the process proceeds to step S871.
  • step S811 if the latest connection status packet from the first terminal device 211 and the latest connection status packet from the second terminal device 221 are not aligned (step S811; No), which is the cause of the mismatch? Check out. That is, if the connection status packet has not arrived from the first terminal device 211 for a certain period (step S841; first terminal), it is determined that the user of the first terminal device 211 has been cheated (step S851). The fact is recorded in the RAM 103 (step S852), and the process proceeds to step S871.
  • step S841 If the connection status packet has not arrived from the second terminal device 221 for a certain period (step S841; second terminal), it is determined that the user of the second terminal device 221 has been cheated (step S853). Is stored in the RAM 103 (step S854), and the process proceeds to step S871.
  • step S841 if the fixed period has not yet elapsed for both the first terminal device 211 and the second terminal device 221 since the connection status packet was last received (step S841; grace period), the process returns to step S801.
  • game score calculation processing is performed such as imposing a penalty on the cheating user's score recorded in the RAM 103 (step S871), and the process returns to step S801.
  • the relay processing for undelivered packets may be omitted as appropriate.
  • a user using a router device detects an illegal act such as trying to invalidate a result of a communication battle by changing the setting of the router device in a communication battle game. It is possible to provide a communication system, a communication method, a computer-readable information recording medium in which a program for realizing these in a computer is recorded, and the program.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Abstract

 通信対戦ゲームにおいてルータ装置の設定を変更することで通信対戦の結果を無効にしようとする等の不正行為を検出するため、通信システムにおいて、第1端末装置(211)と第2端末装置(221)は、通信相手の端末装置への通信を試み、これに失敗したら、通信相手の端末装置が使用するルータ装置への通信を試み、これらの通信試行の結果を接続情報状況に指定してサーバ装置(231)に送信し、サーバ装置(231)は、接続情報状況を受信して、各端末装置と、第1端末装置(211)に接続される第1ルータ装置(212)、第2端末装置(221)に接続される第2ルータ装置(222)の通信状況を調べて、通信可能な経路が非対称になっていることを手がかりに、端末装置を使用するユーザの不正行為の有無を判定する。

Description

通信システム、通信方法、情報記録媒体、ならびに、プログラム
 本発明は、ルータ装置を使用するユーザが通信対戦ゲームにおいてルータ装置の設定を変更することで通信対戦の結果を無効にしようとする等の不正行為を検出するのに好適な通信システム、通信方法、これらをコンピュータにて実現するプログラムを記録したコンピュータ読取可能な情報記録媒体、ならびに、当該プログラムに関する。
 従来から、インターネットを利用した通信対戦を可能とするネットワーク対戦ゲームの通信システムが提案されている。このような通信システムの多くにおいては、ユーザが利用する端末装置は、まず、ロビーサーバと呼ばれるサーバ装置に接続して対戦相手を紹介してもらう。そして、対戦相手が決まった後は、端末装置同士がピアツーピア通信を行って通信対戦ゲームを行い、勝敗を決して、対戦結果をサーバ装置に報告する。また、家庭内LAN(Local Area Network)の普及やネットワークセキュリティの観点から、端末装置がインターネットに接続するにあたっては、ルータ装置やファイアウォール等を介するのが一般的になりつつある。
 このような通信対戦ゲームの通信システムにおいては、対戦の結果がプレイヤーの意に合わない場合に、当該ユーザが使用する端末装置に接続されたルータやファイアウォールの設定を変更したり接続を切断したりして、相手先との通信を失敗させることにより、当該対戦結果そのものを無効にする等の、プレイヤーの悪意ある行為が行われることがある。このような行為は「チート行為」とも呼ばれる。
 このようなチート行為を検出する技術は、後に掲げる文献に開示されている。
 ゲームのプログラムそのものを書き換えることが困難な場合もあるため、ルータ装置との結線を切断したり、ルータ装置の電源を切ったりする等して、インターネットとの接続ができないようにして、チート行為を行うことがありうるが、特許文献1は、通信の失敗の原因が対戦中の端末装置のいずれにあるのかを特定して、このような行為に対応するものである。
 すなわち、各端末装置は、対戦相手の端末装置との対戦を行っている間に通信が失敗すると、ロビーサーバ等の他の通信装置との通信を試みて、これが成功すれば対戦相手の端末装置に障害があると判定し、失敗すれば自身とコンピュータ通信網との間に障害があると判定するものである。そして、当該技術によれば、当該障害の有無をユーザのチート行為の判定基準とすることができる。
特開2005-130166号公報
 しかしながら、特許文献1等の先行技術では検出できないチート行為の手法、たとえば、ルータ装置のフィルタリングルールを一時的に変更して、対戦相手からの通信のみを拒否する等の手法も存在する。したがって、このような種々のチート行為を、新たな手法により検出する必要がある。また、上記手法に基づく通信断によってチート行為が生じたとしても、その行為を打ち消す処理を行って、チート行為の被害者側のユーザを救済したい、との要望もある。
 本発明は、上記のような課題を解決するもので、ルータ装置を使用するユーザが通信対戦ゲームにおいてルータ装置の設定を変更することで通信対戦の結果を無効にしようとする等の不正行為を検出するのに好適な通信システム、通信方法、これらをコンピュータにて実現するプログラムを記録したコンピュータ読取可能な情報記録媒体、ならびに、当該プログラムを提供することを目的とする。
 以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
 本発明の第1の観点に係る通信システムは、コンピュータ通信網に第1ルータ装置を介して接続される第1端末装置と、当該コンピュータ通信網に第2ルータ装置を介して接続される第2端末装置と、当該コンピュータ通信網に接続されるサーバ装置と、を有し、第1端末装置と、第2端末装置と、が、第1ルータ装置と、コンピュータ通信網と、第2ルータ装置と、を介して、互いを通信相手として通信し、以下のように構成する。
 すなわち、第1端末装置と、第2端末装置と、は、いずれも、相手方通信部、ルータ識別子取得部、ルータ通信部、状況送信部を有する。
 ここで、相手方通信部は、当該端末装置が接続されるルータ装置を介して、当該通信相手との通信を行う。典型的には、相手方通信部は、ネットワーク通信対戦ゲームにおけるプレイヤー同士の対戦を実現するための通信処理を担うことになる。
 一方、ルータ識別子取得部は、相手方通信部から当該通信相手への通信が成功すると、当該通信相手が接続されるルータ装置の通信識別子を取得する。ここで、通信識別子とは、典型的には、IPアドレスおよびポート番号を意味する。一般に、通信相手から送信されたパケットを受信すると、当該パケットには、当該パケットが経由した経路情報が記載されている。これから、通信相手のルータ装置を知得することができる。
 このほか、ロビーサーバを介して通信相手の紹介をされた場合には、当該紹介にかかるIPアドレスは、当該通信相手のルータ装置のIPアドレスそのものに相当する。この場合は、通信相手との通信が成立している限り、紹介されたIPアドレスそのものがルータ装置の通信識別子であり、紹介されたIPアドレスおよびポート番号の組は、当該通信相手の端末装置の通信識別子に相当することになる。
 さらに、相手方通信部から当該通信相手への通信が成功した後に失敗すると、ルータ通信部は、取得された通信識別子を有するルータ装置への通信を行う。
 上記のように、通信相手との通信は、典型的には、IPアドレスおよびポート番号を使用して、所定の通信対戦プロトコルに則って行われる。そして、この通信対戦が、通信タイムアウト等によって不成立となると、ルータ通信部は、ルータ装置への通信が可能であるか否かを判定するのである。
 上記のように、通信相手が接続されているルータ装置の通信識別子がIPアドレスである場合には、当該ルータ装置に対して、たとえば、PINGプロトコルに基づくパケットを送信してその応答を調べることにより、ルータ装置への通信が可能であるか否かを調べることができる。
 さらに、状況送信部は、相手方通信部から当該通信相手への通信が成功しているか否か、および、ルータ通信部から当該通信相手が接続されるルータ装置への通信が成功しているか否かを指定する接続状況情報を、所定のタイミングでサーバ装置に送信する。
 通信相手への通信が成功している場合には、当然に、通信相手のルータ装置への通信が成功していることとなるので、接続状況情報にルータ通信部による通信の成功の可否が指定されるのは、通信相手への通信が失敗している場合に限ることとしても良い。なお、所定のタイミングの典型例としては、一定時間おき、通信相手との通信に失敗したとき、通信相手との対戦が終了して対戦結果を報告するとき、またはこれらの適当な組み合わせ等が考えられる。
 一方、サーバ装置は、状況受信部、不正判定部を有する。
 ここで、状況受信部は、第1端末装置から送信される接続状況情報と、第2端末装置から送信される接続状況情報と、を受信する。当該接続状況情報は、上記のように所定のタイミングで送信されるものであり、状況受信部は、両端末装置から受信した最新の接続状況情報をRAM(Random Access Memory)等に保存することとするのが典型的である。
 一方、不正判定部は、受信された第1端末装置からの接続状況情報と、第2端末装置からの接続状況情報と、に、より、
  (1)第1端末装置から第2端末装置への通信が成功し、第2端末装置から第1端末装置への通信が失敗し、第2端末装置から第1ルータ装置への通信が成功している旨が指定されている場合、第1端末装置のユーザに不正行為があったと判定し、
  (2)第2端末装置から第1端末装置への通信が成功し、第1端末装置から第2端末装置への通信が失敗し、第1端末装置から第2ルータ装置への通信が成功している旨が指定されている場合、第2端末装置のユーザに不正行為があったと判定する。
 サーバ装置へ両端末装置からの接続状況情報が到達している状況を想定すると、第1端末装置と第1ルータ装置とインターネットの間、ならびに、第2端末装置と第2ルータ装置とインターネットの間には、機械的な障害(ケーブルが外れている、電源が切れている等)は存在しないと考えられる。
 そこで、上記(1)では、第1ルータ装置を境界として、第2端末装置からのパケットの流入に障害があるか否かを判定し、上記(2)では、第2ルータ装置を境界として、第1端末装置からのパケットの流入に障害があるか否かを判定している。
 本発明において、両端末装置のユーザが行う不正行為として想定する典型例は、「通信対戦が不利であると考えたときに、通信相手の端末装置からのパケットの流入を拒否するようなフィルタリングルールを一時的に採用することによって、対戦を不可能とし、対戦結果を無効にする」ようなチート行為である。
 このような、特許文献1に記載の技術では必ずしも判定できないような不正行為であっても、サーバ装置を介在させることによって、上記(1)(2)のような条件により、不正行為の有無を判定することができる。なお、本発明は特許文献1に記載の技術と組み合わせて適用することも可能である。
 本発明によれば、ルータ装置を使用するユーザが通信対戦ゲームにおいてルータ装置の設定を変更することで通信対戦の結果を無効にしようとする等の不正行為をできるだけ検出することができるようになる。
 また、本発明の通信システムにおいて、不正判定部は、以下のように構成することができる。
  (3)第1端末装置から送信されるべき接続状況情報が所定の期間受信されず、第2端末装置から送信されるべき接続状況情報が当該所定の期間に受信された場合、第1端末装置のユーザに不正行為があったと判定し、
  (4)第2端末装置から送信されるべき接続状況情報が当該所定の期間受信されず、第1端末装置から送信されるべき接続状況情報が当該所定の期間に受信された場合、第2端末装置のユーザに不正行為があったと判定する。
 本発明は上記発明の好適実施形態に係るもので、上記(3)(4)においてユーザが行う不正行為として想定する典型例は「通信対戦が不利であると考えたときに、自身の端末装置の通信を不可能とすることによって、対戦を不可能とし、対戦結果を無効にする」ようなチート行為である。
 本発明によれば、ルータ装置を使用するユーザが通信対戦ゲームにおいてルータ装置の設定を変更したり電源を切ったり接続を断つことで、通信対戦の結果を無効にしようとする等の不正行為をできるだけ検出することができるようになる。
 また、本発明の通信システムは、以下のように構成することができる。
 すなわち、第1端末装置と、第2端末装置と、において、相手方通信部による当該通信相手との通信が失敗しており、ルータ通信部による当該通信相手が接続されるルータ装置との通信が成功している場合、状況送信部は、相手方通信部による当該通信相手との通信が失敗しており、ルータ通信部による当該通信相手が接続されるルータ装置との通信が成功している旨に加えて、相手方通信部が当該通信相手への送信に失敗した送付情報を、当該接続状況情報に指定してサーバ装置に送信する。
 すなわち、接続状況情報には、以下の二つの情報が指定されることになる。
 (1)相手方通信部による当該通信相手との通信が失敗しており、ルータ通信部による当該通信相手が接続されるルータ装置との通信が成功している旨。
 (2)相手方通信部が当該通信相手への送信に失敗した送付情報。すなわち、通信相手に送信しようと試みて、送信に失敗したパケットの内容。
 これらの情報は、接続状況情報に埋め込まれて、サーバ装置に送信される。
 一方、サーバ装置は、情報中継部をさらに備え、情報中継部は、(1)の条件が成立する場合、第2端末装置からの接続状況情報に指定される送付情報を第1端末装置へ送信し、(2)の条件が成立する場合、第1端末装置からの接続状況情報に指定される送付情報を第2端末装置へ送信して、当該送付情報を中継する。
 すなわち、不正行為を行っていると判定された端末装置に対する送信に失敗したパケットの内容を、サーバ装置から送信するのである。
 さらに、第1端末装置と、第2端末装置と、は、それぞれ、情報受信部をさらに備え、情報受信部は、サーバ装置から送信された送付情報を受信し、相手方通信部は、情報受信部により受信された送付情報を当該通信相手から通信されたものとする。
 通信相手から送信されてくるはずだったパケットが、何らかの事情で(典型的にはチート行為によって)到達せず、サーバ装置から中継され、これが受信されれば、その送付情報に基づいて対戦を続行するのである。
 本発明によれば、上記のようなチート行為が生じた場合にも、加害者側の不正行為は検出できる一方で、サーバ装置を経由して通信対戦が継続されるため、被害者側はチート行為が生じなかったものとしてゲームが続行できる。
 本発明のその他の観点に係る通信方法は、コンピュータ通信網に第1ルータ装置を介して接続される第1端末装置と、当該コンピュータ通信網に第2ルータ装置を介して接続される第2端末装置と、当該コンピュータ通信網に接続されるサーバ装置と、が実行し、第1端末装置と、第2端末装置と、は、第1ルータ装置と、コンピュータ通信網と、第2ルータ装置と、を介して、互いを通信相手として通信し、第1端末装置と、第2端末装置と、は、いずれも、相手方通信部、ルータ識別子取得部、ルータ通信部、状況送信部を備え、サーバ装置は、状況受信部、不正判定部を備え、当該通信方法は、相手方通信工程、ルータ識別子取得工程、ルータ通信工程、状況送信工程、状況受信工程、不正判定工程を備え、以下のように構成する。
 すなわち、第1端末装置と、第2端末装置と、において、相手方通信工程では、相手方通信部が、当該端末装置が接続されるルータ装置を介して、当該通信相手との通信を行い、ルータ識別子取得工程では、相手方通信工程にて当該通信相手への通信が成功すると、ルータ識別子取得部が、当該通信相手が接続されるルータ装置の通信識別子を取得し、ルータ通信工程では、相手方通信工程にて当該通信相手への通信が成功した後に失敗すると、ルータ通信部が、取得された通信識別子を有するルータ装置への通信を行い、状況送信工程では、相手方通信工程にて当該通信相手への通信が成功しているか否か、および、ルータ通信工程にて当該通信相手が接続されるルータ装置への通信が成功しているか否かを指定する接続状況情報を、所定のタイミングでサーバ装置に送信する。
 一方、サーバ装置において、状況受信工程では、状況受信部が、第1端末装置から送信される接続状況情報と、第2端末装置から送信される接続状況情報と、を受信し、不正判定工程では、不正判定部が、受信された第1端末装置からの接続状況情報と、第2端末装置からの接続状況情報と、に、より、
  (1)第1端末装置から第2端末装置への通信が成功し、第2端末装置から第1端末装置への通信が失敗し、第2端末装置から第1ルータ装置への通信が成功している旨が指定されている場合、第1端末装置のユーザに不正行為があったと判定し、
  (2)第2端末装置から第1端末装置への通信が成功し、第1端末装置から第2端末装置への通信が失敗し、第1端末装置から第2ルータ装置への通信が成功している旨が指定されている場合、第2端末装置のユーザに不正行為があったと判定する。
 本発明のその他の観点に係るプログラムは、第1端末コンピュータを上記の通信システムの第1端末装置として機能させ、第2端末コンピュータを上記の通信システムの第2端末装置として機能させる端末プログラムと、サーバコンピュータを上記の通信システムのサーバ装置として機能させるサーバプログラムと、を有するように構成する。
 また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記憶媒体に記録することができる。
 上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記憶媒体は、コンピュータとは独立して配布・販売することができる。
 本発明によれば、ルータ装置を使用するユーザが通信対戦ゲームにおいてルータ装置の設定を変更することで通信対戦の結果を無効にしようとする等の不正行為を検出するのに好適な通信システム、通信方法、これらをコンピュータにて実現するプログラムを記録したコンピュータ読取可能な情報記録媒体、ならびに、当該プログラムを提供することができる。
典型的な情報処理装置の概要構成を示す模式図である。 本実施形態に係る通信システムの概要構成を示す説明図である。 正常に通信が可能となっている様子を示す説明図である。 不正な設定を行うことにより、一部で通信が不可能となっている様子を示す説明図である。 本実施形態の端末装置の概要構成を示す模式図である。 当該端末装置にて実行される端末処理の制御の流れを示すフローチャートである。 サーバ装置の概要構成を示す模式図である。 サーバ装置にて実行されるサービス処理の制御の流れを示すフローチャートである。
符号の説明
  100 情報処理装置
  101 CPU
  102 ROM
  103 RAM
  104 インターフェイス
  105 コントローラ
  106 外部メモリ
  107 画像処理部
  108 DVD-ROMドライブ
  109 NIC
  110 音声処理部
  111 マイク
  201 通信システム
  211 第1端末装置
  212 第1ルータ装置
  221 第2端末装置
  222 第2ルータ装置
  231 サーバ装置
  241 インターネット
  501 端末装置
  502 相手方通信部
  503 ルータ識別子取得部
  504 ルータ通信部
  505 状況送信部
  506 情報受信部
  701 状況受信部
  702 不正判定部
  703 情報中継部
 以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム用の情報処理装置を利用して本発明が実現される実施形態を説明するが、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
 本実施形態に係る通信システムは、インターネット等のコンピュータ通信網に接続されたサーバコンピュータにおいて所定のプログラムを動作させてサーバ装置として機能させ、携帯電話や携帯ゲーム装置などの端末装置と通信可能に設定することによって、実現される。
 ここで、端末装置とサーバ装置とは、処理能力等に相違はあるものの、その根本的な動作原理や構成は共通する。そこで、以下では、情報処理装置の概要を説明した上で、端末装置とサーバ装置に適用した場合の違いについては、それに応じて適宜説明することとする。
 図1は、プログラムを実行することにより、本実施形態のサーバ装置や端末装置として機能しうる典型的な情報処理装置の概要構成を示す模式図である。以下、本図を参照して説明する。
 情報処理装置100は、CPU(Central Processing Unit)101と、ROM 102と、RAM(Random Access Memory)103と、インターフェイス104と、コントローラ105と、外部メモリ106と、画像処理部107と、DVD-ROM(Digital Versatile Disc ROM)ドライブ108と、NIC(Network Interface Card)109と、音声処理部110と、マイク111と、を備えるように構成することができる。各種の入出力装置は、適宜省略することができる。
 ゲーム用のプログラムおよびデータを記憶したDVD-ROMをDVD-ROMドライブ108に装着して、情報処理装置100の電源を投入することにより、当該プログラムが実行され、本実施形態のサーバ装置が実現される。
 また、携帯ゲーム装置においては、携帯可能とするために、DVD-ROMドライブ108を利用するのではなく、ROMカセット用スロットを利用することも可能である。この場合、プログラムが記録されたROMカセットを挿入して、当該プログラムを実行することで、本実施形態の端末装置が実現される。
 また、NIC 109は、家庭内無線LANが設定されている状況では、無線LANカードとなる。一方、サーバ装置においては、有線LANカードとしてインターネットに接続するのが典型的である。端末装置が有する無線LANカードがアクセスするアクセスポイント装置は、ルータ機能を有し、もしくは、他のルータ装置を介して、インターネットに接続され、端末装置とサーバ装置との通信が可能となる。
 CPU 101は、情報処理装置100全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。また、CPU 101は、レジスタ(図示せず)という高速アクセスが可能な記憶域に対してALU(Arithmetic Logic Unit)(図示せず)を用いて加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。さらに、マルチメディア処理対応のための加減乗除等の飽和演算や、三角関数等、ベクトル演算などを高速に行えるように、CPU 101自身が構成されているものや、コプロセッサを備えて実現するものがある。
 ROM 102には、電源投入直後に実行されるIPL(Initial Program Loader)が記録され、これが実行されることにより、DVD-ROMに記録されたプログラムをRAM 103に読み出してCPU 101による実行が開始される。また、ROM 102には、情報処理装置100全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
 RAM 103は、データやプログラムを一時的に記憶するためのもので、DVD-ROMから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。また、CPU 101は、RAM 103に変数領域を設け、当該変数に格納された値に対して直接ALUを作用させて演算を行ったり、RAM 103に格納された値を一旦レジスタに格納してからレジスタに対して演算を行い、演算結果をメモリに書き戻す、などの処理を行う。
 インターフェイス104を介して接続されたコントローラ105は、ユーザがゲーム実行の際に行う操作入力を受け付ける。
 インターフェイス104を介して着脱自在に接続された外部メモリ106には、ゲーム等のプレイ状況(過去の成績等)を示すデータ、ゲームの進行状態を示すデータ、ネットワーク対戦の場合のチャット通信のログ(記録)のデータなどが書き換え可能に記憶される。ユーザは、コントローラ105を介して指示入力を行うことにより、これらのデータを適宜外部メモリ106に記録することができる。
 DVD-ROMドライブ108に装着されるDVD-ROMには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。CPU 101の制御によって、DVD-ROMドライブ108は、これに装着されたDVD-ROMに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはRAM 103等に一時的に記憶される。
 画像処理部107は、DVD-ROMから読み出されたデータをCPU 101や画像処理部107が備える画像演算プロセッサ(図示せず)によって加工処理した後、これを画像処理部107が備えるフレームメモリ(図示せず)に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部107に接続されるモニタ(図示せず)へ出力される。これにより、各種の画像表示が可能となる。
 画像演算プロセッサは、2次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。
 また、仮想3次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Zバッファ法によりレンダリングして、所定の視点位置から仮想3次元空間に配置されたポリゴンを所定の視線の方向へ俯瞰したレンダリング画像を得る演算の高速実行も可能である。
 さらに、CPU 101と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を2次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画することが可能である。
 NIC 109は、情報処理装置100をインターネット等のコンピュータ通信網(図示せず)に接続するためのものであり、LANを構成する際に用いられる10BASE-T/100BASE-T規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integrated Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとCPU 101との仲立ちを行うインターフェース(図示せず)により構成される。
 音声処理部110は、DVD-ROMから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ(図示せず)から出力させる。また、CPU 101の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカや、ヘッドホン(図示せず)、イヤフォン(図示せず)から出力させる。
 音声処理部110では、DVD-ROMに記録された音声データがMIDIデータである場合には、これが有する音源データを参照して、MIDIデータをPCMデータに変換する。また、ADPCM形式やOgg Vorbis形式等の圧縮済音声データである場合には、これを展開してPCMデータに変換する。PCMデータは、そのサンプリング周波数に応じたタイミングでD/A(Digital/Analog)変換を行って、スピーカに出力することにより、音声出力が可能となる。
 さらに、情報処理装置100には、インターフェイス104を介してマイク111を接続することができる。この場合、マイク111からのアナログ信号に対しては、適当なサンプリング周波数でA/D変換を行い、PCM形式のディジタル信号として、音声処理部110でのミキシング等の処理ができるようにする。
 このほか、情報処理装置100は、ハードディスク等の大容量外部記憶装置を用いて、ROM 102、RAM 103、外部メモリ106、DVD-ROMドライブ108に装着されるDVD-ROM等と同じ機能を果たすように構成してもよい。
 また、ユーザからの文字列の編集入力を受け付けるためのキーボードや、各種の位置の指定および選択入力を受け付けるためのマウスなどを接続する形態も採用することができる。また、本実施形態の情報処理装置100にかえて、汎用のパーソナルコンピュータを利用することもできる。
 上記のように、サーバ装置や端末装置は、情報処理装置100でプログラムを実行することで実現されるが、一般的なコンピュータ上に実現することとしても良い。情報処理装置100と一般的なコンピュータとは、その構成や機能に大きな相違はないからである。上記のように、本願では、一般的なコンピュータと情報処理装置100とを同じように扱って説明する。
 たとえば、一般的なコンピュータは、いわゆるコンシューマ向けゲーム装置に相当する情報処理装置100と同様に、CPU、RAM、ROM、DVD-ROMドライブ、および、NICを備え、情報処理装置100よりも簡易な機能を備えた画像処理部を備え、外部記憶装置としてハードディスクを有する他、フレキシブルディスク、光磁気ディスク、磁気テープ等が利用できるようになっている。また、コントローラ105ではなく、キーボードやマウスなどを入力装置として利用する。
 また、携帯電話、携帯ゲーム機器、カラオケ装置なども、一般的なコンピュータと同等の機能を有するため、これら種々の機器を、適宜端末装置やサーバ装置を実現するプラットフォームとして利用することにより、本発明を実現することが可能である。
 (通信システム)
 図2は、本実施形態に係る通信システムの概要構成を示す説明図である。以下、本図を参照して説明する。
 通信システム201は、インターネット241を介して相互に通信可能な第1端末装置211、第2端末装置221、サーバ装置231から構成される。
 ここで、第1端末装置211は、第1ルータ装置212を介してインターネット241に接続され、第2端末装置221は、第2ルータ装置222を介してインターネット241に接続されている。
 第1ルータ装置212は、インターネット241と、第1端末装置211が存在する家庭内LANとの境界となり、ゲートウェイ/ファイアウォール/アドレス・ポート番号変換装置として機能する。
 また、第2ルータ装置222は、インターネット241と、第2端末装置221が存在する家庭内LANとの境界となり、ゲートウェイ/ファイアウォール/アドレス・ポート番号変換装置として機能する。
 第1端末装置211、および、第2端末装置221では、所定の端末プログラムが動作する。この端末プログラムは、通信対戦ゲームを実現するものである。
 本実施形態では、通信対戦ゲームは、以下の手順で進行される。
 すなわち、第1端末装置211が、ロビーサーバであるサーバ装置231に、対戦相手の紹介を申し込む。以下、サーバ装置231のIPアドレスを「S」、紹介申込のためのポート番号を「V」とし、通信の宛先を「S/V」のように表記する。
 S/V宛の申し込みにおいて、第1端末装置211からサーバ装置231への通信は、第1ルータ装置212に中継されることとなる。
 したがって、サーバ装置231では、対戦相手を求めている第1端末装置211の識別情報として、第1ルータ装置212のIPアドレス(以下「R1」という。)を取得する。
 同様に、第2端末装置221からの対戦相手の紹介の申し込みがあると、サーバ装置231は、第2ルータ装置222のIPアドレス(以下「R2」という。)を取得する。
 そして、この2つの申し込みに対して、両者を紹介する。この際に、当該IPアドレスの、あらかじめ定めたサーバ通信用ポート番号(以下「P」という。)に対して、紹介通知を行うのが典型的である。すなわち、R1/Pに対しては、R2を紹介する通知を行い、R2/Pに対しては、R1を紹介する通知を行うのである。
 R1およびR2は、第1ルータ装置212および第2ルータ装置222のIPアドレスであるから、アドレス変換がされて、当該通知が第1端末装置211および第2端末装置221に中継される。すなわち、第1端末装置211のポート番号Pに対して、R2を紹介する通知が到達し、第2端末装置221のポート番号Pに対して、R1を紹介する通知が到達する。これらのアドレス変換ルールは、第1ルータ装置212および第2ルータ装置222のフィルタリングルールの一部として記憶される。
 さて、通信対戦ゲームでは、対戦を行う端末装置同士が対戦通信に使用するために、あらかじめ定めた対戦用ポート番号(以下「Q」という。)を用いてピアツーピアの通信を行う。
 そこで、第1端末装置211は、IPアドレスR2のあらかじめ定めた対戦用ポート番号Qに対して、通信を開始し、第2端末装置221は、IPアドレスR1のあらかじめ定めた対戦用ポート番号Qに対して、通信を開始する。
 すると、R1/Qに対する通信は、第1ルータ装置212のアドレス変換により、第1端末装置211のポートQに到達し、R2/Qに対する通信は、第2ルータ装置222のアドレス変換により、第2端末装置221のポートQに到達する。
 このようにして、ポートQ同士を介したピアツーピアの通信対戦が行われるのである。
 また、第1ルータ装置212や第2ルータ装置222そのものがインターネット241に接続されていることを確認するため、ping/icmpプロトコル(ポート番号の既定値は1)に応答するように構成するのが典型的である。この場合、Qの値としては、1以外を採用する。
 この場合、第2端末装置221において、第1端末装置211宛のパケットの宛先はR1/Qとなり、第1ルータ装置212宛のパケットの宛先はR1/1となる。これらのパケットの送付に対して、ACKが返ってきたら、第1端末装置211への通信ならびに第1ルータ装置212宛への通信が成功したことになる。
 また、第1端末装置211において、第2端末装置221宛のパケットの宛先はR2/Qとなり、第2ルータ装置222宛のパケットの宛先はR2/1となる。これらのパケットの送付に対して、ACKが返ってきたら、第2端末装置221への通信ならびに第2ルータ装置222宛への通信が成功したことになる。
 なお、ポート番号P、Qについては、必ずしも定数とする必要はない。また、ping/icmpプロトコル以外のプロトコルやポート番号を使用して、ルータ装置の接続確認を行うことも可能である。これらの第1端末装置211や第2端末装置221が家庭内LANで利用するポート番号と、第1ルータ装置212や第2ルータ装置222がインターネット241で利用するポート番号との対応関係が、何らかの手法で、サーバ装置231に伝達され、第1端末装置211と第2端末装置221への紹介の際に伝えられて、相互に知得できるようになっていれば、上記のような五者の通信を構成することができる。したがって、これらの実施形態も本発明の範囲に含まれる。
 図3は、第1端末装置211、第1ルータ装置212、第2端末装置221、第2ルータ装置222、ならびに、サーバ装置231の間で、正常に通信が可能となっている様子を示す説明図である。以下、本図を参照して説明する。
 本図においては、AからBへパケットの送信を試みたところBからAへACKが返ってきた、すなわち、AからBへの通信が成功したということを、「A―○→B」のように○印を付した矢印で表記している。
 通信対戦ゲームにおいて、主体的に通信を行うのは、第1端末装置211、第2端末装置221、サーバ装置231の3つであり、第1ルータ装置212と第2ルータ装置222の2つは、他者から通信されることによって処理を行うから、本図における矢印の始点は、第1端末装置211、第2端末装置221、サーバ装置231となっている。
 さて、第1端末装置211のユーザが通信対戦ゲームにおいて、ある対戦結果を無効にするために、通信を不可能にするための方策としては、上記のように、以下の方策が考えられる。
 (1)第1端末装置211の電源を切る。
 (2)第1ルータ装置212の電源を切る。
 (3)第1端末装置211と第1ルータ装置212の間の通信ケーブルを抜く。
 (4)第1ルータ装置212とインターネット241の間の通信ケーブルを抜く。
 (5)第1ルータ装置212のゲートウェイ/ファイアウォール設定を一時的に変更して、第1ルータ装置212とインターネット241との間の通信をすべて遮断する。
 (6)第1ルータ装置212のゲートウェイ/ファイアウォール設定を一時的に変更して、第2端末装置221から第1端末装置211への通信を遮断する。
 上記(1)~(5)の方策に対しては、特許文献1に開示する技術等によって対応が可能である。本実施形態においては、上記(6)の不正行為に対して対応しようとするものである。
 図4は、第1端末装置211、第1ルータ装置212、第2端末装置221、第2ルータ装置222、サーバ装置231の間で、上記のような不正な設定を行うことにより、一部で通信が不可能となっている様子を示す説明図である。以下、本図を参照して説明する。
 本図と前図とを対比すると、第2端末装置221から第1端末装置211への矢印は、×印を付してある(「←×―」)が、それ以外の矢印は、○印が付されたままで通信可能な状態で残っている。そして、前図では、第1端末装置211と第2端末装置221とで対称だった矢印の配置が、本図では非対称になっている。本実施形態では、この非対称性を用いて、第1端末装置211のユーザの不正行為を検出する。
 図5は、本実施形態の第1端末装置211および第2端末装置221として機能する端末装置の概要構成を示す模式図である。図6は、当該端末装置にて実行される端末処理の制御の流れを示すフローチャートである。以下、これらの図を参照して説明する。
 端末装置501は、相手方通信部502、ルータ識別子取得部503、ルータ通信部504、状況送信部505、情報受信部506を有する。
 端末処理が開始されると、上記のように、端末装置501は、ロビーサーバとして機能するサーバ装置231にアクセスして通信相手がインターネットに公開するIPアドレスおよびポート番号の紹介を受け、相手方通信部502においてピアツーピア通信の初期設定を行う(ステップS601)。ここで知得されるIPアドレスおよびポート番号は、相手方の端末装置501がインターネット241に直接接続されている場合には、相手方の端末装置501が直接使用するものである。
 しかし、多くの場合、相手方の端末装置501はルータ装置を介してインターネット241に接続されている。したがって、相手方の端末装置501が使用するルータ装置のIPアドレスであり、当該相手方のルータ装置において、ステップS601で知得されるポート番号にパケットが到着すると、そのパケットは、当該相手方の端末装置501へ中継される。
 ここで得られる相手方のIPアドレスおよびポート番号は、RAM 103等に一時的に記憶される。したがって、CPU 101は、NIC 109やRAM 103と共働して、ルータ識別子取得部503として機能する。
 ついで、端末装置501は、相手方の端末装置501やサーバ装置231からパケットが到着していれば(ステップS602;Yes)、これを受信してから(ステップS603)、到着していなければ(ステップS602;No)そのまま、通信対戦ゲームの計算処理を行う(ステップS604)。通信対戦ゲームの計算処理内容は、各種のゲーム技術をそのまま適用することができる。
 多くの場合、通信対戦が継続している間はパケットは相手方の端末装置501との間でやりとりされ、通信対戦が終了して対戦結果を報告する段階になると、パケットはサーバ装置231との間でやりとりされる。したがって、この場合には、CPU 101は、NIC 109やRAM 103と共働して、相手方通信部502として機能する。
 また、後述するように、相手方の端末装置501からサーバ装置231を中継して到着したパケットを、相手方の端末装置501から直接到着したパケットとして、通信対戦ゲームの対戦を進める計算処理も行う。この場合には、CPU 101は、NIC 109やRAM 103と共働して、情報受信部506として機能する。
 そして、通信対戦ゲームの計算処理によって相手方にパケットを送信すべき状況となったら(ステップS605;相手方)、相手方通信部502は、ステップS601にて紹介されたIPアドレスおよびポート番号へ、そのパケットの送信を試みる(ステップS606)。この場合も、CPU 101は、NIC 109やRAM 103と共働して、相手方通信部502として機能する。
 パケット送信に対してタイムアウトが生じるまでにACKが返送されてきて、送信が成功したら(ステップS607;Yes)、成功した旨をサーバ装置231に通知するか否かを判断する(ステップS608)。サーバ装置231への通知は、一定期間おき、あるいは、一定個数のパケット送信が行われたときのほか、通信対戦が終了した際等、適宜間引きして行うのが典型的であるが、両者の対戦の様子をインターネット241の他の端末装置501に放送する場合には、通信対戦ゲームの様子を表す情報とともに、毎回行うのが典型的である。
 通知することとなったら(ステップS608;Yes)、相手方への通信が成功した旨を指定する接続状況パケットをサーバ装置231へ送信して(ステップS609)ステップS602に戻り、そうでなければ(ステップS608;No)、そのままステップS602に戻る。
 一方、相手方への通信においてタイムアウトが発生して、送信が失敗したら(ステップS607;No)、ステップS601にて紹介されたIPアドレスのping/icmpプロトコル用ポートに、当該プロトコルに基づいたパケット送信を試みて、相手方のルータ装置への通信が可能であるかを調べる(ステップS610)。
 ping/icmpの問い合わせを相手方のルータ装置が受信すると、相手方のルータ装置は、LAN内にパケットを流入させることなく、ACKや応答パケットを返送してくる。したがって、上記(6)のような不正設定を行った場合であっても、相手方のルータ装置からのACKや応答パケットは得られるはずである。
 そして、
 (1)当該パケット送信が成功したか否かの結果、および、
 (2)ステップS606、S607で送信に失敗した不達パケットの内容を送付情報として
指定する接続情報パケットを生成してサーバ装置231に送信し(ステップS611)、ステップS602に戻る。
 なお、ステップS610におけるパケット送信が成功したか否かは、相手方のルータ装置への通信が成功したか否かを表す。また、ステップS611にて生成される接続状況パケットに不達パケットが含まれていれば、相手方端末装置501への通信が失敗したこととなる。したがって、相手方端末装置501への通信が失敗したことを、明示的に接続情報パケットに指定する必要性はない。
 また、送信に失敗したパケットの内容をサーバ装置231に送信するのは、サーバ装置231を介して相手方端末装置501に当該パケットの内容を通知するためである。これによって、一時的なネットワーク不調に対応することや、相手方の不正行為を事実上無意味にすることが可能となる。
 したがって、CPU 101は、RAM 103やNIC 109と共働して、状況送信部505として機能する。
 相手方通信部502から当該通信相手への通信が成功しているか否か、および、ルータ通信部504から当該通信相手が接続されるルータ装置への通信が成功しているか否かを指定する接続状況情報を、所定のタイミングでサーバ装置に送信する。
 通信相手への通信が成功している場合には、当然に、通信相手のルータ装置への通信が成功していることとなるので、接続状況情報にルータ通信部504による通信の成功の可否が指定されるのは、通信相手への通信が失敗している場合に限ることとしても良い。なお、所定のタイミングの典型例としては、一定時間おき、通信相手との通信に失敗したとき、通信相手との対戦が終了して対戦結果を報告するとき、またはこれらの適当な組み合わせ等が考えられる。
 このようにして端末装置501では、通信対戦ゲームが行われる一方で、サーバ装置231は、端末装置501(第1端末装置211、第2端末装置221)から送信される接続状況パケットの内容を見て、不正行為が生じているか否かを判定する処理を行う。
 図7は、サーバ装置231の概要構成を示す模式図であり、図8は、サーバ装置231にて実行されるサービス処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。なお、以下では理解を容易にするため、接続状況パケットの処理に着目して説明を行う。対戦相手を紹介したり、対戦結果を蓄積してランキングを生成する等のロビーサーバとしての機能については、各種の公知技術を適用することができる。
 さて、サーバ装置231は、状況受信部701、不正判定部702、情報中継部703を備える。
 本サービス処理が開始されると、サーバ装置231のCPU 101はNIC 109を監視して、第1端末装置211や第2端末装置221等の各種の外部装置からパケットが到着しているか否か調べ(ステップS801)、到着していなければ(ステップS801;No)、一定時間待機して、あるいは、他の処理を適宜コルーチン的に行ってから(ステップS802)、ステップS801に戻る。
 一方、パケットが到着していれば(ステップS801;Yes)、当該パケットを受信する(ステップS803)。そして、そのパケットの種類を調べ(ステップS804)、これが第1端末装置211から送信された接続状況パケットであれば(ステップS804;第1端末より)、第1端末装置211からの最新の接続状況パケットとして、RAM 103内に記憶して(ステップS805)、ステップS811に進む。
 また、これが第2端末装置221から送信された接続状況パケットであれば(ステップS804;第2端末より)、第2端末装置221からの最新の接続状況パケットとして、RAM 103内に記憶して(ステップS806)、ステップS811に進む。
 これが、その他の種類のパケットであれば(ステップS804;その他)、当該パケットに対応する処理を実行して(ステップS807)、ステップS801に戻る。ここで行う処理には、たとえば、ロビーサーバとしての処理等が含まれる。
 さて、第1端末装置211からの最新の接続状況パケットと、第2端末装置221からの最新の接続状況パケットと、が、揃ったら(ステップS811;Yes)、これらの接続状況パケットを吟味する(ステップS812)。
 なお、ここでの処理は、両者からの接続状況パケットを1対1に対応付けて、到着順に吟味しても良いが、新たな接続状況パケットが到着するごとに過去のものは破棄して、最新のものを参照するとともに、下記の判断過程において判断の対象となった接続状況パケットは破棄して、判断がされた後に初めて両者からの接続状況パケットが揃ってから次の判断を行うのが典型的である。
 すなわち、第1端末装置211から第2端末装置221への通信が成功し、第2端末装置221から第1端末装置211への通信が失敗し、第2端末装置221から第1ルータ装置212への通信が成功している旨が指定されている場合、(ステップS812;第1端末―○→第2端末,第1端末←×―第2端末,第1ルータ←○―第2端末)第1端末装置211のユーザに不正行為があったと判定し(ステップS821)、その旨をRAM 103内に記録する(ステップS822)。
 そして、CPU 101は、NIC 109を介して、第2端末装置221からの接続状況パケットに指定されている不達パケットを、第1端末装置211に送信して(ステップS823)、ステップS871に進む。
 一方、第2端末装置221から第1端末装置211への通信が成功し、第1端末装置211から第2端末装置221への通信が失敗し、第1端末装置211から第2ルータ装置222への通信が成功している場合(ステップS812;第1端末←○―第2端末,第1端末―×→第2端末,第1端末―○→第2ルータ)第2端末装置221のユーザに不正行為があったと判定し(ステップS831)、その旨をRAM 103内に記録する(ステップS832)。
 そして、CPU 101は、NIC 109を介して、第1端末装置211からの接続状況パケットに指定されている不達パケットを、第2端末装置221に送信して(ステップS833)、ステップS871に進む。
 したがって、サーバ装置231は、ステップS823およびステップS833で不達パケットの中継を行うため、CPU 101は、NIC 109と共働して、情報中継部703として機能する。
 このほかの接続状況が発見された場合(ステップS812;その他)、たとえば特許文献1に開示される判断基準等を適用して不正行為の原因側を判定し(ステップS834)、その結果をRAM 103内に記録して(ステップS835)、ステップS871に進む。
 一方、第1端末装置211からの最新の接続状況パケットと、第2端末装置221からの最新の接続状況パケットと、が揃っていない場合(ステップS811;No)、揃わない原因がいずれにあるかを調べる。すなわち、第1端末装置211から接続状況パケットが一定期間到着していなければ(ステップS841;第1端末)、第1端末装置211いのユーザに不正行為があったと判定し(ステップS851)、その旨をRAM 103に記録して(ステップS852)、ステップS871に進む。
 また、第2端末装置221から接続状況パケットが一定期間到着していなければ(ステップS841;第2端末)、第2端末装置221のユーザに不正行為があったと判定し(ステップS853)、その旨をRAM 103に記録して(ステップS854)、ステップS871に進む。
 また、最後に接続状況パケットを受信してから、第1端末装置211についても第2端末装置221についてもまだ当該一定期間が経過していなければ(ステップS841;猶予期間)、ステップS801に戻る。
 さて、不正行為が検出された後は、RAM 103に記録された不正行為者のユーザの成績にペナルティを課す等、ゲーム成績の計算処理を行って(ステップS871)、ステップS801に戻る。
 なお、サーバ装置231による通信性能、処理性能に制限がある場合には、不達パケットの中継処理は、適宜省略することとしても良い。
 このような処理を行うことで、対戦相手からのパケット流入を一時的に遮断するような方策による不正行為があってもこれを検出してペナルティを課すとともに、そのような不正行為があっても不達パケットをサーバで中継することによって、不正行為そのものを無意味と化し、公平な通信対戦環境の維持に寄与することができるようになる。
 なお、本願では、日本国特許出願特願2008-034497号(2008年2月15日出願)を基礎とする優先権を主張するものとし、指定国の法令が許す限り、当該基礎出願の内容を本願に取り込むものとする。
 以上説明したように、本発明によれば、ルータ装置を使用するユーザが通信対戦ゲームにおいてルータ装置の設定を変更することで通信対戦の結果を無効にしようとする等の不正行為を検出するのに好適な通信システム、通信方法、これらをコンピュータにて実現するプログラムを記録したコンピュータ読取可能な情報記録媒体、ならびに、当該プログラムを提供することができる。

Claims (6)

  1.  コンピュータ通信網(241)に第1ルータ装置(212)を介して接続される第1端末装置(211)と、当該コンピュータ通信網(241)に第2ルータ装置(222)を介して接続される第2端末装置(221)と、当該コンピュータ通信網(241)に接続されるサーバ装置(231)と、を有し、前記第1端末装置(211)と、前記第2端末装置(221)と、が、前記第1ルータ装置(212)と、前記コンピュータ通信網(241)と、前記第2ルータ装置(222)と、を介して、互いを通信相手として通信する通信システム(201)であって、
     (a)前記第1端末装置(211)と、前記第2端末装置(221)と、は、いずれも、
     当該端末装置が接続されるルータ装置を介して、当該通信相手との通信を行う相手方通信部(502)、
     前記相手方通信部(502)から当該通信相手への通信が成功すると、当該通信相手が接続されるルータ装置の通信識別子を取得するルータ識別子取得部(503)、
     前記相手方通信部(502)から当該通信相手への通信が成功した後に失敗すると、前記取得された通信識別子を有するルータ装置への通信を行うルータ通信部(504)、
     前記相手方通信部(502)から当該通信相手への通信が成功しているか否か、および、前記ルータ通信部(504)から当該通信相手が接続されるルータ装置への通信が成功しているか否かを指定する接続状況情報を、所定のタイミングで前記サーバ装置(231)に送信する状況送信部(505)
     を備え、
     (b)前記サーバ装置(231)は、
     前記第1端末装置(211)から送信される接続状況情報と、前記第2端末装置(221)から送信される接続状況情報と、を受信する状況受信部(701)、
     前記受信された前記第1端末装置(211)からの接続状況情報と、前記第2端末装置(221)からの接続状況情報と、に、より、
      (1)前記第1端末装置(211)から前記第2端末装置(221)への通信が成功し、前記第2端末装置(221)から前記第1端末装置(211)への通信が失敗し、前記第2端末装置(221)から前記第1ルータ装置(212)への通信が成功している旨が指定されている場合、前記第1端末装置(211)のユーザに不正行為があったと判定し、
      (2)前記第2端末装置(221)から前記第1端末装置(211)への通信が成功し、前記第1端末装置(211)から前記第2端末装置(221)への通信が失敗し、前記第1端末装置(211)から前記第2ルータ装置(222)への通信が成功している旨が指定されている場合、前記第2端末装置(221)のユーザに不正行為があったと判定する
    不正判定部(702)
     を備えることを特徴とする通信システム(201)。
  2.  請求項1に記載の通信システム(201)であって、前記不正判定部(702)は、
      (3)前記第1端末装置(211)から送信されるべき接続状況情報が所定の期間受信されず、前記第2端末装置(221)から送信されるべき接続状況情報が当該所定の期間に受信された場合、前記第1端末装置(211)のユーザに不正行為があったと判定し、
      (4)前記第2端末装置(221)から送信されるべき接続状況情報が当該所定の期間受信されず、前記第1端末装置(211)から送信されるべき接続状況情報が当該所定の期間に受信された場合、前記第2端末装置(221)のユーザに不正行為があったと判定する
     ことを特徴とする通信システム(201)。
  3.  請求項1または2に記載の通信システム(201)であって、
     (c)前記第1端末装置(211)と、前記第2端末装置(221)と、において、前記相手方通信部(502)による当該通信相手との通信が失敗しており、前記ルータ通信部(504)による当該通信相手が接続されるルータ装置との通信が成功している場合、前記状況送信部(505)は、前記相手方通信部(502)による当該通信相手との通信が失敗しており、前記ルータ通信部(504)による当該通信相手が接続されるルータ装置との通信が成功している旨に加えて、前記相手方通信部(502)が当該通信相手への送信に失敗した送付情報を、当該接続状況情報に指定して前記サーバ装置(231)に送信し、
     (d)前記サーバ装置(231)は、前記(1)の条件が成立する場合、前記第2端末装置(221)からの接続状況情報に指定される送付情報を前記第1端末装置(211)へ送信し、前記(2)の条件が成立する場合、前記第1端末装置(211)からの接続状況情報に指定される送付情報を前記第2端末装置(221)へ送信して、当該送付情報を中継する情報中継部(703)をさらに備え、
     (e)前記第1端末装置(211)と、前記第2端末装置(221)と、は、それぞれ、
     前記サーバ装置(231)から送信された送付情報を受信する情報受信部(506)をさらに備え、
     前記相手方通信部(502)は、前記情報受信部(506)により受信された送付情報を当該通信相手から通信されたものとする
     ことを特徴とする通信システム(201)。
  4.  コンピュータ通信網(241)に第1ルータ装置(212)を介して接続される第1端末装置(211)と、当該コンピュータ通信網(241)に第2ルータ装置(222)を介して接続される第2端末装置(221)と、当該コンピュータ通信網(241)に接続されるサーバ装置(231)と、が実行する通信方法であって、前記第1端末装置(211)と、前記第2端末装置(221)と、は、前記第1ルータ装置(212)と、前記コンピュータ通信網(241)と、前記第2ルータ装置(222)と、を介して、互いを通信相手として通信し、
     (a)前記第1端末装置(211)と、前記第2端末装置(221)と、は、いずれも、相手方通信部(502)、ルータ識別子取得部(503)、ルータ通信部(504)、状況送信部(505)を備え、前記通信方法は、
     前記相手方通信部(502)が、当該端末装置が接続されるルータ装置を介して、当該通信相手との通信を行う相手方通信工程、
     前記相手方通信工程にて当該通信相手への通信が成功すると、前記ルータ識別子取得部(503)が、当該通信相手が接続されるルータ装置の通信識別子を取得するルータ識別子取得工程、
     前記相手方通信工程にて当該通信相手への通信が成功した後に失敗すると、前記ルータ通信部(504)が、前記取得された通信識別子を有するルータ装置への通信を行うルータ通信工程、
     前記相手方通信工程にて当該通信相手への通信が成功しているか否か、および、前記ルータ通信工程にて当該通信相手が接続されるルータ装置への通信が成功しているか否かを指定する接続状況情報を、所定のタイミングで前記サーバ装置(231)に送信する状況送信工程
     を備え、
     (b)前記サーバ装置(231)は、状況受信部(701)、不正判定部(702)を備え、前記通信方法は、
     前記状況受信部(701)が、前記第1端末装置(211)から送信される接続状況情報と、前記第2端末装置(221)から送信される接続状況情報と、を受信する状況受信工程、
     前記不正判定部(702)が、前記受信された前記第1端末装置(211)からの接続状況情報と、前記第2端末装置(221)からの接続状況情報と、に、より、
      (1)前記第1端末装置(211)から前記第2端末装置(221)への通信が成功し、前記第2端末装置(221)から前記第1端末装置(211)への通信が失敗し、前記第2端末装置(221)から前記第1ルータ装置(212)への通信が成功している旨が指定されている場合、前記第1端末装置(211)のユーザに不正行為があったと判定し、
      (2)前記第2端末装置(221)から前記第1端末装置(211)への通信が成功し、前記第1端末装置(211)から前記第2端末装置(221)への通信が失敗し、前記第1端末装置(211)から前記第2ルータ装置(222)への通信が成功している旨が指定されている場合、前記第2端末装置(221)のユーザに不正行為があったと判定する
    不正判定工程
     を備えることを特徴とする通信方法。
  5.  コンピュータ通信網(241)に第1ルータ装置(212)を介して接続される第1端末コンピュータを第1端末装置(211)として機能させ、当該コンピュータ通信網(241)に第2ルータ装置(222)を介して接続される第2端末コンピュータを第2端末装置(221)として機能させる端末プログラムと、当該コンピュータ通信網(241)に接続されるサーバコンピュータをサーバ装置(231)として機能させるサーバプログラムと、を有するプログラムを記録したコンピュータ読取可能な情報記録媒体であって、前記第1端末装置(211)と、前記第2端末装置(221)と、が、前記第1ルータ装置(212)と、前記コンピュータ通信網(241)と、前記第2ルータ装置(222)と、を介して、互いを通信相手として通信するように、機能させ、
     (a)前記端末プログラムは、前記第1端末コンピュータと、前記第2端末コンピュータと、の、それぞれを、
     当該端末装置が接続されるルータ装置を介して、当該通信相手との通信を行う相手方通信部(502)、
     前記相手方通信部(502)から当該通信相手への通信が成功すると、当該通信相手が接続されるルータ装置の通信識別子を取得するルータ識別子取得部(503)、
     前記相手方通信部(502)から当該通信相手への通信が成功した後に失敗すると、前記取得された通信識別子を有するルータ装置への通信を行うルータ通信部(504)、
     前記相手方通信部(502)から当該通信相手への通信が成功しているか否か、および、前記ルータ通信部(504)から当該通信相手が接続されるルータ装置への通信が成功しているか否かを指定する接続状況情報を、所定のタイミングで前記サーバコンピュータに送信する状況送信部(505)
     として機能させ、
     (b)前記サーバプログラムは、前記サーバコンピュータを、
     前記第1端末コンピュータから送信される接続状況情報と、前記第2端末コンピュータから送信される接続状況情報と、を受信する状況受信部(701)、
     前記受信された前記第1端末コンピュータからの接続状況情報と、前記第2端末コンピュータからの接続状況情報と、に、より、
      (1)前記第1端末コンピュータから前記第2端末コンピュータへの通信が成功し、前記第2端末コンピュータから前記第1端末コンピュータへの通信が失敗し、前記第2端末コンピュータから前記第1ルータ装置(212)への通信が成功している旨が指定されている場合、前記第1端末コンピュータのユーザに不正行為があったと判定し、
      (2)前記第2端末コンピュータから前記第1端末コンピュータへの通信が成功し、前記第1端末コンピュータから前記第2端末コンピュータへの通信が失敗し、前記第1端末コンピュータから前記第2ルータ装置(222)への通信が成功している旨が指定されている場合、前記第2端末コンピュータのユーザに不正行為があったと判定する
    不正判定部(702)
     として機能させることを特徴とするプログラムを記録したコンピュータ読取可能な情報記録媒体。
  6.  コンピュータ通信網(241)に第1ルータ装置(212)を介して接続される第1端末コンピュータを第1端末装置(211)として機能させ、当該コンピュータ通信網(241)に第2ルータ装置(222)を介して接続される第2端末コンピュータを第2端末装置(221)として機能させる端末プログラムと、当該コンピュータ通信網(241)に接続されるサーバコンピュータをサーバ装置(231)として機能させるサーバプログラムと、を有するプログラムであって、前記第1端末装置(211)と、前記第2端末装置(221)と、が、前記第1ルータ装置(212)と、前記コンピュータ通信網(241)と、前記第2ルータ装置(222)と、を介して、互いを通信相手として通信するように、機能させ、
     (a)前記端末プログラムは、前記第1端末コンピュータと、前記第2端末コンピュータと、の、それぞれを、
     当該端末装置が接続されるルータ装置を介して、当該通信相手との通信を行う相手方通信部(502)、
     前記相手方通信部(502)から当該通信相手への通信が成功すると、当該通信相手が接続されるルータ装置の通信識別子を取得するルータ識別子取得部(503)、
     前記相手方通信部(502)から当該通信相手への通信が成功した後に失敗すると、前記取得された通信識別子を有するルータ装置への通信を行うルータ通信部(504)、
     前記相手方通信部(502)から当該通信相手への通信が成功しているか否か、および、前記ルータ通信部(504)から当該通信相手が接続されるルータ装置への通信が成功しているか否かを指定する接続状況情報を、所定のタイミングで前記サーバコンピュータに送信する状況送信部(505)
     として機能させ、
     (b)前記サーバプログラムは、前記サーバコンピュータを、
     前記第1端末コンピュータから送信される接続状況情報と、前記第2端末コンピュータから送信される接続状況情報と、を受信する状況受信部(701)、
     前記受信された前記第1端末コンピュータからの接続状況情報と、前記第2端末コンピュータからの接続状況情報と、に、より、
      (1)前記第1端末コンピュータから前記第2端末コンピュータへの通信が成功し、前記第2端末コンピュータから前記第1端末コンピュータへの通信が失敗し、前記第2端末コンピュータから前記第1ルータ装置(212)への通信が成功している旨が指定されている場合、前記第1端末コンピュータのユーザに不正行為があったと判定し、
      (2)前記第2端末コンピュータから前記第1端末コンピュータへの通信が成功し、前記第1端末コンピュータから前記第2端末コンピュータへの通信が失敗し、前記第1端末コンピュータから前記第2ルータ装置(222)への通信が成功している旨が指定されている場合、前記第2端末コンピュータのユーザに不正行為があったと判定する
    不正判定部(702)
     として機能させることを特徴とするプログラム。
PCT/JP2009/052283 2008-02-15 2009-02-12 通信システム、通信方法、情報記録媒体、ならびに、プログラム WO2009101962A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2009801000557A CN101785248B (zh) 2008-02-15 2009-02-12 通信系统、通信方法、信息记录介质及程序
US12/867,744 US8560676B2 (en) 2008-02-15 2009-02-12 Communication system, communication method, information recording medium, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008034497A JP4690432B2 (ja) 2008-02-15 2008-02-15 通信システム、通信方法、ならびに、プログラム
JP2008-034497 2008-02-15

Publications (1)

Publication Number Publication Date
WO2009101962A1 true WO2009101962A1 (ja) 2009-08-20

Family

ID=40956992

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/052283 WO2009101962A1 (ja) 2008-02-15 2009-02-12 通信システム、通信方法、情報記録媒体、ならびに、プログラム

Country Status (6)

Country Link
US (1) US8560676B2 (ja)
JP (1) JP4690432B2 (ja)
KR (1) KR101079609B1 (ja)
CN (1) CN101785248B (ja)
TW (1) TWI368423B (ja)
WO (1) WO2009101962A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110105221A1 (en) * 2009-11-04 2011-05-05 Nintendo Co., Ltd. Game system, storage medium and game controlling method

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5675235B2 (ja) * 2010-09-10 2015-02-25 任天堂株式会社 情報処理システム、情報処理プログラムおよび情報処理方法
JP5675234B2 (ja) * 2010-09-10 2015-02-25 任天堂株式会社 情報処理システム、情報処理プログラムおよび情報処理方法
US11258679B2 (en) 2015-07-28 2022-02-22 Spirent Communications, Inc. Systems and methods for automated testing of MoCA networks
US10129102B2 (en) 2016-05-11 2018-11-13 Spirent Communications, Inc. Service based testing
US10448007B2 (en) * 2015-07-28 2019-10-15 Spirent Communications, Inc. Discovery and identification of layer 2 coax problems in MoCA networks
CN112370793B (zh) * 2020-11-25 2024-08-16 上海幻电信息科技有限公司 用户账号的风险控制方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10107795A (ja) * 1996-09-30 1998-04-24 Hitachi Software Eng Co Ltd ネットワーク管理システム
WO2000039688A1 (fr) * 1998-12-28 2000-07-06 Sega Enterprises, Ltd. Dispositif et procede de gestion de memoire de sauvegarde, machine de jeu et support enregistre
JP2001034553A (ja) * 1999-07-26 2001-02-09 Hitachi Ltd ネットワークアクセス制御方法及びその装置
JP2004222805A (ja) * 2003-01-20 2004-08-12 Konami Co Ltd スコアシステム
JP2005130166A (ja) * 2003-10-23 2005-05-19 Konami Computer Entertainment Studios Inc 端末装置、端末方法、ならびに、プログラム
JP2006212288A (ja) * 2005-02-04 2006-08-17 Konami Digital Entertainment:Kk 不正行為防止方法、ゲーム装置及び不正行為防止プログラム
WO2007094215A1 (ja) * 2006-02-16 2007-08-23 Konami Digital Entertainment Co., Ltd. ゲーム端末装置、ゲーム管理システム及びゲーム管理方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07131478A (ja) * 1993-11-05 1995-05-19 Fujitsu Ltd Lan間通信方法及びlan間接続装置
JP2002082880A (ja) * 2000-06-28 2002-03-22 Oregadare Inc メッセージの送受信管理方法及びメッセージの送受信管理システム
US7263610B2 (en) * 2002-07-30 2007-08-28 Imagictv, Inc. Secure multicast flow
CN101771613B (zh) * 2004-06-30 2012-11-07 松下电器产业株式会社 通信装置以及通信方法
CN100586102C (zh) * 2004-07-06 2010-01-27 松下电器产业株式会社 移动路由器、归属代理、路由器位置登录方法以及移动网络系统
JP2006280817A (ja) * 2005-04-04 2006-10-19 Aruze Corp 不正行為監視システム
JP5252676B2 (ja) * 2006-12-05 2013-07-31 株式会社バンダイナムコゲームス プログラム、情報記憶媒体、ゲーム機及びネットワークシステム
CN101119206B (zh) * 2007-09-13 2011-03-02 北京交通大学 基于标识的一体化网络终端统一接入控制方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10107795A (ja) * 1996-09-30 1998-04-24 Hitachi Software Eng Co Ltd ネットワーク管理システム
WO2000039688A1 (fr) * 1998-12-28 2000-07-06 Sega Enterprises, Ltd. Dispositif et procede de gestion de memoire de sauvegarde, machine de jeu et support enregistre
JP2001034553A (ja) * 1999-07-26 2001-02-09 Hitachi Ltd ネットワークアクセス制御方法及びその装置
JP2004222805A (ja) * 2003-01-20 2004-08-12 Konami Co Ltd スコアシステム
JP2005130166A (ja) * 2003-10-23 2005-05-19 Konami Computer Entertainment Studios Inc 端末装置、端末方法、ならびに、プログラム
JP2006212288A (ja) * 2005-02-04 2006-08-17 Konami Digital Entertainment:Kk 不正行為防止方法、ゲーム装置及び不正行為防止プログラム
WO2007094215A1 (ja) * 2006-02-16 2007-08-23 Konami Digital Entertainment Co., Ltd. ゲーム端末装置、ゲーム管理システム及びゲーム管理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110105221A1 (en) * 2009-11-04 2011-05-05 Nintendo Co., Ltd. Game system, storage medium and game controlling method
US9174127B2 (en) * 2009-11-04 2015-11-03 Nintendo Co., Ltd. Video game with matchmaking based upon denial of communications

Also Published As

Publication number Publication date
TWI368423B (en) 2012-07-11
KR20100040922A (ko) 2010-04-21
CN101785248B (zh) 2012-07-18
CN101785248A (zh) 2010-07-21
KR101079609B1 (ko) 2011-11-03
US8560676B2 (en) 2013-10-15
TW200943839A (en) 2009-10-16
US20100312889A1 (en) 2010-12-09
JP2009189622A (ja) 2009-08-27
JP4690432B2 (ja) 2011-06-01

Similar Documents

Publication Publication Date Title
JP4690432B2 (ja) 通信システム、通信方法、ならびに、プログラム
TWI253580B (en) Game apparatus, game method, and game program
US20090042646A1 (en) Method and apparatus for player replacement in an on-line game
CA2585765C (en) Game system and method for controlling game system, game server device therefor, and game device therefor
JP4632439B2 (ja) 通信制御プログラム及びコンピュータ端末
CN104602774A (zh) 游戏系统、该游戏系统的控制方法以及在计算机装置中能读取的存储介质
WO2007074665A1 (ja) チャットシステム、チャット装置及びチャットサーバの制御方法、情報記憶媒体
TW200822655A (en) Custom ASIC combining VOIP and security IP
WO2010029024A1 (en) Electronic gaming system and method
EP1206955A2 (en) Information terminal, information providing server, online game method and recording medium
JP4330976B2 (ja) 端末装置、端末方法、プログラム、ならびに、通信システム
US9220987B2 (en) Method of exchanging data between communication terminals
JP3563398B2 (ja) スコアシステム
JP3916601B2 (ja) 通信システム、サーバ装置、端末、サービス方法、端末方法、および、プログラム
JP2021052240A (ja) プログラム、通信装置、および通信方法
JP6030884B2 (ja) マッチング装置、ゲームシステム、マッチング方法、マッチングプログラム
US20090132930A1 (en) E-mail community system for a network game and program therefor
CN115253311A (zh) 一种棋牌游戏跨服务器战斗方法、设备及介质
JP2003181145A (ja) ネットワークゲームシステム、サーバシステム、クライアントシステム、ネットワークゲーム処理方法、プログラム及び記録媒体
JP5222899B2 (ja) ゲームシステム、サーバ装置、ログイン方法、ならびに、プログラム
JP6194458B2 (ja) マッチング装置、ゲームシステム、マッチング方法、マッチングプログラム
JP4681659B2 (ja) 確認システム、通信システム、確認サーバ装置、確認方法、ならびに、プログラム
JP5073793B2 (ja) ゲーム端末、ゲーム端末の制御方法、ならびに、プログラム
JP3842251B2 (ja) ノード装置、通信システム、ノード方法、ならびに、プログラム
Hiedels et al. UbiSettlers--a dynamically adapting mobile P2P multiplayer game for hybrid networks

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200980100055.7

Country of ref document: CN

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

Ref document number: 09709490

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20107003038

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 12867744

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09709490

Country of ref document: EP

Kind code of ref document: A1