A new MAC scheme specifically suited for real ... - Semantic Scholar

5 downloads 801 Views 1MB Size Report
Dec 11, 2012 - error recovery mechanism. The main elements are a description of a MAC scheme and a scheduling approach taking into .... Mean Data Rate, Delay Bound, Maximum Service Interval, Nominal MSDU Size and Minimum PHY Rate [27]. The HC is ..... both a high grade of reliability and hard real-time support.
Computers and Electrical Engineering 39 (2013) 1684–1704

Contents lists available at SciVerse ScienceDirect

Computers and Electrical Engineering journal homepage: www.elsevier.com/locate/compeleceng

A new MAC scheme specifically suited for real-time industrial communication based on IEEE 802.11e q Raimundo Viegas Jr. a,⇑, Luiz Affonso Guedes b, Francisco Vasques c, Paulo Portugal d, Ricardo Moraes e a

Federal University of Para, Faculty of Computer Science, Brazil Federal University of Rio Grande do Norte, Department of Computer Engineering, Brazil c University of Porto, Faculty of Engineering, UISPA, Portugal d University of Porto, Faculty of Engineering, DEEC, Portugal e Federal University of Santa Catarina, Computer Engineering Department, Brazil b

a r t i c l e

i n f o

Article history: Available online 11 December 2012

a b s t r a c t This paper proposes a new real-time communication scheme for 802.11e wireless networks. This scheme is called Group Sequential Communication (GSC). The GSC improves the efficiency of the Hybrid Coordination Function Controlled Channel Access (HCCA) mechanism by reducing the protocol overheads of the 802.11e amendment. The GSC approach eliminates the polling scheme used in traditional scheduling algorithm, by means of a virtual token passing procedure among members of the real-time group to whom is granted a high-priority and sequential access to communication medium. In order to improve the reliability of the proposed scheme, it is also proposed an error recovery mechanism based on block acknowledgment. The GSC was implemented in network simulator software and the performance results were compared to HCCA scheme, showing the efficient of the proposed approach when dealing with traditional industrial communication scenarios. Ó 2012 Elsevier Ltd. All rights reserved.

1. Introduction Nowadays, the use of Wireless Local Area Network (WLAN) for real-time communication is rapidly growing in industrial automation. Several factors contribute to it, such as a flexible operation, easiness of configuration, mobility and reduced installation and maintenance costs [1]. The use of these networks has been identified as an attractive option for factory automation, distributed control systems, automotive systems and networked embedded systems [2,1]. The WLAN defined by the IEEE 802.11 standard [3] is able to replace industrial Ethernet solutions in a transparent way, implementing the two lowest layers of the International Organization for Standardization and Open Systems Interconnection (ISO/OSI) model for Networking [4]. It provides all the required functionalities to enable the support of the Internet Protocol (IP) that is virtually the basis for applications over Ethernet networks [5]. More recently, the IEEE 802.11e amendment [6] was published. This amendment is intended to provide differentiated levels of Quality of Service (QoS) to the supported applications. It incorporates an additional coordination function called hybrid coordination function (HCF), which is only used in QoS network configurations.

q

Reviews processed and recommended for publication to Editor-in-Chief by Associate Editor Dr. Mehdi Shadaram.

⇑ Corresponding author.

E-mail addresses: [email protected] (R. Viegas Jr.), [email protected] (L.A. Guedes), [email protected] (F. Vasques), [email protected] (P. Portugal), [email protected] (R. Moraes). 0045-7906/$ - see front matter Ó 2012 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.compeleceng.2012.10.008

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

1685

The HCF function provides two mechanisms to support applications with QoS requirements: the first is called Enhanced Distributed Channel Access (EDCA) and delivers traffic based on differentiating Access Categories (ACs), and the later called HCF Controlled Channel Access (HCCA) allows the reservation of transmission opportunities for high priority messages. These new mechanisms can be regarded respectively as an extension of Distributed Coordination Function (DCF) and an extension of Point Coordination Function (PCF), which were proposed in the original IEEE 802.11 standard [7,8]. The HCCA operates in infrastructure mode using polling-based mechanism and was proposed to guarantee upper bounded medium access delays. However, some preliminary research studies [9] have already reported that the original HCCA mechanism may not be adequate to support real-time communication, mainly due to the high polling overhead caused by stations that do not have messages to be transmitted. This assertive is especially critical for industrial applications, due to the extensive use of small size data packets [10]. Nevertheless, we believe that an improved HCCA mechanism will have the potential to provide an adequate real-time communication service. Here, the major challenge concerning the improvement of the original HCCA scheme, but keeping a total compatibility with IEEE 802.11e amendment. This paper describes all elements of our efforts in defining a new scheme referred as Group Sequential Communication (GSC). It is proposed to reduce the HCCA protocol overheads for use in IEEE 802.11e wireless industrial communication networks. The GSC scheme compels the sequential transfer of messages among the members of a real-time group (RT-group), without the traditionally required polling and ACK and Null frames. This sequential transfer is achieved by the use of a Virtual Token Passing (VTP) and all RT messages transmission are acknowledged by a real-time block acknowledgment frame as error recovery mechanism. The main elements are a description of a MAC scheme and a scheduling approach taking into consideration special properties of industrial wireless media. The proposed MAC scheme described here is an enhanced variant of the first papers that was published in past conferences (a preliminary versions of this paper was presented in [11,12]) up to the final work. The published papers had initial concepts that were developed and used to describe past research facts or theoretical generalizations, which yet are valid. The remainder of this paper is organized as follows: Section 2 briefly presents the concepts used in the IEEE 802.11e MAC protocol. Section 3 describes the state-of-the-art for real-time communication approaches based on the IEEE 802.11e standard. Section 4 describes the proposed Group Sequential Communication (GSC) scheme. Section 5 deals with system modeling (traffic model, admission control and error analysis) of the GSC scheme. Section 6 presents performance evaluation studies where is comparing GSC performance results with HCCA mechanism based on the network simulation software, and finally the Section 7 presents conclusions. 2. IEEE 802.11e amendment The IEEE 802.11 protocol was standardized in 1999 by the Institute of Electrical and Electronics Engineers (IEEE) as the IEEE 802.11 standard, which was later reaffirmed in 2003 [3] as the first WLAN standard. Nowadays it is the most widely used communication protocol for WLANs. This standard defines the physical (PHY) layer and Medium Access Control (MAC) for a LAN with wireless connectivity. The IEEE 802.11 MAC protocol implements two distinct mechanisms. The first is the Distributed Coordination Function (DCF) that is based on Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) [13]. It uses Interframe spaces (IFS) to assign different medium access priorities to the sending stations called as: Short Interframe Space (SIFS), PCF Interframe Space (PIFS), DCF Interframe Space (DIFS) and Extended Interframe Space (EIFS) [14,15]. The second is Point Coordination Function (PCF). It is a polling protocol that allows access to a contention free environment, able to coexist with the DCF technique. The need for real-time communication for IEEE 802.11 networks lead to the establishment of the IEEE 802.11e task group on July 1999. On December 2005, the Task Group E published the IEEE 802.11e amendment [6]. This amendment provides differentiated levels of Quality of Service (QoS) to applications, including the support of voice and video over WLANs [16]. It incorporates an additional function called Hybrid Coordination Function (HCF) that provides two QoS-Based mechanisms: The Enhanced Distributed Channel Access (EDCA), which supports traffic differentiation and is based on user priorities (UPs), and the HCF Controlled Channel Access (HCCA), which allows the reservation of Transmission Opportunities (TXOPs) with the Hybrid Coordinator (HC). Both are backward compatible with the IEEE 802.11 standard [17]. 2.1. EDCA (Enhanced Distributed Channel Access) EDCA is designed to provide distributed access to 802.11e stations (Quality Stations) for frames mapped into four different Access Categories (ACs) named: Background (AC-BK), Best Effort (AC-BE), Video (AC-VI) and Voice (AC-VO) data traffic, where AC-BK has the lowest and AC-VO has the highest priority [18,19]. The EDCA mode is defined as a multiple backoff process, operating in parallel in the QoS station (QSTA). This scheme, named relative prioritization, is rooted from IEEE 802.1D bridge specification [20]. Then, each QoS data frame carries its priority value in the MAC frame header. The AC uses the AIFS[AC] (Arbitration Interframe Space), the minimum contention window (CWmin[AC]) and the maximum contention window (CWmax[AC]) parameters for the contention resolution procedure [21]. The AIFS[AC] is determined by SIFS + AIFSN[AC].aSlotTime, where AIFSN[AC] is defined as an integer greater than zero, and aSlotTime (ST) is defined as twice the time that a frame takes to travel through the maximum distance between two wireless nodes [22]. The values of AIFSN[AC], CWmin[AC] and CWmax[AC], which are referred as EDCA parameters, are

