KR20080042909A - 정보 처리 장치, 포트 검출 장치, 정보 처리 방법 및 포트검출 방법 - Google Patents

정보 처리 장치, 포트 검출 장치, 정보 처리 방법 및 포트검출 방법 Download PDF

Info

Publication number
KR20080042909A
KR20080042909A KR1020087007653A KR20087007653A KR20080042909A KR 20080042909 A KR20080042909 A KR 20080042909A KR 1020087007653 A KR1020087007653 A KR 1020087007653A KR 20087007653 A KR20087007653 A KR 20087007653A KR 20080042909 A KR20080042909 A KR 20080042909A
Authority
KR
South Korea
Prior art keywords
port
packet
processing apparatus
detection
information
Prior art date
Application number
KR1020087007653A
Other languages
English (en)
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 마쯔시다덴기산교 가부시키가이샤
Publication of KR20080042909A publication Critical patent/KR20080042909A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2517Translation of Internet protocol [IP] addresses using port numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2557Translation policies or rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2575NAT traversal using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2578NAT traversal without involvement of the NAT server

Landscapes

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

Abstract

통신 처리 장치(2)를 통하여 버블 패킷을 송신하는 버블 패킷 송신부(12)와, 버블 패킷 송신 포트의 위치를 검출하기 위해서 이용되는 검출용 패킷을 통신 처리 장치(2)의 종류에 따라 검출용 패킷이 통과한 통신 처리 장치(2)의 포트인 검출용 패킷 송신 포트와, 버블 패킷 송신 포트가 동일해지거나 또는 상이하도록 통신 처리 장치(2)를 통하여 송신하는 검출용 패킷 송신부(16)와 검출용 패킷 송신 포트의 위치에 의거하여 버블 패킷 송신 포트의 위치를 검출하는 버블 패킷 송신 포트 검출부(21)를 구비하는 정보 처리 장치를 제공한다. 이러한 구성에 의해, 통신 처리 장치에 송신 이력을 남기기 위한 버블 패킷이 송신된 경우에, 그 버블 패킷이 통과한 통신 처리 장치의 포트인 버블 패킷 송신 포트의 위치를 정확하게 검출할 수 있다.

Description

