Qos0
Изпращачът изпраща съобщението само веднъж, без повторения, а брокерът не връща потвърждение. В случая на Qos0 брокерът може да не получи съобщението, както е показано на следващата фигура:
Qos1
Изпращачът изпраща съобщение поне веднъж, за да гарантира, че съобщението достига до брокера, и брокерът трябва да върне потвърдително съобщение PUBACK. В случая на Qos1 брокерът може да приема дублирани съобщения, както е показано на следващата фигура:
Qos2
Qos2 използва двустепенно потвърждение, за да гарантира, че съобщенията не се губят и не се дублират. В случая с Qos2, брокерът със сигурност ще получи съобщението само веднъж, както е показано на следващата фигура:
Qos1 срещу Qos2
Qos2 ще има много допълнителни разходи в сравнение с Qos1, защото брокерът има две допълнителни действия:
- Дедупликация. За да се гарантира, че съобщенията не се дублират, брокерът трябва да извърши дедупликация;
- Уверете се, че отговорът PUBREC достига до клиента. Брокерът трябва да изчака отговора на клиента на съобщението PUBREC в PUBREL и едва след получаване на потвърждение от клиента може да предаде съобщението на абоната.
|