1686

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

announced by the Access Point (AP) via beacon frames [23]. Basically a frame from an AC with small AIFS[AC] and CWmin[AC], will have a greater probability of accessing earlier the wireless medium. 2.2. HCF Channel Access (HCCA) The HCCA mechanism was proposed to improve the PCF and is intended to guarantee bounded delay requirements based on a round robin scheme. It operates mainly during the Contention Free Period (CFP), but can also operate during the Contention Period (CP) [24]. The transition between the two CFP repetition intervals is signaled by a beacon frame [25]. The HC is able to gain the control of the wireless medium in CFP or CP by waiting a PIFS interval between transmissions of stations using the EDCA or DCF mechanisms. The HC may include a CFP parameter in the beacon frame, which informs all stations to set their Network Allocation Vectors (NAVs) for the end of the controlled phase. During the CFP, the HC controls the access to the channel by polling all stations in the polling list, even though some stations may have no messages to transmit. For each polled station it is granted a TXOP time interval to transmit its own traffic. Otherwise when the HC polls a station that has no packets to transfer, the station will transmit a null frame, without any backoff procedure. The HC generates beacon frames at regular time interval where every station knows when the next beacon frame will arrive. These time instants are called Target Beacon Transmission Time (TBTTs) and are announced in the previous beacon frame [26]. The Quality Stations (QSTAs) also send Quality of Service (QoS) reservation requests using the management frame called Traffic Specification (TSPEC). The TSPEC frame contains the set of parameters that define the QoS characteristics of network traffic that may be needed, or may be available, for any particular instance of the parameterized QoS traffic. The TSPEC parameters include: Mean Data Rate, Delay Bound, Maximum Service Interval, Nominal MSDU Size and Minimum PHY Rate [27]. The HC is also allowed to start a TXOP in the CP immediately after the channel being idle for one PIFS, this is called Controlled Access Phase (CAP). A CAP ends when the HC does not reclaim the channel after duration of PIFS, at the end of a TXOP. During the contention period (CP), the channel access can be performed via EDCA distributed coordination as well as through polling protocol, when the HC polling frame wins the contention. 2.3. Performance improvements for 802.11e mechanisms The IEEE 802.11e also provides some additional mechanisms for QoS enhancements. The first is the Block Acknowledgment (BlockACK). That allows the use of single acknowledgment for a group of frames. It can be initialized through a setup and negotiation process between the QSTA and the QAP (QoS-enhanced AP). When the BlockACK has been established, multiple QoS data frames are transmitted in a contention free burst with a SIFS interval between adjacent frames. At the end of the block, all data frames are acknowledged by a bit pattern transmitted in a block acknowledgment frame [26]. This reduces the bandwidth overhead imposed by the conventional ACK mechanism, which requires an individual ACK to every data frame [18]. The second mechanism is called Direct Link Protocol (DLP). It allows two QSTAs associated with the same QAP to transmit data frames directly to each other without need to be relayed by AP [28]. The third is a No Acknowledgment frame (No-ACK), which is used in applications that have strict delay requirements, but can tolerate packet losses. Finally, the fourth is a Piggyback mechanism that allows data to be sent ‘‘piggybacked’’ on polls and ACKs frames to reduce the network overhead [18]. 2.4. Motivations for changes in the HCCA The HCCA mechanism was designed for improves of burst data transmission where the overhead impacts are minimizes. This scheme is well suited for flows that require guaranteed channel access and have predictable traffic. However, to be effective, the centralized controller requires accurate information about the size of flows prior to scheduling. Additionally, the reservation request only includes averaged values, such as mean packet size and required throughput. However, usually there are multimedia traffic flows that have the generic variable-bit-rate (VBR) traffic stream, this issues can be generate low performance of HCF scheduling during the polling based period can be inefficient and unsuitable for the traffic flows in the network, and can lead to unacceptable delays [16]. In another situation when the stations need to send one traffic streams contained a small size data packet only (typical industrial application for example) to another stations throughout AP, there is a growing of network overhead [29]. As mentioned before, the HCCA defines one Service Interval (SI) with two periods. The first part is used as a contention-free period (CFP) by polled stations that have previously reserved TXOPs (uplink and downlink) and the second part that is used as a contention period (CP) for EDCA stations. The temporal diagram is as illustrated in Fig. 1. Table 1 presents the transmission time values for 40 Bytes of data payload, when using the physical layer of IEEE 802.11b at 11 Mbps. According to IEEE 802.11e [6], the HCCA TXOP can be defined as nominal transmission time for data packets in uplink and downlink, including PHY layer headers, MAC layer headers, nominal PHY rate and data payload size. Where the CF-Poll overhead is denoted as:

CFPollov hd ¼ CFPoll þ SIFS

ð1Þ

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

1687

Fig. 1. HCCA polling mechanism for one data packet.

Table 1 HCCA transmission time for 40 bytes. HCCA parameters

Time of transmission (ls)

PHY header MAC header Beacon frame PIFS CF-Poll frame SIFS Data payload ACK packet aSlotTime CF-End frame Delay transmission TXOP UP time TXOP DOWN time CAP time CFP time

192 26.18 824 30 288 10 247.27 112 20 160 2 1061.27 571.27 1642.54 2848.54

Considering that the TXOP uplink and downlink overheads are evaluated as follows:

TXOPup ¼ CFPollov hd þ Data þ 2SIFS þ ACK

ð2Þ

TXOPdown ¼ Data þ 2SIFS þ ACK

ð3Þ

And that the Controlled Access Phase (CAP) is the sum of both TXOPs, denoted as:

CAP ¼ TXOPup þ TXOPdown

ð4Þ

Finally, considers that HCCA overhead ratio, may be evaluated as:

HCCAov hd % ¼ 100  ½ðCAP  DataÞ=CAP

ð5Þ

We can plot the HCCA overhead ratio in function of a variable data payload size for one traffic stream composed of only one or several data frames. We can observe that for HCCA performance for data payload is growing with size packet because the impact of overheads is minor, as illustrated in Fig. 2. The performance of HCCA retransmission mechanisms under noisy channel is obtained by different probabilities that are assigned to Packet Error Rate (PER) of Beacon (pbeacon), Polling (ppoll), Data (pdata) and Acknowledgment (pack) frames. The packet loss was modeled assuming that the communication channel causes errors independently and uniformly distributed with constant PER. Considering the set PER constant to assess the retransmission algorithms performance and not their impact on the network. Thus, the probability of success for the traffic transmission in uplink and downlink directions is given respectively by the Eqs. (6) and (7):

Puplink ¼ ð1  pbeacon Þ  ð1  ppoll Þ  ð1  pdata Þ  ð1  pack Þ

ð6Þ

Pdownlink ¼ ð1  pdata Þ  ð1  pack Þ

ð7Þ

The next step is to validate the model, the Eqs. (6) and (7) are applied to calculate the CFP duration time. Thus, it is possible to find the Eqs. (8) e (9).

1688

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

HCCA Overhead X Packet Payload Size 100

HCCA Overhead Ratio (%)

80

60

40

20

0 40

200

360

520

680

840 1000 1160 1320 1480 1640 1800 1960 2120

Packet Payload Size in Bytes One Packet for Station

Five Packets for Station

Fig. 2. Performance of HCCA polling mechanism.

Initially, we can define the following probabilities:  Pqueue is the probability of having packets queued for transmission and  Perror is the probability of an error occurred to packet transmission. Whereas,  S is the number of stations and  N is the number of packets transmissions over WLAN required per station. The CFP duration time only within uplink data transfer, it can be get by:

CFP ¼ T Beacon þ SIFS þ

S X ðaSlotTime þ T CF

þ SIFSÞ þ P queue 

Poll

1



S X N X ðT QoS 1

Null

S X N X 1

þ SIFSÞ þ ð1  Perror Þ 

S X N X

1

1

ðT QoS

Data

þ SIFSÞ þ ð1  Pqueue Þ

1

ðT Ack þ SIFSÞ þ Perror 

S X N X ðaSlotTimeÞ þ T CF

1

1

End

ð8Þ

1

The CFP duration time to traffic in the uplink and downlink directions is obtained by:

CFP ¼ T Beacon þ SIFS þ

S X ðaSlotTime þ T CF

Poll

þ SIFSÞ þ P queue 

1



S X N X ðT QoS 1

Data

1 S X N X ðT QoS

þ SIFSÞ þ ð1  P queue Þ 

1

 P error Þ2 

S X N X

1

Null

1

1

Data

þ SIFSÞ þ ð1  Perror Þ  Pqueue

þ SIFSÞ þ ð1  Perror Þ 

1

S X N S X N X X ðT Ack þ SIFSÞ þ Perror  ðaSlotTimeÞ þ T CF 1

ðT QoS

1 S X N X 1

End

