Based on a query in MQTT Google group, a query was posted with a requirement that the server should not publish message to a subscriber if messages are published by the same client-id and subscribed by the using the same client-id for the same topic. In this case a client connection may both publish and subscribe to a topic and the subscriber should inhibit the delivery of messages published by its own connection. This feature is available in JMS and a subscriber can inhibit to receive publication by using the noLocal flag during subscription.
This feature is also needed to enable bridging and making proxy subscription between servers so as to stop messages going round in loops.
I would like propose to add a element in SUBSCRIBE Control packet for individual subscriptions to make a choice on noLocal parameter. This field could be shared in the same byte as for requstedQos.