1 Multimedia network Applications
1.1 Multi-Media network applications
Multimedia network applications can be divided into 3 categories if they are divided according to how frequently the user interacts with each other:
1). Live Interactive Application (live interactive applications):
Internet telephony and real-time videoconferencing are examples of frequently interacting applications. In this application, attendees can speak or move at any time. The latency that is spoken from the attendee or moved to the receiving end should be less than hundreds of milliseconds for the user to accept. The human auditory system does not feel the delay of less than 150 milliseconds, and the delay between 150 milliseconds and ~400 milliseconds is acceptable , and a session with a delay of more than 400 milliseconds can be very awkward.
2). Interactive application (interactive applications):
Voice on demand, video-on-demand is an example of interactive applications. In this application, the user simply asks the server to start transferring files, pausing, starting from scratch, or jumping. The delay from the user making the request to playing to the start of the playback on the client is approximately 1-5 seconds to accept . The demand for information delay and jitter is not as high as Internet telephony and real-time conferencing.
3). Non-real-time interactive applications (Non-interactive applications):
Live sound broadcasts and broadcast or pre-recorded content broadcasts are examples of non-real-time interactive applications. In these applications, the sender continuously emits sound and TV data, while the user simply calls the player to play, like a normal radio or television broadcast. The delay between making a sound from the source or the TV signal to the receiving end is acceptable for 10 seconds or more . Jitter Requirements for signals can also be lower than the requirements for interactive applications.
1.2 Problems with application development
The internet offers two types of services for all applications: ① reliable connection-oriented services (reliable connection-oriented service): services provided using the TCP (Transfer Control Protocol) protocol are reliable services, The reliable TCP service guarantees that packets are transmitted to each other, and the latency requirements for packets are not high. ② Unreliable connectivity services (unreliable connectionless service): services provided using the UDP (User Datagram Protocol) protocol are unreliable services, and unreliable UDP services are not guaranteed, There is no guarantee that the information packets will not be lost during the transmission process, and that the delay satisfies the application requirements. In addition, the services provided by the Internet now provide equal access to all packets, such as voice packets and TV packets with high latency requirements that do not have any priority in the router's queue, and that anyone on the internet has to wait in line.
It is difficult to develop any successful multimedia network application due to the lack of any guarantee on the delay and the size of the packet delay. Today, multimedia applications on the Internet have made significant achievements, but only a limited degree of success. For example, although only a few seconds of time-lapse interactive voice-on-demand on the internet is a commonplace thing, but it is working on the Internet, in the more ocean over the sea of the congested links on the road, the sound of delay and loss is often difficult to accept. Even in the Continental region, the quality of the sound is greatly reduced due to the congestion at the peak.
Summed up, the current multimedia network application to focus on the problem is: ① increase network bandwidth, ② reduce delay (delay), ③ reduce jitter (jitter).
2. Ways to access sound and television on the Internet
Compressed sound or TV files can be placed on a Web server or placed on a voice/TV Exile server (streaming server). In the former case, the Web server transmits the file to the client via the HTTP protocol. In the latter case, the exile server transmits the file to the client through a non-HTTP protocol.
Because sound-on-demand and video-on-demand applications are not fully integrated into today's web browsers, a separate application-helper (helper), often called the media Player, is required to play sounds and movies. A typical media player performs several functions, including decompression, jitter removal, error correction, and user playback . It is now possible to use a technology like plug- in to place the user interface of a media player on the user interface of a Web client, where the browser retains screen space on the current web page and is managed by a media player. Currently, there are several ways for clients to read sound and movie files, three of which are described below.
2.1 Transferring sound/TV from the Web server to the media Player via a Web browser
The simplest way to read multimedia to a client is to put a sound/tv file on an HTTP server and then transfer the file to the media player via the browser.
The ①web browser establishes a TCP connection with the Web server and then submits the HTTP request message request to transmit the sound/TV file.
The ②web server sends a response message and a requested sound/TV file to the Web browser.
The ③web browser checks the type of content in the HTTP response message, invokes the appropriate media player, and then delivers the sound/TV file or a pointer to the file to the media Player.
④ Media Player plays a sound/tv file.
Although this method is simple, there is a relatively large delay problem . Because the media player must pass the third--web browser to get the sound/TV file from the Web server, and the browser needs to download the entire file from the Web server to the browser before transferring it to the media player. The result of this is that even for medium-sized files, the playback delay introduced during this transfer is difficult to accept. The idea is to remove the intermediate links and try to get the media Player to link directly to the Web server.
Transfer sound/TV from a Web server to a media player via a Web browser
2.2 Transferring sound/TV directly from the Web server to the media Player
Direct TCP connection between the Web server and media Player is required to transfer the audio/TV file directly to the Media Player (TCP connection)
(1) The user clicks on the hyperlink to request the transfer of the sound/TV file.
(2) This hyperlink does not directly point to the sound/TV file, but instead points to a playback documentation (presentation description file), which contains the address (URL) of the actual sound/TV file. The playback instructions file is encapsulated in an HTTP response message.
(3) After the Web browser receives an HTTP response message, it examines the type of content in the response message, invokes the appropriate media player, and then transmits the playback description file in the response message to the media player.
(4) The Media Player establishes a TCP connection directly to the Web server and then sends an HTTP request message that transmits a sound/TV file to the TCP connection.
(5) Transfer the audio/TV file in the HTTP response message to the media player and start playback.
Transfer sound/TV directly from the Web server to the media Player
The playback documentation mentioned earlier is a file about the sound/TV file itself, also known as a meta file, which can be a single line of text files consisting of only a sound/tv file URL, or a file containing more content. For example, the play description file can be a synchronized Multimedia Integration language (Synchronized Multimedia integration language,smil) file, read as "Smile", which is presented by the Web page in the language of the TV display. This file can contain multiple sound/TV files and instructions for how to play them, explaining how the various sound/TV files should be synchronized when playing the file.
Use this method to transfer the link between sound/TV files, but this method still uses HTTP to transfer files, it is not easy for users to get satisfied with the Web server interactive performance, such as pause, replay from scratch and other functions . Although this product is sold on the market, this structure is generally not recommended.
2.3 Direct audio/TV to media Player from the multimedia exile server
The third approach is to consider transferring multimedia files from a standalone multimedia server, such as a sound server or a TV server, to a media player. This strategy allows the app developer to design a streaming (multicast) Release protocol (streaming protocol) for multimedia on-demand (Multimedia-on-demand). This scenario requires two servers: one is the HTTP server for the Web page service, and the other is the exile server for the sound/TV file service . Two servers can be run on the same server or on a different service machine. If the Web server is very busy, it is advantageous to use two servers.
With this structure, the media player requests the transfer of files to the exile server, rather than requesting the transfer of files to the Web server, which can communicate between the media player and the exile server using their own protocols , and the sound/TV file can use UDP Instead of TCP, it is transferred directly from the exile server to the media Player.
Transfer audio/TV directly from a multimedia streaming server to a media player
2.4 Main functions of media Player
Media Player, which is used to play sound or TV files, generally has the following functions.
(1) decompression : Almost all sound and TV images are compressed and stored in the memory, so whether the playback from the memory or from the network of sound and TV are to be decompressed.
(2) to shake : Due to the arrival of each sound packet and TV image packet time delay is not a fixed value , if not add any measures to the data sent to the media player, the sound will have a feeling of jitter, Even the information expressed in the voice and television images is not understandable. In the media player, the simple way to limit this jitter is to use the caching technique , which is to store the sound or TV image data in the buffer memory, and then play it after a delay.
(3) error handling : Due to the often unacceptable traffic congestion on the Internet, some packets in the packet stream may be lost during transmission. If there are too many packets lost in a row, the quality of the sound and image received by the user is intolerable. The approach is often re-transmitted.
(4) user-controllable interface : This is the actual interface that the user directly controls the media player to play the media. The control features that the media Player provides to the user typically include sound volume, pause/restart and jump, and so on.
3 Information exchange technology on the network
3.1 Overview
Remote communication networks can be divided into two types of networks: line Switching Network (circuit-switched networks) and packet switching network (packet-switched networks). The packet switching network is also known as the Data Network (networks). In a circuit-switched network, all the resources on the channel (such as link bandwidth, etc.) are leased during the exchange of messages, while the resources on the channel are not leased during the exchange of messages in the packet-switched network, that is, resources are not retained, but resources are used as needed, and the packets exchanged often need to wait for available resources. For example, there are two types of restaurants: a restaurant that needs to be booked, and one that does not need or does not receive a reservation. For the former, you must compete with the first person to call (or email) before going to the restaurant, but you will usually be able to contact the waiter and set the meal immediately after the restaurant, but for the latter, the customer does not have a seat reservation problem, but after the restaurant you may have to wait for a seat before you can set the meal.
The telephone network (telephone networks) is an example of a circuit-switched network. If you want to speak to someone on a telephone line or send a fax, you must first establish a connection with the other party, which is called a line connection, or a line exchange. When the line connection is established, the bandwidth of the line is leased, and you can transfer the data at a constant rate.
The Internet is an example of an information packet switching network. For example, if you want to send a message to someone on the internet, the Internet doesn't keep any bandwidth for you. Before your message arrives at the receiving end, it must pass through a series of communication links before it can be delivered to the receiving end. Since many messages are transmitted over the Internet, if there is a congestion at one of the links, your message will have to wait in the buffer memory, resulting in a delay. Although the Internet uses a lot of good technology to overcome these problems, it is still not like a circuit-switched network to guarantee a constant rate of transmission of messages.
Not all remote communication networks belong to the line switching network or to the packet switching network. For example, ATM network technology has both a bandwidth-preserving connection and a link that does not retain bandwidth.
3.2 Line Switching
Line switching (circuit switching) is characterized by the need for communication between the two parties to establish a physical connection by the Line Exchange Center before starting the communication, and the length of time to maintain the connection depends on the needs of the message exchange. The diagram is a circuit-switched network. In this network, 2 transmission links are used to connect 3 line switches together, each transmission link has "n lines", "N-line" refers to the time Division Multiplexing Technology (Time-division MULTIPLEXING,TDM) or frequency Division Multiplexing (Frequency Division MULTIPLEXING,FDM) , so each link can support n connections (connection) at the same time. Each receiving end (such as a PC or workstation) is connected directly to one of the switches, or directly to the switch via a modem. The regular phone we use is also connected to the switch, but it is not represented on the diagram. When two hosts want to communicate, a dedicated end-to-end line connection is established between the two hosts, and each end-end line is given a 1/n link bandwidth.
The concept of line switching
TDM is the primary means of digital communication . TDM technology divides time into many fixed frames, and each frame is divided into a fixed number of intervals, called a time slot. When user A communicates with User B, the system assigns a time slot to the user, and the connection is established only in this time slot, and each successive resource occupied by the user is only the bandwidth of one of the time slots, so that many users can share a transport link.
FDM is the primary means of analog communication . FDM technology divides the transmission line's frequency band into several parts, each band can be used as a separate transmission channel, so a pair of transmission lines can also have a number of simultaneous calls to the user, each of the users of the continuous use of resources is only one of the band. Communication, which uses frequency division multiplexing technology, is also called carrier Wave. Using FDM in the Telephony network, each link uses 4 khz bandwidth, and FM broadcasts use FDM to share the microwave spectrum.
The diagram briefly describes the concepts of FDM and TDM. From the current development trend, TDM has the potential to replace FDM, most telephone networks in the United States and other developed countries have used TDM.
The concept of FDM and TDM
Many people believe that line-switching networks establish links by using dedicated lanes, thus wasting valuable communications resources when communication is idle. For example, when a long pause occurs during a conversation, the network resources (band or time slots) along the link line cannot be exploited by other links.
3.3 Packet Exchange
Often people refer to any application data block asmessages (message), for example, ASCII files, PostScript files, Web pages and sound files, and so on. In the modern packet switching (packet switching) network, the sender divides the entire message into small chunks of data that are packaged and "labeled" before being sent to the network. This data package sent to the network is calledInformation Pack (packet), it is more accurate that the packet is a packaged and fixed-size transmission unit, which contains both the user's data and the title added in accordance with the agreement, and the title contains information such as identification number, sending address, receiving address, etc. At the receiving end, the received packet is disassembled and re-stitched into the original complete message. Unlike point-to-point circuit switching, where a physical connection is required on both sides of the transceiver, each packet on the packet-switched network contains a destination address, so that a message is packed with many packets that do not have to travel along the same line to the destination, and do not have to reach the destination at the same time, the order in which they are sent, The channel will be sent there when it is free.
After the sending side divides a very long message into smaller packets, between the sending and receiving ends, each packet is routed through the communication link and packet switch (packet switches), sometimes called the Router (routers) to the receiving end. Packets are transmitted at a speed equal to the link transfer rate on each communication link. Most packet switches are used on the input sideStore-and-forward method (Store and forward) forwards the packet to the output link, which means that the switch must receive the entire packet before the 1th bit (bit) of the packet is forwarded to the output link, resulting inStore-and- forward latency, the length of the delay is proportional to the size (length) of the packet. If the packet length is L, the data rate of the transmission link is R, and the delay is L/R.
There are multiple buffers in each switch, and each packet must be queued in the link buffer memory before it is output to the link, if the buffer memory is empty when the packet arrives, or if no other packet arrives, it does not need to be queued. Therefore, in addition to the storage-forward latency (Store-and-forward delays) described earlier, additional packetsqueue delay (queuing delay), it is an indeterminate delay, depending on the congestion situation on the network.
The graph represents a simple packet-switched network. Assuming that hosts A and B are sending packets to host E, packet A and packet B are first routed through the 28.8 kb/s link to the first packet switch and then transferred to the 1.544 MB/s link. If congestion occurs on this link, the packets are queued in the link cache memory for output to the link. The order of output to the link is not random or statistical in accordance with any pre-defined rules, so this packet switching technique is also known asStatistical multiplexing Technology, it is distinct from the TDM technology that each host obtains the same time slots.
The concept of packet switching
People have different views on circuit switching and packet switching technology. The information Packet Exchange holds the opinion that because the packet delay is uncertain and unpredictable, the packet switching technology should not be used in the real-time service business, for example, teleconferencing and videoconferencing. and the different views of the line Exchange hold that: ① packet switching than line switching can provide better bandwidth sharing characteristics, ② is relatively simple, low cost. Generally speaking, people prefer information Packet Exchange technology.
The first international standard on the packet switching network is X. x, which is used on analog lines and is sensitive to noise. Later, a Frame relay (relay) for digital lines was developed and switched multimedia/multi-gigabit Data Services (switched Multimedia/multi-megabit-SERVICE,SMDS) implemented over the telephone network.
3.4 Message exchange and Packet Exchange
In the modern packet switching (Packet switching) network, the process of transmitting messages from one end to the other is that the sending side splits a long message into smaller packets, which are then sent to the network. The receiving side splits the received small packet into the original message. If the sender does not divide the message into small packets, but instead sends the entire original message to the network, the packet-switched network executes the message exchange (MSG switching), which is a special case of packet exchange. To deepen the understanding of packet exchange and message exchange, a comparison is made below.
Figure 14-08 illustrates the work process for message exchange. Suppose there are two switches and 3 links between the receiver and the sender, because the switch works as a store-and-forward method, it must receive the entire message completely before it forwards the message to the output link.
Figure 14-08 How message exchange works
Figure 14-09 illustrates the working process of the Packet exchange. It is also assumed that there are two switches and 3 links between the sending and receiving ends. In this example, suppose the sending side divides the message into P1,P2,...,P5 a total of 5 packets, P1 has reached the receiving end, P2 and P3 are being transmitted in the network, and P4 and P5 are still on the sending side. Since the switch works in store-and-forward mode, it must completely receive the entire packet before it forwards the packet to the output link.
Figure 14-09 How the Packet Exchange works
One of the main advantages of packet switching over message exchange is that the latency between end-to-end is much smaller. Suppose a message has a length of 7.5 Mbits, there are two switches and 3 links between the sending and receiving ends, and the data transfer rate for each link is 1.5 MB/s. In the case of no congestion in the network, the time required for the message from the sending end to the sender can be estimated as follows.
(1) message exchange : Since the switch uses storage forwarding to work, No 1-bit data can be sent to the link until the entire message is received, so the message from the sending side to the first switch requires 7.5/1.5 = 5 seconds. Similarly, it takes 5 seconds from the first switch to the second switch and 5 seconds to reach the receiving end from the 2nd switch. As shown in 14-10, it takes 15 seconds for the message to reach the receiving end from the sender.
Figure 14-10 Message Exchange Latency
(2) Packet Exchange : Suppose the sending side divides the message into 5,000 packets, each containing 1.5 Kbit. As shown in 14-11, it takes about 5.002 seconds for the 5000 packets to be transmitted from the sender to the sending end. As a result, packet switching is much less time consuming than message exchange because the transmission technology used by packet switching is parallel, and message exchange uses serial transmission.
Figure 14-11 Packet Exchange delay
Another advantage of using packet switching is that it can significantly save error processing time. For example, in a message exchange, when only 1 bits of data in a message are faulted, the entire message is sent again. In packet switching, when the same error occurs, only the packet that contains the error data is re-routed. Therefore, it takes much less time to transmit the packet than the entire message.
14.3.5 connection-oriented and no-connect services
The internet is often called a TCP/IP network and offers two types of services: No connection service (connectionless services) and connection-oriented services (connection-oriented service). Any kind of Internet service must use one of these two services. For both of these services, each packet has a destination address, and the switch sends the packet according to the destination address of the packet.
1. Connection-oriented services
On the Internet, applications invoke a connection-oriented service by using the Transport Control Protocol (TCP). The meaning of the connection-oriented service is that the sending and receiving sides communicate before starting to send the packet, establish a direct connection, and remind the other party to be ready to receive the packet before it starts to enter the packet transfer process. Connection-oriented services provide the following 3 functions to ensure that packets are routed from the sender to the receiving end:
(1)Confirm(acknowledgements): When the receiving end receives the packet, the receiving end sends a confirmation signal to the sender, and when the sending side receives the acknowledgement signal, it indicates that the corresponding packet has been received by the other party.
(2)Process Control(Flow control): The receiver may be busy with other tasks or be limited to its processing power, it is necessary to limit the rate at which the sender sends packets, which can inform the sender at the rate of the limit at the beginning of the communication.
(3)Congestion Control(Congestion Control): When the switch is congested, buffer memory in the switch can overflow, resulting in packet loss, and the connection-oriented service provides a mechanism (method) to limit the transfer rate.
As a result of these measures, the Internet's connection-oriented services are considered reliable services, while the Internet's non-connected services are considered unreliable services on the grounds that it does not ensure that data is transmitted to destinations.
2. No connection service
On the Internet, no connection service is invoked by using User Packet Protocol (UDP). The meaning of the non-connected service is that the sender simply sends the packet to the network, the sending end and the receiving end have no communication process before transmitting the packet, and there is no confirmation from the other side, so it is not known whether the destination is received or not. There is no congestion control function or process Control function for no connection service.
Currently, applications that are more familiar to most people use Transmission Control Protocol (TCP), the Internet-facing connection service. These services include Telnet (for remote logins), SMTP (for e-mail), FTP (for file transfer), and HTTP (for the World Wide Web). However, there are also many applications that use User Packet Protocol (UDP), which includes emerging multimedia applications such as Internet telephony, voice-on-demand, video-on-demand and videoconferencing.
Both TCP and UDP are transport-layer protocols, which are described in more detail in the 15th chapter.
14.3.6 Network classification
The classification of the remote Communication network is shown in approximately figure 14-12. The remote communication network uses line switching and packet switching. In line switching, Frequency Division multiplexing (FDM) and Time Division Multiplexing Multiplexing (TDM) technology are used to improve transmission capacity.
Figure 14-12 Network classification
Packet-switched networks are divided into two categories, called Packet Networks (datagram network), and the other called Virtual line networks (Vsan Circuit Network). If packets are sent at the destination address, the network is called a packet network, and the IP protocol of the Internet is the sending of packets at the destination address, which is called a virtual line network if packets are sent according to the virtual line number.
Packet networks are similar in many ways to postal services. When the sender sends a letter to the destination, the sender loads the letter into the envelope and writes the recipient address with a hierarchy on the envelope, such as country-province-city-street-number-recipient. The Postal Service system sends the letter to the destination according to the address on the envelope. In a packet network, each packet that is sent over the network contains a destination address, which is similar to the hierarchical address on the message. Since each packet switch has a routing table, when the packet arrives at the switch in the network, the switch extracts the destination address portion of the packet and uses the address to retrieve it in the routing table to find the appropriate outgoing link and then send the packet to the link.
The virtual circuit is a temporary communication path, and the transmission line of the packet in the virtual line network consists of 3 parts: a series of links and switching devices, called paths (Path), between the ① sending and receiving ends. ② along the path of the virtual line number (circuit number), one of the numbers corresponds to a link on the path. ③ the table entries in the Virtual Line conversion table in the Exchange device along the way. Once the virtual line between the sending and receiving ends is established, the packet can be sent by selecting the appropriate virtual line number. Because virtual lines have different virtual line numbers on each link, the middle packet switch must replace each traveling packet virtual line number with a new virtual line number.
A packet network provides a connection-free service to some messages, and some messages can provide a connectivity-oriented service. Virtual line networks are typically connection-oriented services such as X. Relay, Frame Relay, and asynchronous Transfer Mode ATM (asynchronous Transfer mode) networks.
Streaming media 7--Multimedia network applications and exchanges