ðT Ack þ SIFSÞ þ Pqueue  ð1

1

ð9Þ

1

Based on assertions, we present in this paper a new proposal to dealing for all these restricted models mainly with the problems of small data packets transmission in HCCA mechanism. 3. Review of related works In this section, we briefly describe some of the most relevant approaches that have been proposed to support real-time traffic upon the IEEE 802.11e Wireless Networks, when dealing with the use of the HCCA mechanism. In this presentation, we classify the set of approaches in two main groups: (i) The IEEE 802.11e compliant approaches and (ii) The IEEE 802.11e non-compliant approaches.

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

1689

The latter group may present some interesting ideas but is not economically viable today. Moreover, it is not realistic to assume the existence of IEEE 802.11 free environments, which simplify impairs the use of non-compliant approaches. Therefore, we will only analyze the IEEE 802.11e compliant approaches. These approaches are compatible with IEEE 802.11e because no changes in transmission mechanism and can still are divided into two sub-groups: (a) Approaches that use the original HCCA polling scheme and (b) Approaches that modify or enhance the HCCA mechanism.

3.1. HCCA polling scheme approaches The approaches that are based on the original HCCA polling mechanism suffer the consequence of polling overheads. Therefore, several state-of-the-art works propose new scheduling and admission control algorithms to improve the HCCA performance for constant bit rate (CBR) and variable bit rate (VBR) applications such as voice and video. Relevant examples are: Grilo et al. in [25] propose a scheduling algorithm for the IEEE 802.11e Hybrid Coordination Function. The proposed algorithm is compatible with the link adaptation mechanisms implemented in commercial WLANs, as it bounds the amount of time during which each station may control the wireless medium access. The performance of the algorithm is evaluated through computer simulations and compared with the original scheduler. Lim et al. [27] describe an algorithm for ensuring fair access of a granted TXOP to different streams at a station by combining them into a single First In, First Out (FIFO) queue, thereby allowing for minimal MAC processing when a poll is received. They also introduce a novel scheduler that optimizes the delivery of QoS sensitive traffic. Cicconeti et al. [30] propose a scheduling algorithm for realtime supporting in an IEEE 802.11e networks using the HCCA function. This scheduling algorithm uses an offline procedure that generates a service schedule over a base period and an on line procedure that applies the latter to schedule adequate TXOPs to HCCA messages streams.The most complex activities (admission control and timescale computation) are performed offline, while the enforcement procedure is performed online. Ghazizadeh et al. [31] propose a new priority queuing model to analyze a medium access in the HCCA mode. This model makes use of a Markovian Arrival Process (MAP)/Phase Type (PH)/1 queue with two types of jobs which are suitable to support VBR traffic. They used a MAP for traffic arrival process and PH distribution for service process, the inclusion of vacation period makes them analysis very general and comprehensive to support various types of practical traffic streams. According the authors the work proposed, the priority queuing model is very useful to evaluate and enhance the performance of the scheduler and the admission controller in the HCCA mechanism, but this model cannot be applied to the HCCA medium access which is based on a vacation period and time-limited service. Arora et al. [17] propose a mechanism of adaptive TXOP allocation that is applicable to existing scheduling algorithms. The scheme works in accordance with channel and traffic conditions and complies with the link adaptation mechanism. Extensive simulation results verify that the scheme shows improved performance while ensuring long-term fairness among STAs and being adaptive to the channel conditions and underlying physical transmission rates. Ruscelli et al. [24] propose a new approach to address the problem of scheduling VBR traffic streams. The new scheduler is called ‘‘Overboost’’. It uses HCCA to negotiate a minimum bandwidth and deals with traffic streams that require more bandwidth than the negotiated one by redirecting the excess bandwidth to the EDCA function. An analytical evaluation has been conducted and the results have been corroborated by an extensive set of simulations. They show that the overall scheduler improves the performance with respect to other HCCA schedulers in terms of null rate, throughput, access delay, and queue length.

3.2. Modified HCCA mechanism approaches This proposals group changes HCCA polling scheme performance. Relevant examples are: Lo et al. [32] designed a multipolling mechanism called Contention Period Multipoll (CP-Multipoll), which incorporates the DCF access scheme into the polling scheme. It uses different backoff values for the multiple message streams in the polling group, where each station executes the backoff procedure after receiving the CP-Multipoll frame. The contending order of in the polling group is the same as the ascending order of the assigned backoff values. The stations in the polling list initialize their transmissions immediately after receiving the CP-Multipoll frame. This action avoids the interference from other stations performing the backoff procedures in the DCF mode. Son et al. [33] propose a simple polling scheme to reduce the number of polling operation when a station does not have packets to transmit. In this scheme, when the polled station transmits a data holding packet, the station can be more frequently polled by reducing the polling period. The maximum polling period is defined by the user according to the data characteristics. Milhim and Chen [34] proposed an adaptive polling scheme, where the HC maintains two dynamic polling lists to reduce both the access delay and polling overhead. Both VBR and CBR traffic are taken into consideration. Simulation results show

1690

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

that the polling overhead is significantly reduced, in addition to a higher throughput and a lower access delay when compared to the classical Round-Robin polling scheme. 3.3. Industrial application approaches This set of approaches was designed to optimize the HCCA scheme, but does not avoid the low performance when transmitting small sized data packets [2,10,35] and does not save bandwidth when there are not data packets to be transmitted [9]. Cena et al. [36] report on some experimental measures and the related analysis that have been carried out on real 802.11g/e networks for better understanding the statistical distribution of response times. Theses experimental measures can be very helpful to characterize any new proposal when used to support no critical real-time traffic. Vitturi et al. [37] present a mapping of the application service elements onto the services offered by wireless systems and discuss some possible design choices. A prototype of the application layer protocol is then implemented for each considered wireless technology and the performance figures evaluated using experimental measurements. Jonsson and Kunert [1] present a way of combining retransmissions with worst-case scheduling analysis that can offer both a high grade of reliability and hard real-time support. The solution handles one or several retransmission attempts of erroneous data without jeopardizing already guaranteed delay bounds of other packets. A real-time analysis is provided for a full-duplex, asymmetric link, utilizing the new retransmission scheme and supporting both piggybacked and non-piggybacked acknowledgments. The simulation evaluates the performance of the retransmission scheme for bit-error rates typically experienced in wireless communication. The results indicate a possible reduction of the message error rate by several orders of magnitude. 4. The GSC: description of the proposal The proposed GSC scheme intends to improve the efficiency of the HCCA access mechanism by reducing the polling, ACK and NULL frames overheads based on the publisher–subscriber approach. It is usually more decentralized and flexible access mechanism than master-slave. Its main targets are: First, to replace the HCCA mechanism by a group-based solution to efficiently support RT communication services in IEEE 802.11e wireless networks. Second, to be fully compatible with the existent IEEE 802.11 and 802.11e solutions (both stations and access points), being able to be implemented it in open and low cost hardware/software platform. From a conceptual viewpoint, the GSC is fully compatible with the HCCA mechanism. The CFP starts with the Hybrid Coordinator (HC) capturing the control of the wireless medium by transmitting a beacon frame immediately after a PIFS interval of idle medium. This frame will set the NAVs (Network Allocation Vector) of all stations to the end of CFP. During this period, the GSC stations will have an exclusive access to the medium. The GSC scheme operates only during the CFP interval. It does not use a polling scheme, such as HCCA, to grant Transmission Opportunities (TXOPs) to each of the real-time stations previously registered in the group. Instead, it sequentially grants the medium access right to a group of RT-stations. Once the schedule of a RT-time group is triggered, a Virtual Token Passing procedure is started among the RT-group members (hereafter also referred as GSC stations). This procedure serializes the message transfers from the RT-group members, without the need to exchange any extra polling messages between the HC and the real-time stations. The VTP procedure uses a set of local counters that are incremented at specific slot boundaries. Such local counters implement a distributed variable that defines which station has granted the medium access. Whenever a GSC station has no frame to be transmitted, it transfers the medium access rights to the next station in the group, without wasting bandwidth with extra message exchanges. It means that any null-frame will not be transmitted. At the end of the RT transmission process, it is verified if all messages were successfully transmitted using a Real-Time Block Acknowledgment frame. If there are messages that were transmitted with errors, then a retransmission procedure is immediately initiated. This procedure is called ‘‘Second Chance’’ and also uses the VTP restricted to the GSC stations that had their transmission with errors. The insertion and removal of GSC stations during the GSC operation is also supported and performed in CP period. These mechanisms are implemented by conveying additional data on beacon frames. This data is used by GSC stations to update their image about RT-group members. Therefore, at the beginning of each CFP all GSC stations have a coherent perspective of the RT-group. Finally, the GSC scheme assumes that the hidden stations problem is solved by the underlying IEEE 802.11e standard. 4.1. GSC specification The GSC procedure considers a Sequence Group (SG) with np members, where circulates a virtual token in L. The memberships is represented as L = {GI1, GI2, . . ., GInp}, where GIi is used as station identification (ID), np is the maximum number of admitted stations in real-time group. Specifically, all members of SG maintain a local Sequence Counter (SC) variable that is an image of the distributed variable SC. The GSC procedure works as follows. In the beginning of the CFP repetition interval, the HC broadcasts a beacon frame. This frame fulfills several functions: (i) set all NAVs to the end of the CFP; (ii) set the value of the distributed variable SC to 1 in all GSC stations; (iii) convey information about RT-group members. The first one

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

