KR20010044464A - 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지전송 방법 및 시스템 - Google Patents

지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지전송 방법 및 시스템 Download PDF

Info

Publication number
KR20010044464A
KR20010044464A KR1020010009128A KR20010009128A KR20010044464A KR 20010044464 A KR20010044464 A KR 20010044464A KR 1020010009128 A KR1020010009128 A KR 1020010009128A KR 20010009128 A KR20010009128 A KR 20010009128A KR 20010044464 A KR20010044464 A KR 20010044464A
Authority
KR
South Korea
Prior art keywords
group
message
subscriber system
transmission
module
Prior art date
Application number
KR1020010009128A
Other languages
English (en)
Other versions
KR100430910B1 (ko
Inventor
김영구
김영철
Original Assignee
김영구
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 김영구 filed Critical 김영구
Priority to KR10-2001-0009128A priority Critical patent/KR100430910B1/ko
Priority to PCT/KR2001/000612 priority patent/WO2002069568A1/en
Publication of KR20010044464A publication Critical patent/KR20010044464A/ko
Application granted granted Critical
Publication of KR100430910B1 publication Critical patent/KR100430910B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]

Abstract

본 발명은 별도의 메시지 전송 서버를 사용하지 않고, Peer-to-Peer 형식으로 연결된 독립적인 메시지 전송 그룹 내에서 메시지를 전송하는 방법 및 시스템에 관한 것이다.
본 발명은 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서, 메시지 전송 그룹은 적어도 한 명의 사용자를 포함하고, 메시지 전송 그룹에 포함되는 사용자는 다른 메시지 전송 그룹에 속하는 사용자에게 메시지를 전송할 수 없도록 각 메시지 전송 그룹이 독립적인 관계를 가지는 적어도 하나의 독립형 메시지 전송 그룹으로 이루어진다. 독립형 메시지 전송 그룹은 동일한 메시지 전송 그룹에 가입한 적어도 한 명의 멤버를 관리하고, IP 어드레스를 이용하여 각 멤버 또는 모든 멤버에게 일괄적으로 메시지를 송신하는 서버 역할의 그룹 관리자 시스템과, 메시지 전송 그룹에 멤버로서 가입되어 상기 서버 역할을 하는 그룹 관리자 시스템으로부터 전송된 메시지를 수신하는 적어도 한 명의 클라이언트 역할의 그룹 가입자 시스템을 포함한다.

Description

