Tổng quan về giao thức SIP
Giới thiệu về SIP
Giao thức khởi tạo phiên SIP (Session Initiation Protocol) là một giao thức quan trọng trong lớp ứng dụng, được sử dụng để khởi tạo, thay đổi và giải phóng các phiên kết nối đa phương tiện giữa người sử dụng.
Giao thức khởi tạo phiên (Session Initiation Protocol - SIP) là một giao thức báo hiệu quan trọng trong việc thiết lập các phiên giao tiếp trên mạng IP SIP cho phép thực hiện các cuộc gọi điện thoại hai chiều, gửi tin nhắn, và tổ chức các hội nghị truyền thông đa chiều Mục tiêu chính của SIP là cung cấp một phương tiện đơn giản và nhẹ nhàng để khởi tạo và kết thúc các kết nối truyền thông tương tác thời gian thực, phục vụ cho thoại, hội thảo video, chat, trò chơi và chia sẻ ứng dụng.
SIP là một giao thức thuộc lớp ứng dụng trong mô hình TCP/IP
1.2 Các chức năng của SIP
Việc phát triển các mô hình ứng dụng và dịch vụ dựa trên Web được kích thích, tạo điều kiện thuận lợi cho các nhà cung cấp dịch vụ nhờ vào nguồn tài nguyên phong phú và các công cụ sẵn có Điều này cũng mang lại lợi ích cho người dùng, những người đã quen thuộc với việc sử dụng Web.
Hình 1.1: Mô hình giao thức SIP
Khả năng mở rộng của giao thức SIP là một trong những ưu điểm nổi bật, nhờ vào tính phân bố cao của nó Khác với các giao thức báo hiệu truyền thống như báo hiệu số 7 (SS7) có cấu trúc xử lý tập trung, SIP cho phép các phần tử được phân tán đến tận biên của mạng và được nhúng vào các điểm đầu cuối Điều này giúp tối ưu hóa hiệu suất và linh hoạt trong việc triển khai mạng.
SIP, được phát triển bởi IETF, có khả năng phổ cập cao nhờ vào việc kế thừa các đặc điểm của hai giao thức HTTP và SMTP Được thiết kế như một giao thức độc lập ứng dụng, SIP linh hoạt và có thể áp dụng cho nhiều môi trường khác nhau, cung cấp các dịch vụ đa dạng dựa trên các nguyên tắc từ môi trường IP.
1.3 Các chức năng điều khiển của giao thức khởi tạo phiên SIP
SIP hỗ trợ 5 chức năng điều khiển phiên sau:
• Định vị người dùng (User location): xác định hệ thống đầu cuối được sử dụng trong truyền thông
• Các khả năng người dùng (User capabilities): xác định phương tiện và các thông số phương tiện được sử dụng
• Tính khả dụng người dùng (User Availability): xác định sự sẵn sàng của bên được gọi để tiến hành truyền thông
• Thiết lập cuộc gọi (Call setup): thiết lập các thông số của cuộc gọi tại cả hai phía bị gọi và chủ gọi
• Xử lý cuộc gọi (Call handling): bao gồm truyền tải và kết thúc cuộc gọi
1.4 Một số khái niệm trong SIP
• Cuộc gọi (Call): Một cuộc gọi bao gồm tất cả các thành viên được mời bởi một tài nguyên chung
Client là một ứng dụng gửi các yêu cầu SIP (Session Initiation Protocol) và có thể ảnh hưởng trực tiếp hoặc gián tiếp đến người sử dụng Client thường được tích hợp trong các Proxy và User Agent (UA).
Server là một ứng dụng có chức năng nhận và xử lý các yêu cầu hợp lệ từ dịch vụ, sau đó gửi lại phản hồi tương ứng Các loại server bao gồm Proxy, Redirect và UAS.
Đáp ứng kết thúc (Final Respond) là phản hồi cuối cùng trong một phiên giao dịch SIP Các mã phản hồi được phân loại như sau: 1xx là các bản tin chung, 2xx chỉ ra rằng yêu cầu đã được nhận thành công, 3xx dùng để chuyển địa chỉ, 4xx thể hiện yêu cầu không được đáp ứng hoặc có cú pháp sai, 5xx chỉ ra sự cố của máy chủ, và 6xx phản ánh sự cố toàn mạng.
Lời mời (INVITATION) là yêu cầu từ User hoặc Server để tham gia vào một phiên hội thoại Một lời mời hoàn chỉnh bao gồm yêu cầu INVITE ngay sau yêu cầu ACK (xác nhận).
• ACK: bản in này khẳng định client đã nhận được bản tin trả lời bản tin INVITE
• BYE: Bắt đầu và kết thúc một cuộc gọi
• CANCEL: hủy yêu cầu đang nằm trong hàng đợi
• REGISTER: đầu cuối SIP sử dụng bản tin này để đăng ký với REGISTRAR SERVER
• OPTIONS: sử dụng để xác định năng lực của server
Theo đặc tả SDP (giao thức mô tả phiên), phiên đa truyền thông được định nghĩa là tập hợp các người gửi và nhận, cùng với dòng dữ liệu được truyền từ nơi gửi đến nơi nhận.
Bản tin trong giao thức SIP chứa dữ liệu được gửi giữa các phần tử, bao gồm hai loại chính: bản tin yêu cầu (Request) và bản tin đáp ứng (Response).
• Yêu cầu (Request): là một bản tin được gửi từ client đến server và yêu cầu hoạt động
• Đáp ứng (Response): là bản tin được gửi từ server đến client chỉ ra trạng thái của yêu cầu gửi từ client đến server
• Proxy, Proxy server: hoạt động như một phần tử trung gian, đóng vai trò như Server,Client.
Các thành phần của SIP
Các thành phần chính của một hệ thống SIP bao gồm các thành phần sau: Đầu cuối SIP (UAC/UAS); Proxy server; Location server; Redirect server; Registrar server
Hình 1.2: Cấu trúc của SIP
2.1 User Agent: là thiết bị đầu cuối trong mạng SIP, nó có thể là một máy điện thoại SIP hay một máy tính chạy phần mềm đầu cuối SIP UA có thể khởi tạo, thay đổi hay giải phóng cuộc gọi Trong đó phân biệt hai loại UA: UAC (User Agent Client) và UAS (User Agent Server) UAC là một thực thể thực hiện việc khởi tạo một cuộc gọi còn UAS là một thực thể thực hiện việc nhận cuộc gọi Nhưng cả UAC và UAS đều có thể giải phóng cuộc gọi
2.2 Proxy Server :máy chủ ủy quyền (Proxy Server): hoạt động như một phần tử trung gian,cũng như một client và server nhằm mục đích tạo ra các yêu cầu thay mặt cho các client khác
2.3 Location Server: là phần mềm định vị thuê bao, cung cấp thông tin về những vị trí có thể của phía bị gọi cho các phần mềm Proxy Server và Redirect Server
2.4 Redirect Server: là phần mềm nhận yêu cầu SIP và chuyển đổi địa chỉ SIP sang một địa chỉ khác và gửi lại đầu cuối
2.5 Register Server: là phần mềm nhận các yêu cầu đăng kí, trong nhiều trường hợp máy chủ đảm nhiệm luôn chức năng an ninh như xác nhận người dung
Địa chỉ SIP
Địa chỉ SIP thường là URI theo giản đồ SIP, được sử dụng trong một số trường header như To, From, và Contact để xác định đích SIP URI bao gồm bản đồ SIP với dấu ':' theo sau là địa chỉ có định dạng name@domain hoặc địa chỉ IPv4 Tiếp theo là dấu ':' và số port, sau đó là dấu ';', với các thông số của URI được phân cách bằng dấu ';'.
Ví dụ: sip:tieuluanVT@transform.org: 5060; transport=udp; method=INVITE; ttl=1;maddr$0.101.102.103
Số cổng 5060 dành cho SIP, với SIP URI nếu như không có cổng, thì nó giả định là 5060, SIPs URI cổng được giả định là 5061
• Thông số truyền tải “transport” là UDP được sử dụng, các thông số transport khác có thể là TCP,TLS
Thông số Method chỉ ra các phương thức được sử dụng trong giao tiếp, với giá trị mặc định là INVITE Mặc dù thông số này không xuất hiện trong các trường header và from, nhưng nó có thể được sử dụng trong header contact để thực hiện việc đăng ký.
Thông số TTL (time to live) chỉ áp dụng khi thông số maddr chứa địa chỉ multicast và thông số truyền tải sử dụng UDP, với giá trị mặc định là 1.
• Thông số maddr chứa các địa chỉ multicast khi mà các yêu cầu có thể chuyển hướng.
Bản tin SIP
SIP là giao thức văn bản sử dụng bộ ký tự UTF-8, được chia thành hai loại chính: yêu cầu và đáp ứng Bản tin yêu cầu bao gồm 6 loại, được xác định trong trường thông số chỉ thị (Method) Trong khi đó, bản tin đáp ứng được phân loại theo lớp với thông số mã trạng thái (Status Code), cho phép người dùng xem các loại bản tin khác nhau.
4.1 Cấu trúc bản tin SIP
Bản tin SIP có ba phần: startline, header và body
Mỗi bản tin SIP bắt đầu bằng một Start Line, trong đó chỉ rõ loại bản tin (bao gồm phương thức trong các yêu cầu và mã đáp ứng trong các bản tin đáp ứng) cùng phiên bản của giao thức Start Line có thể là Request-Line trong các yêu cầu hoặc Status-Line trong các bản tin đáp ứng.
Các trường Header của SIP được sử dụng để vận chuyển và thay đổi ý nghĩa của bản tin, tương tự như các trường tiêu đề trong HTTP về cú pháp và ngữ nghĩa Tiêu đề bản tin SIP bao gồm bốn loại chính: tiêu đề chung, tiêu đề yêu cầu, tiêu đề đáp ứng và tiêu đề thực thể.
Phần thân bản tin được sử dụng để mô tả phiên khởi tạo, như trong phiên multimedia với mã hóa audio và video, cùng tốc độ lấy mẫu Nó cũng có thể chứa dữ liệu dưới dạng text hoặc nhị phân liên quan đến phiên đó Thân bản tin có mặt trong cả bản tin yêu cầu và đáp ứng Các loại thân bản tin bao gồm giao thức mô tả phiên SDP, mở rộng thư điện tử đa mục đích MIME, và các phần định nghĩa trong IETF.
Hình 1.3: Cấu trúc bản tin của SIP
4.2 Các bản tin yêu cầu
Các bản tin SIP được phân loại dựa trên dòng tiêu đề (Start Line), trong đó các bản tin yêu cầu bắt đầu bằng một dòng yêu cầu Dòng này bao gồm tên phương thức (Method), Request-URI và phiên bản giao thức, với các thành phần được ngăn cách bằng ký tự trống.
Nhãn tag là một số ngẫu nhiên nhỏ hơn 2^32, được thêm vào header To và From để xác định tính duy nhất của đoạn thoại Trong INVITE ban đầu, header To không chứa tag Theo RFC 3261, người gọi có thể đưa ra nhận xét trong Header From, trong khi theo RFC 2543, một UA thông thường không hoạt động như vậy mà đó là phần tùy chọn Việc gửi và nhận một đáp ứng có chứa tag trong header From được thực hiện ngay sau đó Một nhãn tag không bao giờ được sao chép qua cuộc gọi, và bất kỳ đáp ứng nào khởi tạo bởi proxy sẽ được thêm vào một nhãn tag Bản tin ACK, được khởi tạo bởi UA hoặc proxy, sẽ luôn sao chép nhãn tag của header From từ đáp ứng vào yêu cầu ACK.
Nếu UAC nhận được một phản hồi với các nhãn tác khác nhau, điều này cho thấy phản hồi đến từ UAS khác, dẫn đến việc yêu cầu INVITE đã bị rẽ nhánh Cách UAC xử lý tình huống này có thể bao gồm việc thiết lập các phiên riêng biệt cho mỗi phản hồi từ UAS Đoạn thoại sẽ có các trường header như From, Call-ID và CSeq giống nhau, nhưng nhãn tác trong header To sẽ khác nhau Lưu ý rằng nhãn tác là một phần của header và luôn nằm ngoài dấu “”.
INVITE Khởi tạo một phiên ( bắt đầu thiết lập cuộc gọi bằng cách gửi bản tin mời đầu cuối khác tham gia)
ACK Bản tin này khẳng định máy chạm đã nhận được bản tin trả lời bản tin INVITE
BY Yêu cầu kết thúc phiên CANCEL Hủy yêu cầu đang nằm trong hàng đợi
Đầu cuối SIP sử dụng bản tin REGISTER để thực hiện đăng ký với máy chủ đăng ký Bản tin OPTIONS được sử dụng nhằm xác định khả năng của máy chủ Trong khi đó, bản tin INFO cho phép tải về các thông tin như âm báo DTMF.
Bản tin đáp ứng được phân biệt với bản tin yêu cầu thông qua một dòng trạng thái (Status line) ở đầu dòng khởi đầu Dòng trạng thái này bao gồm tên phiên bản giao thức SIP (SIP-Version), mã dòng trạng thái (Status-Code) và cụm văn bản giải thích ý nghĩa của mã Các phần trong dòng trạng thái được ngăn cách bởi ký tự trống SP, và ở cuối dòng, ký tự xuống dòng CRLF được sử dụng để tách biệt nó với dòng tiếp theo trong bản tin.
Khuôn dạng bản tin như sau:
Bản tin đáp ứng=dòng trạng thái*header bản tin CRLF[thân bản tin]
Mã trạng thái là một mã kết quả gồm 3 chữ số nguyên, phản ánh kết quả của nỗ lực hiểu và đáp ứng yêu cầu Chữ số đầu tiên phân loại phản hồi, trong khi hai chữ số sau không có vai trò phân loại Bản SIP/2.0 phân loại phản hồi thành 6 lớp khác nhau.
1xx: Information Các bản tin chung
3xx: Redirect Chuyển địa chỉ
4xx: Client-error Yêu cầu không được đáp ứng
5xx: Server-error Sự cố của máy chủ
6xx: Globa-failure Sự cố toàn mạng
Ứng dụng của SIP trong IMS
Tổng quan về IMS
IMS (IP Multimedia Subsystem) là một thành phần quan trọng trong kiến trúc mạng thế hệ kế tiếp (NGN), được phát triển bởi các tổ chức như 3GPP, 3GPP2 và IETF Nó hỗ trợ truyền thông đa phương tiện hội tụ, cho phép tích hợp các tín hiệu thoại, video, âm thanh với dữ liệu Đồng thời, IMS cũng tạo điều kiện cho sự hội tụ truy cập giữa các mạng 2G, 3G và mạng không dây, nâng cao trải nghiệm người dùng trong việc sử dụng dịch vụ truyền thông.
IMS là một kiến trúc mạng thiết kế để thuận tiện trong việc phát triển và phân phối dịch vụ đa phương tiện đến người dùng, không phụ thuộc vào loại mạng truy cập mà họ đang sử dụng.
IMS hỗ trợ đa dạng các phương thức truy nhập, bao gồm GSM, UMTS, và CDMA2000, cùng với các kết nối băng rộng hữu tuyến như xDSL, cáp quang và cáp truyền hình Ngoài ra, IMS còn cung cấp truy nhập vô tuyến băng rộng thông qua WLAN và WiMAX.
IMS hỗ trợ đa dạng dịch vụ như nhắn tin tức thời, hội nghị truyền hình và video theo yêu cầu Hệ thống này còn cung cấp cơ chế xác thực và chuyển đổi giữa các mạng cho khách hàng di động Chính vì vậy, IMS được các tổ chức tiêu chuẩn như ITU và ETSI lựa chọn làm nền tảng cho mạng hội tụ.
Hình 2.1 : Kiến trúc IMS hỗ trợ sự hội tụ thiết bị truyền thông
Với việc nghiên cứu và phát triển IMS, các yêu cầu cơ bản về cấu trúc của một hệ thống IMS đã được đặt ra gồm:
• Hỗ trợ các phiên truyền thông đa phương tiện
• Kết nối IP cho các thiết bị di động trên cả vùng mạng nhà và mạng khách
• Đảm bảo chất lượng thông tin cho các phiên đa phương tiện
• Hỗ trợ các chính sách sử dụng đúng tài nguyên yêu cầu
• Đảm bảo an toàn thông tin trong các môi trường kết nối
• Hỗ trợ chính sách tính cước
• Thực hiện chuyển vùng linh hoạt, phối hợp kết nối với các mạng khác
• Ứng dụng cơ chế điều khiển dịch vụ linh hoạt
• Phân lớp cấu trúc và đa dạng hình thức truy nhập
Kiến trúc IMS được phân thành 3 lớp chức năng:
• Lớp dịch vụ, ứng dụng (Application plane)
• Lớp điều khiển (Control plane) hay là lớp IMS, IMS lõi
• Lớp truyền tải và người dùng (Transport & User plane)
Hình 2.2: Kiến trúc phân lớp trong IMS
Hình 2.3: Kiến trúc IMS theo 3GPP
Lớp dịch vụ: bao gồm các máy chủ ứng dụng AS (Application Server) và các máy chủ thuê bao thường chú HSS (Home Subscriber Server)
Lớp điều khiển: bao gồm nhiều hệ thống con trong đó có hệ thống IMS lõi
Lớp truyền tải: bao gồm thiết bị người dùng UE (User Equipment), các mạng truy nhập kết nối vào mạng lõi IP
Máy chủ ứng ụng ( Application Serve – AS)
AS là một thành phần quan trọng trong SIP, có nhiệm vụ tiếp nhận và xử lý dịch vụ, hoạt động dưới các chế độ SIP Proxy, SIP UA hoặc SIP B2BUA tùy thuộc vào dịch vụ cụ thể Các AS kết nối với S-CFCS thông qua giao tiếp SIP và bao gồm ba loại chính: SIP AS, OSA-SCS, và IM-SSF Các máy chủ OSA-SCS và IM-SSF đóng vai trò cầu nối giữa IMS với OSA và gsmSCF.
Các máy chủ có khả năng kết nối với HSS để tải về hoặc gửi thông tin dữ liệu khách hàng SIP AS và OSA-SCS giao tiếp với HSS qua giao thức Diameter, trong khi IM-SSF sử dụng giao thức MAP (Mobile Application Part) để thực hiện giao tiếp.
AS có thể được thiết lập trong mạng nội bộ hoặc bên ngoài, tuy nhiên, điều này cần sự xác nhận từ nhà điều hành mạng nội bộ về dịch vụ Khi AS được đặt bên ngoài mạng nội bộ, nó sẽ không tương tác với HSS Các AS được mô tả chi tiết như sau:
Hình 2.4: Các máy chủ ứng dụng IMS
SIP AS là một hệ thống thụ động có chức năng tiếp nhận và xử lý dịch vụ đa phương tiện IP dựa trên nền tảng SIP Máy chủ tiềm trữ phục vụ OSA (OSA-SCS - Open Service Access - Service Capability Server) cung cấp giao tiếp với máy chủ ứng dụng truy cập dịch vụ mở (OSA), mang lại tất cả các tính năng của OSA, đặc biệt là khả năng truy cập bảo mật từ các mạng bên ngoài OSA-SCS giao tiếp với máy chủ ứng dụng OSA thông qua giao diện lập trình ứng dụng API (Application Programming Interface).
Chức năng chuyển mạch đa dịch vụ IP, hay IM-SSF (IP Multimedia Service Switching Function), là máy chủ ứng dụng đặc biệt giúp IMS tái sử dụng dịch vụ logic cao cấp từ các ứng dụng CAMEL (Customized Applications for Mobile network Enhanced Logic) đã phát triển trong hệ thống GSM IM-SSF cho phép GMSSCF (GSM Service Control Function) điều khiển các phiên IMS, và thực hiện giao tiếp với GMSSCF qua giao thức CAP (CAMEL Application Part).
Máy chủ quản lý cơ sở dữ liệu HSS (Home Subscriber Server) và SLF (Subscriber Location Function)
Máy chủ quản lý thuê bao thường trú HSS (Home Subscriber Server) là trung tâm lưu trữ thông tin người dùng, được phát triển từ HLR (Home Location Register) HSS đóng vai trò quan trọng trong việc quản lý và cung cấp dữ liệu cho các dịch vụ viễn thông, đảm bảo sự kết nối và trải nghiệm người dùng tốt nhất.
Hệ thống GSM bao gồm HSS, một cơ sở dữ liệu lưu trữ thông tin của tất cả các thuê bao khách hàng Dữ liệu trong HSS bao gồm thông tin vị trí, thông tin bảo mật như thông tin xác thực và quyền truy cập, hồ sơ thuê bao với các dịch vụ mà người dùng đã đăng ký, cùng với S-CSCF được phân bổ cho từng thuê bao.
Chức năng của lõi IMS là quản lý việc tạo lập phiên bản liên lạc và dịch vụ đa phương tiện Các chức năng của nó bảo gồm:
1.4.1 Chức năng điều khiển phiên gọi (CSCF)
CSCF (Chức năng Kiểm soát Phiên Gọi) là thành phần quan trọng trong hệ thống IMS, chịu trách nhiệm xử lý các bản tin báo hiệu SIP CSCF thực hiện các nhiệm vụ thiết lập, theo dõi, hỗ trợ và giải phóng các phiên đa phương tiện, đồng thời quản lý các tương tác dịch vụ của người dùng Tùy thuộc vào chức năng mà nhà khai thác cung cấp, CSCF được chia thành ba loại khác nhau.
• CSCF ủy quyền – P-CSCF (Proxy-CSCF)
• CSCF tham vẫn - I-CSCF (Interrogating-CSCF)
• CSCF phục vụ - S-CSCF (Serving-CSCF)
Hình 2.5 Kiến trúc CSCF a) P-CSCF (Proxy – CSCF)
Proxy-CSCF (P-CSCF) là một proxy SIP, có khả năng nhận và xử lý các yêu cầu dịch vụ, đồng thời chuyển tiếp chúng đến các bộ phận khác trong hệ thống IMS Là điểm kết nối đầu tiên giữa các đầu cuối IMS và mạng IMS, P-CSCF đóng vai trò quan trọng trong việc thiết lập liên lạc giữa hạ tầng IMS và người dùng IMS/SIP.
Theo quan điểm từ SIP, P-CSCF là máy chủ proxy SIP outbound/inbound, nơi tất cả các yêu cầu khởi tạo phiên từ hoặc đến đầu cuối IMS đều phải đi qua P-CSCF chịu trách nhiệm chuyển tiếp các bản tin SIP yêu cầu và phản hồi tới hướng tương ứng Để kết nối với hệ thống IMS, người dùng cần đăng ký với P-CSCF trong mạng mà họ đang sử dụng Một P-CSCF sẽ được chỉ định cho mỗi đầu cuối IMS trong suốt quá trình đăng ký và sẽ không thay đổi trong khoảng thời gian này.
Chức năng của P-CSCF bao gồm:
⁕ P-CSCF nằm trên đường truyền của tất cả các thông điệp báo hiệu trong hệ thống IMS Nó có khả năng kiểm tra bất kỳ thông điệp nào
P-CSCF đóng vai trò quan trọng trong việc chuyển tiếp các yêu cầu từ UE đến máy chủ SIP (S-CSCF) và gửi phản hồi từ máy chủ SIP trở lại UE Chức năng này giúp ngăn chặn việc khởi tạo các bản tin không đúng định dạng SIP từ các đầu cuối IMS.
Ứng dụng và hoạt động của SIP trong IMS
Giao thức khởi tạo phiên SIP được phát triển để thiết lập các phiên đa phương tiện giữa người dùng trên mạng IP, đồng thời hỗ trợ việc điều khiển cuộc gọi hiệu quả.
19 cũng hỗ trợ các chức năng như di động của người sử dụng và chuyển hướng cuộc gọi trong IMS gồm:
⁕ Báo hiệu SIP đầu cuối đầu cuối giữa các người sử dụng IP di động và cố định
⁕ Các Internet IP có thể cung cấp các dịch vụ giá trị ra tăng cho người sử dụng di động
⁕ SIP được thiết kế như một giao thức IP vì thế nó thích hợp tốt với các giao thức IP và các dịch vụ khác
⁕ SIP đơn giản và tương đối dễ thực hiện
Trong phần này, chúng ta sẽ trình bày quá trình hoạt động của SIP, được định nghĩa trong IMS UMTS, nhằm thực hiện việc đăng ký, thiết lập và giải phóng các phiên đa phương tiện.
2.1 Đặc tính kĩ thuật của SIP a Đặc tính kỹ thuật của SIP
+Tiêu đề riêng P-Header được bổ sung thêm cho mạng IMS để cung cấp các dịch vụ riêng biệt
+Chuẩn RFC 3329: thỏa thuận bảo mật giữa SIP user agent và next hop của nó để phòng tránh việc bị tấn công
+Chuẩn RFC 3313: giúp đảm bảo chất lượng dịch vụ QoS
+Chuẩn RFC 3312: dành trước tài nguyên trong IMS đề phòng thất bại trong quá trình thiết lập
+Giao thức mô tả phiên SDP mở rộng b Nhược điểm và khắc phục
Các giao diện vô tuyến và liên kết nối tiếp có tốc độ thấp thường gặp phải vấn đề về thời gian thiết lập cuộc gọi khi sử dụng SIP Để khắc phục tình trạng này, cơ chế nén báo hiệu đã được áp dụng nhằm giảm thiểu thời gian thiết lập cuộc gọi trên những liên kết có băng thông hạn chế.
Sigcomp được phát triển bởi IETF, và khi so sánh với SIP trong IETF, người chủ gọi sử dụng SIP yêu cầu một con đường cụ thể trong tiêu đề.
Trong hệ thống IMS, giao thức SIP sẽ được định tuyến qua P-CSCF, nơi các yêu cầu SIP sẽ được chuyển tiếp đến S-CSCF S-CSCF sử dụng cơ sở dữ liệu người dùng để kết nối với các AS SIP và xử lý các yêu cầu này Quyết định về việc liên kết với AS nào được S-CSCF đưa ra dựa trên các tiêu chí lọc ban đầu IFC trong cơ sở dữ liệu thuê bao.
User Agent gửi bản tin đăng ký không có thông tin đến Registra, nhưng nhận được phản hồi lỗi 401 do chưa được ủy quyền và thông báo 407 yêu cầu xác thực người dùng Sau đó, User Agent gửi bản tin đăng ký với thông tin người dùng đầy đủ đến Registra, và nhận được xác nhận đồng ý đăng ký từ Registra.
User Agent gửi yêu cầu đăng ký báo cáo sự kiện đến Server, và Server phản hồi với mã 200 OK để xác nhận yêu cầu thành công Sau đó, Server gửi thông báo về cho User Agent để cập nhật các sự kiện, và User Agent tiếp tục gửi phản hồi 200.
OK đến Server cho biết xác nhận thành công
Người gọi gửi bản tin Invite đến Proxy để mời kết nối, sau đó Proxy phản hồi bằng bản tin 100 Trying để thông báo rằng việc mở rộng tìm kiếm đang được thực hiện Quá trình này có thể mất thời gian, nên Proxy gửi bản tin này để thể hiện sự cố gắng Khi tìm được người nghe, Proxy gửi bản tin Invite đến Callee Người nghe phản hồi bằng bản tin 100 Trying, thông báo rằng họ đang cố gắng kết nối, sau đó gửi bản tin 180 Ringing đến Proxy, và Proxy tiếp tục chuyển bản tin này đến người gọi để thông báo rằng cuộc gọi đang đổ chuông Khi người nghe xác nhận cuộc gọi, bản tin 200 OK được gửi từ họ đến Proxy, và Proxy thông báo bản tin 200 OK đến người gọi, xác nhận rằng yêu cầu đã thành công.
Người gọi gửi trực tiếp bản tin ACK đến người nhận mà không cần thông qua Proxy để xác nhận kết nối thành công, sau đó, quá trình trao đổi thông tin giữa hai bên diễn ra.
22 d Ví dụ về báo hiệu đăng kí
10 Điều khiển dịch vụ qua AS
11 SIP: 200 OK Yêu cầu/Trả lời Yêu cầu
Ví dụ chỉ ra một thủ tục khởi tạo đăng ký:
Người dùng thực hiện chuyển mạng sang mạng khách thông qua việc gửi yêu cầu đăng ký SIP từ P-CSCF của mạng khách Do băng thông vô tuyến có hạn, tin nhắn sẽ được nén trước khi gửi từ người dùng và sau đó được giải nén tại P-CSCF.
1 Sau khi UE đã thu được một kênh tín hiệu thông qua mạng truy cập, nó có thể thực hiện việc đăng ký IM Để làm như vậy, các UE gửi luồng thông tin Đăng ký đến proxy (nhận dạng người dùng, địa chỉ IP UE).Khi nhận được các luồng thông tin đăng ký, P-CSCF sẽ kiểm tra "tên miền mạng khách" để khám phá địa chỉ mạng khách (tức là I-CSCF) Các proxy sẽ gửi các thông tin đăng ký tới I-CSCF (nhận dạng người dùng, địa chỉ IP UE)
2 I-CSCF sẽ gửi đáp ứng nhận thực người dùng (UAR) cho HSS (nhận dạng người dùng, P-CSCF định danh mạng) HSS kiểm tra xem người dùng đã đăng ký chưa HSS trả lại địa chỉ S-CSCF đang phục vụ khách hàng Nếu việc kiểm tra trong HSS không thành công thì bác bỏ nỗ lực đăng ký
3 I-CSCF sau đó sẽ gửi các thông tin đăng ký (nhận dạng người dùng, P-CSCF định danh mạng) đến địa chỉ S-CSCF
4 S-CSCF lấy vector nhận dạng từ HSS qua giao thức Diameter đáp ứng nhận thực đa phương tiện MAR
5 S-CSCF gửi đến người dùng bản tin SIP 401 mang số liệu hỏi đáp nhận thực
6 Sau khi tính toán nhận thực, người dùng gửi đến I-CSCF một bản tin đăng ký với đáp ứng hỏi đáp
7 I-CSCF gửi bản tin đáp ứng nhận thực người dùng đến HSS HSS xác nhận đáp ứng
8 Nếu đáp ứng đúng, I-CSCF sẽ gửi bản tin SIP đăng ký đến S-CSCF
9 S-CSCF tải xuống thuộc tính thuê bao từ HSS qua một đáp ứng yêu cầu chỉ định máy chủ SAR Diameter
10 S-CSCF có thể liên lạc với một Server ứng dụng để điều khiển dịch vụ như trong thuộc tính của thuê bao
11 S-CSCF sẽ trả lại bản tin SIP 200 OK đến I-CSCF, I-CSCF sẽ trả lại bản tin SIP 200
OK đến P-CSCF, P-CSCF sẽ trả lại bản tin SIP 200 OK đến UE để báo hiệu thành công
2.3 Thủ tục thiết lập phiên Đối với một phiên của phân hệ đa phương tiện IP (IMS), dòng phiên bao gồm 3 loại thủ tục:
⁕ Khởi xướng di động MO (Mobile Origination);
⁕ Kết cuối di động MT (Mobile Termination)
Hình 2.6 : Các thủ tục của phiên SIP
Các trường hợp đối với quá trình khởi xướng di động MO:
• MO#1: Khởi xướng từ thuê bao di động khi thuê bao đó đang di chuyển sang mạng khách khởi tạo việc thiết lập một phiên
• MO#2: Khởi xướng từ thuê bao di động khi thuê bao di động đó được nằm trong mạng nhà và khởi tạo việc thiết lập một phiên
• PSTN-O: Khởi xướng từ mạng PSTN
Các trường hợp đối với quá trình từ S-CSCF tới S-CSCF:
• S-S#1: S-CSCF đang phục vụ thuê bao chủ gọi và S-CSCF đang phục vụ thuê bao bị gọi nằm trong các mạng khác nhau
• S-S#2: S-CSCF đang phục vụ thuê bao chủ gọi và S-CSCF đang phục vụ thuê bao bị gọi nằm trong cùng mạng
• S-S#3: Khởi xướng phiên với kết cuối PSTN trong cùng mạng của S-CSCF
• S-S#4: Khởi xướng phiên với kết cuối PSTN trong một mạng khác với S-CSCF hiện tại
Các trường hợp đối với quá trình kết cuối MT:
• MT#1: Kết cuối di động khi thuê bao di động bị gọi đang di chuyển sang mạng khách
• MT#2: Kết cuối di động khi thuê bao di động bị gọi đang ở mạng nhà của nó
• MT#3: Đầu cuối bị gọi chưa được đăng ký các dịch vụ IMS, ví dụ, những người dùng ở các mạng di dộng cũ
• PSTN-T: Kết cuối tới một thuê bao PSTN
Trong phần này, chúng ta sẽ tập trung vào các cuộc gọi giữa hai thuê bao di động đã đăng ký IMS, không đề cập đến sự tương tác giữa IMS với PSTN hay mạng không dây cũ.
2.3.1 Thủ tục khởi xướng phiên
Chúng ta sẽ mô tả chi tiết quá trình MO#1, trong khi quá trình MO#2 sẽ không được trình bày do các thủ tục tương tự, chỉ khác ở việc P-CSCF và S-CSCF nằm trong cùng một mạng.
(1) UE gửi bản tin yêu cầu SIP INVITE, chứa trong giao thức đặc tả phiên SDP
(Session Discription Protocol), tới P-CSCF được chỉ định qua cơ chế tìm kiếm P- CSCF SDP có thể đại diện một hoặc nhiều phương tiện trong phiên đa phương tiện
P-CSCF ghi nhớ CSCF tiếp theo cho UE từ quá trình đăng ký Nếu nhà điều hành mạng không muốn ẩn cấu hình, tên và địa chỉ của S-CSCF sẽ được cung cấp trong quá trình đăng ký, và yêu cầu INVITE sẽ được chuyển trực tiếp tới S-CSCF Ngược lại, nếu nhà điều hành chọn ẩn cấu hình mạng, tên và địa chỉ của I-CSCF sẽ được cung cấp trong quá trình đăng ký, và yêu cầu INVITE sẽ được chuyển qua I-CSCF tới S-CSCF.