D-TDMA: a New Dynamic TDMA Protocol with High Throughput

简介:


D-TDMA: a New Dynamic TDMA Protocol

with High Throughput

Song Bao-hua, Yang Ping, Wang Wen-qi
 
Abstract: This paper presents a new dynamic TDMA protocol. In this protocol, free slots are full used for the slot request of nodes. By this way, slots are wasted lest and resource is imposed adequately. In result, the protocol shows a good throughput performance.
Keywords: TDMA, Dynamic TDMA, Medium Access Control
 

1. Introduction

The traditional TDMA protocol allocates fixed slots to fixed nodes, which means the MAC (Medium Access Control) protocol can’t support the dynamic entering and quitting and can’t support to create a communication system which contains nodes more than the quantity of slots in a frame. Some dynamic TDMA protocols[1-3] are proposed to resolve this problem. Based on thinking in these protocols, this paper designs a new dynamic TDMA protocol which has the advantages of all these protocols and provides high throughput.
 

2. Slot Config

 
SOF                                             
CSSSi
Si1 
Si2
Si3 
Si4
Si5 
SiM
SOFHead flag used for synchronizing frames
CSSSiThe slot for master node to send packet of slot assign Pslot_allot
SijThe jth slot of the ith frame
MThe max slot number considering the ability to supply real-time
 
IMAGE 1 Slot Config in a Single Frame

 

3. Function of Master Nodes

 

3.1 Allocate Slots

 
The master node keeps up with a slot assignment table(table 1),which records the status of every slot, and is updated with the request of slave nodes.
TABLE 1 Slot Assignment Table
sequence number
of slots
status
address of
the node sending
address of
the node receiving
1
idle / busy
000001
000010
2
idle / busy
000010
000001
M
idle / busy
000011
000100
The maser node supervises a queue which records the request information of slave nodes (image 1). The request information includes the address of the node which requested slots and the amount needed.
IMAGE 2 Slot Request Queue
As a master node, it is always listening to the packets being sent in the network. When it hears a slot request packet sent by any slave node in any idle slot, it will add the request information into the tail of the slot request queue.
At the beginning of every frame, the maser node will analysis the information recorded in the head of the slot request queue. Assuming the quantity of slots requested is nreq according to the head of the slot request queue and the network still leaves Sfree free slots, the master node will deal with the request in the head as the following.
1.     IF Sfree >= nreq  THEN
2.         allot the first nreq free slots to the slave node
3.          eliminate the current head of the slot request queue
4.          take out the new head of the slot request queue, and jump to 1
5.      END IF
 

3.2 Notice Slave Nodes

 
In the CSSSi  slot, master nodes will broadcast the Pslot_allot packet to announce the status of every slot in the frame. The Pslot_allot packet is like image 3.
 
P
F
Ai1
Ai2
Ai3
AiM
L
A1
AL
FCS
F
PSequence to start and synchronize the modem
Aij: Address of the node authorized to send packets in the jth slot of the ith frame. If no node obtains the slot, it will be 0.
FCSFrame checkout sequence
FFrame flag. The content between two frames flag constitutes a frame
LAmount of nodes not given slots even though their slot request packets were heard
Ai A L addresses of nodes not given slots even though their slot request packets were heard
 
IMAGE 3 Formats of Slot Allocation Packets

 

3.3 Release Slots

 
Master nodes will release the slots allocated to a node in the following two cases.
Active Release
Active release means the master node in a network will release the slots authorized to a slave node automatically when it hears the slot release packet sent by the slave node.
Passive Release
Passive release means the master node in a network will also release the slots authorized to a slave node when it hasn’t heard any packet sent by the slave node over three times.
 

4. Function of Slave Nodes

 
Like the master node, every slave node keeps a table called slot status table(table 2) which also records the status of all slots. But the different is the information in the table includes the serial number of slots, the status of slots, which is busy or idle, and a Boolean variable denoting whether the slot is allocated to the slave node itself.
The slot status table is also refreshed whenever the slave node hears a Pslot_allot packet which hints the change in the status of any slot.
TABLE 2 Slot Status Table
 
sequence number
of slots
status
whether the slot is allocated to the node itself
1
busy / idle
Y/N
2
busy / idle
Y/N
M
busy / idle
Y/N

 

4.1 Request Slots

 
  If the user process of a slave node wants to request some slots to send information to another node, it will check the slot status table to find out whether there is any idle slot to send slot request packet. If there are still Sfree slots free for the slave node to request, the slave will produce a stochastic natural number between 1 to Sfree and send the slot request packet in the particular slot corresponding to the stochastic number. The relationship between the slot to send slot request packet and stochastic number is like image 4.
IMAGE 4 Slots to Send Slot Request Packets
In the CSSSi slot of the next frame next to which in the slave node sends a slot request packet, the same slave node will analysis the Pslot_allot broadcasted by   the master node to find out whether the slot request packet is heard by the master successfully. In the best situation, which means the request packet is heard and slots needed are given, the slave node will send information in the corresponding slots. But if the slots it requests are not attained, the slave node will wait until the master node releases some busy slots and allocates some to it. In the worst situation, which means the slot request is even not heard, the slave node will send another slot request packet according to the arithmetic described in the above paragraphs in the current frame.

4.2 Send and Receive Packets

In the process of requesting slots, the slave node will send a slot request packet. And in the allocated slots for sending data packets, the slave node will send data packets. When the packets are sent over and the slave node doesn’t need the slots given to it, it will send a slot release packet in the slot for sending data. The format of all the three types of packets, data packets, slot request packets and slot release packets, are same (Image 5), and they are differentiated only by a control field in packets.
 
P
F
AS
Ad
Control
L
Data
FCS
F
 
As: The address of the source node
Ad: The address of the destination node
Control: Control information
L:The length of data for data packets;
   The quantity the slave requests for slot request packets
Data:Valid payload for data packets
 
IMAGE 5 Slot Request Packets and Data Packets

5. Performance Analysis

Image 6 presents the throughput changing with the number of nodes which join the competition of slots. 1 means all slots are impropriated. In the simulation, the total slot number is 10.
IMAGE 6 Throughput changing with nodes increasing
According to image 6, throughput increases with the increasing of the number of nodes when the number is less. Then, when the number is more than a greater value, the throughput will reduce with the increasing of the number of nodes due to the increasing competition collision. The trend is the same with other protocols based on competition, such as CSMA/CA[4], CSMA/CD[5] etc.
 

Reference

[1] Georgios I. Papadimitriou, et al. Self-Adaptive TDMA protocols for WDM star networks: a learning-automata-based approach[J]. IEEE Photonics Technology Letters, 1999,11(10):1322-1324
[2] Zhang Jun, Zhang Qishan, Deng Qiulin. On the slot reservation selection algorithm about self-organized TDMA VHF data link [J]. Journal of Beijing University of Aeronautics and Astronautics, 2001,27(5):514517
[3] Johnsson L. The cellular CNS concept ( CCC) operating concept based on the VHF STDMA data link [ J ] . Navigation , 1996 , 44(176):432459
[4] IEEE Computer Society. IEEE 802.3 Carrier sense multiple access with collision detection(CSMA/CD) access method and physical layer specifications[G]. The Institute of Electrical and Electronics Engineers, Inc. 2002
[5] IEEE. Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications. IEEE Standard 802.11. 1999







 本文转自 21cnbao 51CTO博客,原文链接:http://blog.51cto.com/21cnbao/120267,如需转载请自行联系原作者

相关文章
|
2月前
|
关系型数据库 MySQL Linux
Packet for query is too large (4467936 > 4194304). You can change this value on the server by setting the max_allowed_packet' variable
【10月更文挑战第15天】解决Packet for query is too large (4467936 > 4194304). You can change this value on the server by setting the max_allowed_packet' variable
109 1
|
4月前
|
缓存 负载均衡 网络协议
Boost UDP Transaction Performance
Boost UDP Transaction Performance
62 4
|
芯片
Constant frequency mode(恒频模式)和Burst mode(点放模式)
Constant frequency mode是指恒频模式或者连续模式,Burst mode是指点放模式或者突发模式。这两个概念在DC-DC开关电源中比较常见,大家都了解开关电源是通过PWM信号控制开关管的通断来进行供电。恒频模式指PWM信号频率保持不变,开关电源一直在工作,这样电压比较稳定。点放模式下,开关管不是周期性开关的,当在轻负载状态下(一般是设备进入低功耗休眠模式),当电压低于预设电压时,导通一次开关管,这样就比较省电。
553 0
|
缓存 前端开发 安全
译|High-Performance Server Architecture(上)
译|High-Performance Server Architecture
79 0
|
存储 缓存 网络协议
译|High-Performance Server Architecture(下)
译|High-Performance Server Architecture(下)
86 0
|
XML Dart Java
Protocol Buffers
protobuf它是Google提供的一个技术, 一个类库, 也可以说是一套规范, 学java的人都知道java有自己的序列化机制, 对不同的java程序来说,他们可以使用同一种序列化机制进行数据的传递, 但是java的序列化机制并不适用于其他的语言比如python
244 0
PAT (Advanced Level) Practice - 1145 Hashing - Average Search Time(25 分)
PAT (Advanced Level) Practice - 1145 Hashing - Average Search Time(25 分)
121 0
|
传感器 关系型数据库 PostgreSQL
Real-time Monitoring and Alerts for Senior Citizens - Big Data for Healthcare
This article discusses Alibaba Cloud PostgreSQL best practices for healthcare applications. In particular, we will explore how Big Data can be applied.
2517 0
Real-time Monitoring and Alerts for Senior Citizens - Big Data for Healthcare