optical bus on which each node is capable of transmitting and receiving data. Thus .... either as a standalone system or as a subsystem in a large scale communication ... additional difficulty to applying CSMA with collision detec- tion. In general ...... [11] B. Mukherjee and J.S. Meditch, âThe pi-persistent protocol for unidirec-.
1-Persistent Collision-Free MAC Protocols for Opportunistic Optical Hyperchannels Jing Chen† , Ashwin Gumaste?, Jianping Wang§ , Hui Yu‡, and S.Q. Zheng†‡∗ †
?
Telecommunications Engineering Program, University of Texas at Dallas, Richardson, TX 75083 Department of Computer Science and Engineering, Indian Institute of Technology, Powai, Mumbai 400 076 India § Department of Computer Science, City University of Hong Kong, Hong Kong ‡ Computer Engineering Program, University of Texas at Dallas, Richardson, TX 75083 ∗ Department of Computer Science, University of Texas at Dallas, Richardson, TX 75083
Abstract— Recently, a new WDM optical network infrastructure named SMART [1], which is capable of dynamically setting up, modifying, and tearing down optical connections, was proposed. The performance of SMART is determined by the performance of its hyperchannels, which are essentially optical buses or light-trails. Previously proposed MAC protocols for unidirectional optical buses can be used as distributed medium access control protocols for hyperchannels. However, these protocols require optical detection and they are either unfair, or not work-conserving. In this paper, we propose a class of workconserving, collision-free, detection-free, and fair MAC protocols for opportunistic hyperchannels which are tailored hyperchannels for SMART. We compare our proposed MAC protocols with known pi -persistent CSMA protocols and priority-based CSMA protocol by simulations. We show that the performances of our proposed protocols are much better than that of pi -persistent CSMA and that of priority-based CSMA protocol in terms of throughput and fairness.
over network nodes. Such a reconfigurable WDM hypernetwork consists of multi-access hyperchannels. A hyperchannel, same as a light-trail [2], [3], is essentially a unidirectional optical bus on which each node is capable of transmitting and receiving data. Thus, a hyperchannel with n nodes can accommodate Cn2 connections in a time-multiplexing mode without complex optical switching configuration as studied in the optical networks over the past decade. Such an architecture can efficiently utilize bandwidth in subwavelength granularity. For connections with the source node and the destination node residing in separate hyperchannels, a hyperpath consisting of multiple hyperchannels with optical-electrical-optical (OEO) junctions connecting two adjacent hyperchannels can be found to accommodate such connections. T0 N0
keywords Optical network, WDM, MAC, CSMA, SMART network, light-trail, opportunistic hyperchannel
T1
R0
T n-1
.....
N1 R1
N n-1
Tn Nn
R n-1
Rn
(a)
I. I NTRODUCTION Optical Wavelength Division Multiplexing(WDM) technology has been considered as the basis of the next generation Internet for a while. However, the perfect balance between the utilization of the enormous bandwidth provided by optical fiber and the satisfaction of ever-changing service requirements using the commodity optical devices has not been well achieved. Recently, a new optical network infrastructure called Scalable Multi-Access Reconfigurable Transport (SMART) hypernetwork has been proposed[1]. SMART is capable of dynamically setting up, modifying, and tearing down optical connections. Equipped with a rich menu of switching techniques (such as circuit switching, pipelined circuit switching, packet switching and burst switching), SMART is able to manage optimized connections, and enforce individual service qualities and overall network performance using the commodity optical devices. For the advantages of SMART over previously proposed optical network architectures such as wavelength routed or optical circuit switching, optical packet switching, optical burst switching, and passive optical network, refer to [1]. The underlying physical network of SMART is a reconfigurable WDM hypernetwork with reconfigurability distributed
N0
N1
.....
N n-1
Nn
(b)
Fig. 1.
Unidirectional optical bus. (a) Fold bus (or D bus). (b) Dual-bus.
SMART supports two types of unidirectional optical bus structures namely, fold bus and dual-bus, that have been studied before (e.g. [11], [12]). A fold bus consists of two segments, transmitting segment and receiving segments, that are connected by a C-shape connection. It achieves full connectivity among its nodes. A dual-bus achieves full connectivity using two unidirectional buses. The structures of fold bus and dual-bus are shown in Figure 1 (a) and (b), respectively. Such unidirectional optical buses are treated as hyperchannels in SMART. Given the inherent bus property of hyperchannels, one fundamental task is to manage the access contention among contending nodes in order to improve the efficiency of hyperchannels. Similar as traditional Media Access Control (MAC) protocols, the objective of hyperchannel access control is to achieve the balance of throughput and fairness.
Basically, there are two types of scheduling methods for contention resolution and bandwidth allocation: fixed scheduling and dynamic multiple access coordination. A typical example of fixed scheduling is time-division multiplexing (TDM) where each node is allocated a fixed portion of time slots according to traffic distribution among nodes. Fixed scheduling can achieve good fairness in general. However, it may cause low throughout because of it is not adaptive to traffic load change at different nodes. There are two categories of dynamic multiple access coordination: centralized dynamic scheduling (CDS) and distributed dynamic scheduling (DDS)1 . In [4], we introduced a class of CDS protocols and showed that these protocols can emulate output queued scheduling of a multiplexer to ensure QoS under certain conditions. A major disadvantage of these CDS protocols is that a control hyperchannel is required to deliver the transmission schedule. DDS protocols for unidirectional optical buses have been well investigated in the context of carrier sense multiple access (CSMA) protocols. CSMA protocols require optical detection to sense the transmission on the optical bus. The simplest DDS protocol is that whenever downstream nodes sense the data from the upstream nodes, they interrupt their transmission and free the bus to the transmission from the upstream nodes. For convenience, we refer to such a DDS protocol as a priority-based CSMA protocol. The prioritybased CSMA protocol can obviously achieve near optimal throughput at a cost of severe unfairness to the downstream nodes. Other known CSMA protocols, such as those in [5], [6], [7], [8], [9], [10], can be applied to hyperchannels; but they either suffer from significant overhead or are unfair (providing some nodes more favorable service than others). Furthermore, these protocols can be applied to either fold bus or dual-bus, but not both. To reduce the overhead and provide fairness, a CSMA protocol called pi -persistent protocol for slotted fold bus was proposed in [11] and then extended for slotted dual-bus [12]. Unslotted 1- and pi -persistent CSMA protocols were proposed in [14]. It was shown that theoretically pi -persistent protocols provide improved fairness, throughput, and average packet delay, assuming that pi s, which are parameters used to control packet transmissions, match traffic pattern and service requirement. Since traffic pattern and service requirement change dynamically, the complex process of collecting traffic and service information, computing new pi s, and notifying all nodes with their new pi s makes pi-persistent protocols highly impractical. Further, pi -persistent protocols are not work-conserving, and consequently they cannot fully utilize the bus capacity. The objective of this research is to achieve high throughput close to the priority-based CSMA protocol and fairness close to pi -persistent protocols without optical detection. We propose a simple 1-persistent collision-free MAC protocol 1 In this paper, the term of multi-access control protocol and the term of packet scheduling algorithm are used interchangeably.
for an opportunistic hyperchannel, which is an innovative unidirectional optical bus architecture introduced in [15]. In an opportunistic hyperchannel, which is to be explained in detail shortly, any node that is not the end node can persistently transmit its packets with zero-knowledge of its downstream nodes. Packet collision is avoided by a self-adjusting and reconfiguration capability associated to the node to “cut” the hyperchannel, via a 2 × 1 switch, into two sections such that packets from the node’s upstream nodes are intercepted, allowing the node to transmit its packets without collision with upstream packets. The node re-connects the two sections once its queue is empty. Using a 1-persistent collision free MAC protocol, the throughput of an opportunistic hyperchannel is much higher than the throughput of a optical bus using pi persistent CSMA protocol given the fact that the hyperchannel is always busy as long as there is any transmission request from the nodes in the hyperchannel. In such an opportunistic hyperchannel, the downstream nodes do not suffer from starvation as in the priority-based CSMA protocol. We show that our 1-persistent collision-free MAC protocols for opportunistic hyperchannels is fair by giving a tight upper bound for the worst-case delay. We also compare the performance improvement of our 1-persistent collision-free MAC protocol over the previously proposed pi -persistent CSMA protocol by simulations. Our results show that the combination of the innovative opportunistic hyperchannel architecture and simple 1-persistent collision-free MAC protocols constitutes a highly efficient optical communication mechanism that can be used either as a standalone system or as a subsystem in a large scale communication system such as SMART. The rest of the paper is organized as follows. In Section II, we introduce pi -persistent protocols. In Section III, we introduce the structure of an opportunistic hyperchannel. In Section IV, we describe the features of a class of 1-persistent collision-free MAC protocols for fixed-length packets. In Section V, we give the performance analysis of the proposed 1-persistent collision-free MAC protocol. In Section VI, alternative techniques in implementing proposed 1-persistent collision-free MAC protocol are discussed. We present our simulations results in Section VII, and conclude the paper in Section VIII. II. pi - PERSISTENT CSMA PROTOCOL
IN AN
UNIDIRECTIONAL OPTICAL BUS
The carrier sense multiple-access (CSMA) is a type of widely used technique in shared-medium packet communication systems. In a CSMA channel, each node that has a packet to transmit attempts to avoid packet collision by listening to the channel, and based on the status of the channel, the node operates according to a particular CSMA protocol. For example, node Ni in a system running the pi -persistent CSMA protocol operates as follows: (1) If the channel is sensed idle, it transmits a packet with probability pi; (2) If the channel is sensed busy, it waits until the channel goes idle (i.e. persisting on transmitting) and
then transmits a packet with probability pi . CSMA with collision detection (CD) is a modification of pure CSMA. CD is used to improve CSMA performance by terminating transmission as soon as a collision is detected. Additionally, by slotting time into segments whose duration is exactly equal to the transmission time of a single packet (assuming fixed-length packets), the channel operates in a synchronized mode. Every node starts to transmit its packets only at the beginning of a slot so that two or more conflicting packets overlap (if any) completely rather than partially, providing an increased channel efficiency. This is referred to as a slotted system. Otherwise, the system is called unslotted. Unidirectional transmission property of optical buses brings additional difficulty to applying CSMA with collision detection. In general, sensors co-located with transmitters and/or receivers inherently give some nodes higher priorities than others because of their relative positions on the bus, which may result in unfairness. This kind of unfairness can be solved by giving different pi for different nodes. Slotted pi -persistent protocols were analyzed in [11], [12], [13]. It was shown that, by deriving the steady-state probabilities of all nodes using queuing theory, a set of pi s can be computed to enforce fairness. In [14], an unslotted pipersistent protocol was introduced. A formula for packet delay of each node based on random processing theory, and an approximation algorithm for computing pi s with equal packet delay for every node under particular service requirement were introduced. Theoretical analysis and simulation result of [11], [12], [13], [14] show that theoretically an unidirectional optical bus can provide fair service using pi -persistent CSMA protocols. The drawbacks of pi -persistent protocols include: (1) Obviously, any pi -persistent protocol is not work-conserving; i.e. the channel may be idle with waiting packets. (2) Packets transmitting collision cannot be completely avoided, which wastes channel bandwidth. (3) The responsiveness of pipersistent protocols is slow. To achieve desired performance, pi s have to be computed beforehand for specific traffic pattern and/or service requirement. Even for a small traffic change in one node, pi s have to be recalculated and nodes have to be notified of new pi s. For dynamic traffic and/or service requirements, this process is not only wasting more channel bandwidth, but also slow in response to changes of network conditions. Thus, the theoretical performance of pi -persistent protocols is unrealistic in practice. III. SYSTEM M ODEL The proposed work in this paper is based on the opportunistic hyperchannel architecture which was introduced in [15] based on the drop-continue/drop-add principle of light-frame proposed in [16]. There are two types of opportunistic hyperchannels, namely, fold connected opportunistic hyperchannel and dual opportunistic hyperchannel. A fold connected opportunistic hyperchannel shown in Figure 2(a) has a fold optical bus structure, providing full connectivity. A dual opportunistic hyperchannel consists of two independent
opportunistic hyperchannels, each being called a partially connected opportunistic hyperchannel, in opposite directions in the form of Figure 1(b), providing full connectivity. A partially connected opportunistic hyperchannel is shown in Figure 2(b). For discussion purpose, we restrict our attention to the partially connected opportunistic hyperchannel shown in Figure 2(b). This restriction does not affect the applicability of our protocol to fold and dual hyperchannels. For convenience, and without loss of generality, we simply call a partially connected opportunistic hyperchannel an opportunistic hyperchannel. S0
S1
S2
S n-1
..... N0
N1
N2
N n-1
(a)
S0
S1
S2
S n-1
..... N0
N1
N2
N n-1
Nn
(b)
DC state
DA state
(c)
Fig. 2. Opportunistic hyperchannel. (a) A fold opportunistic hyperchannel. (b) A partially connected opportunistic hyperchannel. (c) Two states of the CA switch associated with a node in an opportunistic hyperchannel.
In an (n + 1)-node opportunistic hyperchannel, as shown in Figure 2(b), the nodes are labeled N0 , N1, · · · , Nn , with N0 and Nn as the start node and end node, respectively. Each intermediate node Nk can receive packets from its upstream nodes and transmit packets to its downstream nodes, whereas the start node and the end node can only transmit and receive packets, respectively. Each node Nk controls a 2 × 1 optical switch Sk , which is called a continue-add (CA) switch. Sk has two states: drop-and-continue state (DC state), in which the input from upstream (i.e. the output of Sk−1) is connected to the output of Sk , and drop-and-add state (DA state), in which the input from the local buffer is connected to the output of Sk . Figure 2(c) shows the two states of a CA switch in an opportunistic hyperchannel. IV. 1- PERSISTENT
COLLISION- FREE
MAC
PROTOCOLS
We informally describe a framework for designing 1persistent collision-free MAC (MAC/CF) protocol designed for an (n + 1)-node opportunistic hyperchannels. In this protocol, each intermediate node Nk , 0 < k < n, maintains two queues qk0 and qkk . The packets from the upstream nodes of Nk are always dropped at node Nk , some of which will be added to qk0 depending on the state of Sk . The locally
generated packets are stored in qkk . If there is no locally generated packet at qkk , Sk remains in DC state. The first locally generated packet at Nk will trigger Sk to be changed from DC state to DA state. Whenever qk0 6= ∅ or qkk 6= ∅, a packet is scheduled to be transmitted persistently. Thus, Sk remains to be in DA state as long as qk0 6= ∅ or qkk 6= ∅. Sk goes back to DC state if and only if qk0 = ∅ and qkk = ∅. Clearly, opportunistic hyperchannel gives rise to a class of collision-free MAC protocols that utilize the knowledge of packets received by intermediate nodes. To implement such a 1-persistent collision-free MAC protocol, the following two technical issues have to be addressed: • The opportunistic hyperchannel architecture introduces the overhead of physically switching a 2×1 optical switch CA from DC state to DA state or from DA state to DC state. The timing operation of the state change of a CA switch will make a difference on mitigating the effect of this overhead over the packets. • Since each packet from the upstream nodes will be dropped at Nk , Nk needs to determine which packets should go to qk0 to be transmitted to the downstream nodes. In the rest of this section, we introduce basic operations that include synchronized switching operations of CA switches and a procedure for each node to determine whether a packet from its upstream nodes should be buffered or not. Based on these basic operations, we present a simple 1-persistent collisionfree MAC protocol that is executed at each node for slotted packet transmission. A. Synchronized CA Switching Operation Assume that all packets have the same length and all nodes share the same system clock, and for the sake of easy presentation, assume that signal propagation delay on an optical hyperchannel is negligible. Let the transmission delay of a packet be T . Time tg T , refered to as “guard time”, is the delay time between the transmission of two consecutive packets. With the guard time tg , the period of each time slot will be T + tg . Let ts be the time to switch a CA switch from one state to the other. With the advance of the switching technology, ts should be close to tg (ts ∼ tg ). We can utilize tg for an optical CA switch to change from one state to the other. Suppose in a time slot i, which is defined as time interval [i(T +tg ), (i+1)(T +tg )), Sk is in DC state and a local packet p is generated at Nk . Then Sk will be switched from DC state to DA state during the time [(i + 1)T + i ∗ tg , (i + 1)(T + tg )]. Let Nj be the closest upstream node of Nk which is in DA state at the beginning of time slot i, then the packet sent out from Nj at the beginning of time slot i must have passed Sk when Sk is switched from DC state to DA state in the last tg interval of time slot i. In other words, by introducing the guard time tg a node is able to change the state of Sk after passing a packet from upstream in one time slot. This approach divides each time slot into two portions, one portion for packet transmission and one portion for the potential CA
switch state change. During the time portion of switch state change, no data transmission is ongoing. An example is given in Figure 3 to show how 1-persistent MAC/CF works under this tg timing scheme in more details. Since at each node Nk , a packet with smallest timestamp from qk0 and qkk will be selected for transmission. For the simplicity of the presentation, we only use one combined queue in Figure 3 to depict qk0 and qkk . Assume that packets p0,i and p0,j are generated at node Ni and node Nj in time slot 0, respectively; one packet p1,k is generated at node Nk in time slot 1; and one packet p2,l is generated at node Nl in time slot 2. Then, packets p0,i and p0,j reach qii and qjj separately at time t = T . Si and Sj switches to DA state in the time period [T, T + tg ) because of the nonempty local queues. At the beginning of time slot 1, packet p0,i is transmitted from node Ni and saved into qj0 because of Sj ’s interception at node Nj ; packet p0,j is transmitted from node Nj and it arrives at the end node Nn . At time t = 2T + tg , packet p0,i reaches qj0 and packet p1,k reaches qkk . Similarly, Sk switches to DA state because of non-empty qkk in the time period [2T + tg , 2(T + tg )). At the beginning of time slot 2, packet p0,i is transmitted from node Nj and saved into qk0 due to Sk in DA state; packet p1,k is transmitted from node Nk and arrives node Nn . Following the same step, p2,l arrives the end node Nn before packet p0,i. And p0,i reaches node Nn at time t = 5T + 4tg .
t=T t=T+ t
DA
Nl
Nn
DC
DC
DA
p 1,k
p 0,j
DC
DA
DA
p 0,i
DC
p 2,l
g
DC
DC
DA
DA
p 0,i g
t=4(T+ t g) t=5T+4 t
p 0,j
Nk
g
t=3(T+ t g) t=4T+3 t
p 0,i
p 0,i
t=2(T+ t g) t=3T+2 t
Nj
DA
g
t=2T+ t
Ni
DC
g
Fig. 3.
DC
DC
DA
DA
p 1,k DA
p 2,l DA
p 0,i
Example of tg timing scheme.
B. Queuing Decision for Received Packets The packets dropped at Nk include: (i) packets from Nk ’s upstream nodes that have passed Sk when Sk is in DC state. The destinations of these packets can be the upstream nodes of Nk , Nk itself, or the downstream nodes of Nk . (ii) packets from Nk ’s upstream nodes that are stored in Nk when Sk is in DA state. For these packets, some of them should be discarded, some of them should enter queue qk0 for later transmission, and
some of them should be “consumed” if the destination of the packets is Nk . With respect to a received packet p, at the end of the time slot, Nk processes p according to the following procedure: • Case 1: if the destination of p is an upstream node of Nk , discard it; otherwise, • Case 2: if the destination of p is Nk , take it (deliver it to its local user); otherwise, • Case 3: if Sk is in DC state, discard it; otherwise, 0 • Case 4: if Sk is in DA state, put p at the end of qk . This packet classification can be carried out by a local procedure RECEIV Ek on-the-fly while a packet is dropped at node Nk C. A Simple 1-Persistent Protocol Assume that all nodes share the same system clock and each packet is associated with two attributes, d(p) and tstamp (p), which are the destination of p and the system time at which p is generated. Let pi,k be the packet generated at Nk at time slot i. Our 1-persistent MAC/CF protocol is described by a set of concurrent processes, with M AC/CF Generatek , M AC/CF Receivek and M AC/CF Sendk residing in Nk , 0 < k < n; it is assumed that node N0 executes M AC/CF Generate0 that transmits a packet whenever it is available and node Nn receives any packet it senses. Procedure GEN ERAT Ek returns a packet p generated at node Nk ; a null value is returned if no packet is generated at Nk . Procedure T IM E() returns the current system time, which is used to timestamp the packet generated at node Nk . Procedure RECEIV Ek returns a packet p if p arrives at Nk ; otherwise, a null value is returned. It stores p into qk0 only if p needs to be forwarded. Procedure DEST IDk (p), which returns the destination node ID of packet p, is used to determine whether or not p needs to be forwarded. Procedures EN QU EU E(p, qkj ) is used to store packet p into qkj and procedure DEQU EU E(qkj ) returns a packet from qkj . Procedure T IM ES(qkj ) returns the tstamp value of the first packet in qkj . Process M AC/CF Generate0 is as follows: process M AC/CF Generate0 repeat p := GEN ERAT E0 ; if p 6= null then tstamp (p) := T IM E(); transmit p; end-repeat
Processes MAC/CF Generatek , MAC/CF Receivek , and MAC/CF Sendk for Nk are given as follows: process M AC/CF Generatek repeat p := GEN ERAT Ek ; if p 6= null then tstamp (p) := T IM E(); EN QU EU E(p,qkk ); if Sk is in DC state then set Sk to DA state during next packet gap; end-repeat
process MAC/CF Receivek repeat p := RECEIV Ek ; if p 6= null and DEST IDk (p) > k and Sk is in DA state then EN QU EU E(p,qk0 ); end-repeat process M AC/CF Sendk repeat while qk0 6= ∅ or qkk 6= ∅ do if qk0 6= ∅ and qkk 6= ∅ then t0k := T IM ES(qk0 ); tkk := T IM ES(qkk ); if t0k ≤ tkk then j := 0 else j := k; else if qk0 6= ∅ then j := 0 else j := k; p := DEQU EU E(qkj ); transmit packet p; end-while set Sk to DC state during next packet gap; end-repeat
This set of processes is collectively referred to as MAC/CF protocol. At each node, the packets in qkk are inherently sorted according to the increased order of the timestamp. However, the packets in qk0 might not be sorted. This can be explained as follows. Suppose that a packet pi,j is generated at Nj (j < k) in time slot i and Sj is changed from DC state to DA state during time slot i. Then, at the end of the time slot i, qjj must be {pi,j } and qj0 must be ∅. Nj will send pi,j out to its downstream node during time slot i + 1 even if there are some packets with smaller timestamp in the queues of Nj ’s upstream nodes. Packet pi,j may be queued at qk0 . If the packets with smaller timestamp joins qk0 before pi,j is sent out, the packets in qk0 are out of order. Given the above property, in order to achieve better fairness, we need to sort the packets in qk0 for 1 ≤ k ≤ n in the non-decreasing timestamp order. With the sorted packets in qk0 , node Nk only needs to compare the timestamp of the two packets at the heads of qk0 and qkk and transmits the packet with the lower timestamp at each time slot. The packet transmitted at Nk at each time slot must have the smallest timestamp among all packets available at Nk ’s qk0 and qkk . A min-heap queue for qk0 and first-in-first-out (FIFO) queue for qkk can well achieve the fairness property of MAC/CF. If a min-heap queue is applied to qk0 , the time complexity of both M AC/CF Receivek and M AC/CF Sendk is O(log mk ) where mk is the number of available packets at qk0 . The CSMA/CF protocol using the min-heap queue for qk0 (1 ≤ k ≤ n) is refered to as MAC/CF/1 in this paper. At each time slot, tg time portion can be used to maintain the min-heap queue. However, if the queue size is too long, it might not be feasible to maintain the min-heap queue within tg . In this paper, we also propose an alternative MAC/CF protocol where both qk0 and qkk are FIFO queues, refered to as MAC/CF/2. Though MAC/CF/2 cannot achieve as good fairness as MAC/CF/1, the time complexity of both M AC/CF Receivek and M AC/CF Sendk is O(1) per packet. Through the simulation, we can see that fairness that M AC/CF/2 can achieve is quite close to that of MAC/CF/1. Thus, MAC/CF/2 can be a good approximation of MAC/CF/1 in practice if high speed is of major concern.
Remark: In an opportunistic hyperchannel, once a packet is transmitted by a node, the packet is transmitted in the optical domain opportunistically as far as possible until it encounters a downstream node Nl whose switch Sl is in DA state. If the load of the hyperchannel is heavy, then the hyperchannel is degenerated to a store-and-forward path. There is a major difference between such a path and a path of routers/switches in a pure store-and-forward network. A hyperchannel is set up dynamically as a “slice” of physical network resources reserved and shared by a set of nodes according to their performance requirement. It is used to implement virtual circuits, and packet delay is predictable even when store-andforward are involved. V. P ERFORMANCE A NALYSIS In this section, we analyze the performance of MAC/CF/1 by deriving a worst case upper bound for packet delays in comparison with a fair packet scheduler, We only consider the (n + 1)-node partially connected opportunistic hyperchannel shown in Figure 1(b), since the delay bound obtained also applies to the n-node fully connected opportunistic hyperchannel of Figure 1(a). We assume that packets have the same size. Consider an (n + 1)-node opportunistic hyperchannel as shown in Figure 1(b), in which the rightmost node Nn is called the end node of the hyperchannel. Packets are transmitted in time slots. Assume the operation starting time of an (n + 1)-node opportunistic hyperchannel to be 0. We say that packet pi0 ,k0 < pi,k if and only if i0 < i or i0 = i and k0 > k. Clearly, this is a total order on the packets generated in the nodes Nj , 0 ≤ j ≤ n − 1, of an (n + 1)-node hyperchannel. Define a packet scheduling algorithm ORDER which enforces packet pi0 ,k0 reaching the end node before packet pi,k if and only if pi0 ,k0 < pi,k. Conceptually, algorithm transmits packets to the end node in rounds, with each round consisting of packets generated at the same time, in the increasing order of packet generating times, and transmits packets in the same round in the increasing order of node indices. Clearly, ORDER is a fair algorithm which cannot be implemented without knowing the arriving order of packets. We analyze the performance of MAC/CF/1 by comparing it with algorithm ORDER. Let tORDER (p), tM AC/CF /1(p) be the time at which packet p reaches the end node in an (n + 1)-node opportunistic hyperchannel according to the ORDER algorithm and MAC/CF/1 protocol, respectively. We assume the signal propagation delay over fiber to be 0. Define the delay of packet p using MAC/CF/1 with respect to ORDER as Dn (p) = tM AC/CF /1(p) − tORDER (p). Note that Dn (p) can be negative, when p reaches the end node using MAC/CF/1 earlier than the time it reaches the end node using ORDER. Define max {Dn (p)}, Dn∗ = all packets p which is the worst case delay upper bound for MAC/CF/1 protocol compared with the ORDER algorithm. Theorem 1: For MAC/CF/1, Dn∗ ≤ (n − 1) · (T + tg ).
Proof: Consider a packet pi,k where 1 ≤ k ≤ n. Let Ai−1 be the set of packets that are in the hyperchannel system (i.e. the set of packets still need to be delivered to the end node) when pi,k is generated. Let Bi,k be the set of packets which are locally generated packets at the downstream nodes of Nk at time slot i. Given the workconserving property of MAC/CF protocol, there must also be |Ai,k | packets left in the system when pi,k is generated no matter which scheduling algorithm is applied. Clearly, according to the ORDER algorithm, packet pi,k will have a delay of (|Ai−1| + |Bi,k|) · (T + tg ). In MAC/CF protocol, the packets in Bi,k will also arrive the destination before pi,k . Suppose that packet pi,k reaches the destination at time slot t under MAC/CF/1. Because the system will keep busy as long as there are packets in the system, there will be one packet reaching destination at any time period i0 for i0 = i + 1, . . ., t. Among the packets arrived at the destination during the period from time slot i + 1 to time slot t − 1, if there is a packet pi0 ,k0 where pi0 ,k0 ∈ / Ai−1 ∩Bi,k , then we say pi,k has an extra delay caused by pi0 ,k0 . Now we claim that the total extra delay incurred to pi,k cannot be more than n − k. Such a claim implies that pi,k will not have more delays of (n − k)(T + tg ) in CSMA/CF than it has in ORDER. Since the only packets which may cause extra delay to pi,k are the packets from Nk ’s downstream nodes, if we can prove that at most one packet with the smaller timestamp can be inserted in front of pi,k at each downstream node of Nk during the time period from time slot i + 1 to time slot t − 1, our claim holds. Consider a node Nj with j ≥ k, which is a downstream node of Nk . Case 1. Suppose node Nj is in DA state at time slot i. Then node Nj cannot be switched to DC state before pi,k passes node Nj because qj0 will not be ∅ as long as there are packets in the queues of Nj ’s upstream nodes. In such a case, any packet pi0 ,j with i0 ≥ i, i.e., with lower priority than pi,k , will be first inserted into the local queue at node Nj . Consequently, pi0 ,j cannot be sent out from node Nj until pi,k passes node Nj . In other words, pi0 ,j will not cause any extra delay to pi,k • Case 2. Suppose that node Nj is in DC state at time slot i. Then it keeps in DC state and does not block any packet until a packet pi0 ,j is generated at time i0 ≥ i. – Case 2.1. If pi0 ,j is generated after pi,k passes node Nj , then pi0 ,j will not cause any extra delay to pi,k . – Case 2.2. If pi0 ,j is generated before pi,k passes node Nj , then pi0 ,j causes node Nj to be switched from DC state to DA state, and may reach destination earlier than pi,k . In such a case, pi0 ,j causes one extra delay to pj,k . After this, node Nj cannot be switched to DC state before pi,k passes node j, an analysis similar to Case 1 as we have conducted. Summarizing the above cases, we know that at most one extra delay will be caused to pi,k at any node Nj for j ≥ k. •
Thus, any packet generated at Nk will experience at most (n − k − 1)(T + tg ) more delay in CSMA/CF/1 protocol than in ORDER algorithm. The packets generated at N0 may experience (n − 1)(T + tg ) more delay in MAC/CF/1 protocol than in ORDER algorithm. This completes the proof of Theorem 1. VI. EXTENSION The proposed 1-persistent collision-free MAC protocol for the opportunistic hyperchannel can achieve high throughput and fairness by utilizing the guard time tg for the state change of a 2×1 optical switch. If it takes long time for a CA switch to change from one state to the other, for example, ts ∼ T , which means ts is close to T , the proposed 1-persistent MAC/CF protocol can still work well with the following modification in the timing operation of the state change. The simulation results confirm that the proposed MAC/CF protocol excels pi -persistent CSMA/CD protocol and priority-based CSMA protocol even in the case of ts ∼ T . Assume that the gap tg between consecutive packets be negligible, i.e. tg = 0. Then a slot has time T , which is the time duration of a packet. Suppose at the beginning of a time slot i, where the duration of time slot i is [iT, (i + 1)T ), Nk detects the arrival of a locally generated packet. Sk is switched from DC state to DA state immediately. Let Nj be the closest upstream node of Nk which is in DA state at the beginning of time slot i. Then the packet p sent out from Nj at the beginning of time slot i has only partially passed Sk by the end of (i + 1)T . Packet p is electronically stored at qk0 and scheduled for transmission later. If Nk detects that there is no packet entering either qk0 or qkk at the beginning of a time slot i, Sk is switched from DA back to DC state. Using these operations, during the time slot when Sk changes its state, no packet is considered passing Sk . In other words, Sk “steals” one slot time T for its state change. This approach introduces T time delay to some packets only when a node is actually in the transition stage of two states. An example is given in the following to show how 1persistent MAC/CF/1 works under this T timing scheme in more details. Similar as in the previous section, we use one min-heap queue in Figure 4 to stand for the combination of qk0 and qkk of node Nk . Assume that one packet is generated at node Ni in time slot 0, one packet is generated at node Nj in time slot 1, one packet is generated at node Nk in time slot 2, and one packet is generated at node Nl in time slot 3. Then, Si begins to switch to DA state at time t = 0 because of the arrival of p0,i. Si reaches DA state and packets p1,j is generated when time t = T . Sj begins to switch to DA state at the beginning of time slot 1 because of the arrival of p1,j so that packet p0,i is intercepted into qj0 . Hence, no packet reaches the end node Nn in this time slot. Similar to time slot 1, Sk begins to switch to DA state at the beginning of time slot 2 because of the arrival of p2,k . Compared with packet p1,j , p0,i has higher priority and it is transmitted from node Nk at time t = 2T . However, p0,i
goes into qk0 because of the switching operation of Sk . The hyperchannel system is also busy in this time slot but without any output. Upon the arrival of p3,l , Sl begins to switch to DA state at time t = 3T . When packet p0,i is transmitted from node Nk , it is intercepted by Sl and queued into ql0 . At the beginning of time slot 4, p0,i is transmitted from node Nl and it reaches the end node Nn. Finally, the transmission of packet p0,i is finished after 4 empty time slot because of the switching operations of CA switches in the intermediate nodes.
t=0
Ni
Nj
Nk
Nl
Nn
DC->DA
DC
DC
DC
DA
DC
DC
DA
DA t=T
DC->DA
p 0,i
DA->DC
DA
DC->DA
DC
DA
DA
DC->DA
DA
p 0,i p 1,j
t=2T
DC
DA
p 1,j t=3T
DC
DA->DC
p 0,i p 2,k DA
p 1,j p 2,k
t=4T
DC
DC
DA->DC
DA
DA
p 1,j p 2,k p 3,l
t=5T
Fig. 4.
DA
p 0,i p 3,l DA
p 0,i
Example of T timing scheme.
VII. SIMULATION As mentioned earlier, pi -persistent CSMA protocol can achieve fair service among nodes in an unidirectional optical bus. However, it is not work-conserving. Priority-based CSMA protocol is work-conserving, however, the downstream nodes may experience severe delay. The design principle of 1-persistent MAC/CF protocols for opportunistic hyperchannels is to design a work-conserving protocol with fairness. We conducted simulations to compare the performance of 1persistent MAC/CF protocols running on an opportunistic hyperchannel with pi -persistent CSMA/CD protocol and prioritybased CSMA protocol running on a traditional unidirectional optical bus. We simulate MAC/CF/1 and MAC/CF/2 protocols under the cases of both ts ∼ tg and ts ∼ T . The hyperchannel architecture we simulated is the partially connected hyperchannel shown in Figure 2(b) with 11 nodes. The destinations of all packets are uniformly distributed on all its downstream nodes. For example, the destinations of packets generated at node Nk is uniformly distributed in [k +1, n−1]. Such a setting is based on the consideration of constructing the practice-case scenarios of the 11-node architecture of Figure 2(b).
A. Throughput & Global Average Delay (b)
(a)
120
125
pi−per CSMA
p −per CSMA i
120
115
1−per CSMA/CF/1 1−per CSMA/CF/2 priority−based CSMA
115
1−per CSMA/CF/1 1−per CSMA/CF/2 priority−based CSMA
110
Throughput
Throughput
110 105 100
105 100
(a)
(b)
6
6
pi−per CSMA
5.5
4 3.5 3 2.5
4.5 4 3.5 3 2.5
2
2
1.5
1.5
1
0
0.1
0.2
0.3
1−per CSMA/CF/1 1−per CSMA/CF/2 priority−based CSMA
5
Global Delay Mean
4.5
pi−per CSMA
5.5
1−per CSMA/CF/1 1−per CSMA/CF/2 priority−based CSMA
5
Global Delay Mean
The packet arrival process (i.e. packet generating process) at node Nk is assumed to be a Poisson with parameter λk , and system load is uniformly distributed among all nodes, which means λk = λj , 0 ≤ j, k < n. Then, system load can be Pn−1 identified by λ = i=0 λi . We assume fixed packet length in the simulation. We compare the following four performance metrics: (1) throughput, (2) global average delay, (3)average delay at each node, and (4) the worst delay at each node. A higher throughout or a lower global average delay indicates that the system is more work-conserving. Both the average delay at each node and the worst delay at each node can be used as the measurements of fairness. Only average delay at each node is used as the measurement of fairness in pi-persistent protocols [11].
0.4
0.5
0.6
System Load
0.7
0.8
1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
System Load
Fig. 6. (a) global average delay vs. system load when ts ∼ tg ; (b) global average delay vs. system load when ts ∼ T
and the system load is low. However, it is lower than that of priority-based CSMA protocol when ts ∼ T and the system load is high. The global average delay of 1-persistent MAC/CF protocols is consistently lower than that of pi persistent CSMA/CD protocol as shown in Figure 6(b). Figures 5 and 6 also show that the curves of 1-persistent MAC/CF/1 and MAC/CF/2 protocols almost completely overlap. This indicates that for practical purpose MAC/CF/2 is a better choice than MAC/CF/1 because of its O(1) time complexity.
95
95
85
85 80
B. Average Packet Delay
90
90
0
0.1
0.2
0.3
0.4
0.5
System Load
0.6
0.7
0.8
80
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
System Load
Fig. 5. (a) throughput vs. system load when ts ∼ tg ; (b) throughput vs. system load when ts ∼ T
In the opportunistic hyperchannel, a packet will be dropped at the first downstream node which is in DA state after it passes its destination instead of occupying the whole optical bus. Thus, the connections without any overlap can transmit their packets simultaneously without conflict. Therefore, a larger speedup factor of the throughput can be achieved in the opportunistic hyperchannel. Figure 5(a) verifies this property, showing that the system throughput of 1-persistent MAC/CF protocols when ts ∼ tg can be higher than that of prioritybased CSMA protocol due to the speedup factor, and definitely higher than that of pi -persistent CSMA/CD protocol under different system loads. When ts ∼ T , some time slots are only used for the state changes, which may degrade the throughput. Fig. 5 (b) shows that the throughput of 1-persistent MAC/CF protocols is still better than that of pi -persistent CSMA/CD protocol. When the system load is not high, the state changes may happen more frequently and the throughput of 1-persistent MAC/CF protocols is not as high as priority-based CSMA protocol. However, when the system load is high, the state change will not happen quite frequently, 1-persistent MAC/CF protocols can achieve higher throughput than priority-based CSMA protocol. If we use global average delay as the work-conserving measurement, similar results can be shown in Figure 6. The global average delay of 1-persistent MAC/CF protocols is the minimum when ts ∼ tg as shown in Figure 6(a). The global average delay of 1-persistent MAC/CF protocols is larger than that of priority-based CSMA protocol when ts ∼ T
For the priority-based CSMA protocol, the upstream nodes have higher priority, thus the average delay at the upstream nodes is lower than that of the downstream nodes. As a result, the average delay curves in Figure 7 for priority-based CSMA protocol are increasing curves. For pi-persistent CSMA/CD protocol, the average delay at each node is similar if pi is correctly calculated, which means if the real traffic demand matches the estimated traffic demand. As shown in Figure 7(a) and (b), when the system load is low, the curves of the average delay for pi-persistent CSMA/CD protocol are quite flat. However, when the system load is high, as shown in Figure 7(c) and (d), the difference of the average delay among nodes can be dramatic, which means that the fairness of pi -persistent protocol is hard to achieve if the real traffic demand does not match the estimated traffic demand. For 1-persistent MAC/CF protocols, the downstream nodes intend to have lower average delay since they can block the packets from the upstream nodes and transmit their locally generated packets each time when they switch from DC state to DA state. Thus, the curves of the average delay for 1persistent CSMA/CF protocols are decreasing curves. In general, the average delay at each node in 1-persistent MAC/CF protocols is much less than that in pi -persistent CSMA/CD protocol. C. Worst Packet Delay Though 1-persistent MAC/CF protocol may allow the downstream nodes to block the packets from the upstream nodes and transmit their locally generated packet each time when they switch from DC state to DA state, the fair schedule is enforced once the CA switch at a node is in DA state, thus, each node will experience similar worst delay. Figure 8 shows that the curves of worst delay under 1-persistent CSMA/CF protocols
(a)
(b)
1.9
System Load = 29.28%
System Load = 29.28%
1−per CSMA/CF/1 1−per CSMA/CF/2 priority−based CSMA
1.7
1.6
1.6
Delay Mean
Delay Mean
pi−per CSMA
1.8
1−per CSMA/CF/1 1−per CSMA/CF/2 priority−based CSMA
1.7
1.5 1.4 1.3
1.5
1.3 1.2
1.1
1.1
1
1
0
1
2
3
4
5
6
7
8
0.9
9
R EFERENCES
1.4
1.2
0.9
0
1
2
3
4
5
6
7
8
9
Node Index (d)
Node Index (c) 11
11
pi−per CSMA
10
System Load =77.08%
8
7 6 5
System Load = 77.07%
1−per CSMA/CF/1 1−per CSMA/CF/2 priority−based CSMA
9
Delay Mean
8
pi−per CSMA
10
1−per CSMA/CF/1 1−per CSMA/CF/2 priority−based CSMA
9
Delay Mean
hyperchannels can be used to design more high-performance medium access control protocols.
1.9
pi−per CSMA
1.8
7 6 5 4
4 3 3
2
2
1
1 0
1
2
3
4
5
6
7
8
0
9
0
1
2
3
4
5
6
7
8
9
Node Index
Node Index
Fig. 7. (a) average delay vs. node index when ts ∼ tg load=29.28% ; (b) average delay vs. node index when ts ∼ T load=29.28%; (c) average delay vs. node index when ts ∼ tg load=77.08% ; (d) average delay vs. node index when ts ∼ T load=77.08%;
and and and and
system system system system
are quite flat especially when the system load is heavy. The difference of the worst delay among different nodes under both pi -persistent CSMA/CD protocol and priority-based CSMA protocol is quite large. Figure 8 shows that the fairness in 1-persistent MAC/CF protocols is best in terms of the worst delay at each node. (a)
(b) 14
14
pi−per CSMA
pi−per CSMA
System Load = 29.28%
1−per CSMA/CF/1
1−per CSMA/CF/2
priority−based CSMA
priority−based CSMA
10
8
6
4
10
8
6
4
2
2 0
1
2
3
4
5
6
7
8
9
0
Node Index (c) pi−per CSMA 120
1
4
p −per CSMA
System Load =77.08%
5
6
7
8
9
System Load = 77.07%
i
1−per CSMA/CF/1
120
1−per CSMA/CF/2
1−per CSMA/CF/2 priority−based CSMA
Maximum Delay
80
60
priority−based CSMA
100
80
60
40
40
20
20
0
3
Node Index (d)
1−per CSMA/CF/1
100
2
140
140
Maximum Delay
System Load = 29.28%
1−per CSMA/CF/2
Maximum Delay
Maximum Delay
12
1−per CSMA/CF/1
12
0 0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
Node Index
Node Index
Fig. 8. (a) worst delay vs. node index when ts ∼ tg and system load=29.28% ; (b) worst delay vs. node index when ts ∼ T and system load=29.28%; (c) worst delay vs. node index when ts ∼ tg and system load=77.08% ; (d) worst delay vs. node index when ts ∼ T and system load=77.08%;
VIII.
CONCLUSION
We introduced a 1-persistent MAC/CF protocol for slotted opportunistic hyperchannel, and showed that 1-persistent MAC/CF can achieve both fair service and efficiency compared with the pi -persistent CSMA protocol and priority-based CSMA protocol running on a traditional directional optical bus. We have also developed 1-persistent MAC/CF protocols for variable-length packets. These results will be reported in a subsequent paper. We believe that the features of opportunistic
[1] S.Q. Zheng and Ashwin Gumaste, “SMART: An Optical Infrastructure for Future Internet,” Proceedings of the 3rd International Conference on Broadband Communications, Networks, and Systems (Broadnets 2006). (Preliminary version: “Scalable Multi-Access Reconfigurable Transport(SMART) Network” Technical Report UTDCS-38-05, December 2005.) [2] A. Gumaste and I. Chlamtac, “Light-trails: A Novel Conceptual Framework for Conducting Optical Communications”, Proc. of IEEE Workshop on High Performance Switching and Routing (HPSR), June 2003. [3] A. Gumaste and S. Q. Zheng, “Next Generation Optical Storage Area Networks: The Light-trail Approach,” IEEE Communications Magazine, Vol. 43, No. 3, pp. 72-79, 2005. [4] Jing Chen, S.Q. Zheng and Ashwin Gumaste, “QoS Assuring Access Control Protocols for Hyperchannels in SMART Network” The 18th IASTED International Conference on PDCS, Nov. 2006. [5] Tobagi F., Borgonovo F., Fratta, L., “Expressnet: A High-Performance Integrated-Services Local Area Network”, IEEE Journal on Selected Areas in Communications, vol. 1, Nov 1983 pp:898 - 913. [6] Tobagi F., Fine M., “Performance of Unidirectional Broadcast Local Area Networks: Expressnet and Fasnet”, IEEE Journal on Selected Areas in Communications, vol. 1, Nov 1983 pp:913 - 926. [7] Chong-Wei Tseng, Bor-Uei Chen, “D-Net, A New Scheme for High Data Rate Optical Local Area Networks”, IEEE Journal on Selected Areas in Communications, vol. 1, April 1983 pp:493 - 499. [8] Abeysundara B.W., Kamal A.E., “Z-NET: a dual bus fiber-optic LAN using active and passive switchers”, INFOCOM vol.1, April 1989 pp:19 - 27. [9] A. E. Kamal, B. W. Abeysundara “X-NET: a dual bus fiber-optic LAN using active switches”, ACM SIGCOMM Computer Communication Review, vol. 19, August 1989 pp:72-82. [10] N. F. Maxemchuk, “Twelve random access strategies for fiber optic networks,” IEEE Trans. Commun., vol. COM-36, 1988 pp:942-950. [11] B. Mukherjee and J.S. Meditch, “The pi -persistent protocol for unidirectional broadcast bus networks,” IEEE Trans. Commun., Volume COM36, Dec. 1988 pp:1277-1286. [12] B. Mukherjee, “Performance of a dual-bus unidirectional broadcast network operating under probabilistic scheduling strategy,” Proceedings of SIGMETRICS ’89, vol. 17 Issue 1 1989. [13] Mukherjee, B., “On the infinite buffer model and the implementation aspects of the pi -persistent protocol for unidirectional broadcast bus networks”, Commun., IEEE International Conference on,vol.1, June 1988 pp:273 - 277 . [14] Chong Ho Yoon, Chong Kwan Un, “Unslotted 1- and pi-persistent CSMA/CD protocols for fiber optic bus networks”, Communications, IEEE Transactions on vol. 42, Issue 234, Part 1, Feb-Apr 1994 pp:458 - 465. [15] Jing Chen, Hui Yu, Jianping Wang and S.Q. Zheng, “Opportunistic Optical Hyperchannel and Its Distributed QoS Assuring Access Control”, submitted to IEEE GLOBECOM, 2007. [16] Ashwin Gumaste and S.Q. Zheng, “Light-frames - Pragmatic Framework for Optical Packet Transport: Extending Ethernet LANs to Optical Networks”, IEEE/OSA Journal of Lightwave Technology , vol. 24, No. 10, 2006 pp:3598-3615. [17] M. Shreedhar, George Varghese, “Efficient fair queueing using deficit round robin” ACM SIGCOMM ’95, vol. 25 Issue 4, October 1995.