nasa / cFE

The Core Flight System (cFS) Core Flight Executive (cFE)
Apache License 2.0
413 stars 204 forks source link

CCSDS APID Name Space Expansion #206

Closed skliper closed 5 years ago

skliper commented 5 years ago

Expand the cFS Software Bus topic name space using extensions to the CCSDS Space Packet secondary header. Within the cFS architecture the CCSDS Primary Header APID is used as a unique system-wide topic identifier. This ticket is intended to address several issue with the current CCSDS Space Packet APID topic name space 1) Difficulties allocating and managing the limited number of APIDs during development 2) Insufficient number of APIDs for large systems 3) APID allocations for formation flying, distributed systems, multi-core, and partitioned systems 4) Loss of spacecraft and subsystem identifying information as packets traverse the network stacks

Implementation of the extended header will include a compile time directive to include or disable extended header support. See attached file for header format.

skliper commented 5 years ago

Imported from trac issue 175. Created by jwilmot on 2016-10-24T13:48:13, last modified: 2019-03-05T14:58:28

skliper commented 5 years ago

Trac comment by glimes on 2016-11-08 14:17:08:

Current crop of cfe-next are all going into CFE 6.6

skliper commented 5 years ago

Trac comment by cdknight on 2017-02-28 14:49:29:

Consider making functions like CFE_SB_GetMsgId into #define macros.

For example, the CFE_SB_GetMsgId function only does one thing--it calls CCSDS_RD_SID (which is a macro itself.)

This will improve performance of these calls (effectively in-lining, although some optimizers might be inlining this code anyways.)

Disadvantage is it makes debugging a touch trickier, as you can't put a breakpoint on a macro.

(This might be better as a separate ticket, as the current smaller APID-space could benefit from this as well.)

skliper commented 5 years ago

Trac comment by jwilmot on 2017-03-20 13:42:18:

Pushed commit [changeset:96270e9] ready for CCB review

skliper commented 5 years ago

Trac comment by cdknight on 2017-03-21 15:17:01:

I suggest we have a compile-time option to allow for a hash for the routing table. I think this could be considered independently of this ticket, so I've created another ticket #217 but thought I'd mention it here.

skliper commented 5 years ago

Trac comment by mdeschu on 2017-10-12 16:26:06:

Commit [changeset:07374ea] - Original Implementation - Rebased on 10/10 development branch at [changeset:19ff113]

Action Items Commit [changeset:00cf20d] - AI 1,6,19,20,21 Commit [changeset:ac5baec] - AI 2 Commit [changeset:a12a5d8] - AI 3 Commit [changeset:e7e7f0b] - AI 5 Commit [changeset:85a62db] - AI 7 Commit [changeset:124691e] - AI 9, 13 Commit [changeset:d880345] - AI 10, 11 Commit [changeset:035040a] - AI 12 Commit [changeset:63af1d0] - AI 14 Commit [changeset:05956a4] - AI 17 Commit [changeset:72986ec] - AI 18 Commit [changeset:a2d0698] - AI 23 and 24 Commit [changeset:393d15d] - AI 22

Issues found during unit testing Commit [changeset:b003bae] Cleanup Commit [changeset:a08f91c]

skliper commented 5 years ago

Trac comment by mdeschu on 2017-10-13 12:50:16:

Changesets related to unit tests Commit [changeset:f4b36cc]

skliper commented 5 years ago

Trac comment by mdeschu on 2017-10-20 10:06:07:

Remaining action item changes and squashed everything into a single commit on mjd-ic-trac175-merge branch.

Commit [changeset:b68417f]

skliper commented 5 years ago

Trac comment by glimes on 2017-10-22 11:06:00:

Mike D's merge is now in testing. This requires coordinated changes outside the CFE project:

With those updates in place, we have GREEN status from Bamboo.

skliper commented 5 years ago

Trac comment by mdeschu on 2017-10-23 18:32:41:

Follow-up cleanup commit [changeset:21dcfbb] submitted for review

skliper commented 5 years ago

Trac comment by mdeschu on 2017-10-23 18:33:53:

Replying to [comment:6 mdeschu]:

Commit [changeset:07374ea] - Original Implementation - Rebased on 10/10 development branch at [changeset:19ff113]

Action Items Commit [changeset:00cf20d] - AI 1,6,19,20,21 Commit [changeset:ac5baec] - AI 2 Commit [changeset:a12a5d8] - AI 3 Commit [changeset:e7e7f0b] - AI 5 Commit [changeset:85a62db] - AI 7 Commit [changeset:124691e] - AI 9, 13 Commit [changeset:d880345] - AI 10, 11 Commit [changeset:035040a] - AI 12 Commit [changeset:63af1d0] - AI 14 Commit [changeset:05956a4] - AI 17 Commit [changeset:72986ec] - AI 18 Commit [changeset:a2d0698] - AI 23 and 24 Commit [changeset:393d15d] - AI 22

Issues found during unit testing Commit [changeset:b003bae] Cleanup Commit [changeset:a08f91c]

Squashed above changes into [changeset:b68417f]

skliper commented 5 years ago

Trac comment by jphickey on 2017-10-24 08:49:05:

I have pushed a branch trac-175-proposed-id-key-fixes commit [changeset:a5b0b4d] which addresses the mismatches between msgkey and msgid among other things.

Please review so we can discuss this today.

skliper commented 5 years ago

Trac comment by sstrege on 2017-10-24 12:50:48:

Mike's follow up clean-up commit addressing the new actions assigned at the 10/20/17 CCB is ready for review: [changeset:21dcfbb]

skliper commented 5 years ago

Trac comment by jphickey on 2017-10-24 13:00:31:

Another strongly recommended commit to add on:

[changeset:f94c96b] branch trac-175-apidq-cleanup

With the way the APIDQ header was defined, it was repeated in both the primary and secondary headers. This is incorrect. The other issue with this is that code which instantiated their headers based on sizeof(CFE_SB_CmdPkt_t) would not actually allocate enough space for the APIDQ header.

This cleans it up and addresses the issues by including the APIDQ header within in CFE_SB_Msg_t.

skliper commented 5 years ago

Trac comment by jphickey on 2017-10-24 13:24:51:

Updated commits:

[changeset:c00a11a] First set

skliper commented 5 years ago

Trac comment by glimes on 2017-10-24 14:14:54:

Commit [changeset:f94c96b] just went through a quick Bamboo test. Looks good, aside from a cppcheck style note that should be in Quarantine.

{{{ cfe/fsw/cfe-core/src/sb/cfe_sb_priv.h:424: style: Redundant condition: If MsgId <= 8191, the comparison MsgId != 65535 is always true. }}}

skliper commented 5 years ago

Trac comment by jphickey on 2017-10-24 14:16:12:

Second set: [changeset:76b6d2a4]

skliper commented 5 years ago

Trac comment by glimes on 2017-10-24 14:17:17:

Triggered Bamboo testing for the second set.

skliper commented 5 years ago

Trac comment by glimes on 2017-10-24 14:20:45:

Triggered bamboo for second set with mjd ccsds v2 config

skliper commented 5 years ago

Trac comment by mdeschu on 2017-10-24 15:21:43:

Modified changeset of 21dcfbb is now [changeset:a6e3d70]

Moved function header CFE_SB_MsgHdrSize comment along with function prototype

skliper commented 5 years ago

Trac comment by glimes on 2017-10-27 14:33:28:

integrated 2017-10-25

skliper commented 5 years ago

Trac comment by jhageman on 2019-03-05 14:58:28:

Milestone renamed