지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지 전송 방법 및 시스템{GROUP-INDEPENDENT MESSAGE TRANSFER METHOD AND SYSTEM LENDING SPECIFIED APPLICATION MODULE}
본 발명은 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 그룹-독립형 메시지 전송 방법 및 시스템에 관한 것이다.
복수개의 독립된 네트워크가 상호 연결되어 이루어진 복잡한 네트워크를 인터네트워크(Internetwork)라 하고, 복수개의 독립된 네트워크를 하나의 통합된 네트워크로 연결하는 방법, 즉 독립된 각 네트워크들 사이의 연결 과정을 인터네트워킹(Internetworking)이라고 한다.
도 1은 인터네트워킹이 이루어지는 일반적인 경우의 구성도를 예로 들어 도시한 것이다.
도 1을 참조하면, 이더넷(Ethernet)이나 광 분산 데이터 인터페이스(Fiber Distributed Data Interface, 이하 FDDI라 칭한다), 토큰 링(Token Ring)과 같이 각각의 독립된 네트워크(12, 14, 16)를 연결하고, 이들 독립된 네트워크(12, 14, 16) 상호간에 데이터 전송을 담당하는 것이 인터네트워킹(10)이다.
소규모 지역 내에서의 데이터 전송을 위한 LAN(Local Area Network)과 같이 독립된 네트워크를 사용하는 사용자들은 정해진 지역 내에서 각각의 필요에 따라 서로 다른 네트워크를 사용할 수 있다. 즉, 이더넷(Ethernet : 12)이나, 토큰 링(14: Token Ring) 또는 FDDI(16) 등과 같은 네트워크를 LAN 구조로 사용하는 것이다. 이더넷(Ethernet : 12)은 베이스밴드(Baseband) 방식으로서, 10Mbps의 대역을 가지는 CSMA/CD(Carrier Sense Multiple Access with collision detection)방식과 100Mbps의 대역의 패스트 이더넷(Fast Ethernet), 그리고, 최근에 제안된 1Gbps 대역의 기가비트 이더넷(Gigabit Ethernet)으로 구분할 수 있다. 토큰 링(Token Ring : 14)은 토큰(Token)이라고 불리는 데이터 프레임(Data frame)에 데이터를 실어서, 한 컴퓨터에서 다른 컴퓨터로 데이터를 순차적으로 송신한다. 그리고, FDDI(16)는 100Mbps 속도의 토큰 패싱(Passing) 방법을 채택하며, 이중의 링 구조를 가지는 LAN으로서 광섬유를 전송 매체로 사용한다.
인터네트워킹을 이용하는 일반적인 예로서는 독립된 네트워크를 구성하는 LAN 사용자가 WAN(Wide Area Network)을 통해서 연결된 다른 LAN 사용자와 데이터를 주고받는 것을 들 수 있다. 이 경우에는 LAN과 WAN을 연결하는 것을 인터네트워킹이라고 할 수 있다.
이와 같은 인터네트워킹은 각각 독립된 네트워크들을 연결하기 때문에, 네트워크의 계층(Layer)별 서비스, 독립된 네트워크에서 사용하는 프로토콜(Protocol) 구조, 독립된 네트워크의 주소(Address) 구조, 데이터 전송 경로를 결정하는 라우팅(Routing) 및 전송하는 데이터 패킷(Packet)의 크기 등을 고려하여야 한다.
최근에는 이와 같이 독립된 네트워크를 사용하는 사용자가 멀리 떨어져있는 다른 네트워크에 접속하여 상호간에 데이터를 전송할 수 있도록 전 세계에 분포된 독립된 네트워크를 연결하는 인터넷(Internet)의 사용이 활성화되어 있다. 인터넷은 인터넷 프로토콜(Internet Protocol: 이하, IP라 칭한다) 어드레스로 구분되는 복수개의 단위 네트워크와 각 단위 네트워크에 구비된 개별적인 IP 어드레스를 갖는 복수의 호스트(Host)들 간에 전송 제어 규약/인터넷 규약(Transmission Control Protocol/Internet Protocol: 이하, TCP/IP라 칭한다)을 기반으로 한다. 또한, 인터넷은 LAN이나 공중 전화 교환망(Public Switched Telephone Network: PSTN) 등의 독립된 네트워크를 통하여 데이터 통신을 수행할 수 있는 데이터 통신 네트워크이다.
IP는 OSI(Open System Interface) 7 계층 구조에서 제 3 계층인 네트워크 계층(Network Layer)에 해당하는 것으로서, 네트워크에 종속적인 부분과 네트워크에 독립적인 부분이 결합되는 부분이다. 이러한 IP 어드레스는 인터넷 상에서 유일한 어드레스이다. IP 어드레스는 기본적으로 32 비트(bit)이며, 인터넷 상의 서브넷(Subnet)을 지칭하는 부분과 서브넷 상의 호스트를 지칭하는 부분으로 나눌 수 있다.
사용자를 연결하는 네트워크 모델은 중앙 집중식과 클라이언트/서버 모델, 사용자를 개인별로 연결하는 Peer-to-Peer 방식으로 구분할 수 있다.
중앙 집중식은 초기 네트워크 모델로서 호스트(Host)와 터미널(Terminal)로 구분하여 호스트와 터미널 사이에 최고의 수행 속도와 고장 방지(fault tolerance), 보안 기능을 제공하였다. 즉, 호스트는 복수의 터미널로부터 요구되는 일련의 작업에 대해 업무용 데이터에 대한 일괄된 조회 기능을 제공하고, 데이터의 무결성(data integrity)을 유지하며, 인가되지 않은 사용자의 접근을 차단하는 보안 기능을 확보하였다. 따라서, 호스트와 터미널 사이에 상호간의 관련 작업이 거의 이루어지지 않았다. 그러나, 이러한 중앙 집중식 환경은 변화에 즉각적 대응이 불가능하고, 이로 인한 서비스 지연이 문제가 되었다. 또한, PC를 터미널 장치로 활용하는 경우에, PC를 통한 마이크로 컴퓨팅 환경은 데이터 처리 과정에서 데이터 무결성 및 보안 기능에 문제가 있었다. 하지만, 이들은 상호간에 가지지 못한 장점을 가지고 있었기 때문에, 시간이 지나면서 공존의 길을 찾기 시작했는데 그것이 클라이언트/서버 모델이다.
이러한 클라이언트/서버 모델은 현재 인터넷 상에서 주로 구현되고 사용되는 모델로서, 서버 시스템의 자원 공유가 가능하다.
도 2는 일반적인 클라이언트/서버 모델의 구성도를 나타낸 것이다.
도 2를 참조하면, 클라이언트/서버 모델은 데이터를 보관하는 역할을 하는 서버(20)와 데이터를 요구하고 보여주는 역할을 하는 클라이언트(22, 24, 26)를 구분한다. 따라서, 업무는 데이터를 저장하고 제공하는 서버(20)에서의 작업(Back end)과 서버(20)에 특정 데이터를 요구하는 클라이언트(22, 24, 26)에서의 작업(Front end)으로 나누어 수행된다. 클라이언트(22, 24, 26)에서 서버(20)로 데이터를 요구하는 쿼리(Query)가 전송되면, 서버(20)는 데이터베이스(21)에서 해당하는 데이터를 추출하여, 요청된 작업을 수행하고 그 결과만을 네트워크를 통하여 클라이언트(22, 24, 26)에 제공한다.
이러한 클라이언트/서버 모델에서 서버(20)는 서비스의 제공자로서 항상 서비스의 요청을 기다리고 있어야 하고, 클라이언트(22, 24, 26)는 서버(20)에게 서비스를 요청하기 위한 연결 요청을 해야 하는 것과 같이, 상호 분리된 역할을 가진다. 또한, 클라이언트(22, 24, 26)와 서버(20)는 하드웨어(Hardware)에 종속되지 않는다. 즉, 클라이언트(22, 24, 26)와 서버(20)는 어떤 OS(Operating System)나 하드웨어를 사용하든지 서버(20)는 클라이언트(22, 24, 26)에게 동일한 서비스를 제공해야 한다. 그리고, 클라이언트/서버 시스템은 클라이언트(22, 24, 26)의 수를 늘이거나 서버(20)를 늘리는 등 그 규모를 늘이거나 줄이더라도 전체적인 시스템의 운영에는 아무런 영향이 없어야 한다.
이와 같이, 인터넷을 이용하여 사용자는 다른 나라에 있는 사람들과 서로 얼굴을 마주보며 대화를 할 수 있는 화상 회의도 가능하고, 필요한 정보를 전송하거나 이를 수신할 수도 있으며, 전자 메일(Electronic mail: e-mail)이나 메신저(Messenger)를 통하여 편지 및 메시지의 왕래도 가능하다. 뿐만 아니라, 서버가 구비된 웹 사이트를 통하여 텍스트 파일, 이미지 파일, 동영상 등 각종 데이터를 제공할 수 있고, 사용자는 무한한 정보의 바다로부터 원하는 정보를 검색할 수 있게 되었다.
클라이언트/서버 모듈에서 사용자들 사이의 메시지 전송은 메시지 서버 또는 메일 서버를 중심으로 여기에 연결된 복수의 사용자들 상호간에 메시지 및 메일을 전송할 수 있도록 한다. 즉, 메시지를 전송하고자 하는 송신자는 자신이 연결된 송신 서버로부터 수신자가 연결된 수신 서버로 메시지를 전송하고, 수신자는 수신 서버로부터 자신에게 전송된 메시지를 가져오게 된다.
도 3은 서버를 중심으로 사용자들 사이에 전자 메일을 전송하는 경우의 구성도를 나타낸 것이다.
도 3을 참조하면, 전자 메일을 전송 또는 수신하는 사용자(32, 38)는 각각 전자 메일의 전송을 위하여 메일 서버(34, 36)에 연결된다. 이 때, 메일 서버(34, 36)는 사용자(32, 38)로부터 제공된 전자 메일의 수신 및 송신을 위하여 POP(Post Office Protocol) 서버 및 SMTP(Simple Mail Transfer Protocol) 서버를 각각 사용하며, 인터넷(30)을 통하여 상호간에 연결된다.
POP 서버는 말 그대로 메일의 수신을 위한 프로토콜이다. 이 프로토콜은 TCP 세션(Session)의 109번 포트를 쓰고 있으며, 같은 포트를 쓰면서 조금 진보한 POP2가 있고 최근 많이 사용되는 POP3은 110번 포트를 사용한다. 그리고, SMTP 서버는 메일 송신 서버로서, 응용 프로그램 계층(Application Layer)에 존재한다. 이 때, SMTP는 안정적인 메일의 전송을 위해 TCP 세션을 사용한다.
도 4는 이러한 메일 서버를 사용하여 송신자가 수신자에게 전자 메일을 전송하는 과정을 나타낸 예시도이다.
도 4를 참조하면, 송신자(32)가 전자 메일을 작성하여 송신자 측의 메일 송신 서버(34)로 전송하면, 메일 송신 서버(34)는 송신자가 전송한 전자 메일을 저장하고, SMTP 서버를 통하여 수신자 측의 메일 수신 서버(36)로 전송한다. 이 때, 메일 송신 서버(34)에서는 수신자(38)가 연결된 메일 수신 서버(36)의 IP 어드레스를 이용하여 인터넷(30)을 구성하는 수많은 라우터(Router)를 통하여 전자 메일을 전송한다. 여기에서, 메일 송신 서버(34)는 메일 전송 과정에서 각 사용자에 따라 우선권(Priority)을 달리 부여하거나 일정 크기 이상으로 메일을 축적한 후에 한꺼번에 전송할 수 있다. 그에 따라, 사용자가 이미 작성한 전자 메일이라 하더라도 메일 송신 서버(34)에서 메일이 발송되기까지 상당한 시간이 소요되는 경우가 많다. 전송 과정에서 전자 메일은 최단 거리로 전송될 수도 있고, 수많은 라우터를 거치면서 먼 거리를 돌아서 전송될 수도 있다. 그러나, 메일 수신 서버(36)까지 전송되는데 소요되는 시간은 일반적으로 500 msec 내외이다. 메일 수신 서버(36)는 수신된 전자 메일을 SMTP를 통하여 수신하고, POP3을 통하여 해당하는 수신자(38)에게 제공한다. 이 때, SMTP 서버에서 수신한 전자 메일을 POP3 서버로 라우팅 하는데 소요되는 시간은 30 초에서 몇 분이 소요된다. 수신자(38)는 수신측 메일 서버, 즉 POP3 서버를 통하여 메일 수신 여부를 체크할 수 있는데, 이 때 메일 수신 여부를 체크하는 시간 간격은 수신자(38)가 사용하는 메일 프로그램의 설정에 따라 달라질 수 있다.
따라서, 송신자(32)가 전송하는 메일이 수신자(38)에게 도달하는데 소요되는 시간은 메일 송신 서버(34)에서 설정된 사용자별 우선권이나 메일 전송 시간과 메일 수신 서버(36)의 라우팅 시간에 크게 좌우된다. 그에 따라, 수신자(38)는 송신자(32)가 전송한 메일을 발송 후 몇 분 안에 수신하기도 하고, 몇 일이 지난 후에 수신하기도 한다. 결국, 이러한 클라이언트/서버 모델을 사용하여 메시지를 전송하는 경우에는 신속하고 정확한 메시지 전송이 어렵다. 특히, 증권 정보나 뉴스 속보와 같이 시간을 다투는 소식을 전하는 경우에는 더욱 신뢰성이 떨어지게 된다.
그리고, 이와 같이, 서버를 통한 메시지 전송 시스템은 네트워크에 연결된 리소스(Resource)들 사이의 메시지 전송을 제어하기 위하여 마스터 컨트롤 프로그램(Master Control Program: MCP)을 구비한다. 예를 들어, 전자 메일의 전송을 관리하는 메일 서버에서는 모든 메시지를 마스터 컨트롤 프로그램을 통하여 전달하기 때문에, 마스터 컨트롤 프로그램이 타이밍(Timing), 라우팅(Routing) 또는 독립된 네트워크의 호환성(Compatibility)을 유지하기 위한 문지기(Gate keeper) 역할을 한다. 결국, 복수의 리소스들 사이에 통신을 유지하기 위해서는 마스터 컨트롤 프로그램이 요구된다. 또한, 서버는 별도의 서버용 OS(Operating System)를 요구하고 있으며, 일반적으로 개인용 컴퓨터에 설치되는 Windows 98과 같은 OS를 사용해서는 서버를 구축할 수 없다.
결국, 문지기 역할을 하는 서버는 클라이언트들 사이에서 이루어지는 데이터의 전송을 관리하기 때문에, 전송 메시지 또는 데이터에 대한 보안을 확보하기가 어렵다.
한편, 이와는 달리 별도의 서버를 구비하지 않고 사용자 사이에 직접적인 연결을 설정함으로써, 직접 메시지나 데이터를 주고받을 수 있는 방식이 Peer-to-Peer 모델이다.
도 5는 Peer-to-Peer 모델의 구성도를 나타낸 것이다.
도 5를 참조하면, Peer-to-Peer 모델은 별도의 서버를 구비하지 않고, 상호간에 직접 연결된 컴퓨터(52, 54)끼리 데이터 및 메시지를 전송한다. 즉, 각 컴퓨터(52, 54)가 동일한 레벨에서 메시지를 송신하고 수신하는 역할을 동시에 수행하는 것이다. 일반적으로 클라이언트/서버 모델은 같은 장소에 있지 않은 10명 이상의 사용자를 대상으로 하기 때문에, 저장 용량과 계산 능력이 충분한 컴퓨터를 서버로 설치 운용한다. 반면에, Peer-to-Peer 네트워크는 워크 그룹(Workgroup)으로도 불리며, 주로 10대 미만의 컴퓨터가 같은 장소에 있는 경우에 이를 네트워킹 하는데 사용된다. Peer-to-Peer 네트워크에 대한 보안 방법으로 가장 많이 사용되는 것은 공유 레벨 보안으로서, 특정 디렉토리, 파일 및 프린터와 같은 리소스(Resource)에 대해서 비밀 번호를 지정하여야만 억세스(Access)가 가능하다.
이와 같이, Peer-to-Peer로 컴퓨터를 연결하는 경우에, 전자 메일을 전송하는데 소요되는 시간은 POP 서버나 SMTP 서버에서 라우팅 하는데 소요되는 시간이 줄어들기 때문에, 메일이나 메시지를 전송하는데 500 msec 이하의 시간이 소요되며, 메시지나 메일이 전송 중간에서 사라지는 일도 없게 된다. 따라서, 이러한 Peer-to-Peer 모델은 같은 지역의 LAN 내부에서 업무에 종사하는 사용자 컴퓨터를 연결하는 경우에 주로 사용되어 왔다.
그러나, 이러한 일대일 형태의 Peer-to-Peer 모델은 클라이언트/서버 모델에 비하여 데이터 전송 속도 및 신뢰성이 높고, 메시지 및 데이터의 보안을 유지할 수 있다. 반면에, 지정된 사용자에 대한 메시지나 데이터 전송을 단일 사용자에 대하여 각각 관리하고, 사용자에 대한 통합적인 관리가 이루어지지 않기 때문에 효율성이 떨어지고 각 사용자에 대한 관리가 어려운 문제점이 있다.
그러나, 최근에는 인터넷 상에서 Peer-to-Peer 방식으로 사용자 컴퓨터를 연결하고, 각 사용자들끼리 직접 메시지 및 데이터를 주고받는 서비스가 크게 활성화되고 있다.
그 대표적인 서비스가 Napster와 소리바다이다.
Napster 프로그램은 Napster 사에서 제작한 것으로, Napster 프로그램을 이용하여 Napster 서버에 접속한 사용자들을 서로 연결해주는 프로그램이다. 즉, Napster 프로그램을 통하여 Napster 서버에 접속한 사용자로부터 사용자 정보 및 해당하는 사용자가 보유하고 있는 mp3 파일을 검색하여 이를 다른 사용자가 확인할 수 있도록 제공한다. 따라서, Napster 프로그램을 사용하는 사용자는 Napster 프로그램을 사용하는 다른 사용자에 관한 정보 및 사용자가 보유하고 있는 mp3 파일을 실시간으로 확인할 수 있다. 특히, Napster 서버는 사용자로부터 mp3 파일을 다운받아 따로 보관하지 않고, 사용자가 보유하고 있는 mp3 파일이나 해당하는 사용자에 대한 정보만 제공한다.
한 사용자가 다른 사용자를 선택하여 메시지나 mp3 파일 전송을 원하는 경우에는, 다른 사용자의 IP 정보를 이용하여 직접 선택된 사용자와 연결한다. 따라서, 사용자는 Napster 서버를 통하지 않고, 선택된 사용자와 메시지를 주고받거나 필요한 데이터를 바로 전송받을 수 있다.
즉, Napster 프로그램을 사용하는 사용자는 일단 연결을 원하는 다른 사용자를 선택하면, 이들과 Peer-to-Peer로 연결을 설정한 다음 실시간으로 메시지 전송 및 데이터 전송이 가능하다. 이러한 Napster 프로그램은 Napster 사의 웹 사이트 www.napster.com에서 확인할 수 있다.
소리바다 역시 Napster 프로그램과 비슷한 기능을 담당하는 것으로, 서버에 접속한 사용자가 확인되면, 이들 소리바다 프로그램을 사용하는 사용자 사이의 메시지 전송 및 데이터 전송은 실시간으로 이루어진다. 소리바다 프로그램에 대한 내용은 소리바다 홈페이지 www.soribada.com에서 확인 가능하다.
도 6은 Napster나 소리바다와 같은 메시지 및 데이터 전송 과정을 나타낸 도면이다.
도 6을 참조하면, 사용자(62, 64)는 인터넷을 통하여 서버(60)에 접속한다. 이 때, 각 사용자(62, 64)는 서버(60)에 접속한 다른 사용자의 IP 어드레스 및 사용자 정보를 확인할 수 있다. 그리고, 각 사용자(62, 64)는 mp3 파일이나 이미지 파일과 같이 자신이 보유하고 있는 데이터를 다른 사용자가 열람하도록 디렉토리를 오픈시킬 수 있다. 따라서, 각 사용자(62, 64)는 다른 사용자의 정보를 확인하고 메시지나 데이터 전송을 희망하는 사용자를 선택하고, 서버(60)를 거치지 않고 선택된 사용자의 IP 어드레스를 이용하여 직접 연결한다. 일단 사용자(62, 64)끼리 연결이 설정되면, 연결된 사용자(62, 64)들 사이에 직접 메시지 및 데이터 전송이 이루어진다.
이 때, 각 사용자(62, 64)가 서버(60)에 접속한 다른 사용자의 정보를 확인하기 위해서, 서버(60)는 인터넷을 통하여 접속된 사용자(62, 64)와의 세션(Session)을 유지하게 된다. 이를 통하여, 각 사용자(62, 64)는 다른 사용자의 접속 여부를 확인할 수 있다. 일반적으로, 서버(60)는 접속된 사용자(62, 64)와의 세션을 유지하기 위해서 1Mbyte의 메모리 용량을 할당하게 된다. 그에 따라, 서버(60)에 접속하는 사용자(62, 64)의 수가 증가할수록 서버(60)에서 사용되는 메모리 용량이 증가하게 되고, 동시에 많은 사용자가 접속하는 경우에 서버(60)에서의 데이터 처리 속도가 감소하게 된다.
이와 같은 방식은 클라이언트/서버 모델과 Peer-to-Peer 모델을 결합한 것으로, 서버에 접속한 사용자가 확인되면 지정된 사용자와 직접 연결하여 메시지 및 데이터를 전송하는 방식이다. 이러한 방법은 IP 어드레스를 사용하기 때문에, 서비스를 이용할 수 있는 사용자는 공인된 IP 어드레스를 사용하는 사용자에게 한정되고, 그밖에 프록시(Proxy) 서버나 LAN 내부에서 사설 IP 어드레스를 사용하는 경우에는 이러한 서비스를 이용할 수 없다. 사설 IP 어드레스는 REC 1918에서 규정하고 있는 것으로, 사용자가 로컬(Local)로 자유로이 사용할 수 있도록 지정되어 있는 어드레스 블록이다. 구체적으로는 10. 0. 0. 0. 부터 10. 255. 255. 255. 까지의 IP 어드레스, 172. 16. 0. 0. 부터 172. 31. 255. 255. 까지의 IP 어드레스 및 192. 168. 0. 0 부터 192. 168. 255. 255. 까지의 IP 어드레스를 포함하는 3 블록이 여기에 해당한다.
이와 같이, Napster나 소리바다와 같은 경우에는 사용자가 메시지 또는 데이터를 전송하기 위한 그룹을 형성하기 위해서는 별도의 서버가 요구되며, 서버를 이용하여 네트워크를 구성하는 경우에는 각 사용자가 서버에 접속하는 과정을 거치기 때문에, 사용자들 사이에 완벽한 보안을 유지할 수 없게 된다.
또한, POP 서버 또는 SMTP 서버를 통하여 전송되는 메시지는 우선 순위에 따라 전달 속도가 달라지기 때문에, 시간을 다투는 내용을 전달하는 사용자에 대해서 만족을 주지 못하고 있다.
또한, 서로 다른 언어를 사용하는 사용자들 사이에서 메시지를 전송하는 경우에, 각 사용자는 언어의 차이로 인하여 메시지를 전달하기가 어렵고, 메시지를 전송하더라도 상대방의 언어까지 고려하여야 하기 때문에 실제적인 메시지 전송이 어려운 것이 사실이다.
또한, 지금까지의 메시지 전송 시스템은 텍스트와 같은 단순한 메시지 전송에만 한정되어 있기 때문에, 워드 프로세서와 같은 문서 처리 기능이나 그 밖의 어플리케이션에 대한 기능을 함께 사용하지 못하고 있다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 복수의 사용자를 Peer-to-Peer 형태로 연결하고, 각 사용자가 메시지 전송 그룹을 형성하거나 그룹에 포함될 수 있도록 함으로써 그룹의 서버 및 클라이언트 역할을 동시에 수행할 수 있는 그룹-독립형 메시지 전송 방법 및 시스템을 제공하는데 그 목적이 있다.
또한, 본 발명은 번역 기능을 갖는 번역 모듈을 응용 모듈로 사용함으로써, 서로 다른 언어를 사용하는 사용자들 사이에서, 서버 역할을 하는 그룹 관리자로부터 전송된 메시지를 클라이언트 역할을 하는 그룹 가입자에게 전송하고, 그룹 가입자가 사용하는 언어로 번역하여 디스플레이할 수 있는 메시지 전송 방법 및 시스템을 제공하는데 그 목적이 있다.
또한, 본 발명은 메시지를 전송하기 위한 모듈 이외의 다른 응용 모듈, 예컨대 음성 모듈, 문서 처리 모듈, 채팅 모듈이나 번역 모듈에서 제공하는 기능을 호출하여 이를 사용할 수 있도록 함으로써, 텍스트 메시지를 전송하는 경우에 있어서의 고속 데이터 전송 속도를 유지하면서 객체 모듈의 기능을 사용할 수 있는 메시지 전송 방법 및 시스템을 제공하는데 그 목적이 있다.
도 1은 인터네트워킹이 이루어지는 일반적인 경우의 구성도.
도 2는 일반적인 클라이언트/서버 모델의 구성도.
도 3은 서버를 중심으로 사용자들 사이에 전자 메일을 전송하는 경우의 구성도.
도 4는 메일 서버를 사용하여 송신자가 수신자에게 전자 메일을 전송하는 과정을 나타낸 예시도.
도 5는 Peer-to-Peer 모델의 구성도.
도 6은 Napster나 소리바다와 같이 웹 서버를 사용하는 Peer-to-Peer 방식의 메시지 및 데이터 전송 과정을 나타낸 도면.
도 7a는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템의 구성도.
도 7b는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에서, 사용자의 서버 또는 클라이언트 역할에 따른 구성의 예시도.
도 8은 동일한 메시지 전송 그룹에 속하는 그룹 관리자와 그룹 가입자 사이의 메시지 전송 과정을 나타낸 흐름도.
도 9a는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 사용자가 메시지 전송 그룹의 멤버로 가입하기 위하여 사용자 정보를 입력하는 경우의 화면 예시도.
도 9b는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 메시지 전송 그룹의 멤버로 가입된 그룹 가입자가 자신이 가입한 메시지 전송 그룹을 관리하는 경우의 화면 예시도.
도 10은 서버 역할을 하는 그룹 관리자가 메시지 전송 그룹에 가입된 멤버의 등록 정보 및 접속 상태를 확인하는 화면 예시도.
도 11은 본 발명의 메시지 전송 시스템에서 그룹 관리자 또는 그룹 가입자가 통상적으로 사용할 수 있는 컴퓨터 시스템의 블록도.
도 12는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 방법의 흐름도.
도 13은 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템의 구성도.
도 14는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에서 클라이언트 역할을 하는 그룹 가입자의 화면 예시도.
도 15는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 메시지 전송 그룹에서 서버 역할을 하는 그룹 관리자가 그룹 내의 그룹 가입자에게 메시지를 전송하는 경우의 화면 예시도.
도 16은 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 추가적으로 호출 가능한 응용 모듈의 구성도.
도 17은 본 발명의 그룹-독립형 메시지 전송 시스템에 있어서, 응용 모듈을 함께 구비하는 경우의 시스템 구성도.
도 18은 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 메시지 전송 그룹에 속하는 그룹 가입자가 그룹 관리자에게 접속을 요청하는 경우에 전송되는 데이터의 포맷을 나타낸 도면.
도 19는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 서버 역할을 하는 그룹 관리자가 복수의 그룹 가입자에게 메시지를 전송하는 경우의 데이터 포맷을 나타낸 도면.
도 20은 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 클라이언트의 역할을 하는 그룹 가입자가 메시지 전송 그룹에 속하는 다른 그룹 가입자에게 메시지를 전송하는 경우의 데이터 포맷을 나타낸 도면.
도 21은 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 메시지 전송 기능 이외에 응용 모듈을 함께 사용하여 메시지를 전송하는 경우의 데이터 포맷을 나타낸 도면.
(도면의 주요 부분에 대한 부호의 명칭)
G1, G2, G3 : 메시지 전송 그룹 70, 72, 74, 76, 78: 사용자
100: 컴퓨터 시스템 110: 메모리 시스템
112: 메인 메모리 114: 보조 메모리
120: CPU 122: ALU
124: 레지스터 126: 제어부
130: 입력 장치 140: 출력 장치
200: 메시지 전송 시스템 202: 하이 레벨 명령어 처리부
210: 메시지 송신부 211: 접속 화면 제어 모듈
212: 멤버 관리 모듈 213: 메시지 수신 화면 제어 모듈
231: 메시지 수신 화면 제어 모듈 232: 사용자 정보 관리 모듈
233: 메시지 수신 모듈 240: 데이터베이스
300: 응용 모듈 302: 음성 처리 모듈
304: 번역 모듈 306: 채팅 모듈
308: 문서 처리 모듈 192: 응용 프로그램 인터페이스
250: 응용 모듈 제어부 251: 음성 모듈 매핑부
252: 음성 모듈 인터페이스부 253: 문서 처리 모듈 매핑부
254: 문서 처리 모듈 인터페이스부 255: 채팅 모듈 매핑부
256: 채팅 모듈 인터페이스부 257: 번역 모듈 매핑부
258: 번역 모듈 인터페이스부
상기한 목적을 달성하기 위하여, 본 발명의 그룹-독립형 메시지 전송 시스템은 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서, 메시지 전송 그룹은 적어도 한 명의 사용자를 포함하고, 메시지 전송 그룹에 포함되는 사용자는 다른 메시지 전송 그룹에 속하는 사용자에게 메시지를 전송할 수 없도록 각 메시지 전송 그룹이 독립적인 관계를 가지는 적어도 하나의 독립형 메시지 전송 그룹으로 이루어지되, 상기 독립형 메시지 전송 그룹은 동일한 메시지 전송 그룹에 가입한 적어도 한 명의 멤버를 관리하고, IP 어드레스를 이용하여 각 멤버 또는 모든 멤버에게 일괄적으로 메시지를 송신하는 서버 역할의 그룹 관리자와, 메시지 전송 그룹에 멤버로서 가입되어 상기 서버 역할을 하는 그룹 관리자로부터 전송된 메시지를 수신하는 적어도 한 명의 클라이언트 역할의 그룹 가입자를 포함할 수 있다.
상기 그룹 관리자는 적어도 하나의 독립형 메시지 전송 그룹을 형성할 수 있다.
상기 그룹 가입자는 적어도 하나의 독립형 메시지 전송 그룹에 가입할 수 있다.
또한, 본 발명의 그룹-독립형 메시지 전송 방법은 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 방법에 있어서, 메시지 전송 그룹 내에서 서버 역할을 하기 위한 그룹 관리자에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 한명의 그룹 가입자를 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계와, 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자로서 가입 승인을 결정하는 단계와, 독립형 메시지 전송 그룹에 가입된 적어도 한 명의 그룹 가입자로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자와의 연결 세션을 종료하는 단계와, 메시지 작성 윈도우를 통하여, 독립형 메시지 전송 그룹에 속하는 적어도 한 명의 그룹 가입자에게 전송하기 위한 메시지를 작성하는 단계와, 메시지를 전송 받을 적어도 한 명의 그룹 가입자에 대한 세션을 개방하고, IP 어드레스를 이용하여 해당하는 그룹 가입자에게 작성된 메시지를 전송하는 단계를 포함할 수 있다.
상기 가입 요청 신호는 가입을 요청하는 사용자의 IP 어드레스, 포트 번호, 아이디, 패스워드, 성명, E-메일 주소 또는 연락처 정보 중 적어도 하나를 포함할 수 있다.
상기 메시지를 작성하는 단계는 응용 프로그램 인터페이스를 이용하여 메시지 작성에 응용 가능한 응용 모듈을 호출하는 단계와, 호출된 응용 모듈을 사용하여 메시지를 작성하는 단계와, 상기 작성된 메시지에 사용된 응용 모듈 정보를 첨부하는 단계를 포함할 수 있다.
상기 응용 모듈은 번역 모듈, 워드 프로세서 모듈, 채팅 모듈, 음성 처리 모듈, 이미지 처리 모듈 또는 화상 처리 모듈 중 적어도 하나를 포함할 수 있다.
상기 응용 모듈을 호출하는 단계는 상기 메시지 작성 윈도우를 통하여 호출된 응용 모듈을 사용할 수 있도록, 응용 모듈의 세션을 메시지 작성 윈도우로 링크시킬 수 있다.
상기 응용 모듈을 호출하는 단계는 서로 다른 포트 번호를 이용하여 각 응용 모듈을 호출할 수 있다.
상기 응용 모듈 정보는 그룹 관리자가 호출한 응용 모듈 코드와, 호출된 응용 모듈의 기능 중에서 그룹 관리자가 사용한 기능을 표시하는 코드와, 그룹 관리자가 사용하는 언어를 나타내는 언어 코드 중 적어도 하나를 포함할 수 있다.
상기 메시지를 전송하는 단계에서, 전송되는 메시지 데이터는 아스키(ASCII) 코드로 구성될 수 있다.
상기 메시지를 전송하는 단계에서, 전송되는 메시지는 에러 체크 데이터 또는 전송 오류 확인 데이터를 더 포함할 수 있다.
본 발명의 그룹-독립형 메시지 전송 방법은 전송 메시지에 에러가 발생하거나, 전송 오류가 발생하는 경우에 해당하는 그룹 가입자에게 메시지를 재전송하는 단계를 더 포함할 수 있다.
또한, 본 발명의 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지 전송 방법은 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 방법에 있어서, 메시지 전송 그룹 내에서 서버 역할을 하기 위한 그룹 관리자에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 한 명의 그룹 가입자를 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계와, 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자로서 가입 승인을 결정하는 단계와, 독립형 메시지 전송 그룹에 가입된 적어도 한 명의 그룹 가입자로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자와의 연결 세션을 종료하는 단계와, 메시지 작성 윈도우를 통하여 구현되도록, 응용 프로그램 인터페이스를 이용하여 메시지 작성에 사용할 수 있는 응용 모듈을 호출하는 단계와, 상기 호출된 응용 모듈을 사용하여 독립형 메시지 전송 그룹에 속하는 적어도 한 명의 그룹 가입자에게 전송하기 위한 메시지를 작성하는 단계와, 상기 메시지에 메시지 작성에 사용된 응용 모듈 정보를 첨부하는 단계와, 메시지를 전송 받을 적어도 한 명의 그룹 가입자에 대한 세션을 개방하고, IP 어드레스를 이용하여 해당하는 그룹 가입자에게 작성된 메시지를 전송하는 단계를 포함할 수 있다.
상기 응용 모듈은 번역 모듈, 워드 프로세서 모듈, 채팅 모듈, 음성 처리 모듈, 이미지 처리 모듈 또는 화상 처리 모듈 중 적어도 하나를 포함할 수 있다.
또한, 본 발명의 독립형 메시지 전송 그룹 내에서 클라이언트 역할을 하는 그룹 가입자들 사이에 메시지를 전송하는 그룹-독립형 메시지 전송 방법은 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 방법에 있어서, 메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 한 명의 그룹 가입자를 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계와, 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자로서 가입 승인을 결정하는 단계와, 독립형 메시지 전송 그룹에 가입된 적어도 한 명의 그룹 가입자로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자와의 연결 세션을 종료하는 단계와, 독립형 메시지 전송 그룹에 속하는 제 1 그룹 가입자가 동일한 메시지 전송 그룹에 속하는 제 2 그룹 가입자의 IP 어드레스를 그룹 관리자를 통하여 확인하는 단계와, 제 1 그룹 가입자가 메시지 작성 윈도우를 통하여 메시지를 작성하는 단계와, IP 어드레스를 이용하여 제 2 그룹 가입자에게 작성된 메시지를 전송하는 단계를 포함할 수 있다.
또한, 본 발명의 독립형 메시지 전송 그룹 내에서 비공인 IP 어드레스를 가지는 그룹 가입자에게 메시지를 전송하는 그룹-독립형 메시지 전송 방법은 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 방법에 있어서, 공인 IP 어드레스를 사용하며, 메시지 전송 그룹 내에서 서버 역할을 하기 위한 그룹 관리자에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 한 명의 그룹 가입자를 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계와, 비공인 IP 어드레스를 사용하는 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자로서 가입 승인을 결정하는 단계와, 독립형 메시지 전송 그룹에 가입된 비공인 IP 어드레스를 사용하는 적어도 한 명의 그룹 가입자로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자의 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자와의 연결 세션을 유지하는 단계와, 메시지 작성 윈도우를 통하여, 독립형 메시지 전송 그룹에 속하는 적어도 한 명의 그룹 가입자에게 전송하기 위한 메시지를 작성하는 단계와, 상기 작성된 메시지를 수신할 대상에 포함되며, 비공인 IP 어드레스를 가지는 그룹 가입자가 연결 세션을 통하여 일정 시간 간격으로 메시지를 확인하는 과정에서, 메시지 작성을 확인한 경우에 해당하는 그룹 가입자가 작성된 메시지를 다운받을 수 있도록 승인하는 단계를 포함할 수 있다.
또한, 본 발명의 그룹-독립형 메시지 전송 시스템은 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서, 메시지 전송 그룹 내에서 서버 역할을 하기 위한 그룹 관리자에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지는 적어도 하나의 독립형 메시지 전송 그룹을 구성하고, 독립형 메시지 전송 그룹에 가입되어 클라이언트 역할을 하는 적어도 한 명의 그룹 가입자에 관한 사용자 정보를 관리하는 메시지 전송 그룹 관리 모듈과, 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자로서 가입 승인을 결정하는 가입자 관리 모듈과, 독립형 메시지 전송 그룹에 가입된 적어도 한 명의 그룹 가입자로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장한 후에 그룹 가입자와의 연결 세션을 종료하는 세션 관리 모듈과, 메시지 작성 윈도우를 통하여, 독립형 메시지 전송 그룹에 속하는 적어도 한 명의 그룹 가입자에게 전송하기 위한 메시지를 작성하고, IP 어드레스를 이용하여 메시지를 전송 받을 적어도 한 명의 그룹 가입자에 대한 세션을 개방하여 작성된 메시지를 해당하는 그룹 가입자에게 전송하는 메시지 처리 모듈을 포함할 수 있다.
상기 그룹-독립형 메시지 전송 시스템은 메시지 작성에 이용될 수 있는 적어도 하나의 응용 모듈과, 상기 응용 모듈의 기능을 호출할 수 있도록 사용자의 입력 명령을 해당하는 응용 모듈에서 인식할 수 있는 명령으로 디코딩하는 응용 프로그램 인터페이스부와, 상기 응용 프로그램 인터페이스부를 통하여 제공된 명령을 하위 레벨의 명령어로 매핑시켜서 해당하는 응용 프로그램을 호출하는 응용 모듈 제어부를 더 포함할 수 있다.
상기 응용 모듈은 번역 모듈, 워드 프로세서 모듈, 채팅 모듈, 음성 처리 모듈, 이미지 처리 모듈 또는 화상 처리 모듈 중 적어도 하나를 포함할 수 있다.
상기 응용 모듈 제어부는 하이 레벨 명령어 처리부를 통하여 제공된 하이 레벨 명령을 해당하는 응용 모듈에서 처리 가능한 하위 레벨 명령으로 매핑시키는 명령어 레벨 매핑부와, 상기 명령어 레벨 매핑부를 통하여 제공된 하위 레벨 명령을 해당하는 응용 모듈에서 실행되도록, 인터페이스 역할을 하는 모듈 인터페이스부를 포함할 수 있다.
상기 그룹-독립형 메시지 전송 시스템은 호출된 응용 모듈이 메시지 작성 윈도우를 통하여 표시될 수 있도록, 응용 모듈의 세션을 메시지 작성 윈도우로 링크시키는 모듈 링크부를 더 포함할 수 있다.
상기 응용 모듈 제어부는 서로 다른 포트 번호를 사용하여 각 응용 모듈을 호출할 수 있다.
상기 메시지 처리 모듈은 그룹 관리자가 호출한 응용 모듈을 표시하는 응용 모듈 코드, 호출된 응용 모듈의 기능 중에서 그룹 관리자가 사용한 기능을 표시하는 기능 코드, 또는 그룹 관리자가 사용하는 언어를 나타내는 언어 코드 중 적어도 하나를 메시지에 첨부하는 코드 처리 모듈을 더 포함할 수 있다.
상기 메시지는 아스키(ASCII) 코드로 구성되어 전송될 수 있다.
상기 메시지는 에러 체크 데이터 또는 전송 오류 확인 데이터를 더 포함할 수 있다.
상기 그룹-독립형 메시지 전송 시스템은 전송 메시지에 에러가 발생하거나, 전송 오류가 발생하는 경우에 해당하는 그룹 가입자에게 메시지를 재전송하는 메시지 전송 제어 모듈을 더 포함할 수 있다.
또한, 본 발명의 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지 전송 시스템은 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서, 메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지는 적어도 하나의 독립형 메시지 전송 그룹을 구성하고, 독립형 메시지 전송 그룹에 가입되어 클라이언트 역할을 하는 적어도 한 명의 그룹 가입자에 관한 사용자 정보를 관리하는 메시지 전송 그룹 관리 모듈과, 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자로서 가입 승인을 결정하는 가입자 관리 모듈과, 독립형 메시지 전송 그룹에 가입된 적어도 한 명의 그룹 가입자로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장한 후에 그룹 가입자와의 연결 세션을 종료하는 세션 관리 모듈과, 메시지 작성에 이용될 수 있는 적어도 하나의 응용 모듈과, 상기 응용 모듈의 기능을 호출할 수 있도록, 사용자의 입력 명령을 해당하는 응용 모듈에서 인식할 수 있는 명령으로 디코딩하는 응용 프로그램 인터페이스부와, 상기 응용 프로그램 인터페이스부를 통하여 제공된 명령을 하위 레벨의 명령어로 매핑시켜서 해당하는 응용 프로그램을 호출하는 응용 모듈 제어부와, 메시지 작성 윈도우를 통하여, 독립형 메시지 전송 그룹에 속하는 적어도 한 명의 그룹 가입자에게 전송하기 위한 메시지를 작성하고, IP 어드레스를 이용하여 메시지를 전송 받을 적어도 한 명의 그룹 가입자에 대한 세션을 개방하여 작성된 메시지를 해당하는 그룹 가입자에게 전송하는 메시지 처리 모듈을 포함할 수 있다.
또한, 본 발명의 독립형 메시지 전송 그룹 내에서 클라이언트 역할을 하는 그룹 가입자 사이에 메시지를 전송하는 그룹-독립형 메시지 전송 시스템은 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서, 메시지 전송 그룹 내에서 서버 역할을 하기 위한 그룹 관리자에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지는 적어도 하나의 독립형 메시지 전송 그룹을 구성하고, 독립형 메시지 전송 그룹에 가입되어 클라이언트 역할을 하는 적어도 한 명의 그룹 가입자에 관한 사용자 정보를 관리하는 메시지 전송 그룹 관리 모듈과, 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자로서 가입 승인을 결정하는 가입자 관리 모듈과, 독립형 메시지 전송 그룹에 가입된 적어도 한 명의 그룹 가입자로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장한 후에 그룹 가입자와의 연결 세션을 종료하는 세션 관리 모듈과, 독립형 메시지 전송 그룹에 속하는 제 1 그룹 가입자가 동일한 메시지 전송 그룹에 속하는 제 2 그룹 가입자의 IP 어드레스를 그룹 관리자에게 요청하고, 그룹 관리자로부터 제공된 제 2 그룹 가입자의 IP 어드레스를 저장하는 IP 어드레스 관리 모듈과, 제 1 그룹 가입자가 메시지 작성 윈도우를 통하여 메시지를 작성하고, IP 어드레스를 이용하여 제 2 그룹 가입자에게 작성된 메시지를 전송하는 메시지 처리 모듈을 포함할 수 있다.
또한, 본 발명의 독립형 메시지 전송 그룹 내에서 비공인 IP 어드레스를 사용하는 그룹 가입자에 대한 메시지 전송 시스템은 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서, 공인 IP 어드레스를 가지고 메시지 전송 그룹 내에서 서버 역할을 하기 위한 그룹 관리자에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 한 명의 그룹 가입자에 관한 사용자 정보를 관리하는 메시지 전송 그룹 관리 모듈과, 비공인 IP 어드레스를 사용하는 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자로서 가입 승인을 결정하는 가입자 관리 모듈과, 독립형 메시지 전송 그룹에 속하며, 비공인 IP 어드레스를 사용하는 적어도 한 명의 그룹 가입자로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자의 사용자 정보를 접속 리스트 목록에 저장한 후에 그룹 가입자와의 연결 세션을 유지하는 세션 관리 모듈과, 메시지 작성 윈도우를 통하여, 독립형 메시지 전송 그룹에 속하는 적어도 한 명의 그룹 가입자에게 전송하기 위한 메시지를 작성하는 메시지 작성 모듈과, 상기 작성된 메시지를 수신할 대상에 포함되며, 비공인 IP 어드레스를 가지는 그룹 가입자가 연결 세션을 통하여 일정 시간 간격으로 메시지를 확인하는 과정에서, 상기 그룹 가입자가 메시지 작성을 확인한 경우에 작성된 메시지를 다운받을 수 있도록 승인하는 메시지 전송 제어 모듈을 포함할 수 있다.
이하, 첨부한 도면에 의거하여 본 발명의 바람직한 실시예를 자세히 설명하도록 한다.
본 발명은 증권 정보나 뉴스 속보, 신문 기사의 보도와 같이 데이터 전송의 신속성과 정확성을 요구하는 이용 분야에 적합하게 사용될 수 있는 메시지 전송 방법과 시스템을 제공하려고 한다. 또한, 의사를 중심으로 하는 그룹 내에서 의사의 진료 처방을 그룹 내의 약사 또는 간호사에게 전송하는 경우와 같이, 일률적인 작업이 필요한 그룹 내에서 신속하고 정확한 메시지 전송이 가능하도록 한다.
그에 따라, 본 발명은 메시지 전송을 위한 별도의 서버를 통하지 않고, 각 사용자의 컴퓨터가 서버 또는 클라이언트로 동작할 수 있도록 Peer-to-Peer 형태로 연결한다. 또한, 사용자는 자신에게 연결되는 복수의 사용자를 그룹 가입자로 설정함으로써, 독립적인 메시지 전송 그룹을 구성할 수 있다. 이러한 메시지 전송 그룹은 각 사용자가 임의로 구성 가능하기 때문에, 한 명의 사용자가 메시지 전송 그룹의 그룹 관리자 역할을 하는 동시에 다른 메시지 전송 그룹의 그룹 가입자로 될 수도 있다. 따라서, 그룹 관리자에 해당하는 사용자는 메시지 전송 그룹에 속하는 각 그룹 가입자에게 실시간에 가까운 고속으로 메시지를 전송할 수 있고, 자신이 그룹 가입자에 속하는 메시지 전송 그룹에서 그룹 관리자로부터 메시지를 수신할 수 있다.
또한, 본 발명의 메시지 전송 시스템은 각 국가별 언어에 대한 번역 모듈을 내장하도록 구성하고, 수신된 메시지가 사용자의 사용 언어에 해당하지 않는 경우에 자동으로 번역 모듈을 호출하여 실행함으로써, 해당하는 언어로 번역하여 출력할 수 있도록 한다.
또한, 본 발명의 메시지 전송 시스템은 고속의 메시지 전송을 위하여 텍스트 메시지를 ASCII(American Standard Code for Information Interchange) 코드로 전송한다. 이 때, 추가적인 채팅이나 문서 작업이 가능하도록 하기 위하여, 사용자가 이들 모듈을 사용하고자 하는 경우에 해당하는 모듈을 일시적으로 호출하여 사용하고, 이를 이진 코드 또는 ASCII 코드로 변환하여 전송한다. 그에 따라, 수신자는 이진 코드 또는 ASCII 코드로 전송된 데이터를 다시 해당하는 모듈을 통하여 확인할 수 있도록 함으로써 메시지 전송 속도는 유지하면서, 다양한 기능을 함께 사용할 수 있도록 한다.
도 7a는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템의 구성도를 나타낸 것이다.
도 7a를 참조하면, 본 발명의 그룹-독립형 메시지 전송 시스템은 사용자들(70, ... , 78) 사이의 연결을 Peer-to-Peer로 설정한다. 별도의 메시지 서버를 사용하지 않고 사용자(70, ... , 78)를 연결하기 위하여 각 사용자의 컴퓨터에 할당된 IP 어드레스를 사용하는 것이 바람직하다. 이 때, 각 사용자(70, ... , 78)는 연결하고자 하는 상대방을 임의로 선택할 수 있다.
그리고, 그룹 가입자가 자기에게 메시지를 전송할 수 있는 그룹 관리자에 연결하기 위해서는 그룹 관리자로부터 승인이 있어야 한다. 즉, 그룹 가입자가 그룹 관리자에게 연결을 요청하면, 그룹 관리자가 이를 승인하고 자신의 IP 어드레스를 그룹 가입자에게 알려주고, 연결을 승인함으로써 메시지 전송 그룹에 포함될 수 있다. 따라서, 메시지 전송 그룹을 구성되면 그룹 관리자와 그룹 가입자 사이에는 철저한 보안이 유지될 수 있다. 또한, 메시지 전송 그룹 내에서는 일대일 형태의 연결을 유지하기 때문에 그룹 관리자가 전송하는 메시지는 멀리 떨어진 지역에 있는 그룹 가입자에게도 고속의 메시지 전송이 가능하다.
예컨대, 도 7a에 도시된 바와 같이 G1 메시지 전송 그룹은 사용자 A(70)와 사용자 B(72), 사용자 C(74) 및 사용자 D(76)가 그룹 멤버에 해당한다. G1 메시지 전송 그룹 내에서의 서버 역할을 하는 그룹 관리자는 사용자 A(70)로서 사용자 A(70)가 작성한 메시지는 순차적으로 복사되어 G1 메시지 전송 그룹 내에서 클라이언트 역할을 하는 그룹 가입자(72, 74, 76)에게 각각 전송된다. 즉, G1 메시지 전송 그룹 내에 있는 그룹 가입자(72, 74, 76)는 각각 그룹 관리자인 사용자 A(70)와 일대일 연결을 가지는 것이다.
일반적으로, 메시지 전송 그룹(G1)이 형성되고 메시지 전송 그룹(G1) 내에서 그룹 가입자(72, 74, 76)가 그룹 관리자(70)에 일단 연결되면, 각 그룹 가입자(72, 74, 76)가 연결을 해제할 때까지 그룹 관리자(70)는 세션을 유지하게 된다. 그에 따라, 그룹 관리자(70)는 그룹 가입자(72, 74, 76)와의 세션을 유지하기 위하여 일반적으로 하나의 세션 당 1Mbyte의 용량을 사용하게 되고, 그룹 관리자(70)에 접속된 그룹 가입자(72, 74, 76)의 수가 증가할수록 메시지 처리 속도 및 전송 속도가 저하될 수밖에 없다.
이를 해결하기 위하여, 메시지 전송 그룹(G1)에서 서버 역할을 하는 그룹 관리자(70)는 그룹 가입자(72, 74, 76)의 연결 요청이 있는 경우에, 해당하는 그룹 가입자가 그룹에 속하는 멤버인지를 확인하고 그에 따라 연결을 승인한다. 연결 승인이 이루어지면, 그룹 관리자(70)는 해당하는 그룹 가입자(72, 74, 76)의 IP 어드레스를 인식하여 이를 임시 저장 공간에 저장하고 그룹 가입자(72, 74, 76)와의 연결을 유지하기 위한 세션을 종료한다. 따라서, 그룹 관리자(70)는 연결 승인 후에 세션 유지를 위한 메모리가 필요하지 않게 된다. 그런 다음, 그룹 관리자(70)가 메시지 전송 그룹(G1) 내의 각 그룹 가입자(72, 74, 76)에게 메시지를 전송하고자 하는 경우에는 그룹 가입자(72, 74, 76)의 IP 어드레스를 이용하여 메시지 전송 그룹(G1)에 속하는 각 그룹 가입자(72, 74, 76)에게 직접 메시지를 전송한다. 이를 위하여, 그룹 관리자(70)는 전송할 메시지에 그룹 가입자(72, 74, 76)의 IP 어드레스를 첨부하고, 정상적인 메시지 전송 여부를 확인하기 위한 플래그(Flag) 비트를 첨부하여 전송하는 것이 바람직하다.
이와 같이, 각 사용자는 그룹 관리자로서 메시지 전송 그룹에서 서버 역할을 할 수도 있고, 다른 메시지 전송 그룹의 그룹 가입자로서 클라이언트 역할을 할 수 있다.
도 7b는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에서, 사용자의 서버 또는 클라이언트 역할에 따른 구성의 예시도를 나타낸 것이다.
도 7b를 참조하면, 본 발명의 그룹-독립형 메시지 전송 시스템은 메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자의 위치에서 메시지를 전송하는 사용자(S1, ... , S4)와, 클라이언트 역할을 하는 그룹 가입자의 위치에서 메시지를 수신하는 사용자(C1, ... , C7), 그룹 관리자 및 그룹 가입자의 위치를 모두 가지는 사용자(S/C1, ... , S/C3)로 구분할 수 있다.
즉, 그룹 관리자의 위치에 있는 사용자(S1, ... , S4)는 자신이 구성한 메시지 전송 그룹 내에서 한 명 이상의 그룹 가입자(S/C1, ... , S/C3)를 대상으로 메시지를 전송하는 역할을 수행한다. 따라서, 이러한 사용자(S1, ... , S4)는 다른 메시지 전송 그룹에 속해있지 않기 때문에, 다른 그룹 관리자로부터 전송되는 메시지를 수신할 수 없다. 다만, 메시지 전송 그룹에 속해있는 그룹 가입자로부터, 1 : 1 대화 형태로 메시지를 수신하는 것은 가능하다.
한편, 그룹 가입자의 위치에 있는 사용자(C1, ... , C7)는 각각 자신이 속해있는 메시지 전송 그룹 내에서 그룹 관리자로부터 전송되는 메시지를 수신하는 클라이언트의 역할을 한다. 따라서, 다른 메시지 전송 그룹에 속해있는 사용자 또는 같은 메시지 전송 그룹에 속해있는 다른 사용자를 대상으로 일괄적인 메시지 전송(1:1 대화 형식이 아닌 복수의 사용자를 대상으로 메시지를 뿌려주는 형태의 메시지 전송) 기능을 구현하지 않고, 그룹 관리자로부터 전송되는 메시지를 수신하는 역할을 수행한다.
반면에, 그룹 관리자 및 그룹 가입자의 두 위치를 모두 가지는 사용자(S/C1, ... , S/C3)는 메시지 전송 그룹에 속하는 그룹 가입자(C1, ... , C7)를 대상으로 메시지를 전송하는 기능과, 자신이 속한 메시지 전송 그룹의 그룹 관리자(S1, ... , S4)로부터 전송된 메시지를 수신하는 기능을 모두 가진다.
결국, 본 발명의 그룹-독립형 메시지 전송 시스템을 이용하는 사용자는 그룹 관리자의 위치 또는 그룹 가입자의 위치를 가질 수도 있고, 그룹 관리자와 그룹 가입자의 위치를 모두 가질 수도 있다.
또한, 그룹 관리자(S1, ... , S4)는 점선으로 도시된 바와 같이 다른 메시지 전송 그룹에 가입함으로써 언제든지 그룹 가입자의 지위에 들어설 수 있고, 그룹 가입자(C1, ... , C7) 역시 개별적인 메시지 전송 그룹을 형성함으로써 언제든지 그룹 관리자의 위치에 해당할 수 있다.
도 8은 이와 같이, 동일한 메시지 전송 그룹에 속하는 그룹 관리자와 그룹 가입자 사이의 메시지 전송 과정을 나타낸 흐름도이다.
도 8을 참조하면, 그룹 가입자가 메시지 전송 그룹을 구성하는 그룹 관리자에게 접속을 요청한다(s2). 이 때, 그룹 가입자가 그룹 관리자에게 접속을 요청하기 위해서는 사전에 해당하는 메시지 전송 그룹에 가입되어 있어야 할 것이다. 메시지 전송 그룹의 가입 과정은 그룹 가입자가 그룹 관리자에게 접속하여, 그룹 가입자의 IP 어드레스 및 그룹 가입자의 사용자 정보를 제공하고, 그룹 관리자가 이를 메시지 전송 그룹의 멤버에 등록함으로써 이루어질 것이다.
도 9a는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 사용자가 메시지 전송 그룹의 멤버로 가입하기 위하여 사용자 정보를 입력하는 경우의 화면 예시도를 나타낸 것이다.
도 9a를 참조하면, 특정 메시지 전송 그룹의 그룹 가입자로 가입하기를 희망하는 사용자의 컴퓨터에서 메시지 전송이 가능한 프로그램의 사용자 등록 기능을 통하여 그룹 가입자로서의 등록 과정을 진행할 것이다. 이 때, 사용자가 등록할 내용은 사용자의 ID, 패스워드, 사용자가 가입하고자 하는 메시지 전송 그룹에서 서버 역할을 하는 그룹 관리자의 IP 어드레스, 사용자의 이름, 연락처(전화번호 및 핸드폰 번호), 및 E-메일 주소를 포함할 수 있다. 사용자가 이러한 사용자 정보를 모두 입력하여 선택한 메시지 전송 그룹에 가입을 요청하면, 사용자의 IP 어드레스와 사용자가 입력한 사용자 정보가 메시지 전송 그룹의 그룹 관리자에게 전송된다. 그에 따라, 그룹 관리자는 메시지 전송 그룹의 가입을 희망한 사용자의 정보를 확인한 후에, 메시지 전송 그룹의 가입 여부를 결정할 수 있다.
그룹 가입자는 하나 이상의 메시지 전송 그룹에 가입할 수 있으며, 복수의 메시지 전송 그룹에 가입하는 경우에는 복수의 그룹 등록 창이 화면에 표시될 것이다.
메시지 전송 그룹에서 서버 역할을 하는 그룹 관리자는 이와 같은 가입 신청 과정을 통하여 메시지 전송 그룹의 멤버로서 등록된 그룹 가입자에 관한 정보를 확인할 수 있다.
도 9b는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 메시지 전송 그룹의 멤버로 가입된 그룹 가입자가 자신이 가입한 메시지 전송 그룹을 관리하는 경우의 화면 예시도를 나타낸 것이다.
도 9b를 참조하면, 사용자가 도 9a에 도시된 바와 같이 메시지 전송 그룹의 가입 과정을 거치면, 가입된 메시지 전송 그룹에 관한 정보가 화면에 표시되고 그룹 가입자는 자신이 가입한 메시지 전송 그룹에 관한 정보를 각각 관리할 수 있다.
그룹 가입자가 가입한 메시지 전송 그룹에 관한 정보는 그룹 관리자의 이름과 그룹 관리자의 IP 어드레스, 그룹 가입자가 메시지 전송 그룹을 가입하는 과정에서 사용한 ID 및 패스워드를 포함한다. 또한, 바람직하게 그룹 가입자는 가입한 메시지 전송 그룹 중에서 메시지 수신 여부를 선택할 수 있으며, 그룹 가입자의 선택 여부를 변경할 수 있다. 그리고, 그룹 가입자는 메시지 전송 그룹 중에서 현재 접속되어 있는 그룹을 확인할 수 있을 것이다.
도 10은 서버 역할을 하는 그룹 관리자가 메시지 전송 그룹에 가입된 멤버의 등록 정보 및 접속 상태를 확인하는 화면 예시도를 나타낸 것이다.
도 10을 참조하면, 메시지 전송 그룹에서 서버 역할을 하는 그룹 관리자는 메시지 전송 그룹에 가입된 그룹 가입자에 관한 정보를 확인할 수 있다. 즉, 그룹 가입자로서 가입하는 과정에서 사용자가 전송한 ID, 패스워드, 성명, 연락처(전화번호 또는 이동 통신), E-메일, 접속 현황 및 그룹 가입자의 IP 어드레스가 화면에 표시된다. 그리고, 현재 접속 중인 그룹 가입자를 확인할 수 있다. 그룹 가입자의 IP 어드레스는 메시지 전송 그룹의 가입 시에 그룹 관리자에게 가입 요청 신호를 전송하는 과정에서, 그룹 가입자의 IP 어드레스가 함께 전송되기 때문에 그룹 관리자는 이를 확인할 수 있다. 그 결과, 그룹 관리자가 메시지 전송 그룹 내의 그룹 가입자에게 메시지를 전송할 때, 그 즉시 메시지를 수신할 수 있는 멤버를 확인할 수 있다.
그룹 관리자는 그룹 가입자로부터 접속 요청이 있는 경우에, 그룹 가입자의 IP 어드레스 또는 ID나 이름을 이용하여 메시지 전송 그룹의 멤버에 속하는지를 확인한다. 그룹 가입자가 메시지 전송 그룹의 멤버에 속하는 경우에는 접속 요청을 인증한다(s4). 일단, 접속 요청이 인증되면, 메모리 사용을 줄이고 메시지 전송 속도를 감소시키지 않기 위하여, 접속을 요청한 그룹 가입자로부터 IP 어드레스를 제공받아 버퍼(Buffer)에 저장하고(s6), 그룹 가입자와의 세션을 종료한다(s8). 세션이 종료된 상태에서 그룹 관리자는 각 그룹 가입자와의 연결을 유지하기 위하여 별도의 메모리를 사용하지 않기 때문에, 한꺼번에 많은 수의 그룹 가입자가 접속하더라도 메시지 전송 속도 및 처리 속도가 감소되지 않는다.
한편, 동일한 메시지 전송 그룹에 속하는 그룹 관리자와 그룹 가입자들 사이의 IP 어드레스에 대한 보안을 보다 강화하기 위하여, IP 어드레스를 전송하는 경우에 암호화 기능을 사용할 수 있다. 즉, IP 어드레스를 구성하는 0부터 9 까지의 숫자를 각각 알파벳이나 특수 기호로 암호화하고, 숫자로 구성된 IP 어드레스 대신에 각 숫자에 대응되는 알파벳이나 특수 기호를 전송한다. 알파벳이나 특수 기호로 이루어진 IP 어드레스를 수신한 사용자는 이를 숫자로 이루어진 IP 어드레스로 복호화 함으로써, 각 사용자의 IP 어드레스에 대한 보안을 강화할 수 있다.
그룹 관리자는 메시지 전송 그룹에 포함되는 그룹 가입자에게 전송할 메시지를 작성하고 현재 접속된 상태에 있는 그룹 가입자의 IP 어드레스를 버퍼에서 추출하여, 각 그룹 가입자에게 동시에 메시지를 전송한다(s12). 따라서, 하나의 메시지 전송 그룹(G1)에 속하는 그룹 가입자(72, 74, 76)는 그룹 관리자(70)로부터 전송된 메시지를 거의 동일한 시간에 수신하게 된다.
그룹 관리자(70)는 각 그룹 가입자(72, 74, 76)로부터 정상적으로 메시지가 전송되었다는 수신 응답(s14)이 도착하면 그룹 가입자(72, 74, 76)와의 세션을 종료하게 된다(s16). 한편, 그룹 관리자는 그룹 가입자가 전송된 메시지를 확인하였는지를 알 필요가 있다. 따라서, 그룹 가입자가 그룹 관리자로부터 전송된 메시지를 확인하면(s18), 확인 신호가 그룹 관리자에게 전송되어 그룹 관리자는 그룹 가입자의 메시지 확인 여부를 확인할 수 있다(s19).
이 때, 메시지는 그룹 관리자(70)로부터 그룹 가입자(72, 74, 76)의 일방향으로만 이루어지는 것이 아니라, 메시지 전송 그룹(G1) 내에서 그룹 가입자(72, 74, 76)가 그룹 관리자(70)에게 전송하는 것도 가능하다. 따라서, 각 그룹 가입자가(72, 74, 76)는 그룹 관리자(70)에 대하여 일대일 연결이 이루어질 뿐이고, 메시지 전송 그룹(G1)에 속하는 다른 그룹 가입자에 대한 관리를 수행할 수는 없다.
본 발명의 메시지 전송 시스템에서 그룹 관리자는 Windows 계열의 OS를 사용하는 일반적인 PC급 컴퓨터 시스템을 사용하여 메시지 전송 그룹을 구성하고, 그룹 가입자에게 메시지를 전송할 수 있다.
도 11은 본 발명의 메시지 전송 시스템에서 그룹 관리자 또는 그룹 가입자가 통상적으로 사용할 수 있는 컴퓨터 시스템의 블록도를 나타낸 것이다.
도 11을 참조하면, 그룹 관리자 또는 그룹 가입자의 컴퓨터 시스템(100)은 메모리 시스템(110)과, 여기에 연결되어 고속 동작을 수행하는 적어도 하나 이상의 CPU(Central Processing Unit: 120), 입력 장치(130) 및 출력 장치(140)를 포함한다.
CPU(120)는 계산을 수행하기 위한 ALU(Arithmetic Logic Unit: 122)와, 데이터 및 명령어의 일시적인 저장을 위한 레지스터(124) 및 컴퓨터 시스템(100)의 동작을 제어하기 위한 제어부(126)를 포함한다. CPU(120)는 디지털(Digital) 사의 알파(Alpha), MIPS 테크놀로지, NEC, IDT, 지멘스(Siemens) 등의 MIPS, 인텔(Intel)과 사이릭스(Cyrix), AMD 및 넥스젠(Nexgen)을 포함하는 회사의 x86 및 IBM과 모토롤라(Motorola)의 파워PC(PowerPC)와 같이 다양한 아키텍쳐(Architecture)를 갖는 프로세서일 수 있다.
메모리 시스템(110)은 일반적으로 RAM(Random Access Memory) 과 ROM(Read Only Memory) 같은 저장 매체 형태인 고속의 메인 메모리(112)와, 플로피 디스크, 하드 디스크, 테이프, CD-ROM, 플래시 메모리 등의 장기(long-term) 저장 매체 형태의 보조 메모리(114) 및 전기, 자기, 광학이나 그 밖의 저장 매체를 이용하여 데이터를 저장하는 장치를 포함한다. 또한, 메인 메모리(112)는 디스플레이 장치를 통하여 이미지를 디스플레이 하는 비디오 디스플레이 메모리를 포함할 수 있다. 본 발명의 기술 분야에서 통상의 지식을 가진 당업자에게는 상기 메모리 시스템(110)이 여러 가지 저장 성능을 구비하는 제품으로서, 여러 가지 형태를 가질 수 있다는 것이 자명할 것이다.
또한, 입력 장치(130) 및 출력 장치(140)는 통상의 입력 장치 및 출력 장치일 수 있다. 입력 장치(130)는 키보드, 마우스, 예컨대, 터치 스크린 또는 마이크로폰과 같은 물리적 변환기(Physical transducer) 등을 포함할 수 있다. 출력 장치(140)는 디스플레이, 프린터, 스피커와 같은 변환기(transducer) 등을 들 수 있다. 또한, 네트워크 인터페이스 또는 모뎀과 같은 장치가 입력 및/또는 출력 장치로서 사용될 수 있다.
본 발명의 기술 분야에 있어서, 상기 컴퓨터 시스템(100)은 OS 및 적어도 하나의 응용 프로그램을 포함할 수 있다. OS는 컴퓨터 시스템(100)의 동작 및 리소스의 지정을 제어하는 소프트웨어 집합이다. 응용 프로그램은 OS를 통하여 이용 가능한 컴퓨터 리소스를 사용함으로써, 사용자가 요청한 업무를 수행하기 위한 소프트웨어 집합이다. OS 및 응용 프로그램은 메모리 시스템(110)에 상주될 것이다.
컴퓨터 프로그래밍의 기술 분야에서 통상의 지식을 가진 당업자의 경험에 따라, 다른 표현으로 기술되지 않으면 본 발명은 컴퓨터 시스템(100)에 의해 수행되는 동작 및 동작에 대한 표현 기호에 따라 기술될 것이다. 이러한 동작은 컴퓨터 기반으로 이루어지며, OS 또는 적당한 응용 프로그램에 의하여 수행될 것이다. 또한, 이러한 동작 및 기능은 전기 신호의 변환 또는 차단을 유발하는 데이터 비트 등의 전기 신호에 대한 CPU(120)의 처리와, 컴퓨터 시스템(100)의 동작을 변경할 뿐만 아니라 메모리 시스템(110) 내의 메모리 영역에 저장된 데이터 비트 신호에 대한 관리를 포함한다. 데이터 비트 신호가 관리되는 메모리 영역은 데이터 비트에 해당하는 전기, 자기 또는 광학 특성을 갖는 물리 영역이다.
이러한 메시지 전송 그룹은 각 사용자가 임의로 구성이 가능하다. 도 7에서는 G1, G2, G3 세 그룹의 메시지 전송 그룹이 구성된 경우를 나타낸 것이다. 즉, G1 메시지 전송 그룹은 사용자 A(70)를 그룹 관리자로서 서버의 역할을 하고, 사용자 B(72), 사용자 C(74) 및 사용자 D(76)가 그룹 가입자로서 클라이언트의 역할을 한다. G2 메시지 전송 그룹은 사용자 C(74)가 그룹 관리자이고, 사용자 C(74)가 전송한 메시지를 수신하는 그룹 가입자는 사용자 A(70) 및 사용자 E(78)이다. 또한, G3 메시지 전송 그룹은 사용자 B(72), 사용자 D(76) 및 사용자 E(78)로 구성되며, 사용자 E(78)가 그룹 관리자이고 사용자 B(72) 및 사용자 D(76)가 그룹 가입자이다. 또한, 각 사용자(70, ... , 78)는 하나 이상의 메시지 전송 그룹을 구성하고, 이를 각각 관리할 수 있다. 따라서, 그룹 관리자로서의 역할을 하는 사용자는 각 메시지 전송 그룹에 서로 다른 메시지를 각각 전송할 수 있다.
도 12는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 방법의 흐름도를 나타낸 것이다.
도 12를 참조하면, 그룹 가입자는 독립적으로 메시지를 전송할 그룹 관리자를 선택하고, 선택된 그룹 관리자에 접속하여 메시지 전송 그룹의 멤버로서 가입을 신청한다. 그룹 관리자로부터 메시지 전송 그룹의 가입이 승인되면, 그룹 가입자는 해당하는 메시지 전송 그룹의 멤버로서 그룹 관리자가 전송하는 메시지를 수신할 수 있다. 메시지 전송 그룹의 멤버로서 가입하기 위해서는 그룹 가입자가 자신의 컴퓨터에 설치된 메시지 전송 프로그램에서 그룹 관리자의 IP 어드레스를 입력하고, 그룹 관리자에게 자신의 ID나 이름, IP 어드레스를 전송한다. 그에 따라, 그룹 관리자는 그룹 가입자로부터 제공된 ID나 이름, IP 어드레스를 자신의 메시지 전송 그룹에 포함시킨다.
메시지 전송 그룹에 가입된 상태에서, 그룹 가입자는 별도의 메시지 전송 서버를 거치지 않고, 그룹 관리자의 IP 어드레스를 통하여 Peer-to-Peer 방식으로 그룹 관리자에게 접속을 요청한다(s20). 그룹 관리자는 접속을 요청한 그룹 가입자의 ID 나 이름, IP 어드레스를 확인하여, 메시지 전송 그룹에 가입된 멤버인지를 판별한다(s22). 그룹 가입자가 메시지 전송 그룹의 멤버인 경우에(s24), 그룹 가입자의 IP 어드레스를 버퍼에 저장하여 현재 접속된 리스트에 포함시키고, 그룹 가입자와의 세션을 종료한다(s26). 이렇게 그룹 가입자와의 세션을 종료하는 것은 그룹 가입자의 IP 어드레스를 이용하면 메시지를 직접 전송할 수 있기 때문에, 세션을 유지하는데 사용되는 메모리 용량을 줄이고 그룹 가입자의 접속에 의한 처리 속도를 감소시키지 않기 위함이다.
그룹 관리자가 메시지 전송 그룹에 속하는 복수의 그룹 가입자에게 메시지를 전송하고자 하는 경우에(s28), 메시지 작성이 완료되면 종료된 세션을 개방시키고, 버퍼에 저장된 IP 어드레스를 통하여 메시지 전송 그룹에 포함되는 각 그룹 가입자에게 메시지를 전송한다(s30). 이 때, 메시지 전송 그룹은 Peer-to-Peer 형태로 연결되어 있기 때문에, 메시지 전송 서버를 통하여 전송되는 경우에 소요되는 라우팅 시간이 필요하지 않기 때문에 보다 빨리 메시지를 전송할 수 있다. 따라서, 몇 초 단위로 주가가 변동되는 주식 정보와 같은 메시지 전송 과정에서, 고속성과 전송 메시지에 대한 보안성을 한꺼번에 만족시킬 수 있다.
한편, 전송되는 메시지의 데이터 패킷마다 전송 확인을 하면 전체 메시지의 전송에 소요되는 시간이 증가하기 때문에, 전체 메시지를 전송한 후에 메시지 도착 여부 및 전송 과정의 오류 발생 여부를 체크할 수 있는 체크 비트를 메시지에 첨부하여 전송하는 것이 바람직하다. 따라서, 체크 비트에 의하여 메시지가 정상적으로 전송되지 않거나 메시지 전송 과정에서 오류가 발생한 그룹 가입자를 대상으로 메시지를 재전송할 수 있다(s34). 또는, 메시지 재전송이 제대로 이루어지지 않는 경우에는 SMS(Simple Message Service) 서버를 이용하여 그룹 가입자의 무선 단말기로 전송할 수도 있다.
한편, 그룹 가입자가 유동 IP 어드레스를 사용하거나 LAN 내부에서 10. 0. 0. 0. 부터 10. 255. 255. 255. 까지, 172. 16. 0. 0. 부터 172. 31. 255. 255. 까지 및 192. 168. 0. 0 부터 192. 168. 255. 255. 까지의 사설 IP 어드레스를 사용하는 경우에는 IP 어드레스를 이용하여 그룹 가입자에게 메시지를 전송하는 것이 불가능하다.
이러한 경우에는, 그룹 가입자가 일정 시간 간격으로 그룹 관리자에 접속하여 메시지 전송 여부를 체크하고 있다가, 전송될 메시지가 있는 경우에 그룹 관리자로부터 메시지를 가져오도록 할 수 있다. 따라서, 그룹 관리자는 그룹 가입자의 IP 어드레스를 버퍼에 저장할 필요가 없으며, 접속하는 그룹 가입자가 메시지 전송 그룹에 포함되는지를 확인하면 된다.
또는, 미국특허 6,167,438에 개시된 바와 같이 네트워크를 형성하는 라우터에 캐시 서버(Cache Server)를 설치하고, 캐시 서버를 통하여 유동 IP 또는 사설 IP 어드레스를 사용하는 사용자에게 메시지를 전송하는 것이 가능하도록 할 수 있다. 또는, 사설 IP 어드레스를 사용하는 LAN에서 외부로 연결되는 라우터 또는 서버의 공인 IP 어드레스와 함께 사용자의 사설 IP 어드레스를 함께 전송하거나, 각 사용자에게 포트 번호를 할당하여 이를 이용할 수도 있을 것이다.
도 13은 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템의 구성도를 나타낸 것이다.
도 13을 참조하면, 그룹-독립형 메시지 전송 시스템(200)은 메시지 전송 그룹에서 서버 역할을 하기 위한 메시지 송신부(210)와 클라이언트 역할을 하기 위한 메시지 수신부(230)를 포함한다. 메시지 송신부(210)와 메시지 수신부(230)는 하이 레벨(High level) 명령어 처리부(202)에 의하여 메시지 전송 및 수신 과정이 제어되고 관리된다. 사용자가 그룹 관리자의 역할을 하는 경우에, 메시지 전송 그룹에 속하는 그룹 가입자의 IP 어드레스, 성명 또는 그 밖의 그룹 가입자에 대한 사용자 정보를 저장하고 관리하여야 한다. 그에 따라, 그룹 가입자에 대한 사용자 정보를 저장하는 데이터베이스(250)가 필요하다.
메시지 송신부(210)는 접속된 그룹 가입자를 화면에 표시하는 접속 화면 제어 모듈(211), 각 그룹 가입자에게 메시지를 전송하는 메시지 전송 모듈(212) 및 메시지 전송 그룹에 속하는 그룹 가입자의 정보를 관리하는 멤버 관리 모듈(213)을 포함한다.
접속 화면 제어 모듈(211)은 그룹 관리자가 메시지 전송 그룹 내에서 서버 역할을 할 수 있도록 그룹 관리자에 접속한 그룹 가입자에 관한 정보를 그룹 관리자의 디스플레이 화면에 표시한다. 메시지 전송 모듈(213)은 그룹 관리자가 작성한 메시지를 IP 어드레스를 이용하여 각 그룹 가입자에게 전송한다. 멤버 관리 모듈(212)은 메시지 전송 그룹에 속하는 그룹 가입자의 IP 어드레스, 성명 또는 연락처 등의 사용자 정보를 데이터베이스(250)에 저장하고 관리하며, 그룹 가입자의 접속 여부를 체크한다.
메시지 수신부(230)는 수신된 메시지를 화면에 표시하는 메시지 수신 화면 제어 모듈(231), 사용자의 정보를 관리하는 사용자 정보 관리 모듈(232) 및 전송된 메시지를 수신하는 메시지 수신 모듈(233)을 포함한다.
메시지 수신 모듈(233)은 메시지 전송 그룹에서 서버 역할을 하는 그룹 관리자로부터 전송된 메시지를 확인하고 이를 수신한다. 만약, 그룹 가입자가 공인 IP 어드레스를 사용하지 않고, 사설 IP 또는 유동 IP를 사용하는 경우에는 메시지 수신 모듈(233)에서 일정 시간 단위로 그룹 관리자에 접속하여 메시지 전송 그룹에 전송할 메시지가 있는지를 확인한다. 확인 결과, 전송할 메시지가 있는 경우에는 그룹 관리자로부터 메시지를 가져온다. 사용자 정보 관리 모듈(232)은 사용자의 IP 어드레스, ID 또는 성명, 패스워드와 같은 사용자 정보를 저장하고 관리한다. 메시지 수신 화면 제어 모듈(231)은 그룹 관리자로부터 메시지가 전송된 경우 이를 사용자가 확인할 수 있도록 사용자의 디스플레이 화면에 표시한다. 증권 소식이나 뉴스 속보, 신문이나 방송 기자의 취재 내용, 경매 입찰 정보 또는 선물 거래 내용과 같은 메시지는 전송 속도가 사업 성공에 큰 역할을 하기 때문에, 전송된 메시지는 사용자의 디스플레이 화면에 자동으로 팝업(Pop up)되도록 하는 것이 바람직하다.
도 14는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에서 클라이언트 역할을 하는 그룹 가입자의 화면 예시도를 나타낸 것이다.
도 14를 참조하면 그룹-독립형 메시지 전송 시스템에서 그룹 가입자 측에는 수신된 메시지가 표시되는 디스플레이 화면과, 그룹 가입자가 선택할 수 있는 기능별 아이콘이 구비될 수 있다.
채팅 아이콘은 메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자와 클라이언트 역할을 하는 그룹 가입자 또는 그룹 가입자들 사이에 대화를 가능하도록 하는 기능을 수행한다. 그룹 관리자 또는 그룹 가입자가 채팅 아이콘을 선택하면, 채팅 모듈의 기능을 호출하여 사용함으로써, 디스플레이 화면이 채팅 화면으로 전환될 것이다. 사용자 등록 아이콘은 사용자가 특정 메시지 전송 그룹에 그룹 가입자로서 가입하기 위한 아이콘이다. 사용자가 그룹 가입자로 등록하기 위해서는 IP 어드레스, 성명, ID, 패스워드 또는 전화 번호 등의 정보를 기입하여야 한다. 연결 아이콘은 그룹 가입자가 가입한 메시지 전송 그룹 중에서 연결하고자 하는 메시지 전송 그룹을 선택하여 해당하는 그룹의 그룹 관리자에게 연결을 설정하기 위한 아이콘이다.
도 15는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 메시지 전송 그룹에서 서버 역할을 하는 그룹 관리자가 그룹 내의 그룹 가입자에게 메시지를 전송하는 경우의 화면 예시도이다.
도 15를 참조하면, 메시지 전송 그룹의 그룹 관리자는 현재 접속된 그룹 가입자의 현황을 파악하고, 메시지 전송 그룹에 속하는 그룹 가입자에게 동일한 메시지를 한꺼번에 전송할 수 있다. 따라서, 그룹 관리자는 자신에게 속하는 그룹의 멤버(그룹 가입자)에게 증권 시세나 증권 뉴스, 신속을 요하는 뉴스 속보와 같은 내용의 메시지를 일괄적으로 전송할 수 있다. 한편, 그룹 관리자에게 현재 접속되지 않은 그룹 가입자의 경우에는 그룹 가입자의 무선 단말기로 SMS 메시지를 전송하거나, E-메일로 전송하도록 설정할 수도 있을 것이다.
한편, 본 발명의 그룹-독립형 메시지 시스템은 국부적인 LAN을 넘어서서, 서로 다른 언어를 사용하는 사용자들 사이에도 메시지를 주고받을 수 있도록 하기 위하여, 전송된 메시지의 번역 기능과 사용자 사이의 1:1 채팅 기능 또는 음성을 이용한 대화 기능을 포함할 수 있다. 또한, 텍스트 메시지에만 한정되지 않고, 객체 호출을 통한 문서 처리 기능을 사용할 수 있다.
도 16은 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 추가적으로 호출 가능한 응용 모듈의 구성도를 나타낸 것이다.
도 16을 참조하면, 응용 모듈(300)은 사용자 사이에 음성을 통한 대화가 가능하도록 하는 음성 처리 모듈(302)과, 서로 다른 언어로 번역하는 번역 모듈(304), 사용자들 사이에 채팅을 가능하도록 하는 채팅 모듈(306) 및 워드 기능을 제공하는 문서 처리 모듈(308)을 포함할 수 있다. 한편, 도 16에 도시된 모듈에 한정되지 않고 사용자들 사이에 화상 데이터를 주고받을 수 있는 화상 처리 모듈도 포함될 수 있을 것이다.
음성 처리 모듈(302)은 마이크로폰이나 마이크와 같은 음성 입력 장치를 통하여 입력된 음성 신호를 이진(Binary) 코드와 같은 디지털 신호로 변환한다. 디지털 음성 신호는 그룹 관리자가 전송하는 메시지와 동일한 경로로 메시지 전송 그룹에 속하는 그룹 가입자에게 전송된다. 디지털 음성 신호를 수신한 그룹 가입자 측에서도 음성 처리 모듈(302)을 통하여 이를 음성 신호로 변환하고, 그룹 가입자의 컴퓨터에 구비된 스피커 등의 출력 장치를 통하여 그룹 관리자가 전송한 음성이 출력되도록 한다. 즉, 그룹 관리자가 텍스트로 입력한 메시지 대신에 음성 입력 장치로 전송한 음성 신호를 그룹 가입자가 음성 출력 신호로 청취하는 것이다.
번역 모듈(304)은 서로 다른 언어를 사용하는 사용자들(그룹 관리자 및 그룹 가입자) 사이에 메시지 전송이 가능하도록 한다. 번역 모듈을 이용하는 경우에는 전송하는 메시지에 언어 코드를 첨부하여 전송하도록 한다. 따라서, 그룹 가입자는 전송된 메시지에 첨부된 언어 코드를 분석하고, 전송된 메시지가 현재 사용하는 언어가 아닌 경우에는 번역 모듈을 호출하여 그룹 가입자가 현재 사용하는 언어로 번역하고, 이를 화면에 표시하도록 한다. 따라서, 동일한 메시지 전송 그룹에 속하면서 서로 다른 언어를 사용하는 사용자들도 사용 언어를 고려하지 않고, 편리하게 메시지를 주고받을 수 있다.
채팅 모듈(306)은 메시지 전송 그룹 내에서 그룹 관리자가 그룹 가입자에게 메시지를 전송하거나, 반대로 그룹 가입자가 그룹 관리자에게 메시지를 전송하는 과정을 하나의 화면을 통하여 서로가 동시에 확인할 수 있도록 한다. 그룹 관리자가 채팅 윈도우를 개방하면, 그룹 가입자들 중에서 희망하는 사용자가 채팅에 참가할 수 있다. 채팅에 참가한 사용자(그룹 관리자 및 그룹 가입자)는 하나의 윈도우를 통하여 메시지를 주고받을 수 있다. 따라서, 서로 다른 윈도우를 통하여 계속적으로 메시지를 주고받는 경우의 불편을 해소하고, 동일한 공간상에서 대화하듯이 메시지 전송이 가능하다.
특히, 메시지 작성 윈도우에 표시되는 메뉴를 각 국가별 언어로 표시하여 저장하고, 사용자가 해당하는 국가의 언어 모듈을 선택한 경우에 선택된 국가의 언어로 메뉴를 표시함으로써, 사용자의 이용 편의를 도울 수 있다.
문서 처리 모듈(308)은 단순한 텍스트 형태의 메시지 전송에서 벗어나서, 한글이나 MS 워드와 같은 문서 처리 기능을 메시지 전송 시스템에 사용할 수 있도록 한다. 즉, 그룹 관리자가 텍스트 메시지 이외에 도표나 선, 다양한 그래픽 글씨체 등을 통하여 메시지를 작성하고자 하는 경우에, API(Application Program Interface)를 통하여 지정된 문서 처리 모듈(308)을 호출한다. 이 때, 사용 가능한 문서 처리 모듈(308)은 미리 지정된 어플리케이션에 한정되며, 이를 개방시키기 위한 인터페이스도 어플리케이션에 대한 권리를 소유한 대상과 사용 계약을 통하여 제작 및 구현될 것이다. 이 때, 문서 처리 모듈(308)을 통한 메시지 작성을 용이하게 하기 위하여, 문서 처리 모듈(308)의 실행 화면이 메시지 전송 시스템의 표시 화면에 표시되도록 한다. 즉, 문서 처리 모듈(308)의 실행에 의하여 별도의 세션을 개방시키지 않고, 메시지 전송 시스템의 표시 화면을 문서 처리 모듈(308)의 세션으로 사용하는 것이다.
문서 처리 모듈(308)을 사용하여 작성된 메시지는 문서 처리 모듈(308)에 대한 판별 코드가 첨부되어 전송될 것이다. 따라서, 메시지를 수신한 그룹 가입자는 판별 코드에 따라 해당하는 문서 처리 모듈(308)을 호출하고, 이를 통하여 메시지를 화면에 표시함으로써 그룹 가입자는 용이하게 전송된 메시지를 확인할 수 있다.
이러한 응용 모듈은 각 응용 모듈을 개발한 사업자로부터 응용 모듈의 사용 계약을 체결하고, 그에 따라 응용 모듈의 내부 처리 기능을 호출하고, 메시지 전송 모듈과 실질적으로 링크될 수 있도록 함으로써 보다 효율적인 응용 모듈의 이용이 가능할 것이다.
도 17은 본 발명의 그룹-독립형 메시지 전송 시스템에 있어서, 응용 모듈을 함께 구비하는 경우의 시스템 구성도를 나타낸 것이다.
도 17을 참조하여 이를 살펴보면 다음과 같다.
그룹 관리자 또는 그룹 가입자는 예컨대, Windows 98을 컴퓨터 시스템의 OS로서 사용할 수 있다. 이러한 OS는 API(Application Program Interface : 192)에 하이 레벨 명령어를 제공하여 각 응용 모듈의 동작을 제어한다.
그룹-독립형 메시지 전송 시스템(200)은 API(192)로부터 제공되는 하이 레벨 명령어에 따라 대응하는 메시지 송신부(210), 메시지 수신부(230) 또는 각 응용 모듈을 식별하고, 하이 레벨 명령어를 디코딩하여 해당하는 곳으로 제공하는 하이 레벨 명령어 처리부(202)를 포함한다. 메시지 송신부(210), 메시지 수신부(230) 및 응용 모듈 제어부(250)는 하이 레벨 명령어 처리부(202)로부터 제공된 명령어에 따라 메시지 송신 및 수신, 응용 모듈(302, 304, 306, 308)의 동작을 제어한다. 즉, 하이 레벨 명령어 처리부(202)는 API를 통하여 제공된 하이 레벨 명령어에 따라 여기에 대응하는 응용 모듈이 존재하는지를 식별하고, 대응되는 응용 모듈이 존재하는 경우에 해당하는 응용 모듈에서 인식할 수 있는 명령어로 디코딩하여 해당하는 매핑부에 전송하거나 메시지 전송을 제어한다.
응용 모듈 제어부(250)는 음성에 의한 메시지를 전송하는 음성 모듈(302)과, 워드 프로세서의 기능을 수행하는 문서 처리 모듈(308), 다른 사용자와 채팅할 수 있는 기능을 제공하는 채팅 모듈(306) 및 번역 모듈(304)에 대한 매핑부(251, 253, 255, 257)와 인터페이스부(252, 254, 256, 258)를 각각 포함한다.
음성 모듈 매핑부(251)는 하이 레벨 명령어 처리부(202)에서 음성 송신 또는 음성 수신을 위하여 전송된 하이 레벨의 명령어를 제공받아, 음성 모듈(302)에서 처리할 수 있는 디바이스 레벨로 매핑하고, 음성 모듈 인터페이스부(252)를 통하여 음성 모듈(302)로 제공한다. 즉, 메시지 전송 그룹 내에서 음성으로 메시지를 전송하려는 사용자가 마이크와 같은 음성 입력 장치를 통하여 음성을 입력하면, 음성 모듈(302)에 의하여 디지털 음성 신호로 변환되고, 변환된 음성 신호가 메시지 전송 그룹에 속하는 그룹 가입자에게 전송된다. 그리고, 그룹 가입자 측에서는 음성 모듈 매핑부(251) 및 음성 모듈 인터페이스부(252)를 통하여 수신된 디지털 음성 신호를 음성 모듈(302)로 제공하고, 음성 모듈(302)에서 이를 음성 신호로 변환하여 스피커와 같은 음성 출력 장치를 통하여 출력한다. 따라서, 그룹 가입자는 그룹 관리자가 음성으로 전송한 내용을 음성으로 청취할 수 있다.
문서 처리 모듈 매핑부(253) 및 문서 처리 모듈 인터페이스부(254)는 사용자가 텍스트 메시지 이외에 워드 프로세서 형태로 메시지를 작성하고자 하는 경우에, 문서 처리 모듈(308)의 기능을 사용할 수 있도록 해 주는 부분이다. 즉, 문서 처리 모듈 매핑부(253)는 하이 레벨 명령어 처리부(202)로부터 문서 처리 모듈(308)을 이용하기 위한 하이 레벨 명령어를 제공받아 이를 디바이스 레벨의 명령어로 매핑시키고, 문서 처리 모듈 인터페이스부(254)를 통하여 문서 처리 모듈(308)로 제공한다. 이 때, 문서 처리 모듈(308)의 기능은 새로운 윈도우를 통하여 구현하지 않고 텍스트 메시지를 작성하기 위한 윈도우를 동일하게 사용하도록, 메시지 작성 윈도우의 세션을 일시적으로 문서 처리용 세션으로 차용한다. 그에 따라 메시지 전송 시스템(200)은 사용자가 워드 프로세서의 기능을 사용하는 동안에만 문서 처리 모듈(308)의 기능을 호출하고, 음성 모듈(302)이나 채팅 모듈(306), 텍스트 메시지 작성 기능을 사용하는 경우에는 문서 처리 모듈(308)을 닫아두기 때문에 데이터 처리의 속도 및 효율성을 개선할 수 있다.
문서 처리 모듈(308)이 제공할 수 있는 문서 편집 기능을 예로 들면, 파일 기능, 편집 기능, 보기 기능, 삽입 기능, 포맷 기능 및 도구 기능을 포함할 수 있다. 파일 기능은 파일 열기, 파일 닫기, 저장, 새 이름으로 저장, 프린트 설정 및 인쇄 기능을 포함할 것이다. 편집 기능은 복사, 오려두기, 찾기 및 바꾸기 기능을 포함할 것이다. 보기 기능은 실제 크기, 확대 및 축소 기능을 포함할 것이다. 삽입 기능은 HTML(Hyper Text Mark-up Language), 이미지, 클립 아트(Clip art) 또는 기타 문서 파일을 포함할 수 있다. 포맷 기능은 텍스트, 파일 크기 및 파일 형태를 규정할 수 있다. 도구 기능은 사용 언어 및 언어 변환 기능을 포함할 것이다.
한편, 메시지를 송신하는 사용자가 문서 처리 모듈(308)을 이용하여 메시지를 작성하고 이를 전송하는 경우에, 전송되는 메시지에 그룹 관리자가 사용한 문서 처리 모듈(308)의 코드가 첨부되어 전송된다. 따라서, 그룹 가입자 측에서는 수신된 메시지에 첨부된 코드를 확인함으로써, 그룹 관리자가 사용한 문서 처리 모듈(308)을 확인할 수 있다. 그에 따라 그룹 가입자 측에서는 해당하는 문서 처리 모듈(308)을 호출하고, 호출된 문서 처리 모듈(308)을 통하여 화면에 메시지 내용을 디스플레이할 수 있다.
채팅 모듈(306)은 메시지 전송 그룹을 구성한 그룹 관리자 또는 그룹 가입자가 대화방 관리자로 등록하고, 다른 사용자와의 채팅을 위하여 사용할 수 있는 모듈이다. 채팅 모듈 매핑부(255)는 대화방을 개방하기 위하여, 하이 레벨 명령어 처리부(202)를 통하여 인가된 하이 레벨 명령어를 제공받아 채팅 모듈(306)이 인식할 수 있는 디바이스 레벨의 명령어로 매핑시킨다. 디바이스 레벨의 명령어는 채팅 모듈 인터페이스부(256)를 통하여 채팅 모듈(306)로 제공되고, 채팅 모듈(306)이 실행되어 대화방에 참석한 사용자들 사이의 채팅이 가능하게 된다. 이 때에도, 채팅 모듈(306)의 기능이 메시지 전송을 위한 윈도우 화면에서 구현되도록, 채팅 세션을 메시지 전송 윈도우로 매핑시키는 것이 바람직하다.
번역 모듈(304)은 그룹 가입자가 수신된 메시지를 확인할 수 있도록 그룹 가입자의 모국어로 번역하는 기능을 수행한다. 따라서, 메시지 전송 과정에서 번역 모듈(304)이 사용하는 것이 아니라, 수신 과정에서 번역 모듈(304)이 번역 기능을 수행하도록 구현하는 것이 바람직하다.
그룹 관리자가 메시지를 작성하여 메시지 전송 그룹에 속하는 그룹 가입자에게 전송하는 경우에, 그룹 관리자가 작성한 언어 코드가 메시지에 첨부되어 전송된다. 따라서, 그룹 가입자 측에서는 그룹 관리자가 작성한 메시지가 어떠한 언어로 작성되었는지 확인할 수 있다.
따라서, 전송된 메시지가 그룹 가입자가 사용하는 언어로 작성되지 않은 경우에, 하이 레벨 명령어 처리부(202)에서 번역 모듈 매핑부(257)로 메시지 번역을 지시하는 하이 레벨 명령어가 제공된다. 번역 모듈 매핑부(257)는 하이 레벨 명령어를 번역 모듈(304)이 처리할 수 있는 디바이스 레벨 명령어로 매핑시키고, 번역 모듈 인터페이스부(258)를 통하여 번역 모듈(304)로 제공한다. 그에 따라, 그룹 관리자가 서로 다른 언어를 사용하여 메시지를 작성하여 전송하더라도 그룹 가입자는 자신이 사용하는 언어로 번역된 메시지를 확인할 수 있다.
한편, 메시지 전송 그룹의 그룹 관리자는 메시지 전송 그룹에 가입을 희망하는 사용자로부터 가입 신청을 받아 이를 메시지 전송 그룹에 포함시킬 때, 각 그룹 가입자가 사용하는 언어 정보를 함께 저장함으로써, 그룹 관리자 측에서 각 그룹 가입자에 해당하는 언어로 번역하여 전송할 수도 있다. 즉, 메시지를 수신하는 그룹 가입자에서 전송된 메시지를 번역하는 것이 아니라, 그룹 관리자 측에서 작성된 메시지를 각 그룹 가입자가 사용하는 언어로 번역하고, 번역된 메시지를 해당하는 그룹 가입자에게 전송하는 것이다. 이러한 경우에는 메시지를 전송하는 그룹 관리자 측에 부하가 좀더 늘어나게 될 것이다.
이러한 기능을 수행하도록 구성된 API(192)에 대한 세부적인 멤버 함수를 좀 더 상세하게 기술하면 다음과 같다.
개방 API(Open API)는 사용자의 요청에 따라 메시지 전송 모듈 또는 다른 응용 모듈의 세션을 개방하기 위하여 사용된다.
폐쇄 API(Close API)는 사용된 모듈에 대한 세션을 종료하는데 사용된다.
복사 API(Copy API)는 메시지 전송 그룹의 서버 역할을 하는 그룹 관리자가 복수의 그룹 가입자에게 메시지를 전송하는 경우에, 전송되는 메시지를 복사하는데 사용된다.
검색 API(Retrieve API)는 그룹-독립형 메시지 전송 시스템에서 호출 가능한 응용 모듈을 검색하는데 사용된다.
상태 API(Status API)는 메시지 전송 모듈 또는 다른 응용 모듈의 동작 상태를 판단하기 위해 사용된다.
초기화 API(Initialize API)는 메시지 전송 모듈 또는 다른 응용 모듈을 호출할 수 있도록 초기화하는 기능을 가진다.
리스트 API(List API)는 메시지 전송 그룹에 속하는 그룹 가입자에 관한 사용자 정보 리스트를 확인하는데 사용된다.
기록 API(Register API)는 메시지 전송 그룹에 가입을 희망하는 그룹 가입자들에 대한 정보를 기록하는 기능을 가진다.
삭제 API(Unregister API)는 메시지 전송 그룹으로부터 가입된 그룹 가입자의 등록을 해제하는데 사용된다.
읽기 API(Read API)는 그룹 관리자 또는 그룹 가입자로부터 전송된 메시지의 데이터를 판독하는데 사용된다.
기록 API(Write API)는 전송할 메시지를 작성하는데 사용된다.
속성 API(Attribute API)는 메시지에 응용 모듈에 관한 속성을 첨부하거나, 메시지에 첨부된 응용 모듈에 관한 속성을 판별하는데 사용된다.
결국, 사용되는 응용 모듈이나 메시지 전송 형태에 따라 이와 같은 개별적인 API가 실행되고, 그에 따라 그룹 관리자 또는 그룹 가입자는 메시지 작성 및 응용 모듈의 이용이 가능하다.
상기에서는 음성 모듈, 문서 처리 모듈, 채팅 모듈 및 번역 모듈을 응용 모듈로서 사용하는 경우를 예로 들어 설명하였지만, 화상 처리 모듈이나 이미지 처리 모듈, 무선 메시지 전송을 위한 무선 전송 모듈 등을 응용 모듈에 포함시킬 수 있는 것은 본 발명의 기술 분야에서 통상의 지식을 가진 당업자에게는 자명할 것이다.
특히, 실시간 화상 채팅을 이용하는 경우에 응용 모듈로서의 실시간 화상 처리 모듈과 텍스트 메시지 전송 기능을 함께 사용할 수 있다.
한편, 메시지 전송 그룹에서 서버 역할을 하는 그룹 관리자와 클라이언트 역할을 하는 그룹 가입자 사이에 메시지 전송 및 채팅이 이루어질 수 있고, 동일한 메시지 전송 그룹에 속한다면 그룹 가입자들 사이에서도 메시지 전송 및 채팅이 이루어지도록 할 수 있다. 서버 역할을 하는 그룹 관리자는 메시지 전송 그룹에 속하는 다른 그룹 가입자의 IP 어드레스를 다른 그룹 가입자의 요청에 따라 제공함으로써, 각 그룹 가입자는 그룹 관리자 이외에 다른 그룹 가입자와의 메시지 전송 및 채팅이 가능하다.
이 때, 본 발명의 그룹-독립형 메시지 전송 시스템은 메시지 전송 그룹 내에서 서버로서의 그룹 관리자와 클라이언트로서의 그룹 가입자, 그리고 이들 그룹 관리자와 그룹 가입자가 사용하는 응용 모듈에 따라 각각 일정한 포트 번호를 할당함으로써, 그에 따라 동작이 제어될 것이다.
예컨대, 메시지 전송 및 채팅 기능을 위하여 설정된 기본적인 포트 번호로서 메시지 전송 그룹에 속하는 그룹 가입자의 요청에 따라 서버 역할을 승인하기 위하여 포트 번호 5,000번을 할당한다. 그리고, 포트 번호 6,000번은 그룹 관리자가 서버로서의 메시지 전송 및 채팅 기능을 수행하기 위하여 사용하고, 포트 번호 6,001번은 그룹 가입자들 사이의 채팅을 위하여 사용한다. 또한, 포트 번호 7,000번은 그룹 가입자의 입장에서 서버 역할을 하는 그룹 관리자에게 접속하는 경우에 사용하고, 포트 번호 8,000번은 그룹 가입자가 그룹 관리자로부터 전송된 메시지를 수신하는 경우에 사용하도록 설정할 수 있다.
이와 같이, 포트 번호가 설정된 경우를 예로 들어 그룹 관리자와 그룹 가입자 사이에 전송되는 데이터의 형태를 살펴보면 다음과 같다.
도 18은 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 메시지 전송 그룹에 속하는 그룹 가입자가 그룹 관리자에게 접속을 요청하는 경우에 전송되는 데이터의 포맷을 나타낸 것이다.
도 18을 참조하면, 접속 요청 시에 전송되는 데이터는 목적지 IP 어드레스, 포트 번호, ID, 패스워드, 사용자 성명, E-메일 주소, 핸드폰 번호 및 발신지 IP 어드레스를 포함할 수 있다.
발신지 IP 어드레스는 그룹 관리자에게 접속을 요청하는 그룹 가입자의 IP 어드레스이고, 목적지 IP 어드레스는 그룹 관리자의 IP 어드레스를 나타내는 16 비트 데이터가 될 것이다. 그룹 가입자가 그룹 관리자에게 접속을 요청하는 경우로서, 그룹 관리자가 서버 역할을 승인하도록 포트 번호는 5,000번이 될 것이다. ID, 패스워드, 사용자 성명, E-메일 주소 및 핸드폰 번호는 사용자가 메시지 전송 그룹에 가입하거나 이미 가입된 메시지 전송 그룹에서 그룹 관리자에게 연결 설정을 요청하는 경우에 전송하는 그룹 가입자의 개인 정보에 해당한다. 또한, 발신지 IP 어드레스는 그룹 관리자에게 접속을 요청하는 그룹 가입자의 IP 어드레스로서, 16비트로 할당될 것이다.
도 19는 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 서버 역할을 하는 그룹 관리자가 복수의 그룹 가입자에게 메시지를 전송하는 경우의 데이터 포맷을 나타낸 것이다.
도 19를 참조하면, 메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자는 그룹 내에 속하는 복수의 그룹 가입자를 대상으로 같은 내용의 메시지를 전송하는 것이 가능하다. 이를 위하여, 목적지 IP 어드레스, 포트 번호, 메시지 데이터, 오류 체크 비트 및 전송 확인 비트가 포함된다.
목적지 IP 어드레스는 메시지를 수신한 그룹 가입자의 IP 어드레스로서, 메시지 데이터에 그룹 가입자들의 IP 어드레스를 순차적으로 첨부하여 각 그룹 가입자들에게 메시지를 전송한다. 즉, 복수의 그룹 가입자가 존재하는 경우에 동일한 메시지 내용을 그룹 가입자의 수만큼 복사하고, 각 그룹 가입자의 IP 어드레스에 대하여 각각 메시지를 발송한다. 포트 번호는 그룹 가입자가 메시지를 수신하는 클라이언트의 역할을 위하여 할당된 8,000번이 사용될 것이다.
메시지 데이터는 그룹 관리자가 작성한 메시지 내용이 첨부되는 것으로, 텍스트로 작성된 경우에는 ASCII 코드, 그 이외에 워드 프로세서나 파일이 첨부된 경우는 이진 형태로 이루어질 것이다. 오류 체크 비트는 첨부된 메시지 데이터가 전송 과정에서 오류가 발생하는지 판단하기 위한 부분이고, 전송 확인 비트는 그룹 가입자가 전송된 메시지를 정상적으로 수신했는지를 판단하기 위한 부분이다. 그룹 가입자가 오류 없이 정상적으로 메시지를 수신한 경우에, 그룹 관리자에게 메시지의 정상 수신을 나타내는 응답 신호가 전송될 것이다. 반면에, 전송된 메시지에 오류가 발생하거나 일정 시간 동안 그룹 가입자가 전송된 메시지를 수신하지 못한 경우에는 메시지를 재전송하거나 그룹 가입자의 무선 단말기에 문자 메시지로 전송할 수 있다.
도 20은 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 클라이언트의 역할을 하는 그룹 가입자가 메시지 전송 그룹에 속하는 다른 그룹 가입자에게 메시지를 전송하는 경우의 데이터 포맷을 나타낸 것이다.
도 20을 참조하면, 제 1 그룹 가입자는 동일한 메시지 전송 그룹에 속하는 제 2 그룹 가입자에게 메시지를 전송하기 위하여, 제 2 그룹 가입자의 IP 어드레스를 알아야 한다. 이를 위하여, 제 1 그룹 가입자는 그룹 관리자에게 제 2 그룹 가입자의 IP 어드레스를 요청할 것이다. 이 때에도, 도 18과 같이 그룹 관리자로 하여금 서버로서의 역할을 승인하도록 하는 5,000번의 포트 번호를 사용할 것이다.
제 1 그룹 가입자가 메시지를 전송하고자 하는 제 2 그룹 가입자의 IP 어드레스가 확인되면, 이를 목적지 IP 어드레스로 하여 포트 번호와 메시지 데이터, 발신지 IP 어드레스, 오류 체크 비트 및 전송 확인 비트로 이루어진 데이터를 전송한다. 이 때, 제 2 그룹 가입자는 메시지 수신을 위한 클라이언트의 역할을 수행하기 때문에 포트 번호가 8,000번으로 할당되고, 발신지 IP 어드레스는 제 1 그룹 가입자의 IP 어드레스가 된다. 그밖에 오류 체크 비트와 전송 확인 비트는 도 19의 경우와 동일하다. 따라서, 제 2 그룹 가입자는 메시지를 전송한 상대방(제 1 그룹 가입자)이 누구인지를 확인할 수 있다.
도 21은 본 발명의 바람직한 실시예에 따른 그룹-독립형 메시지 전송 시스템에 있어서, 메시지 전송 기능 이외에 응용 모듈을 함께 사용하여 메시지를 전송하는 경우의 데이터 포맷을 나타낸 것이다.
그룹 관리자가 응용 모듈을 사용하여 메시지를 전송하는 경우를 도 21을 참조하여 살펴보면 다음과 같다.
이 때, 그룹 관리자가 한 명 또는 복수의 그룹 가입자에게 전송하는 데이터는 도 19 또는 도 20에 도시된 메시지 전송 데이터에 응용 모듈의 사용을 나타내는 헤더(Header)가 더 첨부된다. 헤더에 포함되는 내용은 그룹 관리자가 사용한 응용 모듈의 코드와, 응용 모듈에서 제공하는 기능 중에서 그룹 관리자가 사용한 기능의 코드 및 그룹 관리자와 그룹 가입자가 서로 다른 언어를 사용하는 경우에 번역 모듈의 제어를 위한 언어 코드가 포함될 수 있다.
응용 모듈 코드는 텍스트 메시지 작성 이외에 채팅 모듈, 번역 모듈, 워드 프로세서와 같은 문서 처리 모듈 및 음성 모듈에 부여된 코드로서, 그룹 관리자가 사용한 응용 모듈의 코드에 해당한다. 또한, 상기에서는 응용 모듈의 예로써, 채팅 모듈, 번역 모듈, 문서 처리 모듈 및 음성 모듈의 경우를 예로 들었지만, 이 밖에 화상 처리 모듈이나 이미지 처리 모듈 등이 포함될 수 있다. 사용 기능 코드는 응용 모듈 중에서 사용자가 이용한 기능을 나타내는 코드이다. 예컨대, 그룹 관리자가 문서 처리 모듈을 이용한 경우에 문서 처리 기능 중에서 그룹 관리자가 확대 기능을 사용한 경우에, 이를 나타내는 코드에 해당할 것이다. 언어 코드는 그룹 관리자가 사용하는 언어를 나타내는 코드로서, 그룹 가입자는 전송된 메시지에 대한 언어 코드를 판별하여 그룹 가입자가 사용하는 언어와 다른 경우에는 번역 모듈을 실행하여, 그룹 가입자가 사용하는 언어로 번역하여 표시한다. 그에 따라, 메시지를 전송하는 그룹 관리자는 서로 다른 언어를 사용한 그룹 가입자가 메시지 전송 그룹에 포함되어 있더라도, 별도의 번역 기능을 사용하지 않고 일반적인 메시지 전송 과정과 동일하게 메시지를 전송하면 된다.
이상에서 설명한 그룹-독립형 메시지 전송 시스템을 이용하여 메시지를 전송하면, 한 명의 증권 전문가에 속하여 증권 정보를 제공받는 복수의 투자자와 같이 하나의 그룹을 형성하여 보안성 있는 메시지를 신속하게 제공하는 경우에 효과적으로 이용될 수 있다. 이밖에, 병원에서 진료를 담당하는 의사가 진료 결과에 따라 처방전을 작성하고, 작성된 처방전을 담당 의사나 간호사에게 제공하는 것과 같이 일련의 수직 서열로 이루어진 그룹이 형성되는 곳에 바람직하게 이용될 수 있다.
상술한 바와 같이, 본 발명의 그룹-독립형 메시지 전송 방법 및 시스템에 따르면, 별도의 서버를 사용하지 않고 메시지를 송신자와 그룹 가입자 사이에 Peer-to-Peer 형태로 연결하고, 이들 사이에 그룹 관리자를 중심으로 하는 그룹을 형성함으로써, 그룹에 속하는 사용자들 사이에 메시지를 보다 정확하고 신속하게 전송할 수 있으며, 전송되는 메시지의 보안성을 유지할 수 있다.
이 때, 각 사용자는 자신이 서버로서의 역할을 하는 메시지 전송 그룹을 임의로 형성할 수도 있고, 다른 메시지 전송 그룹에 가입할 수도 있다. 따라서, 각 사용자는 서버 역할 및 클라이언트 역할을 동시에 수행할 수 있으며, 형성된 그룹의 특색에 따라 효과적인 메시지 전송이 가능하다.
또한, 전송되는 메시지를 판별하여 그룹 가입자가 사용하는 언어로 번역하는 번역 모듈을 구비함으로써, 동일한 메시지 전송 그룹에 속하는 사용자가 서로 다른 언어를 사용하는 경우에도 메시지 전송 과정에서의 어려움이나 불편함을 제거할 수 있다.
또한, 메시지 전송을 위하여 요구되는 별도의 응용 모듈을 포함시켜서 통합된 기능을 가지는 어플리케이션을 구성하여, 사용자의 선택에 따라 각 응용 모듈의 기능을 사용할 수 있도록 함으로써, 텍스트 메시지 전송에 한정되지 않고, 음성이나, 채팅, 워드 프로세서 기능 등의 다양한 응용 기능을 함께 사용할 수 있다.
상기에서는 본 발명의 그룹-독립형 메시지 전송 방법 및 시스템의 바람직한 실시예를 통하여 상세하게 기술하였지만, 그 내용은 하기 청구범위에 기술된 본 발명의 분야에만 한정되지 않는다. 또한, 상기 기술 분야에 있어서, 통상의 지식을 가진 사람은 본 발명의 범위 내에서 이를 다양하게 변경하거나 수정할 수 있는 것이 자명할 것이다.