1691

Fig. 3. GSC repetition interval.

prevents that any station (including GSC stations) initiates message transmissions during the CFP, unless properly authorized. This guarantees that the GSC procedure works undisturbed. The second one guarantees that at the beginning of a CFP all GSC stations will have the same SC value. The third one will be discussed in detail in the Beacon subsection. Whenever a GSC station GIi has a packet ready to be transmitted and its SC image equals its ID (SC = GIi), then it is authorized to immediately transmit RT messages after the medium being idle during at least one (SIFS time) interval. Conversely, if the GSC station is holding the token and does not have any RT message to transmit, the SC value will be incremented after aSlotTime (ST) in all the GSC stations, allowing the next GSC station to transmit its own messages. This operation is repeated successively until the end of all GSC stations. The use of broadcast approaches in wireless networks could lead to potential problems, particularly in noisy channels. Since Acknowledgment frames (ACK) are not used, it is not possible to confirm if a message was correctly received, or not. If a message is corrupted by errors then it is discarded by the receiving stations. However the transmitting station is unaware of this situation. In practical terms, only in the next CFP it would be possible to transmit this message again, which would be equivalent to delaying it. Therefore, it is necessary to have a mechanism to ensure that a RT message can be retransmitted within a minimum delay. The GSC implements this mechanism by means of a new transmission round named Second Chance. During the GSC transmission period, the HC monitors all message transmissions and tracks the ones with errors. Then, at the end of the GSC round, the HC broadcasts a Real-Time Block Acknowledgment frame (RTBlockAck) with the collected information. This packet is based on the Block Acknowledgment packet defined in the IEEE 802.11e standard and therefore is fully compatible with the existent solutions. The RTBlockAck has a frame similar to 802.11e BlockACK (BTA) scheme. One of its fields contains a bit-mask, where ith bit is used to inform if station GIi has its transmission affected by errors (0), or not (1). After a SIFS interval, a new VTP procedure called Second Chance will be initiated among just the GSC stations that received a negative confirmation. Second Chance operates by changing temporarily the GIi of each station for the new VTP round in the following way. If a station transmitted a message without errors then it is excluded from the temporary RT-group. This can be done by setting: GIitemp = GIi, Gii = 0, where GIitemp is its temporary GIi. If a station had its transmission affected by errors, then sets its GIi according to the following rule; Giitemp = GIi

GIi ¼ GIi 

i1 X maskðkÞ

ð10Þ

k¼1

where mask(k) represents ith bit in RTBlockAck By applying these rules a new RT-group is (temporarily) created by reordering the stations. The group is composed only of the stations that had erroneous transmissions. Moreover, all these stations will have consecutive IDs, which minimizes the time necessary to complete the VTP procedure. Therefore this mechanism works as an error recovery mechanism, which minimizes the chances of missing or delaying RT messages. After the Second Chance, the HC broadcasts a CF-End frame which signalizes the end of the CFP. The CF-End frame also fulfills several other functions. First, it resets all NAVs allowing the initialization of the CP interval where standard EDCA stations can start contending together for the medium transmission. Second, all GSC stations update their IDs as GIi, restoring therefore the original values of RT-group. Besides these properties, an assumption specifying that the logical SG group has already been initialized with np stations. The Algorithms 1 and 2 show the details of how the GSC scheme works.

1692

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

Algorithm 1. HC-GSC Main Algorithm

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

Algorithm 2. GSC Station Algorithm

1693

1694

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

Fig. 3 shows an example of the GSC Repetition interval. The HC transmits a beacon frame that starts the CFP. The GI1 station will start a real-time message transmission (SC = 1) just after the medium being idle during a SIFS interval. Considering that all stations have received the beacon frame and station GI1 started its transmission successfully, it will be allowed to control the medium for a TXOP interval at most. At the end of TXOP, after a SIFS time, all GSC stations increment their local SC value passing the virtual token (SC = 2) to the next station (GI2).1 Consider that this transmission is corrupted by noise. The HC takes account for this situation and will signalize a retransmission in the RTBlockAck procedure. After another SIFS time, the GI3 station should starts its transmission. However, considering that GI3 station does not have any message to be transferred, the SC counter is incremented by one after a aSlotTime (ST), and GI4 station is allowed to start its transmission (SC = 4). At the end of the GI4 station’s TXOP, and after an SIFS time, the HC sends an RTBlockAck packet for all real-time stations. Real-time stations that did not have a successfully transmission, will have a new chance to transmit their packet (Second Chance Algorithm). After the end of the new transmission cycle plus an SIFS time, the GSC sends the CF-end frame for resetting all NAVs. This initializes the CP interval, allowing EDCA stations to start contending for the medium and the GSC stations will be able to subscribe for a new SI cycle.

4.2. Beacon frame As the beacon frame plays a central role in the GSC scheme operation, it will be discussed in detail in this section. The GSC uses two fields of the beacon frame to convey information about it: Capability Information and TIM (Traffic Information Map). It is worth nothing that this is a standard IEEE 802.11 frame and not a modified one. The Capability Information field is composed of several sub fields that are used to advertise the HC capabilities. Sub fields CF-Pollable and CF-Poll Request are set in order to inform the stations that the HC does not support the HCCA Polling mechanism. Consequently, EDCA stations will not request support for this function. The Field TIM has also several sub-fields. The Partial Virtual Bitmap (PVB) sub field is used by the HC to send information about active associations with the stations. This sub field is a bit mask, where ith bit corresponds to the Association-ID i. If ith bit is set (1), the HC has packets buffered to the station. Otherwise, there are no packets. The GSC uses the PVB in the following way. Association-ID from 1 to 64 are reserved for GSC stations (this value can be adjusted if necessary), and the remaining values (65. . . 2008) are reserved for standard stations. Standard stations interpret the PVB sub-field according to the rules defined by the standard. However, for GSC stations the PVB sub-field has a different semantic. On each Contention Period, the GSC stations can enter or leave the RT-group. The HC takes account of these situations and uses the PVB sub field to inform all GSC stations about it. If station GIi is removed from the RT-group, then PVB’s ith bit is reset (0), otherwise is set (1). The removal or insertion of stations into the RT-group requires that the GIi for each station to be recomputed. This can be done if each GSC station applies the following rule after receiving a Beacon frame:

GIi ¼ GIi 

i1 X NOTðPVBðkÞÞ

ð11Þ

k¼1

where NOT(PVB(k)) represents PVB ith bit. Therefore, the beacon frame is also used to transmit updated information about the actual members of the RT-group, which is used by the GSC stations to update their image of the RT-group. 4.3. Insertion of stations A station can enter into the RT-group by requesting its admission to the Hybrid Coordinator (HC). This request is performed during the Contention Period and consequently does not disturb the GSC operation. A GSC station interested in becoming a member of the RT-group must send an Association-Request frame to the HC. The Capability Information field of this frame (which has similar characteristics to the beacon frame field with the same name) is set to Pollable, stating that the station wants to be member of the RT-group. Since regular stations will follow HC capabilities (sent in the beacon frame) they set this field to No-Pollable. Therefore, this ‘trick’ is used to distinguish between GSC stations and standard ones. Only GSC stations can enter into the RT-group. The HC answers to the stations with their Association-ID. This ID will correspond to the station GIi. A station that is not admitted into the group receives a ‘0’ as an answer. The management of the station’s ID is therefore performed by the HC. After receiving its GIi, the station send to the HC a Traffic Specification-Request (TSPEC). This frame contains a set of parameters that defines the QoS characteristics of the station traffic. The HC uses this data for a schedulability analysis of state that a station can, or cannot, be admitted into the RT-group. This answer is sent to the station using a TSPEC-Response frame. If affirmative, the station is now member of the RT-group and can exchange data in the next CFP. In the next beacon frame the Association-ID bit correspondent to this station will be set. Otherwise, the station is outside of the RT-group. In this case the AP relinquishes the Association-ID previously assigned to this station. 1

The end of a TXOP period can be detected by all stations whenever the medium is idle for an SIFS time (ST).

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

1695

4.4. Removal of stations There are two possibilities for removing a station from GSC scheme. In the first, the GSC station decides autonomously to leave the group. In this case, it will communicate its decision to HC of GSC scheme via a REMOVE message in the CP or whenever that it has the virtual token in CFP. In the second case, the station is compelled to leave the GSC scheme due to a ‘‘system failure’’ or because it becomes unable to transfer its own RT messages. As an immediate effect, there will be no more RT messages in the slot assigned to that station. In this situation, the unused Gid address will be later recovered by a last Gid admitted to avoid wasting bandwidth in the contention free periods. In order to autonomously leave the group, the stations holding the virtual token send a REMOVE message. A GSC station can leave the RT-group using two ways, in a controlled or uncontrolled way: (i) In a controlled way, the station sends to the HC a Disassociation Request during the Contention Period. If the request is accepted, the HC relinquishes the corresponding Association-ID and send a positive answer to the station. After receiving the answer, the station considers that it does not belong to the RT-group. In the next beacon frame the AssociationID bit corresponding to this station will be reset. If the answer is negative, the station remains within the RT-group. (ii) An uncontrolled removal happens when a station is turned off in uncontrolled way. To cope with this situation, the HC uses a Heartbeat message to verify is the station is ‘alive’, or not. This message is sent only if after a predefined number of GSC rounds no messages from that station are detected by the HC. This message is sent as Data frame, where the Frame Body field is empty. If the station is ‘alive’ it answers with an ACK and the HC considers that the station still belongs to the RT-group. If no answer is received (within a timeout) the HC considers that the station does not belong to the RT-group. In the next beacon frame the Association-ID bit corresponding to a station will be reset. 5. System modeling We consider a network topology with m node stations plus one Access Point (AP), communicating through a wireless medium according to the GSC access mechanism. The node stations n are identified by index i, from node 1, node 2, . . . node ith, until node m. We also consider that the AP has no hidden stations. That is, the AP is able to hear every node station, and all the node stations are able to hear the messages generated by the AP. As previously described, the GSC access mechanism has a cyclic behavior. This behavior is enforced by the AP, which periodically generates a beacon frame. The beacon periodicity is denoted as the Service Interval (SI). The Service Interval is composed of a contention free period for real-time traffic (reserved TXOPs) plus the contention period for transmission of low priority stations (DCF or EDCA stations). 5.1. Traffic model Messages generated in the system at run time can be classified as either synchronous messages or asynchronous messages. We assume that there are n streams of synchronous messages, S1, . . ., S2, Sn in the system, which form a synchronous message set, M:

M ¼ fS1 ; S2 ; . . . Sn g

ð12Þ

The characteristics of the message streams are as follows:

Si ¼ fC i ; Pi ; di g

ð13Þ

where 1. Pi denotes the inter-arrival time (period) of messages from synchronous message stream Si (i = 1, 2, . . ., n). Synchronous messages are defined as periodic messages, i.e., are generated with a constant inter-arrival time. 2. The deadline of a synchronous message is at the end of its period. That is, if a message from message stream Si is generated at instant t, then its deadline is at time instant t + Pi. 3. The length of each message in stream Si is Ci, which is the maximum amount of time required to transfer this message. That is, Ci includes both the data payload and the Physical and MAC layer overheads. It also includes the time interval during which the wireless medium cannot still be used to transfer the next message, that is, the minimum interframe space (SIFS). 4. Messages are independent in that message arrivals do not depend on the initiation or the completion of transmission requests from other message requests. 5. Asynchronous messages are non-periodic and do not have real-time requirements. In the following discussion, and for the case of simplicity, we assume that: 6. There is only one synchronous message stream per station, in stations 1, 2, . . ., i, . . ., n, plus one or more asynchronous message streams per station, in stations n + 1, n + 2, . . ., m. 7. The real-time requirements of a synchronous message stream Si can be guaranteed.

1696

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

δ

Cf-end

Bl-ack

Beacon

Cf-end

Bl-ack

Beacon

Pi_MIN

ΣCi 2ΣCi+Θ t0

SI

Fig. 4. Evaluation of upper/lower bounds for the SI parameter.

Concerning the first assumption, it is easy to show that an arbitrary GSC network, where a station may have zero, one or more synchronous message streams can be transformed into a logically equivalent network with one stream of synchronous messages per station. Therefore, the assumption of one synchronous message stream per station simplifies the analysis without loss of generality. Concerning the assumption coverage of the second assumption, it will be evaluated in the subsection Error Analysis of the GSC Mechanism. Briefly, this second assumption will hold as long as: (a) The Beacon is not lost; (b) The RTBlockAck is not lost after a message transfer error; and, (c) There are possibilities that two consecutive errors upon the transfer of a message from the same synchronous message stream. 5.2. GSC admission control The proposed GSC scheme uses the TSPEC as defined in the IEEE 802.11e HCCA standard. The TSPEC is an element sent through a management frame that contains information about the characteristics and QoS expectation of a Traffic Stream (TS), which includes the following parameters: Mean Data Rate (Ri), Nominal Service Data Unit (MSDU) size (Ni), Nominal PHY Rate (Pr), Service Interval (SI) and Maximum Service Interval (MSI). As mentioned before, similarly to HCCA, the GSC scheme defines one Service Interval (SI) as the sum of two periods denoted by SI = CFP + CP. The setting-up of the SI length plays an important role in guaranteeing the synchronous message deadlines. In this subsection, we discuss a methodology for setting-up the SI value that guarantees the fulfillment of message deadlines, as long as the error assumption holds. The main guideline is that the synchronous message parameters (Cis and Pis) at the various node stations are the dictating factors for setting-up the SI value at the AP. The scheduling and the admission control of a new message stream is made by the HC, where are evaluated the scheduled SI and the Ci (TXOP) durations. The values for parameters Ci and Pi are given by the supported applications. Instead, the value of SI must be determined at the network initialization time (it can also be updated on-line) and must be able to guarantee the timing requirements of the synchronous message stream set M. That is, the fulfillment of the message deadlines. This is illustrated in Fig. 4. Whatever the scheme for setting-up the SI value, it must satisfy two constraints: (a) A protocol constraint that ensures the correct GSC cyclic behavior, with the adequate beacon periodicity; and (b) A deadline constraint in order to ensure that the real-time messages are transmitted before their deadlines. Theoretically, the total available time to transmit synchronous messages during one GSC cycle can be as much as SI. However, factors such as message retransmissions, the transfer of control messages, etc., reduce the total available time to transfer synchronous messages. We denote the SI overhead named H as the maximum amount of time needed to transfer the beacon frame, the RTBlockAck and the CF-End frames including PHY e MAC layers headers plus the time intervals during which the wireless medium cannot still be used to transfer further messages (SIFS intervals). Additionally, a message to be transferred in a particular cycle must have been generated slightly earlier than the start of the GSC cycle. We denote the minimum value for such time interval as d (Fig. 4). Therefore, a protocol constraint is as follows: the time spent to transfer twice a message from each message stream plus the SI overhead should not be greater than the value of the SI parameter, i.e.: n X 2 C i þ H < SI

ð14Þ

i¼1

Furthermore, considering that a message generated after time instant (t0  d) may not be able to be transferred in the actual cycle (the one that starts at time instant t0), a deadline constraint can be expressed as follows: the minimum inter-arrival time of any synchronous message stream should not be smaller than the GSC cycle plus the time spent to transfer twice a message from each message stream plus the SI overhead, i.e.:

1697

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704 n X Pi P d þ SI þ 2 C i þ H;

8i¼1...n

ð15Þ

i¼1

We may say that a message set is guaranteed by a pre-defined SI if both the protocol and the deadline constraints are satisfied, as long as the error assumption holds. These two constraints can be combined in a single equation as follows: n X 2 C i þ H < SI 6 Pi

min

d2

i¼1

n X Ci  H

ð16Þ

i¼1

where Pi_min is the minimum inter-arrival (SI) time of all the synchronous message streams. When considering RT scenarios, it is interesting to assess a worst-case timing analysis, which shall demonstrate that SI is upper-bounded. Similarly to the HCCA mechanism, the GSC proposal also allows that standard DCF or EDCA stations contend for the medium access during the CP interval. The worst-case scenario will occur whenever a set of stations do not receive the beacon frame2 and, the at instant of time immediately before the end of the CP interval a default station acquires the transmission medium and uses all the allowed TXOP time. It will cause a delay in the beginning of the next SI. Therefore, as long as the error assumption holds, the worst-case transmission time (Rmax) is given by:

Rmax ¼ SI þ TXOPmax þ PIFS

ð17Þ

where TXOPmax is the maximum TXOP interval defined for the set of standard EDCA stations. 5.3. Error analysis Finally, an error analysis must be made to assess the error assumption coverage. We consider that Packet Error Rate (PER) is independent and we can get it by Gilbert–Elliot error model [38]. Based on this assertive, we can get the average CFP duration time used by GSC stations. The TXOP, which is denoted by Ci, has been defined as the nominal transmission time for RT message, including PHY layer headers (PhyHeader), MAC layer headers (MACHeader), nominal PHY rate (Pr) and MSDU Size (Data) plus SIFS, as follows:

