Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Title Page Copyright Contents Preface to the Fourth Edition Acknowledgment 1 SIP and the Internet
1.1 Signaling Protocols 1.2 Internet Multimedia Protocol Stack
1.2.1 Physical Layer 1.2.2 Data/Link Layer 1.2.3 Network Layer 1.2.4 Transport Layer 1.2.5 Application Layer 1.2.6 Utility Applications 1.2.7 Multicast
1.3 Internet Names 1.4 URLs, URIs, and URNs 1.5 Domain Name Service
1.5.1 DNS Resource Records 1.5.2 Address Resource Records (A or AAAA) 1.5.3 Service Resource Records (SRV) 1.5.4 Naming Authority Pointer Resource Records (NAPTR) 1.5.5 DNS Resolvers
1.6 Global Open Standards 1.7 Internet Standards Process 1.8 A Brief History of SIP 1.9 Conclusion References
2 Introduction to SIP
2.1 A Simple Session Establishment Example 2.2 SIP Call with a Proxy Server 2.3 SIP Registration Example 2.4 SIP Presence and Instant Message Example 2.5 Message Transport
2.5.1 UDP Transport 2.5.2 TCP Transport 2.5.3 TLS Transport 2.5.4 SCTP Transport
2.6 Transport Protocol Selection 2.7 Conclusion 2.8 Questions References
3 SIP Clients and Servers
3.1 SIP User Agents 3.2 Presence Agents 3.3 Back-to-Back User Agents 3.4 SIP Gateways 3.5 SIP Servers
3.5.1 Proxy Servers 3.5.2 Redirect Servers 3.5.3 Registrar Servers
3.6 Uniform Resource Indicators 3.7 Acknowledgment of Messages 3.8 Reliability 3.9 Multicast Support 3.10 Conclusion 3.11 Questions References
4 SIP Request Messages
4.1 Methods
4.1.1 INVITE 4.1.2 REGISTER 4.1.3 BYE 4.1.4 ACK 4.1.5 CANCEL 4.1.6 OPTIONS 4.1.7 SUBSCRIBE 4.1.8 NOTIFY 4.1.9 PUBLISH 4.1.10 REFER 4.1.11 MESSAGE 4.1.12 INFO 4.1.13 PRACK 4.1.14 UPDATE
4.2 URI and URL Schemes Used by SIP
4.2.1 SIP and SIPS URIs 4.2.2 Telephone URLs 4.2.3 Presence and Instant Messaging URLs
4.3 Tags 4.4 Message Bodies 4.5 Conclusion 4.6 Questions References
5 SIP Response Messages
5.1 Informational
5.1.1 100 Trying 5.1.2 180 Ringing 5.1.3 181 Call is Being Forwarded 5.1.4 182 Call Queued 5.1.5 183 Session Progress 5.1.6 199 Early Dialog Terminated
5.2 Success
5.2.1 200 OK 5.2.2 202 Accepted 5.2.3 204 No Notification
5.3 Redirection
5.3.1 300 Multiple Choices 5.3.2 301 Moved Permanently 5.3.3 302 Moved Temporarily 5.3.4 305 Use Proxy 5.3.5 380 Alternative Service
5.4 Client Error
5.4.1 400 Bad Request 5.4.2 401 Unauthorized 5.4.3 402 Payment Required 5.4.4 403 Forbidden 5.4.5 404 Not Found 5.4.6 405 Method Not Allowed 5.4.7 406 Not Acceptable 5.4.8 407 Proxy Authentication Required 5.4.9 408 Request Timeout 5.4.10 409 Conflict 5.4.11 410 Gone 5.4.12 411 Length Required 5.4.13 412 Conditional Request Failed 5.4.14 413 Request Entity Too Large 5.4.15 414 Request-URI Too Long 5.4.16 415 Unsupported Media Type 5.4.17 416 Unsupported URI Scheme 5.4.18 417 Unknown Resource Priority 5.4.19 420 Bad Extension 5.4.20 421 Extension Required 5.4.21 422 Session Timer Interval Too Small 5.4.22 423 Interval Too Brief 5.4.23 424 Bad Location Information 5.4.24 428 Use Identity Header 5.4.25 429 Provide Referror Identity 5.4.26 430 Flow Failed 5.4.27 433 Anonymity Disallowed 5.4.28 436 Bad Identity-Info Header 5.4.29 437 Unsupported Certificate 5.4.30 438 Invalid Identity Header 5.4.31 439 First Hop Lacks Outbound Support 5.4.32 440 Max Breadth Exceeded 5.4.33 469 Bad Info Package 5.4.34 494 Security Agreement Required 5.4.35 470 Consent Needed 5.4.36 480 Temporarily Unavailable 5.4.37 481 Dialog/Transaction Does Not Exist 5.4.38 482 Loop Detected 5.4.39 483 Too Many Hops 5.4.40 484 Address Incomplete 5.4.41 485 Ambiguous 5.4.42 486 Busy Here 5.4.43 487 Request Terminated 5.4.44 488 Not Acceptable Here 5.4.45 489 Bad Event 5.4.46 491 Request Pending 5.4.47 493 Request Undecipherable 5.4.48 494 Security Agreement Required
5.5 Server Error
5.5.1 500 Server Internal Error 5.5.2 501 Not Implemented 5.5.3 502 Bad Gateway 5.5.4 503 Service Unavailable 5.5.5 504 Gateway Timeout 5.5.6 505 Version Not Supported 5.5.7 513 Message Too Large 5.5.8 580 Preconditions Failure
5.6 Global Error
5.6.1 600 Busy Everywhere 5.6.2 603 Decline 5.6.3 604 Does Not Exist Anywhere 5.6.4 606 Not Acceptable
5.7 Questions References
6 SIP Header Fields
6.1 Request and Response Header Fields
6.1.1 Accept 6.1.2 Accept-Encoding 6.1.3 Accept-Language 6.1.4 Alert-Info 6.1.5 Allow 6.1.6 Allow-Events 6.1.7 Answer-Mode 6.1.8 Call-ID 6.1.9 Contact 6.1.10 CSeq 6.1.11 Date 6.1.12 Encryption 6.1.13 Expires 6.1.14 From 6.1.15 Feature-Caps 6.1.16 Geolocation 6.1.17 Geolocation-Routing 6.1.18 History Info 6.1.19 Policy-Contact 6.1.20 Organization 6.1.21 Path 6.1.22 Priv-Answer-Mode 6.1.23 Record-Route 6.1.24 Recv-Info 6.1.25 Refer-Sub 6.1.26 Retry-After 6.1.27 Session-ID 6.1.28 Subject 6.1.29 Supported 6.1.30 Timestamp 6.1.31 To 6.1.32 User-Agent 6.1.33 User-to-User 6.1.34 Via
6.2 Request Header Fields
6.2.1 Accept-Contact 6.2.2 Authorization 6.2.3 Call-Info 6.2.4 Event 6.2.5 Hide 6.2.6 Identity 6.2.7 Identity-Info 6.2.8 In-Reply-To 6.2.9 Info-Package 6.2.10 Join 6.2.11 Priority 6.2.12 Privacy 6.2.13 Policy-ID 6.2.14 Proxy-Authorization 6.2.15 Proxy-Require 6.2.16 P-OSP-Auth-Token 6.2.17 P-Asserted-Identity 6.2.18 P-Preferred-Identity 6.2.19 Max-Breadth 6.2.20 Max-Forwards 6.2.21 Reason 6.2.22 Refer-To 6.2.23 Referred-By 6.2.24 Reply-To 6.2.25 Replaces 6.2.26 Reject-Contact 6.2.27 Request-Disposition 6.2.28 Require 6.2.29 Resource-Priority 6.2.30 Response-Key 6.2.31 Route 6.2.32 RAck 6.2.33 Security-Client 6.2.34 Security-Verify 6.2.35 Session-Expires 6.2.36 SIP-If-Match 6.2.37 Subscription-State 6.2.38 Suppress-If-Match 6.2.39 Target-Dialog 6.2.40 Trigger-Consent
6.3 Response Header Fields
6.3.1 Accept-Resource-Priority 6.3.2 Authentication-Info 6.3.3 Error-Info 6.3.4 Flow-Timer 6.3.5 Geolocation-Error 6.3.7 Min-SE 6.3.8 Permission-Missing 6.3.9 Proxy-Authenticate 6.3.10 Refer-Events-At 6.3.11 Security-Server 6.3.12 Server 6.3.13 Service-Route 6.3.14 SIP-ETag 6.3.15 Unsupported 6.3.16 Warning 6.3.17 WWW-Authenticate 6.3.18 RSeq
6.4 Message Body Header Fields
6.4.1 Content-Encoding 6.4.2 Content-Disposition 6.4.3 Content-Language 6.4.4 Content-Length 6.4.5 Content-Type 6.4.6 MIME-Version
6.5 Questions References
7 Wireless, Mobility, and IMS
7.1 IP Mobility 7.2 SIP Mobility 7.3 IMS and SIP 7.4 IMS Header Fields 7.5 Conclusion 7.6 Questions References
8 Presence and Instant Messaging
8.1 Introduction 8.2 History of IM and Presence 8.3 SIMPLE 8.4 Presence with SIMPLE
8.4.1 SIP Events Framework 8.4.2 Presence Bodies 8.4.3 Resource Lists 8.4.4 Filtering 8.4.5 Conditional Event Notifications and ETags 8.4.6 Partial Publication 8.4.7 Presence Documents Summary
8.5 Instant Messaging with SIMPLE
8.5.1 Page Mode Instant Messaging 8.5.2 Common Profile for Instant Messaging 8.5.3 Instant Messaging Delivery Notification 8.5.4 Message Composition Indication 8.5.5 Multiple Recipient Messages 8.5.6 Session Mode Instant Messaging 8.6 Jabber 8.6.1 Standardization as Extensible Messaging and Presence Protocol 8.6.2 Jingle 8.6.3 Interworking with SIMPLE 8.7 Conclusion
8.8 Questions References
9 Services in SIP
9.1 Gateway Services 9.2 Emergency Services 9.3 SIP Trunking 9.4 SIP Service Examples 9.5 Voicemail 9.6 SIP Video
9.6.1 Video Relay Service (VRS)
9.7 Facsimile 9.8 Conferencing
9.8.1 Focus 9.8.2 Mixer 9.8.3 Non-SIP Conference Control
9.9 Application Sequencing 9.10 Other SIP Service Architectures
9.10.1 Service-Oriented Architecture 9.10.2 Servlets 9.10.3 Service Delivery Platform
9.11 Conclusion 9.12 Questions References
10 Network Address Translation
10.1 Introduction to NAT 10.2 Advantages of NAT 10.3 Disadvantages of NAT 10.4 How NAT Works 10.5 Types of NAT
10.5.1 End Point-Independent Mapping NAT 10.5.2 Address-Dependent Mapping NAT 10.5.3 Address and Port-Dependent Mapping NAT 10.5.4 Hairpinning Support 10.5.5 IP Address Pooling Options 10.5.6 Port Assignment Options 10.5.7 Mapping Refresh 10.5.8 Filtering Modes
10.6 NAT Mapping Examples 10.7 NATs and SIP 10.8 Properties of a Friendly NAT or How a NAT Should BEHAVE 10.9 STUN Protocol 10.10 UNSAF Requirements 10.11 SIP Problems with NAT
10.11.1 Symmetric SIP 10.11.2 Connection Reuse 10.11.3 SIP Outbound
10.12 Media NAT Traversal Solutions
10.12.1 Symmetric RTP 10.12.2 RTCP Attribute 10.12.3 Self-Fixing Approach
10.13 Hole Punching 10.14 TURN: Traversal Using Relays Around NAT 10.15 ICE: Interactive Connectivity Establishment 10.16 Conclusion 10.17 Questions References
11 Related Protocols
11.1 PSTN Protocols
11.1.1 Circuit-Associated Signaling 11.1.2 ISDN Signaling 11.1.3 ISUP Signaling
11.2 SIP for Telephones 11.3 Media Gateway Control Protocols 11.4 H.323
11.4.1 Introduction to H.323 11.4.2 Example of H.323
References
12 Media Transport
12.1 Real-Time Transport Protocol (RTP) 12.2 RTP Control Protocol (RTCP)
12.2.1 RTCP Reports 12.2.2 RTCP Extended Reports
12.3 Compression 12.4 RTP Audio Video Profiles
12.4.1 Audio Codecs 12.4.2 Video Codecs 12.4.3 Audio and Video Multiplexing over Same Ports
12.5 Conferencing 12.6 ToIP—Conversational Text 12.7 DTMF Transport 12.8 Questions References
13 Negotiating Media Sessions
13.1 Session Description Protocol (SDP)
13.1.1 Protocol Version 13.1.2 Origin 13.1.3 Session Name and Information 13.1.4 URI 13.1.5 E-Mail Address and Phone Number 13.1.6 Connection Data 13.1.7 Bandwidth 13.1.8 Time, Repeat Times, and Time Zones 13.1.9 Encryption Keys 13.1.10 Media Descriptions 13.1.11 Attributes
13.2 SDP Extensions 13.3 The Offer Answer Model
13.3.1 Rules for Generating an Offer 13.3.2 Rules for Generating an Answer 13.3.3 Rules for Modifying a Session 13.3.4 Special Case—Call Hold
13.4 Static and Dynamic Payloads 13.5 SIP Offer/Answer Exchanges 13.6 Conclusion 13.7 Questions References
14 Internet Threats and Attacks
14.1 Introduction 14.2 Attack Types
14.2.1 Denial of Service (DoS) 14.2.2 Man-in-the-Middle 14.2.3 Replay and Cut-and-Paste Attacks 14.2.4 Theft of Service 14.2.5 Eavesdropping 14.2.6 Impersonation 14.2.7 Poisoning Attacks (DNS and ARP) 14.2.8 Credential and Identity Theft 14.2.9 Redirection/Hijacking 14.2.10 Session Disruption
14.3 Attack Methods
14.3.1 Port Scans 14.3.2 Malicious Code 14.3.3 Buffer Overflow 14.3.5 Password Theft/Guessing 14.3.6 Tunneling 14.3.7 Bid Down
14.4 Summary 14.5 Questions References
15 SIP Security and Identity
15.1 Basic Security Concepts
15.1.1 Encryption 15.1.2 Public Key Cryptography 15.1.3 Diffie-Hellman Cryptography 15.1.4 Message Authentication 15.1.5 Digital Certificates
15.2 Security Protocols
15.2.1 IPSec 15.2.2 TLS 15.2.3 DTLS 15.2.4 DNSSEC 15.2.5 Secure MIME
15.3 SIP Security Model
15.3.1 Basic Authentication 15.3.2 Digest Authentication 15.3.3 Pretty Good Privacy 15.3.4 S/MIME 15.3.5 SIP Use of TLS 15.3.6 Secure SIP
15.4 Identity
15.4.1 Telephone Number Identity 15.4.2 SIP URI Identity 15.4.3 Trust Domains for Asserted Identity 15.4.4 Interdomain SIP Identity 15.4.5 SIP and Certificates 15.4.6 Other Asserted Identity Methods 15.4.7 Privacy
15.5 Conclusion 15.6 Questions References
16 Media Security
16.1 Introduction 16.2 Secure RTP
16.3 Generation of Media Encryption Keys 16.3.1 Preshared Keys 16.3.2 Public Key Encryption 16.3.3 Authenticated Key Management and Exchange
16.4 SDP Security Descriptions 16.5 Multimedia Internet Keying (MIKEY) 16.6 DTLS-SRTP Key Agreement 16.7 ZRTP Media Path Key Agreement for VoIP 16.8 Questions References
17 SIP PSTN Gateway Security
17.1 Introduction 17.2 PSTN Security Model 17.3 Gateway Security
17.3.1 Gateway Security Architecture 17.3.2 Gateway Types 17.3.3 Gateways and Caller ID 17.3.4 Caller ID and Privacy 17.3.5 SIP/ISUP Interworking
17.4 Telephone Number Mapping in the DNS References
18 Peer-to-Peer SIP
18.1 P2P Properties 18.2 P2P Properties of SIP 18.3 P2P Overlays 18.4 RELOAD 18.5 Host Identity Protocol 18.6 Conclusion 18.7 Questions References
19 Web Real-Time Communications
19.1 Introduction to WebRTC 19.2 WebRTC Basics 19.3 WebRTC Architecture 19.4 WebRTC Protocols 19.5 SIP Signaling for WebRTC 19.6 Conclusion References
20 Call Flow Examples
20.1 SIP Call with Authentication, Proxies, and Record-Route 20.2 SIP Call with Stateless and Stateful Proxies with Called Party Busy 20.3 SIP to PSTN Call Through Gateway 20.4 PSTN to SIP Call Through Gateway 20.5 Parallel Search 20.6 Call Setup with Proxy Server 20.7 SIP Presence and Instant Message Example References
21 Future Directions
21.1 Bug Fixes and Clarifications 21.2 More Extensions 21.3 Better Identity 21.4 SIP and WebRTC 21.5 Making Features Work Better 21.6 IPv6 Transition 21.7 More SIP Trunking 21.8 Security Deployment 21.9 Better Interoperability References
Appendix
A.1 ABNF Rules A.2 Introduction to XML References
About the Author Index
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion