Vigorous Distance Learning Applications Using the Stream Control Transmission Protocol

: Distance learning software is a ‘hungry’ type of software in terms of performance metrics and its requirements for handling different kinds of media effectively. Video-based applications in particular are considered to be an extremely demanding type of software. Although up to this point software designers have spent considerable time improving applications, they have neglected the effects which are due to the use of the various network protocols. This work attempts a critical view of transport layer protocols and their effects on distance learning applications. This study shows that the stream control transmission protocol provides many advantages – especially the multi-homing and multi-streaming features. This protocol is recommended for video-based applications and its usage will improve the quality of service of contemporary distance learning applications


Introduction
Nowadays, distance learning (DL) applications may provide fully accredited education via the Internet and two-way interactive video. Those applications can be applied in many learning scenarios. For example, they can be used to support learning courses, degree programs, in-service training, intern supervision, etc.
The usage of video-based media can reduce the rigidity of the class schedule, relieving pressure on space and accommodating more complex schedules. Video-based DL technologies provide advantages, such as the immediacy, the flexibility and the effectiveness of interactive applications, which give the opportunity for a professor to support various groups of learners who are in other locations.
Contemporary integrated applications of DL may combine videoconferencing, collaboration on the Web, instructor-led training via live video stream, computer-based training and the ability to access stored videos on demand. Moreover, network technologies also serve additional needs, such as electronic libraries delivering education material. This genre of DL applications is networked-based software and presupposes that the network infrastructure operates in an efficient manner. Until now, the remote learning software designers have been trying to improve the graphic user interface (GUI) and the functionality of applications, as well as to comply with the relevant pedagogical requirements [1]. What the designers have overlooked is taking account of or studying network protocols and networking techniques that are involved with their applications. The usage of specific network protocols and transport techniques creates a unique environment. Any sophisticated application, if it operates in a cumbersome network environment, is doomed to fail.
This work attempts to illuminate this side of application development. It points out some basic weaknesses that are raised by existing protocols and suggests the usage of stream control transmission protocol (SCTP) as a solution. Therefore, a critical review of network protocols is attempted in order to assess their suitability for this purpose.
The remainder of this paper is organized as follows: in the second section, issues of video-based distance learning applications are presented. In the third section, the basic features of the SCTP are shown and a critical view is attempted in comparison with existing protocols. In the fourth section, some scenarios of distance learning applications are depicted and the usage of SCTP is recommended as a solution. In the final section, the conclusions and anticipated future work are presented.

Video-Based Distance Learning Applications
DL applications involve audio, video, data, or a combination of them and they are delivered simultaneously over the Internet. Contemporary DL applications frequently involve streaming media. Streaming media are considered to be video or audio content that is sent in compressed form over the Internet and played at once without any particular delay.
DL software platforms embed streaming containers in order to compose and transfer video in an efficient manner. A container or wrapper format is a metafile format that describes how different elements of data and metadata coexist in a computer file. A container is an object that holds the grouping of compressed video as it is defined by the codec, and is responsible for packaging, transportation and presentation. Table 1 depicts some basic streaming containers that can be used by DL software and shows the video and audio formats that are related to each streaming container. Another necessary tool applied in video-based DL applications is the transcoders that are used at the endpoints of the communication links. Usually a video cannot be transmitted directly to the Internet, nor can a received video clip be viewed immediately. In those cases, transcoders need to be embedded in DL software platforms in order to convert video clips to a more suitable or compressed streaming format. The resulting formats can then be viewed through a player on a computer or mobile device, depending on the equipment that each client uses.
Sometimes, the media rates need to be aggregated. The final bit-rate resulting from the process of aggregation must be equal to or less than the available Internet bandwidth. This is accomplished by independent control for each type of media by allocating a fixed rate to each one. Nevertheless, this may lead to considerable variations in quality between different media and thus can cause inefficient utilization of the Internet link.
In DL applications, media are often streamed from pre-recorded files. Nevertheless, media can also be distributed as part of a live broadcast feed. In the case of live broadcasting, the video signal is converted directly into a digital signal and transmitted from a Web server as multicast, sending it to multiple clients at the same time.
To achieve more effective operation of DL applications, resource allocation for multiple media streams is needed. Then those streams must be manipulated by a suitable transport protocol, thus ensuring better end-to-end quality in the network.