C i ¼ PhyHeader þ ðMAC Header þ DataÞ=Pr þ SIFS

ð18Þ

Considering that the transmission times for the Beacon, RTBlockAck and CF-End frames are represented by:

C beacon ¼ PhyHeader þ Beacon þ SIFS

ð19Þ

C rtblockack ¼ PhyHeader þ RTBlockAck þ SIFS

ð20Þ

C cfend ¼ PhyHeader þ CF End

ð21Þ

where the SI overhead is denoted by H. It is the maximum time to transfer using beacon frame, RT Block Acknowledgment and CF-End frames including PHY and MAC layer headers.

H ¼ C beacon þ C rtblockack þ C cfend

ð22Þ

And the transmission time of aSlotTime is denoted by:

C st ¼ aSlotTime

ð23Þ

Now, we consider the following parameters to obtain the average time of CFP: n Pba Pb Pt Pni

Number of GSC stations PER of the RTBlockAck PER of the beacon frame Probability of data transmission by GSC station PER of the transmission messages from ith station

The average CFP duration time is equal to the product of the sum of all Ci assigned to the n members of the group GSC separated by SIFS intervals in a noisy channel. Thus, CFP ¼ H þ ð1  P b ÞP t

! ! ! n n n X X X C i þ ð1  P b Þð1  Pt ÞnC st þ P b nC st þ ð1  P b ÞP t ð1  P ba Þ Pni C i þ ð1  P b ÞP t ðP ba Þ þ P ni C st i¼1

where the probability of lost messages by ith GSC station is denoted by: 2

In such a case, this set of generic stations do not set its NAVs to the end of the controlled phase.

i¼1

i¼1

ð24Þ

1698

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

Fig. 5. Communication relationships.

Plstpck ¼ PtPb þ Ptð1  PbÞPni½Pba þ ð1  PbaÞPni

ð25Þ

Basically this error analysis shows that, there will be no lost packets, as long as: the Beacon is not lost, the RTBlockAck is not lost after a message transfer error and there no consecutive errors upon the transfer of a message from the same synchronous message stream. 6. Performance evaluation The objective of this section is to make a performance comparison between the GSC and HCCA mechanisms for distinct industrial scenarios cases. The typical industrial traffic requirements are the high reliability and the predominance of smallsized packets that must be transferred periodically between sensors, controllers and actuators according to strict time periods (deadline) [2]. This set of requirements makes industrial traffic different from best-effort-traffic (no losses and no timing requirements) and multimedia traffic (hard timing requirements, but relatively small loss sensitivity). Additionally, there are two types of paradigms associated to industrial communications: master-slave and publisher–subscribers [10]. The first paradigm uses unicast mechanisms, where the master always starts the communications to a specific slave and this slave just answers that master question. The master-slave paradigm is the simplest communication mechanism, where the sender just needs to know the address of the receiver to send its messages. This paradigm has HCCA as example. The second communication paradigm uses multicast mechanisms, where the publisher component always starts the communication publishing its message upon the network. In such a case, the message is not addressed to any specific host. Instead, each message has an identifier and one or more subscriber components can consume it. This paradigm has GSC as example. 6.1. Industrial communication scenarios Two realistic industrial communication scenarios have been considered for the performance comparison different test environments: error-free channel and noisy channel. The first scenario called supervision considers the case where the AP acts as sink for information conveyed from n sensor nodes (Fig. 5a), that is then relayed to the monitor node m that is running a supervisory control and data acquisition (SCADA) application. The second scenario, called control, considers the case where the AP acts as relaying node between n sensor nodes and one controller node (Fig. 5b). The AP receives the data and sends them for both scenarios. The sensor nodes measure a physical quantity (e.g. temperature and pressure) and convert it into data packets. All messages from sensors have firm real time constraint and form the payload of the system. Both scenarios allow the establishment of point to point links between all nodes and AP, without hidden stations. 6.2. Assessment of GSC/HCCA mechanisms The GSC simulation model was developed based on the ns2 802.11e HCCA simulation model implemented in [39]. For the sake of simplicity it was only considered the HCCA and GSC traffic in the contention free period (CFP) where the time for each data exchange is known in advance. All GSC/HCCA nodes in the simulation environment have the same traffic generation pattern (CBR-Constant Bit Rate) and all packets on both mechanisms are set with highest priority. The tests were performed using the IEEE 802.11b with nominal transmission rate of 11 Mbps for payload and supporting 1 Mbps basic rates modulation in accordance with [40]. All the results showed use a minimum confidence level of 95%, which are showed in all the graphs. The related parameters are presented in Table 2.

1699

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704 Table 2 802.11b PHY layer parameters. Parameter

802.11b

aSlotTime SIFS time PIFS time DIFS time Preamble lenght PLCP header lenght Basic rate Data rate Propagation delay

20 ls 10 ls 30 ls 50 ls 144 ls 48 ls 1 Mbps 11 Mbps 2 ls

Table 3 network simulation parameters. Parameter

Value

Simulation time Simulation rounds Service interval time Data packet size Admitted nodes Mean data rate Probability of data transmission Packet error rate

10,000 s 100,000 100 ms 40 bytes 2–20 3200 bps 50–100% 0%

Noise Free Channel Percentage of SI Utilization (%)

40

(50%)GSC Supervision Scenario (100%)GSC Supervision Scenario (50%)HCCA Supervision Scenario (100%)HCCA Supervision Scenario (50%)HCCA Control Scenario (100%)HCCA Control Scenario

35 30 25 20 15 10 5 0

2

4

6

8

10

12

14

16

18

20

Number of Real-Time Message Streams Fig. 6. Percentage of SI for noise free channel.

6.2.1. Noisy free channel simulation The simulations were run varying the number of admitted nodes from 2 to 20. The GSC/HCCA mechanisms were configured to transmit only one message stream fixed in 40 bytes per node per round. The test environment is noisy-free, the packet arrival rate of stations (Mean Data Rate) is fixed in 3200 bps and probability of transmissions of GSC/HCCA stations were varied in the range from 50% (half the number of sensors transmit RT messages on average) and 100% (all sensors send RT messages). The SI value is set to 100 ms which is a typical operation value used for commercial APs. The simulation time is fixed in 10,000 seconds (100,000 rounds of SI) and it is adequate to ensure statistical reliability. All network simulation parameters are presented in Table 3. Fig. 6 shows the percentage of SI utilization in function of the number of nodes and Probability of Transmission (Pt) for GSC/HCCA stations. The GSC uses the percentage of SI around 6.7% with Pt = 100% for 20 nodes, while the HCCA uses 22.9% for supervision scenario and 34.4% for the control scenario, for transmitting the same number of RT messages. When the Pt is 50%, it was verified that the GSC reduces the percentage of SI utilization to 4.3%, while the HCCA reduces to 22.6% for supervision scenario, 28.4% for control scenario. In this case the GSC takes the advantage of saving bandwidth, because the HCCA mechanism has a requirement to transmit the null data packet (QoS Null) when the station does not have any packet to send, thus reducing the Contention Period (CP) time for data transmissions from EDCA stations.

1700

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

Noise Free Channel Average Transmission Delay in Miliseconds

18

GSC Supervision Scenario HCCA Supervision Scenario HCCA Control Scenario

16 14 12 10 8 6 4 2 0

2

4

6

8

10

12

14

16

18

20

Number of RT Message Streams Fig. 7. Average transmission delay for noise free channel.

Noise Free Channel Number of Real-Time Message Streams

35

GSC Supervision Scenario HCCA Supervision Scenario HCCA Control Scenario

30

25

20

15

10

5

0

0 40

140

240

340

440

540

640

740

840

940

1040

Packet Payload Size in Bytes Fig. 8. Payload Size  number of real-time stations.

