The essence of Skype is also VoIP technology. So it must also realize the usual VoIP protocol stack, and the general criteria that meets voice communication on the Internet.
Taking into account the general characteristics of the Internet, it is not a network suitable for voice communication.
Data application
No audio and video adaptive selection
The order of grouping arrival may change no connection
No fixed circuit connection Best Effort
If a problem occurs, it may cause information loss.
For the basic features of the above Internet as a data network, you want to implement voice packet switching services on it, the general guiding principle is approximately as follows (for all VoIP, not just skype):
1. Reduce packet delays, and timely drainage:
Time delay is that the time spent from the transmitting end to the receiving end, the jitter is a time-spent change.
2. Bandwidth requirements
Since the transmission speech signal is in addition to its own voice signal, it includes the first part of the L_2, IP packet, UDP, and the application layer protocol, and the head of the voice encoder. SO, you can see that the comparison optimized speech coding method used by Skype can make it levels on this level. Of course, this is not the key to the problem.
3. Reduce calculation
This indicator has no significant meaning in this comparison.
4. Reduce RTT (Round-Trip Time): The time and node processing of the transmission in both directions, the study shows that the best RTT of voice communication is less than 300 ms
5. Jumping: How much jump has passed from the sender to the receiving end. The larger the number of hops, the larger the time extension, the greater the jitter of the delay. This has a relationship with the router's processing of packets (load). At the same time, the distance between the distance is relatively small. However, it is generally not necessary to fix a fixed route, because "routing information is rarely changed during the call", which is determined by the routing algorithm.
6. Short pack: Because the speech encoder is at a size of 10 to 30 bytes when the frame length is 10 to 30 ms. At the same time, short packets reduce the impact of the packet loss on the voice signal. However, the short bag has increased the time of the load and restructuring of the router, which is a trade-off.
7. Using UDP as a transport layer protocol because UDP is close to voice communication.
Research performance from the specific application
1. Error tolerance
Studies have shown that when the packet loss rate is not more than 10%, it will not seriously affect the quality of the call.
2. Time delay
The two-way delay of the voice packet must be constant while still less than 300ms.
Two-way delay = a voice pass to B B to hear a sound b Start speech a hear B sound
3. VBR data flows to CBR smoothing transition
F1. Structure of traditional ip phone
F2. Communication model structure used by Skype
The comparison of the above two graphs can be recognized:
1. The VoIP gateway is used in Figure 1 to provide a function of voice / digital conversion. The low rate vocoder and other special hardware used by the sender VoIP gateway encodes, compresses, and then encapsulates a voice data package (IP packet). This structure supports traditional telephone network services: Telco Center bureau encodes signals to 64kbps DS0 signals, and then the voice encoder encodes the DS0 signal into a 6-8kbs Telco signal to the router on the router.
2. In Fig. 2, both encoded, compressed, and the package is done by the PC. It can be imagined that it has been made through VoIP's centralized processing (end-to-end direct communication reduces the number of routing hops, and the factors such as server pressure)
At the same time, the amount of data transfer supported by Skype is undoubtedly providing a higher voice restore effect by comparing the data transfer amount of VoIP 6 to 8 kbps. However, before I have provided the picture, the quality of the speech of Skype is more than 2 times more than other communication methods, and it is necessary to be affected by the specific network environment. Based on the above discussion, it can be understood that "the whole is partially composed", "Skype's communication quality is not caused by a single one aspect, but the results of all aspects. Among them, direct communication between Peer and Peer can reduce the "trip", reduce the load of the VoIP gateway (data packets directly to the router), and increase the amount of data transfer, these three key factors play an important role. However, it is not necessary to ignore the benefits of "speech coding" technology.
supplement:
1. Advantages of telephone network:
1 / Call establishment phase The path between the transmission between the party and the party is fixed.
2 / Phone exchange has no queue problems. The speech signal is multiplexed in the DS0 (TDM time slot). Transfer directly from the input interface of the switch to a preset output interface corresponding to the DS0 time slot.
Therefore, the circuit exchange provides a fixed path and a fixed time delay.
The packet switched network does not provide a fixed path and fixed delay.
2. General Solutions proposed by VoIP by analyzing the size of the data package:
1 / It is very important to use a shorter packet to transfer voice services.
a. Because the probability of containing important information in a short package is relatively small, the phenomenon of packet loss is not much affected by the quality.
The specific data is: 10 ~ 30 bytes, and the size of other packages on the network is mainly 175 ~ 400 bytes.
b. Because short packs can cause the processing node to check, process small unit information
2 /, but not the length of the package is smaller, resulting in an increase in the number of packets;
The principle of generating problems is that the router is the same as the package load of different sizes. The actual solution is to implement 2 ~ 3 voice samples in a packet, which is approximately 20 ~ 60 bytes.
Solutions for the above issues: SONET (synchronous fiber network) and Gigabit router
3. Why not take a TCP transport layer protocol?
Because the total transport layer of TCP is 400 ~ 500ms, the RTT required for VoIP needs
Voice networks have different design concepts with data networks, real-time synchronization services that are synchronized by voice networks, and require delays between the sender and the receiving end to a fixed value:
The difficulties must be overcome:
1 / Reduce delay
2 / reduced time delay jitter
3 / Reduce data packet loss rate
So usually choose UDP and IP protocols as protocols of their transport layers and network layers.