Quality of Service Issues of Video-Based DL Applications
Currently, the Internet is unable to balance network conditions such as bandwidth, ratio of packet loss, packet latency and jitter. In networks, such parameters vary from time to time. On the other hand, most media encoders that are used on DL applications do not take into account the network parameters.
In general, various types of media may present different quality impairments under the same network conditions. For example, real-time media (video or audio) are latency sensitive objects and they assume reliable transmission. This means that implementing a high-quality multiple media streaming system that may handle various Internet conditions is a great challenge.
In order to provide applications with sufficient quality of service (QoS), several technologies have been used. For example, resource reservation (e.g., RSVP) is usually applied on the Transport Control Protocol (TCP). RSVP requires all the intermediate routers to support QoS. In addition, RSVP tends to over-allocate resources for guaranteeing QoS, which leads to reduced network usage.
Alternatively, in the DL applications that are based on handling priorities, various data packets or streams are labelled with their priorities and treated differently by the intermediate router. This technique is named differentiated service (DiffServ). Until now, this technique has not been considered completely effective.
Moreover, in order to transport both real-time and non-real-time media efficiently over the Internet, applications are expected to have the ability to deal with the congestion regulating their transmission rates and maintain the inter-protocol's fairness. So far, the TCP is the protocol that can manage network congestion.

TCP Transmission Drawbacks
All the existing DL applications that operate via the Internet they have to rely on the User Datagram Protocol (UTP), the TCP or both as transport layer protocols. However, these protocols are known to demonstrate certain weaknesses. For example, DL applications that run by using the TCP suffer from inadequacies, such as the following.
1. Head-of-line blocking (or HOL blocking) in networks. This is a performance-limiting phenomenon that occurs when a line of packets is held up by the first packet. This weakness occurs in input-buffered network switches, in cases of out-of-order packet delivery and when there are multiple HTTP pipelining requests [3], [4].
2. Load increment on Web server. When any TCP connection is allocated by a Web server, the server is responsible for updating the Transmission Control Block (TCB) for each TCP connection. As many parallel TCP connections are developed between the two ends, the TCP processing load is raised on the server side. In cases of high traffic, some Web servers may decide to cancel some incoming TCP connection requests because the available memory is temporarily full. 3. Aggressive behaviour during congestion. It is well known that the TCP maintains fairness among TCP connections. According to this, a TCP sender decreases its window by half when congestion is perceived [4]. This happens in order to maintain stability and fairness in the link [6], [7]. However, a DL application that employs multiple TCP connections receives an unfair share of the available bandwidth in the path, because not all the application's TCP connections may suffer loss when congestion is perceived. Thus, when k out of n open TCP connections detect loss, the decrease factor for the connection aggregate at the sender is equal to . Moreover, although the decrease factor is sometimes greater than half, all the parallel connections are treated as senders. This aggressive treatment leads to an unfair share of bottleneck throughput compared with other applications that have a smaller number of connections. 4. No integrated loss detection or recovery. Web objects are considered to be small, and a few Transport Protocol Data Units (TPDUs) are produced per HTTP response. If a TPDU is lost, to recover this is a time-consuming process [3]. This problem continues to exist when multiple TCP connections are used. The DL applications frequently develop multiple TCP connections, depending on their own needs. 5. The connection establishment latency is increased. A three-way handshake process is enacted when a TCP connection is being set up. This process wastes a round trip for every connection opened at the same Web server. Any loss while a connection is trying to be set up causes unwanted delays due to the recovery process that is immediately enacted. If the number of connections grows, the probability of losing an established connection is also increased. In that case, the average delay of connection establishment becomes greater. All the aforementioned malfunctions have been analysed in depth by previous studies such as congestion management [6] and TCP transaction [5]. In addition, all the above transfer drawbacks negatively affect the performance and the behaviour in general of DL applications.
Because a major portion of Internet traffic is TCP-based, it is desirable especially for the multimedia streams to be 'like' TCP flows. This means that a media flow must have a similar throughput to a typical TCP flow along the same path under the same network conditions with lower delay.

