# comatose # # COmprehensive MAc TaxonOmy databaSE # Available features # ================== features: access: name: Channel access access.random: name: Random access.token-passing: name: Token-passing access.polling: name: Polling access.reservation: name: Dynamic reservation access.schedule: name: Static schedule radio.carriersense: name: Carrier sense topology: name: Topology topology.singlehop: name: Single-Hop description: MAC relies on upper layers to transmit packet to out-of-range stations topology.multihop: name: Multi-Hop description: MAC transports data through multiple hops # bluetooth for example? topology.clustered: name: Clustered description: topology.centralized: name: Centralized description: Star application: name: Intended applications application.wsn: name: Wireless Sensor Network application.vanet: name: Vehicular mobile ad hoc network application.console: name: Serial console application.iwsan: name: Industrial wireless sensor actuator network time: name: Time model time.discrete: name: Discrete, synchronized time.continuous: name: Continuous power: name: Powersave mechanisms power.dutycycling: name: Duty-cycling # XXX Is this a powersave mechanism? power.lpl: name: Low-power listening reliability: name: Reliability machanisms # unreliable is default reliability.retransmission: name: Retransmission description: Packets will be acked/nacked and retransmitted reliability.channel-hopping: name: Channel hopping description: reliability.ecc: name: Error correcting codes realtime: name: Real-time features realtime.guaranteed: name: Guaranteed realtime.probabilistic: name: Probabilistic channels: name: Channel usage channels.single: name: Single channels.multi: name: Multi routing: name: Routing routing.multicast: name: Multicast routing.unicast: name: Unicast routing.broadcast: name: Broadcast initiation: name: Transmission initiation initiation.sender: name: Sender initiation.receiver: name: Receiver deployment: name: Deployment deployment.static: name: Static description: Nodes at fixed/planned positions deployment.adhoc: name: Ad-hoc description: # XXX figure out where to put these other: name: Other features other.qos: name: QoS # Algorithms/Protocols # ==================== algos: alohap: name: Pure ALOHA description: Non-slotted ALOHA related: [alohas] ref: [aloha] # Uses ECC? (parity bit) features: time.continuous: application.console: access.random: alohas: name: Slotted ALOHA related: [alohap] description: ALOHA with discrete time slots features: time.discrete: csma1p: name: 1-persistent CSMA related: [csmanp] ref: [csma] #features: [backoff, carriersense] csmanp: name: Nonpersistent CSMA related: [csma1p] ref: [csma] #features: [backoff, carriersense] csmapp: name: p-persistent CSMA ref: [csma] description: IEEE 802.11 uses refinement #features: [backoff, carriersense, discrete-time] features: time.discrete: dfwmac: name: DFWMAC # related to ieee 802.11 btma: longname: Busy Tone Multiple Access name: BTMA ref: [btma] ribtma: longname: Receiver Initiated Busy Tone Multiple Access name: RI-BTMA ref: [ribtma] isma: longname: Idle Sense Multiple Access # or: Idle Signal Multiple Access ??? name: ISMA collisions: true ref: [isma] iisma: name: I-ISMA longname: Idle Signal Multiple Access for Integrated services ref: [iisma] risma: longname: Reservation Idle Sense Multiple Access name: R-ISMA collisions: true ref: [risma] sisma: longname: Slotted Idle Sense Multiple Access name: S-ISMA collisions: true ref: [sisma] rap: longname: Randomly Addressed Polling name: RAP ref: [rap] # base station polls nodes for random number (multiple times), sorts # them and polls the nodes in that order, collisions can occur features: access.polling: reliability.retransmission: rrap: longname: Reserved Randomly Addressed Polling name: RRAP related: [rap] collisions: true ref: [rrap] grap: longname: GRAP name: GRAP related: [rap] collisions: true ref: [grap] grapr: name: GRAP-R ref: [grap] grapo: name: GRAPO related: [rap] collisions: true ref: [grapo] rama: longname: Resource Auction Multiple Access name: RAMA ref: [rama] # Base station has list of free resources, nodes trying to reserve # resource send their id, digit by digit to base station, that # broadcasts the highest number it received. Nodes whose digit is lower # drop out. At the end of the auction a winner is announced. features: time.discrete: frama: longname: fair resource assignment multiple access name: F-RAMA ref: [frama] zhang: name: Zhang’s Proposal collisions: false ref: [zhang] dtmp: longname: Disposable Token MAC Protocol name: DTMP ref: [dtmp] # Base station polls node (i.e. node received token), if no data to be # sent on either side -> timeout, node->bs: can be sent immediately, # bs->node: indicated by token features: time.continuous: access.polling: topology.centralized: routing.unicast: deployment.static: acampora: name: Acampora’s Proposal collisions: false ref: [acampora] prma: longname: Packet Reservation Multiple Access name: PRMA ref: [prma] related: [raloha, saloha] description: > Time slots grouped into frames, successful transmission of packet (ALOHA contention) reserves slot for next frame until node does not use it any more (slot empty). features: time.discrete: access.random: access.reservation: topology.centralized: routing.unicast: frma: longname: Frame Reservation Multiple Access name: FRMA ref: [frma] prmapp: name: PRMA++ ref: [prmapp] cprma: longname: Centralized PRMA name: C-PRMA ref: [cprma] maca: longname: Multiple Access with Collision Avoidance name: MACA ref: [maca] related: [csma/ca, btma] description: > Stations overhear RTS/CTS and inhibit their transmission, random waiting on collisions, no carrier sense, slot time is duration of RTS packet, “time multiplexed btma with one channel” features: channels.single: time.discrete: topology.singlehop: access.random: macaw: #longname: none name: MACAW ref: [macaw] #features: [rtscts] related: [maca] fama: longname: Floor Acquisition Multiple Access name: FAMA ref: [fama] eynpma: name: EY-NPMA # mac protocol of hiperlan # ref: etsi hiperlan specs macabi: longname: MACA By Invitation name: MACA-BI ref: [macabi] related: [maca] features: initiation.sender: fprp: longname: A Five-Phase Reservation Protocol name: FPRP ref: [fprp] pamas: longname: Power Aware MultiAccess protocol with signaling name: PAMAS related: [maca] ref: [pamas] #features: [multichannel, rtscts, busytone] features: channels.multi: markowski: name: Markowski ref: [markowski] hrma: longname: Hop-reservation multiple access name: HRMA ref: [hrma] #features: [adhoc, discrete-time, slot-reservation, collision-free, multichannel] features: application.adhoc: time.discrete: mcsma: longname: multichannel CSMA name: MCSMA ref: [mcsma] ps-dcc: longname: Power-Save Distributed Contention Control name: PS-DCC ref: [psdcc] rima-sp: name: RIMA-SP longname: Receiver initiated multiple access with simple polling ref: [rimasp] adapt: name: ADAPT longname: A Dynamically Adaptive Protocol for Transmission ref: [adapt] rraisa: longname: Reservation Random Access – Independent Stations Algorithm name: RRA-ISA ref: [rraisa] dqruma: longname: Distributed-Queuing Request Update Multiple Access name: DQRUMA ref: [dqruma] mascara: longname: Mobile Access Scheme based on Contention and Reservation for ATM name: MASCARA ref: [mascara] dsapp: longname: Dynamic Slot Assignment++ name: DSA++ ref: [dsapp] cata: longname: Collision Avoidance Time Allocation name: CATA ref: [cata] # XXX: incomplete features: time.discrete: jin: name: Jin’s proposal ref: [jin] trama: longname: traffic-adaptive medium access protocol name: TRAMA ref: [trama] #features: [discrete-time, distributed] features: time.discrete: nama: longname: Node-Activation Multiple Access name: NAMA ref: [nama] smac: longname: Sensor MAC name: S-MAC #features: [rtscts] ref: [smac] tmac: longname: Timeout MAC name: T-MAC related: [smac] #features: [rtscts] ref: [tmac] dsmac: longname: Dynamic Sensor MAC name: DSMAC related: [smac] ref: [dsmac] march: longname: Multiple Access with ReduCed Handshake name: MARCH ref: [march] #features: [adhoc] richdp: longname: receiver-initiated channel-hopping with dual polling name: RICH-DP ref: [richdp] #features: [adhoc] srmapa: longname: Soft Reservation Multiple Access with Priority Assignment name: SRMA/PA ref: [srmapa] # XXX incomplete features: access.random: # nodes content for access and – if granted – remain in control of their slot (aka soft reservation, distributed) access.reservation: topology.adhoc: # does the mac layer actually do multihop? topology.multihop: time.discrete: dcapc: longname: Dynamic channel assignment with power control name: DCA-PC ref: [dcapc] #features: [adhoc] gpc: longname: Generic power-controlled protocol name: GPC ref: [gpc] #features: [adhoc] vbs: longname: Virtual base stations name: VBS ref: [vbs] #features: [adhoc] dpcalp: longname: Distributed Power Control with Active Link Protection name: DPC/ALP ref: [dpcalp] #features: [adhoc] lal: name: Lal’s proposal ref: [lal] #features: [lal] gridb: longname: GRID with Channel Borrowing name: GRID-B ref: [gridb] #features: [adhoc] mcmac: longname: Multi-Code MAC name: MC MAC ref: [mcmac] #features: [adhoc] wca: longname: Weighted clustering algorithm name: WCA ref: [wca] #features: [adhoc] dbtma: longname: Dual Busy Tone Multiple Access name: DBTMA ref: [dbtma] #features: [adhoc] mmac: longname: Multi-Hop RTS MAC name: MMAC ref: [mmac] #features: [adhoc] dprma: longname: Distributed PRMA name: D-PRMA ref: [dprma] #features: [adhoc] dprma2: longname: Dynamic Packet Reservation MAC name: D-PRMA ref: [dprma2] macapr: longname: Multiple Access Collision Avoidance with Piggyback Reservations name: MACA/PR #features: [qos, discrete-time, slot-reservation, rtscts, adhoc] ref: [macapr] dps: longname: Distributed Priority Scheduling name: DPS #features: [rtscts, adhoc] ref: [dps] # XXX not complete features: deployment.adhoc: topology.multihop: other.qos: dwop: longname: Distributed Wireless Ordering Protocol name: DWOP #features: [adhoc] ref: [dwop] ymac: #longname: none name: Y-MAC #features: [discrete-time, carriersense, broadcast, unicast, multichannel] ref: [ymac] desynctdma: name: DESYNC-TDMA related: [tdma] ref: [desynctdma] leach: longname: Low-Energy Adaptive Clustering Hierarchy name: LEACH related: [tdma] #features: [discrete-time] ref: [leach] # no info available #leachc: # name: LEACH-C lmac: name: LMAC longname: Lightweight Medium Access Control #features: [discrete-time, distributed] ref: [lmac] mlmac: name: MLMAC longname: Mobile LMAC related: [lmac, tdma] #features: [distributed, discrete-time] ref: [mlmac] pmac: longname: Pattern MAC name: PMAC related: [tdma] ref: [pmac] rmac: longname: Routing-Enhanced MAC name: RMAC related: [smac] ref: [rmac] dmac: name: DMAC longname: Data-Gathering MAC ref: [dmac] wisemac: longname: Wireless Sensor MAC name: WiseMAC ref: [wisemac] rimac: longname: Receiver-Initiated MAC name: RI-MAC ref: [rimac] zmac: longname: Zebra MAC name: Z-MAC #features: [discrete-time, distributed] related: [csma, tdma] ref: [zmac] mhmac: name: MH-MAC longname: Mobility Adaptive Hybrid MAC #features: [discrete-time] ref: [mhmac] ginmac: name: GinMAC # for “real-time” stuff, 1s cycle time #features: [centralized, discrete-time] ref: [ginmac] related: [tdma] features: time.discrete: # off-line dimensioning, exclusive slots access.reservation: realtime.guaranteed: # via dedicated slots reliability.retransmission: deployment.planned: topology.multihop: tsmp: name: TSMP # used by wirelesshart, not just layer 2 though longname: Time Synchronized Mesh Protocol ref: [tsmp] #features: [synchronized, multichannel, centralized] aimrp: longname: Address-light, integrated MAC and routing protocol name: AIMRP ref: [aimrp] features: application.wsn: xmac: #longname: none name: X-MAC ref: [xmac] features: # actually: duty-cycled wsn application.wsn: # from kumar2014 qosmac: name: QoS-MAC # kumar2014 calls it qos-mac ref: [qosmac] pedamacs: name: PEDAMACS longname: Power Efficient and Delay Aware MAC for Sensor Networks ref: [pedamacs] ermac: name: ER-MAC longname: Emergency Response MAC ref: [ermac] prioritymac: # 4 qos classes, tdma with preemption name: PriorityMAC ref: [priomac] features: application.iwsan: # access to the medium is contended for AM1/2, with exponential # backoff access.random: radio.carriersense: # AM3/4 use dedicated time slots access.reservation: other.qos: initiation.sender: time.discrete: realtime.probabilistic: hymac: name: HyMAC ref: [hymac] features: realtime.guaranteed: # TDMA _and_ FDMA channels.multi: application.wsn: # out-of-band sync time.discrete: # both, reserved and contended slots access.reservation: access.random: topology.multihop: bmac: longname: Berkeley MAC name: B-MAC ref: [bmac] rtlink: name: RT-Link ref: [rtlink] features: realtime.guaranteed: access.reservation: time.discrete: power.dutycycling: topology.multihop: mmsn: #longname: Multi-Frequency MAC for Wireless Sensor Networks? name: MMSN ref: [mmsn] alert: name: Alert ref: [alert] sift: name: Sift ref: [sift] rrmac: longname: Realtime/reliable MAC # ? name: RRMAC ref: [rrmac] features: access.reservation: application.wsn: time.discrete: realtime.guaranteed: topology.multihop: # centralized assignment of time slots with deadline scheduling topology.centralized: # retransmissions are contended! reliability.retransmission: watteyene: name: Watteyene’s proposal ref: [watteyene] # XXX incomplete features: realtime.guaranteed: application.wsn: vts: longname: Virtual TDMA for Sensors name: VTS ref: [vts] rrr: longname: Resilent Round Robin name: RRR ref: [rrr] description: > High data-rate sensor networks, scheduled contention with binary search tree resolution collision resolution (BSTCR), collision-detection by receiver/base-station, dynamic time slot assignment possible, no global time synchronization required features: application.wsn: power.dutycycling: initiation.receiver: access.polling: # ? time.discrete: pwmac: name: PW-MAC longname: Predictive-Wakeup MAC ref: [pwmac] # XXX incomplete features: # asynchronous power.dutycycling: initiation.receiver: reliability.retransmission: # ? access.random: omac: #longname: none name: O-MAC ref: [omac] # from the mac alphabet soup mucmac: #longname: none name: μ-MAC ref: [mumac] # XXX incomplete features: time.discrete: channels.single: # contention period + contention-free period access.random: access.reservation: amac: #longname: none name: A-MAC ref: [amac] ailmac: longname: Adaptive, Information-centric and lightweight MAC name: AI-LMAC ref: [ailmac] bitmac: name: BitMAC ref: [bitmac] bma: longname: Bit-map assisted MAC name: BMA ref: [bma] bpmac: name: BP-MAC # no ref available? # paper at: http://www.ejse.org/Archives/Fulltext/2009/Special/2009SP4.pdf bpsmac: longname: Backoff Preamble Sequential MAC name: BPS-MAC ref: [bpsmac] buzzbuzz: name: BuzzBuzz ref: [buzzbuzz] cmac: #longname: Concurrent MAC? name: C-MAC ref: [cmac] ccmac: longname: Correlation-based Collaborative MAC name: CC-MAC ref: [ccmac] cmac2009: longname: Convergent MAC name: CMAC ref: [cmac2009] cmacchowdhury2009: #longname: none name: CMAC ref: [cmacchowdhury2009] crankshaft: name: Crankshaft ref: [crankshaft] csmamps: longname: Minimum Preamble Sampling CSMA name: CSMA-MPS ref: [csmamps] woo2001: name: Woo’s proposal ref: [woo2001] dwmac: longname: Demand Wakeup MAC name: DW-MAC ref: [dwmac] e2mac: name: E^2-MAC longname: Energy-efficient MAC ref: [e2mac] emmac: name: EM-MAC longname: Efficient Multichannel MAC ref: [emmac] emacs: name: EMACs longname: EYES MAC ref: [emacs] fmac: longname: Framelet MAC name: f-MAC ref: [fmac] flama: name: FLAMA longname: Flow-aware Medium Access ref: [flama] funneling: name: Funneling-MAC ref: [funneling] gmac: longname: Gateway MAC name: G-MAC ref: [gmac] hmac: name: HMAC longname: Hybrid MAC ref: [hmac] iamac: name: IAMAC longname: Interference Avoidance MAC ref: [iamac] mclmac: longname: Multi-Channel Lightweight MAC name: MC-LMAC ref: [mclmac] features: channels.multi: # high-throughput application.wsn: time.discrete: # distributed ad-hoc assignment access.reservation: topology.multihop: routing.broadcast: mfp: name: MFP longname: Micro-Frame Preamble ref: [mfp] mixmac: #longname: none name: MiX-MAC ref: [mixmac] # no paper/citation available #mrmac: pact: name: PACT longname: Power aware clustered TDMA ref: [pact] pcm: name: PCM longname: Power Control MAC ref: [pcm] guo2001: name: Guo’s proposal ref: [guo2001] # cannot find the position-enabled mac (pmac) elhoiydi2002: name: El-Hoiydi’s proposal ref: [elhoiydi2002] qmac2006: longname: Query MAC # ? name: Q-MAC ref: [qmac2006] qmac2005: name: Q-MAC longname: QoS-aware MAC ref: [qmac2005] # cannot find qos-oriented mac (qmac) miller2005: name: Miller’s proposal ref: [miller2005] ticer: name: TICER longname: Transmitter Initiated Cycled Receiver ref: [tricer] ricer: name: RICER longname: Receiver Initiated Cycled Receiver ref: [tricer] rlmac: name: RL-MAC longname: Reinforced Learning MAC ref: [rlmac] rmac2004: longname: Randomized MAC # ? name: RMAC ref: [rmac2004] rmac2006: name: RMAC longname: Reliable MAC ref: [rmac2006] samac: name: SA-MAC longname: Spectrum agile MAC ref: [samac] scp: name: SCP longname: Scheduled Channel Polling ref: [scp] seesaw: name: SEESAW ref: [seesaw] smacs: name: SMACS longname: Self-Organizing Medium Access Control for Sensor Networks ref: [smacs] sotp: name: SOTP longname: Self-Organized TDMA Protocol ref: [sotp] sstdma: name: SS-TDMA longname: Self-Stabilizing MAC ref: [sstdma] tamac: name: TA-MAC longname: Traffic adaptive MAC ref: [tamac] trawmac: name: TRACMAC longname: Traffic aware MAC ref: [trawmac] umac: #longname: none name: U-MAC ref: [umac] pereira2007: name: Pereira’s proposal ref: [pereira2007] arisha2002: name: Arisha’s proposal ref: [arisha2002] tmmac: longname: TDMA-based multi-channel MAC # ? name: TMMAC ref: [tmmac] features: channels.multi: routing.broadcast: time.discrete: # not 100% collision-free! access.reservation: power.dutycycling: deployment.adhoc: pip: longname: Packets in Pipe name: PIP ref: [pip] features: channels.multi: topology.centralized: topology.multihop: time.discrete: power.dutycycling: # bulk-transfer in wsn application.wsn: access.reservation: carley: name: Carley’s proposal ref: [carley] # XXX incomplete features: time.discrete: burstmac: name: BurstMAC ref: [burstmac] description: > Even-triggerred, correlated bursts, cooperative static schedule based on PRNG, one control channel, multiple data channels (FDMA) related: [bitmac] features: application.wsn: channel.multi: time.discrete: access.reservation: access.schedule: routing.multihop: # tree? dozer: name: Dozer ref: [dozer] description: > Ultra-low power, tree-routing, local time synchronization, local TDMA schedules (collisions can occur!), static slot assignment to joining nodes, beacon time-synchronization features: application.wsn: topology.multihop: time.discrete: access.schedule: reliability.retransmission: # ? camac: name: CA-MAC longname: Context-aware MAC ref: [camac] uctdma: name: UC-TDMA longname: User configured TDMA ref: [uctdma] flammini: name: Flammini’s proposal ref: [flammini2009] flipmac: name: Flip-MAC ref: [flipmac] description: Reduce contention features: application.wsn: fleximac: name: FlexiMAC ref: [fleximac] picoradio: name: PicoRadio ref: [picoradio] pmmac: name: Practical Multichannel MAC ref: [pmmac] swmac: name: SWMAC ref: [swmac] nanomac: name: nanoMAC ref: [nanomac] fpa: name: FPA longname: Fast Path Algorithm ref: [fpa] msmac: name: MS-MAC longname: Adaptive Mobility-Aware MAC protocol for sensor networks ref: [msmac] gsa: name: GSA longname: Global Schedule Algorithm ref: [fpa] e2rmac: name: E2RMAC longname: On-demand energy-efficient and reliable medium access control ref: [e2rmac] psaloha: name: Preamble Sampling ALOHA ref: [psaloha] mica: #name: Preamble Sampling CSMA name: Mica ref: [mica] eaalpl: name: EA-ALPL longname: Energy Aware Adaptive Low Power Listening ref: [eaalpl] csmamps: name: CSMA-MPS longname: Minimum Preamble Sampling MAC Protocol ref: [csmamps] dpsmac: name: DPS-MAC longname: Dual Preamble Sampling MAC ref: [dpsmac] geraf: name: GeRAF longname: Geographic Random Forwarding ref: [geraf] 1hopmac: name: 1-hopMAC ref: [onehopmac] sp: name: SP longname: Sensornet protocol ref: [sp] syncwuf: name: SyncWUF ref: [syncwuf] speckmacd: name: SpeckMAC ref: [speckmac] mxmac: name: MX-MAC ref: [mxmac] stem: name: STEM longname: Sparse Topology and Energy Management ref: [stem]