XMPP: Chat with a Future

XMPPXMPP is the Extensible Messaging and Presence Protocol standardized by the IETF. This standard provides the framework for doing anything you want to do with chat, and more. Why is XMPP (formerly known as Jabber) not the mainstream chat protocol? Actually it is. It is the most secure messaging standard: battle-tested, independent, and privacy-focused. And it is the protocol behind Google Hangout and WhatsApp uses a variation of XMPP. But XMPP is more than just that.

XMPP has three strengths: extensibility, vendor-independence, and openness. XMPP: Chat with a Future weiterlesen

User-Friendly, Versatile, and Efficient Multi-Link DNS Service Discovery

Daniel Kaiser, Marcel Waldvogel, Holger Strittmatter, Oliver Haase (2016): User-Friendly, Versatile, and Efficient Multi-Link DNS Service Discovery. In: Proceedings of the 1st Workshop on Edge Computing (WEC 2016); in conjunction with IEEE ICDCS 2016, 2016.
User-Friendly, Versatile, and Efficient Multi-Link DNS Service Discovery weiterlesen

Interoperable Chat in Your Web Browser: JSXC 3.0 released

JavaScript XMPP Chat installed in ownCloudOpen, standards-compliant and interoperable chat sounds like a boon. However, proprietary and closed systems (WhatsApp, Facebook chat, Google Hangouts, …) are often easier to deploy, as they are nicely integrated in existing ecosystems. The freshly-released JSXC 3.0 shows that this is not necessary. Interoperable Chat in Your Web Browser: JSXC 3.0 released weiterlesen

pselect() Pitfalls

pselectWhen dealing with multiple network connections or timeouts, the select() Unix system call is still the workhorse for many applications. Its well-known and frequently used interface beats the learning curve on the more scalable poll(), epoll(), or /dev/poll interfaces, especially if only a few file descriptors have to be monitored. select()’s younger sibling, pselect(), adds improved signal handling while retaining interface simplicity. However, when not being extra careful, applications changing to pselect() can ignore network messages for many minutes, as we had to learn the hard way on a medium-to-well loaded large-scale mail server. pselect() Pitfalls weiterlesen