정보 처리 장치, 포트 검출 장치, 정보 처리 방법 및 포트 검출 방법{INFORMATION PROCESSING DEVICE, PORT DETECTION DEVICE, INFORMATION PROCESSING METHOD, AND PORT DETECTION METHOD}
본 발명은 패킷을 송신하는 정보 처리 장치 등에 관한 것이다.
패킷의 통신에 있어서, NAT (Network Address Translation) 기능을 가지는 통신 처리 장치가 이용되는 일이 있다. 그 통신 처리 장치는, 예를 들면, 라우터라 불리는 것이다.
우선, 그 NAT의 분류에 대해 설명한다. NAT에는 송신 포트 할당 룰과 수신 필터 룰이 있고, 그 조합에 의해 NAT의 분류가 이루어진다. 송신 포트 할당 룰에는, 패킷의 행선지(IP 어드레스, 포트)에 의존하지 않고, NAT의 로컬측(예를 들어, LAN측)의 정보 처리 장치의 포트와 IP 어드레스가 동일하면, NAT에 할당되는 글로벌측(예를 들어, 인터넷 등의 WAN측)의 포트가 동일해지는 콘(Cone) 타입과, 패킷의 행선지 어드레스마다 새로운 포트가 할당되는 어드레스 센서티브(Address Sensitive) 타입과, 패킷의 행선지 포트마다 새로운 포트가 할당되는 포트 센서티브(Port Sensitive) 타입과, 송신원의 포트와 동일한 포트를 할당하는 포트 재사 용(Port Reuse) 타입이 있다.
NAT의 로컬측으로부터 패킷이 송신된 포트에 대해서 글로벌 측에서의 패킷의 수신 가능성을 판단하는 수신 필터 룰에는, 그 포트로부터 패킷을 송신한 어드레스로부터밖에 패킷을 수신하지 않는 어드레스 센서티브 필터와, 그 포트로부터 패킷을 송신한 포트로부터밖에 패킷을 수신하지 않는 포트 센서티브 필터와, 필터가 존재하지 않는 노우 필터가 있다. 이러한 송신 포트 할당 룰과 수신 필터 룰을 조합함으로써, 각종 NAT가 구성되게 된다.
이러한 NAT를 이용한 통신에 있어서, 도 38에서 도시되는 PC1와 PC2 사이에서의 서버를 통하지 않은 통신을 확립하는 경우에 대해 생각되어 오고 있다. 이러한 기술 내용은, 예를 들면, 일본 공개특허공보 2004-180003호(제1 페이지, 도 1 등)(이하,「특허 문헌 1」이라고 함)나, 로젠버그 등의 문헌(J. Rosenberg, J. Weinberger, C. Huitema, R. Mahy,「STUN-Simple Traversal of User Datagram Protocol(UDP) Through Network Address Translators (NATs)」,[Online], 2003년 3월, Network Working Group Request for Comments:3489,[2005년 3월 9일 검색], 인터넷 <URL:http://www.ietf.org/rfc/rfc3489.txt>, 이하, 「비 특허문헌 1」이라고 함)에 개시되어 있다.
도 38에서 도시하는 바와 같이, PC1이 NAT1을 통하여 PC2와 통신을 행하는 경우에는, 우선, NAT1의 로컬측으로부터 글로벌측에 패킷(이하,「버블 패킷」이라고 함)을 송신하고, 그 버블 패킷이 통과한, NAT1의 글로벌측의 포트에 PC2로부터 패킷을 송신함으로써 PC1과 PC2는 통신을 행할 수 있다. 따라서, PC1로부터 송신 된 버블 패킷이 통과한 NAT1의 포트의 위치를 정확하게 검출할 수 있는 것이 중요하다.
그러나, 전술의 특허문헌 1, 비 특허문헌 1에 기재된 방법을 이용해도, 버블 패킷이 통과한 NAT의 포트의 위치를 정확하게 검출할 수 없는 경우가 있다. 송신 포트 할당 룰이 콘 타입인 NAT에서는, 사용되지 않게 된 포트 번호를 FIFO(First In First Out)로 큐잉해 두고, 그 큐잉하고 있는 포트 번호를 새로운 포트 할당을 행할 때 이용하는 것도 있다. 그러한 경우에는, 포트 번호가 번호 순서로 할당되지 않기 때문에, 예를 들면, 상기 특허문헌 1에서 개시되고 있는 방법을 이용하면, 버블 패킷이 통과한 NAT의 포트의 위치를 정확하게 검출할 수 없다. 한편, 송신 포트 할당 룰이 어드레스 센서티브 타입, 혹은, 포트 센서티브 타입인 NAT에서는, 버블 패킷이 통과한 NAT의 포트의 위치를 상기 비 특허문헌 1에서 개시되고 있는 방법으로 검출할 수 없다.
본 발명은, 상기 문제점을 해결하기 위해서 이루어진 것으로, 송신 포트 할당 룰을 가지는 통신 처리 장치를 통하여 버블 패킷이 송신된 경우에, 그 버블 패킷이 통과한 통신 처리 장치의 포트의 위치를 정확하게 검출할 수 있는 정보 처리 장치 등을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위해서, 본 발명에 의한 정보 처리 장치는, 통신에 관한 처리를 행하는 통신 처리 장치를 통하여 통신을 행하는 정보 처리 장치로서, 통신 처리 장치에 송신 이력을 남기기 위한 패킷인 버블 패킷을, 통신 처리 장치를 통하여 송신하는 버블 패킷 송신부와, 버블 패킷의 송신에서 이용되는, 통신 처리 장치의 포트인 버블 패킷 송신 포트의 위치를 검출하기 위해서 이용되는 패킷인 검출용 패킷을, 통신 처리 장치의 종류에 따라, 검출용 패킷이 통과한 통신 처리 장치의 포트인 검출용 패킷 송신 포트와, 버블 패킷 송신 포트가 동일해지거나, 또는 상이하도록 통신 처리 장치를 통하여 송신하는 검출용 패킷 송신부를 구비한 것이다.
이러한 구성에 의해, 정보 처리 장치로부터 송신된 검출용 패킷이 통과한 통신 처리 장치의 포트의 위치를 이용함으로써, 통신 처리 장치의 종류에 상관없이 버블 패킷 송신 포트의 위치를 정확하게 검출할 수 있다. 그 결과, 그 버블 패킷 송신 포트의 위치를 이용하여 정보 처리 장치와 다른 장치와의 통신을 확실히 확립 할 수 있다.
또한, 본 발명에 의한 포트 검출 장치는 정보 처리 장치로부터 송신된 검출용 패킷이 통과한 통신 처리 장치의 포트의 위치를 나타내는 정보인 검출용 포트 정보를 접수하는 검출용 포트 정보 접수부와, 통신 처리 장치의 종류에 따라, 검출용 포트 정보에 의거하여 버블 패킷 송신 포트의 위치를 검출하는 버블 패킷 송신 포트 검출부를 구비한 것이다.
이러한 구성에 의해, 포트 검출 장치에 있어서 버블 패킷 송신 포트의 위치를 검출할 수 있다. 그리고, 그 검출된 버블 패킷 송신 포트의 위치를 이용함으로써, 정보 처리 장치와 다른 장치 사이의 통신을 확립할 수 있다.
본 발명에 따르면, 정보 처리 장치로부터 송신된 검출용 패킷이 통과한 통신 처리 장치의 포트의 위치를 이용함으로써, 통신 처리 장치의 종류에 상관없이 버블 패킷 송신 포트의 위치를 정확하게 검출할 수 있고, 그 결과, 버블 패킷 송신 포트의 위치를 이용하여 정보 처리 장치와 다른 장치와의 통신을 확실히 확립할 수 있다.
이하, 본 발명에 의한 정보 처리 장치 등에 대해서 실시형태를 이용하여 설명한다. 한편, 이하의 실시형태에 있어서, 동일한 부호를 부여한 구성 요소 및 단계는 동일하거나 또는 상당하는 것으로, 반복 설명을 생략하는 경우가 있다.
(실시형태 1)
본 발명의 실시형태 1에 의한 정보 처리 시스템 등에 대해서 도면을 참조하면서 설명한다.
도 1은, 본 실시형태 1에 의한 정보 처리 시스템의 구성을 도시하는 도면이다. 도 1에 있어서, 본 실시형태 1에 의한 정보 처리 시스템은 통신 처리 장치(2)와 정보 처리 장치(10)와 정보 처리 장치(30)와 제1 서버(40)와 제2 서버(50)와 릴레이 서버(60)를 구비한다. 통신 처리 장치(2), 정보 처리 장치(30), 제1 서버(40), 제2 서버(50), 릴레이 서버(60)는 각각 유선 또는 무선의 통신 회선(1)을 통하여 접속되어 있다. 여기서, 통신 회선(1)은, 예를 들면, 인터넷이나 인트라넷, 공중 전화 회선망 등이다.
통신 처리 장치(2)는 정보 처리 장치(10)와 정보 처리 장치(30)나, 제1 서버(40), 제2 서버(50), 릴레이 서버(60) 사이의 통신에 관한 처리를 행한다. 통신 처리 장치(2)는 어드레스 변환을 행하는 NAT 기능을 가지는 장치이다.
여기서, 이하의 설명에 있어서, 통신 처리 장치(2)가 콘 타입의 송신 포트 할당 룰을 가지는 경우에, 통신 처리 장치(2)의 종류가 콘계인 것으로 한다. 또한, 통신 처리 장치(2)가 어드레스 센서티브 타입인 송신 포트 할당 룰을 가지는 경우, 및 통신 처리 장치(2)가 포트 센서티브 타입의 송신 포트 할당 룰을 가지는 경우에, 통신 처리 장치(2)의 종류가 심메트릭계인 것으로 한다. 또한, 통신 처리 장치(2)가 포트 재사용 타입인 송신 포트 할당 룰을 가지는 경우에, 통신 처리 장치(2)의 종류가 포트 재사용인 것으로 한다. 즉, 통신 처리 장치(2)의 종류는, 통신 처리 장치(2)의 송신 포트 할당 룰에 따라 판단되는 것으로 한다.
도 2는, 본 실시형태 1에 의한 정보 처리 장치(10)의 구성을 도시하는 블록도이다. 도 2에 있어서, 본 실시형태 1에 의한 정보 처리 장치(10)는 송신처 정보 접수부(11)와 버블 패킷 송신부(12)와 종류 판단 패킷 송신부(13)와 종류 판단 포트 정보 접수부(14)와 종류 판단부(15)와 검출용 패킷 송신부(16)와 포트 폭 검출용 패킷 송신부(17)와 포트 폭 검출용 포트 정보 접수부(18)와 포트 폭 검출부(19)와 검출용 포트 정보 접수부(20)와 버블 패킷 송신 포트 검출부(21)와 출력부(22)와 통신부(23)를 구비한다.
송신처 정보 접수부(11)는 후술하는 버블 패킷의 송신처에 관한 정보인 송신처 정보를 접수한다. 송신처 정보는, 예를 들면, 버블 패킷의 송신처의 어드레스를 나타내는 정보를 포함해도 좋고, 버블 패킷의 송신처의 포트의 위치를 나타내는 정보를 포함해도 좋고, 혹은, 버블 패킷의 송신처의 포트의 기준이 되는 포트의 위치를 나타내는 정보를 포함해도 좋다. 여기서, 버블 패킷의 송신처의 포트의 기준이 되는 포트란, 예를 들면, 그 기준이 되는 포트의 포트 번호에 10을 더한 포트 번호가 버블 패킷의 송신처의 포트가 되는 경우이다. 송신처 정보 접수부(11)는 예를 들면, 입력 디바이스(예를 들면, 키보드나 마우스, 터치 패널 등)로부터 입력된 송신처 정보를 접수해도 좋고, 유선 혹은 무선의 통신 회선을 통하여 송신된 송신처 정보를 수신해도 좋고, 소정의 기록 매체(예를 들면, 광디스크나 자기 디스크, 반도체 메모리 등)로부터 독출된 송신처 정보를 접수해도 좋다. 본 실시형태 1에서는, 송신처 정보 접수부(11)는 통신 회선을 통하여 송신된 송신처 정보를 수신하는 것으로 한다. 한편, 송신처 정보 접수부(11)는 접수를 행하기 위한 디바이 스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또한, 송신처 정보 접수부(11)는 하드웨어에 의해서 실현되어도 좋고, 혹은 소정의 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
버블 패킷 송신부(12)는 통신 처리 장치(2)를 통하여 버블 패킷을 송신한다. 여기서, 버블 패킷이란, 통신 처리 장치(2)에 송신 이력을 남기기 위한 패킷이다. 즉, 버블 패킷에 의해서 통신 처리 장치(2)에 송신 이력이 남겨짐으로써, 정보 처리 장치(10)는 정보 처리 장치(30)로부터, 그 버블 패킷이 통과한 통신 처리 장치(2)의 포트에 송신된 패킷을 수신할 수 있게 된다. 이 버블 패킷의 페이 로드에는, 어떠한 정보가 포함되어 있어도 좋고, 아무것도 정보가 포함되지 않아도 좋다. 또한, 버블 패킷은 예를 들면, UDP의 패킷이어도 좋다. 버블 패킷 송신부(12)는, 송신처 정보 접수부(11)가 접수한 송신처 정보에 의거하여 버블 패킷을 송신한다. 버블 패킷 송신부(12)는, 예를 들면, 송신처 정보가 나타내는 어드레스, 포트의 위치에 버블 패킷을 송신해도 좋고, 혹은, 송신처 정보가 나타내는 포트의 위치로부터 소정의 간격만큼 떨어진 포트의 위치에 버블 패킷을 송신해도 좋다. 버블 패킷 송신부(12)는, 버블 패킷 송신 포트의 위치를 검출할 수 없는 경우에, 버블 패킷을 다시 송신해도 좋다. 예를 들면, 후술하는 버블 패킷 송신 포트 검출부(21)에 있어서 버블 패킷 송신 포트의 위치를 검출할 수 없는 경우에, 버블 패킷 송신부(12)는, 다시 버블 패킷을 송신해도 좋다. 한편, 버블 패킷 송신부(12)는 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 버블 패킷 송신부(12)와 통신 처리 장치(2) 사이에 도시하지 않는 송신 디바이스가 존재하게 된다). 또한, 버블 패킷 송신부(12)는 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
종류 판단 패킷 송신부(13)는 통신 처리 장치(2)를 통하여 종류 판단 패킷을 송신한다. 여기서, 종류 판단 패킷이란, 통신 처리 장치(2)의 종류를 판단하기 위해서 이용되는 패킷이다. 종류 판단 패킷의 송신 방법, 및 그 종류 판단 패킷을 이용한 통신 처리 장치(2)의 종류를 판단하는 방법 등에 대해서는 후술한다. 이 종류 판단 패킷의 페이 로드에는 어떠한 정보가 포함되어 있어도 좋고, 아무것도 정보가 포함되지 않아도 좋다. 또한, 종류 판단 패킷은, 예를 들면, UDP의 패킷이어도 좋고, TCP(Transmission Control Protocol)의 패킷이어도 좋다. 한편, 종류 판단 패킷 송신부(13)는 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 종류 판단 패킷 송신부(13)와 통신 처리 장치(2) 사이에 도시하지 않는 송신 디바이스가 존재하게 된다). 또한, 종류 판단 패킷 송신부(13)는 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
종류 판단 포트 정보 접수부(14)는 종류 판단 포트 정보를 접수한다. 여기서, 종류 판단 포트 정보란 종류 판단 패킷 송신부(13)가 송신한 종류 판단 패킷이 통과한 통신 처리 장치(2)의 포트의 위치를 나타내는 정보이다. 그 포트의 위치 는, 예를 들면, 포트 번호에 의해서 나타난다. 종류 판단 포트 정보 접수부(14)는, 예를 들면, 입력 디바이스(예를 들면, 키보드나 마우스, 터치 패널 등)로부터 입력된 종류 판단 포트 정보를 접수해도 좋고, 유선 혹은 무선의 통신 회선을 통하여 송신된 종류 판단 포트 정보를 수신해도 좋고, 소정의 기록 매체(예를 들면, 광디스크나 자기 디스크, 반도체 메모리 등)로부터 독출된 종류 판단 포트 정보를 접수해도 좋다. 본 실시형태 1에서는, 종류 판단 포트 정보 접수부(14)는 통신 회선을 통하여 송신된 종류 판단 포트 정보를 수신하는 것으로 한다. 한편, 종류 판단 포트 정보 접수부(14)는 접수를 행하기 위한 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또한, 종류 판단 포트 정보 접수부(14)는 하드웨어에 의해서 실현되어도 좋고, 혹은, 소정의 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
종류 판단부(15)는, 종류 판단 포트 정보 접수부(14)가 접수한 종류 판단 포트 정보에 의거하여 통신 처리 장치(2)의 종류를 판단한다. 이 판단 방법에 대해서는, 후술한다.
검출용 패킷 송신부(16)는 통신 처리 장치(2)를 통하여 검출용 패킷을 송신한다. 여기서, 검출용 패킷이란, 버블 패킷 송신 포트의 위치를 검출하기 위해서 이용되는 패킷이다. 또한, 버블 패킷 송신 포트란 버블 패킷의 송신에서 이용되는, 통신 처리 장치(2)의 포트이다. 즉, 버블 패킷이 통과한 통신 처리 장치(2)의 포트가 버블 패킷 송신 포트이다. 검출용 패킷 송신부(16)는 검출용 패킷을, 통신 처리 장치(2)의 종류에 따라, 검출용 패킷 송신 포트와 버블 패킷 송신 포트가 동 일해지거나, 또는 상이하도록 송신한다. 여기서, 검출용 패킷 송신 포트란, 검출용 패킷이 통과한 통신 처리 장치(2)의 포트이다. 또한, 「통신 처리 장치(2)의 종류에 따라, 검출용 패킷 송신 포트와 버블 패킷 송신 포트가 동일해지거나, 또는 상이하다」는 것은, 검출용 패킷 송신부(16)가 통신 처리 장치(2)의 종류에 따라 검출용 패킷의 송신 방법을 변경함으로써 실현되어도 좋고, 혹은, 검출용 패킷 송신부(16)는 통신 처리 장치(2)의 종류에 상관없이 똑같이 검출용 패킷을 송신하지만, 결과적으로, 그것이 실현되어도 좋다. 검출용 패킷 송신부(16)는 검출용 패킷을 버블 패킷 송신 포트의 위치의 검출에서 이용하는 제1 서버(40), 및 제2 서버(50)에 송신한다. 구체적인 송신 방법에 대해서는 후술한다. 검출용 패킷 송신부(16)는 버블 패킷 송신 포트의 위치를 검출할 수 없는 경우에, 검출용 패킷을 다시 송신해도 좋다. 예를 들면, 후술하는 버블 패킷 송신 포트 검출부(21)에 있어서 버블 패킷 송신 포트의 위치를 검출할 수 없는 경우에, 검출용 패킷 송신부(16)는 다시 검출용 패킷을 송신해도 좋다. 이 검출용 패킷의 페이 로드에는, 어떠한 정보가 포함되어 있어도 좋고, 아무것도 정보가 포함되지 않아도 좋다. 또, 검출용 패킷은, 예를 들면, UDP의 패킷이어도 좋고, TCP의 패킷이어도 좋다. 한편, 검출용 패킷 송신부(16)는 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 검출용 패킷 송신부(16)와 통신 처리 장치(2) 사이에 도시하지 않는 송신 디바이스가 존재하게 된다). 또, 검출용 패킷 송신부(16)는 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어 도 좋다.
포트 폭 검출용 패킷 송신부(17)는 통신 처리 장치(2)를 통하여 포트 폭 검출용 패킷을 송신한다. 여기서, 포트 폭 검출용 패킷이란 통신 처리 장치(2)에서의 포트 폭을 검출하기 위한 패킷이다. 즉, 포트 폭 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 위치에 의거하여, 통신 처리 장치(2)의 포트 폭이 검출된다. 그 검출된 통신 처리 장치(2)의 포트 폭은, 후술하는 바와 같이 버블 패킷 송신 포트의 위치의 검출에 있어서 이용된다. 통신 처리 장치(2)의 포트 폭이란, 통신 처리 장치(2)에 있어서 연속해서 사용되는, 즉, 통신 처리 장치(2)에 있어서 연속해서 할당되는 포트의 폭(간격)이다. 예를 들면, 포트의 위치가 포트 번호에 의해서 나타나는 경우에, 포트 폭이 「1」이라는 것은, 포트 번호 「20000」인 포트의 다음에 할당되는 포트가, 포트 번호 「20001」인 포트인 것을 나타내고 있다. 또, 포트 폭이 「2」라는 것은, 포트 번호 「20000」인 포트의 다음에 할당되는 포트가, 포트 번호 「20002」인 포트인 것을 나타내고 있다. 이 포트 폭 검출용 패킷의 페이 로드에는 어떠한 정보가 포함되어 있어도 좋고, 아무것도 정보가 포함되지 않아도 좋다. 또한, 포트 폭 검출용 패킷은, 예를 들면, UDP의 패킷이어도 좋고, TCP의 패킷이어도 좋다. 한편, 포트 폭 검출용 패킷 송신부(17)는 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 포트 폭 검출용 패킷 송신부(17)와 통신 처리 장치(2) 사이에 도시하지 않는 송신 디바이스가 존재하게 된다). 또한, 포트 폭 검출용 패킷 송신부(17)는 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
포트 폭 검출용 포트 정보 접수부(18)는, 포트 폭 검출용 포트 정보를 접수한다. 여기서, 포트 폭 검출용 포트 정보란, 포트 폭 검출용 패킷 송신부(17)가 송신한 포트 폭 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 위치를 나타내는 정보이다. 그 포트의 위치는, 예를 들면, 포트 번호에 의해서 나타난다. 포트 폭 검출용 포트 정보 접수부(18)는, 예를 들면, 입력 디바이스(예를 들면, 키보드나 마우스, 터치 패널 등)로부터 입력된 포트 폭 검출용 포트 정보를 접수해도 좋고, 유선 혹은 무선의 통신 회선을 통하여 송신된 포트 폭 검출용 포트 정보를 수신해도 좋고, 소정의 기록 매체(예를 들면, 광디스크나 자기 디스크, 반도체 메모리 등)로부터 독출된 포트 폭 검출용 포트 정보를 접수해도 좋다. 본 실시형태 1에서는, 포트 폭 검출용 포트 정보 접수부(18)는, 통신 회선을 통하여 송신된 포트 폭 검출용 포트 정보를 수신하는 것으로 한다. 한편, 포트 폭 검출용 포트 정보 접수부(18)는 접수를 행하기 위한 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또, 포트 폭 검출용 포트 정보 접수부(18)는 하드웨어에 의해서 실현되어도 좋고, 혹은 소정의 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
포트 폭 검출부(19)는, 포트 폭 검출용 포트 정보 접수부(18)가 접수한 포트 폭 검출용 포트 정보에 의거하여 통신 처리 장치(2)의 포트 폭을 검출한다. 이 검출 방법에 대해서는 후술한다.
검출용 포트 정보 접수부(20)는 검출용 포트 정보를 접수한다. 여기서, 검 출용 포트 정보란, 검출용 패킷 송신부(16)가 송신한 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 위치를 나타내는 정보이다. 그 포트의 위치는, 예를 들면, 포트 번호에 의해서 나타난다. 검출용 포트 정보 접수부(20)는, 예를 들면, 입력 디바이스(예를 들면, 키보드나 마우스, 터치 패널 등)로부터 입력된 검출용 포트 정보를 접수해도 좋고, 유선 혹은 무선의 통신 회선을 통하여 송신된 검출용 포트 정보를 수신해도 좋고, 소정의 기록 매체(예를 들면, 광디스크나 자기 디스크, 반도체 메모리 등)로부터 독출된 검출용 포트 정보를 접수해도 좋다. 본 실시형태 1에서는, 검출용 포트 정보 접수부(20)는, 통신 회선을 통하여 송신된 검출용 포트 정보를 수신하는 것으로 한다. 한편, 검출용 포트 정보 접수부(20)는 접수를 행하기 위한 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또한, 검출용 포트 정보 접수부(20)는 하드웨어에 의해서 실현되어도 좋고, 혹은 소정의 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
버블 패킷 송신 포트 검출부(21)는 검출용 포트 정보 접수부(20)가 접수한 검출용 포트 정보에 의거하여 버블 패킷 송신 포트의 위치를 검출한다. 버블 패킷 송신 포트 검출부(21)는 통신 처리 장치(2)의 종류에 따라 그 버블 패킷 송신 포트의 위치의 검출을 행한다. 여기서, 「통신 처리 장치(2)의 종류에 따라, 그 버블 패킷 송신 포트의 위치를 검출한다」란, 통신 처리 장치(2)의 종류에 따라, 결과적으로 버블 패킷 송신 포트의 위치를 검출하는 방법이 상이한 경우도 포함하는 것이다. 따라서, 버블 패킷 송신 포트 검출부(21)는 통신 처리 장치(2)의 종류에 따 라, 버블 패킷의 송신 포트의 위치의 검출 방법을 변경해도 좋고, 혹은, 다른 요인에 의거하여 버블 패킷의 송신 포트의 위치의 검출 방법을 변경해도 좋다. 버블 패킷 송신 포트의 검출의 구체적인 방법에 대해서는, 후술한다.
출력부(22)는, 버블 패킷 송신 포트 정보를 출력한다. 여기서, 버블 패킷 송신 포트 정보란 버블 패킷 송신 포트 검출부(21)가 검출한 버블 패킷 송신 포트의 위치를 나타내는 정보이다. 여기서, 이 출력은, 예를 들면, 표시 디바이스(예를 들면, CRT나 액정 디스플레이 등)에 대한 표시라도 좋고, 소정의 기기에 대한 통신 회선을 통한 송신이라도 좋고, 프린터에 의한 인쇄라도 좋고, 스피커에 의한 음성 출력이라도 좋고, 기록 매체에 대한 축적이라도 좋다. 본 실시형태 1에서는, 출력부(22)는 버블 패킷 송신 포트 정보를, 릴레이 서버(60)를 통하여 정보 처리 장치(30)에 송신하는 것으로 한다. 한편, 출력부(22)는 출력을 행하는 디바이스(예를 들면, 표시 디바이스나 프린터 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또한, 출력부(22)는, 하드웨어에 의해서 실현되어도 좋고, 혹은, 그러한 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
통신부(23)는 정보 처리 장치(10)와 정보 처리 장치(30) 사이에서, 릴레이 서버(60)를 통하지 않는 피어·투·피어(Peer to Peer) 통신(이하, 「P2P 통신」이라고 약기하기도 함)이 확립된 경우에, 그 P2P 통신에 의해서 정보 처리 장치(30)와의 통신을 행한다. 또한, 통신부(23)는 그 P2P 통신을 확립하기 위한 처리 등도 행한다. 한편, 통신부(23)는 통신을 행하기 위한 통신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에 는, 통신부(23)와 통신 처리 장치(2) 사이에 도시하지 않는 통신 디바이스가 존재하게 된다). 또한, 통신부(23)는 하드웨어에 의해서 실현되어도 좋고, 혹은 통신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
한편, 송신처 정보 접수부(11), 버블 패킷 송신부(12), 종류 판단 패킷 송신부(13), 종류 판단 포트 정보 접수부(14), 검출용 패킷 송신부(16), 포트 폭 검출용 패킷 송신부(17), 포트 폭 검출용 포트 정보 접수부(18), 검출용 포트 정보 접수부(20), 출력부(22), 통신부(23)의 임의의 2이상의 요소가 통신에 관한 디바이스를 가지는 경우에, 그들은 동일한 수단이어도 좋고, 혹은 별개의 수단이어도 좋다.
도 3은, 본 실시형태 1에 의한 정보 처리 장치(30)의 구성을 도시하는 블록도이다. 도 3에 있어서, 본 실시형태 1에 의한 정보 처리 장치(30)는 송신처 정보 송신부(31)와 버블 패킷 송신 포트 접수부(32)와 답신 패킷 송신부(33)와 통신부(34)를 구비한다.
송신처 정보 송신부(31)는 송신처 정보를 릴레이 서버(60)를 통하여 정보 처리 장치(10)에 송신한다. 한편, 송신처 정보 송신부(31)는, 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 송신처 정보 송신부(31)와 통신 회선(1) 사이에 도시하지 않는 송신 디바이스가 존재하게 된다). 또한, 송신처 정보 송신부(31)는, 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
버블 패킷 송신 포트 접수부(32)는 버블 패킷 송신 포트 정보를 접수한다. 버블 패킷 송신 포트 접수부(32)는, 예를 들면, 입력 디바이스(예를 들면, 키보드나 마우스, 터치 패널 등)로부터 입력된 버블 패킷 송신 포트 정보를 접수해도 좋고, 유선 혹은 무선의 통신 회선을 통하여 송신된 버블 패킷 송신 포트 정보를 수신해도 좋고, 소정의 기록 매체(예를 들면, 광디스크나 자기 디스크, 반도체 메모리 등)로부터 독출된 버블 패킷 송신 포트 정보를 접수해도 좋다. 본 실시형태 1에서는, 버블 패킷 송신 포트 접수부(32)는 통신 회선을 통하여 송신된 버블 패킷 송신 포트 정보를 수신하는 것으로 한다. 한편, 버블 패킷 송신 포트 접수부(32)는, 접수를 행하기 위한 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또한, 버블 패킷 송신 포트 접수부(32)는, 하드웨어에 의해서 실현되어도 좋고, 혹은 소정의 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
답신 패킷 송신부(33)는, 버블 패킷 송신 포트 접수부(32)가 접수한 버블 패킷 송신 포트 정보에 의거하여 버블 패킷 송신 포트에 답신 패킷을 송신한다. 여기서, 답신 패킷이란, 정보 처리 장치(10)와 정보 처리 장치(30) 사이에서의 P2P 통신을 확립하기 위해서 정보 처리 장치(30)로부터 송신되는 패킷이다. 이 답신 패킷의 페이 로드에는 어떠한 정보가 포함되어 있어도 좋고, 아무것도 정보가 포함되지 않아도 좋다. 답신 패킷은, 예를 들면, UDP의 패킷이어도 좋다. 한편, 답신 패킷 송신부(33)는, 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 답신 패킷 송신부(33)와 통신 회선(1) 사이에 도시하지 않는 송신 디바이스가 존재하게 된 다). 또한, 답신 패킷 송신부(33)는, 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
통신부(34)는, 정보 처리 장치(10)와 정보 처리 장치(30) 사이에서, 릴레이 서버(60)를 통하지 않는 피어·투·피어(Peer to Peer) 통신(이하, 「P2P 통신」이라고 약기하기도 함)이 확립된 경우에, 그 P2P 통신에 의해서, 정보 처리 장치(10)와의 통신을 행한다. 또한, 통신부(34)는 그 P2P 통신을 확립하기 위한 처리 등도 행한다. 한편, 통신부(34)는 통신을 행하기 위한 통신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 통신부(34)와 통신 회선(1) 사이에 도시하지 않는 통신 디바이스가 존재하게 된다). 또한, 통신부(34)는, 하드웨어에 의해서 실현되어도 좋고, 혹은 통신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
한편, 송신처 정보 송신부(31), 버블 패킷 송신 포트 접수부(32), 답신 패킷 송신부(33), 통신부(34)의 임의의 2이상의 요소가 통신에 관한 디바이스를 가지는 경우에, 그들은 동일한 수단이어도 좋고, 혹은 별개의 수단이어도 좋다.
도 4는, 본 실시형태 1에 의한 제1 서버(40)의 구성을 도시하는 블록도이다. 도 4에 있어서, 본 실시형태 1에 의한 제1 서버(40)는, 종류 판단 패킷 수신부(41)와 종류 판단 포트 정보 송신부(42)와 검출용 패킷 수신부(43)와 검출용 포트 정보 송신부(44)와 포트 폭 검출용 패킷 수신부(45)와 포트 폭 검출용 포트 정보 송신부(46)를 구비한다.
종류 판단 패킷 수신부(41)는 정보 처리 장치(10)로부터 송신된 종류 판단 패킷을 수신한다. 한편, 종류 판단 패킷 수신부(41)는 수신을 행하기 위한 수신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 종류 판단 패킷 수신부(41)와 통신 회선(1) 사이에 도시하지 않는 수신 디바이스가 존재하게 된다). 또한, 종류 판단 패킷 수신부(41)는 하드웨어에 의해서 실현되어도 좋고, 혹은 수신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
종류 판단 포트 정보 송신부(42)는, 종류 판단 패킷 수신부(41)가 수신한 종류 판단 패킷이 통과한 통신 처리 장치(2)의 포트의 위치를 나타내는 종류 판단 포트 정보를 정보 처리 장치(10)에 송신한다. 여기서, 「종류 판단 포트 정보를 정보 처리 장치(10)에 송신하는」것에는, 종류 판단 포트 정보의 송신처를 통신 처리 장치(2)의 글로벌측의 어드레스로 하는 경우를 포함하는 것으로 한다. 통신 처리 장치(2)가 NAT 기능을 가지는 경우에는, 종류 판단 포트 정보의 송신처로서 정보 처리 장치(10)의 어드레스를 지정할 수 없지만, 통신 처리 장치(2)의 어드레스를 지정하는 것에 의해서, 통신 처리 장치(2)에 있어서 어드레스 변환이 행해지고, 정보 처리 장치(10)에 송신되게 되기 때문이다. 이하의 설명에 있어서도 마찬가지로 한다. 한편, 종류 판단 포트 정보 송신부(42)는 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 종류 판단 포트 정보 송신부(42)와 통신 회선(1) 사이에 도시하지 않는 송신 디바이스가 존재하게 된다). 또한, 종류 판단 포트 정보 송신부(42)는 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드 라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
검출용 패킷 수신부(43)는 정보 처리 장치(10)로부터 송신된 검출용 패킷을 수신한다. 한편, 검출용 패킷 수신부(43)는 수신을 행하기 위한 수신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 검출용 패킷 수신부(43)와 통신 회선(1) 사이에 도시하지 않는 수신 디바이스가 존재하게 된다). 또한, 검출용 패킷 수신부(43)는, 하드웨어에 의해서 실현되어도 좋고, 혹은 수신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
검출용 포트 정보 송신부(44)는, 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 통과한 통신 처리 장치(2)의 포트의 위치를 나타내는 검출용 포트 정보를 정보 처리 장치(10)에 송신한다. 한편, 검출용 포트 정보 송신부(44)는, 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 검출용 포트 정보 송신부(44)와 통신 회선(1) 사이에 도시하지 않는 송신 디바이스가 존재하게 된다). 또한, 검출용 포트 정보 송신부(44)는 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
포트 폭 검출용 패킷 수신부(45)는, 정보 처리 장치(10)로부터 송신된 포트 폭 검출용 패킷을 수신한다. 한편, 포트 폭 검출용 패킷 수신부(45)는, 수신을 행하기 위한 수신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 포트 폭 검출용 패킷 수신부(45)와 통신 회선(1) 사이에 도시하지 않는 수신 디바이스가 존재하게 된다). 또한, 포트 폭 검출용 패킷 수신부(45)는, 하드웨어에 의해서 실현되어도 좋고, 혹은 수신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
포트 폭 검출용 포트 정보 송신부(46)는, 포트 폭 검출용 패킷 수신부(45)가 수신한 포트 폭 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 위치를 나타내는 포트 폭 검출용 포트 정보를 정보 처리 장치(10)에 송신한다. 한편, 포트 폭 검출용 포트 정보 송신부(46)는 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 포트 폭 검출용 포트 정보 송신부(46)와 통신 회선(1) 사이에 도시하지 않는 송신 디바이스가 존재하게 된다). 또한, 포트 폭 검출용 포트 정보 송신부(46)는 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
한편, 종류 판단 포트 정보 송신부(42), 검출용 포트 정보 송신부(44), 포트 폭 검출용 포트 정보 송신부(46)는, 종류 판단 패킷 수신부(41) 등이 수신한 패킷의 송신원의 어드레스, 포트에 종류 판단 포트 정보 등을 송신해도 좋고, 혹은, 정보 처리 장치(10)와 제1 서버(40) 사이에서 정보를 통신하는 통신 처리 장치(2)의 포트가 있는 경우에는, 그 포트에 종류 판단 포트 정보 등을 송신해도 좋다.
또한, 종류 판단 패킷 수신부(41), 종류 판단 포트 정보 송신부(42), 검출용 패킷 수신부(43), 검출용 포트 정보 송신부(44), 포트 폭 검출용 패킷 수신부(45), 포트 폭 검출용 포트 정보 송신부(46)의 임의의 2이상의 요소가 통신에 관한 디바 이스를 가지는 경우에, 그들은 동일한 수단이어도 좋고, 혹은 별개의 수단이어도 좋다.
도 5는, 본 실시형태 1에 의한 제2 서버(50)의 구성을 도시하는 블록도이다. 도 5에 있어서, 본 실시형태 1에 의한 제2 서버(50)는 종류 판단 패킷 수신부(51)와 종류 판단 포트 정보 송신부(52)를 구비한다. 한편, 종류 판단 패킷 수신부(51) 및 종류 판단 포트 정보 송신부(52)는, 각각, 종류 판단 패킷 수신부(41), 및 종류 판단 포트 정보 송신부(42)와 동일한 것이며, 그 설명을 생략한다.
도 6은, 본 실시형태 1에 의한 릴레이 서버(60)의 구성을 도시하는 블록도이다. 도 6에 있어서, 본 실시형태 1에 의한 릴레이 서버(60)는 통신부(61)와 어드레스 정보 기억부(62)와 어드레스 정보 축적부(63)와 어드레스 정보 취득부(64)를 구비한다.
통신부(61)는 정보 처리 장치(10)와 정보 처리 장치(30) 사이에서의 정보의 송수신을 행하고, 한 쪽의 장치로부터 다른 쪽의 장치로의 정보의 릴레이를 행한다. 또한, 후술하는 어드레스 정보 기억부(62)로의 어드레스 정보의 등록의 처리 등에 관한 통신도 행한다. 한편, 통신부(61)는 통신을 행하기 위한 통신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 통신부(61)와 통신 회선(1) 사이에 도시하지 않는 통신 디바이스가 존재하게 된다). 또한, 통신부(61)는 하드웨어에 의해서 실현되어도 좋고, 혹은 통신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
어드레스 정보 기억부(62)는, 어드레스 정보를 기억하고 있다. 여기서, 어드레스 정보란, 예를 들면, 정보 처리 장치를 식별하는 장치 식별 정보와 어드레스와 포트의 위치를 대응시키는 정보이다. 어드레스 정보 기억부(62)는, 소정의 기록 매체(예를 들면, 반도체 메모리나 자기 디스크, 광디스크 등)에 의해서 실현될 수 있다.
어드레스 정보 축적부(63)는 통신부(61)가 수신한 어드레스 정보의 등록을 요구하는 정보에 의거하여 어드레스 정보를 어드레스 정보 기억부(62)에 축적한다.
어드레스 정보 취득부(64)는 통신부(61)가 수신한 정보의 릴레이처에 대응하는 어드레스 정보를 어드레스 정보 기억부(62)로부터 취득한다.
릴레이 서버(60)는, 예를 들면, H.323의 서버나, SIP의 서버 등이어도 좋다. 또한, 릴레이 서버(60)는 2이상의 서버로 구성되어도 좋다. 즉, 정보 처리 장치(10)와 정보 처리 장치(30) 사이의 데이터 릴레이가 2이상의 릴레이 서버(예를 들면, SIP 프록시 서버 등)를 경유하여 행해져도 좋다.
다음에, 본 실시형태 1에 의한 정보 처리 시스템의 동작에 대해서 흐름도를 이용하여 설명한다. 도 7은, 본 실시형태 1에 의한 정보 처리 장치(10)의 동작을 도시하는 흐름도이다.
(단계 S101) 정보 처리 장치(10)는 통신 처리 장치(2)의 종류를 판단하기 위한 처리를 행한다. 이 처리의 상세에 대해서는 후술한다.
(단계 S102) 정보 처리 장치(10)는 통신 처리 장치(2)의 포트 폭을 검출하기 위한 처리를 행한다. 이 처리의 상세에 대해서는 후술한다.
(단계 S103) 정보 처리 장치(10)는 버블 패킷 및 검출용 패킷을 송신함으로써 버블 패킷 송신 포트의 위치를 검출한다. 그리고, 정보 처리 장치(10)는 정보 처리 장치(30)와의 P2P 통신을 확립하는 처리를 행한다. 이 처리의 상세에 대해서는 후술한다.
(단계 S104) 정보 처리 장치(10)는 정보 처리 장치(30)와 P2P 통신을 행한다.
한편, 도 7의 흐름도에 있어서, 단계 S101의 통신 처리 장치(2)의 종류를 판단하는 처리와 단계 S102의 통신 처리 장치(2)의 포트 폭을 검출하는 처리의 순서는 묻지 않는다.
도 8은, 도 7의 흐름도의 단계 S101에서의, 정보 처리 장치(10)가 통신 처리 장치(2)의 종류를 판단하기 위한 처리의 상세를 도시하는 흐름도이다. 종류 판단 패킷 등이 통과하는 포트의 위치를 나타내는 도 9의 모식도를 참조하면서 설명한다. 도 8에 있어서, 「통신원」이란 정보 처리 장치(10)측이다. 한편, 본 실시형태 1에서는, 정보 처리 장치(10), 통신 처리 장치(2)를 통신원이라고 하고, 정보 처리 장치(30)를 통신처라고 하는 경우가 있다.
(단계 S201) 정보 처리 장치(10)의 종류 판단 패킷 송신부(13)는, 제1 서버(40)의 포트 P104에 종류 판단 패킷을 송신한다. 종류 판단 패킷 송신부(13)는 제1 서버(40)의 어드레스나, 포트 P104의 위치를 미리 알고 있어도 좋고, 혹은, 종류 판단 패킷의 송신 시에 다른 구성 요소 등으로부터 수취해도 좋다. 그 종류 판단 패킷은, 정보 처리 장치(10)의 포트 P101로부터 송신된다. 한편, 이 포트 P101 은, 종류 판단 패킷을 송신할 때에 새롭게 할당된 포트라고 한다. 여기서, 새롭게 할당된 포트란, 그때까지 다른 통신에서 이용하지 않은 포트이다. 통신 처리 장치(2)는 그 종류 판단 패킷에 대해서 포트 P102를 할당했다고 한다. 그리고, 그 종류 판단 패킷은, 제1 서버(40)의 종류 판단 패킷 수신부(41)에서 수신된다.
(단계 S202) 제1 서버(40)의 종류 판단 포트 정보 송신부(42)는, 종류 판단 패킷 수신부(41)에서 수신된 종류 판단 패킷의 헤더로부터, 종류 판단 패킷의 송신원의 포트의 위치를 나타내는 정보를 취득한다. 그리고, 종류 판단 포트 정보 송신부(42)는, 그 포트의 위치를 나타내는 정보를 포함한 종류 판단 포트 정보를 구성하고, 종류 판단 패킷 수신부(41)가 수신한 종류 판단 패킷의 송신원의 어드레스, 포트 P102에 송신한다. 그 종류 판단 포트 정보는 종류 판단 포트 정보 접수부(14)에서 수신된다.
(단계 S203) 정보 처리 장치(10)의 종류 판단 패킷 송신부(13)는 제1 서버(40)의 포트 P104에 종류 판단 패킷을 송신한다. 그 종류 판단 패킷은, 정보 처리 장치(10)의 포트 P106으로부터 송신된다. 여기서, 포트 P106은 포트 P101과 상이한 포트라고 한다. 또한, 이 포트 P106은 종류 판단 패킷을 송신할 때에, 새롭게 할당된 포트라고 한다. 또한, 이 포트 P106은 포트 P101의 다음에 통상 할당되는 포트가 아닌 포트인 것이 바람직하다. 예를 들면, 포트 P101의 포트 번호가 「20000」이며, 통상, 다음에 할당되는 포트의 포트 번호가 「20001」인 경우에는, 포트 P106의 포트 번호는 「20000」보다 충분히 큰 번호, 예를 들면, 「20100」이나, 「20000」보다 작은 번호, 예를 들면, 「19500」인 것이 바람직하다. 이와 같 이 함으로써, 통신 처리 장치(2)의 종류가 포트 재사용인지를 적절히 판단할 수 있기 때문이다. 통신 처리 장치(2)는, 그 종류 판단 패킷에 대해서 포트 P107을 할당했다고 한다. 그리고, 그 종류 판단 패킷은, 제1 서버(40)의 종류 판단 패킷 수신부(41)에서 수신된다.
(단계 S204) 제1 서버(40)의 종류 판단 포트 정보 송신부(42)는, 단계 S202와 동일하게 하여 종류 판단 포트 정보를 송신한다. 그 종류 판단 포트 정보는, 종류 판단 포트 정보 접수부(14)에서 수신된다.
(단계 S205) 정보 처리 장치(10)의 종류 판단 패킷 송신부(13)는 제2 서버(50)의 포트 P105에 종류 판단 패킷을 송신한다. 한편, 포트 P105의 위치는, 포트 P104의 위치와는 상이한 것으로 한다. 종류 판단 패킷 송신부(13)는 제2 서버(50)의 어드레스나, 포트 P105의 위치를 미리 알고 있어도 좋고, 혹은, 종류 판단 패킷의 송신 시에 다른 구성 요소 등으로부터 수취해도 좋다. 그 종류 판단 패킷은, 정보 처리 장치(10)의 포트 P101로부터 송신된다. 통신 처리 장치(2)는, 그 종류 판단 패킷에 대해서 포트 P103을 할당했다고 한다. 그리고, 그 종류 판단 패킷은, 제2 서버(50)의 종류 판단 패킷 수신부(51)에서 수신된다.
(단계 S206) 제2 서버(50)의 종류 판단 포트 정보 송신부(52)는, 종류 판단 패킷 수신부(51)에서 수신된 종류 판단 패킷의 헤더로부터, 종류 판단 패킷의 송신원의 포트의 위치를 나타내는 정보를 취득한다. 그리고, 종류 판단 포트 정보 송신부(52)는, 그 포트의 위치를 나타내는 정보를 포함한 종류 판단 포트 정보를 구성하고, 종류 판단 패킷 수신부(51)가 수신한 종류 판단 패킷의 송신원의 어드레 스, 포트 P103에 송신한다. 그 종류 판단 포트 정보는, 종류 판단 포트 정보 접수부(14)에서 수신된다.
한편, 종류 판단 포트 정보 송신부(52)는, 종류 판단 포트 정보를 직접, 통신 처리 장치(2)를 통하여 정보 처리 장치(10)에 송신하는 것이 아니라, 제1 서버(40) 및 통신 처리 장치(2)를 통하여 정보 처리 장치(10)에 송신해도 좋다.
(단계 S207) 종류 판단부(15)는 종류 판단 포트 정보 접수부(14)가 수신한 포트 P102, P103, P107의 위치를 나타내는 정보에 의거하여 통신 처리 장치(2)의 종류를 판단한다. 우선, 포트 P101의 위치가 포트 P102의 위치에 동일하고, 또한, 포트 P106의 위치가 포트 P107의 위치에 동일한 경우에는, 종류 판단부(15)는 통신 처리 장치(2)의 종류가 포트 재사용이라고 판단한다. 한편, 통신 처리 장치(2)의 종류가 포트 재사용이 아니고, 포트 P102의 위치와 포트 P103의 위치가 동일한 경우에는, 종류 판단부(15)는 통신 처리 장치(2)의 종류가 콘계라고 판단하고, 통신 처리 장치(2)의 종류가 포트 재사용이 아니고 포트 P102의 위치와 포트 P103의 위치가 상이한 경우에는, 종류 판단부(15)는 통신 처리 장치(2)의 종류가 심메트릭계라고 판단한다. 종류 판단부(15)에 의해서 판단된 판단 결과는, 적절하게 검출용 패킷 송신부(16)나, 버블 패킷 송신 포트 검출부(21)에 건네어진다.
한편, 단계 S204에서 송신된 종류 판단 포트 정보가 수신된 시점에서, 포트 P101과 포트 P102가 동일하고, 포트 P106과 포트 P107이 동일한 것을 안 경우에는, 단계 S205, S206의 처리를 행하지 않고 단계 S207의 처리에 있어서 종류의 판단을 행해도 좋다. 이 경우에는, 통신 처리 장치(2)의 종류가 포트 재사용이라고 판단 된다.
또한, 단계 S205 및 S206의 처리를 단계 S201보다 먼저 행해도 좋고, 혹은, 단계 S202와 단계 S203 사이에 행해도 좋다.
또한, 예를 들면, 제1 서버(40)로부터 송신하는 2개의 종류 판단 포트 정보를 모아 1회로 송신해도 좋다. 혹은, 제1 서버(40), 및 제2 서버(50)로부터 송신하는 3개의 종류 판단 포트 정보를 모아 1회로 송신해도 좋다. 이 경우에는, 예를 들면, 제2 서버(50)로부터 제1 서버(40)에 종류 판단 포트 정보가 건네어지는 것으로 한다.
또, 통신 처리 장치(2)의 종류를 판단하는 방법은, 도 8에서 도시하는 방법에 한정되는 것이 아니고, 그 외의 방법에 따라 통신 처리 장치(2)의 종류의 판단을 행해도 좋다. 예를 들면, 송신 포트 할당 룰과 함께, 수신 필터 룰도 판단하는 처리를 행해도 좋다. 또, 예를 들면, 단계 S201, S202의 처리를 여러 차례, 반복하여 실행해도 좋다. 단, 종류 판단 패킷을 송신하는 정보 처리 장치(10)의 포트의 위치를, 종류 판단 패킷을 송신할 때마다 랜덤으로 설정하는 것으로 한다. 그리고, 그 중의 일정 이상의 종류 판단 패킷에 대해서, 그 종류 판단 패킷의 송신된 정보 처리 장치(10)의 포트와 종류 판단 패킷이 통과한 통신 처리 장치(2)의 포트가 동일한 경우에는, 통신 처리 장치(2)의 종류를 포트 재사용이라고 판단해도 좋다. 예를 들면, 5개의 종류 판단 패킷 가운데, 4개 이상의 종류 판단 패킷에 대해서, 그 종류 판단 패킷의 송신된 정보 처리 장치(10)의 포트와 종류 판단 패킷이 통과한 통신 처리 장치(2)의 포트가 동일한 경우에, 통신 처리 장치(2)의 종류를 포트 재사용이라고 판단해도 좋다.
도 10은, 도 7의 흐름도의 단계 S102에서의, 정보 처리 장치(10)가 통신 처리 장치(2)의 포트 폭을 검출하기 위한 처리의 상세를 도시하는 흐름도이다. 포트 폭 검출용 패킷 등이 통과하는 포트의 위치를 나타내는 도 11의 모식도를 참조하면서 설명한다.
(단계 S301) 포트 폭 검출용 패킷 송신부(17)는 제1 서버(40)의 포트 P203에 포트 폭 검출용 패킷을 송신한다. 포트 폭 검출용 패킷 송신부(17)는 제1 서버(40)의 어드레스나, 포트 P203의 위치를 미리 알고 있어도 좋고, 혹은, 종류 판단 패킷의 송신 시에 다른 구성 요소 등으로부터 수취해도 좋다. 그 포트 폭 검출용 패킷은 정보 처리 장치(10)의 포트 P201로부터 송신된다. 한편, 이 포트 P201은, 포트 폭 검출용 패킷을 송신할 때에, 새롭게 할당된 포트라고 한다. 통신 처리 장치(2)는, 그 포트 폭 검출용 패킷에 대해서 포트 P202를 할당했다고 한다. 그리고, 그 포트 폭 검출용 패킷은, 제1 서버(40)의 포트 폭 검출용 패킷 수신부(45)에서 수신된다.
(단계 S302) 제1 서버(40)의 포트 폭 검출용 포트 정보 송신부(46)는 포트 폭 검출용 패킷 수신부(45)에서 수신된 포트 폭 검출용 패킷의 헤더로부터, 포트 폭 검출용 패킷의 송신원의 포트의 위치를 나타내는 정보를 취득한다. 그리고, 포트 폭 검출용 포트 정보 송신부(46)는, 그 포트의 위치를 나타내는 정보를 포함한 포트 폭 검출용 포트 정보를 구성하고, 포트 폭 검출용 패킷 수신부(45)가 수신한 포트 폭 검출용 패킷의 송신원의 어드레스, 포트 P202에 송신한다. 그 포트 폭 검 출용 포트 정보는 포트 폭 검출용 포트 정보 접수부(18)에서 수신된다.
(단계 S303) 포트 폭 검출용 패킷 송신부(17)는 단계 S301과 동일하게 하고, 제1 서버(40)의 포트 P203에 포트 폭 검출용 패킷을 송신한다. 그 포트 폭 검출용 패킷은 정보 처리 장치(10)의 포트 P204로부터 송신된다. 한편, 포트 P204는, 포트 P201과 상이한 포트라고 한다. 또, 이 포트 P204는 포트 폭 검출용 패킷을 송신할 때에, 새롭게 할당된 포트라고 한다. 통신 처리 장치(2)는 그 포트 폭 검출용 패킷에 대해서 포트 P205를 할당했다고 한다. 그리고, 그 포트 폭 검출용 패킷은, 제1 서버(40)의 포트 폭 검출용 패킷 수신부(45)에서 수신된다.
(단계 S304) 제1 서버(40)의 포트 폭 검출용 포트 정보 송신부(46)는 단계 S302와 동일하게 하여 포트 폭 검출용 포트 정보를 구성하여 송신한다. 그 포트 폭 검출용 포트 정보는 포트 폭 검출용 포트 정보 접수부(18)에서 수신된다.
(단계 S305) 포트 폭 검출용 패킷 송신부(17)는 단계 S301, S303과 동일하게 하고, 제1 서버(40)의 포트 P203에 포트 폭 검출용 패킷을 송신한다. 그 포트 폭 검출용 패킷은 정보 처리 장치(10)의 포트 P206으로부터 송신된다. 한편, 포트 P206은, 포트 P201과 상이한 포트이며, 포트 P204와도 상이한 포트라고 한다. 또, 이 포트 P206은 포트 폭 검출용 패킷을 송신할 때에, 새롭게 할당된 포트라고 한다. 통신 처리 장치(2)는, 그 포트 폭 검출용 패킷에 대해서 포트 P207을 할당했다고 한다. 그리고, 그 포트 폭 검출용 패킷은, 제1 서버(40)의 포트 폭 검출용 패킷 수신부(45)에서 수신된다.
(단계 S306) 제1 서버(40)의 포트 폭 검출용 포트 정보 송신부(46)는 단계 S302, S304와 동일하게 하고, 포트 폭 검출용 포트 정보를 구성하여 송신한다. 그 포트 폭 검출용 포트 정보는, 포트 폭 검출용 포트 정보 접수부(18)에서 수신된다.
한편, 단계 S301, S303, S305의 포트 폭 검출용 패킷의 송신은, 연속하여 행해지는 것으로 한다. 즉, 단계 S301, S303, S305의 포트 폭 검출용 패킷의 송신은, 가능한 한 짧은 송신 간격으로 행해지는 것으로 한다. 포트 폭 검출용 패킷이 송신되는 동안에, 통신 처리 장치(2)의 로컬측에 접속되어 있는 다른 기기로부터 송신된 패킷에 대해서, 통신 처리 장치(2)에 있어서 새로운 포트 할당이 행해진 경우에는, 포트 폭의 검출을 정확하게 행할 수 없기 때문이다.
(단계 S307) 포트 폭 검출부(19)는 포트 폭 검출용 포트 정보 접수부(18)가 수신한 포트 P202, P205, P207의 위치를 나타내는 정보에 의거하여 통신 처리 장치(2)의 포트 폭을 판단한다. 예를 들면, 포트 P202와 포트 P205의 간격과 포트 P205와 포트 P207의 간격이 동일한 경우에는, 그 간격을 통신 처리 장치(2)의 포트 폭으로서 검출한다. 한편, 예를 들면, 포트 P202와 포트 P205의 간격과 포트 P205와 포트 P207의 간격 중, 한 쪽의 간격이 다른 쪽의 간격보다 짧은 경우에는, 짧은 편의 간격을 통신 처리 장치(2)의 포트 폭으로서 검출한다. 포트 폭 검출부(19)에 의해서 검출된 통신 처리 장치(2)의 포트 폭은 버블 패킷 송신 포트 검출부(21)에게 건네어진다.
한편, 제1 서버(40)는 3개의 포트 폭 검출용 패킷을 수신하고 나서, 모아서 포트 폭 검출용 포트 정보를 송신해도 좋다.
또, 통신 처리 장치(2)의 포트 폭을 검출하는 방법은, 도 10에서 도시하는 방법으로 한정되는 것이 아니고, 그 외의 방법에 따라 통신 처리 장치(2)의 종류의 판단을 행해도 좋다. 예를 들면, 정보 처리 장치(10)는 4개 이상의 포트 폭 검출용 패킷을 송신해도 좋고, 혹은, 2개의 포트 폭 검출용 패킷을 송신하는 것만으로도 좋다.
또, 통신 처리 장치(2)의 종류가 포트 재사용, 혹은 콘계인 경우에는, 버블 패킷 송신 포트의 위치의 검출에 있어서 포트 폭을 이용하지 않기 때문에, 포트 폭을 검출하는 처리를 행하지 않아도 좋다. 또, 통신 처리 장치(2)에서의 포트의 할당이 랜덤인 경우에도, 포트 폭을 검출하는 처리를 행하지 않아도 좋다. 통신 처리 장치(2)의 종류가 포트 재사용인 경우나, 통신 처리 장치(2)에서의 포트의 할당이 랜덤인 경우에는, 통신 처리 장치(2)의 포트 폭을 판단했다고 해도, 그 포트 폭에 의미가 없기 때문이다. 여기서, 통신 처리 장치(2)에서의 포트의 할당이 랜덤이라는 것은, 포트 번호가 일정 간격으로 증가, 혹은 감소하도록 포트가 할당되는 것은 아니고 무질서하게 할당되는 경우이다.
도 12는, 도 7의 흐름도의 단계 S103에서의, 정보 처리 장치(10)가 버블 패킷 송신 포트의 위치를 검출하기 위한 처리의 상세를 도시하는 흐름도이다. 여기서, 도 12에 대해 설명하기 전에, 릴레이 서버(60)에서의 정보 처리 장치 등의 어드레스의 등록 처리에 대해 설명한다. 한편, 포트의 위치를 나타내는 정보가 포트 번호라고 하여 설명한다. 이하의 설명에 있어서도 마찬가지인 것으로 한다.
정보 처리 장치(10)와 정보 처리 장치(30) 사이에서 릴레이 서버(60)를 이용한 데이터 릴레이를 행하는 경우에는, 정보 처리 장치(10) 및 정보 처리 장치(30) 는 사전에 어드레스 등을 릴레이 서버(60)에 등록해 둔다. 구체적으로는, 예를 들면, 정보 처리 장치(10)의 장치를 식별하는 정보인 장치 식별 정보가 「A001」이고, 정보 처리 장치(30)의 장치 식별 정보가 「A002」라고 하면, 정보 처리 장치(10)의 통신부(23)는 그 장치 식별 정보 「A001」를 포함한 어드레스 등록을 요구하는 패킷을 릴레이 서버(60)에 송신한다. 그러면, 그 패킷은, 통신부(61)에서 수신되어 어드레스 정보 축적부(63)에 건네어진다. 어드레스 정보 축적부(63)는 그 패킷의 헤더에 포함되는 어드레스와 포트 번호와 그 패킷의 페이 로드에 포함되는 장치 식별 정보 「A001」를 취득하고, 장치 식별 정보 「A001」에 대응시켜 취득한 어드레스와 포트 번호를 어드레스 정보 기억부(62)에 축적한다. 정보 처리 장치(30)도, 마찬가지로 하여 어드레스 등록을 요구하는 패킷을 릴레이 서버(60)에 송신한다.
도 13은, 릴레이 서버(60)에 있어서 축적된 어드레스 정보의 일례를 도시하는 도면이다. 1번째의 레코드가 정보 처리 장치(10)에 대응하는 어드레스 정보이다. 여기서, 정보 처리 장치(10)의 장치 식별 정보 「A001」에 대응되어 있는 어드레스 「202.224.135.10」및 포트 번호 「12345」는, 통신 처리 장치(2)의 어드레스, 및 포트 번호이다. 정보 처리 장치(10)는, NAT 기능을 가지는 통신 처리 장치(2)를 통하여 통신을 행하고 있기 때문이다. 2번째의 레코드가 정보 처리 장치(30)에 대응하는 어드레스 정보이다. 이 어드레스 정보의 어드레스, 포트 번호는 정보 처리 장치(30)의 어드레스 및 포트 번호이다. 정보 처리 장치(30)는, NAT 기능을 가지는 통신 처리 장치를 통하여 통신을 행하지 않기 때문이다.
다음에, 도 12의 흐름도에 대해 설명한다.
(단계 S401) 정보 처리 장치(10)의 통신부(23)는 통신원의 정보 처리 장치(10)의 장치 식별 정보 「A001」, 통신처의 정보 처리 장치(30)의 장치 식별 정보 「A002」, 및 송신처 정보를 송신하는 취지의 요구를 포함한 통신 요구 패킷을 구성하고, 그 통신 요구 패킷을 릴레이 서버(60)에 송신한다.
(단계 S402) 릴레이 서버(60)의 통신부(61)는 그 통신 요구 패킷을 수신하면, 그 통신 요구 패킷에 포함되는 통신처의 정보 처리 장치(30)의 장치 식별 정보 「A002」를 취득하고, 그 장치 식별 정보 「A002」를 어드레스 정보 취득부(64)에 건네준다. 그러면, 어드레스 정보 취득부(64)는 어드레스 정보 기억부(62)가 기억하고 있는 어드레스 정보를 참조하여, 장치 식별 정보 「A002」에 대응하는 어드레스, 포트 번호를 취득해 통신부(61)에 건네준다. 그러면, 통신부(61)는 정보 처리 장치(10)로부터 송신된 통신 요구 패킷을 어드레스 정보 취득부(64)로부터 수취한 어드레스, 포트 번호에 송신한다. 이와 같이 하여, 통신 요구 패킷의 전송을 행한다. 그 통신 요구 패킷은 정보 처리 장치(30)의 통신부(34)에서 수신된다.
(단계 S403) 정보 처리 장치(30)의 통신부(34)는 릴레이 서버(60)로부터 송신된 통신 요구 패킷을 수신하면, 송신처 정보 송신부(31)에 송신처 정보를 송신하는 취지의 지시를 건네준다. 그러면, 송신처 정보 송신부(31)는 통신원의 정보 처리 장치(30)의 장치 식별 정보 「A002」, 통신처의 정보 처리 장치(10)의 장치 식별 정보 「A001」, 및 송신처 정보를 포함한 송신처 정보 패킷을 구성하고, 그 송신처 정보 패킷을 릴레이 서버(60)에 송신한다. 한편, 송신처 정보에는 정보 처리 장치(30)가 정보 처리 장치(10)와의 P2P 통신으로 이용하는 송신 포트의 포트 번호와 수신 포트의 포트 번호와 정보 처리 장치(30)의 어드레스가 포함된다. 여기서, 송신 포트란, P2P 통신에 있어서 정보 처리 장치(30)가 정보 처리 장치(10)에 패킷을 송신하는 포트이다. 수신 포트란, P2P 통신에 있어서, 정보 처리 장치(30)가 정보 처리 장치(10)로부터 송신된 패킷을 수신하는 포트이다.
(단계 S404) 릴레이 서버(60)의 통신부(61)는 정보 처리 장치(30)로부터 송신된 송신처 정보 패킷을 수신하면, 단계 S402의 경우와 동일하게 하여 그 패킷을 통신 처리 장치(2)에 전송한다. 통신 처리 장치(2)는 그 패킷을 어드레스 변환하여 정보 처리 장치(10)에 송신한다. 정보 처리 장치(10)의 송신처 정보 접수부(11)는 그 송신처 정보 패킷을 수신한다.
(단계 S405) 검출용 패킷 송신부(16), 버블 패킷 송신부(12)는 각각, 검출용 패킷, 버블 패킷을 송신한다. 또한, 검출용 포트 정보 접수부(20)는 검출용 포트 정보를 접수한다. 이 처리의 상세에 대해서는, 후술한다.
(단계 S406) 버블 패킷 송신 포트 검출부(21)는 버블 패킷 송신 포트의 위치를 검출할 수 있을지 판단한다. 그리고, 버블 패킷 송신 포트의 위치를 검출할 수 있는 경우에는, 단계 S407에 진행되고, 그렇지 않은 경우에는, 단계 S405로 돌아온다.
(단계 S407) 버블 패킷 송신 포트 검출부(21)는 버블 패킷 송신 포트의 위치를 검출한다.
(단계 S408) 출력부(22)는, 버블 패킷 송신 포트 검출부(21)에 의해서 검출 된 버블 패킷 송신 포트의 포트 번호, 통신 처리 장치(2)의 글로벌측의 어드레스, 통신원의 정보 처리 장치(10)의 장치 식별 정보 「A001」, 및 통신처의 정보 처리 장치(30)의 장치 식별 정보 「A002」를 포함한 통신 요구 패킷을 구성하고, 그 통신 요구 패킷을 릴레이 서버(60)에 송신한다.
(단계 S409) 릴레이 서버(60)의 통신부(61)는 단계 S402와 동일하게 하여, 그 통신 요구 패킷을 정보 처리 장치(30)에 전송한다. 그 통신 요구 패킷은, 정보 처리 장치(30)의 버블 패킷 송신 포트 접수부(32)에서 수신된다.
(단계 S410) 통신부(34)는, 통신원의 정보 처리 장치(30)의 장치 식별 정보 「A002」, 통신처의 정보 처리 장치(10)의 장치 식별 정보 「A001」, 및 P2P 통신을 확립할 수 있는 환경이 구비된 취지를 포함한 응답 패킷을 구성하고, 그 응답 패킷을 릴레이 서버(60)에 송신한다.
(단계 S411) 릴레이 서버(60)의 통신부(61)는 정보 처리 장치(30)로부터 송신된 응답 패킷을 수신하면, 단계 S404의 경우와 동일하게 하여 그 패킷을 통신 처리 장치(2)에 전송한다. 통신 처리 장치(2)는 그 패킷을 어드레스 변환하여 정보 처리 장치(10)에 송신한다. 정보 처리 장치(10)의 통신부(23)는 그 응답 패킷을 수신한다.
(단계 S412) 통신부(23)는 통신원의 정보 처리 장치(10)의 장치 식별 정보 「A001」, 통신처의 정보 처리 장치(30)의 장치 식별 정보 「A002」, 및 응답 패킷을 수신한 취지를 포함한 확인 패킷을 구성하고, 그 확인 패킷을 릴레이 서버(60)에 송신한다.
(단계 S413) 릴레이 서버(60)의 통신부(61)는 단계 S402와 동일하게 하고, 그 확인 패킷을 정보 처리 장치(30)에 전송한다. 그 확인 패킷은 정보 처리 장치(30)의 통신부(34)에서 수신된다.
(단계 S414) 답신 패킷 송신부(33)는 버블 패킷 송신 포트 접수부(32)에서 수신된 통신 요구 패킷에 포함되는 어드레스, 및 버블 패킷 송신 포트에, 답신 패킷을 송신한다. 그 답신 패킷은 통신 처리 장치(2)에 있어서 어드레스 변환되어 정보 처리 장치(10)에 송신된다. 정보 처리 장치(10)의 통신부(23)는 그 답신 패킷을 수신한다. 그 후, 정보 처리 장치(10)의 통신부(23)가 송신처 정보 접수부(11)가 수신한 송신처 정보에 포함되는 어드레스, 및 수신 포트에 패킷을 송신함으로써 도 7의 단계 S104의 P2P 통신이 개시된다.
다음에, 본 실시형태 1에 의한 정보 처리 시스템의 동작에 대해서, 구체예를 이용해 설명한다. 이 구체예에서는, 통신 처리 장치(2)의 종류에 따라, 검출용 패킷의 송신 방법을 변경하는 경우(구체예 1), 및 통신 처리 장치(2)의 종류에 상관없이 소정의 방법으로 검출용 패킷을 송신함으로써, 결과적으로, 통신 처리 장치(2)의 종류에 따른 검출용 패킷의 송신이 되는 경우(구체예 2)에 대해 설명한다.
[구체예 1]
이 구체예에서는, 검출용 패킷 송신부(16)가 종류 판단부(15)에 의해서 판단된 통신 처리 장치(2)의 종류에 따라 검출용 패킷의 송신을 행하는 경우에 대해 설명한다.
우선, 통신 처리 장치(2)의 종류가 콘계, 혹은 포트 재사용인 경우의 도 12 의 흐름도의 단계 S405에서의 처리에 대해서, 도 14의 흐름도를 이용해 설명한다.
(단계 S501) 검출용 패킷 송신부(16)는 정보 처리 장치(10)가 있는 포트로부터 검출용 패킷을 제1 서버(40)에 송신한다. 그 검출용 패킷은 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신된다.
(단계 S502) 제1 서버(40)의 검출용 포트 정보 송신부(44)는, 검출용 패킷 수신부(43)에서 수신된 검출용 패킷의 헤더로부터, 검출용 패킷의 송신원의 어드레스, 및 포트 번호를 취득한다. 그리고, 검출용 포트 정보 송신부(44)는 그 어드레스와 포트 번호를 포함한 검출용 포트 정보를 구성하고, 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다. 그 검출용 포트 정보는, 통신 처리 장치(2)를 통하여 정보 처리 장치(10)에 송신되고 검출용 포트 정보 접수부(20)에서 수신된다.
(단계 S503) 버블 패킷 송신부(12)는, 단계 S501의 검출용 패킷의 송신에서 이용한 정보 처리 장치(10)의 포트로부터, 송신처 정보 접수부(11)가 수신한 송신처 정보가 나타내는 어드레스, 포트 번호에 버블 패킷을 송신한다.
다음에, 통신 처리 장치(2)의 종류가 심메트릭계인 경우의 도 12의 흐름도의 단계 S405에서의 처리에 대해서, 도 15의 흐름도를 이용해 설명한다.
(단계 S601) 검출용 패킷 송신부(16)는 정보 처리 장치(10)에 있어서 새롭게 할당된 포트로부터 검출용 패킷을 제1 서버(40)에 송신한다. 그 검출용 패킷은, 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신된다.
(단계 S602) 제1 서버(40)의 검출용 포트 정보 송신부(44)는 검출용 패킷 수 신부(43)에서 수신된 검출용 패킷의 헤더로부터, 검출용 패킷의 송신원의 어드레스, 및 포트 번호를 취득한다. 그리고, 검출용 포트 정보 송신부(44)는 그 어드레스와 포트 번호를 포함한 검출용 포트 정보를 구성하고, 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다. 그 검출용 포트 정보는, 통신 처리 장치(2)를 통하여 정보 처리 장치(10)에 송신되고 검출용 포트 정보 접수부(20)에서 수신된다.
(단계 S603) 버블 패킷 송신부(12)는 정보 처리 장치(10)에 있어서 새롭게 할당된 포트로부터, 송신처 정보 접수부(11)가 수신한 송신처 정보가 나타내는 어드레스, 포트 번호에 버블 패킷을 송신한다.
(단계 S604) 검출용 패킷 송신부(16)는 정보 처리 장치(10)에 대해 새롭게 할당된 포트로부터, 검출용 패킷을 제1 서버(40)에 송신한다. 그 검출용 패킷은 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신된다.
(단계 S605) 제1 서버(40)의 검출용 포트 정보 송신부(44)는 단계 S602와 동일하게, 검출용 포트 정보를 구성하여 송신한다. 그 검출용 포트 정보는, 통신 처리 장치(2)를 통하여 정보 처리 장치(10)에 송신되고 검출용 포트 정보 접수부(20)에서 수신된다.
한편, 단계 S601, S603, S604에서의 패킷의 송신은, 연속해 행해지는 것으로 한다. 즉, 단계 S601, S603, S604의 검출용 패킷, 및 버블 패킷의 송신은, 가능한 한 짧은 송신 간격으로 행해지는 것으로 한다. 포트 폭 검출용 패킷이 송신되는 동안에, 통신 처리 장치(2)의 로컬측에 접속되어 있는 다른 기기로부터 송신된 패 킷에 대해서, 통신 처리 장치(2)에 있어서 새로운 포트 할당이 행해진 경우에는, 버블 패킷 송신 포트의 위치의 검출을 적확하게 실시할 수 없기 때문이다.
이와 같이, 이 구체예에서는 검출용 패킷 송신부(16)는 통신 처리 장치(2)의 종류가 콘계인 경우에는, 검출용 패킷 송신 포트가 버블 패킷 송신 포트와 동일해지고, 통신 처리 장치(2)의 종류가 심메트릭계인 경우에는 검출용 패킷 송신 포트와 버블 패킷 송신 포트가 상이하게 검출용 패킷을 송신한다.
다음에, 이 구체예에서의 정보 처리 장치 사이에서의 P2P 통신을 확립하는 처리에 대해서, 통신 처리 장치(2)의 종류가 콘계인 경우, 심메트릭계인 경우, 포트 재사용인 경우의 각각에 대해 설명한다.
우선, 통신 처리 장치(2)의 종류가 콘계인 경우에 대해 설명한다. 종류 판단 패킷 송신부(13)는 정보 처리 장치(10)의 포트 번호 「10000」의 포트(이하, 이 포트를 「포트 10000」라고 부르기로 함. 다른 포트에 대해서도 동일하게 함)로부터 제1 서버(40)의 포트 12000에 종류 판단 패킷을 송신한다(단계 S201). 그 종류 판단 패킷은, 통신 처리 장치(2)의 포트 15000을 통과하여 제1 서버(40)의 종류 판단 패킷 수신부(41)에서 수신되었다고 한다. 종류 판단 포트 정보 송신부(42)는, 종류 판단 패킷 수신부(41)에 의한 종류 판단 패킷의 수신에 따라, 포트 번호 「15000」를 나타내는 종류 판단 포트 정보를 포함한 패킷을 통신 처리 장치(2)의 포트 15000에 송신한다(단계 S202). 그 종류 판단 포트 정보를 포함한 패킷은, 통신 처리 장치(2)에서 어드레스 변환되고, 정보 처리 장치(10)의 종류 판단 포트 정보 접수부(14)에서 수신된다.
다음에, 종류 판단 패킷 송신부(13)는 정보 처리 장치(10)의 포트 9500으로부터 제1 서버(40)의 포트 12000에 종류 판단 패킷을 송신한다(단계 S203). 그 종류 판단 패킷은, 통신 처리 장치(2)의 포트 15001을 통과하여 종류 판단 패킷 수신부(41)에서 수신되었다고 한다. 종류 판단 포트 정보 송신부(42)는 포트 번호 「15001」을 나타내는 종류 판단 포트 정보를 포함한 패킷을 통신 처리 장치(2)의 포트 15001에 송신한다(단계 S204). 그 종류 판단 포트 정보를 포함한 패킷은, 통신 처리 장치(2)에서 어드레스 변환되어 정보 처리 장치(10)의 종류 판단 포트 정보 접수부(14)에서 수신된다.
다음에, 종류 판단 패킷 송신부(13)는 정보 처리 장치(10)의 포트 10000으로부터, 제2 서버(50)의 포트 12001에 종류 판단 패킷을 송신한다(단계 S205). 그 종류 판단 패킷은, 통신 처리 장치(2)의 포트 15000을 통과하여 제2 서버(50)의 종류 판단 패킷 수신부(51)에서 수신되었다고 한다. 종류 판단 포트 정보 송신부(52)는, 포트 번호 「15000」을 나타내는 종류 판단 포트 정보를 포함한 패킷을 통신 처리 장치(2)의 포트 15000에 송신한다(단계 S206). 그 종류 판단 포트 정보를 포함한 패킷은, 통신 처리 장치(2)에서 어드레스 변환되고 정보 처리 장치(10)의 종류 판단 포트 정보 접수부(14)에서 수신된다. 그 후, 종류 판단부(15)는 종류 판단 패킷의 송신된 정보 처리 장치(10)의 포트 번호 「10000」, 「9500」와, 그 종류 판단 패킷이 통과한 통신 처리 장치(2)의 포트 번호 「15000」, 「15001」가 일치하지 않지만, 제1 서버(40)에 송신된 종류 판단 패킷이 통과한 통신 처리 장치(2)의 포트 번호 「15000」와, 제2 서버(50)에 송신된 종류 판단 패킷이 통과 한 통신 처리 장치(2)의 포트 번호 「15000」가 일치하기 때문에, 통신 처리 장치(2)의 종류가 콘계라고 판단한다(단계 S207). 그리고, 종류 판단부(15)는, 통신 처리 장치(2)의 종류가 콘계인 취지를 검출용 패킷 송신부(16), 버블 패킷 송신 포트 검출부(21)에 건네준다.
포트 폭 검출용 패킷 송신부(17)는 정보 처리 장치(10)의 포트 10001로부터, 제1 서버(40)의 포트 13000에 포트 폭 검출용 패킷을 송신한다(단계 S301). 그 포트 폭 검출용 패킷은 통신 처리 장치(2)의 포트 15002를 통과하고, 제1 서버(40)의 포트 폭 검출용 패킷 수신부(45)에서 수신되었다고 한다. 포트 폭 검출용 포트 정보 송신부(46)는 포트 번호 「15002」를 나타내는 포트 폭 검출용 포트 정보를 포함한 패킷을, 통신 처리 장치(2)의 포트 15001에 송신한다(단계 S302). 그 포트 폭 검출용 포트 정보를 포함한 패킷은, 통신 처리 장치(2)에서 어드레스 변환되고 정보 처리 장치(10)의 포트 폭 검출용 포트 정보 접수부(18)에서 수신된다. 이와 같이 하여, 정보 처리 장치(10)의 포트 10002, 10003으로부터도 각각 포트 폭 검출용 패킷이 송신되고, 제1 서버(40)로부터 포트 번호 「15003」, 「15004」를 나타내는 포트 폭 검출용 포트 정보를 포함한 패킷이 각각 송신되어 포트 폭 검출용 포트 정보 접수부(18)에서 수신되었다고 한다(단계 S303~S306). 그 후, 포트 폭 검출부(19)는 포트 폭 검출용 패킷이 통과한 통신 처리 장치(2)의 포트 번호가, 15002, 15003, 15004이기 때문에, 통신 처리 장치(2)의 포트 폭 「1」을 검출한다(단계 S307).
다음에, 정보 처리 장치(10)의 통신부(23)는 송신처 정보를 송신하는 취지의 요구를 포함한 통신 요구 패킷을 구성하고, 그 통신 요구 패킷을 릴레이 서버(60)에 송신한다(단계 S401). 그 통신 요구 패킷은, 릴레이 서버(60)를 통하여 정보 처리 장치(30)에 송신된다(단계 S402). 한편, 데이터 릴레이에 대해서는, 도 12의 흐름도를 이용하여 상세하게 설명했기 때문에, 이 구체예에서는, 릴레이되는 패킷에 통신원의 정보 처리 장치(10)의 장치 식별 정보 「A001」, 및 통신처의 정보 처리 장치(30)의 장치 식별 정보 「A002」등이 포함되는 취지의 설명이나, 릴레이 서버(60)에서의 데이터 릴레이의 처리에 관한 설명을 생략한다.
정보 처리 장치(30)의 통신부(34)는, 정보 처리 장치(10)로부터 송신된 통신 요구 패킷을 수신하고, 송신처 정보 송신부(31)에 송신처 정보를 송신하는 취지의 지시를 건네준다. 그러면, 송신처 정보 송신부(31)는, 미리 설정되어 있는 송신 포트의 포트 번호 「20000」, 수신 포트의 포트 번호 「20001」, 정보 처리 장치(30)의 어드레스 「202.132.10.6」을 포함한 송신처 정보를 포함한 송신처 정보 패킷을 구성하고, 그 송신처 정보 패킷을 릴레이 서버(60)에 송신한다(단계 S403). 그 송신처 정보 패킷은 릴레이 서버(60)를 통하여, 정보 처리 장치(10)에 송신된다(단계 S404). 그 송신처 정보 패킷은 정보 처리 장치(10)의 송신처 정보 접수부(11)에서 수신되고, 그 송신처 정보 패킷에 포함되는 송신처 정보가 버블 패킷 송신부(12) 및 통신부(23)에 건네진다. 버블 패킷 송신부(12) 및 통신부(23)는 그 송신처 정보를 도시하지 않는 기록 매체에 있어서 유지해 둔다.
통신 처리 장치(2)의 종류가 콘계이면 종류 판단부(15)에 의해서 판단되고 있기 때문에, 이 후, 검출용 패킷 송신부(16) 등은 도 14의 흐름도에서 나타내는 바와 같이 버블 패킷이나 검출용 패킷의 송신을 행한다(단계 S405). 그 처리에 대해서, 도 16을 이용하여 설명한다.
우선, 검출용 패킷 송신부(16)는 정보 처리 장치(10)의 포트 10100으로부터, 검출용 패킷을 제1 서버(40)의 포트 14000에 송신한다(단계 S501). 그 검출용 패킷에 대해서, 통신 처리 장치(2)에 있어서 포트 15005가 할당되었다고 한다. 그 검출용 패킷은 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신되고, 검출용 포트 정보 송신부(44)는 그 검출용 패킷의 헤더로부터 송신원의 어드레스 「202.224.135.10」와, 포트 번호 「15005」를 취득하고, 그들을 포함한 검출용 포트 정보를 구성하며, 그 검출용 포트 정보를 포함한 검출용 포트 정보 패킷을 구성하고, 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다(단계 S502). 그 검출용 포트 정보 패킷은 통신 처리 장치(2)의 포트 15005를 통하여, 정보 처리 장치(10)에 송신되고, 정보 처리 장치(10)의 검출용 포트 정보 접수부(20)에서 수신된다. 그리고, 검출용 포트 정보가 검출용 포트 정보 접수부(20)로부터 버블 패킷 송신 포트 검출부(21)에 건네지고 검출용 포트 정보가 버블 패킷 송신 포트 검출부(21)에서 유지된다.
다음에, 버블 패킷 송신부(12)는 검출용 패킷의 송신된 정보 처리 장치(10)의 포트 10100으로부터 버블 패킷을 송신한다(단계 S503). 이 버블 패킷의 송신처는, 송신처 정보 접수부(11)가 수신한 송신처 정보 패킷에 포함되는 정보 처리 장치(30)의 어드레스, 송신 포트 20000이다.
그 후, 버블 패킷 송신 포트 검출부(21)는 통신 처리 장치(2)의 종류가 콘계 이기 때문에, 버블 패킷 송신 포트의 위치를 검출 가능하다고 판단하고(단계 S407), 검출용 패킷이 통과한 통신 처리 장치(2)의 포트 15005를 버블 패킷 송신 포트로서 검출한다(단계 S407).
출력부(22)는, 버블 패킷 송신 포트 검출부(21)에 의해서 검출된 버블 패킷 송신 포트의 포트 번호 「15005」, 및 검출용 포트 정보 접수부(20)가 수신한 검출용 포트 정보 패킷에 포함되는 통신 처리 장치(2)의 글로벌측의 어드레스 「202.224.135.10」를 포함한 통신 요구 패킷을 구성하고, 릴레이 서버(60)를 통하여 정보 처리 장치(30)에 송신한다(단계 S408, S409). 그 통신 요구 패킷은 버블 패킷 송신 포트 접수부(32)에서 수신된다. 그리고, 정보 처리 장치(30)로부터는, P2P 통신을 확립할 수 있는 환경이 구비된 취지를 포함한 응답 패킷이, 릴레이 서버(60)를 통하여 정보 처리 장치(10)에 송신된다(단계 S410, S411). 그 응답 패킷은, 정보 처리 장치(10)의 통신부(23)에서 수신되고, 통신부(23)는 응답 패킷을 수신한 취지를 포함한 확인 패킷을 구성하며, 릴레이 서버(60)를 통하여 정보 처리 장치(30)에 송신한다(단계 S412, S413). 그 확인 패킷은 정보 처리 장치(30)의 통신부(34)에서 수신된다. 그리고, 답신 패킷 송신부(33)는 버블 패킷 송신 포트 접수부(32)에서 수신된 통신 요구 패킷에 포함되는 어드레스, 및 버블 패킷 송신 포트에, 송신 포트 20000으로부터 답신 패킷을 송신한다(단계 S414). 그 답신 패킷은, 통신 처리 장치(2)의 버블 패킷 송신 포트 15005를 통하여 정보 처리 장치(10)에 송신되어 통신부(23)에서 수신된다. 그 후, 정보 처리 장치(10)의 통신부(23)가 정보 처리 장치(30)의 수신 포트 20001에 패킷을 송신함으로써, 정보 처리 장 치(10)와 정보 처리 장치(30) 사이에서 릴레이 서버(60)를 통하지 않는 P2P 통신이 행해진다(단계 S104).
다음에, 통신 처리 장치(2)의 종류가 심메트릭계인 경우에 대해 설명한다. 종류 판단 패킷 송신부(13)는 통신 처리 장치(2)의 종류가 콘계인 경우와 마찬가지로, 제1 서버(40), 및 제2 서버(50)에 종류 판단 패킷을 송신했다고 한다. 그 결과, 정보 처리 장치(10)의 포트 10000으로부터 제1 서버(40)에 송신된 종류 판단 패킷은, 통신 처리 장치(2)의 포트 15000을 통과했다고 한다. 또한, 정보 처리 장치(10)의 포트 9500으로부터 제1 서버(40)에 송신된 종류 판단 패킷은, 통신 처리 장치(2)의 포트 15001을 통과했다고 한다. 또, 정보 처리 장치(10)의 포트 10000으로부터 제2 서버(50)에 송신된 종류 판단 패킷은, 통신 처리 장치(2)의 포트 15002를 통과했다고 한다. 동일한 포트 10000으로부터 제1 서버(40), 및 제2 서버(50)에 송신된 종류 판단 패킷이, 통신 처리 장치(2)가 상이한 포트를 통하여 각각 송신되고 있기 때문에, 종류 판단부(15)는 통신 처리 장치(2)의 종류가 심메트릭계라고 판단한다(단계 S207). 그리고, 통신 처리 장치(2)의 종류가 심메트릭계인 취지를 검출용 패킷 송신부(16), 버블 패킷 송신 포트 검출부(21)에 건네준다.
한편, 포트 폭 검출용 패킷 송신부(17)가 포트 폭 검출용 패킷을 송신하고, 통신 처리 장치(2)의 포트 폭을 검출하는 동작에 대해서는, 통신 처리 장치(2)의 종류가 콘계인 경우와 마찬가지이고, 그 설명을 생략한다. 이 경우에도, 통신 처리 장치(2)의 포트 폭 「1」이 검출된 것으로 한다.
다음에, 정보 처리 장치(10)의 통신부(23)는 송신처 정보를 송신하는 취지의 요구를 포함한 통신 요구 패킷을 구성하고, 릴레이 서버(60)을 통하여 정보 처리 장치(30)에 송신한다(단계 S401, S402). 그 통신 요구 패킷은, 정보 처리 장치(30)의 통신부(34)에서 수신된다. 그 통신 요구 패킷의 수신에 따라, 송신처 정보 송신부(31)는 미리 설정되어 있는 송신 포트의 포트 번호 「20000」, 수신 포트의 포트 번호 「20001」, 정보 처리 장치(30)의 어드레스 「202.132.10.6」을 포함한 송신처 정보를 포함한 송신처 정보 패킷을 구성하고, 릴레이 서버(60)를 통하여 정보 처리 장치(10)에 송신한다(단계 S403, S404). 그 송신처 정보 패킷은, 정보 처리 장치(10)의 송신처 정보 접수부(11)에서 수신되고, 그 송신처 정보 패킷에 포함되는 송신처 정보가 버블 패킷 송신부(12) 및 통신부(23)에 건네진다. 버블 패킷 송신부(12) 및 통신부(23)는 그 송신처 정보를 도시하지 않는 기록 매체에 있어서 유지해 둔다.
통신 처리 장치(2)의 종류가 심메트릭계이라고 종류 판단부(15)에 의해서 판단되고 있기 때문에, 이 후, 검출용 패킷 송신부(16) 등은 도 15의 흐름도에서 나타내는 바와 같이 버블 패킷이나 검출용 패킷의 송신을 행한다(단계 S405). 그 처리에 대해서, 도 17을 이용해 설명한다.
우선, 검출용 패킷 송신부(16)는 정보 처리 장치(10)의 포트 10100으로부터, 검출용 패킷을 제1 서버(40)의 포트 14000에 송신한다(단계 S601). 그 포트 10100은 정보 처리 장치(10)에 있어서 새롭게 할당된 포트이다. 그 검출용 패킷에 있어서, 통신 처리 장치(2)에 대해 포트 15005가 할당되었다고 한다. 그 검출용 패킷은, 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신되고 검출용 포트 정보 송신 부(44)는 그 검출용 패킷의 헤더로부터, 송신원의 어드레스 「202.224.135.10」와, 포트 번호 「15005」를 취득하고, 그들을 포함한 검출용 포트 정보를 구성하며, 그 검출용 포트 정보를 포함한 검출용 포트 정보 패킷을 구성하고, 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다(단계 S602). 그 검출용 포트 정보 패킷은, 통신 처리 장치(2)의 포트 15005를 통하여, 정보 처리 장치(10)에 송신되고 정보 처리 장치(10)의 검출용 포트 정보 접수부(20)에서 수신된다. 그리고, 그 검출용 포트 정보가 검출용 포트 정보 접수부(20)로부터 버블 패킷 송신 포트 검출부(21)에 건네지고 그 검출용 포트 정보가 버블 패킷 송신 포트 검출부(21)에서 유지된다.
다음에, 버블 패킷 송신부(12)는 정보 처리 장치(10)에 있어서 새롭게 할당된 포트 10101로부터, 버블 패킷을 송신한다(단계 S603). 이 버블 패킷의 송신처는, 송신처 정보 접수부(11)가 수신한 송신처 정보 패킷에 포함되는 정보 처리 장치(30)의 어드레스 「202.132.10.6」, 송신 포트 20000이다. 그 버블 패킷에 대해서, 통신 처리 장치(2)에 있어서 포트 15006이 할당되었다고 한다.
그 후, 검출용 패킷 송신부(16)는 재차, 정보 처리 장치(10)에 있어서 새롭게 할당된 포트 10102로부터, 검출용 패킷을 제1 서버(40)의 포트 14000에 송신한다(단계 S604). 그 검출용 패킷에 대해서, 통신 처리 장치(2)에 있어서 포트 15007이 할당되었다고 한다. 그 검출용 패킷은, 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신되고, 검출용 포트 정보 송신부(44)는 그 검출용 패킷의 헤더로부터, 송신원의 어드레스 「202.224.135.10」과, 포트 번호 「15007」를 취득하며, 그들을 포함한 검출용 포트 정보를 구성하고, 그 검출용 포트 정보를 포함한 검출용 포트 정보 패킷을 구성하며, 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다(단계 S605). 그 검출용 포트 정보 패킷은, 통신 처리 장치(2)의 포트 15007을 통하여 정보 처리 장치(10)에 송신되고 정보 처리 장치(10)의 검출용 포트 정보 접수부(20)에서 수신된다. 그리고, 그 검출용 포트 정보가 검출용 포트 정보 접수부(20)로부터 버블 패킷 송신 포트 검출부(21)에 건네지고, 그 검출용 포트 정보가 버블 패킷 송신 포트 검출부(21)에서 유지된다.
그 후, 버블 패킷 송신 포트 검출부(21)는 유지하고 있는 2개의 검출용 포트 정보가 가리키는 2개의 포트 번호의 차이가, 포트 폭 검출부(19)에 의해서 검출된 통신 처리 장치(2)의 포트 폭 「1」의 2배인지 여부를 판단한다. 이 경우는, 2배이므로, 버블 패킷 송신 포트를 검출 가능하다고 판단하고, 버블 패킷 송신 포트의 포트 번호를 검출용 포트 정보가 나타내는 2개의 포트 번호 「15005」, 「15007」의 한가운데의 포트 번호 「15006」라고 검출한다(단계 S407). 그 후, 정보 처리 장치(10)로부터 통신 요구 패킷이 송신되고 정보 처리 장치(30)로부터 응답 패킷이 송신되며, 정보 처리 장치(10)로부터 확인 패킷이 송신되고, 정보 처리 장치(30)로부터 답신 패킷이 송신되는 것 등에 의하여 정보 처리 장치(10)와 정보 처리 장치(30) 사이에 P2P 통신이 확립된다. 이 P2P 통신이 확립되는 처리는, 통신 처리 장치(2)가 콘계인 경우의 설명과 동일하고 그 설명을 생략한다.
한편, 상기 설명에서는 제1 서버(40)로부터 송신된 검출용 포트 정보가 나타 내는 2개의 포트 번호의 차이가, 포트 폭 검출부(19)에 의해서 검출된 통신 처리 장치(2)의 포트 폭의 2배인 경우에 대해 설명했지만, 2배가 아닌 경우, 예를 들면, 한 쪽의 검출용 포트 정보가 나타내는 포트 번호가 「15005」이며, 다른 쪽의 검출용 포트 정보가 나타내는 포트 번호가 「15008」인 경우에는, 버블 패킷이 포트 번호 「15006」의 포트를 통과했는지, 혹은, 포트 번호 「15007」의 포트를 통과했는지를 판단할 수 없다. 이 때문에, 버블 패킷 송신 포트 검출부(21)는 버블 패킷 송신 포트를 검출할 수 없다고 판단하고, 버블 패킷 송신부(12), 및 검출용 패킷 송신부(16)에 버블 패킷 및 검출용 패킷을 재차 송신하는 취지의 지시를 건네준다. 그리고, 검출용 패킷, 및 버블 패킷의 송신이 재차 행해진다. 여기서, 검출용 패킷 및 버블 패킷을 재차 송신하는 경우에는, 그러한 패킷은 통신 처리 장치(2)에 있어서 새롭게 할당된 포트를 통하여 송신되는 것으로 한다. 그러기 위해서는, 예를 들면, 정보 처리 장치(10)에 있어서 새롭게 할당된 포트로부터 그러한 패킷을 송신하면 좋다.
다음에, 통신 처리 장치(2)의 종류가 포트 재사용인 경우에 대해 설명한다. 종류 판단 패킷 송신부(13)는, 통신 처리 장치(2)의 종류가 콘계인 경우와 마찬가지로, 제1 서버(40) 및 제2 서버(50)에 종류 판단 패킷을 송신했다고 한다. 그 결과, 정보 처리 장치(10)의 포트 10000으로부터 제1 서버(40)에 송신된 종류 판단 패킷은 통신 처리 장치(2)의 포트 10000을 통과했다고 한다. 또한, 정보 처리 장치(10)의 포트 9500으로부터 제1 서버(40)에 송신된 종류 판단 패킷은, 통신 처리 장치(2)의 포트 9500을 통과했다고 한다. 또한, 정보 처리 장치(10)의 포트 10000 으로부터 제2 서버(50)에 송신된 종류 판단 패킷은, 통신 처리 장치(2)의 포트 10000을 통과했다고 한다. 정보 처리 장치(10)로부터 제1 서버(40)에 송신된 2개의 종류 판단 패킷에 대해서, 송신원의 정보 처리 장치(10)의 포트의 포트 번호와 그 종류 판단 패킷이 통과한 통신 처리 장치(2)의 포트의 포트 번호가 각각 동일하기 때문에, 종류 판단부(15)는 통신 처리 장치(2)의 종류가 포트 재사용이라고 판단한다(단계 S207). 그리고, 통신 처리 장치(2)의 종류가 포트 재사용인 취지를 검출용 패킷 송신부(16), 버블 패킷 송신 포트 검출부(21)에 건네준다.
한편, 포트 폭 검출용 패킷 송신부(17)가 포트 폭 검출용 패킷을 송신하고, 통신 처리 장치(2)의 포트 폭을 검출하는 동작에 대해서는, 통신 처리 장치(2)의 종류가 콘계인 경우와 동일하고 그 설명을 생략한다. 이 경우에도, 통신 처리 장치(2)의 포트 폭 「1」이 검출된 것으로 한다. 여기서, 통신 처리 장치(2)의 종류가 포트 재사용인 경우에는, 그 포트 할당 룰의 성질상, 통신 처리 장치(2)의 포트 폭은 「1」이 된다.
다음에, 정보 처리 장치(10)의 통신부(23)는 송신처 정보를 송신하는 취지의 요구를 포함한 통신 요구 패킷을 구성하고, 릴레이 서버(60)을 통하여 정보 처리 장치(30)에 송신한다(단계 S401, S402). 그 통신 요구 패킷은, 정보 처리 장치(30)의 통신부(34)에서 수신된다. 그 통신 요구 패킷의 수신에 따라, 송신처 정보 송신부(31)는 미리 설정되어 있는 송신 포트의 포트 번호 「20000」, 수신 포트의 포트 번호 「20001」, 정보 처리 장치(30)의 어드레스 「202.132.10.6」을 포함한 송신처 정보를 포함한 송신처 정보 패킷을 구성하고, 릴레이 서버(60)를 통하여 정보 처리 장치(10)에 송신한다(단계 S403, S404). 그 송신처 정보 패킷은 정보 처리 장치(10)의 송신처 정보 접수부(11)에서 수신되고 그 송신처 정보 패킷에 포함되는 송신처 정보가 버블 패킷 송신부(12) 및 통신부(23)에 건네진다. 버블 패킷 송신부(12) 및 통신부(23)는 그 송신처 정보를 도시하지 않는 기록 매체에 있어서 유지해 둔다.
통신 처리 장치(2)의 종류가 포트 재사용이라고 종류 판단부(15)에 의해서 판단되고 있기 때문에, 이 후, 검출용 패킷 송신부(16) 등은, 도 14의 흐름도로 나타나는 바와 같이 버블 패킷이나 검출용 패킷의 송신을 행한다(단계 S405). 그 처리에 대해서, 도 18을 이용해 설명한다.
우선, 검출용 패킷 송신부(16)는 정보 처리 장치(10)의 포트 10100으로부터, 검출용 패킷을 제1 서버(40)의 포트 14000에 송신한다(단계 S501). 그 검출용 패킷은, 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신되고 검출용 포트 정보 송신부(44)는 그 검출용 패킷의 헤더로부터, 송신원의 어드레스 「202.224.135.10」와 포트 번호 「10100」를 취득하며, 그들을 포함한 검출용 포트 정보를 구성하고, 그 검출용 포트 정보를 포함한 검출용 포트 정보 패킷을 구성하고, 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다(단계 S502). 그 검출용 포트 정보 패킷은 통신 처리 장치(2)의 포트 10100을 통하여, 정보 처리 장치(10)에 송신되고, 정보 처리 장치(10)의 검출용 포트 정보 접수부(20)에서 수신된다. 그리고, 검출용 포트 정보가 검출용 포트 정보 접수부(20)로부터 버블 패킷 송신 포트 검출부(21)에 건네지고 검출용 포트 정보가 버블 패킷 송신 포트 검출부(21)에서 유지된다.
다음에, 버블 패킷 송신부(12)는, 동일하게 포트 10100으로부터, 버블 패킷을 송신한다(단계 S503). 이 버블 패킷의 송신처는 송신처 정보 접수부(11)가 수신한 송신처 정보 패킷에 포함되는 정보 처리 장치(30)의 어드레스, 송신 포트 20000이다. 그 버블 패킷도, 검출용 패킷과 동일하게 통신 처리 장치(2)의 포트 10100을 통과한다.
그 후, 버블 패킷 송신 포트 검출부(21)는 제1 서버(40)로부터 송신된 검출용 포트 정보가 가리키는 포트 번호가, 검출용 패킷의 송신된 정보 처리 장치(10)의 포트의 포트 번호와 동일한지 어떤지 판단한다. 이 경우에는, 양자가 동일하기 때문에, 버블 패킷 송신 포트의 위치를 검출 가능하다라고 판단한다(단계 S406). 그리고, 버블 패킷 송신 포트 검출부(21)는 검출용 패킷이 통과한 통신 처리 장치(2)의 포트 10100을 버블 패킷 송신 포트로서 검출한다(단계 S407). 그 후, 정보 처리 장치(10)와 정보 처리 장치(30) 사이에 P2P 통신이 개시될 때까지의 처리는, 통신 처리 장치(2)가 콘계인 경우의 설명과 동일하고 그 설명을 생략한다.
한편, 버블 패킷 송신 포트 검출부(21)는 제1 서버(40)로부터 송신된 검출용 포트 정보가 나타내는 포트 번호가, 검출용 패킷의 송신된 정보 처리 장치(10)의 포트의 포트 번호와 상이한 경우에는, 버블 패킷 송신 포트의 위치의 검출을 행할 수 없다고 판단하고, 검출용 패킷의 송신과 버블 패킷의 송신을 재차 행하는 취지의 지시를 버블 패킷 송신부(12) 및 검출용 패킷 송신부(16)에 건네준다.
이와 같이, 검출용 패킷 송신부(16)는 통신 처리 장치(2)의 종류가 포트 재 사용인 경우에는, 검출용 패킷을 송신하는 정보 처리 장치(10)의 포트(이 포트를 「 제1 포트」라고 부르기로 함)의 위치와, 그 검출용 패킷이 통과한 통신 처리 장치(2)의 포트(이 포트를 「 제2 포트」라고 부르기로 한다)의 위치가 일치할 때까지, 그때까지 검출용 패킷의 송신에서 이용한 정보 처리 장치(10)의 포트와는 다른 포트로부터 검출용 패킷을 송신한다. 그리고, 버블 패킷 송신부(12)는 제1 포트의 위치와 제2 포트의 위치가 일치한 경우에서 제1 포트로부터 버블 패킷을 송신하게 된다.
즉, 이 구체예에서 설명한 것처럼, 제1 포트의 위치와 제2 포트의 위치가 동일해질 때까지, 검출용 패킷의 송신과 버블 패킷의 송신을 반복해도 좋고, 혹은, 제1 포트의 위치와 제2 포트의 위치가 동일해질 때까지, 검출용 패킷의 송신만을 반복해, 양자가 동일해진 후에, 양자가 동일한 검출용 패킷을 송신한 정보 처리 장치(10)의 포트로부터 버블 패킷을 송신하도록 해도 좋다.
여기서, 통신 처리 장치(2)의 종류가 포트 재사용인 경우에, 왜 검출용 패킷의 송신된 정보 처리 장치(10)의 포트의 포트 번호와 그 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 포트 번호가 다른 경우가 있는지에 대해서 간단하게 설명한다. 도 19에서 도시하는 바와 같이, 통신 처리 장치(2)의 로컬측에 정보 처리 장치(10) 이외의 정보 처리 장치(3)가 존재하는 경우에, 정보 처리 장치(10)가 검출용 패킷을 포트 10100으로부터 송신하는 것보다도 이전에, 정보 처리 장치(3)가 포트 10100으로부터 어떠한 패킷을 송신하고 있었다고 한다. 그 경우에는, 그 정보 처리 장치(3)로부터 송신된 패킷에 대해서, 통신 처리 장치(2)에 있어서 포트 10100가 할당되게 된다. 따라서, 정보 처리 장치(10)가 검출용 패킷을 송신했을 때에는, 이미 통신 처리 장치(2)에서의 포트 10100은 사용되고 있기 때문에, 통신 처리 장치(2)는, 다른 포트, 예를 들면, 포트 10101을 정보 처리 장치(10)로부터 송신된 검출용 패킷에 할당하게 된다. 따라서, 이러한 경우에는, 통신 처리 장치(2)의 종류가 포트 재사용이었다고 해도, 검출용 패킷의 송신된 정보 처리 장치(10)의 포트의 포트 번호와 그 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 포트 번호가 다르게 된다.
한편, 도 19에서 설명한 통신 처리 장치(2)의 송신 포트 할당 룰은 일례이다. 예를 들면, 정보 처리 장치(3)의 포트 10100으로부터 제1 서버(40)의 포트 14000에 어떠한 패킷이 송신되었을 경우에는, 정보 처리 장치(10)의 포트 10100으로부터 제1 서버(40)의 포트 14000에 송신된 검출용 패킷에 대해서, 통신 처리 장치(2)의 포트 10100이외의 포트가 할당되지만, 정보 처리 장치(3)의 포트 10100으로부터 제1 서버(40)의 포트 14000 이외의 포트, 혹은, 제1 서버(40) 이외의 장치에 어떠한 패킷이 송신되었을 경우에는, 정보 처리 장치(10)의 포트 10100으로부터 송신된 검출용 패킷에 대해서, 통신 처리 장치(2)의 포트 10100가 할당된다는 송신 포트 할당 룰도 있을 수 있다. 이 경우에도, 정보 처리 장치(3)가 제1 서버(40)의 포트 14000에 정보 처리 장치(3)의 포트 10100으로부터 패킷을 송신하고 있는 경우에는, 정보 처리 장치(10)의 포트 10100으로부터 송신된 검출용 패킷에, 포트 10100 이외의 포트가 통신 처리 장치(2)에 있어서 할당되게 된다.
또한, 이 구체예에서는 통신 처리 장치(2)의 종류가 콘계인 경우에는, 검출 용 패킷 송신부(16)가 버블 패킷이 송신되기 전에, 버블 패킷이 송신되는 정보 처리 장치(10)의 포트와 동일한 포트를 이용하여 검출용 패킷을 송신한다고 설명했지만, 검출용 패킷 송신부(16)는 버블 패킷이 송신된 후에, 검출용 패킷을 송신해도 좋다. 즉, 검출용 패킷 송신부(16)는 통신 처리 장치(2)의 종류가 콘계인 경우에, 버블 패킷의 송신 전, 혹은 후에, 정보 처리 장치(10)에서의 버블 패킷이 송신되는 포트와 동일한 포트를 이용하여 검출용 패킷을 송신해도 좋다.
또, 이 구체예에서는, 통신 처리 장치(2)의 종류가 콘계인 경우에, 버블 패킷과 검출용 패킷이 연속해 송신된다고 설명했지만, 버블 패킷의 송신 시점과 검출용 패킷의 송신 시점은 시간적으로 떨어져 있어도 좋다. 다만, 통신 처리 장치(2)에 따라서는, 예를 들면, 정보 처리 장치(10)의 포트 10100으로부터 송신된 검출용 패킷이 포트 15005를 통과하고 나서, 소정의 시간이 경과하면, 그 후에 정보 처리 장치(10)의 포트 10100으로부터 송신된 패킷에 대해서, 포트 15005 이외의 포트가 할당되는 경우가 있다. 그 소정의 시간을 포트 유지 시간이라고 부른다. 따라서, 버블 패킷의 송신 시점과 검출용 패킷의 송신 시점이 시간적으로 떨어져 있는 경우라도, 그 포트 유지 시간 이내인 것이 바람직하다.
또, 이 구체예에서는 검출용 패킷 송신부(16)가 통신 처리 장치(2)의 종류가 심메트릭계인 경우에, 버블 패킷의 송신 전, 및 송신의 후에 검출용 패킷을 연속하여 송신하는 경우에 대해 설명했지만, 검출용 패킷의 송신과 버블 패킷의 송신은 연속하지 않아도 좋다. 예를 들면, 도 20에서 나타내는 바와 같이, 정보 처리 장치(10)는, 검출용 패킷, 버블 패킷, 그 외의 패킷, 검출용 패킷을, 그 순서로 연속 해 송신하고, 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 포트 번호와 통신 처리 장치(2)의 포트 폭을 알 수 있으면, 버블 패킷 송신 포트의 위치를 검출할 수 있다. 여기서, 「그 외의 패킷」이란, 검출 패킷도 아니고, 버블 패킷도 아닌 패킷이며, 정보 처리 장치(10) 혹은 정보 처리 장치(10)에 제휴한 도시하지 않는 정보 처리 장치가 어떠한 목적으로 송신하는 패킷이다. 예를 들면, 도 20에 있어서, 포트 P301의 포트 번호가 「15005」이며, 포트 P302의 포트 번호가 「15008」이며, 통신 처리 장치(2)의 포트 폭이 「1」이면, 버블 패킷 송신 포트 P303의 포트 번호는, 「15006」이라고 검출할 수 있다.
또, 이 구체예에서는, 검출용 패킷 송신부(16)가 통신 처리 장치(2)의 종류가 콘계인 경우에는, 검출용 패킷이 통과하는 통신 처리 장치(2)의 포트가 버블 패킷 송신 포트와 동일해지고, 통신 처리 장치(2)의 종류가 심메트릭계인 경우에는 검출용 패킷이 통과하는 통신 처리 장치(2)의 포트와 버블 패킷 송신 포트가 상이하도록 검출용 패킷을 송신하는 경우에 대해 설명했지만, 통신 처리 장치(2)의 종류가 콘계인 경우에도, 검출용 패킷 송신부(16)는 2이상의 검출용 패킷을 송신하고, 그 2이상의 검출용 패킷 중 적어도 1개의 검출용 패킷에 관한 검출용 패킷 송신 포트가 버블 패킷 송신 포트와 달라도 좋다. 즉, 검출용 패킷 송신부(16)는 통신 처리 장치(2)의 종류가 콘계인 경우에는, 적어도 1개의 검출용 패킷이 통과하는 통신 처리 장치(2)의 포트가 버블 패킷 송신 포트와 동일해지고, 통신 처리 장치(2)의 종류가 심메트릭계인 경우에는, 검출용 패킷이 통과하는 통신 처리 장치(2)의 포트와 버블 패킷 송신 포트가 상이하도록 검출용 패킷을 송신해도 좋다.
또, 이 구체예에서는, 통신 처리 장치(2)의 종류가 심메트릭계이면, 정보 처리 장치(10)에 있어서 새롭게 할당된 포트를 이용하여 검출용 패킷을 송신하는 경우에 대해 설명했지만, 통신 처리 장치(2)의 종류가 심메트릭계이면, 2개의 검출용 패킷의 송신처의 어드레스 및 포트 번호를 각각 다른 것으로 함으로써 그 2개의 검출용 패킷의 송신에 있어서 할당되는 통신 처리 장치(2)의 포트가 다른 것이 되기 때문에, 2개의 검출용 패킷을 정보 처리 장치(10)의 동일한 포트로부터 송신하고, 그 2개의 검출용 패킷의 송신처의 어드레스 및 포트 번호를 각각 다른 것으로 해도 좋다. 그 경우에는, 제1 서버(40) 이외에도, 검출용 패킷을 수신하는 서버 등이 존재하는 것으로 한다.
[구체예 2]
이 구체예에서는 통신 처리 장치(2)의 종류에 상관없이, 소정의 방법으로 검출용 패킷을 송신함으로써 결과적으로, 통신 처리 장치(2)의 종류에 따른 검출용 패킷의 송신이 되는 경우에 대해 설명한다. 즉, 검출용 패킷 송신부(16)는 버블 패킷의 송신의 전후에, 각각 다른 포트로부터 검출용 패킷 송신하는 것이다. 다만, 검출용 패킷 송신부(16)는 버블 패킷의 송신 전에 송신하는 검출용 패킷을, 버블 패킷 송신부(12)가 버블 패킷을 송신하는 포트와 동일한 포트로부터 송신하는 것으로 한다. 우선, 도 12의 흐름도의 단계 S405에서의 처리에 대해서, 도 21의 흐름도를 이용하여 설명한다.
(단계 S701) 검출용 패킷 송신부(16)는 정보 처리 장치(10)에 있어서 새롭게 할당된 포트로부터 검출용 패킷을 제1 서버(40)에 송신한다. 그 검출용 패킷은, 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신된다.
(단계 S702) 제1 서버(40)의 검출용 포트 정보 송신부(44)는 검출용 패킷 수신부(43)에서 수신된 검출용 패킷의 헤더로부터, 검출용 패킷의 송신원의 어드레스, 및 포트 번호를 취득한다. 그리고, 검출용 포트 정보 송신부(44)는 그 어드레스와 포트 번호를 포함한 검출용 포트 정보를 구성하고, 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다. 그 검출용 포트 정보는, 통신 처리 장치(2)를 통하여 정보 처리 장치(10)에 송신되어 검출용 포트 정보 접수부(20)에서 수신된다.
(단계 S703) 버블 패킷 송신부(12)는, 단계 S701에 있어서 검출용 패킷의 송신된 정보 처리 장치(10)의 포트로부터, 송신처 정보 접수부(11)가 수신한 송신처 정보가 나타내는 어드레스, 포트 번호에 버블 패킷을 송신한다.
(단계 S704) 검출용 패킷 송신부(16)는 정보 처리 장치(10)에 있어서 새롭게 할당된 포트로부터, 검출용 패킷을 제1 서버(40)에 송신한다. 즉, 단계 S701에서의 검출용 패킷의 송신에서 이용한 정보 처리 장치(10)의 포트와는 다른 포트로부터 검출용 패킷을 송신한다. 그 검출용 패킷은, 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신된다.
(단계 S705) 제1 서버(40)의 검출용 포트 정보 송신부(44)는, 단계 S702와 동일하게, 검출용 포트 정보를 구성하여 송신한다. 그 검출용 포트 정보는, 통신 처리 장치(2)를 통하여 정보 처리 장치(10)에 송신되고 검출용 포트 정보 접수부(20)에서 수신된다.
다음에, 이 구체예에서의 정보 처리 장치간에 P2P 통신을 확립하는 처리에 대해 도 22를 참조하면서 설명한다. 한편, 통신 처리 장치(2)의 종류를 판단하는 처리에 대해서는, 구체예 1과 동일하고 그 설명을 생략한다. 또, 이 구체예에서는, 단계 S301~S307까지의 포트 폭을 검출하는 처리와 단계 S405의 버블 패킷, 검출용 패킷을 송신하는 처리를 일체로서 행하는 경우에 대해 설명한다. 따라서, 우선, 정보 처리 장치(10)와 정보 처리 장치(30) 사이에서 릴레이 서버(60)를 통한 통신이 행해지고, 정보 처리 장치(30)로부터 정보 처리 장치(10)에 송신처 정보가 송신된다(단계 S401~S404). 이 처리는, 구체예 1과 동일하고 그 설명을 생략한다. 송신처 정보의 내용도, 구체예 1과 동일하다고 한다. 또, 통신 처리 장치(2)의 종류가 콘계, 혹은 심메트릭계인 경우에 대해 우선 설명하고, 마지막으로, 통신 처리 장치(2)의 종류가 포트 재사용인 경우에 대해 설명하는 것으로 한다.
우선, 포트 폭 검출용 패킷 송신부(17)는 정보 처리 장치(10)의 포트 10100으로부터, 제1 서버(40)의 포트 14000에 포트 폭 검출용 패킷을 송신한다(단계 S301). 그 포트 폭 검출용 패킷은 통신 처리 장치(2)의 포트 15002를 통과해 제1 서버(40)의 포트 폭 검출용 패킷 수신부(45)에서 수신되었다고 한다. 포트 폭 검출용 포트 정보 송신부(46)는, 포트 번호 「15002」를 나타내는 포트 폭 검출용 포트 정보를 포함한 패킷을 통신 처리 장치(2)의 포트 15001에 송신한다(단계 S302).그 포트 폭 검출용 포트 정보를 포함한 패킷은, 통신 처리 장치(2)에서 어드레스 변환되고, 정보 처리 장치(10)의 포트 폭 검출용 포트 정보 접수부(18)에서 수신된다. 동일하게 하여, 정보 처리 장치(10)의 포트 10002로부터도 포트 폭 검출용 패 킷이 송신되고, 제1 서버(40)로부터 포트 번호 「15003」을 나타내는 포트 폭 검출용 포트 정보를 포함하는 패킷이 송신되며, 포트 폭 검출용 포트 정보 접수부(18)에서 수신되었다고 한다(단계 S303, S304).
그 후, 검출용 패킷 송신부(16)는 정보 처리 장치(10)의 포트 10102로부터, 검출용 패킷을 제1 서버(40)의 포트 14000에 송신한다(단계 S701). 한편, 이 검출용 패킷은, 포트 폭 검출용 패킷을 겸하고 있다. 그 검출용 패킷에 대해서, 통신 처리 장치(2)에 있어서 포트 15004가 할당되었다고 한다. 그 검출용 패킷은, 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신되고, 검출용 포트 정보 송신부(44)는 그 검출용 패킷의 헤더로부터 송신원의 어드레스 「202.224.135.10」와, 포트 번호 「15004」를 취득하여, 그들을 포함한 검출용 포트 정보를 구성하고, 그 검출용 포트 정보를 포함한 검출용 포트 정보 패킷을 구성하고, 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다(단계 S702). 그 검출용 포트 정보 패킷은 통신 처리 장치(2)의 포트 15004를 통하여, 정보 처리 장치(10)에 송신되고 정보 처리 장치(10)의 검출용 포트 정보 접수부(20)에서 수신된다. 검출용 포트 정보 접수부(20)는, 그 수신한 검출용 포트 정보 패킷에 포함되는 포트 번호 「15004」를 포트 폭 검출용 포트 정보 접수부(18)에 건네준다. 그 결과, 포트 폭 검출부(19)는 포트 폭 검출용 패킷이 통과한 통신 처리 장치(2)의 포트 번호 「15002」, 「15003」, 「15004」를 알 수 있고, 통신 처리 장치(2)의 포트 폭 「1」을 검출한다(단계 S307). 또한, 검출용 포트 정보가 검출용 포트 정보 접수부(20)로부터 버블 패킷 송신 포트 검출부(21)에 건네지고, 검출용 포트 정 보가 버블 패킷 송신 포트 검출부(21)에서 유지된다.
버블 패킷 송신부(12)는 검출용 패킷이 송신된 직후에, 검출용 패킷의 송신된 정보 처리 장치(10)의 포트 10102로부터, 버블 패킷을 송신한다(단계 S703). 이 버블 패킷의 송신처는, 송신처 정보 접수부(11)가 수신한 송신처 정보 패킷에 포함되는 정보 처리 장치(30)의 어드레스, 송신 포트 20000이다. 한편, 그 버블 패킷에 대해서, 통신 처리 장치(2)의 포트 P401가 할당된 것으로 한다. 이 포트 P401는 통신 처리 장치(2)의 종류가 콘계인 경우에는, 포트 15004이며, 통신 처리 장치(2)의 종류가 심메트릭계인 경우에는, 포트 15005이다.
그 후, 검출용 패킷 송신부(16)는 정보 처리 장치(10)의 포트 10103으로부터, 검출용 패킷을 제1 서버(40)의 포트 14000에 송신한다(단계 S704). 그 검출용 패킷에 대해서, 통신 처리 장치(2)에 있어서 포트 P402가 할당되었다고 한다. 이 포트 P402는, 통신 처리 장치(2)의 종류가 콘계인 경우에는, 포트 15005이며, 통신 처리 장치(2)의 종류가 심메트릭계인 경우에는, 포트 15006이다. 그 검출용 패킷은, 제1 서버(40)의 검출용 패킷 수신부(43)에서 수신되고 검출용 포트 정보 송신부(44)는 그 검출용 패킷의 헤더로부터, 송신원의 어드레스 「202.224.135.10」와 포트 P402의 포트 번호를 취득하며, 그들을 포함한 검출용 포트 정보를 구성하고, 그 검출용 포트 정보를 포함한 검출용 포트 정보 패킷을 구성하고, 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다(단계 S705). 그 검출용 포트 정보 패킷은 통신 처리 장치(2)의 포트 P402를 통하여, 정보 처리 장치(10)에 송신되고 정보 처리 장치(10)의 검출용 포트 정보 접수부(20) 에서 수신된다. 그리고, 검출용 포트 정보가 검출용 포트 정보 접수부(20)로부터 버블 패킷 송신 포트 검출부(21)에 건네져 검출용 포트 정보가 버블 패킷 송신 포트 검출부(21)에서 유지된다.
버블 패킷 송신 포트 검출부(21)는, 종류 판단부(15)에 의해서 판단된 통신 처리 장치(2)의 종류가 콘계인 경우에는, 버블 패킷 송신 포트의 위치를 검출 가능하다고 판단하고(단계 S406), 포트 15004를 버블 패킷 송신 포트로서 검출한다(단계 S407).
한편, 종류 판단부(15)에 의해서 판단된 통신 처리 장치(2)의 종류가 심메트릭계인 경우에는, 버블 패킷 송신 포트 검출부(21)는 포트 P402의 포트 번호와 포트 번호 15004와의 차이가 포트 폭 「1」의 2배인지 어떤지를 판단하고, 2배이면 버블 패킷 송신 포트를 검출 가능하다라고 판단하고, 2배가 아니면 버블 패킷 송신 포트를 검출할 수 없다고 판단하여, 버블 패킷 송신부(12) 및 검출용 패킷 송신부(16)에 버블 패킷, 및 검출용 패킷을 각각 재차 송신하도록 지시하고, 버블 패킷, 및 검출용 패킷의 송신이 반복된다. 이 경우에는, 포트 P402의 포트 번호가 「15006」이라고 하면, 버블 패킷 송신 포트 검출부(21)는 버블 패킷 송신 포트를 검출 가능하다고 판단하고, 포트 15005를 버블 패킷 송신 포트로서 검출한다(단계 S407).
통신 처리 장치(2)의 종류가 포트 재사용인 경우에는, 도 23에서 나타내는 바와 같이, 패킷이 송신되는 정보 처리 장치(10)의 포트 번호와 그 패킷이 통과하는 통신 처리 장치(2)의 포트 번호가 동일해진다. 그 결과, 통신 처리 장치(2)의 종류가 콘계인 경우와 동일하게 하여, 포트 10102가 버블 패킷 송신 포트로서 검출된다(단계 S407).
그 후, 정보 처리 장치(10)와 정보 처리 장치(30) 사이에 P2P 통신이 개시될 때까지의 처리는 구체예 1의 설명과 동일하고, 그 설명을 생략한다.
한편, 이 구체예에서는 검출용 패킷 송신부(16)가 버블 패킷의 송신 전에 송신하는 검출용 패킷을, 버블 패킷 송신부(12)가 버블 패킷을 송신하는 포트와 동일한 포트로부터 송신하는 경우에 대해 설명했지만, 검출용 패킷 송신부(16)는 버블 패킷의 송신의 후에 송신하는 검출용 패킷을, 버블 패킷 송신부(12)가 버블 패킷을 송신하는 포트와 동일한 포트로부터 송신해도 좋다. 이 경우에는, 버블 패킷의 송신 전에 송신하는 검출용 패킷은, 버블 패킷 송신부(12)가 버블 패킷을 송신하는 포트와 상이한 포트로부터 송신되는 것으로 한다. 이와 같이, 검출용 패킷 송신부(16)는 버블 패킷의 송신 전, 및 송신의 후에, 각각 다른 포트로부터 검출용 패킷 송신하고, 한 쪽의 검출용 패킷을 버블 패킷 송신부(12)가 버블 패킷을 송신하는 포트와 동일한 포트로부터 송신하는 것으로 하는 것이면 좋다.
또, 이 구체예에서는 정보 처리 장치(30)의 송신 포트와 수신 포트가 다른 경우에 대해 설명했지만, 송신 포트와 수신 포트는 동일한 포트라도 좋다.
또, 이 구체예에서는 통신 처리 장치(2)의 종류가 심메트릭계인 경우에, 버블 패킷 송신 포트를 2개의 검출용 패킷 송신 포트로 끼우는 것으로, 엄밀하게 검출하는 경우에 대해 설명했지만, 이것은 일례이며, 예를 들면, 통신 처리 장치(2)의 종류가 심메트릭계인 경우라도, 검출용 패킷을 버블 패킷의 전후의 어느 한 쪽 에 송신하고, 그 검출용 패킷이 통과한 검출용 패킷 송신 포트로부터 포트 폭만큼 떨어진 포트의 위치를, 버블 패킷 송신 포트의 위치로서 검출해도 좋다. 예를 들면, 도 17에서 나타나는 도면에 있어서, 2번째의 검출용 패킷을 송신하지 않고, 1회째의 검출용 패킷이 통과한 포트 15005로부터 포트 폭 「1」만큼 떨어진 포트 15006을 버블 패킷 송신 포트로서 검출해도 좋다.
이상과 같이, 본 실시형태 1에 의한 정보 처리 시스템에 의하면, 통신 처리 장치(2)의 종류에 따라 검출용 패킷 송신 포트와 버블 패킷 송신 포트가 동일해지거나, 또는 상이하도록 검출용 패킷을 송신함으로써, 통신 처리 장치(2)의 종류에 상관없이 버블 패킷 송신 포트의 위치를 정확하게 검출할 수 있다. 그 결과, 그 검출된 버블 패킷 송신 포트의 위치를 나타내는 정보를 이용하여, 정보 처리 장치 사이에서의 P2P 통신을 확실히 확립할 수 있다.
한편, 본 실시형태 1에서는, 통신 처리 장치(2)의 종류에 상관없이, 도 12의 흐름도로 나타내는 바와 같이 통신 요구 패킷이나 버블 패킷 등을 송신하는 경우에 대해 설명했지만, 통신 처리 장치(2)의 종류에 따라 통신 요구 패킷이나 버블 패킷 등의 송신 순서를 변경해도 좋다. 예를 들면, 통신 처리 장치(2)의 종류가 심메트릭계인 경우에는, 도 12에서 나타내는 바와 같이 패킷을 송신하고, 통신 처리 장치(2)의 종류가 콘계인 경우에는, 도 24의 흐름도로 나타내는 바와 같이 패킷을 송신해도 좋다. 도 24의 흐름도에 대해 설명한다.
(단계 S801) 정보 처리 장치(10)의 검출용 패킷 송신부(16)는 검출용 패킷을 제1 서버(40)에 송신한다. 그리고, 정보 처리 장치(10)의 검출용 포트 정보 접수 부(20)는, 제1 서버(40)로부터 송신된 검출용 포트 정보를 수신한다.
(단계 S802) 버블 패킷 송신 포트 검출부(21)는 검출용 포트 정보 접수부(20)가 수신한 검출용 포트 정보에 의거하여, 그 검출용 포트 정보가 나타내는 검출용 패킷 송신 포트를 버블 패킷 송신 포트로서 검출한다.
(단계 S803) 출력부(22)는, 단계 S401과 동일하게 통신 요구 패킷을 릴레이 서버(60)에 송신한다. 다만, 이 통신 요구 패킷에는, 단계 S802에서 검출된 버블 패킷 송신 포트의 위치를 나타내는 버블 패킷 송신 포트 정보가 포함되어 있다.
(단계 S804) 릴레이 서버(60)는, 단계 S402와 동일하게 통신 요구 패킷을 전송한다.
(단계 S805) 정보 처리 장치(30)의 통신부(34)는 단계 S403과 동일하게 송신처 정보 패킷을 구성하고 릴레이 서버(60)에 송신한다.
(단계 S806) 릴레이 서버(60)는 단계 S404와 동일하게 송신처 정보 패킷을, 통신 처리 장치(2)를 통하여 정보 처리 장치(10)에 전송한다.
(단계 S807) 버블 패킷 송신부(12)는 단계 S801에서 검출용 패킷이 송신된 정보 처리 장치(10)의 포트와 동일한 포트로부터 버블 패킷을 송신한다. 그 버블 패킷의 송신처는, 정보 처리 장치(30)로부터 송신된 송신처 정보가 나타내는 어드레스, 송신 포트이다.
(단계 S808) 통신부(23)는 P2P 통신을 확립할 수 있는 환경이 구비된 취지를 포함한 응답 패킷을 구성하고, 그 응답 패킷을 릴레이 서버(60)에 송신한다.
(단계 S809) 릴레이 서버(60)는 그 응답 패킷을 정보 처리 장치(30)에 전송 한다.
(단계 S810) 답신 패킷 송신부(33)는, 정보 처리 장치(10)로부터 송신된 버블 패킷 송신 포트 정보가 나타내는 어드레스, 버블 패킷 송신 포트에, 답신 패킷을 송신한다. 그 후, 정보 처리 장치(10)와 정보 처리 장치(30) 사이에 있어서, P2P 통신이 개시되는 것은, 본 실시형태 1에서 설명한 대로이다.
이와 같이, 버블 패킷이나 검출 패킷의 송신의 순서나 방법에는 어느 정도의 임의성이 있다. 따라서, 본 실시형태 1, 및 상기 각 구체예에서 설명한 이외의 방법이어도, 통신 처리 장치(2)의 종류에 따라 적절히 버블 패킷 송신 포트의 위치를 검출할 수 있다면, 그 방법을 이용해도 좋다.
(실시형태 2)
본 발명의 실시형태 2에 의한 정보 처리 시스템 등에 대해서, 도면을 참조하면서 설명한다. 본 실시형태 2에 의한 정보 처리 시스템 등은 정보 처리 장치가 아니고, 서버에 있어서 통신 처리 장치의 종류의 판단이나, 포트 폭의 검출, 버블 패킷 송신 포트의 검출을 행하는 것이다.
본 실시형태 2에 의한 정보 처리 시스템의 구성은, 실시형태 1의 도 1에 있어서, 정보 처리 장치(10), 제1 서버(40), 제2 서버(50) 대신에, 각각 정보 처리 장치(70), 제1 서버(80), 제2 서버(90)를 구비하는 것 외에, 실시형태 1의 도 1과 동일하다고 하고, 정보 처리 장치(70), 제1 서버(80), 제2 서버(90) 이외의 설명을 생략한다.
도 25는, 본 실시형태 2에 의한 정보 처리 장치(70)의 구성을 도시하는 블록 도이다. 도 25에 있어서, 본 실시형태 2에 의한 정보 처리 장치(70)는 송신처 정보 접수부(11)와 버블 패킷 송신부(12)와 종류 판단 패킷 송신부(13)와 검출용 패킷 송신부(16)와 포트 폭 검출용 패킷 송신부(17)와 통신부(23)와 종류 정보 접수부(71)와 재송신 지시 접수부(72)와 버블 패킷 송신 포트 접수부(73)와 출력부(74)를 구비한다. 한편, 종류 정보 접수부(71), 재송신 지시 접수부(72), 버블 패킷 송신 포트 접수부(73), 출력부(74) 이외의 구성 및 동작은, 통신 처리 장치(2)의 종류의 판단, 통신 처리 장치(2)의 포트 폭의 검출, 버블 패킷 송신 포트의 검출을 제1 서버(80)에서 행하는 것 이외에, 실시형태 1과 동일하고, 그 설명을 생략한다.
종류 정보 접수부(71)는 통신 처리 장치(2)의 종류를 나타내는 정보인 종류 정보를 접수한다. 이 종류 정보는, 예를 들면, 통신 처리 장치(2)의 종류가 콘계, 심메트릭계, 포트 재사용 중 어느 하나인가를 나타내는 정보이다. 한편, 본 실시형태 2에서는, 검출용 패킷 송신부(16)는 그 종류 정보가 나타내는 통신 처리 장치(2)의 종류에 따라 검출용 패킷의 송신을 행하는 것으로 한다. 즉, 검출용 패킷 송신부(16)는 종류 정보가 나타내는 통신 처리 장치(2)의 종류에 따라, 검출용 패킷의 송신 방법을 변경하는 것으로 한다. 종류 정보 접수부(71)는, 예를 들면, 입력 디바이스(예를 들면, 키보드나 마우스, 터치 패널 등)로부터 입력된 종류 정보를 접수해도 좋고, 유선 혹은 무선의 통신 회선을 통하여 송신된 종류 정보를 수신해도 좋고, 소정의 기록 매체(예를 들면, 광디스크나 자기 디스크, 반도체 메모리 등)로부터 독출된 종류 정보를 접수해도 좋다. 본 실시형태 2에서는, 종류 정보 접수부(71)가 접수하는 종류 정보는, 종류 판단 패킷 송신부(13)가 송신한 종류 판 단 패킷에 의거하여 판단된 결과인 경우에 대해 설명하지만, 거기에 한정되는 것이 아니고, 종류 정보 접수부(71)가 접수하는 종류 정보는, 예를 들면, 통신 처리 장치(2)의 매뉴얼 등에 의거하여 사용자에 의해서 판단된 결과라도 좋다. 또, 본 실시형태 2에서는, 종류 정보 접수부(71)는 통신 회선을 통하여 제1 서버(80)로부터 송신된 종류 정보를 수신하는 것으로 한다. 또한, 종류 정보 접수부(71)는 접수를 행하기 위한 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또, 종류 정보 접수부(71)는 하드웨어에 의해서 실현되어도 좋고, 혹은 소정의 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
재송신 지시 접수부(72)는 재송신 지시를 접수한다. 여기서, 재송신 지시란, 버블 패킷, 및 검출용 패킷을 재차 송신하는 취지의 지시이다. 버블 패킷 송신부(12), 검출용 패킷 송신부(16)는 재송신 지시 접수부(72)가 재송신 지시를 접수한 경우에 버블 패킷, 검출용 패킷을 각각 재차 송신한다. 버블 패킷 송신부(12), 및 검출용 패킷 송신부(16)는 버블 패킷, 및 검출용 패킷을 재차 송신하는 경우에, 실시형태 1에서의 설명과 동일하게, 통신 처리 장치(2)에 있어서 새롭게 할당되는 포트를 통하여 그들의 패킷이 송신되도록 한다. 예를 들면, 버블 패킷 송신부(12) 및 검출용 패킷 송신부(16)는 버블 패킷, 및 검출용 패킷을, 각각 정보 처리 장치(70)에 있어서 새롭게 할당된 포트로부터 송신함으로써, 그들의 패킷이 통신 처리 장치(2)에 있어서 새롭게 할당되는 포트를 통하여 송신되도록 한다. 재송신 지시 접수부(72)는, 예를 들면, 입력 디바이스(예를 들면, 키보드나 마우스, 터치 패널 등)로부터 입력된 재송신 지시를 접수해도 좋고, 유선 혹은 무선의 통신 회선을 통하여 송신된 재송신 지시를 수신해도 좋다. 본 실시형태 2에서는, 재송신 지시 접수부(72)는 통신 회선을 통하여 송신된 재송신 지시를 수신하는 것으로 한다. 한편, 재송신 지시 접수부(72)는, 접수를 행하기 위한 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또한, 재송신 지시 접수부(72)는 하드웨어에 의해서 실현되어도 좋고, 혹은 소정의 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
버블 패킷 송신 포트 접수부(73)는 버블 패킷 송신 포트 정보를 접수한다. 여기서, 버블 패킷 송신 포트 정보란, 검출용 패킷 송신부(16)가 송신한 검출용 패킷에 의거하여 검출된 버블 패킷 송신 포트의 위치를 나타내는 정보이다. 버블 패킷 송신 포트 접수부(73)는, 예를 들면, 입력 디바이스(예를 들면, 키보드나 마우스, 터치 패널 등)로부터 입력된 버블 패킷 송신 포트 정보를 접수해도 좋고, 유선 혹은 무선의 통신 회선을 통하여 송신된 버블 패킷 송신 포트 정보를 수신해도 좋고, 소정의 기록 매체(예를 들면, 광디스크나 자기 디스크, 반도체 메모리 등)로부터 독출된 버블 패킷 송신 포트 정보를 접수해도 좋다. 본 실시형태 2에서는, 버블 패킷 송신 포트 접수부(73)는 통신 회선을 통하여 송신된 버블 패킷 송신 포트 정보를 수신하는 것으로 한다. 한편, 버블 패킷 송신 포트 접수부(73)는 접수를 행하기 위한 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또한, 버블 패킷 송신 포트 접수부(73)는 하드웨어에 의해서 실현되어도 좋고, 혹은 소정의 디바이스를 구동하는 드라이버 등의 소프트 웨어에 의해서 실현되어도 좋다.
출력부(74)는, 버블 패킷 송신 포트 접수부(73)가 접수한 버블 패킷 송신 포트 정보를 출력한다. 여기서, 이 출력은, 예를 들면, 표시 디바이스(예를 들면, CRT나 액정 디스플레이 등)로의 표시라도 좋고, 소정의 기기로의 통신 회선을 통한 송신이라도 좋고, 프린터에 의한 인쇄라도 좋고, 스피커에 의한 음성 출력이라도 좋고, 기록 매체로의 축적이라도 좋다. 본 실시형태 2에서는, 출력부(74)는 통신 회선을 통하여 버블 패킷 송신 포트 정보를 송신하는 것으로 한다. 한편, 출력부(74)는, 출력을 행하는 디바이스(예를 들면, 표시 디바이스나 프린터 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또한, 출력부(74)는 하드웨어에 의해서 실현되어도 좋고, 혹은, 그들의 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
한편, 송신처 정보 접수부(11), 버블 패킷 송신부(12), 종류 판단 패킷 송신부(13), 검출용 패킷 송신부(16), 포트 폭 검출용 패킷 송신부(17), 통신부(23), 종류 정보 접수부(71), 재송신 지시 접수부(72), 버블 패킷 송신 포트 접수부(73), 출력부(74)의 임의의 2이상의 요소가 통신에 관한 디바이스를 가지는 경우에, 그들은 동일한 수단이어도 좋고, 혹은 별개의 수단이어도 좋다.
도 26은, 본 실시형태 2에 의한 제1 서버(80), 및 제2 서버(90)의 구성을 도시하는 블록도이다. 도 26에 있어서, 본 실시형태 2에 의한 제1 서버(80)는 종류 판단 패킷 수신부(41)와 검출용 패킷 수신부(43)와 포트 폭 검출용 패킷 수신부(45)와 종류 판단부(81)와 종류 정보 송신부(82)와 버블 패킷 송신 포트 검출 부(83)와 재송신 지시 송신부(84)와 버블 패킷 송신 포트 송신부(85)와 포트 폭 검출부(86)를 구비한다. 한편, 종류 판단 패킷 수신부(41), 검출용 패킷 수신부(43), 포트 폭 검출용 패킷 수신부(45)의 구성 및 동작은, 실시형태 1과 동일하고 그 설명을 생략한다.
종류 판단부(81)는 실시형태 1에 의한 종류 판단부(15)와 동일하게, 종류 판단 패킷 수신부(41)가 수신한 종류 판단 패킷에 의거하여 통신 처리 장치(2)의 종류를 판단한다. 여기서, 「종류 판단 패킷에 의거하여 통신 처리 장치(2)의 종류를 판단한다」란, 종류 판단 패킷이 통과한 통신 처리 장치(2)의 포트의 위치를 이용해 통신 처리 장치(2)의 종류를 판단한다는 의미이다.
종류 정보 송신부(82)는 종류 판단부(81)가 판단한 통신 처리 장치(2)의 종류를 나타내는 정보인 종류 정보를, 통신 처리 장치(2)를 통하여 정보 처리 장치(70)에 송신한다. 한편, 종류 정보 송신부(82)는, 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 종류 정보 송신부(82)와 통신 회선(1) 사이에 도시하지 않는 송신 디바이스가 존재하게 됨). 또한, 종류 정보 송신부(82)는 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
버블 패킷 송신 포트 검출부(83)는 실시형태 1에 의한 버블 패킷 송신 포트 검출부(21)와 동일하게, 검출용 패킷 수신부(43)가 수신한 검출용 패킷 수신부(43)가 수신한 검출용 패킷에 의거하여 버블 패킷 송신 포트의 위치를 검출한다. 여기 서, 「검출용 패킷에 의거하여 버블 패킷 송신 포트의 위치를 검출한다」란, 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 위치를 이용해 버블 패킷 송신 포트의 위치를 검출한다는 의미이다. 버블 패킷 송신 포트 검출부(83)는 종류 판단부(81)가 판단한 통신 처리 장치(2)의 종류에 따라 그 버블 패킷 송신 포트의 위치의 검출을 행한다.
재송신 지시 송신부(84)는, 버블 패킷 송신 포트 검출부(83)가 버블 패킷 송신 포트의 위치를 적절히 검출할 수 없는 경우에, 재송신 지시를 통신 처리 장치(2)를 통하여 정보 처리 장치(70)에 송신한다. 한편, 재송신 지시 송신부(84)는 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 재송신 지시 송신부(84)와 통신 회선(1) 사이에 도시하지 않는 송신 디바이스가 존재하게 됨). 또한, 재송신 지시 송신부(84)는 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
버블 패킷 송신 포트 송신부(85)는 버블 패킷 송신 포트 검출부(83)가 검출한 버블 패킷 송신 포트의 위치를 나타내는 버블 패킷 송신 포트 정보를, 통신 처리 장치(2)를 통하여 정보 처리 장치(70)에 송신한다. 한편, 버블 패킷 송신 포트 송신부(85)는, 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 버블 패킷 송신 포트 송신부(85)와 통신 회선(1) 사이에 도시하지 않는 송신 디바이스가 존재하게 됨). 또한, 버블 패킷 송신 포트 송신부(85)는, 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
포트 폭 검출부(86)는 실시형태 1에 의한 포트 폭 검출부(19)와 동일하게, 포트 폭 검출용 패킷 수신부(45)가 수신한 포트 폭 검출용 패킷에 의거하여 통신 처리 장치(2)의 포트 폭을 검출한다. 여기서, 「포트 폭 검출용 패킷에 의거하여 통신 처리 장치(2)의 포트 폭을 검출한다」란, 포트 폭 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 위치를 이용하여 통신 처리 장치(2)의 포트 폭을 검출한다는 의미이다.
한편, 종류 판단 패킷 수신부(41), 검출용 패킷 수신부(43), 포트 폭 검출용 패킷 수신부(45), 종류 정보 송신부(82), 재송신 지시 송신부(84), 버블 패킷 송신 포트 송신부(85)의 임의의 2이상의 요소가 통신에 관한 디바이스를 가지는 경우에, 그들은 동일한 수단이어도 좋고, 혹은 다른 수단이어도 좋다.
본 실시형태 2에 의한 제2 서버(90)는 종류 판단 패킷 수신부(51)를 구비한다. 한편, 종류 판단 패킷 수신부(51)의 구성 및 동작은, 실시형태 1과 동일하고, 그 설명을 생략한다. 종류 판단 패킷 수신부(51)는 수신한 종류 판단 패킷을, 그대로 제1 서버(80)의 종류 판단부(81)에 건네주는 것으로 한다. 제2 서버(90)는 종류 판단 패킷 수신부(51)가 수신한 종류 판단 패킷을 제1 서버(80)에 건네주기 위한 구성 요소, 예를 들면, 송신부 등을 구비해도 좋다. 송신부에 의해서 종류 판단 패킷을 제1 서버(80)에 송신하는 경우에는, 종류 판단 패킷이 통과한 통신 처리 장치(2)의 포트의 위치를 알 수 있도록, 예를 들면, 종류 판단 패킷 수신부(51) 가 수신한 종류 판단 패킷을 그대로 페이 로드에 포함한 패킷을 구성하고, 제1 서버(80)에 송신하는 것으로 한다.
다음에, 본 실시형태 2에 의한 정보 처리 시스템의 동작에 대해서, 흐름도를 이용해 설명한다. 도 27은, 본 실시형태 2에 의한 정보 처리 장치(70)의 동작을 도시하는 흐름도이다.
(단계 S901) 종류 판단 패킷 송신부(13)는 복수의 종류 판단 패킷을 통신 처리 장치(2)를 통하여 제1 서버(80)에 송신한다. 이 처리의 상세에 대해서는 후술한다.
(단계 S902) 종류 정보 접수부(71)는 종류 정보를 접수했는지 어떤지를 판단한다. 그리고, 종류 정보를 접수한 경우에는, 단계 S903에 진행되고, 그렇지 않은 경우에는 종류 정보를 접수할 때까지 단계 S902의 처리를 반복한다.
(단계 S903) 포트 폭 검출용 패킷 송신부(17)는 포트 폭 검출용 패킷을, 통신 처리 장치(2)를 통하여 제1 서버(80)에 송신한다. 이 처리의 상세에 대해서는 후술한다.
(단계 S904) 정보 처리 장치(70)는 버블 패킷 및 검출용 패킷의 송신 등을 행한다. 그 결과, 제1 서버(80)에 있어서 버블 패킷 송신 포트의 위치가 검출되고 제1 서버(80)로부터 버블 패킷 송신 포트 정보가 나타난다. 그리고, 정보 처리 장치(70)는 정보 처리 장치(30)와의 P2P 통신을 확립하는 처리를 행한다. 이 처리의 상세에 대해서는 후술한다.
(단계 S905) 정보 처리 장치(70)는, 정보 처리 장치(30)의 P2P 통신을 행한 다.
한편, 도 27의 흐름도에 있어서, 단계 S901, S902의 종류 판단 패킷을 송신하고, 종류 정보를 접수하는 처리와 단계 S903의 포트 폭 검출용 패킷을 송신하는 처리의 순서는 묻지 않는다.
도 28은, 도 27의 흐름도의 단계 S901에서의, 정보 처리 장치(70)가 종류 판단 패킷을 송신하고, 종류 정보를 수신하는 처리의 상세를 도시하는 흐름도이다. 한편, 단계 S201, S203, S205에 있어서, 정보 처리 장치(70)의 종류 판단 패킷 송신부(13)가 3개의 종류 판단 패킷을 송신하는 처리는, 실시형태 1의 도 8과 동일하고, 그 설명을 생략한다.
(단계 S1001) 제2 서버(90)의 종류 판단 패킷 수신부(51)는 수신한 종류 판단 패킷을 제1 서버(80)의 종류 판단부(81)에 건네준다.
(단계 S1002) 제1 서버(80)의 종류 판단부(81)는 종류 판단 패킷 수신부(41)가 수신한 2개의 종류 판단 패킷과 제2 서버(90)의 종류 판단 패킷 수신부(51)가 수신한 1개의 종류 판단 패킷이 통과한 통신 처리 장치(2)의 포트의 위치에 의거하여 통신 처리 장치(2)의 종류를 판단한다. 한편, 이 판단의 방법은, 실시형태 1에서의 도 9를 이용한 설명과 동일하고, 그 설명을 생략한다.
(단계 S1003) 종류 정보 송신부(82)는, 종류 판단부(81)가 판단한 통신 처리 장치(2)의 종류를 나타내는 종류 정보를, 정보 처리 장치(70)로부터 송신된 어느 하나의 종류 판단 패킷의 송신원에 송신한다. 그 종류 정보는, 정보 처리 장치(70)의 종류 정보 접수부(71)에서 수신된다.
한편, 통신 처리 장치(2)의 종류를 판단하는 방법은, 도 28에서 나타나는 방법에 한정되는 것이 아니고, 그 외의 방법에 따라 통신 처리 장치(2)의 종류의 판단을 행해도 좋다. 예를 들면, 송신 포트 할당 룰과 함께, 수신 필터 룰도 판단하는 처리를 행해도 좋다.
도 29는, 도 27의 흐름도의 단계 S903에서의, 정보 처리 장치(70)가 포트 폭 검출용 패킷을 송신하는 처리의 상세를 도시하는 흐름도이다. 한편, 단계 S301, S303, S305에 있어서, 정보 처리 장치(70)의 포트 폭 검출용 패킷 송신부(17)가 3개의 포트 폭 검출용 패킷을 송신하는 처리는, 실시형태 1의 도 10과 동일하고, 그 설명을 생략한다.
(단계 S1101) 포트 폭 검출부(86)는 포트 폭 검출용 패킷 수신부가 수신한 포트 폭 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 위치에 의거하여, 통신 처리 장치(2)의 포트 폭을 검출한다. 한편, 이 검출의 방법은, 실시형태 1에서의 도 11을 이용한 설명과 동일하고, 그 설명을 생략한다.
한편, 통신 처리 장치(2)의 포트 폭을 검출하는 방법은, 도 29에서 나타내는 방법으로 한정되는 것이 아니고, 그 외의 방법에 따라 통신 처리 장치(2)의 종류의 판단을 행해도 좋다. 예를 들면, 정보 처리 장치(70)는 4개 이상의 포트 폭 검출용 패킷을 송신해도 좋고, 혹은, 2개의 포트 폭 검출용 패킷을 송신하는 것만으로 있어도 좋다.
또한, 통신 처리 장치(2)의 종류가 포트 재사용, 혹은 콘계인 경우에는, 포트 폭을 검출하는 처리를 행하지 않아도 좋다.
도 30은, 도 27의 흐름도의 단계 S904에서의, 정보 처리 장치(70)가 버블 패킷을 송신하는 등의 처리의 상세를 도시하는 흐름도이다. 한편, 단계 S401~S404, S408~S414의 처리에 대해서는, 단계 S408에 있어서, 버블 패킷 송신 포트 검출부(21)가 검출한 버블 패킷 송신 포트의 포트 번호 등 대신에, 버블 패킷 송신 포트 접수부(73)가 수신한 버블 패킷 송신 포트 정보가 나타내는 버블 패킷 송신 포트의 포트 번호 등이 송신되는 이외, 실시형태 1과 동일하고, 그 설명을 생략한다.
(단계 S1201) 검출용 패킷 송신부(16), 버블 패킷 송신부(12)는, 각각, 검출용 패킷, 버블 패킷을 송신한다. 이 처리의 상세에 대해서는, 후술한다.
(단계 S1202) 버블 패킷 송신 포트 접수부(73)는 버블 패킷 송신 포트 정보를 접수했는지 여부를 판단한다. 그리고, 버블 패킷 송신 포트 정보를 접수한 경우에는, 단계 S408로 진행되고, 그렇지 않은 경우에는, 단계 S1203로 진행된다.
(단계 S1203) 재송신 지시 접수부(72)는 재송신 지시를 접수했는지 어떤지를 판단한다. 그리고, 재송신 지시를 접수한 경우에는, 단계 S1201로 돌아가고, 그렇지 않은 경우에는 단계 S1202로 돌아간다.
다음에, 본 실시형태 2에 의한 정보 처리 시스템의 동작에 대해서, 구체예를 이용해 설명한다. 이 구체예에서는, 통신 처리 장치(2)의 종류에 따라 검출용 패킷의 송신 방법을 변경하는 경우에 대해 설명한다.
우선, 통신 처리 장치(2)의 종류가 콘계, 혹은 포트 재사용인 경우의 도 30의 흐름도의 단계 S1201에서의 처리에 대해서, 도 31의 흐름도를 이용해 설명한다. 한편, 단계 S501, S503의 처리는, 실시형태 1과 동일하고, 그 설명을 생략한다. 다만, 통신 처리 장치(2)의 종류가 포트 재사용인 경우에는, 단계 S501에 있어서 검출용 패킷을 송신하는 경우에, 그 검출용 패킷을 송신하는 정보 처리 장치(70)의 포트 번호를 페이 로드에 포함한 검출용 패킷을 송신하는 것으로 한다. 한편, 통신 처리 장치(2)의 종류가 콘계인 경우에는, 송신하는 포트 번호를 페이 로드에 포함한 검출용 패킷을 송신해도 좋고, 그렇지 않아도 좋다.
(단계 S1301) 버블 패킷 송신 포트 검출부(83)는 버블 패킷 송신 포트의 위치를 검출할 수 있을지 어떤지를 판단한다. 구체적으로는, 통신 처리 장치(2)의 종류가 콘계인 경우에는, 버블 패킷 송신 포트 검출부(83)는 버블 패킷 송신 포트의 위치를 검출할 수 있다고 판단한다. 한편, 통신 처리 장치(2)의 종류가 포트 재사용인 경우에는, 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 포트 번호와 그 검출용 패킷의 송신된 정보 처리 장치(70)의 포트 번호가 일치할 때에, 버블 패킷 송신 포트의 위치를 검출할 수 있다고 판단하고, 일치하지 않을 때에, 버블 패킷 송신 포트의 위치를 검출할 수 없다고 판단한다. 그 판단에는, 검출용 패킷의 페이 로드에 포함되는 정보 처리 장치(70)의 포트 번호를 이용한다. 버블 패킷 송신 포트의 위치를 검출할 수 있는 경우에는, 단계 S1302에 진행되고, 그렇지 않은 경우에는, 단계 S1304에 진행된다.
(단계 S1302) 버블 패킷 송신 포트 검출부(83)는 버블 패킷 송신 포트의 위치를 검출한다. 구체적으로는, 검출용 패킷 수신부(43)가 수신한 검출용 패킷이 통과한 통신 처리 장치(2)의 포트 번호를, 버블 패킷 송신 포트의 위치로서 검출한다.
(단계 S1303) 버블 패킷 송신 포트 송신부(85)는, 버블 패킷 송신 포트 검출부(83)가 검출한 버블 패킷 송신 포트의 위치를 나타내는 정보, 즉, 통신 처리 장치(2)에서의 버블 패킷 송신 포트의 포트 번호, 및 통신 처리 장치(2)의 글로벌측의 어드레스를 나타내는 버블 패킷 송신 포트 정보를 구성하고, 그 버블 패킷 송신 포트 정보를 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다.
(단계 S1304) 재송신 지시 송신부(84)는, 재송신 지시를 검출용 패킷 수신부(43)가 수신한 검출용 패킷의 송신원의 어드레스, 포트 번호에 송신한다. 이 재송신 지시는 재송신 지시 송신부(84)가 구성한 것이어도 좋고, 소정의 기록 매체로부터 독출한 것이어도 좋고, 혹은, 다른 구성 요소로부터 수취한 것이어도 좋다.
다음에, 통신 처리 장치(2)의 종류가 심메트릭계인 경우의 도 30의 흐름도의 단계 S1201에서의 처리에 대해서, 도 32의 흐름도를 이용해 설명한다. 한편, 단계 S601, S603, S604의 처리는, 실시형태 1과 동일하고, 그 설명을 생략한다.
(단계 S1401) 버블 패킷 송신 포트 검출부(83)는 검출용 패킷 수신부(43)가 수신한 검출용 패킷에 의거하여 버블 패킷 송신 포트의 위치를 검출할 수 있을지 어떤지를 판단한다. 이 판단은, 2개의 검출용 패킷이 통과한 통신 처리 장치(2)의 2개의 검출용 패킷 송신 포트 사이에, 버블 패킷 송신 포트 이외의 포트가 할당되어 있는지 어떤지에 의해 판단한다. 즉, 버블 패킷 송신 포트 검출부(83)는, 2개의 검출용 패킷 송신 포트 사이에 버블 패킷 송신 포트 이외의 포트가 할당되어 있는 경우에는, 버블 패킷 송신 포트의 위치를 검출할 수 없다고 판단하고, 2개의 검 출용 패킷 송신 포트의 사이에 버블 패킷 송신 포트만이 할당되어 있는 경우에는, 버블 패킷 송신 포트의 위치를 검출할 수 있다고 판단한다. 구체적으로는, 2개의 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 포트 번호의 차이가, 포트 폭 검출부(86)에 의해서 검출된 통신 처리 장치(2)의 포트 폭의 2배인지 어떤지를 판단한다. 그리고, 2배이면 버블 패킷 송신 포트의 위치의 검출을 행할 수 있다고 판단하여 단계 S1402로 진행되고, 2배가 아닌 경우에는 버블 패킷 송신 포트의 위치를 검출할 수 없다고 판단해 단계 S1404로 진행된다.
(단계 S1402) 버블 패킷 송신 포트 검출부(83)는 검출용 패킷 수신부(43)가 수신한 검출용 패킷에 의거하여 버블 패킷 송신 포트의 위치를 검출한다. 구체적으로는, 버블 패킷 송신 포트 검출부(83)는 2개의 검출용 패킷이 통과한 통신 처리 장치(2)의 검출용 패킷 송신 포트 한 가운데의 포트 번호를, 버블 패킷 송신 포트로서 검출한다.
(단계 S1403) 버블 패킷 송신 포트 송신부(85)는, 버블 패킷 송신 포트 검출부(83)가 검출한 버블 패킷 송신 포트의 위치를 나타내는 버블 패킷 송신 포트 정보를 몇 개의 검출용 패킷의 송신원에 송신한다. 그 버블 패킷 송신 포트 정보는, 통신 처리 장치(2)를 통하여 정보 처리 장치(70)에 송신되고 정보 처리 장치(70)의 버블 패킷 송신 포트 접수부(73)에서 수신된다.
(단계 S1404) 재송신 지시 송신부(84)는 재송신 지시를 몇 개의 검출용 패킷의 송신원에 송신한다. 그 재송신 지시는 통신 처리 장치(2)를 통하여 정보 처리 장치(70)에 송신되고 정보 처리 장치(70)의 재송신 지시 접수부(72)에서 수신된다.
한편, 통신 처리 장치(2)의 종류의 판단이나, 통신 처리 장치(2)의 포트 폭의 검출, 버블 패킷 송신 포트의 위치의 검출 등의 동작의 구체적인 처리는, 통신 처리 장치(2)의 종류의 판단이나, 통신 처리 장치(2)의 포트 폭의 검출, 버블 패킷 송신 포트의 위치의 검출 등을, 정보 처리 장치(10)에 있어서 실행하는 대신에, 제1 서버(80)에 있어서 실행하는 이외에, 실시형태 1과 동일하고 그 설명을 생략한다.
또, 이 구체예에서는, 통신 처리 장치(2)의 종류에 따라 정보 처리 장치(70)에서의 검출용 패킷의 송신의 처리를 변경하는 경우에 대해 설명했지만, 실시형태 1의 구체예 2와 같이, 통신 처리 장치(2)의 종류에 관련되지 않는 검출용 패킷의 송신을 행하고, 통신 처리 장치(2)의 종류에 따라 결과적으로 검출용 패킷 송신 포트와 버블 패킷 송신 포트가 동일하게 되거나 다르거나 하도록 해도 좋다. 그 경우에는, 통신 처리 장치(2)의 종류에 따라 검출용 패킷의 송신 방법을 변경할 필요가 없기 때문에, 정보 처리 장치(70)는 종류 정보 접수부(71)를 구비하지 않아도 좋다. 한편, 그 경우에는, 제1 서버(80)의 버블 패킷 송신 포트 검출부(83)에서는, 통신 처리 장치(2)의 종류에 따라, 버블 패킷 송신 포트의 위치의 검출 방법을 변경할 필요가 있다. 예를 들면, 통신 처리 장치(2)의 종류가 콘계나 포트 재사용이면, 단계 S1302의 방법으로 검출을 행하고, 통신 처리 장치(2)의 종류가 심메트릭계이면, 단계 S1402의 방법으로 검출을 행해도 좋다.
이상과 같이, 본 실시형태 2에 의한 정보 처리 시스템에서는, 통신 처리 장치(2)의 종류에 따라 검출용 패킷 송신 포트와 버블 패킷 송신 포트가 동일해지거 나 또는 상이하도록 검출용 패킷을 송신함으로써, 통신 처리 장치(2)의 종류에 상관없이 버블 패킷 송신 포트의 위치를 정확하게 검출할 수 있다. 또한, 그 버블 패킷 송신 포트의 검출을, 제1 서버(80)에 있어서 실행할 수 있다.
한편, 본 실시형태 2에서는, 정보 처리 장치(70)가 버블 패킷 송신 포트 정보를 접수하는 버블 패킷 송신 포트 접수부(73)를 구비하는 경우에 대해 설명했지만, 버블 패킷 송신 포트 정보는 제1 서버(80)로부터 정보 처리 장치(70)를 경유하지 않고 정보 처리 장치(30)에 송신되어도 좋다. 예를 들면, 제1 서버(80)가 버블 패킷 송신 포트 정보를 직접, 정보 처리 장치(30)에 송신해도 좋다.
또한, 본 실시형태 2에서는, 통신 처리 장치(2)의 종류가 포트 재사용인 경우에, 버블 패킷 송신 포트의 위치를 검출할 수 있을지 어떤지를 제1 서버(80)에서 판단하기 위해서, 검출용 패킷을 송신하는 정보 처리 장치(70)의 포트 번호를 페이 로드에 포함한 검출용 패킷을 송신하는 경우에 대해 설명했지만, 검출용 패킷을 송신하는 정보 처리 장치(70)의 포트 번호는 검출용 패킷과는 별도로, 정보 처리 장치(70)로부터 제1 서버(80)에 송신되어도 좋다.
또한, 본 실시형태 2에서는 정보 처리 장치(70)가 재송신 지시 접수부(72)를 구비하는 경우에 대해 설명했지만, 정보 처리 장치(70)는 재송신 지시 접수부(72)를 구비하지 않고, 버블 패킷 및 검출용 패킷이 송신되고 나서 소정의 기간이 경과해도, 버블 패킷 송신 포트 정보를 접수할 수 없는 경우에, 버블 패킷 및 검출용 패킷을 재차 송신하도록 해도 좋다.
(실시형태 3)
본 발명의 실시형태 3에 의한 정보 처리 시스템 등에 대해서 도면을 참조하면서 설명한다. 본 실시형태 3에 의한 정보 처리 시스템 등은, 답신 패킷을 송신하는 정보 처리 장치에 있어서 버블 패킷 송신 포트의 검출을 행하는 것이다.
본 실시형태 3에 의한 정보 처리 시스템의 구성은, 실시형태 1의 도 1에 있어서, 정보 처리 장치(10), 정보 처리 장치(30)에 대신하여, 각각 정보 처리 장치(100), 정보 처리 장치(110)를 구비하는 것 외에, 실시형태 1의 도 1과 동일하다고 하고, 정보 처리 장치(100), 정보 처리 장치(110) 이외의 설명을 생략한다.
도 33은, 본 실시형태 3에 의한 정보 처리 장치(100)의 구성을 도시하는 블록도이다. 도 33에 있어서, 본 실시형태 3에 의한 정보 처리 장치(100)는, 송신처 정보 접수부(11)와 버블 패킷 송신부(12)와 종류 판단 패킷 송신부(13)와 종류 판단 포트 정보 접수부(14)와 종류 판단부(15)와 검출용 패킷 송신부(16)와 포트 폭 검출용 패킷 송신부(17)와 포트 폭 검출용 포트 정보 접수부(18)와 포트 폭 검출부(19)와 검출용 포트 정보 접수부(20)와 통신부(23)와 정보 송신부(101)를 구비한다. 한편, 정보 송신부(101) 이외의 구성 및 동작은, 실시형태 1과 동일하고, 그 설명을 생략한다.
정보 송신부(101)는 종류 판단부(15)가 판단한 통신 처리 장치(2)의 종류를 나타내는 종류 정보, 포트 폭 검출부(19)가 검출한 통신 처리 장치(2)의 포트 폭을 나타내는 포트 폭 정보, 검출용 포트 정보 접수부(20)가 접수한 검출용 포트 정보를, 릴레이 서버(60)를 통하여 정보 처리 장치(110)에 송신한다. 본 실시형태 3의 검출용 포트 정보에는, 검출용 패킷 송신 포트의 위치를 나타내는 정보뿐만 아니 라, 통신 처리 장치(2)의 글로벌측의 어드레스도 포함되는 것으로 한다. 한편, 정보 송신부(101)는 송신을 행하기 위한 송신 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다(이 경우에는, 정보 송신부(101)와 통신 처리 장치(2)의 사이에 도시하지 않는 송신 디바이스가 존재하게 됨). 또한, 정보 송신부(101)는 하드웨어에 의해서 실현되어도 좋고, 혹은 송신 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
도 34는, 본 실시형태 3에 의한 정보 처리 장치(110)의 구성을 도시하는 블록도이다. 도 34에 있어서, 본 실시형태 3에 의한 정보 처리 장치(110)는 송신처 정보 송신부(31)와 답신 패킷 송신부(33)와 통신부(34)와 검출용 포트 정보 접수부(111)와 버블 패킷 송신 포트 검출부(112)를 구비한다. 한편, 검출용 포트 정보 접수부(111), 버블 패킷 송신 포트 검출부(112) 이외의 구성 및 동작은, 실시형태 1과 동일하고, 그 설명을 생략한다.
검출용 포트 정보 접수부(111)는 정보 처리 장치(100)로부터 송신된 검출용 패킷이 통과한 통신 처리 장치(2)의 포트의 위치를 나타내는 검출용 포트 정보를 접수한다. 한편, 본 실시형태 3에서는, 검출용 포트 정보 접수부(111)는 검출용 포트 정보와 함께, 종류 정보, 포트 폭 정보도 접수하는 것으로 한다. 검출용 포트 정보 접수부(111)는, 예를 들면, 입력 디바이스(예를 들면, 키보드나 마우스, 터치 패널 등)로부터 입력된 검출용 포트 정보 등을 접수해도 좋고, 유선 혹은 무선의 통신 회선을 통하여 송신된 검출용 포트 정보 등을 수신해도 좋으며, 소정의 기록 매체(예를 들면, 광디스크나 자기 디스크, 반도체 메모리 등)로부터 독출된 검출용 포트 정보 등을 접수해도 좋다. 본 실시형태 3에서는, 검출용 포트 정보 접수부(111)는 통신 회선을 통하여 송신된 검출용 포트 정보 등을 수신하는 것으로 한다. 한편, 검출용 포트 정보 접수부(111)는 접수를 행하기 위한 디바이스(예를 들면, 모뎀이나 네트워크 카드 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또, 검출용 포트 정보 접수부(111)는 하드웨어에 의해서 실현되어도 좋고, 혹은 소정의 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다.
버블 패킷 송신 포트 검출부(112)는, 통신 처리 장치(2)의 종류에 따라, 검출용 포트 정보 접수부(111)가 접수한 검출용 포트 정보에 의거하여 버블 패킷 송신 포트의 위치를 검출한다. 한편, 본 실시형태 3에서는, 버블 패킷 송신 포트 검출부(112)는 버블 패킷 송신 포트의 위치의 검출에 필요한 통신 처리 장치(2)의 종류를 나타내는 종류 정보와 통신 처리 장치(2)의 포트 폭을 나타내는 포트 폭 정보를, 검출용 포트 정보 접수부(111)로부터 수취하는 것으로 한다. 한편, 버블 패킷 송신 포트의 검출 동작에 대해서는, 실시형태 1의 버블 패킷 송신 포트 검출부(21)의 처리와 동일하고, 그 설명을 생략한다.
다음에, 본 실시형태 3에 의한 정보 처리 시스템의 동작에 대해서, 흐름도를 이용해 설명한다. 도 35는, 본 실시형태 3에 의한 정보 처리 장치(100)의 동작을 도시하는 흐름도이다. 한편, 단계 S1501 이외의 처리는, 실시형태 1의 도 7의 흐름도와 동일하고, 그 설명을 생략한다.
(단계 S1501) 정보 처리 장치(100)는 검출용 포트 정보, 포트 폭 정보, 종류 정보를 정보 처리 장치(110)에 송신한다. 이 처리의 상세에 대해서는 후술한다.
도 36은, 도 35의 흐름도의 단계 S1501에서의, 정보 처리 장치(100)가 검출용 포트 정보를 송신하는 처리 등의 상세를 도시하는 흐름도이다. 한편, 단계 S1601, S1602 이외의 처리에 대해서는, 실시형태 1의 도 12의 흐름도와 동일하고, 그 설명을 생략한다.
(단계 S1601) 정보 송신부(101)는, 종류 판단부(15)가 판단해 통신 처리 장치(2)의 종류를 나타내는 종류 정보, 포트 폭 검출부(19)가 검출한 통신 처리 장치(2)의 포트 폭을 나타내는 포트 폭 정보, 검출용 포트 정보 접수부(20)가 접수한 검출용 포트 정보를 포함한 통신 요구 패킷을 구성하고, 릴레이 서버(60)에 송신한다. 한편, 그 통신 요구 패킷은, 릴레이 서버(60)를 통하여, 정보 처리 장치(110)에 송신되고(단계 S409), 정보 처리 장치(110)의 검출용 포트 정보 접수부(111)에서 수신된다.
(단계 S1602) 버블 패킷 송신 포트 검출부(112)는, 검출용 포트 정보 접수부(111)가 수신한 통신 요구 패킷에 포함되는, 종류 정보, 포트 폭 정보, 검출용 포트 정보에 의거하여 버블 패킷 송신 포트의 위치를 검출한다. 그 검출한 버블 패킷 송신 포트의 위치를 나타내는 정보와 검출용 포트 정보로 포함되는 통신 처리 장치(2)의 글로벌측의 어드레스란, 답신 패킷 송신부(33)와 통신부(34)에 건네지는 것으로 한다. 그리고, 단계 S414에서는, 그 버블 패킷 송신 포트 검출부(112)로부터 답신 패킷 송신부(33)에 건네진 버블 패킷 송신 포트의 위치를 나타내는 정보, 및 통신 처리 장치(2)의 어드레스에 의거하여 답신 패킷이 송신되는 것으로 한다.
한편, 본 실시형태 3에 의한 정보 처리 시스템의 동작의 구체예에 대해서는, 정보 처리 장치(110)에 있어서 버블 패킷 송신 포트의 위치의 검출을 하는 것 이외에, 실시형태 1과 동일하고 그 설명을 생략한다.
이상과 같이, 본 실시형태 3에 의한 정보 처리 시스템에 의하면, 통신 처리 장치(2)의 종류에 따라 검출용 패킷 송신 포트와 버블 패킷 송신 포트가 동일해지거나 또는 상이하도록 검출용 패킷을 송신하는 것에 의해서, 통신 처리 장치(2)의 종류에 상관없이 버블 패킷 송신 포트의 위치를 정확하게 검출할 수 있다. 또한, 그 버블 패킷 송신 포트의 검출을 답신 패킷을 송신하는 정보 처리 장치(110)에 있어서 실행할 수 있다.
한편, 본 실시형태 3에서는, 답신 패킷을 송신하는 정보 처리 장치(110)에 있어서 버블 패킷 송신 포트의 검출을 행하는 경우에 대해 설명했지만, 버블 패킷 송신 포트의 검출을 행하는 포트 검출 장치는, 실시형태 1과 같이 버블 패킷의 송신을 행하는 정보 처리 장치라도 좋고, 실시형태 2와 같이 제1 서버라도 좋고, 본 실시형태 3과 같이 답신 패킷의 송신을 행하는 정보 처리 장치라도 좋고, 혹은, 그 외의 장치라도 좋다. 포트 검출 장치가 실시형태 1~3에서 설명한 것 이외의 장치인 경우에는, 도 37에서 도시하는 바와 같이, 포트 검출 장치(120)는 버블 패킷 송신 포트 검출부(112)가 검출한 버블 패킷 송신 포트의 위치를 나타내는 버블 패킷 송신 포트 정보를 출력하는 출력부(121)를 구비해도 좋다. 여기서, 이 출력은, 예를 들면, 표시 디바이스(예를 들면, CRT나 액정 디스플레이 등)로의 표시라도 좋고, 소정의 기기로의 통신 회선을 통한 송신이라도 좋고, 프린터에 의한 인쇄라도 좋고, 스피커에 의한 음성 출력이라도 좋고, 기록 매체로의 축적이라도 좋다. 한 편, 출력부(121)는 출력을 행하는 디바이스(예를 들면, 표시 디바이스나 프린터 등)를 포함해도 좋고, 혹은 포함하지 않아도 좋다. 또한, 출력부(121)는 하드웨어에 의해서 실현되어도 좋고, 혹은, 그러한 디바이스를 구동하는 드라이버 등의 소프트웨어에 의해서 실현되어도 좋다. 여기서, 도 37에서는, 포트 검출 장치(120)가 송신처 정보 송신부(31)를 구비하는 구성에 대해 나타내고 있지만, 포트 검출 장치(120)는 송신처 정보 송신부(31)를 구비하지 않아도 좋다.
또한, 본 실시형태 3에서는, 정보 처리 장치(100)로부터 정보 처리 장치(110)에 검출용 포트 정보, 종류 정보, 포트 폭 정보가 송신되는 경우에 대해 설명했지만, 이러한 정보 가운데, 임의의 1이상의 정보가, 예를 들면, 제1 서버로부터 송신되어도 좋다. 예를 들면, 실시형태 2와 동일하게, 제1 서버에 대해 포트 폭의 검출 등을 행하고, 그 검출된 포트 폭을 나타내는 포트 폭 정보 등이 제1 서버로부터 정보 처리 장치(110)에 송신되어도 좋다. 또는, 정보 처리 장치(110)에 포트 폭 정보 등이 사용자의 손 입력 등에 의해서 입력되어도 좋고, 정보 처리 장치(110)가 포트 폭 정보나 검출용 포트 정보 등을 접수하는 방법은 묻지 않는다.
또한, 본 실시형태 3에서는, 정보 처리 장치(110)에 있어서, 검출된 버블 패킷 송신 포트의 위치를 이용하여, 답신 패킷의 송신을 행하는 경우에 대해 설명했지만, 이것은 일례이며, 정보 처리 장치(110)는 검출된 버블 패킷 송신 포트의 위치를 이용하여 처리를 행하는 처리부를 구비해도 좋다. 이 처리부는, 예를 들면, 전술과 같이 답신 패킷을 송신해도 좋고, 검출된 버블 패킷 송신 포트의 위치를 나타내는 정보를 축적이나 송신해도 좋고, 혹은, 그 검출된 버블 패킷 송신 포트의 위치를 나타내는 정보를 이용하여 다른 처리를 행해도 좋다.
한편, 상기 각 실시형태에서는, 버블 패킷을 송신하는 정보 처리 장치만이 통신 처리 장치(2)를 통하여 통신을 행하는 경우에 대해 설명했지만, 답신 패킷을 송신하는 정보 처리 장치도, 통신에 관한 처리를 행하는 통신 처리 장치를 통하여 통신을 행해도 좋다. 그 통신 처리 장치는, 상기 각 실시형태에서 설명한 통신 처리 장치(2)와 동일한 것으로 한다.
또, 상기 각 실시형태에서는, 정보 처리 시스템이 제1 서버, 및 제2 서버를 구비하는 구성에 대해 설명했지만, 정보 처리 시스템은, 제2 서버를 구비하지 않아도 좋다. 그 경우에는, 예를 들면, 통신 처리 장치(2)의 종류를 서버를 이용하지 않고 판단해도 좋다. 서버를 이용하지 않는 경우로서는, 예를 들면, 사용자가 통신 처리 장치(2)의 매뉴얼 등을 참조함으로써 통신 처리 장치(2)의 종류를 특정하고, 그 종류를 소정의 입력 디바이스를 통하여, 버블 패킷을 송신하는 정보 처리 장치에 입력하는 경우 등이 있다. 또한, 제1 서버, 및 제2 서버는 장치로서 일체로 구성되어도 좋다.
또, 상기 각 실시형태에서는 버블 패킷 송신 포트 검출부가 통신 처리 장치의 종류를 나타내는 정보를 접수하고, 그 정보를 이용하여 버블 패킷 송신 포트의 검출을 행하는 경우에 대해 설명했지만, 버블 패킷 송신 포트 검출부는 통신 처리 장치의 종류를 나타내는 정보를 이용하지 않고 버블 패킷 송신 포트의 위치의 검출을 행해도 좋다. 예를 들면, 실시형태 1의 구체예 1에 있어서, 버블 패킷 송신 포트 검출부(21)는 검출용 포트 정보 접수부(20)가 2개의 검출용 패킷 송신 포트의 포트 번호를 나타내는 검출용 포트 정보를 접수한 경우에는, 통신 처리 장치(2)의 종류가 심메트릭계인 경우의 버블 패킷 송신 포트의 검출 처리를 행하고, 검출용 포트 정보 접수부(20)가 1개의 검출용 패킷 송신 포트의 포트 번호를 나타내는 검출용 포트 정보를 접수한 경우에는, 통신 처리 장치(2)의 종류가 콘계, 포트 재사용인 경우의 버블 패킷 송신 포트의 검출을 행해도 좋다. 또한, 예를 들면, 실시형태 1의 구체예 2에 있어서, 버블 패킷 송신 포트 검출부(21)는 통신 처리 장치(2)의 포트 폭 「1」과 2개의 검출용 패킷 송신 포트의 포트 번호를 수취하고, 그 2개의 검출용 패킷 송신 포트의 포트 번호의 차이가 포트 폭 「1」의 2배이면, 통신 처리 장치(2)의 종류가 심메트릭계인 경우의 버블 패킷 송신 포트의 검출 처리를 행하고, 2개의 검출용 패킷 송신 포트의 포트 번호의 차이가 포트 폭 「1」의 1배이면, 통신 처리 장치(2)의 종류가 콘계, 포트 재사용인 경우의 버블 패킷 송신 포트의 검출을 행해도 좋다. 이와 같이, 버블 패킷 송신 포트 검출부는 버블 패킷 송신 포트의 위치의 검출에 있어서, 직접, 통신 처리 장치(2)의 종류를 나타내는 정보를 이용하지 않아도 좋다. 다만, 전술과 같이, 통신 처리 장치(2)의 종류에 따라 버블 패킷 송신 포트의 검출 수법을 바꾸는 것은, 통신 처리 장치(2)의 종류에 따라 버블 패킷 송신 포트의 위치를 검출하는 것에 포함되는 것으로 한다.
또, 실시형태 1에 있어서, 통신 처리 장치(2)의 종류의 판단, 통신 처리 장치(2)의 포트 폭의 검출, 버블 패킷 송신 포트의 위치의 검출을, 버블 패킷을 송신하는 정보 처리 장치(10)에 있어서 행하는 경우에 대해 설명하고, 실시형태 2에 있어서, 그러한 처리를 제1 서버(80)에 있어서 행하는 경우에 대해 설명하며, 실시형 태 3에 있어서, 통신 처리 장치(2)의 종류의 판단, 통신 처리 장치(2)의 포트 폭의 검출을 버블 패킷을 송신하는 정보 처리 장치(100)에 있어서 행하고, 버블 패킷 송신 포트의 위치의 검출을 답신 패킷을 송신하는 정보 처리 장치(110)에 있어서 행하는 경우에 대해 설명했지만, 통신 처리 장치(2)의 종류의 판단의 처리는, 버블 패킷을 송신하는 정보 처리 장치, 서버, 답신 패킷을 송신하는 정보 처리 장치, 혹은, 그 외의 장치의 어느 것에 있어서 실행되어도 좋다. 마찬가지로 통신 처리 장치(2)의 포트 폭을 검출하는 처리도, 버블 패킷을 송신하는 정보 처리 장치, 서버, 답신 패킷을 송신하는 정보 처리 장치, 혹은, 그 외의 장치의 어느 것에 있어 실행되어도 좋다. 마찬가지로, 버블 패킷 송신 포트의 위치를 검출하는 처리도, 버블 패킷을 송신하는 정보 처리 장치, 서버, 답신 패킷을 송신하는 정보 처리 장치, 혹은, 그 외의 장치의 어느 것에 있어 실행되어도 좋다. 예를 들면, 통신 처리 장치(2)의 종류의 판단은, 제1 서버에 있어서 행해지고 통신 처리 장치(2)의 포트 폭의 검출은, 버블 패킷을 송신하는 정보 처리 장치에 있어서 행해지며 통신 처리 장치(2)의 종류를 나타내는 정보, 및 통신 처리 장치(2)의 포트 폭을 나타내는 정보가, 답신 패킷을 송신하는 정보 처리 장치에 송신되고, 그 답신 패킷을 송신하는 정보 처리 장치에 있어서 버블 패킷 송신 포트의 위치의 검출을 행해도 좋다.
또, 상기 각 실시형태에서는, 통신 처리 장치(2)의 종류를, 콘계, 심메트릭계, 포트 재사용의 3개로 나누어 버블 패킷 송신 포트의 위치를 검출하는 경우에 대해 생각했지만, 그 이외의 종류의 통신 처리 장치(2)의 종류가 있는 경우에는, 그 종류도 포함하고, 통신 처리 장치(2)의 종류에 따라 검출용 패킷 송신 포트와 버블 패킷 송신 포트가 동일해지거나, 혹은 상이하도록 검출용 패킷을 송신해도 좋고, 그 통신 처리 장치(2)의 종류에 따라 버블 패킷 송신 포트의 위치의 검출을 행해도 좋다. 또한, 통신 처리 장치(2)의 종류로서 콘계, 심메트릭계, 포트 재사용의 임의의 2개의 통신 처리 장치(2)의 종류에 따라 검출용 패킷을 송신해도 좋고, 버블 패킷 송신 포트의 위치를 검출해도 좋다. 또한, 통신 처리 장치(2)의 종류가 심메트릭계인지, 또는, 콘계 혹은 포트 재사용인지에 따라 검출용 패킷 송신 포트와 버블 패킷 송신 포트가 동일해지거나 혹은 상이하도록 검출용 패킷을 송신해도 좋다. 또한, 예를 들면, 통신 처리 장치(2)의 종류가 콘계인지, 또는 심메트릭계인지에 따라 검출용 패킷의 송신 등을 행하는 경우에는, 통신 처리 장치(2)의 종류의 판단에 있어서, 통신 처리 장치(2)의 종류가 콘계인지, 또는 심메트릭계인지를 판단하는 것만이어도 좋다.
또, 상기 각 실시형태에서는, 버블 패킷을 송신하는 정보 처리 장치는, 송신처 정보를 접수하고, 그 송신처 정보에 의거하여 버블 패킷을 송신하는 경우에 대해 설명했지만, 송신처 정보는 버블 패킷을 송신하는 정보 처리 장치에 있어서 미리 설정되어 있고, 그 설정되어 있는 송신처 정보를 이용하여 버블 패킷의 송신을 행해도 좋다.
또한, 상기 각 실시형태에 있어서, 통신 처리 장치(2)의 종류를, 통신 처리 장치(2)에 있어서 어떠한 송신 포트의 할당이 행해지는가를 조사하는 것에 의해 판단하는 경우에 대해 주로 설명했지만, 그 이외의 방법에 의해서, 통신 처리 장치(2)의 종류를 판단해도 좋다. 예를 들면, 어느 메이커가 콘계의 통신 처리 장 치(2) 밖에 생산하고 있지 않는 경우에는, 통신 처리 장치(2)의 메이커를 판단하는 것에 의해서 통신 처리 장치(2)의 종류를 판단해도 좋다. 통신 처리 장치(2)의 메이커는, 예를 들면, 사용자의 손 입력에 의해서 정보 처리 장치 등에 입력되어도 좋고, 혹은, 통신 처리 장치(2)의 MAC 어드레스에 포함되는 벤더 ID 등을 이용하여 통신 처리 장치(2)의 메이커를 특정해도 좋다.
또한, 상기 각 실시형태에 있어서, 검출용 포트 정보나, 버블 패킷 송신 포트 정보에 통신 처리 장치(2)의 글로벌측의 어드레스가 포함되는 것에 의해서, 버블 패킷을 송신하는 정보 처리 장치가 통신 처리 장치(2)의 글로벌측의 어드레스를 알 수 있는 경우에 대해 설명했지만, 검출용 포트 정보나 버블 패킷 송신 포트 정보에는 통신 처리 장치(2)의 글로벌측의 어드레스가 포함되지 않아도 좋다. 그 경우에는, 버블 패킷을 송신하는 정보 처리 장치는, 예를 들면, 소정의 서버로부터 송신된 정보나, 사용자 등으로부터 입력된 정보에 의해서 통신 처리 장치(2)의 글로벌측의 어드레스를 알 수 있도록 해도 좋다. 여기서, 그 소정의 서버는, 예를 들면, 수신한 패킷의 헤더에 포함되어 있는 송신원의 어드레스를 페이 로드에 포함한 패킷을, 그 수신한 패킷의 송신원에 송신하는 것이어도 좋다. 그 소정의 서버의 기능은 제1 서버 등이 가지고 있어도 좋다.
또한, 상기 각 실시형태에 있어서, 통신 처리 장치(2)가 어드레스 변환을 행하는 NAT 기능을 가지는 장치인 경우에 대해 설명했지만, 통신 처리 장치(2)는 송신 포트 할당 룰에 의거한 송신 포트 할당을 행하는 장치이면 좋고, 어드레스 변환 기능을 가지지 않는 장치라도 좋다.
또, 상기 각 실시형태에 있어서, 버블 패킷을 송신하는 정보 처리 장치가 종류 판단 패킷 송신부(13), 포트 폭 검출용 패킷 송신부(17)를 구비하는 경우에 대해 설명했지만, 통신 처리 장치(2)의 종류의 판단이나, 통신 처리 장치(2)의 포트 폭의 검출을 종류 판단 패킷이나, 포트 폭 검출용 패킷을 이용하여 행하지 않는 경우에는, 버블 패킷을 송신하는 정보 처리 장치가 종류 판단 패킷 송신부(13)나, 포트 폭 검출용 패킷 송신부(17)를 구비하지 않아도 좋다. 여기서, 통신 처리 장치(2)의 종류의 판단이나, 통신 처리 장치(2)의 포트 폭의 검출을, 종류 판단 패킷이나, 포트 폭 검출용 패킷을 이용하여 행하지 않는 경우로서는, 예를 들면, 통신 처리 장치(2)의 매뉴얼 등을 참조하는 것으로써, 통신 처리 장치(2)의 종류나 포트 폭을 특정하는 경우 등이 있다.
또, 상기 각 실시형태에 있어서, 검출용 패킷이나 포트 폭 검출용 패킷 등은, UDP의 패킷이어도 좋고, TCP의 패킷이어도 좋다고 설명했지만, 통신 처리 장치에 따라서는, UDP의 패킷과 TCP의 패킷에서 포트 할당이 다른 것도 있다. 예를 들면, UDP의 패킷에는 일정한 범위의 포트 번호를 할당하고, TCP의 패킷에는 그 범위와는 상이한 다른 범위의 포트 번호를 할당하는 경우가 있다. 그러한 경우에는, 검출용 패킷이나 포트 폭 검출용 패킷 등으로 해서, 모두 UDP의 패킷을 이용하는 것이 바람직하다.
또, 상기 각 실시형태에 있어서, 검출용 패킷이나 포트 폭 검출용 패킷, 종류 판단 패킷 등에 패킷의 종류를 나타내는 정보나 패킷의 송신원의 장치를 식별하는 정보 등이 포함되어 있어도 좋다. 또한, 검출용 패킷 등에 대응하여 송신되는 검출용 포트 정보나, 포트 폭 검출용 포트 정보, 종류 정보 등의 패킷에, 패킷의 종류를 나타내는 정보나, 어느 통신 처리 장치에 관한 정보인지를 나타내는 정보 등이 포함되어 있어도 좋다. 이와 같이, 상기 각 실시형태에서의 각종의 패킷의 구조는 묻지 않는 것으로 한다.
또, 상기 각 실시형태에 있어서, 각 처리(각 기능)는 단일의 장치(시스템)에 의해서 집중 처리되는 것에 의해서 실현되어도 좋고, 혹은, 복수의 장치에 의해서 분산처리되는 것에 의해서 실현되어도 좋다.
또, 상기 각 실시형태에 있어서, 각 구성 요소는 전용의 하드웨어에 의해 구성되어도 좋고, 혹은, 소프트웨어에 의해 실현 가능한 구성 요소에 대해서는, 프로그램을 실행하는 것에 의해서 실현되어도 좋다. 예를 들면, 하드 디스크나 반도체 메모리 등의 기록 매체에 기록된 소프트웨어·프로그램을 CPU 등의 프로그램 실행부가 독출하여 실행함으로써 각 구성 요소가 실현될 수 있다. 한편, 상기 각 실시형태에서의 정보 처리 장치를 실현하는 소프트웨어는, 이하와 같은 프로그램이다. 즉, 이 프로그램은 컴퓨터에, 통신에 관한 처리를 실시하는 통신 처리 장치를 통한 통신을 실행시키기 위한 프로그램이며, 통신 처리 장치에 송신 이력을 남기기 위한 패킷인 버블 패킷을, 통신 처리 장치를 통하여 송신하는 버블 패킷 송신 단계와 버블 패킷의 송신에 이용되는, 통신 처리 장치의 포트인 버블 패킷 송신 포트의 위치를 검출하기 위해서 이용되는 패킷인 검출용 패킷을, 통신 처리 장치의 종류에 따라 검출용 패킷이 통과한 통신 처리 장치의 포트인 검출용 패킷 송신 포트와 버블 패킷 송신 포트가 동일해지거나 또는 상이하도록 통신 처리 장치를 통하여 송신하 는 검출용 패킷 송신 단계를 실행시키기 위한 것이다.
또한, 상기 각 실시형태에서의 포트 검출 장치를 실현하는 소프트웨어는 이하와 같은 프로그램이다. 즉, 이 프로그램은, 컴퓨터에 검출용 패킷이 통과한 통신 처리 장치의 포트의 위치를 나타내는 정보인 검출용 포트 정보를 접수하는 검출용 포트 정보 접수 단계와, 통신 처리 장치의 종류에 따라 검출용 포트 정보에 의거하여 버블 패킷 송신 포트의 위치를 검출하는 버블 패킷 송신 포트 검출 단계를 실행시키기 위한 것이다.
한편, 상기 프로그램에 있어서, 정보를 송신하는 송신 단계나, 정보를 접수하는 접수 단계 등에서는 하드웨어에 의해서 행해지는 처리, 예를 들면, 송신 단계에서의 모뎀이나 인터페이스 카드 등에서 행해지는 처리(하드웨어로 밖에 행해지지 않는 처리)는 포함되지 않는다.
또한, 이 프로그램은 서버 등으로부터 다운로드됨으로써 실행되어도 좋고, 소정의 기록 매체(예를 들면, CD-ROM 등의 광디스크나 자기 디스크, 반도체 메모리 등)에 기록된 프로그램이 독출됨으로써 실행되어도 좋다.
또한, 이 프로그램을 실행하는 컴퓨터는 단수라도 좋고, 복수라도 좋다. 즉, 집중 처리를 행해도 좋고, 혹은 분산처리를 행해도 좋다.
또, 본 발명은 이상의 각 실시형태에 한정되는 일 없이, 여러 가지의 변경이 가능하고, 그들도 본 발명의 범위 내에 포함되는 것이다.
이상으로부터, 본 발명에 의한 정보 처리 장치 등은 다른 장치와의 통신을 적절히 확립할 수 있도록 할 수 있고, 2이상의 정보 처리 장치간에 통신을 행하는 정보 처리 시스템 등에 있어서 유용하다.
도 1 은 본 발명의 실시형태 1에 의한 정보 처리 시스템의 구성을 도시하는 도면이다.
도 2는 동 실시형태 1에 의한 정보 처리 장치의 구성을 도시하는 블록도이다.
도 3은 동 실시형태 1에 의한 정보 처리 장치의 구성을 도시하는 블록도이다.
도 4는 동 실시형태 1에 의한 제1 서버의 구성을 도시하는 블록도이다.
도 5는 동 실시형태에 의한 제2 서버의 구성을 도시하는 블록도이다.
도 6은 동 실시형태 1에 의한 릴레이 서버의 구성을 도시하는 블록도이다.
도 7은 동 실시형태 1에 의한 정보 처리 장치의 동작을 도시하는 흐름도이다.
도 8은 동 실시형태에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 9는 동 실시형태 1에서의 통신 처리 장치의 종류의 판단에 대해 설명하기 위한 도면이다.
도 10은 동 실시형태 1에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 11은 동 실시형태 1에서의 통신 처리 장치의 포트 폭의 검출에 대해 설명하기 위한 도면이다.
도 12는 동 실시형태 1에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 13은 동 실시형태 1에서의 데이터 릴레이로 이용하는 장치 식별 정보와 어드레스 등과의 대응을 도시하는 도면이다.
도 14는 동 실시형태 1에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 15는 동 실시형태 1에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 16은 동 실시형태 1에서의 버블 패킷 송신 포트의 검출에 대해 설명하기 위한 도면이다.
도 17은 동 실시형태 1에서의 버블 패킷 송신 포트의 검출에 대해 설명하기 위한 도면이다.
도 18은 동 실시형태 1에서의 버블 패킷 송신 포트의 검출에 대해 설명하기 위한 도면이다.
도 19는 동 실시형태 1에서의 포트 재사용의 통신 처리 장치의 동작에 대해 설명하기 위한 도면이다.
도 20은 동 실시형태 1에서의 버블 패킷 송신 포트의 검출에 대해 설명하기 위한 도면이다.
도 21은 동 실시형태 1에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 22는 동 실시형태 1에서의 버블 패킷 송신 포트의 검출에 대해 설명하기 위한 도면이다.
도 23은 동 실시형태에서의 버블 패킷 송신 포트의 검출에 대해 설명하기 위한 도면이다.
도 24는 동 실시형태 1에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 25는 본 발명의 실시형태 2에 의한 정보 처리 장치의 구성을 도시하는 블록도이다.
도 26은 동 실시형태 2에 의한 제1 서버 및 제2 서버의 구성을 도시하는 블록도이다.
도 27은 동 실시형태 2에 의한 정보 처리 장치의 동작을 도시하는 흐름도이다.
도 28은 동 실시형태 2에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 29는 동 실시형태 2에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 30은 동 실시형태 2에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 31은 동 실시형태 2에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 32는 동 실시형태 2에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 33은 본 발명의 실시형태 3에 의한 정보 처리 장치의 구성을 도시하는 블록도이다.
도 34는 동 실시형태 3에 의한 정보 처리 장치의 구성을 도시하는 블록도이다.
도 35는 동 실시형태 3에 의한 정보 처리 장치의 동작을 도시하는 흐름도이다.
도 36은 동 실시형태 3에 의한 정보 처리 시스템의 동작을 도시하는 흐름도이다.
도 37은 동 실시형태 3에 의한 정보 처리 장치의 구성을 도시하는 블록도이다.
도 38은 종래의 정보 처리 시스템의 구성을 도시하는 도면이다.
<도면의 주요부분에 대한 부호의 설명>
1 : 통신 회선 2 : 통신 처리 장치
10, 30, 70, 100, 110 : 정보 처리 장치 11 : 송신처 정보 접수부
12 : 버블 패킷 송신부 13 : 종류 판단 패킷 송신부
14 : 종류 판단 포트 정보 접수부 15, 81 : 종류 판단부
16 : 검출용 패킷 송신부 17 : 포트 폭 검출용 패킷 송신부
18 : 포트 폭 검출용 포트 정보 접수부 19, 86 : 포트 폭 검출부
20, 111 : 검출용 포트 정보 접수부
21, 83, 112 : 버블 패킷 송신 포트 검출부
22, 74, 121 : 출력부 23, 34, 61 : 통신부
31 : 송신처 정보 송신부
32, 73 : 버블 패킷 송신 포트 접수부 33 : 답신 패킷 송신부
40, 80 : 제1 서버 41, 51 : 종류 판단 패킷 수신부
42, 52 : 종류 판단 포트 정보 송신부 43 : 검출용 패킷 수신부
44 : 검출용 포트 정보 송신부 45 : 포트 폭 검출용 패킷 수신부
46 : 포트 폭 검출용 포트 정보 송신부 50, 90 : 제2 서버
60 : 릴레이 서버 62 : 어드레스 정보 기억부
63 : 어드레스 정보 축적부 64 : 어드레스 정보 취득부
71 : 종류 정보 접수부 72 : 재송신 지시 접수부
82 : 종류 정보 송신부 84 : 재송신 지시 송신부
85 : 버블 패킷 송신 포트 송신부 101 : 정보 송신부
120 : 포트 검출 장치

Claims (17)

  1. 통신에 관한 처리를 행하는 통신 처리 장치를 통하여 통신을 행하는 정보 처리 장치로서, 상기 통신 처리 장치에 송신 이력을 남기기 위한 패킷인 버블 패킷을, 상기 통신 처리 장치를 통하여 송신하는 버블 패킷 송신부와,
    상기 버블 패킷의 송신에 이용되는, 상기 통신 처리 장치의 포트인 버블 패킷 송신 포트의 위치를 검출하기 위해서 이용되는 패킷인 검출용 패킷을, 상기 통신 처리 장치의 종류에 따라 상기 검출용 패킷이 통과한 상기 통신 처리 장치의 포트인 검출용 패킷 송신 포트와, 상기 버블 패킷 송신 포트가 동일해지거나 또는 상이하도록 상기 통신 처리 장치를 통하여 송신하는 검출용 패킷 송신부를 구비한, 정보 처리 장치.
  2. 청구항 1에 있어서, 상기 버블 패킷의 송신처에 관한 정보인 송신처 정보를 접수하는 송신처 정보 접수부를 더 구비하고,
    상기 버블 패킷 송신부는 상기 송신처 정보에 의거하여 상기 버블 패킷을 송신하는, 정보 처리 장치.
  3. 청구항 1에 있어서, 상기 통신 처리 장치의 종류를 판단하기 위해서 이용되는 패킷인 종류 판단 패킷을, 상기 통신 처리 장치를 통하여 송신하는 종류 판단 패킷 송신부를 더 구비한, 정보 처리 장치.
  4. 청구항 3에 있어서, 상기 종류 판단 패킷이 통과한 상기 통신 처리 장치의 포트의 위치를 나타내는 정보인 종류 판단 포트 정보를 접수하는 종류 판단 포트 정보 접수부와,
    상기 종류 판단 포트 정보에 의거하여 상기 통신 처리 장치의 종류를 판단하는 종류 판단부를 더 구비하고,
    상기 검출용 패킷 송신부는, 상기 종류 판단부에 의해서 판단된 상기 통신 처리 장치의 종류에 따라 상기 검출용 패킷의 송신을 행하는, 정보 처리 장치.
  5. 청구항 1에 있어서, 상기 통신 처리 장치의 종류를 나타내는 정보인 종류 정보를 접수하는 종류 정보 접수부를 더 구비하고,
    상기 검출용 패킷 송신부는 상기 종류 정보가 나타내는 상기 통신 처리 장치의 종류에 따라 상기 검출용 패킷의 송신을 행하는, 정보 처리 장치.
  6. 청구항 1에 있어서, 상기 검출용 패킷에 의거하여 검출된 버블 패킷 송신 포트의 위치를 나타내는 정보인 버블 패킷 송신 포트 정보를 접수하는 버블 패킷 송신 포트 접수부와,
    상기 버블 패킷 송신 포트 정보를 출력하는 출력부를 더 구비한, 정보 처리 장치.
  7. 청구항 1에 있어서, 상기 검출용 패킷이 통과한 상기 통신 처리 장치의 포트의 위치를 나타내는 정보인 검출용 포트 정보를 접수하는 검출용 포트 정보 접수부와,
    상기 통신 처리 장치의 종류에 따라 상기 검출용 포트 정보에 의거하여 상기 버블 패킷 송신 포트의 위치를 검출하는 버블 패킷 송신 포트 검출부와,
    상기 버블 패킷 송신 포트 검출부가 검출한 버블 패킷 송신 포트의 위치를 나타내는 정보인 버블 패킷 송신 포트 정보를 출력하는 출력부를 더 구비한, 정보 처리 장치.
  8. 청구항 1에 있어서, 상기 검출용 패킷 송신부는 상기 통신 처리 장치의 종류가 콘계인 경우에는, 적어도 1개의 검출용 패킷이 통과하는 상기 통신 처리 장치의 포트가 상기 버블 패킷 송신 포트와 동일해지고, 상기 통신 처리 장치의 종류가 심메트릭(symmetric)계인 경우에는, 검출용 패킷이 통과하는 상기 통신 처리 장치의 포트와 상기 버블 패킷 송신 포트가 상이하도록 상기 검출용 패킷을 송신하는, 정보 처리 장치.
  9. 청구항 1에 있어서, 상기 검출용 패킷 송신부는 상기 통신 처리 장치의 종류가 콘계인 경우에, 상기 버블 패킷의 송신 전, 혹은 후에, 상기 정보 처리 장치에서의 상기 버블 패킷이 송신되는 포트와 동일한 포트를 이용하여 상기 검출용 패킷을 송신하는, 정보 처리 장치.
  10. 청구항 1에 있어서, 상기 검출용 패킷 송신부는, 상기 통신 처리 장치의 종류가 포트 재사용인 경우에, 상기 검출용 패킷을 송신하는 상기 정보 처리 장치의 포트인 제1 포트의 위치와, 해당 검출용 패킷이 통과한 상기 통신 처리 장치의 포트인 제2 포트의 위치가 일치할 때까지, 그때까지 상기 검출용 패킷의 송신에 이용한 상기 정보 처리 장치의 포트와는 상이한 포트로부터 상기 검출용 패킷을 송신하고,
    상기 버블 패킷 송신부는 상기 제1 포트의 위치와 상기 제2 포트의 위치가 일치한 경우에서의 상기 제1 포트로부터 상기 버블 패킷을 송신하는, 정보 처리 장치.
  11. 청구항 1에 있어서, 상기 검출용 패킷 송신부는, 상기 통신 처리 장치의 종류가 포트 재사용인 경우에, 상기 버블 패킷의 송신 전, 혹은 후에, 상기 정보 처리 장치에서의 상기 버블 패킷이 송신되는 포트와 동일한 포트를 이용하여 상기 검출용 패킷을 송신하는, 정보 처리 장치.
  12. 청구항 1에 있어서, 상기 검출용 패킷 송신부는 상기 버블 패킷의 송신 전, 및 송신 후에, 각각 상이한 포트로부터 상기 검출용 패킷을 송신하고, 상기 버블 패킷의 송신 전에 송신하는 검출용 패킷과 상기 버블 패킷의 송신 후에 송신하는 검출용 패킷 중 어느 하나를, 상기 버블 패킷 송신부가 상기 버블 패킷을 송신하는 포트와 동일한 포트로부터 송신하는, 정보 처리 장치.
  13. 청구항 1에 있어서, 상기 검출용 패킷 송신부는, 상기 통신 처리 장치의 종류가 심메트릭계인 경우에 상기 버블 패킷의 송신 전, 및 송신 후에 상기 검출용 패킷을 송신하는, 정보 처리 장치.
  14. 청구항 13에 있어서, 상기 검출용 패킷 송신부는, 상기 통신 처리 장치의 종류가 심메트릭계인 경우에, 상기 정보 처리 장치에 있어서 새롭게 할당된 포트를 이용하여 상기 검출용 패킷을 송신하는, 정보 처리 장치.
  15. 청구항 12에 있어서, 상기 버블 패킷 송신부는 상기 버블 패킷 송신 포트의 위치를 검출할 수 없는 경우에, 상기 버블 패킷을 재차 송신하고,
    상기 검출용 패킷 송신부는 상기 버블 패킷 송신 포트의 위치를 검출할 수 없는 경우에, 상기 검출용 패킷을 재차 송신하고,
    재차 송신된 상기 버블 패킷 및 상기 검출용 패킷은, 상기 통신 처리 장치에서의 새롭게 할당된 포트를 통하여 송신되는, 정보 처리 장치.
  16. 청구항 1에 있어서, 상기 통신 처리 장치에 있어서의 포트 폭을 검출하기 위한 패킷인 포트 폭 검출용 패킷을, 상기 통신 처리 장치를 통하여 송신하는 포트 폭 검출용 패킷 송신부를 더 구비하고,
    해당 포트 폭 검출용 패킷이 통과한 상기 통신 처리 장치의 포트의 위치에 의거하여 검출된 상기 통신 처리 장치의 포트 폭을 이용하여, 상기 버블 패킷 송신 포트의 위치가 검출되는, 정보 처리 장치.
  17. 통신에 관한 처리를 행하는 통신 처리 장치를 통하여 통신을 행하는 정보 처리 방법으로서, 상기 통신 처리 장치에 송신 이력을 남기기 위한 패킷인 버블 패킷을, 상기 통신 처리 장치를 통하여 송신하는 버블 패킷 송신 단계와,
    상기 버블 패킷의 송신에 이용되는, 상기 통신 처리 장치의 포트인 버블 패킷 송신 포트의 위치를 검출하기 위해서 이용되는 패킷인 검출용 패킷을, 상기 통신 처리 장치의 종류에 따라 상기 검출용 패킷이 통과한 상기 통신 처리 장치의 포트인 검출용 패킷 송신 포트와 상기 버블 패킷 송신 포트가 동일해지거나 또는 상이하도록 상기 통신 처리 장치를 통하여 송신하는 검출용 패킷 송신 단계를 구비한 정보 처리 방법.
KR1020087007653A 2005-03-16 2005-07-25 정보 처리 장치, 포트 검출 장치, 정보 처리 방법 및 포트검출 방법 KR20080042909A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005074620A JP4665568B2 (ja) 2005-03-16 2005-03-16 情報処理装置、ポート検出装置、情報処理方法、及びポート検出方法
JPJP-P-2005-00074620 2005-03-16

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020067024366A Division KR20070023705A (ko) 2005-03-16 2005-07-25 정보 처리 장치, 포트 검출 장치, 정보 처리 방법 및 포트검출 방법

Publications (1)

Publication Number Publication Date
KR20080042909A true KR20080042909A (ko) 2008-05-15

Family

ID=36991404

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087007653A KR20080042909A (ko) 2005-03-16 2005-07-25 정보 처리 장치, 포트 검출 장치, 정보 처리 방법 및 포트검출 방법

Country Status (7)

Country Link
US (1) US7693160B2 (ko)
EP (1) EP1744500A1 (ko)
JP (1) JP4665568B2 (ko)
KR (1) KR20080042909A (ko)
CN (1) CN1969511A (ko)
TW (1) TW200635294A (ko)
WO (1) WO2006098045A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4665568B2 (ja) * 2005-03-16 2011-04-06 パナソニック株式会社 情報処理装置、ポート検出装置、情報処理方法、及びポート検出方法
JP2007257023A (ja) * 2006-03-20 2007-10-04 Nec Corp サーバ多重化システムおよびサーバ多重化方法
US20070253418A1 (en) * 2006-04-27 2007-11-01 D.S.P. Group Ltd. Routing path optimization between sip endpoints
JP4222397B2 (ja) * 2006-09-12 2009-02-12 村田機械株式会社 中継サーバ
US20080253383A1 (en) * 2007-04-13 2008-10-16 Microsoft Corporation Communicating using the port-preserving nature of symmetric network address translators
US7707294B2 (en) 2007-06-26 2010-04-27 Microsoft Corporation Edge traversal service dormancy
US8370919B2 (en) * 2007-06-26 2013-02-05 Microsoft Corporation Host firewall integration with edge traversal technology
JP2009089183A (ja) * 2007-10-01 2009-04-23 Brother Ind Ltd 情報処理装置及び情報処理プログラム
EP2432174B1 (en) * 2009-05-15 2018-09-19 Murata Machinery, Ltd. Relay communication system and first relay server
WO2011088609A1 (en) * 2010-01-19 2011-07-28 Nokia Corporation Evolved node b controlled centralized resource reuse for device-to-device and cellular users
EP2410698B1 (en) * 2010-07-19 2014-05-07 Alcatel Lucent A method for routing and associated routing device and destination device
CN102055627B (zh) * 2011-01-04 2012-06-13 深信服网络科技(深圳)有限公司 识别p2p应用连接的方法和装置
US20120311038A1 (en) 2011-06-06 2012-12-06 Trinh Trung Tim Proximity Session Mobility Extension
US10225354B2 (en) * 2011-06-06 2019-03-05 Mitel Networks Corporation Proximity session mobility

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001035229A1 (fr) * 1999-11-10 2001-05-17 Mitsubishi Denki Kabushiki Kaisha Terminal informatique, serveur, systeme d'affichage d'informations et procede d'affichage d'informations
US6687245B2 (en) * 2001-04-03 2004-02-03 Voxpath Networks, Inc. System and method for performing IP telephony
US7035271B1 (en) * 2001-04-24 2006-04-25 Atitania Ltd. Method and apparatus for generating unique ID packets in a distributed processing system
US7072337B1 (en) * 2002-01-25 2006-07-04 3Com Corporation System and method for resolving network addresses for network devices on distributed network subnets
JP4078594B2 (ja) * 2002-09-06 2008-04-23 ソニー株式会社 情報処理装置および方法、並びにプログラム
JP2004180003A (ja) 2002-11-27 2004-06-24 Kitt Peak:Kk 通信ネットワークシステムおよび通信の接続方法
US7031328B2 (en) * 2003-03-10 2006-04-18 Cisco Technology, Inc. Arrangement for traversing an IPv4 network by IPv6 mobile routers
US6865184B2 (en) * 2003-03-10 2005-03-08 Cisco Technology, Inc. Arrangement for traversing an IPv4 network by IPv6 mobile nodes
US7149225B2 (en) * 2003-03-10 2006-12-12 Cisco Technology, Inc. Arrangement for traversing an IPv4 network by IPv6 mobile nodes via a mobility anchor point
US7245622B2 (en) * 2003-03-27 2007-07-17 Microsoft Corporation Allowing IPv4 clients to communicate over an IPv6 network when behind a network address translator with reduced server workload
JP3741312B2 (ja) * 2003-03-28 2006-02-01 ソニー株式会社 ネットワークシステムおよび通信方法、情報処理装置および方法、並びにプログラム
JP4186676B2 (ja) * 2003-03-28 2008-11-26 ソニー株式会社 ネットワークシステムおよび通信方法、情報処理装置および方法、並びにプログラム
JP4029790B2 (ja) * 2003-07-09 2008-01-09 ブラザー工業株式会社 パケット通信制御装置及びパケット通信制御方法
JP2005117587A (ja) 2003-10-10 2005-04-28 Newrong Inc 通信方法
WO2005041500A1 (ja) * 2003-10-27 2005-05-06 Matsushita Electric Industrial Co., Ltd. 通信システム、情報処理装置、サーバ、および通信方法
EP1677465B1 (en) * 2003-11-07 2014-08-13 Panasonic Corporation Communication system, information processing apparatus and communication method
US8234383B2 (en) * 2003-11-07 2012-07-31 Panasonic Corporation Bubble packet port identification using detection packets
JP4269226B2 (ja) * 2003-11-14 2009-05-27 ソニー株式会社 情報通信システムおよび方法、情報処理装置および方法、プログラム並びに記録媒体
CA2557550A1 (en) * 2004-03-09 2005-09-22 Clique Communications Llc System and method for peer-to-peer connection of clients behind symmetric firewalls
JP3835462B2 (ja) * 2004-05-07 2006-10-18 松下電器産業株式会社 情報処理装置、及びバブルパケット送信方法
US7912046B2 (en) * 2005-02-11 2011-03-22 Microsoft Corporation Automated NAT traversal for peer-to-peer networks
JP4665568B2 (ja) * 2005-03-16 2011-04-06 パナソニック株式会社 情報処理装置、ポート検出装置、情報処理方法、及びポート検出方法
US7522618B2 (en) * 2005-03-18 2009-04-21 Panasonic Corporation Communication apparatus, communication system and communication method

Also Published As

Publication number Publication date
US20080225839A1 (en) 2008-09-18
JP2006261895A (ja) 2006-09-28
US7693160B2 (en) 2010-04-06
EP1744500A1 (en) 2007-01-17
CN1969511A (zh) 2007-05-23
TW200635294A (en) 2006-10-01
WO2006098045A1 (ja) 2006-09-21
JP4665568B2 (ja) 2011-04-06

Similar Documents

Publication Publication Date Title
KR20080042909A (ko) 정보 처리 장치, 포트 검출 장치, 정보 처리 방법 및 포트검출 방법
JP4708036B2 (ja) 通信システム、情報処理装置、サーバ、及び情報処理方法
KR100760802B1 (ko) 네트워크 주소가 변환되는 피어 투 피어 네트워크 통신
EP2051451A1 (en) Communication apparatus, communication method and communication system
KR20040053286A (ko) 네트워크 구성 평가
JP2005323033A (ja) 情報処理装置、及びバブルパケット送信方法
JP2006135591A (ja) 通信システム、情報処理装置、仲介サーバ、識別情報送信サーバ、通信方法及びプログラム
JP3933183B2 (ja) 通信システム、情報処理装置、サーバ、および通信方法
JP3933182B2 (ja) 通信システム、情報処理装置、サーバ、および通信方法
JP3849711B2 (ja) 通信システム、情報処理装置、サーバ、および通信方法
KR20070023705A (ko) 정보 처리 장치, 포트 검출 장치, 정보 처리 방법 및 포트검출 방법
JP4389886B2 (ja) 通信システム、情報処理装置、サーバ、および通信方法
US20080198851A1 (en) Information processing system including information processing apparatus and terminals, and information processing method for the same
JP4389885B2 (ja) 通信システム、情報処理装置、サーバ、および通信方法
KR101394579B1 (ko) Ip 네트워크에서의 직접 통신 제공 방법
JP2007324642A (ja) 情報処理システム、情報処理装置、サーバ、及び情報処理方法
JP4389994B2 (ja) 通信システム、情報処理装置、サーバ、および情報処理方法
JP4345751B2 (ja) 情報処理装置、及びバブルパケット送信方法
JP2009193538A (ja) コンテンツ伝送システム及び印刷装置特定方法
KR20120116238A (ko) Udp 푸시 데이터 전송 시스템 및 그 제어방법과, 그 시스템에 포함되는 통신 단말기 및 그 제어방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid