본문 바로가기

공부/기타

[FCM XMPP] A. XMPP 프로토콜

A. XMPP 프로토콜

1. XMPP (Extensible Messaging and Presence Protocol)

  • XML에 기반한 메시지 지향 미들웨어용 통신 프로토콜
  • 프로토콜의 원래이름은 Jabber
  • 확장가능한 메시징과 상태를 위한 규격

2. XMPP Protocol

네트워크상에 두 지점간의 통신 규격을 정의한 것으로 user@server.com/mobile 과 같은 이메일 형식으로 각각의 지점이 표현되고 양 지점간의 메시징, 상태값들이 실시간으로 전달이 가능하게 하는 규격이다. 이론상으로는 위와 같은 지점의 표현은 서버별로 무한대로 생성이 가능한 규격으로 설명이 가능하다.

3. IM 을 위한 Protocol

인스턴스 메시징에 특화된 서비스처럼 보이지만 Presence값도 구독이라는 과정을 통하여 나를 구독하는 모든 지점을 향하여 브로드캐스팅에 사용되면 큰 활용면을 가지고 있는 셈이다.

IM(instant messenger) 인스턴트 메신저

: 인터넷 같은 네트워크를 이용한, 두 명 이상의 즉각적인 (실시간) 텍스트 통신에 이용되는 클라이언트이다.

4. XMPP 아키텍쳐

1) Server

  • DNS에 의한 호스트이름 또는 IP로 나타내진다.

2) Client

  • 서버와 호스트이름과 ID를 이용한 계정을 가진다.

3) Gateway

  • Client 와 같이 특정 서버에 연결되고 Gateway를 통하여 다른 네트워크 또는 다른 프로토콜의 IM Protocal과 연결할수 있게 한다.