Presentation is loading. Please wait.

Presentation is loading. Please wait.

Submission Title: Coding example for the ULI

Similar presentations


Presentation on theme: "Submission Title: Coding example for the ULI"— Presentation transcript:

1 Project: IEEE P802.15 Working Group for Wireless Personal Area Networks (WPANs)
Submission Title: Coding example for the ULI Date Submitted: 8 May, 2018 Source: Tero Kivinen Company - Re: Hello world examples for ULI Abstract: Provide example how the ULI could be configured to send packet out. Purpose: Provide example. Notice: This document has been prepared to assist the IEEE P It is offered as a basis for discussion and is not binding on the contributing individual(s) or organization(s). The material in this document is subject to change in form and content after further study. The contributor(s) reserve(s) the right to add, amend or withdraw material contained herein. Release: The contributor acknowledges and accepts that this contribution becomes the property of IEEE and may be made publicly available by P

2 Code example for ULI Tero Kivinen

3 Example 1 Sending one IPv6 packet using O-QPSK on 2.4 MHz band using channel 1. Use the Pan Id of 0x1234. First send packet without security

4 Creating PHY & MAC configuration
First we need to create configuration data for the phy & mac layer, i.e., something we can give to the PDE- MGMT-CREATE. The configuration could be Yang or some other format.

5 Creating PHY & MAC configuration
PdeMgmtPhyMacConfig = pack( Phy: { Phy: O-QPSK, # These two might not Band_designator: 2.4Ghz, # be needed. Use defaults Channel: 1 }, Mac: { Pan_Id: 0x1234 })

6 Creating the profile id
Request the MPM to create a new profile based on our phy data. PDE-MGMT-CREATE.request( PdeMgmtPhyMacConfig, Handle)

7 Getting the profile id back
MPM will allocate new profile id and configure it using the configuration data given, and return newly allocated profile id to the upper layer → PDE-MGMT-CREATE.confirm( UliPhyMacProfileId, Handle, Status)

8 Sending packet Now we have the profile id containing all the phy and mac layer settings, so we can use it to send packet to given destination. PDE-DATA.request( 0x abcdef, # Dst Address 0x86dd, # IPv6 Ethertype UliPhyMacProfileId, # Profile id to use PdeData, # IPv6 payload Handle)

9 Example 2 Same as before, but now enable KMP using IKEv2, and PSK.

10 Creating KMP configuration
PdeMgmtKmpConfig = pack( Kmp: { KmpProtocol: IKEv2, PeerTable [ { # Host A address: 0x abcdef, PSK: MakeMeTastyGoat }, { # Another host address: 0xac , PSK: Foobar } ] })

11 Now create new profile for KMP
PDE-MGMT-CREATE.request( PdeMgmtKmpConfig, Handle) → PDE-MGMT-CREATE.confirm( UliKmpProfileId, Handle, Status)

12 Combine two profiles PDE-MGMT-COMBINE.request(
[ UliPhyMacProfileId, UliKmpProfileId ], Handle) → PDE-MGMT-COMBINE.confirm( UliCombinedProfileId, Handle, Status)

13 Sending packet Now we have the profile id containing all the phy, mac and kmp layer settings, so we can use it to send packet to given destination. PDE-DATA.request( 0x abcdef, # Dst Address 0x86dd, # IPv6 Ethertype UliCombinedProfileId, # Profile id to use PdeData, # IPv6 payload Handle)


Download ppt "Submission Title: Coding example for the ULI"

Similar presentations


Ads by Google