XMPP

XMPP
XMPP
XMPP logo.svg
국제표준RFC 6120 (핵심) (2011)

RFC 6121(IM & Presence)(2011)
RFC 7622 (주소 형식) (2015)
RFC 3922(CPIM)(2004)

RFC 3923(암호화)(2004)
소개했다1999; 23년 전 (1998년)
산업인스턴트 메시징
웹사이트xmpp.org

Extensible Messaging and Presence Protocol(XMPP, 원래 이름 Jabber[1])은 인스턴트 메시징(IM), 존재 정보연락처 목록 유지관리를 위해 설계된 개방형 통신 프로토콜이다.[2]XML(Extensible Markup Language)을 기반으로, 두 개 이상의 네트워크 엔티티 간에 구조화된 데이터의 실시간에 가까운 교환을 가능하게 한다.[3]확장 가능하도록 설계된 이 프로토콜은 VoIP, 비디오, 파일 전송, 게임 및 기타 용도에 대한 신호 전달을 포함하여 메시지 지향 미들웨어의 광범위한 영역에서 전통적인 IM을 넘어서는 다수의 애플리케이션을 제공한다.

대부분의 상용 인스턴트 메시징 프로토콜과 달리, XMPP는 애플리케이션 계층에서 개방형 표준으로 정의된다.XMPP 네트워크의 아키텍처는 이메일과 유사하다. 누구나 자신의 XMPP 서버를 실행할 수 있고 중앙 마스터 서버가 없다.이러한 연합 오픈 시스템 접근방식은 사용자가 이메일 주소와 유사한 'JID' 사용자 계정을 사용하여 어떤 서버의 다른 사용자와 상호운용할 수 있도록 한다.XMPP 구현은 어떠한 소프트웨어 라이센스도 사용하여 개발할 수 있으며 많은 서버, 클라이언트 및 라이브러리 구현은 무료 오픈 소스 소프트웨어로 배포된다.수많은 프리웨어상용 소프트웨어 구현도 존재한다.

원래 오픈소스 커뮤니티에 의해 개발된 프로토콜은 2004년에 승인된 인스턴트 메시징 표준으로 공식화되었고 새로운 확장성과 특징으로 지속적으로 개발되어 왔다.다양한 XMPP 클라이언트 소프트웨어는 데스크톱 및 모바일 플랫폼과 장치 모두에서 사용할 수 있으며, XMPP 표준 재단에 따르면 2003년까지 이 프로토콜은 전 세계 1,000만 명 이상이 네트워크에서 사용했다고 한다.[4][needs update]

프로토콜 특성

지방분권

jabber.orgdraugr.de 서버와의 간단한 XMPP 네트워크.그린 클라이언트는 온라인이고, 옐로우 클라이언트는 서로 편지를 쓰고 있으며, 작은 그린 서브클라이언트는 한 사용자의 자원이다.브라운 네트워크는 인터넷에 연결되어 있지 않다.서버 draugr.deXMPP 전송을 통해 다른 IM 서비스(ICQ, AIM 및 기타)에 연결된다.

XMPP 네트워크 아키텍처는 클라이언트-서버 모델인 Simple Mail Transfer Protocol(SMTP)을 연상시킨다. 고객은 분산되어 있기 때문에 서로 직접 대화하지 않는다. 즉, 누구나 서버를 실행할 수 있다.설계상 AIM, WLM, WhatsApp 또는 텔레그램과 같은 메시징 서비스가 있는 것처럼 중앙의 권위 있는 서버가 없다.이 시점에서 공용 XMPP 서버가 실행 중이기 때문에 종종 혼선이 발생한다.jabber.org많은 사용자가 구독하는 대상.그러나 누구나 자신의 도메인에서 자신의 XMPP 서버를 실행할 수 있다.

주소 지정

표준 JID

네트워크의 모든 사용자는 JID라고[5] 하는 고유한 XMPP 주소를 가지고 있다(역사적인 이유로 XMPP 주소는 흔히 Jabber IDs라고 불린다).JID는 at 기호(AT 기호)로 구분된 해당 사용자가 거주하는 서버의 사용자 이름과 도메인 이름(또는 IP 주소[6])을 가진 이메일 주소처럼 구성된다.@) - 예: "alice@example.com": 여기alice사용자 이름 및example.com사용자가 등록되어 있는 서버

