1 chapter 5 (supplementary) zigbee multicast. 2 outline introduction upon receipt of a multicast...

19
1 Chapter 5 (Supplem entary) ZigBee Multicast

Upload: prudence-lindsey

Post on 17-Dec-2015

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

1

Chapter 5 (Supplementary)

ZigBee Multicast

Page 2: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

2

Outline

Introduction Upon Receipt of A Multicast Frame from The Next

Higher Layer Member Mode Multicast

Initiating A ‘Member Mode’ Multicast Upon Receipt of A Member Mode Multicast Frame

Non-Member Mode Multicast Initiating A ‘Non-Member Mode’ Multicast Upon Receipt of A Non-member Mode Multicast Frame

Research Issues

Page 3: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

3

Introduction Multicast addressing is accomplished by 16-bit multicast group ID

s. A multicast group is a collection of nodes

Registered under the same multicast group ID. Physically separated by a hop distance of no more than MaxNon

MemberRadius. Each node has a group ID Table

Contains a set of 16-bit group identifiers to which the device belongs.

nwkGroupIDTable is an attribute of the NIB (Network Information Base).

Attribute ID Type Read Only Range Description Default

nwkGroupIDTable 0x99 Set No Variable The set of group identifiers, in the

range 0x0000-0xffff, for groups of

which this device is a member.

Null Set

Page 4: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

4

Introduction (Cont.) ‘Member Mode’

The original message was created by a member of the group.

Relayed by means of broadcasts. ‘Non-Member Mode’

The original message was created by a non-member of the group.

Relayed by means of unicasts towards a group member.

Once reaching any member, switch to ‘Member Mode’.

Page 5: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

5

Basic Idea of ZigBee Multicast

N MN

N

N

N

MM

N

N

N

M

N

M

N

Non-membermode

(unicast)

Membermode

(k-hop broadcast)Membermode

(k-hop broadcast)

Page 6: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

6

Example

M

M

M

N

N

N

N

N

N

broadcast

broadcast

broadcastbroadcast

broadcast

Member mode multicast

Page 7: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

7

Example

MN

Non-Member mode multicast

N

unicast unicast

Switch to member mode and broadcast N

N

N

M

M

M

M

Page 8: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

8

Upon Receipt of A Multicast Frame from the Higher Layer

NLDE-DATA.request is received from its next higher level and the DstAddrMode is 0x01.

An entry exists in the nwkGroupIDTable?

Yes : Initiating a Member Mode Multicast

No : Initiating a Non-member Mode Multicast

0x01 implies this is Group ID, not address

Page 9: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

9

Member Mode Multicast

Page 10: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

10

Initiating A Member Mode Multicast

Set the multicast mode sub-field of the multicast control field to 0x01 (member mode).

If the BTT (Broadcast Transmission Table) is full and contains no expired entries.

The message shall not be sent. Issue the NLDE-DATA.confirm primitive with a Status value of BT_TABL

E_FULL. If the BTT is not full or contains an expired BTR (Broadcast Transmission R

ecord) Create a new BTR. Transmit the message.

0x01

Page 11: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

11

Upon Receipt of A Member Mode Multicast Frame Compare the sequence number and the source

address of the multicast frame with the records in its BTT.

If the device has a BTR of this multicast frame

discard the frame (duplicate message!) If no record is found and the BTT is full and contains no

expired entries

discard the frame (buffer full!) If no record is found and the BTT is not full or contains an

expired BTR

(OK!) create a new BTR, then continue processing (see the next page).

Page 12: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

12

Upon Receipt of A Member Mode Multicast Frame (Cont.) An entry exists in the nwkGroupIDTable?

Yes : (I am a member!) Pass the message to the next higher layer. Set the multicast mode sub-field of the multicast control field to

0x01 (member mode). Set the value of the NonmemberRadius sub-field to the value

of the MaxNonmemberRadius sub-field in the multicast control field.

Re-broadcast the frame. No : (I am not a member!)

Examine the frame's multicast NonmemberRadius field. 0 discard the frame along with the newly added BTR. Otherwise decrease NonmemberRadius field by 1 and re-broad

cast the frame.

Page 13: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

13

Upon Receipt of A Member Mode Multicast Frame (Cont.)

Each member mode multicast message shall be transmitted nwkMaxBroadcastRetries times and delay a period of nwkPassiveAckTimeout seconds between retransmissions.

The NWK layer issues an MCPSDATA.request primitive to the MAC sub-layer. DstAddrMode parameter set to 0x02 (16-bit network a

ddress). DstAddr parameter set to 0xffff.

Page 14: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

14

Example

M

N

MaxNonmemberRadius = 3 Current NonmemberRadius = 1

•NonmemberRadius = 1

•Entry isn’t found in nwkGroupIDTable

•Decrease NonmemberRadius to 0

•NonmemberRadius = 0

•Entry isn’t found in nwkGroupIDTable

•Discard the frame

N

•NonmemberRadius = 0

•Entry is found in nwkGroupIDTable

•Set NonmemberRadius to MaxNonmemberRadius (3)

A member mode multicast frame with NonmemberRaduis = 1

Page 15: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

15

Non-Member Mode Multicast

Page 16: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

16

Initiate a Non-Member Mode Multicast Set the multicast mode sub-field of the multicast control field to 0x00

(non-member mode). An entry corresponding to the GroupID destination in the routing tabl

e? Yes : examine the entry's status field (a route exists!)

If the status is ACTIVE, then transmit the frame. If the status is VALIDATION_UNDERWAY, then change the status to

ACTIVE and transmit the frame. Issue the NLDEDATA.confirm primitive with the Status value received

from the MCPSDATA.confirm primitive. No : (no route exists!)

DiscoverRoute parameter is 0x00 : Discard the frame Issue the NLDE-DATA.confirm primitive with a Status value of ROUTE_DI

SCOVERY_FAILED. DiscoverRoute parameter is 0x01 :

Initiate route discovery

Page 17: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

17

Upon Receipt of A Non-member Mode Multicast Frame An entry exists in the nwkGroupIDTable?

Yes : (I am a member!) Set multicast control field to 0x01 (member mode). The message shall be processed as if it had been received as

a member mode multicast. No : (I am not a member!) check its routing table for an entry

corresponding to the GroupID destination No such entry discard the frame. (There would be a record i

n routing table if we had initiated a non-member mode multicast frame and we had tried to find a route)

Otherwise examine the entry's status field. If the status is ACTIVE, then the device shall (re)transmit the frame. If the status is VALIDATION_UNDERWAY, then the status shall be change

d to ACTIVE and the device shall (re)transmit the frame. Issues an MCPSDATA.request primitive to the MAC sublayer.

DstAddrMode set to 0x02 (16-bit network address) DstAddr parameter set to the next hop as determined from the matching

routing table entry.

Page 18: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

18

Example

MN N

unicast unicastbroadcast

•Entry isn’t found in nwkGroupIDTable

• Route to GroupID destination is available

•Forward to the next hop according to the routing table

•Entry isn’t found in nwkGroupIDTable

• Route to GroupID destination is available

•Forward to the next hop according to the routing table

•Entry is found in nwkGroupIDTable

• Switch to member mode multicast

A non-meber mode multicast frame

Page 19: 1 Chapter 5 (Supplementary) ZigBee Multicast. 2 Outline Introduction Upon Receipt of A Multicast Frame from The Next Higher Layer Member Mode Multicast

19

Summary: Research Issues

Some unspecified parameters. MaxNonmemberRadius nwkMaxBroadcastRetries nwkPassiveAckTimeout

Membership maintenance Join/Leave a multicast group.