Damian Gabino / picoGW_packet_forwarder
Committer:
dgabino
Date:
Wed Apr 11 14:47:16 2018 +0000
Revision:
0:9002b89157da
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dgabino 0:9002b89157da 1 / _____) _ | |
dgabino 0:9002b89157da 2 ( (____ _____ ____ _| |_ _____ ____| |__
dgabino 0:9002b89157da 3 \____ \| ___ | (_ _) ___ |/ ___) _ \
dgabino 0:9002b89157da 4 _____) ) ____| | | || |_| ____( (___| | | |
dgabino 0:9002b89157da 5 (______/|_____)_|_|_| \__)_____)\____)_| |_|
dgabino 0:9002b89157da 6 (C)2013 Semtech-Cycleo
dgabino 0:9002b89157da 7
dgabino 0:9002b89157da 8 Utility: network packet sender
dgabino 0:9002b89157da 9 ===============================
dgabino 0:9002b89157da 10
dgabino 0:9002b89157da 11 1. Introduction
dgabino 0:9002b89157da 12 ----------------
dgabino 0:9002b89157da 13
dgabino 0:9002b89157da 14 The network packet sender is a simple helper program used to send packets
dgabino 0:9002b89157da 15 through the gateway-to-server downlink route.
dgabino 0:9002b89157da 16
dgabino 0:9002b89157da 17 The program start by waiting for a gateway to send it a PULL_DATA datagram.
dgabino 0:9002b89157da 18 After that, it will send back to the gateway a specified amount of PULL_RESP
dgabino 0:9002b89157da 19 datagrams, each containing a packet to be sent immediately and a variable
dgabino 0:9002b89157da 20 payload.
dgabino 0:9002b89157da 21
dgabino 0:9002b89157da 22 2. Dependencies
dgabino 0:9002b89157da 23 ----------------
dgabino 0:9002b89157da 24
dgabino 0:9002b89157da 25 This program follows the v1.1 version of the gateway-to-server protocol.
dgabino 0:9002b89157da 26
dgabino 0:9002b89157da 27 3. Usage
dgabino 0:9002b89157da 28 ---------
dgabino 0:9002b89157da 29
dgabino 0:9002b89157da 30 The application runs until the specified number of packets have been sent.
dgabino 0:9002b89157da 31 Press Ctrl+C to stop the application before that.
dgabino 0:9002b89157da 32
dgabino 0:9002b89157da 33 Use the -h option to get help and details about available options.
dgabino 0:9002b89157da 34
dgabino 0:9002b89157da 35 The packets are [9-n] bytes long, and have following payload content:
dgabino 0:9002b89157da 36 +----------+---------------+---------------+---------------+---------------+---+---+---+---+---+---+---+---+
dgabino 0:9002b89157da 37 | Id | PktCnt[31:24] | PktCnt[23:16] | PktCnt[15:8] | PktCnt[7:0] | P | E | R |FCS| 0 | 1 |...| n |
dgabino 0:9002b89157da 38 +----------+---------------+---------------+---------------+---------------+---+---+---+---+---+---+---+---+
dgabino 0:9002b89157da 39
dgabino 0:9002b89157da 40 Id : User defined ID to differentiate sender at receiver side. (8 bits)
dgabino 0:9002b89157da 41 PktCnt : Packet counter incremented at each transmission. (32 bits)
dgabino 0:9002b89157da 42 ‘P’, ‘E’, ‘R’ : ASCII values for characters 'P', 'E' and 'R'.
dgabino 0:9002b89157da 43 FCS : Checksum: 8-bits sum of Id, PktCnt[31 :24] , PktCnt[23 :16] , PktCnt[15 :8] , PktCnt[7:0], ‘P’,’E’,’R’
dgabino 0:9002b89157da 44 0,1, ..., n : Padding bytes up until user specified payload length.
dgabino 0:9002b89157da 45
dgabino 0:9002b89157da 46 4. License
dgabino 0:9002b89157da 47 -----------
dgabino 0:9002b89157da 48
dgabino 0:9002b89157da 49 Copyright (C) 2013, SEMTECH S.A.
dgabino 0:9002b89157da 50 All rights reserved.
dgabino 0:9002b89157da 51
dgabino 0:9002b89157da 52 Redistribution and use in source and binary forms, with or without
dgabino 0:9002b89157da 53 modification, are permitted provided that the following conditions are met:
dgabino 0:9002b89157da 54
dgabino 0:9002b89157da 55 * Redistributions of source code must retain the above copyright
dgabino 0:9002b89157da 56 notice, this list of conditions and the following disclaimer.
dgabino 0:9002b89157da 57 * Redistributions in binary form must reproduce the above copyright
dgabino 0:9002b89157da 58 notice, this list of conditions and the following disclaimer in the
dgabino 0:9002b89157da 59 documentation and/or other materials provided with the distribution.
dgabino 0:9002b89157da 60 * Neither the name of the Semtech corporation nor the
dgabino 0:9002b89157da 61 names of its contributors may be used to endorse or promote products
dgabino 0:9002b89157da 62 derived from this software without specific prior written permission.
dgabino 0:9002b89157da 63
dgabino 0:9002b89157da 64 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
dgabino 0:9002b89157da 65 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
dgabino 0:9002b89157da 66 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
dgabino 0:9002b89157da 67 DISCLAIMED. IN NO EVENT SHALL SEMTECH S.A. BE LIABLE FOR ANY
dgabino 0:9002b89157da 68 DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
dgabino 0:9002b89157da 69 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
dgabino 0:9002b89157da 70 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
dgabino 0:9002b89157da 71 ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
dgabino 0:9002b89157da 72 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
dgabino 0:9002b89157da 73 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
dgabino 0:9002b89157da 74
dgabino 0:9002b89157da 75 *EOF*