Quality of Service is a method of marking packets in order to get treated preferentially as compared to unmarked packet. Typically this scheme is available at IP layer. The QoS is important in order to provide better throughput, minimized delay and less jitter in packet Delivery. The IP header provides a field which can be used to mark preferences for any IP packet. For some applications resources need to be reserved in order to provide QoS, such scheme is called Integrated Service. For others marking packets with a particular class so that they get preferential treatment at router does the job, this is called Differentiated service. Though network these days are very robust, so the reason for need of QoS is mainly congestion as compared to packet loss. However, packet loss is quite common in wireless networks, so this criteria must be kept in mind while choosing a QoS mechanism.
For VoIP a guaranteed service is required since interactive services are intolerant to delays or losses. The resources have to pre-booked to avoid delays and ensure availability of sufficient bandwidth. Typically SIP uses Resource reservation protocol(RSVP) and Real Time Control Protocol(RTCP) for QoS. RSVP determines Traffic specifications(Tspecs) and based on Tspecs, it determines Reservation specifications.
On application layer, the QoS parameters can be communicated over a SIP header or as SDP data. RTCP on the other hand acts along with RTP by acting as feedback mechanism for QoS in audio communication. All participants in network send RTCP report to each other to keep track of QoS statistics. RSVP ensure end to end delivery and RTCP recognizes end points to send QoS statistics to these end points. Sometimes a dedicated bandwidth manager is deployed at network boundaries because bandwidth requirement varies for different kind of network traffic. The QoS is also determined by the CODECs used by the applications for encoding and decoding audio data.
Though there are many protocols and technical solution available for providing QoS for VoIP, but more importantly a QoS policy is required to utilise these solutions optimally. These policies are determined by service level agreement(SLA) between customers and service providers. IETF has also developed a standard called as Common open policy Service(COPS) for managing network resources. There are no universal standards for providing QoS for voice data but a good policy along with a good set of mechanism can provide a fairly good QoS for VoIP.