Transport Architecture for Distance Learning Multimedia Streaming
A distance learning application that uses media streaming with multiple servers and multiple clients may be deployed in the same session, if circumstances allow it. Figure 1 illustrates an example where some continuous media servers play back multimedia streams for clients over the Internet. It should be pointed out that in this scenario any server is able to serve a number of requests simultaneously.

Figure 1. A network example depicting multimedia flows between multiple servers and receivers in a distance learning scenario.
On the other hand, each client has the ability to request services from various servers. However, because each client has its own bandwidth limit, it is usually not possible to achieve the optimal end-to-end QoS.

The Power of SCTP in Distance Learning Applications
The Internet engineering task force (IETF) has standardized a connection-oriented transport reliable protocol named stream control transmission protocol (SCTP) [7], [13].
The SCTP overcomes the above-mentioned shortcomings of the TCP. Table 2 shows a comparison of basic features of three transport layer protocols (TCP, UDP and SCTP). The differences between them mean that each one creates a particular environment that affects the performance of the DL applications. However, the SCTP in particular presents special features that provide high availability, reliability, and improved security in socket initiation. These advantages create new conditions that allow DL applications to achieve a significant level of performance.
The distance learning applications -compared with othersare extremely demanding software and therefore they will gain extraordinary benefits from using the SCTP.
This work underpins the possibility of building a new distance learning application on a SCTP, where all the aforementioned weaknesses are expunged [8], [9]. In the following section, some interesting features of the SCTP are presented. By exploiting those features of SCTP, the performance of the application is expected to be improved considerably.

Multi-Homing Operation on Distance Learning Applications
Multi-homing is a way of connecting a host or a computer network to more than one networks. Via the SCTP, the multi-homing operation is serviced efficiently and in this way, multiple IP addresses can be used within one association, for example, a connection between two SCTP endpoints (e.g., between two classes). If in an SCTP endpoint there is more than one transport address that can be used as a destination address, this endpoint is considered to be a multi-homed point [10]. Figure 2 depicts a simple multi-home communication scenario between two endpoints. In DL applications, the two ends can be represented, for example, by two different classes. The multi-homing operation here sets up both paths to an association. If one of the two paths fails, all the traffic will be redirected to the other path.

Figure 2. A sample of multi-homing communication between two endpoints.
When the two endpoints try to set up an association to each other based on SCTP, they have the ability to announce to each other additional IP addresses that will be used in the multi-homing operation. It is worth noting that the set of announced IP addresses must be 'hearing' in the same port. This technical capability creates the possibility for each member belonging, for example, to group 1 to be able to communicate with each member of the other group and vice versa. Moreover, this capability will increase the immediacy among educational communities.
According to the SCTP multi-homing mechanism, one of the parallel paths is considered as the 'primary' path. The rest of the paths are used when the primary path is broken or when the DL application requires the message to be sent by another IP address. This means that the development of DL software requires special design that takes into account multi-homing.
In general, the multi-homing mechanism can be applied in DL applications for two reasons: firstly, to increase the reliability and the performance and, secondly, to decrease the cost. Modern DL applications very often need to implement multi-homing techniques due to their requirements.

