3 CHƯƠNG II I: ĐIỀU KHIỂN PHIÊN TRONG IMS
3.2.5 Hội thoại (dialog)
Ở trên chúng ta đã biết đến transaction, đó là một transaction bao gồm bản tin INVITE và các bản tin phải hồi, một transaction khác bao gồm bản tin BYE và thông tin phản hồi (200 OK) khi một phiên làm việc kết thúc. Nhưng
cùng thuộc một hội thoại (dialog). Một dialog đặc trưng cho mối quan hệ SIP ngang hàng giữa hai user agent. Một dialog tồn tại trong một khoảng thời gian và nó là một khái niệm rất quan trọng đối với các user agent. Dialog thích hợp dễ dàng với việc sắp xếp tuần tự và định tuyến cho các bản tin SIP giữa các thiết bị cuối.
Dialog được xác định bằng call-id, thẻ from và thẻ to. Các bản tin mà có cùng 3 identifier trên thì thuộc về cùng một dialog. Trường điều khiển Cseq được dùng để sắp xếp thứ tự các bản tin trong cùng một dialog. Chỉ số Cseq phải được tăng tuần tự từng đơn vị cho mỗi bản tin trong một dialog, nếu không các user agent sẽ xử lý nó như là các yêu cầu không được sắp xếp hoặc là sẽ gửi lại bản tin đó. Trong thực tế, số Cseq xác định một transaction bên trong một dialog bởi chúng ta đã nói ở trên là các yêu cầu và các thông tin được phản hồi của nó được gọi là một transaction. Điều đó có nghĩa là chỉ có duy nhất một transaction hoạt động tại một thời điểm trong dialog. Do đó cũng có thể gọi dialog là một tập tuần tự của các transaction. Hình vẽ dưới đây minh họa các bản tin truyền đi bên trong một dialog.
Một vài bản tin dùng để thiết lập ra một dialog. Nó cho phép biểu diễn rõ ràng, chi tiết mối quan hệ giữa các bản tin và còn dùng để gửi bản tin mà không liên quan đến các bản tin khác đến các bản tin nằm ngoài một dialog. Điều đó được thực hiện một cách dễ dàng bởi user agent không lưu trạng thái của dialog.
Lấy ví dụ, bản tin INVITE thiết lập một dialog, bởi sau đó sẽ có bản tin yêu cầu BYE dùng để kết thúc dialog tạo ra bởi bản tin INVITE ở trên. Bản tin BYE này được gửi bên trong dialog được thiết lập bởi bản tin INVITE.
Nhưng nếu user agent gửi một bản tin yêu cầu message, đó là một yêu cầu không thiết lập bất cứ dialog nào. Khi đó bất cứ các bản tin theo sau bản tin đó (kể cả bản tin message) cũng được gửi đi một cách độc lập với bản tin trước đó.