Claims (35)

  1. 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서,
    메시지 전송 그룹은 적어도 한 명의 사용자를 포함하고, 메시지 전송 그룹에 포함되는 사용자 시스템은 다른 메시지 전송 그룹에 속하는 사용자 시스템으로 메시지를 전송할 수 없도록 각 메시지 전송 그룹이 독립적인 관계를 가지는 적어도 하나의 독립형 메시지 전송 그룹으로 이루어지되,
    상기 독립형 메시지 전송 그룹은
    동일한 메시지 전송 그룹에 가입한 적어도 한 명의 멤버를 관리하고, IP 어드레스를 이용하여 적어도 한 명의 멤버에게 일괄적으로 메시지를 송신하는 서버 역할의 그룹 관리자 시스템; 및
    메시지 전송 그룹에 멤버로서 가입되어 상기 서버 역할을 하는 그룹 관리자 시스템으로부터 전송된 메시지를 수신하는 적어도 하나의 클라이언트 역할의 그룹 가입자 시스템
    을 포함하는 그룹-독립형 메시지 전송 시스템.
  2. 제1항에 있어서,
    상기 그룹 관리자 시스템은
    적어도 하나의 독립형 메시지 전송 그룹을 형성할 수 있는
    그룹-독립형 메시지 전송 시스템.
  3. 제1항에 있어서,
    상기 그룹 가입자 시스템은
    적어도 하나의 독립형 메시지 전송 그룹에 가입할 수 있는
    그룹-독립형 메시지 전송 시스템.
  4. 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 방법에 있어서,
    메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템을 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계;
    적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 단계;
    독립형 메시지 전송 그룹에 가입된 적어도 한 명의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자 시스템과의 연결 세션을 종료하는 단계;
    독립형 메시지 전송 그룹에 속하는 적어도 하나의 그룹 가입자 시스템에 전송하기 위하여, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 메시지를 구성하는 단계; 및
    메시지를 전송 받을 적어도 하나의 그룹 가입자 시스템에 대한 세션을 개방하고, IP 어드레스를 이용하여 해당하는 그룹 가입자 시스템에게 구성된 메시지를 전송하는 단계
    를 포함하는 그룹-독립형 메시지 전송 방법.
  5. 제4항에 있어서,
    상기 가입 요청 신호는
    가입을 요청하는 사용자의 IP 어드레스, 포트 번호, 아이디, 패스워드, 성명, E-메일 주소 또는 연락처 정보 중 적어도 하나
    를 포함하는 그룹-독립형 메시지 전송 방법.
  6. 제4항에 있어서,
    상기 메시지를 구성하는 단계는
    응용 프로그램 인터페이스를 이용하여 메시지 작성에 응용 가능한 응용 모듈을 호출하는 단계; 및
    호출된 응용 모듈을 사용하여 메시지를 구성하고, 메시지를 구성하는데 사용된 응용 모듈 정보를 첨부하는 단계
    를 포함하는 그룹-독립형 메시지 전송 방법.
  7. 제6항에 있어서,
    상기 응용 모듈은
    번역 모듈, 워드 프로세서 모듈, 채팅 모듈, 음성 처리 모듈, 이미지 처리 모듈 또는 화상 처리 모듈 중 적어도 하나
    를 포함하는 그룹-독립형 메시지 전송 방법.
  8. 제6항에 있어서,
    상기 응용 모듈을 호출하는 단계는
    상기 메시지 작성 윈도우를 통하여 호출된 응용 모듈을 사용할 수 있도록, 응용 모듈의 세션을 메시지 작성 윈도우로 링크시키는 그룹-독립형 메시지 전송 방법.
  9. 제6항에 있어서,
    상기 응용 모듈을 호출하는 단계는
    서로 다른 포트 번호를 이용하여 각 응용 모듈을 호출하는 그룹-독립형 메시지 전송 방법.
  10. 제6항에 있어서,
    상기 응용 모듈 정보는
    그룹 관리자 시스템이 호출한 응용 모듈 코드,
    호출된 응용 모듈의 기능 중에서 그룹 관리자 시스템이 사용한 기능을 표시하는 기능 코드, 또는
    그룹 관리자 시스템이 사용하는 언어를 나타내는 언어 코드 중 적어도 하나
    를 포함하는 그룹-독립형 메시지 전송 방법.
  11. 제4항에 있어서,
    상기 메시지를 전송하는 단계에서, 전송되는 메시지 데이터는
    아스키(ASCII) 코드로 구성되는 그룹-독립형 메시지 전송 방법.
  12. 제4항에 있어서,
    상기 메시지를 전송하는 단계에서, 전송되는 메시지는
    에러 체크 데이터 또는 전송 오류 확인 데이터
    를 더 포함하는 그룹-독립형 메시지 전송 방법.
  13. 제4항 또는 제12항에 있어서,
    전송 메시지에 에러가 발생하거나, 전송 오류가 발생하는 경우에 해당하는 그룹 가입자 시스템에게 메시지를 재전송하는 단계
    를 더 포함하는 그룹-독립형 메시지 전송 방법.
  14. 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 방법에 있어서,
    메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템을 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계;
    적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 단계;
    독립형 메시지 전송 그룹에 가입된 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자 시스템과의 연결 세션을 종료하는 단계;
    메시지 작성 윈도우를 통하여 구현되도록, 응용 프로그램 인터페이스를 이용하여 메시지 작성에 사용할 수 있는 응용 모듈을 호출하는 단계;
    상기 호출된 응용 모듈을 사용하여 독립형 메시지 전송 그룹에 속하는 적어도 하나의 그룹 가입자 시스템에게 전송하기 위하여, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 메시지를 구성하는 단계;
    상기 메시지에 메시지 작성에 사용된 응용 모듈 정보를 첨부하는 단계; 및
    메시지를 전송 받을 적어도 하나의 그룹 가입자 시스템에 대한 세션을 개방하고, IP 어드레스를 이용하여 해당하는 그룹 가입자 시스템에게 구성된 메시지를 전송하는 단계
    를 포함하는 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지 전송 방법.
  15. 제14항에 있어서,
    상기 응용 모듈은
    번역 모듈, 워드 프로세서 모듈, 채팅 모듈, 음성 처리 모듈, 이미지 처리 모듈 또는 화상 처리 모듈 중 적어도 하나
    를 포함하는 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지 전송 방법.
  16. 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 방법에 있어서,
    메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템을 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계;
    적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 단계;
    독립형 메시지 전송 그룹에 가입된 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자 시스템과의 연결 세션을 종료하는 단계;
    독립형 메시지 전송 그룹에 속하는 제 1 그룹 가입자 시스템이 동일한 메시지 전송 그룹에 속하는 제 2 그룹 가입자 시스템의 IP 어드레스를 그룹 관리자 시스템을 통하여 확인하는 단계;
    제 1 그룹 가입자 시스템에서, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 메시지를 구성하는 단계; 및
    IP 어드레스를 이용하여 제 2 그룹 가입자 시스템에게 구성된 메시지를 전송하는 단계
    를 포함하는 독립형 메시지 전송 그룹 내에서 그룹 가입자 시스템 사이의 메시지 전송 방법.
  17. 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 방법에 있어서,
    공인 IP 어드레스를 사용하며, 메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템을 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계;
    비공인 IP 어드레스를 사용하는 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 단계;
    독립형 메시지 전송 그룹에 가입된 비공인 IP 어드레스를 사용하는 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자 시스템과의 연결 세션을 유지하는 단계;
    독립형 메시지 전송 그룹에 속하는 적어도 하나의 그룹 가입자 시스템에게 전송하기 위하여, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 메시지를 구성하는 단계; 및
    상기 구성된 메시지를 수신할 대상에 포함되며, 비공인 IP 어드레스를 가지는 그룹 가입자 시스템이 연결 세션을 통하여 일정 시간 간격으로 메시지를 확인하는 과정에서, 전송 메시지를 확인한 경우에, 해당하는 그룹 가입자 시스템의 전송 요청에 따라 연결 세션을 통하여 메시지를 전송하는 단계
    를 포함하는 독립형 메시지 전송 그룹 내에서 비공인 IP 어드레스를 사용하는 그룹 가입자 시스템에 대한 메시지 전송 방법.
  18. 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서,
    메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지는 적어도 하나의 독립형 메시지 전송 그룹을 구성하고, 독립형 메시지 전송 그룹에 가입되어 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템에 관한 사용자 정보를 관리하는 메시지 전송 그룹 관리 모듈;
    적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 가입자 관리 모듈;
    독립형 메시지 전송 그룹에 가입된 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장한 후에 그룹 가입자 시스템과의 연결 세션을 종료하는 세션 관리 모듈; 및
    독립형 메시지 전송 그룹에 속하는 적어도 하나의 그룹 가입자 시스템에게 전송하기 위하여, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 전송 메시지를 구성하고, IP 어드레스를 이용하여 메시지를 전송 받을 적어도 하나의 그룹 가입자 시스템에 대한 세션을 개방하여 메시지를 해당하는 그룹 가입자 시스템에게 전송하는 메시지 처리 모듈
    을 포함하는 그룹-독립형 메시지 전송 시스템.
  19. 제18항에 있어서,
    상기 가입 요청 신호는
    가입을 요청하는 사용자의 IP 어드레스, 포트 번호, 아이디, 패스워드, 성명, E-메일 주소 또는 연락처 정보 중 적어도 하나
    를 포함하는 그룹-독립형 메시지 전송 시스템.
  20. 제18항에 있어서,
    메시지 작성에 이용될 수 있는 적어도 하나의 응용 모듈;
    사용자의 요청에 따라 상기 응용 모듈의 기능을 호출할 수 있도록 응용 모듈에 대한 하이 레벨 명령어를 발생하는 응용 프로그램 인터페이스부;
    상기 응용 프로그램 인터페이스부를 통하여 제공된 하이 레벨 명령에 따라 해당하는 하위의 응용 모듈을 판별하고, 해당하는 응용 모듈을 제어할 수 있도록 전송된 하이 레벨 명령을 디코딩하는 하이 레벨 명령어 처리부; 및
    상기 하이 레벨 명령어 처리부를 통하여 제공된 명령을 응용 모듈에서 인식할 수 있는 하위 레벨의 명령으로 변환하여 해당하는 응용 모듈을 호출하는 응용 모듈 제어부
    를 더 포함하는 그룹-독립형 메시지 전송 시스템.
  21. 제20항에 있어서,
    상기 응용 모듈은
    번역 모듈, 워드 프로세서 모듈, 채팅 모듈, 음성 처리 모듈, 이미지 처리 모듈 또는 화상 처리 모듈 중 적어도 하나
    를 포함하는 그룹-독립형 메시지 전송 시스템.
  22. 제20항에 있어서,
    상기 응용 모듈 제어부는
    하이 레벨 명령어 처리부를 통하여 제공된 하이 레벨 명령을 해당하는 응용 모듈에서 처리 가능한 하위 레벨 명령으로 매핑시키는 명령어 레벨 매핑부; 및
    상기 명령어 레벨 매핑부를 통하여 제공된 하위 레벨 명령을 해당하는 응용 모듈에서 실행되도록, 인터페이스 역할을 하는 모듈 인터페이스부
    를 포함하는 그룹-독립형 메시지 전송 시스템.
  23. 제18항에 있어서,
    호출된 응용 모듈이 메시지 작성 윈도우를 통하여 표시될 수 있도록, 응용 모듈의 세션을 메시지 작성 윈도우로 링크시키는 모듈 링크부
    를 더 포함하는 그룹-독립형 메시지 전송 시스템.
  24. 제18항에 있어서,
    상기 응용 모듈 제어부는
    서로 다른 포트 번호를 사용하여 각 응용 모듈을 호출하는 그룹-독립형 메시지 전송 시스템.
  25. 제18항에 있어서,
    상기 메시지 처리 모듈은
    사용자의 요청에 따라 호출된 응용 모듈을 표시하는 응용 모듈 코드, 호출된 응용 모듈의 기능 중에서 그룹 관리자가 사용한 기능을 표시하는 기능 코드, 또는 그룹 관리자가 사용하는 언어를 나타내는 언어 코드 중 적어도 하나를 메시지에 첨부하는 코드 처리 모듈
    을 더 포함하는 그룹-독립형 메시지 전송 시스템.
  26. 제18항에 있어서,
    상기 메시지는
    아스키(ASCII) 코드로 구성되어 전송되는 그룹-독립형 메시지 전송 시스템.
  27. 제18항에 있어서,
    상기 메시지는
    에러 체크 데이터 또는 전송 오류 확인 데이터
    를 더 포함하는 그룹-독립형 메시지 전송 시스템.
  28. 제18항 또는 제27항에 있어서,
    전송 메시지에 에러가 발생하거나, 전송 오류가 발생하는 경우에 해당하는 그룹 가입자 시스템에게 메시지를 재전송하는 메시지 전송 제어 모듈
    을 더 포함하는 그룹-독립형 메시지 전송 시스템.
  29. 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서,
    메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지는 적어도 하나의 독립형 메시지 전송 그룹을 구성하고, 독립형 메시지 전송 그룹에 가입되어 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템에 관한 사용자 정보를 관리하는 메시지 전송 그룹 관리 모듈;
    적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 가입자 시스템 관리 모듈;
    독립형 메시지 전송 그룹에 가입된 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장한 후에 그룹 가입자 시스템과의 연결 세션을 종료하는 세션 관리 모듈;
    메시지 작성에 이용될 수 있는 적어도 하나의 응용 모듈;
    사용자의 요청에 따라 상기 응용 모듈의 기능을 호출할 수 있도록, 하이 레벨의 명령을 발생하는 응용 프로그램 인터페이스부;
    상기 응용 프로그램 인터페이스부를 통하여 제공된 하이 레벨 명령을 하위 레벨의 명령어로 변환시켜서 해당하는 응용 프로그램을 호출하는 응용 모듈 제어부; 및
    독립형 메시지 전송 그룹에 속하는 적어도 하나의 그룹 가입자 시스템에게 전송하기 위하여, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 전송 메시지를 구성하고, IP 어드레스를 이용하여 메시지를 전송 받을 적어도 하나의 그룹 가입자 시스템에 대한 세션을 개방하여 작성된 메시지를 해당하는 그룹 가입자 시스템으로 전송하는 메시지 처리 모듈
    을 포함하는 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지 전송 시스템.
  30. 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서,
    메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지는 적어도 하나의 독립형 메시지 전송 그룹을 구성하고, 독립형 메시지 전송 그룹에 가입되어 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템에 관한 사용자 정보를 관리하는 메시지 전송 그룹 관리 모듈;
    적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 가입자 시스템 관리 모듈;
    독립형 메시지 전송 그룹에 가입된 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장한 후에 그룹 가입자 시스템과의 연결 세션을 종료하는 세션 관리 모듈;
    독립형 메시지 전송 그룹에 속하는 제 1 그룹 가입자 시스템이 동일한 메시지 전송 그룹에 속하는 제 2 그룹 가입자 시스템의 IP 어드레스를 그룹 관리자 시스템에게 요청하고, 그룹 관리자 시스템으로부터 제공된 제 2 그룹 가입자 시스템의 IP 어드레스를 저장하는 IP 어드레스 관리 모듈; 및
    제 1 그룹 가입자 시스템에서, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 구성된 메시지를 IP 어드레스를 이용하여 제 2 그룹 가입자 시스템으로 전송하는 메시지 처리 모듈
    을 포함하는 독립형 메시지 전송 그룹 내에서 그룹 가입자들 사이에서의 메시지 전송 시스템.
  31. 복수의 사용자를 연결하는 별도의 메시지 전송 서버를 사용하지 않고, 개별적인 복수의 사용자 컴퓨터가 네트워크 상에서 Peer-to-Peer 방식으로 연결되어 통신 프로토콜을 통하여 메시지를 전송하는 시스템에 있어서,
    공인 IP 어드레스를 가지고 메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템에 관한 사용자 정보를 관리하는 메시지 전송 그룹 관리 모듈;
    비공인 IP 어드레스를 사용하는 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 가입자 시스템 관리 모듈;
    독립형 메시지 전송 그룹에 속하며, 비공인 IP 어드레스를 사용하는 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 사용자 정보를 접속 리스트 목록에 저장한 후에 그룹 가입자 시스템과의 연결 세션을 유지하는 세션 관리 모듈;
    독립형 메시지 전송 그룹에 속하는 적어도 하나의 그룹 가입자 시스템으로 전송하기 위하여, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 전송 메시지를 구성하는 메시지 작성 모듈; 및
    상기 구성된 메시지를 수신할 대상에 포함되며, 비공인 IP 어드레스를 가지는 그룹 가입자 시스템이 연결 세션을 통하여 일정 시간 간격으로 메시지를 확인하는 과정에서, 전송 메시지를 확인한 경우에, 해당하는 그룹 가입자 시스템의 전송 요청에 따라 연결 세션을 통하여 메시지를 전송하는 메시지 전송 제어 모듈
    을 포함하는 독립형 메시지 전송 그룹 내에서 비공인 IP 어드레스를 사용하는 그룹 가입자 시스템에 대한 메시지 전송 시스템.
  32. 독립된 메시지 전송 그룹을 형성하고, Peer-to-Peer 방식으로 상호 연결된 사용자에게 메시지를 전송하기 위하여, 디지털 처리 장치에 의해 실행될 수 있는 명령어들의 프로그램이 유형적으로 구현되어 있으며, 디지털 처리 장치에 의해 판독될 수 있는 기록 매체에 있어서,
    상기 메시지를 전송하는 방법이,
    메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템을 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계;
    적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 단계;
    독립형 메시지 전송 그룹에 가입된 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자 시스템과의 연결 세션을 종료하는 단계;
    독립형 메시지 전송 그룹에 속하는 적어도 하나의 그룹 가입자 시스템으로 전송하기 위하여, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 메시지를 구성하는 단계; 및
    메시지를 전송 받을 적어도 하나의 그룹 가입자 시스템에 대한 세션을 개방하고, IP 어드레스를 이용하여 해당하는 그룹 가입자 시스템으로 작성된 메시지를 전송하는 단계
    를 포함하는 컴퓨터 기록 매체.
  33. 독립된 메시지 전송 그룹을 형성하고, Peer-to-Peer 방식으로 상호 연결된 사용자에게 지정된 응용 모듈의 기능을 차용하여 메시지를 작성하고, 이를 전송하기 위하여, 디지털 처리 장치에 의해 실행될 수 있는 명령어들의 프로그램이 유형적으로 구현되어 있으며, 디지털 처리 장치에 의해 판독될 수 있는 기록 매체에 있어서,
    상기 지정된 응용 모듈의 기능을 차용하여 메시지를 작성하고, 이를 전송하는 방법이,
    메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템을 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계;
    적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 단계;
    독립형 메시지 전송 그룹에 가입된 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자 시스템과의 연결 세션을 종료하는 단계;
    메시지 작성 윈도우를 통하여 구현되도록, 응용 프로그램 인터페이스를 이용하여 메시지 작성에 사용할 수 있는 응용 모듈을 호출하는 단계;
    상기 호출된 응용 모듈을 사용하여 독립형 메시지 전송 그룹에 속하는 적어도 하나의 그룹 가입자 시스템에게 전송하기 위하여, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 메시지를 구성하는 단계;
    상기 메시지에 메시지 작성에 사용된 응용 모듈 정보를 첨부하는 단계; 및
    메시지를 전송 받을 적어도 하나의 그룹 가입자 시스템에 대한 세션을 개방하고, IP 어드레스를 이용하여 해당하는 그룹 가입자 시스템에게 구성된 메시지를 전송하는 단계
    를 포함하는 컴퓨터 기록 매체.
  34. 사용자들 사이에 Peer-to-Peer 방식으로 상호 연결된 독립된 메시지 전송 그룹 내에서 클라이언트 역할을 하는 그룹 가입자 시스템 사이에 메시지를 전송하기 위하여, 디지털 처리 장치에 의해 실행될 수 있는 명령어들의 프로그램이 유형적으로 구현되어 있으며, 디지털 처리 장치에 의해 판독될 수 있는 기록 매체에 있어서,
    상기 그룹 가입자 시스템 사이에 메시지를 전송하는 방법이,
    메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템을 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계;
    적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 단계;
    독립형 메시지 전송 그룹에 가입된 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 IP 어드레스 및 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자 시스템과의 연결 세션을 종료하는 단계;
    독립형 메시지 전송 그룹에 속하는 제 1 그룹 가입자 시스템이 동일한 메시지 전송 그룹에 속하는 제 2 그룹 가입자 시스템의 IP 어드레스를 그룹 관리자 시스템을 통하여 확인하는 단계;
    제 1 그룹 가입자 시스템에서, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 메시지를 구성하는 단계; 및
    IP 어드레스를 이용하여 제 2 그룹 가입자 시스템에게 구성된 메시지를 전송하는 단계
    를 포함하는 컴퓨터 기록 매체.
  35. 사용자들 사이에 Peer-to-Peer 방식으로 상호 연결된 독립형 메시지 전송 그룹 내에서 비공인 IP 어드레스를 사용하는 그룹 가입자 시스템으로 메시지를 전송하기 위하여, 디지털 처리 장치에 의해 실행될 수 있는 명령어들의 프로그램이 유형적으로 구현되어 있으며, 디지털 처리 장치에 의해 판독될 수 있는 기록 매체에 있어서,
    상기 비공인 IP 어드레스를 사용하는 그룹 가입자 시스템으로 메시지를 전송하는 방법이,
    공인 IP 어드레스를 사용하며, 메시지 전송 그룹 내에서 서버 역할을 하는 그룹 관리자 시스템에 의하여, 다른 메시지 전송 그룹과 독립적인 관계를 가지며, 클라이언트 역할을 하는 적어도 하나의 그룹 가입자 시스템을 포함할 수 있는 적어도 하나의 독립형 메시지 전송 그룹을 구성하는 단계;
    비공인 IP 어드레스를 사용하는 적어도 한 명의 사용자로부터 가입 요청 신호를 받아, 독립형 메시지 전송 그룹의 그룹 가입자 시스템으로서 가입 승인을 결정하는 단계;
    독립형 메시지 전송 그룹에 가입된 비공인 IP 어드레스를 사용하는 적어도 하나의 그룹 가입자 시스템으로부터 접속 요청이 있는 경우에, 접속을 요청한 그룹 가입자 시스템의 사용자 정보를 접속 리스트 목록에 저장하고, 그룹 가입자 시스템과의 연결 세션을 유지하는 단계;
    독립형 메시지 전송 그룹에 속하는 적어도 하나의 그룹 가입자 시스템에게 전송하기 위하여, 메시지 작성 윈도우를 통하여 입력된 내용에 따라 메시지를 구성하는 단계; 및
    상기 구성된 메시지를 수신할 대상에 포함되며, 비공인 IP 어드레스를 가지는 그룹 가입자 시스템이 연결 세션을 통하여 일정 시간 간격으로 메시지를 확인하는 과정에서, 전송 메시지를 확인한 경우에, 해당하는 그룹 가입자 시스템의 전송 요청에 따라 연결 세션을 통하여 메시지를 전송하는 단계
    를 포함하는 컴퓨터 기록 매체.
