code: public void processAckExpected(long stamp,
                                     int priority,
                                     Reliability reliability,
                                     SIBUuid12 streamID)
                      throws SIResourceException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(tc, "processAckExpected",
                          new Object[] { Long.valueOf(stamp), Integer.valueOf(priority), reliability, streamID });
  
          // NOTE: pass false here (meaning don't create a new streamSet) because we should only get 
          // an AckExpected (under v1 anyway) if we've already received data of some sort
          // (and hence already created the stream).
          StreamSet streamSet = getStreamSet(streamID, false);
  
          if (streamSet != null)
          {
              InternalOutputStream internalOutputStream = (InternalOutputStream) streamSet.getStream(priority, reliability);
  
              // There is no stream for BestEffort non persistent messages         
              if (reliability.compareTo(Reliability.BEST_EFFORT_NONPERSISTENT) > 0)
              {
                  // We do need to write the message to the stream    
                  if (internalOutputStream != null)
                  {
                      internalOutputStream.processAckExpected(stamp);
                  }
                  else
                  {
                      // We didn't expect an AckExpected for this stream so throw it away but write an entry 
                      // to the trace log indicating that it happened
                      if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                          SibTr.debug(tc, "Unexpected AckExpected message for streamID " + streamID
                                          + " Reliability " + reliability + " priority " + priority);
                  }
              }
          }
          else
          {
              // We didn't expect an AckExpected for this streamID so throw it away but write an entry  
              // to the trace log indicating that it happened
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(tc, "AckExpected message for unknown streamID " + streamID);
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "processAckExpected");
      }
docs: needs to send an AckExpected downstream.