사용자는 여러 위치에서 로그인을 원할 수 있으므로 자원을 지정할 수 있다.자원은 사용자에게 속하는 특정 클라이언트(예: 가정, 회사 또는 모바일)를 식별한다.이것은 자원의 이름 뒤에 슬래시를 추가하여 JID에 포함될 수 있다.예를 들어, 사용자의 모바일 계정의 전체 JID는 다음과 같을 수 있다.username@example.com/mobile.

각 자원은 우선순위라는 숫자 값을 지정했을 수 있다.단순하게 보낸 메시지username@example.com가장 우선순위가 높은 고객에게 가겠지만, 다음으로 보내진 고객username@example.com/mobile모바일 클라이언트로만 이동한다.가장 높은 우선순위는 숫자 값이 가장 큰 우선순위다.

사용자 이름 부분이 없는 JID도 유효하며, 시스템 메시지 및 서버의 특수 기능 제어에 사용할 수 있다.자원은 이러한 JID에도 선택적으로 남아 있다.

명시적 IP 주소 대신 논리적 끝점 식별자 JID를 기반으로 메시지를 라우팅하는 수단은 서로 다른 언더레이 네트워크 위에 XMPP를 Overlay 네트워크 구현으로 사용할 수 있는 기회를 제공한다.

HTTP를 통한 XMPP

