Skip to content
CALMfntp.asn 4.58 KiB
Newer Older
--<OSS.PDU>-- 
CALMfntp { iso (1) standard (0) calm-nonip(29281) fntp(2) version1 (1)}  

DEFINITIONS AUTOMATIC TAGS::=BEGIN

IMPORTS

CIstatus, Link-ID, UserPriority FROM CALMllsap {iso(1) standard(0) calm-ll-sap(21218) version1(1)}

ITS-scuId FROM CALMmanagement { iso (1) standard (0) calm-management (24102) local (1) version1 (1)}

NTtimeout FROM CALMfsap { iso (1) standard (0) calm-management (24102) fsap (5) version1 (1)}


FNTPlpp FROM CALMlegacySupport { iso (1) standard (0) calm-nonip(29281) legacy (3) version1 (1)} 

;

-- End of IMPORTS

-- Types

-- PDUs --

   -- FNTP NPDU --

FNTPNPDU::=SEQUENCE{
	header	FNTPHeader,
	body	ITSfpdu  -- specific to an ITS-S application / message
	}

FNTPHeader::=SEQUENCE{
	sourcePort	PortNumber,
	destinationPort	PortNumber,
	options	FntpOptions
	}

FntpOptions::=SEQUENCE{
	intForw	FNTPintForwarding OPTIONAL,
	sec	FNTPsecurity OPTIONAL,
	hops	FNTPhopCount OPTIONAL,
	opt4	NULL OPTIONAL,
	opt5	OCTET STRING OPTIONAL,
	opt6	NULL OPTIONAL,
	lpp	FNTPlpp OPTIONAL,
	cip	FNTPCIPheader OPTIONAL
}

FNTPintForwarding::=SEQUENCE{
	hostITS-scuId	ITS-scuId,
	link	Link-ID,
	counter	FNTPpacketCounter,
	sourcePort	PortNumber,
	destinationPort	PortNumber
	}

FNTPpacketCounter::=INTEGER(0..255)

FNTPsecurity::=OCTET STRING

FNTPhopCount::=INTEGER(0..255)

FNTPCIPheader::=SEQUENCE{
	rxCIP	RXcip, 
	txCIP	TXcip
	}

RXcip::=OCTET STRING (SIZE(0..255))

TXcip::=OCTET STRING (SIZE(0..255))-- may optionally be forwarded to peer ITS station


-- Managements SAP service primitives --
-- Payload definitions for primitives defined in ISO 24102 --

  -- MN-SAP --

    -- FWTxxx --

DeleteFNTP::=SEQUENCE{
	reference	INTEGER(0..noFNTPfwtEntries)
	}

DeleteNotFNTP::=SEQUENCE{
	reference	INTEGER(0..noFNTPfwtEntries)
	}

SetFNTP::=SEQUENCE{
	remotePort	PortNumber,
	linkID	Link-ID,
	ciStatus	CIstatus,
	linkPort	PortNumber,
	serviceInfo	HostServiceInfo, --formerly ServiceNWref
	priority	UserPriority,
	timeout	NTtimeout
	} -- SetConfFNTP will return the reference pointing to the new entry.

SetConfFNTP::=SEQUENCE{
	reference	INTEGER(0..noFNTPfwtEntries)
	}

HostServiceInfo::=SEQUENCE{
	servicePort	PortNumber,
	hostITSscu	ITS-scuId,
	servicePriority	UserPriority
	}

SetNotFNTP::=SEQUENCE{
	reference	INTEGER(0..noFNTPfwtEntries),
	remotePort	PortNumber,
	linkID	Link-ID,
	ciStatus	CIstatus,
	linkPort	PortNumber,
	serviceInfo	HostServiceInfo,
	priority	UserPriority,
	timeout	NTtimeout
	}

UpdateFNTP::=SEQUENCE{
	reference	[1] INTEGER(0..noFNTPfwtEntries),
	remotePort	[2] PortNumber OPTIONAL,
	linkID	[3] Link-ID OPTIONAL,
	ciStatus	[4] CIstatus OPTIONAL,
	linkPort	[5] PortNumber OPTIONAL,
	serviceInfo	[6] HostServiceInfo OPTIONAL,
	priority	[7] UserPriority OPTIONAL,
	timeout	[8] NTtimeout OPTIONAL
	}

UpdateNotFNTP::=SEQUENCE{
	reference	[1] INTEGER(0..noFNTPfwtEntries),
	remotePort	[2] PortNumber OPTIONAL,
	linkID	[3] Link-ID OPTIONAL,
	ciStatus	[4] CIstatus OPTIONAL,
	linkPort	[5] PortNumber OPTIONAL,
	serviceInfo	[6] HostServiceInfo OPTIONAL,
	priority	[7] UserPriority OPTIONAL,
	timeout	[8] NTtimeout OPTIONAL
	}

  -- NF-SAP --

NFsapPrimitivesDown::=SEQUENCE{
	fill	BIT STRING (SIZE(7)),
	primitivesDown	CHOICE{
	fntpPortRequest	NFfntpPortRequest,
	fntpCommRequest	NFfntpCommRequest
	}
	}

NFsapPrimitivesUp::=SEQUENCE{
	fill	BIT STRING (SIZE(6)),
	primitivesUp	CHOICE{
	fntpPortConfirm	NFfntpPortConfirm,
	fntpCommConfirm	NFfntpCommConfirm,
	fntpCommIndication	NFfntpCommIndication
	}
	}

NFfntpPortRequest::=SEQUENCE{
	serviceRef	INTEGER,
	operation	BOOLEAN,
	port	PortNumber,
	priority	UserPriority
	}

NFfntpPortConfirm::=SEQUENCE{
	serviceRef	INTEGER,
	servicePort	PortNumber
	}

NFfntpCommRequest::=SEQUENCE{
	commRef	INTEGER(0..255),
	servicePort	PortNumber,
	remotePort	PortNumber,
	linkID	Link-ID,
	data	ITSfpdu,
	controlField	FntpOptions -- some options do not apply
	}

NFfntpCommConfirm::=SEQUENCE{
	commRef	INTEGER(0..255),
	servicePort	PortNumber,
	errStatus	FNTPerrorStatus
	}

FNTPerrorStatus::=INTEGER{
	success	(0),
	unspecFailure	(1),
	ciBusyTX	(2),
	noForwardInfo	(254),
	ciSuspend	(255)
	} (0..255)

NFfntpCommIndication::=SEQUENCE{
	servicePort	PortNumber,
	remotePort	PortNumber,
	linkID	Link-ID,
	data	ITSfpdu,
	priority	UserPriority
	}

-- General types --

PortNumber::=CHOICE{
	portShort	INTEGER(0..127),
	portLong	INTEGER(0..32767)
	}

ITSfpdu::= OCTET STRING (SIZE(0..65535)) -- as defined by application. Details not known to FNTP

-- Values

noFNTPfwtEntries	INTEGER::=65535

END