Skinny Client Control Protocol: Difference between revisions

Content deleted Content added
No edit summary
m top: Adding PDF archives
 
(88 intermediate revisions by 59 users not shown)
Line 1:
{{distinguish|Signalling Connection Control Part}}
{{IPstack}}
The '''Skinny Client Control Protocol''' ('''SCCP''') is a proprietary network terminal control protocol originally developed by [[Selsius Systems]], which was acquired by [[Cisco Systems]] in 1998.
 
SCCP is a lightweight IP-based protocol for session signaling with Cisco Unified Communications Manager, formerly named ''CallManager''.<ref>{{cite web |url=http://www.cisco.com/en/US/docs/voice_ip_comm/cucm/admin/8_5_1/ccmsys/a08procl.pdf |archive-url=https://web.archive.org/web/20150711070711/http://www.cisco.com/en/US/docs/voice_ip_comm/cucm/admin/8_5_1/ccmsys/a08procl.pdf |archive-date=2015-07-11 |url-status=live|title=Understanding IP Telephony Protocols|publisher=}}</ref><ref>{{cite web|url=http://www.cisco.com/en/US/products/sw/voicesw/ps556/products_tech_note09186a0080624977.shtml|title=Call States Sent to SCCP Endpoints by Cisco CallManager|website=Cisco}}</ref> The protocol architecture is similar to the [[media gateway control protocol architecture]], in that is decomposes the function of media conversion in telecommunication for transmission via an [[Internet Protocol]] network into a relatively low-intelligence customer-premises device and a call agent implementation that controls the CPE via signaling commands. The call agent product is Cisco CallManager, which also performs as a signaling proxy for call events initiated over other common protocols such as [[H.323]], and [[Session Initiation Protocol]] (SIP) for [[voice over IP]], or [[ISDN]] for the [[public switched telephone network]].
'''SCCP''' is a proprietary terminal control protocol originally developed by Selsius Corporation. It is now owned and defined by [[Cisco Systems, Inc.]] as a messaging set between a skinny client and the Cisco [[CallManager]]. Examples of skinny clients include the Cisco 7900 series of IP phone such as the [[Cisco 7960]], [[Cisco 7940]] and the [[802.11b]] wireless [[Cisco_Wireless_IP_Phone_7920|Cisco 7920]], along with [[Cisco Unity]] voicemail server. Skinny is a lightweight protocol which allows for efficient communication with Cisco [[CallManager]]. CallManager acts as a signaling proxy for call events initiated over other common protocols such as [[H.323]], [[Session Initiation Protocol|SIP]], [[ISDN]] and/or [[MGCP]].
 
==Protocol components==
A skinny client uses [[TCP/IP]] to and from one or more Call Managers in a cluster. [[Real-time Transport Protocol|RTP]]/[[User Datagram Protocol|UDP]]/[[Internet Protocol|IP]] is used to and from a similar skinny client or H.323 terminal for the bearer traffic (real-time audio stream). SCCP is a stimulus-based protocol and is designed as a communications protocol for hardware endpoints and other embedded systems, with significant CPU and memory constraints.
An SCCP client uses [[TCP/IP]] to communicate with one or more Call Manager applications in a cluster. It uses the [[Real-time Transport Protocol]] (RTP) over [[User Datagram Protocol|UDP]]-transport for the bearer traffic (real-time audio stream) with other '''Skinny''' clients or an H.323 terminal. SCCP is a stimulus-based protocol and is designed as a communications protocol for hardware endpoints and other embedded systems, with significant CPU and memory constraints.
 
Some Cisco analog media gateways, such as the VG248 gateway, register and communicate with Cisco Unified Communications Manager using SCCP.
Cisco acquired SCCP technology when it acquired Selsius Corporation in the late 1990s. As a remnant of the Selsius origin of the current Cisco IP phones, the default device name format for registered Cisco phones with CallManager is SEP -- as in ''Selsius Ethernet Phone'' -- followed by the [[MAC address]].
 
==Origin==
Other companies like [[Symbol Technologies]] and [[SocketIP]] have implemented this protocol in [[VoIP Terminal]]s (phones) and [[Media Gateway Controller]]s or [[Softswitch]]es.
Cisco acquired SCCP technology when it acquired Selsius Corporation in 1998.<ref>{{cite web|archiveurl=https://web.archive.org/web/20051109224815/http://newsroom.cisco.com/dlls/fspnisapi6d14.html|title=News @ Cisco: Cisco Systems to Acquire Selsius Systems, Inc. for $145 Million|archivedate=9 November 2005|publisher=|url=http://newsroom.cisco.com/dlls/fspnisapi6d14.html}}</ref> For this reason the protocol is also referred to in Cisco documentation as the Selsius Skinny Station Protocol. Another remnant of the origin of the Cisco IP phones is the default device name format for registered Cisco phones with CallManager. It is ''SEP'', as in ''Selsius Ethernet Phone'', followed by the [[MAC address]]. Cisco also has marketed a Skinny-based softphone called Cisco IP Communicator.
 
==Client examples==
A company named [http://www.ipblue.com/ IPBlue] has created a software phone ([[soft phone]]) which uses SCCP for signaling, too. This phone in fact appears to the Cisco [[CallManager]] server as a 7960 hardware phone.
[[File:Cisco CP7970.jpg|thumb|Cisco 7970]]
Examples of SCCP client devices include the Cisco 7900 series of IP phones, Cisco IP Communicator softphone, and the [[802.11b]] wireless Wireless IP Phone 7920, along with Cisco Unity voicemail server.
 
==Other implementations==
In addition, Cisco has come out with its own version of a skinny softphone called Cisco IP Communicator as well as SIP-based softphone called Cisco Unified Personal Communicator. Previously, Cisco had a JTAPI/CTI version of a softphone called Cisco IP Softphone.
[[File:Cisco CP7911 Asterisk connected.jpg|thumb|[[Asterisk]] connected]]
 
Other companies, such as [[Symbol Technologies]], SocketIP, and [[Digium]], have implemented the protocol in VoIP terminals and IP phones, [[media gateway controller]]s, and [[softswitch]]es. An open source implementation of a call agent is available in the [[Asterisk (PBX)|Asterisk]] and [[FreeSWITCH]] systems.<ref>{{cite web|url=http://wiki.freeswitch.org/wiki/Mod_skinny|title=mod_skinny - FreeSWITCH - Confluence|website=wiki.freeswitch.org}}</ref> IPBlue provides a [[soft phone]] that emulates a Cisco 7960 telephone.<ref>http://www.ipblue.com/ IPBlue</ref> Twinlights Software distributes a soft phone implementation for [[Android (operating system)|Android]]-based devices.<ref>http://www.twinlightssoftware.com/ Twinlights Software</ref> The Cisco Unified Application Environment, the product acquired by Cisco when they purchased [[Metreos]], supports using SCCP to emulate Cisco 7960 phones allowing applications to access all Cisco line-side features.
A summary of SCCP request and response messages is as follows:
Code Station Message ID Message
0x0000 Keep Alive Message
0x0001 Station Register Message
0x0002 Station IP Port Message
0x0003 Station Key Pad Button Message
0x0004 Station Enbloc Call Message
0x0005 Station Stimulus Message
0x0006 Station Off Hook Message
0x0007 Station On Hook Message
0x0008 Station Hook Flash Message
0x0009 Station Forward Status Request Message
0x11 Station Media Port List Message
0x000A Station Speed Dial Status Request Message
0x000B Station Line Status Request Message
0x000C Station Configuration Status Request Message
0x000D Station Time Date Request Message
0x000E Station Button Template Request Message
0x000F Station Version Request Message
0x0010 Station Capabilities Response Message
0x0012 Station Server Request Message
0x0020 Station Alarm Message
0x0021 Station Multicast Media Reception Ack Message
0x0024 Station Off Hook With Calling Party Number Message
0x22 Station Open Receive Channel Ack Message
0x23 Station Connection Statistics Response Message
0x25 Station Soft Key Template Request Message
0x26 Station Soft Key Set Request Message
0x27 Station Soft Key Event Message
0x28 Station Unregister Message
0x0081 Station Keep Alive Message
0x0082 Station Start Tone Message
0x0083 Station Stop Tone Message
0x0085 Station Set Ringer Message
0x0086 Station Set Lamp Message
0x0087 Station Set Hook Flash Detect Message
0x0088 Station Set Speaker Mode Message
0x0089 Station Set Microphone Mode Message
0x008A Station Start Media Transmission
0x008B Station Stop Media Transmission
0x008F Station Call Information Message
0x009D Station Register Reject Message
0x009F Station Reset Message
0x0090 Station Forward Status Message
0x0091 Station Speed Dial Status Message
0x0092 Station Line Status Message
0x0093 Station Configuration Status Message
0x0094 Station Define Time & Date Message
0x0095 Station Start Session Transmission Message
0x0096 Station Stop Session Transmission Message
0x0097 Station Button Template Message
0x0098 Station Version Message
0x0099 Station Display Text Message
0x009A Station Clear Display Message
0x009B Station Capabilities Request Message
0x009C Station Enunciator Command Message
0x009E Station Server Respond Message
0x0101 Station Start Multicast Media Reception Message
0x0102 Station Start Multicast Media Transmission Message
0x0103 Station Stop Multicast Media Reception Message
0x0104 Station Stop Multicast Media Transmission Message
0x105 Station Open Receive Channel Message
0x0106 Station Close Receive Channel Message
0x107 Station Connection Statistics Request Message
0x0108 Station Soft Key Template Respond Message
0x109 Station Soft Key Set Respond Message
0x0110 Station Select Soft Keys Message
0x0111 Station Call State Message
0x0112 Station Display Prompt Message
0x0113 Station Clear Prompt Message
0x0114 Station Display Notify Message
0x0115 Station Clear Notify Message
0x0116 Station Activate Call Plane Message
0x0117 Station Deactivate Call Plane Message
0x118 Station Unregister Ack Message
 
==See also==
*[[Media Gateway Control Protocol]]
 
==References==
{{Reflist}}
 
[[Category:VoIP protocols]]
[[Category:Cisco protocols]]
[[Category:Application layer protocols]]
 
[[cs:Skinny Client Control Protocol]]
[[de:Skinny Client Control Protocol]]
[[es:Skinny Client Control Protocol]]
[[fr:Skinny Client Control Protocol]]
[[ro:Skinny Client Control Protocol]]