KR10-2001-0009128A 2001-02-23 2001-02-23 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지전송 방법 및 시스템 KR100430910B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR10-2001-0009128A KR100430910B1 (ko) 2001-02-23 2001-02-23 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지전송 방법 및 시스템
PCT/KR2001/000612 WO2002069568A1 (en) 2001-02-23 2001-04-13 Group-independent message transfer method and system lending specified application module

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0009128A KR100430910B1 (ko) 2001-02-23 2001-02-23 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지전송 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20010044464A true KR20010044464A (ko) 2001-06-05
KR100430910B1 KR100430910B1 (ko) 2004-05-10

Family

ID=19706153

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0009128A KR100430910B1 (ko) 2001-02-23 2001-02-23 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지전송 방법 및 시스템

Country Status (2)

Country Link
KR (1) KR100430910B1 (ko)
WO (1) WO2002069568A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100562145B1 (ko) * 2002-09-28 2006-03-21 주식회사 케이티 네트워크 그룹핑을 통한 네트워크 간의 정보 전송 방법
WO2006071004A1 (en) * 2004-12-30 2006-07-06 Shotech Co., Ltd. Apparatus and method for transmitting and receiving message for multi-group of users
KR20190049665A (ko) * 2019-04-29 2019-05-09 엔에이치엔 주식회사 복수의 언어 사용자 대화 시 자동 번역 제공 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774010B2 (en) * 2005-07-06 2010-08-10 Nokia Corporation Peer-to-peer group management framework and methodology
KR100821722B1 (ko) 2006-08-24 2008-04-15 엔에이치엔(주) 다중 접속 온라인 게임에서 p2p 메시지 전송 시스템 방법
KR20160046213A (ko) 2014-10-20 2016-04-28 주식회사 케이티 메시지 서버가 필요없는 p2p형 커뮤니케이션 제공 시스템 및 제공 방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1063598A (ja) * 1996-08-22 1998-03-06 Nippon Telegr & Teleph Corp <Ntt> マルチキャスト通信方法及びマルチキャスト通信システムと、マルチキャスト通信用サーバ
US6094676A (en) * 1997-05-30 2000-07-25 Hilgraeve Incorporated Method and apparatus for peer-to-peer communication
US5944783A (en) * 1997-07-29 1999-08-31 Lincom Corporation Apparatus and method for data transfers through software agents using client-to-server and peer-to-peer transfers
JP2000201146A (ja) * 1999-01-07 2000-07-18 Nippon Telegr & Teleph Corp <Ntt> 同報通信グル―プを制御する通信方法および当該通信方法を記述したプログラムを記録した記録媒体
KR100350585B1 (ko) * 1999-11-05 2002-08-28 주식회사 네오메인 한 대의 유닉스 기반 서버로 여러 도메인의 전자메일을 서비스하는 방법
KR20000054683A (ko) * 2000-06-17 2000-09-05 김세헌 인터넷을 이용한 그룹 전자메일링 및 메시지 게시 방법
KR20010000774A (ko) * 2000-10-18 2001-01-05 박용국 인터넷통신가능한 단말기상에 분할 객체창 생성 방법 및장치, 및 그를 이용한 부가서비스 제공 방법 및서버-클라이언트시스템
KR100426099B1 (ko) * 2000-11-09 2004-04-03 니트젠테크놀러지스 주식회사 피투피/피투지 서비스 제공 방법 및 이를 위한 시스템
KR20020057465A (ko) * 2001-01-05 2002-07-11 신용수 수신자측 이-메일서버를 거치지 않는 이-메일 전송방법 및 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100562145B1 (ko) * 2002-09-28 2006-03-21 주식회사 케이티 네트워크 그룹핑을 통한 네트워크 간의 정보 전송 방법
WO2006071004A1 (en) * 2004-12-30 2006-07-06 Shotech Co., Ltd. Apparatus and method for transmitting and receiving message for multi-group of users
KR20190049665A (ko) * 2019-04-29 2019-05-09 엔에이치엔 주식회사 복수의 언어 사용자 대화 시 자동 번역 제공 방법

Also Published As

Publication number Publication date
KR100430910B1 (ko) 2004-05-10
WO2002069568A1 (en) 2002-09-06

Similar Documents

Publication Publication Date Title
US7844716B2 (en) Instant messaging architecture and system for interoperability and presence management
US6549937B1 (en) System and method for multi-protocol communication in a computer network
JP4444518B2 (ja) 様々なネットワークを介して匿名ユーザ間でのインテリジェントなセッションを確立する分散システム
JP4467220B2 (ja) 音声インスタント・メッセージング
EP1461717B1 (en) Service control framework for seamless transfer of a multimedia conference over different media
US7751347B2 (en) Converged conferencing appliance methods for concurrent voice and data conferencing sessions over networks
US6415318B1 (en) Inter-enterprise messaging system using bridgehead servers
US20030105812A1 (en) Hybrid system architecture for secure peer-to-peer-communications
US20030093480A1 (en) Accessing information using an instant messaging system
US20070237135A1 (en) Method and Apparatus for Routing Communications
US7328247B2 (en) Self-contained instant messaging appliance
US20060167897A1 (en) Administration of a broker-based publish/subscribe messaging system
US9055013B2 (en) Integration of voice chat services
JP4903979B2 (ja) リアルタイムなビジネス・コラボレーションの方法
US6732143B1 (en) Method and system for integrating telephone voice communications into a client-server architecture
JP5593359B2 (ja) 通信制御装置、メッセージ転送方法およびメッセージ転送プログラム
KR100430910B1 (ko) 지정된 응용 모듈의 기능을 차용하는 그룹-독립형 메시지전송 방법 및 시스템
WO2001067678A1 (fr) Commutateur d&#39;informations
JP2004536390A (ja) データおよびユーザインターフェースコンポーネントの交換方法
WO2002059802A1 (en) Non-recorded audio/video stream transmission using electronic mail
KR100552516B1 (ko) 통합 웹 환경 제공 시스템 및 방법
KR20020082339A (ko) 자바 API 기반의 통합음성서비스 장치와 이를 이용한VoIP서비스 제공방법
JP2005502929A (ja) ファイアウォールに適合した持続的接続を維持するためのコンピュータ・プログラム
KR20030084164A (ko) 원격 메소드 호출을 이용한 동적 통신 방법 및 시스템
WO2001067305A1 (en) Methods and apparatus for delegating administrative capabilities to domains served by mail providers

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee