1. Time: Thursday 18:10-21:00
  2. Classroom: TC-208 (ext. 94334492)
  3. Course Name: IP Telephony (網際網路電話)
  4. Overview: This course explores how to set up and administer a highly reliable unified communications platform using the latest tools. Find out how to choose codecs, enable new HD voice and video services, handle security, and maintain optimal QoS. This course offers start-to-finish details on carrier-grade VoIP network design, troubleshooting, and interconnection.
  5. Prerequisite: Computer Networks
  6. Target Students: GP
  7. Upper-limit: 10 students
  8. Instructor: Dr. Quincy Wu
  9. TA:
  10. Credit: 3
  11. Grading Criteria: Homework (40%), Midterm/Final Exams (30%), Oral Presentation (30%)

Term Projects

  1. 千里傳音 (TANet VoIP)
  2. 隨按即說 (Push-To-Talk; PTT)
  3. 通話品質 (Video Surveillance Network)
  4. VoLoRa
  5. Serverless VoIP on NDN (Named Data Networking)

References

  1. Daniel Collins, "Carrier Grade Voice over IP", New York : McGraw-Hill, 2001. (NCNU NetLibrary eBook)
  2. FreeSwitch Explained
  3. SIP.js Development Guides

Syllabus

  1. Introduction (Chapter 1) - VoIP vs. IP Telephony
  2. Basics about TCP/IP
  3. Socket Programming
  4. Audio
  5. RTP
  6. Codecs: G.711, AMR, iLBC
  7. Redundant Audio Codecs
  8. SIP
  9. FreeSwitch
  10. ONSIP
  11. WebRTC
  12. Push-To-Talk

WebRTC

  1. GoToMeeting
  2. [YouTube] Firefox Hello
  3. Wikipedia - WebRTC
  4. How WebRTC Is Revolutionizing Telephony. Blogs.trilogy-lte.com (2014-02-21). Retrieved on 2014-04-11.
  5. [YouTube] Justin Uberti, WebRTC - Plugin-free realtime communication, 2013.
  6. [I-D] Overview: Real Time Protocols for Browser-based Applications draft-ietf-rtcweb-overview-18.txt

VoIP Security

  1. Secure RTP (SRTP)
  2. vomit - hacker tool that converts captured VoIP packets into a WAV file.
  3. Zfone - similar to PGP in emails.
  4. RFC 6189 - ZRTP
  5. Handbook of image and video processing [electronic resource] /
  6. Disappearing cryptography [electronic resource] : information hiding : steganography & watermarking

RFC

  1. RFC 6086 - SIP INFO
  2. RFC 3428 - Session Initiation Protocol (SIP) Extension for Instant Messaging
  3. RFC 3311 - SIP UPDATE
  4. RFC 7647 - The Session Initiation Protocol (SIP) Refer Method
  5. RFC 3319 - Dynamic Host Configuration Protocol (DHCPv6) Options for Session Initiation Protocol (SIP) Servers.
  6. RFC 3361 - Dynamic Host Configuration Protocol (DHCP-for-IPv4) Option for Session Initiation Protocol (SIP) Servers.
  7. RFC 3326 - The Reason Header Field for the Session Initiation Protocol (SIP)
  8. RFC 3581 - An Extension to the Session Initiation Protocol (SIP) for Symmetric Response Routing
  9. RFC 4566 - IPv6 in Session Description Protocol (SDP)
  10. RFC 3267 - Real-Time Transport Protocol (RTP) Payload Format and File Storage Format for the Adaptive Multi-Rate (AMR) and Adaptive Multi-Rate Wideband (AMR-WB) Audio Codecs
  11. RFC 3665 Session Initiation Protocol (SIP) Basic Call Flow Examples.
  12. RFC 3725 Best Current Practices for Third Party Call Control (3pcc) in the Session Initiation Protocol (SIP)
  13. 3824 Using E.164 numbers with the Session Initiation Protocol (SIP)
  14. 3842 A Message Summary and Message Waiting Indication Event Package for the Session Initiation Protocol (SIP)
  15. 3853 S/MIME Advanced Encryption Standard (AES) Requirement for the Session Initiation Protocol (SIP)
  16. 3892 The Session Initiation Protocol (SIP) Referred-By Mechanism
  17. 3911 The Session Initiation Protocol (SIP) "Join" Header
  18. 4028 Session Timers in the Session Initiation Protocol (SIP)
  19. 4353 A Framework for Conferencing with the Session Initiation Protocol (SIP)
  20. 4475 Session Initiation Protocol (SIP) Torture Test Messages.
  21. 4579 Session Initiation Protocol (SIP) Call Control - Conferencing for User Agents.
  22. 6405 Voice over IP (VoIP) SIP Peering Use Cases
  23. 7904 A SIP Usage for REsource LOcation And Discovery (RELOAD)
  24. 6914 SIMPLE Made Simple: An Overview of the IETF Specifications for Instant Messaging and Presence Using SIP
  25. 7092 A Taxonomy of SIP Back-to-Back User Agents
  26. 7118 The WebSocket Protocol as a Transport for SIP
  27. 7339 Session Initiation Protocol (SIP) Overload Control
  28. 7355 Indicating WebSocket Protocol as a Transport in SIP Common Log Format (CLF)
  29. 7403 A Media-Based Traceroute Function for SIP
  30. 7415 Session Initiation Protocol (SIP) Rate Control
  31. 7502 Methodology for Benchmarking SIP Devices
  32. 7584 STUN Message Handling for SIP Back-to-Back User Agents (B2BUAs)
  33. 7890 Concepts and Terminology for Peer-to-Peer SIP (P2PSIP)
  34. 7984 Locating SIP Servers in a Dual-Stack IP Network
  35. 8048 Interworking between SIP and XMPP
  36. 8068 SIP Recording Call Flows
  37. 8083 Multimedia Congestion Control: Circuit Breakers for Unicast RTP Sessions

Articles

  1. GNU Free Call: An Open Source Skype Alternative
  2. VoIP security, PGP style