To analyze the latency in the network it was used a metric for evaluation of transmission delay. This metric is based on time difference between received packet time and the transmission packet time (when all real-time nodes receive the beacon frame). The basic function of the beacon frame is to be a timer for synchronizing the network. Thus, it is considered that all real-time nodes acquire their data in a minimum value time (d) before beacon frames arrive and transmit their messages according to their respective communication mechanisms. The average time values can be obtained with the sum of the measures of all transmission delay dividing by the number of rounds (100,000 rounds) of simulation. Fig. 7 shows the average transmission delay based on the number of nodes with the Mean Data Rate at 3200 bps and probability of transmission (Pt) equal to 100% for GSC/HCCA stations. The results showed that the GSC average transmission delay has a better performance over HCCA. For example, with 20 real time nodes, the GSC mechanism has a maximum average delay of 3.3 ms, while HCCA mechanism values are 11.7 ms (supervision scenario) and 17.1 ms (control scenario), respectively. The results have shown, that the GSC mechanism has a transmission delay less than HCCA in all cases. It is means that the GSC is able to transmit more RT messages than HCCA in the same CFP. Another case for comparing GSC/HCCA transmission mechanisms is the one where both mechanisms operate with the maximum possible number of nodes in the same 10 ms CFP duration. In this scenario (Fig. 5a) is allowed varying the RT message size of 40 Bytes up to 1040 Bytes. There is only one traffic stream per node and the destination of all RT messages is the AP. The result obtained are shown in Fig. 8. As can be seen in Fig. 8, the GSC mechanism is able to transmit messages from 32 nodes, while the HCCA mechanism is able to transmit messages from only 08 nodes for supervision scenario and 05 nodes for control scenario using a payload size fixed on 40 bytes. Otherwise, for payload size fixed on 1040 Bytes, where the GSC works with 08 nodes versus 04 nodes of

1701

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704 Table 4 Overhead transmission time. Mechanism

HCCA (ls)

GSC (ls)

Beacon frame Data payload ACK frame RTBlockACK frame Poll frame MAC header PHY header SIFS time aSlotTime PIFS time CF-End frame Delay transmission CFP duration time

824 247.27 112 – 288 26.18 192 10 20 30 160 2 2848.54

824 247.27 – 110.55 – 26.18 192 10 20 – 160 2 1758.36

Table 5 Network simulation parameters. Parameter

Value

Simulation time Simulation round Service interval Data packet Admitted stations Mean data rate Packet error rate

10,000 s 100,000 100 ms 40 bytes 20 3200 bps 0–20%

Percentage of SI Utilization X Packet Error Rate Percentage of SI Utilization (%)

50

GSC Supervision Scenario HCCA Supervision Scenario HCCA Control Scenario

40

30

20

10

0

0

2

4

6

8

10

12

14

16

18

20

Channel Packet Error Rate (%) Fig. 9. Percentage of SI utilization for variable PER.

HCCA supervision scenario and 02 nodes of the HCCA control scenario. However, when the RT message size increases, the number of GSC nodes decreases rapidly when compared to the HCCA. We can observe that the number of GSC nodes is a function of the package size and decreases with the reduction of network overhead. Because of the smaller size of the package, greater number nodes are able to transmit on the same CFP. Otherwise, the average transmission delays for this supervision scenario depend of number of real-time nodes (HCCA or GSC) that can use the CFP. Due to this feature, the performance of the GSC is increased for small packages. Table 4 shows the sum of times involved in the CFP duration for HCCA and GSC nodes using 40 Bytes of payload for control scenario (case b). As we can see the GSC scheme has a greater overhead reduction than HCCA scheme due to the use of the Virtual Token Passing (VTP) procedure that does not require polling mechanism, ACK and NULL frames. This means around 38.2% decrease on the message transmitting cost within the CFP duration. 6.2.2. Noisy channel simulation The simulation was performed with a fixed number of 20 nodes transmitting one message streams fixed in 40 bytes. The test environment is noisy and the Packet Error Rate (PER) was varied in the range from 0%, 5%, 10%, 15% and 20%. The noise

1702

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

Average Transmission Delay X Packet Error Rate Average Transmission Delay in Milliseconds

40

GSC Supervision Scenario HCCA Supervision Scenario HCCA Control Scenario

35 30 25 20 15 10 5 0

0

2

4

6

8

10

12

14

16

18

20

Channel Packet Error Rate (%) Fig. 10. Transmission delay for variable PER.

Table 6 Success Rate of Transmitted Packets. Packet error rate

0%

5%

10%

15%

20%

GSC supervision HCCA supervision HCCA control

100.00 100.00 100.00

99.75 99.75 99.39

98.99 98.99 97.69

97.70 97.71 95.07

95.85 95.90 91.62

can affect the data payload only, for the sake of simplicity, the events are considered independents. All simulation scenarios were run similarly to the previous tests. All the network simulation parameters are presented in Table 5. Fig. 9 shows percentage of SI utilization in function of PER variation from 0% to up 20% in steps of 5%. As we can see, the GSC mechanism uses the percentage of SI from 6.7% up to 7.8% (variation of 1.1%), while the HCCA uses from 22.9% up to 25.7% (variation of 2.8%) for a supervision scenario and 34.4% up to 39.2% (variation of 4.8%) to control scenario, respectively. This observation is related to increases of percentage of SI utilization time with the PER variation. We can note that GSC significantly has less SI increasement than HCCA for all analyzed scenarios, and again there is not waste of bandwidth by the GSC even in a noisy environment with variable PER. So there is a gain of contention period (CP) time to be used for data transmissions by EDCA stations. As we can see in Fig. 10, the GSC mechanism has the smallest average transmission delay in relation to the HCCA. But if we take a PER equal to 10% as a reference (typical wireless scenario network), the GSC mechanism has a minimum average transmission delay of 3.3 ms and a maximum of 3.6 ms, while the HCCA has 11.7 ms and 12.4 ms for supervision scenario, 17.1 ms and 18.5 ms for control scenario, respectively. This means that GSC has a reduction in the average transmissions delay of 84% comparing with HCCA mechanism. Another interesting result is the success rate of transmitted packets with PER varying from 0% to up 20%. In Table 6 we can see that the GSC mechanism has the similar performance than HCCA in the supervision scenario due to the use of RTBlockAck for the confirmation of the transmitted messages, but in comparison with others HCCA scenarios the GSC has a better performance ensuring the delivery of packages to the destination.

7. Conclusion This paper has presented a new proposal called Group Sequential Communication (GSC).The proposal uses a PublishSubscribe paradigm. This technique guarantees that message transmissions from real-time stations are prioritized over the generic stations with a lower overhead when compared with HCCA scheme. The main idea is to allow the GSC stations to send their messages in a sequential way, in order to avoid collisions over a shared environment using a VTP to organize the medium access. The GSC scheme synchronizes the RT stations using a beacon frame. When all the GSC stations have already transmitted their messages, the Hybrid Coordinator send a real-time block acknowledgment frame, reporting that all successfully transmitted RT messages are acknowledged. Otherwise, the error recovery mechanism, called Second Chance, starts to work for the retransmission of messages that were not successful in the first attempt. The simulation results have shown a promising behavior of GSC, due to the absence of the polling frames, null messages and individual ACK packets. Two main metrics were analyzed: the percentage of SI utilization and the average transmission delay for supervision and control scenarios works in noisy-free and noisy environment. It was observed on the simulations that the GSC always got the best

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

1703

performance in both metrics when compared to HCCA for all scenarios using small data packets. These results show that there is a strong network overhead reduction and save bandwidth when compared with the HCCA mechanism. Conversely, publisher–subscriber approach (GSC) is more decentralized and flexible than master-slave (HCCA). Beyond that, its communication intrinsically multicast mechanisms are more adequate solution for distributed real-time industrial applications. Then, we can conclude that GSC mechanism is a viable solution to deal with non-deterministic medium access in a real-time wireless environment compatible with 802.11e for applications that uses small size packets, such as industrial scenarios. Acknowledgments The authors would like to give a special thanks to CAPES (Brazil), GRICES (Portugal) agencies for their support, and to the editor of CAEE and anonymous reviewers for their valuable comments. References [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24]

[25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38]