XMPP를 위한 원래의 "원래적" 전송 프로토콜은 장수 TCP 연결에 대해 개방형 XML 스트림을 사용하는 TCP(Transmission Control Protocol (TCP)TCP 전송의 대안으로, XMPP 커뮤니티는 또한 제한된 방화벽 뒤에 있는 사용자뿐만 아니라 웹 클라이언트를 위한 HTTP 전송을 개발했다.원래 규격에서 XMPP는 폴링[7] 바인딩의 두 가지 방법으로 HTTP를 사용할 수 있었다.이제 더 이상 사용되지 않는 폴링 방법은 기본적으로 서버측 데이터베이스에 저장된 메시지를 HTTP 'GET' 및 'POST' 요청에 의해 XMPP 클라이언트에 의해 정기적으로 가져오고 있음을 의미한다.BOSH(Bydirectional-streams Over Synchronous HTTP)를 사용하여 구현된 바인딩 방식은 서버가 메시지를 전송하는 즉시 클라이언트에 푸시할 수 있도록 한다.[8]이런 알림의 푸시모델은 여론조사의 많은 수가 새로운 데이터를 반환하지 않는 여론조사보다 더 효율적이다.

클라이언트가 HTTP를 사용하기 때문에 대부분의 방화벽은 클라이언트가 아무런 방해 없이 메시지를 가져오고 올릴 수 있게 한다.따라서 XMPP가 사용하는 TCP 포트가 차단되는 시나리오에서는 서버가 정상적인 HTTP 포트에서 청취할 수 있으며 트래픽은 문제없이 통과해야 한다.다양한 웹사이트들은 사람들이 브라우저를 통해 XMPP에 로그인하도록 한다.또한, 표준 http(포트 80)와 https(포트 443) 포트에서 수신하는 공개 서버가 있어 대부분의 방화벽 뒤에서 접속이 가능하다.그러나 BOSH의 IANA 등록 포트는 실제로 80이 아니라 5280이다.

확장성

XMPP 표준 재단(XMPP Standards Foundation) 또는 XSF(이전의 Jabber Software Foundation)는 XEP라고 불리는 개방형 XMPP 확장 개발에 적극적이다.[9]그러나 확장은 모든 개인, 소프트웨어 프로젝트 또는 조직에 의해서도 정의될 수 있다.상호운용성을 유지하기 위해, 공통 확장은 XSF에 의해 관리된다. IM을 넘어선 XMPP 애플리케이션에는 채팅방, 네트워크 관리, 컨텐츠 신디케이션, 협업 도구, 파일 공유, 게임, 원격 시스템 제어 및 모니터링, 지리 위치, 미들웨어클라우드 컴퓨팅, VoIP, ID 서비스 등이 포함된다.

로컬 네트워크 도메인 전반에서 검색을 지원하는 기능을 기반으로 하는 XMPP는 가상 머신, 네트워크 및 방화벽이 아닌 경우 대체 서비스 검색 및 존재 기반 솔루션에 장애를 일으킬 수 있는 클라우드 컴퓨팅에 적합하다.클라우드 컴퓨팅 및 스토리지 시스템은 릴레이 상태로의 시스템 간 메시징뿐만 아니라 스토리지나 가상 머신과 같은 더 큰 개체의 마이그레이션 또는 배포를 포함하여 여러 레벨에 걸쳐 다양한 형태의 통신에 의존한다.인증 및 전송 중 데이터 보호와 함께 XMPP는 다양한 수준에서 적용될 수 있으며 확장 가능한 미들웨어 또는 메시지 지향 미들웨어(MOM) 프로토콜로 이상적일 수 있다.

현재 제한 사항

현재 XMPP는 QoS(서비스 품질)를 지원하지 않는다. XMPP 계층 위에 메시지의 확실한 전달이 구축되어야 한다.이 문제를 다루기 위해 제안된 두 개의 XEP, 현재 초안 표준인 XEP-0184 메시지 배달 영수증과 실험적인 것으로 간주되는 XEP-0333 채팅 마커가 있다.

XML은 텍스트 기반이기 때문에 일반 XMPP는 순수하게 이진 솔루션과 비교하여 네트워크 오버헤드가 더 높다.이 문제는 실험적인 XEP-0322: Efficient XML Interchange(ExI) 형식에 의해 다루어지고 있었는데, XML은 특히 스키마 정보 모드에서 매우 효율적인 이진 방식으로 직렬화된다.이 XEP는 현재 연기되었다.

대역 내 이진 데이터 전송은 제한적이다.이진 데이터는 인밴드 전송을 하기 전에 먼저 base64를 인코딩해야 한다.따라서 상당한 양의 이진 데이터(예: 파일 전송)는 대역 내 메시지를 사용하여 대역 에서 가장 잘 전송된다.이것의 가장 좋은 예는 Jingle XMPP Extension Protocol, XEP-0166이다.

특징들

Android용 XMPP 클라이언트인 대화에서 채팅 중인 파일 전송 옵션

피어 투 피어 세션

XMPP는 징글이라고 불리는 확장을 사용하여 다양한 네트워크 집합에 걸친 기계 대 기계 또는 피어 투 피어 통신을 지원하는 개방적인 수단을 제공할 수 있다.이 기능은 주로 IP 전화(VoIP)에 사용된다.

다중 사용자 채팅

XMPP는 MUC(Multi-User Chat) 규격(XEP-0045)을 사용하여 여러 사용자가 참여하는 컨퍼런스를 지원한다.일반 사용자 입장에서는 인터넷 릴레이 채팅(IRC)에 버금간다.

보안 및 암호화

XMPP 서버를 분리할 수 있으며(예: 회사 인트라넷에서), 보안 인증(SASL)과 포인트 투 포인트 암호화(TLS)가 핵심 XMPP 사양에 내장되어 있다.

OTR(Off-the-the-Record Messaging)은 메시지와 데이터의 암호화를 가능하게 하는 XMPP의 확장이다.그 후, 사용자들 간의 더 나은 확장, 멀티 엔드 투 멀티 엔드 암호화(OMEMO, XEP-0384)로 대체되었다.이것은 원본 클라이언트에서 모든 데이터를 암호화하고 대상 클라이언트에서 다시 암호를 해독함으로써 더 높은 수준의 보안을 제공한다; 서버 운영자는 그들이 전달하고 있는 데이터의 암호를 해독할 수 없다.

메시지는 OpenPGP로 암호화될 수 있다(예: 소프트웨어 Gajim).

서비스 검색

오늘날 여러 서비스 검색 프로토콜(예: 제로콘프 또는 서비스 위치 프로토콜)이 존재하지만, XMPP는 XEP-0030 DISCO에 의해 지정된 대로 로컬 또는 네트워크 전체에 존재하는 서비스의 발견과 이러한 서비스의 가용성(존재 정보를 통한)을 위한 견고한 기반을 제공한다.[10]

다른 프로토콜에 연결

앨리스는 XMPP 망을 통해 ICQ 전송에 메시지를 보낸다.그 메시지는 다음에 ICQ 네트워크를 통해 Bob에게 전달된다.

초기 Jabber 오픈 소스 커뮤니티의 원래 설계 목표 중 하나는 사용자가 단일 클라이언트 애플리케이션을 통해 여러 인스턴트 메시징 시스템(특히 비 XMPP 시스템)에 연결할 수 있도록 하는 것이었다.이것은 전송이나 게이트웨이라고 불리는 실체를 통해 ICQ, AIM 또는 Yahoo Messenger와 같은 다른 인스턴트 메시징 프로토콜뿐만 아니라 SMS, IRC 또는 이메일과 같은 프로토콜에도 적용되었다.멀티 프로토콜 클라이언트와 달리, XMPP는 XMPP 서버와 함께 실행되는 특별한 게이트웨이 서비스를 통해 통신함으로써 서버 수준에서 이러한 액세스를 제공한다.모든 사용자는 해당 네트워크에 로그온하는 데 필요한 정보를 제공하여 이러한 게이트웨이 중 하나에 "등록"할 수 있으며, 그런 다음 XMPP 사용자인 것처럼 해당 네트워크의 사용자와 통신할 수 있다.따라서 그러한 게이트웨이는 클라이언트 프록시 역할을 한다(게이트웨이는 비 XMPP 서비스를 대신하여 사용자를 대신하여 인증한다).결과적으로, XMPP를 완전히 지원하는 클라이언트는 클라이언트에 별도의 코드 없이, 그리고 클라이언트가 인터넷에 직접 접속할 필요 없이 게이트웨이가 있는 어떤 네트워크에도 접속할 수 있다.그러나 클라이언트 프록시 모델은 사용된 프로토콜의 서비스 약관을 위반할 수 있으며(몇 개 국가에서 그러한 서비스 약관은 법적으로 집행할 수 없지만), 또한 사용자가 자신의 IM 사용자 이름과 비밀번호를 전송을 운영하는 제3자 사이트로 전송하도록 요구한다(개인 정보 보호 및 보안 문제가 제기될 수 있음).

또 다른 종류의 게이트웨이는 서버 대 서버 게이트웨이로, XMPP의 내장된 도메인 간 연합 기능을 사용하여 비 XMPP 서버 배포가 네이티브 XMPP 서버에 연결할 수 있도록 한다.이러한 서버 간 게이트웨이는 다음과 같은 여러 기업 IM 소프트웨어 제품에서 제공된다.

소프트웨어

XMPP는 많은 클라이언트, 서버 및 코드 라이브러리에 의해 구현된다.[14]이러한 구현은 다양한 소프트웨어 라이센스에 따라 제공된다.

서버

수많은 XMPP 서버 소프트웨어가 존재하며, 몇몇 잘 알려진 것에는 ejabberdProsody가 있다.

클라이언트

Spark의 버디 목록 및 다중 사용자 채팅

그래픽 및 명령줄 기반 클라이언트를 포함하여 다양한 현대 및 레거시 플랫폼에 수많은 XMPP 클라이언트 소프트웨어가 존재한다.XMPP 웹사이트에 따르면, 가장 인기 있는 소프트웨어로는 대화(Android), 컨버스.js(웹 브라우저, Linux, Windows, MacOS), 가짐(Windows, Linux), 모날(MacOS, iOS), 스위프트 등이 있다.IM(macOS, Windows, Linux)

기타 고객에는 다음이 포함된다.봄버스, 채트시큐어, 코치넬라, JWChat.org, MCabber, 미란다, 피진, psi, tkabber, 트릴리언, Xabber.

배포 및 배포

전세계적으로 수천 대의 XMPP 서버가 있으며, 많은 공공 서버뿐만 아니라 개인 또는 단체도 상업적 의도 없이 자체 서버를 운영하고 있다.수많은 웹사이트는 사용자가 등록할 수 있는 공용 XMPP 서버의 목록을 보여준다(예: XMPP.net 웹사이트).

LiveJournal의 「LJ Talk」,[15] Nimbuzz, HipChat을 포함한 여러 대형 공공 IM 서비스는 XMPP를 기본으로 사용하거나 사용했다.DreamHost와 같은 다양한 호스팅 서비스를 통해 호스팅 고객은 보다 전통적인 웹 및 이메일 서비스와 함께 XMPP 서비스를 선택할 수 있다.도메인 소유자가 직접 Cisco Webex Connect, Chrome.pl, Flosoft.biz, i-pobox.net, i-pobox.net, hosted.im, hosted.im 등 XMPP 서버를 실행할 필요가 없도록 특화된 XMPP 호스팅 서비스도 클라우드 형태로 존재한다.

또한 XMPP는 수요 대응 애플리케이션, 메시지 지향 미들웨어와 같은 스마트 그리드 시스템을 포함한 비 IM 서비스의 배치에도 사용되며, 많은 스마트폰 클라이언트에서 문자 메시지를 제공하는 SMS의 대체품으로 사용된다.

비 네이티브 배포

가장 큰 메시징 제공자 중 일부는 이 사실을 최종 사용자에게 반드시 노출시키지 않고 백엔드 시스템에서 다양한 형태의 XMPP 기반 프로토콜을 사용하거나 사용해 왔다.[16][17]구글이 2005년 8월 인스턴트 메시징에 XMPP를 사용하고 징글이라는 음성 및 파일 전송 신호 프로토콜의 기반으로 사용하는 VoIP와 IM 시스템을 결합한 구글톡을 선보인 것이 한 예다.초기 출시에는 서버 대 서버 통신이 포함되지 않았다. 구글은 2006년 1월 17일에 이 기능을 가능하게 했다.[18]구글은 이후 구글톡에 동영상 기능을 추가했고, 신호에 징글 프로토콜도 사용했다.2013년 5월, 구글은 클라이언트-서버 지원을 유지하겠지만 서버 간 연합을 위한 구글 토크에서 XMPP 호환성을 삭제할 것이라고 발표했다.[19]AOL은 2008년 1월 AOL Instant Messenger(AIM) 서비스에 실험적인 XMPP 지원을 도입해 AIM 사용자가 XMPP를 이용해 통신할 수 있도록 했다.[20]그러나 2008년 3월 이 서비스는 중단되었다.[citation needed]2011년 5월 현재 AOL은 제한된 XMPP 지원을 제공하고 있다.[21]소셜네트워크 사이트 페이스북은 2010년 2월 XMPP를 통해 채팅 기능을 타사 애플리케이션에 개방했고,[22] 일부 기능은 XMPP를 통해 사용할 수 없었으며 2014년 4월 지원이 끊겼다.[23]마찬가지로, 2011년 12월에 마이크로소프트는 마이크로소프트 메신저 서비스에 대한 XMPP 인터페이스를 출시했다.[24]사실상의 후계자인 스카이프도 제한된 XMPP 지원을 제공했다.[25]아파치 웨이브도 그 예다.[26]

XMPP는 오리진,[27] 플레이스테이션과 같은 게임 관련 플랫폼에서 개인 채팅을 위한 사실상의 표준이며, 현재는 단종된 Xfire, Raptr.[28]Steam[29] Xbox LIVE의 두 가지 주목할 만한 예외는 둘 다 그들만의 고유한 메시징 프로토콜을 사용한다.

역사와 발전

재버 로고

제레미 밀러는 1998년 재버 기술을 연구하기 시작해 제1판을 내놓았다.jabberd1999년 1월 4일 서버.[30]초기 재버 커뮤니티는 주로 재버드 서버인 오픈소스 소프트웨어에 초점을 맞췄지만, 그 주요 성과는 XMPP 프로토콜의 개발로 증명됐다.

IETF(Internet Engineering Task Force)는 2002년에 XMPP 실무 그룹을 구성하여 핵심 프로토콜을 IETF 인스턴트 메시징 및 인식 기술로 공식화하였다.1999년과 2000년에 개발된 초기 Jabber 프로토콜은 2004년 10월에 RFC 3920과 RFC 3921에 발표된 XMPP의 기초를 형성하였다(IETF의 XMPP 작업 그룹에 의한 공식화 중 일차적인 변화는 채널 암호화를 위한 TLS와 인증확인을 위한 SASL의 추가였다).XMPP 작업 그룹은 또한 규격 RFC 3922와 RFC 3923을 생산했다.2011년에 RFC 3920과 RFC 3921은 각각 RFC 6120과 RFC 6121로 대체되었고, RFC 6122는 XMPP 주소 형식을 명시하였다.2015년에 RFC 6122는 RFC 7622로 대체되었다.IETF에서 표준화된 이러한 핵심 프로토콜 외에도 XMPP 표준 재단(구 Jabber Software Foundation)은 개방형 XMPP 확장 개발에 적극적이다.

XMPP를 기반으로 한 최초의 IM 서비스는 Jabber.org으로 1999년부터 지속적으로 운영되어 무료 계정을 제공하고 있다.[31]1999년부터 2006년 2월까지 이 서비스는 jabberd를 서버 소프트웨어로 사용했으며, 이 때 ejabberd(두 서비스 모두 무료 소프트웨어 애플리케이션 서버)로 마이그레이션했다.2010년 1월, 이 서비스는 Isode Ltd에 의해 생산된 독점적인 M-Link 서버 소프트웨어로 마이그레이션되었다.[32]

2008년 9월, 시스코 시스템즈는 상용 제품인 Jabber XCP의 크리에이터인 Jabber, Inc.를 인수했다.[33]

XMPP Standards Foundation(XSF)은 XMPP Extension Protocols(XEPs, 종래 Jabber Enhancement Proposes - JEPs)를 중심으로 한 표준 프로세스를 통해 XMPP에 대한 확장을 개발하고 게시한다.다음 확장자는 특히 광범위하게 사용된다.

  • 데이터 양식[34]
  • 서비스 검색[35]
  • 다중 사용자 채팅[36]
  • 게시-구독[37] 및 개인 이벤트 프로토콜[38]
  • XHTML-IM[39]
  • 파일 전송[40]
  • 엔티티 기능[41]
  • HTTP 바인딩[8]
  • 음성 및 비디오용 징글

사물 인터넷

도메인 간 연합, 게시/구독, 인증 및 모바일 엔드포인트용 보안과 같은 XMPP 기능이 사물인터넷 구현에 사용되고 있다.몇 가지 XMPP 확장은 실험 구현의 일부분이다: 효율적인 XML 교환(Efficient XML Interchange, EXI) 형식;[42] 센서 데이터;[43] 프로비저닝;[44] 제어;[45] 집중 장치;[46] 검색.[47]

이러한 노력은 사물인터넷[48] 전용 XMPP wiki와 XMPP IoT 메일링 리스트의 한 페이지에 기록되어 있다.[49]

사양 및 표준

IETF XMPP 작업 그룹은 다음과 같은 일련의 의견 요청(RFC) 문서를 작성했다.

  • RFC 3920(RFC 6120으로 대체)
  • RFC 3921(RFC 6121로 대체)
  • RFC 3922
  • RFC 3923
  • RFC 4622(RFC 5122로 대체)
  • RFC 4854
  • RFC 4979
  • RFC 6122(RFC 7622로 대체)

이러한 규격 중 가장 중요하고 광범위하게 구현되는 것은 다음과 같다.

  • RFC 6120, XMPP(Extensible Messaging and Presence Protocol): 코어(Core), 두 개의 개방형 XML 스트림을 사용하는 클라이언트-서버 메시징을 설명한다.XML 스트림은 <presence/> <message/>와 <iq/>(info/query)로 구성된다.연결은 SASL(Simple Authentication and Security Layer)으로 인증되고 TLS(Transport Layer Security)로 암호화된다.
  • RFC 6121, XMPP(Extensible Messaging and Presence Protocol): 인스턴트 메시징 인식은 XMPP의 가장 일반적인 응용 프로그램인 인스턴트 메시징(IM)을 설명한다.
  • RFC 7622, XMPP(Extensible Messaging and Presence Protocol): 주소 형식은 Jabber라고도 하는 XMPP 주소에 대한 규칙을 설명한다.ID 또는 JID.현재 JID는 ASCII 범위를 벗어난 유니코드 문자를 처리하기 위해 PREIS(RFC 7564)를 사용한다.

경쟁표준

XMPP는 종종 SIP(Session Initiation Protocol)에 근거하여 인스턴트 메시징 및 존재 알림의 표준 프로토콜로 SIMP의 경쟁자로 간주되어 왔다.[50][51]

다중 사용자 채팅을[36] 위한 XMPP 확장은 IRC가 훨씬 간단하고, 기능이 훨씬 적으며, 훨씬 더 널리 사용되고 있지만, 인터넷 릴레이 채팅(IRC)의 경쟁자로 볼 수 있다.[citation needed]

게시-구독을[37] 위한 XMPP 확장은 AMQP(Advanced Message Queuing Protocol)와 동일한 많은 기능을 제공한다.

참고 항목

참조

  1. ^ "Jabber Inc". Cisco.com. Retrieved November 24, 2012.
  2. ^ Johansson, Leif (April 18, 2005). "XMPP as MOM - Greater NOrdic MIddleware Symposium (GNOMIS)" (PDF). Oslo: University of Stockholm. Archived from the original (PDF) on May 10, 2011.
  3. ^ Saint-Andre, P. (March 2011). Extensible Messaging and Presence Protocol (XMPP): Core. IETF. doi:10.17487/RFC6120. RFC 6120. Retrieved May 4, 2014.
  4. ^ "Jabber Instant Messaging User Base Surpasses ICQ" (Press release). XMPP Standards Foundation. September 22, 2003. Archived from the original on November 3, 2007. Retrieved November 30, 2007.
  5. ^ XMPP Standards Foundation (October 3, 2003). ""XEP-0029: Definition of Jabber Identifiers (JIDs)"". Extensible Messaging and Presence Protocol. Retrieved November 10, 2019.
  6. ^ RFC 6122
  7. ^ Joe Hildebrand; Craig Kaes; David Waite (June 3, 2009). "XEP-0025: Jabber HTTP Polling". Xmpp.org. Retrieved November 24, 2012.
  8. ^ a b Ian Paterson; Dave Smith; Peter Saint-Andre; Jack Moffitt (July 2, 2010). "XEP-0124: Bidirectional-streams Over Synchronous HTTP ([BOSH])". Xmpp.org. Retrieved November 24, 2012.
  9. ^ "Specifications". xmpp.org. XSF. p. 1. Retrieved January 6, 2017.
  10. ^ "Service Discovery". October 3, 2017.
  11. ^ "Lotus Sametime 7.5 AIM, Google Talk와 상호 운용", eWeek, 2006년 12월 6일 Eweek.com
  12. ^ "Lotus는 IM을 AOL, Yahoo, Google과 통합하기 위해 게이트웨이를 출하한다." 네트워크 월드, 2006년 12월 6일 Networkworld.com 2008년 11월 1일 웨이백 머신에 보관
  13. ^ "통합 커뮤니케이션:Microsoft 보도 자료, 2009년 10월 1일 Microsoft.com Wayback Machine에서 2010년 1월 5일 보관된 "다른 네트워크를 통한 통신 통합"
  14. ^ "Clients". xmpp.org.
  15. ^ "Question FAQ #270-What is LJ Talk?". Livejournal.com. September 27, 2010. Retrieved November 24, 2012.
  16. ^ Leigh, Dylan (August 3, 2017). "Introduction to Jabber/XMPP". www.dylanleigh.net. Retrieved October 16, 2017.
  17. ^ Rémond, Mickaël (February 23, 2014). "Whatsapp, Facebook, Erlang and realtime messaging: It all started with ejabberd". ProcessOne — Blog. Retrieved September 17, 2020.
  18. ^ Burd, Gary (January 17, 2006). "XMPP Federation". Retrieved November 30, 2007.
  19. ^ "We announced a new communications product, Hangouts, in May 2013. Hangouts will replace Google Talk and does not support XMPP". May 26, 2015.
  20. ^ Jensen, Florian (January 17, 2008). "AOL adopting XMPP aka Jabber". Archived from the original on January 20, 2008. Retrieved January 17, 2008.
  21. ^ "AOL XMPP Gateway". May 14, 2011. Archived from the original on May 22, 2011. Retrieved May 14, 2011.
  22. ^ "Facebook Chat Now Available Everywhere". Retrieved February 11, 2010.
  23. ^ "Chat API (deprecated)". Retrieved July 5, 2015.
  24. ^ Obasanjo, Dare (December 14, 2011). "Anyone can build a Messenger client—with open standards access via XMPP". Windowsteamblog.com. Retrieved November 24, 2012.
  25. ^ Roettgers, Janko (June 28, 2011). "Skype adds XMPP support, IM interoperability next? — Tech News and Analysis". Gigaom.com. Retrieved November 24, 2012.
  26. ^ "Google Wave Federation Protocol". Archived from the original on March 4, 2016.
  27. ^ "Origin game platform sends login and messages in plain‐text". Slight Future. June 30, 2015. Retrieved February 22, 2016.
  28. ^ "Raptr is dead. No more Gaming Evolved a year after AMD ditch the app". Pcgamesn.com. September 13, 2017. Retrieved October 16, 2020.
  29. ^ "libsteam.c". Github. Retrieved February 22, 2016.
  30. ^ "Open Real Time Messaging System". Tech.slashdot.org. January 4, 1999. Retrieved November 24, 2012.
  31. ^ Marcel Gagné (March 1, 2003). "Chatting Up the Chef". Linux Journal.
  32. ^ "Jabber.org – XMPP Server Migration". August 12, 2009. Archived from the original on December 13, 2009. Retrieved December 14, 2009.
  33. ^ "Cisco Announces Definitive Agreement to Acquire Jabber". Archived from the original on December 23, 2009. Retrieved January 2, 2010.
  34. ^ "XEP-0004: Data Forms". xmpp.org. June 8, 2021.
  35. ^ "XEP-0030: Service Discovery". xmpp.org. October 3, 2017.
  36. ^ a b "XEP-0045: Multi-User Chat". xmpp.org. March 4, 2021.
  37. ^ a b "XEP-0060: Publish-Subscribe". xmpp.org. September 7, 2021.
  38. ^ "XEP-0163: Personal Eventing Protocol". xmpp.org. March 18, 2018.
  39. ^ "XEP-0071: XHTML-IM". xmpp.org. March 8, 2018.
  40. ^ "XEP-0096: SI File Transfer". xmpp.org. November 29, 2017.
  41. ^ "XEP-0115: Entity Capabilities". xmpp.org. May 5, 2020.
  42. ^ "XEP-0322: Efficient XML Interchange (EXI) Format". xmpp.org. January 25, 2018.
  43. ^ "XEP-0323: Internet of Things - Sensor Data". xmpp.org. May 20, 2017.
  44. ^ "XEP-0324: Internet of Things - Provisioning". xmpp.org. March 4, 2021.
  45. ^ "XEP-0325: Internet of Things - Control". xmpp.org. March 4, 2021.
  46. ^ "XEP-0326: Internet of Things - Concentrators". xmpp.org. May 20, 2017.
  47. ^ "XEP-0347: Internet of Things - Discovery". xmpp.org. November 3, 2018.
  48. ^ "Tech pages/IoT systems". xmpp.org.
  49. ^ "IOT Info Page". jabber.org.
  50. ^ 2003년 4월 17일 인포월드 매거진 "XMPP가 SIMP 표준에 직면하다"는 제목의 XMPP는 SIMP 표준에 직면했다.
  51. ^ 2003년 5월 23일 인포월드 매거진 "XMPP 대 SIMP: 메시징 표준을 위한 경쟁" Infoworld.com

외부 링크