blob: 027e928ad86a4df29cb178d857ba6bf8916179b8 [file] [log] [blame]
---
Author: János Kövesdi
Version: 155 17-CNL 113 632, Rev. A
Date: 2016-11-17
---
= NDP Protocol Modules for TTCN-3 Toolset with TITAN, Function Specification
:author: János Kövesdi
:revnumber: 155 17-CNL 113 632, Rev. A
:revdate: 2016-11-17
:toc:
*Copyright*
Copyright (c) 2000-2019 Ericsson Telecom AB. +
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 that accompanies this distribution, and is available at +
http://www.eclipse.org/legal/epl-v10.html.
== How to Read This Document
This is the Function Specification for the set of NDP protocol modules. NDP protocol modules are developed for the TTCN-3 Toolset with TITAN.
== Scope
The purpose of this document is to specify the content of the NDP protocol modules.
= General
Protocol modules implement the message structures of the related protocol in a formalized way, using the standard specification language TTCN-3. This allows defining of test data (templates) in the TTCN-3 language and correctly encoding/decoding messages when executing test suites using the TITAN TTCN-3 test environment.
Protocol modules are using TITANs RAW encoding attributes <<_1, [1]>> and hence are usable with the TITAN test toolset only.
= Functional Specification
== Protocol Version Implemented
This protocol module contains the protocol messages and elements of the NDP protocol (see <<_3, [3]>>),
[[modifications-deviations-related-to-the-protocol-specification]]
== Modifications/Deviations Related to the Protocol Specification
=== Implemented Messages
All message types listed in protocol description are implemented.
[[protocol-modifications-deviations]]
=== Protocol Modifications/Deviations
None.
[[encoding-decoding-and-other-related-functions]]
== Encoding/Decoding and Other Related Functions
This product also contains encoding/decoding functions that provide for the correct encoding of messages when sent from TITAN and correct decoding of messages when received by TITAN. The encoder updates the checksum field with the correct value. Implemented encoding/decoding functions:
[cols=3*,options=header]
|===
|Name |Type of formal parameters |Type of return value
|`f_enc_PDU_NDP` |PDU_NDP, OCT16, OCT16 |octetstring
|`f_dec_PDU_NDP` |octetstring |PDU_NDP
|===
There is also a function which verifies the checksum field in an encoded NDP message:
[cols=3*,options=header]
|===
|Name |Type of formal parameters |Type of return value
|`f_NDP_verify_checksum` |octetstring, OCT16, OCT16 |boolean
|===
= Terminology
TITAN TTCN-3 Test Executor.
== Abbreviations
IETF:: Internet Engineering Task Force
ICMPv6:: Internet Control Message Protocol for IPv6
IPv6:: Internet Protocol Version 6
NDP:: Neighbor Discovery Protocol
RFC:: Request for Comments
TTCN-3:: Testing and Test Control Notation version 3
= References
[[_1]]
[1] Programmers Technical Reference for the TITAN TTCN-3 Test Executor
[[_2]]
[2] ETSI ES 201 873-1 v.3.1.1 (06/2005) +
The Testing and Test Control Notation version 3. Part 1: Core Language
[[_3]]
[3] IETF https://tools.ietf.org/html/rfc4861[RFC 4861] +
Neighbor Discovery for IP version 6 (IPv6)