Jonsson M, Kunert K. Towards reliable wireless industrial communication with real-time guarantees. IEEE Trans Indus Inform 2009;5(4):429–42. Willig A. Recent and emerging topics in wireless industrial communications: a selection. IEEE Trans Indus Inform 2008;4(2):102–24. I. 802.11. IEEE standard for information technology – wireless LAN medium access control (MAC) and physical layer (PHY) specifications; 2007. Bello LL, Toscano E, Vittorio S. A perspective on the IEEE 802.11e protocol for the factory floor (factory automation); 2010. . Hiertz G, Denteneer D, Stibor L, Zang Y, Costa X, Walke B, et al. The ieee 802.11 universe. IEEE Commun Mag 2010;48(1):62–70. http://dx.doi.org/ 10.1109/MCOM.2010.5394032. I. 802.11e. IEEE standard for information technology – wireless LAN medium access control (MAC) and physical layer (PHY) specifications amendment 8: medium access control (MAC) quality of service enhancements; 2005. Zheng Y, Xu A, Song Y, Zhao W, Liu M. Research on deterministic communication of industrial wireless based on wlan. In: 9th International conference on electronic measurement instruments, 2009 (ICEMI ’09); 2009. p. 3-260–4. yeh Wu P, jee Chen J, chee Tseng Y, wei Lee H. Design of QoS and admission control for VoIP services over IEEE 802.11e WLANs. J Inform Sci Eng 2008;24:1003–22. Casetti C, Chiasserini C-F, Fiore M, Garetto M. Notes on the inefficiency on 802.11e HCCA; 2005. Cena G, Bertolotti I, Valenzano A, Zunino C. Industrial applications of IEEE 802.11e WLANs. Factory Commun Syst 2008:129–38. Viegas R, Portugal P, Guedes L, Vasques F. A proposal of real-time publish-subscribe scheme compatible with 802.11e wireless networks. In: 35th Annual conference of IEEE industrial electronics, 2009 (IECON ’09); 2009. p. 2393–8. Viegas R, Guedes L. Real-time communication over 802.11e wireless network using a publish-subscribe model. In: IEEE Latin–American conference on communications (LATINCOM-2011); 2011. p. 1–6. Abusubaih M. Joint rts/cts and time slotting for interference mitigation in multi-bss 802.11 wireless lans. Comput Electr Eng 2012;38(3):672–80. The design and analysis of wireless systems and emerging computing architectures and systems. Gamba G, Seno L, Vitturi S. Performance indicators for wireless industrial communication networks, in: 2010 8th IEEE international workshop on factory communication systems (WFCS); 2010. Abd-Elnaby M, Rizk M, Dessouky M, El-Dolil SA. Efficient contention-based mac protocol using adaptive fuzzy controlled sliding backoff interval for wireless networks. Comput Electr Eng 2011;37(1):115–25. Ramos N, Panigrahi D, Dey S. Dynamic adaptation policies to improve quality of service of real-time multimedia applications in IEEE 802.11e WLAN networks. Wireless Networks 2007;13:511–35. http://dx.doi.org/10.1007/s11276-006-9203-5. Arora A, Yoon S-G, Choi Y-J, Bahk S. Adaptive txop allocation based on channel conditions and traffic requirements in ieee 802.11e networks. IEEE Trans Vehicular Technol 2010;59(3):1087–99. http://dx.doi.org/10.1109/TVT.2009.2031677. Gao D, Cai J, Ngan KN. Admission control in IEEE 802.11e wireless LANs. IEEE Network 2005;19(4):6–13. Pé andrez-Costa X, Camps-Mur D. Ieee 802.11e qos and power saving features overview and analysis of combined performance [accepted from open call]. IEEE Wireless Commun 2010;17(4):88–96. http://dx.doi.org/10.1109/MWC.2010.5547926. I. 802.11D. IEEE standard for local and metropolitan area networks media access control (MAC) bridges; 2004. Geng R, Guo L, Wang X. A new adaptive mac protocol with qos support based on ieee 802.11 in ad hoc networks. Comput Electr Eng 2012;38(3):582–90. The design and analysis of wireless systems and emerging computing architectures and systems. Cena G, Seno L, Valenzano A, Zunino C. On the performance of ieee 802.11e wireless infrastructures for soft-real-time industrial applications. IEEE Trans Indus Inform 2010;6(3):425–37. http://dx.doi.org/10.1109/TII.2010.2052058. Ni Q. Performance analysis and enhancements for IEEE 802.11e wireless networks. IEEE Network 2005;19(4):21–7. Ruscelli AL, Cecchetti G, Alifano A, Lipari G. Enhancement of qos support of hcca schedulers using edca function in ieee 802.11e networks. Ad Hoc Networks 2012;10(2):147–61. http://dx.doi.org/10.1016/j.adhoc.2010.09.014. Recent advances in analysis and deployment of IEEE 802.11e and IEEE 802.11p protocol families. Grilo A, Macedo M, Nunes M. A scheduling algorithm for QoS support in IEEE 802.11E networks. IEEE Wireless Commun 2003;10:36–43. Mangold S, Choi S, Hiertz G, Klein O, Walke B. Analysis of IEEE 802.11e for QoS support in wireless LANs. IEEE Wireless Commun 2003;10(6):40–50. Lim L, Malik R, Tan P, Apichaichalermwongse C, Ando K, Harada Y. A QoS scheduler for IEEE 802.11e WLANs. Consumer Commun Network Conf 2004:199–204. Xiao Y. IEEE 802.11e: QoS provisioning at the MAC layer. IEEE Wireless Commun 2004;11(3):72–9. Seno L, Vitturi S, Tramarin F. Influence of real components behavior on the performance of wireless industrial communication systems, in: 2011 IEEE international symposium on industrial electronics (ISIE); 2011. p. 1224–9. Cicconetti C, Lenzini L, Mingozzi E, Stea G. Design and performance analysis of the real-time HCCA scheduler for IEEE 802.11e WLANs. Comput Network 2007:2311–25. Ghazizadeh R, Fan P, Pan Y. A priority queuing model for hcf controlled channel access (hcca) in wireless lans. International Journal of Computer Network and Security (IJCNS); 2009. p. 30-43. Lo S-C, Lee G, Chen W-T. An efficient multipolling mechanism for IEEE 802.11 wireless LANs. IEEE Trans Comput 2003;52(6):764–78. Son J, Lee I, Yoo H. An efficient polling scheme for IEEE 802.11e. IEICE transactions on communications, no. 12 E88-B; 2005. p. 4690–3. Milhim AD, Chen Y-C. An adaptive polling scheme to improve voice transmission over wireless lans. ACS/IEEE Int Conf Comput Syst Appl 2007:146–52. Cena G, Valenzano A, Zunino C, Seno L. Evaluation of real-time communication performance in qos-enabled infrastructure wlans. In: Proceedings of the 14th IEEE international conference on emerging technologies & factory automation. ETFA’09. Piscataway, NJ, USA: IEEE Press; 2009. p. 1149–55. Cena G, Bertolotti I, Valenzano A, Zunino C. Evaluation of response times in industrial wlans. IEEE Trans Indus Inform 2007;3(3):191–201. Vitturi S, Carreras I, Miorandi D, Schenato L, Sona A. Experimental evaluation of an industrial application layer protocol over wireless systems. IEEE Trans Indus Inform 2007;3(4):275–88. Ebert J-P, Willig A, ing Adam Wolisz D, Berlin T. A Gilbert–Elliot bit error model and the efficient use in packet level simulation 1999.

1704

R. Viegas Jr. et al. / Computers and Electrical Engineering 39 (2013) 1684–1704

[39] Cicconetti C, Lenzini L, Mingozzi E, Stea G. A software architecture for simulating IEEE 802.11e HCCA. 3rd Internet performance, simulation, monitoring and measurement – IPS-MoMe; 2005. [40] I. 802.11b. IEEE standard for information technology – telecommunications and information exchange between systems LAN/MAN: wireless LAN medium access control (MAC) and physical layer (PHY) specifications; 1999. Raimundo Viégas Jr. received the B.Sc. and M.Sc. degrees in electrical engineering from Federal University of Pará, Belém, Brazil, in 1992 and 2002, respectively, and Ph.D. degree in computer engineering at the Federal University of Rio Grande do Norte, Natal, Brazil, in 2010. Since August 2002, he has been an Associate Professor in Faculty of Computation at Federal University of Pará, Belém, Brazil. His research interests include wireless networks and realtime communication systems. Luiz Affonso Guedes received the B.Sc. degree in electrical engineering from Federal University of Pará, Belém, Brazil, in 1988, the M.Sc. degree in electrical engineering from Technological Institute of Aeronautics, Sao José dos Campos, Brazil, in 1991 and Ph.D. degree in State University of Campinas, Brazil, 1999. Currently, he is Associate Professor in the Department of Computer Engineering at Federal University Rio Grande do Norte, Brazil. His research interests include real-time system, distributed systems and industrial automation networks. Francisco Vasques received the B.Sc. degree in electrical engineering from the University of Porto, Porto, Portugal, in 1987 and the M.Sc. and Ph.D. degrees in computer science from LAAS-CNRS, Toulouse, France, in 1992 and 1996, respectively. Since January 2004, he has been an Associate Professor in the Mechanical Engineering Department of the University of Porto. He is author or coauthor of more than 100 technical papers in the areas of real-time systems and industrial communication systems. Paulo Portugal received the B.Sc, M.Sc., and Ph.D. degrees in electrical and computer engineering from the University of Porto, Porto, Portugal, in 1992, 1995, and 2005, respectively. Currently, he is an Assistant Professor in the Department of Electrical and Computer Engineering of the University of Porto. His research interests include dependability and performability modeling and evaluation, and industrial communication systems. Ricardo Moraes received the B.Sc. degree in mathematics from University of Planalto Catarinense, Lages, Brazil, in 1997, the M.Sc. degree in computer science from Federal University of Santa Catarina, Florianopolis, Brazil, in 1999 and Ph.D. degree in the University of Porto, Porto, Portugal, in 2007. He is Associate Professor in computer engineering at Federal University of Santa Catarina, Ararangua, Brazil and his research interests include real-time communication systems and real-time system architectures.