Internet Multimedia Communications Using SIP: A Modern Approach Including Java (R) Practice by Rogelio Martinez Perea (Chief Architect, Vodafone Group)
Session Initiation Protocol (SIP) was conceived in 1996 as a signaling protocol for inviting users to multimedia conferences. With this development, the next big Internet revolution silently started. That was the revolution which would end up converting the Internet into a total communication system which would allow people to talk to each other, see each other, work collaboratively or send messages in real time. Internet telephony and, in general, Internet multimedia, is the new revolution today and SIP is the key protocol which allows this revolution to grow. The book explains, in tutorial fashion, the underlying technologies that enable real-time IP multimedia communication services in the Internet (voice, video, presence, instant messaging, online picture sharing, white-boarding, etc). Focus is on session initiation protocol (SIP) but also covers session description protocol (SDP), Real-time transport protocol (RTP), and message session relay protocol (MSRP). In addition, it will also touch on other application-related protocols and refer to the latest research work in IETF and 3GPP about these topics. (3GPP stands for third-generation partnership project which is a collaboration agreement between ETSI (Europe), ARIB/TTC (Japan), CCSA (China), ATIS (North America) and TTA (South Korea).) The book includes discussion of leading edge theory (which is key to really understanding the technology) accompanied by Java examples that illustrate the theoretical concepts. Throughout the book, in addition to the code snippets, the reader is guided to build a simple but functional IP soft-phone therefore demonstrating the theory with practical examples. This book covers IP multimedia from both a theoretical and practical point of view focusing on letting the reader understand the concepts and put them into practice using Java. It includes lots of drawings, protocol diagrams, UML sequence diagrams and code snippets that allow the reader to rapidly understand the concepts.