Multi-Streaming Operations on Distance Learning Applications
The end user of DL applications may, in general, use different types of equipment. For example, they may use laptops, personal digital assistants (PDA) or cellular mobile phones. This creates the need to have more than one network interface supporting these different end-user technologies. In addition, combining those different fixed and wireless technologies into a superior network service is fundamental for an operational distance learning services environment. Different types of client equipment need different types of data flow.
Streaming video has some operational characteristics that greatly facilitate the educational process, such as: immediate playback start, uninterrupted playback (avoiding "buffering"), smooth playback (no frame drops) and the highest possible quality.
In DL applications, media are often streamed from prerecorded files but can also be distributed as part of a live broadcast feed.
Streaming media can be transmitted by a server application and received by learners who act as clients (endpoints). As the streaming media are received, they are displayed in real time by the client's media player. On the client's side, the media player can be part of a browser, an additional plug-in, a separate program, or a dedicated device.
The SCTP has the ability to support one or more streams of messages within an association. Α stream number is encoded by SCTP and is given to each stream flowing through the association.
Moreover, SCTP multi-streaming is a particularly useful mechanism that helps when a stream is blocked for any reason. This problem is the head-of-line blocking problem. In this case, the blocking does not affect the other parallel streams in an association. TCP suffers a lot from this phenomenon while the SCTP has avoided it effectively.

A Distance Learning HTTP Application
Let us consider a DL application based on the HTTP. If the application is implemented on simple HTTP, control and data are passed via the same socket. For example, if a Web client (a typical student) requests a file from a server, the request and the response share the same connection. If the application exploits a multiple streaming mechanism using SCTP, the server increases the interactivity because multiple requests could be serviced on independent streams within the association. The parallel responses may not be faster. However, the user will have the feeling of immediate response by playing the images and graphics immediately.
When control and data packets share the same connection, usually control packets can be considerably delayed behind data packets. This phenomenon is avoided when control and data packets are split into independent streams. In that case, control data could be transferred quickly, providing faster utilization of resources.

A Distance Learning Multi-Streaming Application
Let us consider the scenario where a server holds a 1920x1080 video clip which was created at 80 Mbps. Suppose this video must be delivered to four students who have different devices and who are located in the same place. Table  3 depicts the students' availabilities.  In order to service the above demands, transcoders must be used to convert the master video (1920x1080, 80 Mbps) into the students' available bit rates. Figure 3 depicts the four adaptive bit rates that must be applied -one for each student In addition, because the students are situated in the same place, four parallel streams (stream 0 … stream 3) must be implemented.
The SCTP is the most suitable protocol for implementing this scenario effectively. In Figure 3, an SCTP association incorporating four separate streams is depicted. So far, in such a scenario there is no other protocol that could provide better results than the SCTP.

Additional Features of SCTP
The SCTP is able to schedule multiple streams and operate applications on different platforms, which is crucial in a multimedia e-learning environment. The SCTP operates at the transport layer in heterogeneous wireless networks, and thus can be applied in e-learning applications seamlessly. The transfer of multiple files simultaneously is easy to achieve using SCTP.
Beyond the above features (multi-homing and multi-streaming) that employ the SCTP, it presents additional characteristics that also improve the operation of DL applications. For example, the initiation protection and message framing techniques are mechanisms that the SCTP provides for improving communication. Moreover, messages in SCTP are transferred reliably but not necessarily in the desired order. By SCTP, the configurable unordered delivery contributes greatly to DL application performance. Up until now, many published studies reveal the advantages that the SCTP provides to applications [11], [12], [14], [15], [16].

Conclusion
DL applications are considered to be extremely demanding software because they need to handle different kinds of media in both real and non-real time. In this paper, a general framework of DL video-based applications is discussed and a critical view is presented of some network protocols and techniques that are involved with DL applications.
The particular features that the SCTP incorporates make it a suitable candidate transport level protocol for distance learning multimedia applications.
Nevertheless, despite the advantages of SCTP, its usage today is limited to operators' service. End users have not yet adopted this protocol as an ordinary transport protocol but this is not due to technical reasons. This paper attempts to resist this trend, highlighting the advantages of applying a more appropriate network type protocol.
This work has many possibilities for extension. For example, typical DL applications can be tested in TCP/UDP and SCTP operation and relevant performance results collected. In addition, DL scenarios with multi-home and/or multi-service requirements using SCTP can be implemented, clearly showing the benefits that are highlighted.