CHƯƠNG 1: TỔNG QUAN KIẾN TRÚC IMS Trong chương này ta sẽ tìm hiểu về vị trí và vai trò của phân hệ IMS trong kiến trúc mạng di động 3G, những yêu cầu khi xây dựng phân hệ IMS và tổng qua
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-
Họ và tên tác giả luận văn
Phạm Sỹ Ngọc Anh Tuấn
TÊN ĐỀ TÀI LUẬN VĂN
Phát triển khối chức năng kích hoạt và phối hợp dịch vụ cho kiến trúc IMS/SOA
LUẬN VĂN THẠC SĨ KHOA HỌC
Điện Tử Viễn Thông
NGƯỜI HƯỚNG DẪN KHOA HỌC :
Tiến sĩ Nguyễn Tài Hưng
Hà Nội – Năm 2012
Trang 2MỤC LỤC LỜI NÓI ĐẦU Error! Bookmark not defined Nội dung Error! Bookmark not defined
DANH SÁCH HÌNH VẼ 4
DANH SÁCH TỪ VIẾT TẮT 6
CHƯƠNG 1: TỔNG QUAN KIẾN TRÚC IMS 8
1 Vị trí và vai trò của phân hệ IMS trong kiến trúc mạng di động 3G 8
2 Các yêu cầu của IMS 8
2.1 Hỗ trợ việc thiết lập các phiên Multimedia IP 9
2.2 Hỗ trợ cơ chế để thỏa thuận QoS 9
2.3 Hỗ trợ làm việc liên kết với mạng Internet và mạng chuyển mạch kênh (PSTN) 9
2.4 Hỗ trợ chuyển vùng 9
2.5 Hỗ trợ điều khiển dịch vụ 9
2.6 Hỗ trợ phát triển các dịch vụ 10
2.7 Hỗ trợ đa truy nhập 10
3 Tổng quan về các giao thức sử dụng trong IMS 10
3.1 Giao thức điều khiển phiên 10
3.2 Giao thức hỗ trợ chứng thực, cấp quyền, tính cước 11
3.3 Các giao thức khác 11
4 Tổng quan kiến trúc IMS 11
4.1 CSCF - Call/Session Control Function 13
4.2 Cơ sở dữ liệu 15
4.3 AS (Application server) 16
4.4 MRF 17
4.5 BGCF 17
4.6 IMS-ALG và TrGW 17
4.7 PSTN/CS gateway 18
4.8 Mạng chủ và mạng khách 20
Trang 35 Nhận dạng người dùng trong IMS 21
5.1 Nhận dạng người dùng cá nhân 22
5.2 Mối liên hệ giữa nhận dạng người dùng cá nhân và nhận dạng người dùng công cộng .23
5.3 Nhận dạng dịch vụ công công 24
5.4 SIM, USIM và ISIM trong 3GPP 24
CHƯƠNG 2: GIAO THỨC HỖ TRỢ CHỨNG THỰC, CẤP QUYỀN, TÍNH CƯỚC TRONG IMS 28
1 Chứng thực và cấp quyền trong IMS 28
2 Giao thức Diameter 29
2.1 Cấu trúc bản tin Diameter 31
2.2 Cặp giá trị thuộc tính 32
2.3 Địa chỉ AAA và AAAS 34
2.4 Giao thức Diameter cơ bản 34
2.4.8 Các AVP trong giao thức Diameter cơ bản 37
3 Giao diện Cx và Dx 39
3.1 Những lệnh trong Diameter ứng dụng cho giao diện Cx 40
3.2 Các AVP trong Diameter ứng dụng cho giao diện Cx 45
4 Thông tin người dùng 49
4.1 Cấu trúc tổng quát thông tin người dùng 49
4.2 Nhận dạng công cộng 50
4.3 Cấp quyền cho mạng lõi dịch vụ 50
5 Tính cước 50
CHƯƠNG 3: CƠ CHẾ KÍCH HOẠT DỊCH VỤ TRONG IMS (SERVICES INVOCATION) 52
1 Kiến trúc kích hoạt dịch vụ trong IMS 52
1.1 Cơ chế kích hoạt dịch vụ S-CSCF 52
1.2 Cơ chế kích hoạt dịch vụ D-SCIM (DISTRIBUTED SCIM SERVICE INVOCATION MECHANISM) 53
1.2.1 Kiến trúc D-SCIM 53
Trang 41.2.2 Các chức năng của DSCIM 53
1.3 Mô hình cơ chế kích hoạt dịch vụ trong IMS 54
1.3.1 Mô hình cơ chế kích hoạt S-CSCF 54
1.3.2 Mô hình cơ chế kích hoạt dịch vụ DSCIM 54
2 ISC( IMS service control) 54
3 Giao diện Sh 57
3.1 Dữ liệu người dùng trên giao diện Sh 57
3.2 Các lệnh định nghĩa trên Diameter ứng dụng cho giao diện Sh 58
3.2.1 Bản tin UDR và UDA 58
3.2.2 Bản tin PUR và PUA 58
3.3 Các AVP định nghĩa trong Diameter ứng dụng cho giao diện Sh 60
4 iFC-Tiêu chuẩn sàng lọc ban đầu 60
CHƯƠNG 4: CƠ CHẾ PHỐI HỢP DỊCH VỤ TRONG IMS 63
1 Phối hợp dịch vụ ( Service broker) 63
1.1 Tiếp cận nội bộ như một phần của một máy chủ ứng dụng 64
1.2 Tiếp cận nội bộ như một phần của S-CSCF 64
1.3 Tiếp cận bên ngoài như một máy chủ độc lập 65
1.4 Các tính năng của Service Broker 65
2 SCIM 66
2.1 Cấu trúc SCIM 68
2.2 Các chức năng của SCIM 68
3 Đề xuất phương án phối hợp dịch vụ trong IMS 69
3.1 Quản lí thành phần dịch vụ 69
3.2 Quản lí xung đột dịch vụ 70
KẾT LUẬN 71
TÀI LIỆU THAM KHẢO 72
Trang 5DANH SÁCH HÌNH VẼ
CHƯƠNG 1: TỔNG QUAN KIẾN TRÚC IMS 8
Hình 1.1 Kiến trúc của mạng UMTS 8
Hình 1.2 Tổng quan kiến trúc IMS 12
Hình 1.3 Cấu trúc của HSS 15
Hình 1.4 Application Server 16
Hình 1.5 IMS-ALG và TrGW 18
Hình 1.6 STN/CS Getway giao tiếp với một mạng CS 19
Hình 1.7 P-CSCF đặt tại mạng khách 20
Hình 1.8 P-CSCF đặt tại mạng chủ 21
Hình 1.9 Mối liên hệ giữa nhận dạng người dùng cá nhân và công cộng trong Realese 5 23
Hình 1.10 Mối liên hệ giữa nhận dạng người dùng cá nhân và công cộng trong Release 6 24
Hình 1.11 Cấu trúc đơn giản hóa của USIM 25
Hình 1.12 Cấu trúc của ứng dụng ISIM 26
CHƯƠNG 2: GIAO THỨC HỖ TRỢ CHỨNG THỰC, CẤP QUYỀN, TÍNH CƯỚC TRONG IMS 28
Hình 2.1 Sơ đồ xác thực và cấp quyền trong IMS 28
Hình 2.2 Giao thức Diameter cơ bản và các ứng dụng 29
Hình 2.3 Cấu trúc bản tin Diameter 31
Hình 2.4 Cấu trúc của AVP 33
Hình 2.5 Các lệnh cơ bản của Diameter 35
Hình 2.6 Một số AVP 38
Hình 2.7 Các lệnh định nghĩa bởi Diameter ứng dụng cho giao diện Cx 40
Hình 2.8 Bản tin UAR/UAA, MAR/MAA, SAR,SAA trong quá trình đăng ký 42
Hình 2.9 Bản tin LIR/LIA và bản tin SAR/SAA 43
Trang 6Hình 2.10 Bản tin RTR/RTA 44
Hình 2.11 Bản tin PPR/PPA 45
Hình 2.12 Các AVP định nghĩa bởi Diameter ứng dụng cho giao diện Cx 46
Hình 2.13 Cấu trúc thông tin người dùng 49
CHƯƠNG 3: CƠ CHẾ KÍCH HOẠT DỊCH VỤ TRONG IMS (SERVICES INVOCATION) 52
Hình 3.1 Cơ chế kích hoạt dịch vụ D-SCIM 53
Hình 3.2 Mô hình cơ chế kích hoạt S-CSCF 54
Hình 3.3 Mô hình cơ chế kích hoạt dịch vụ DSCIM 54
Hình 3.4 Đăng kí bên thứ ba 55
Hình 3.5 S-CSCF gửi bản tin SIP cho AS 56
Hình 3.6 iFC processing 56
Hình 3.7 Danh sách lệnh được định nghĩa bởi Diameter ứng dụng cho giao diện Sh 58
Hình 3.8 Bản tin UDR/ UDA 58
Hình 3.9 Bản tin PUR/PUA 59
Hình 3.10 Bản tin SNR/SNA và bản tin PNR/PNA 59
Hình 3.11 Các AVP định nghĩa bởi Diameter ứng dụng cho giao diện Sh 60
Hình 3.12 Cấu trúc tiêu chuẩn sàng lọc ban đầu 61
CHƯƠNG 4: CƠ CHẾ PHỐI HỢP DỊCH VỤ TRONG IMS 63
Hình 4.1 Tiếp cận nội bộ như một phần của AS 64
Hình 4.2 Tiếp cận nội bộ như một phần của S-CSCF 64
Hình 4.3 Tiếp cận bên ngoài như một máy chủ độc lập 65
Hình 4.4 ISC cho các máy chủ ứng dụng khác nhau 66
Hình 4.5 Kiến trúc chức năng của IMS 67
Hình 4.6 SCIM 67
Hình 4.7 Cấu trúc SCIM 68
Hình 4.8 Đề xuất cơ chế quản lí thành phần dịch vụ 70
Hình 4.9 Đề xuất cơ chế quản lí xung đột dịch vụ 70
Trang 7AS Application Server Máy chủ ứng dụng
AuC Authetication Center Trung tâm nhận thực
AVP Atribute Value Pair Cặp giá trị thuộc tính
CSCF Call/Session Control
Function Khối chức năng điều khiển phiên và cuộc gọi DNS Domain Name System Hệ thống tên miền
FQDN Fully Qualified Domain
HLR Home Location Register Bộ đăng ký vị trí máy chủ
HSS Home Subcriber Server Máy chủ thuê bao
IANA Internet Assigned
Numbers Authority Tổ chức cấp phát số hiệu internet
IETF Internet Engineering
Task Force Lực lượng quản lý kỹ thuật
IFC Initial Filter Criteria Tiêu chuẩn sàng lọc ban đầu
Subsystem Phân hệ IP đa phương tiện
IMSI International Mobile
Subscriber Identity Nhận dạng thuê bao di động quốc tế
IP Internet Protocol Giao thức mạng
IPsec Internet Protocol Giao thức bảo mật mạng
Trang 8Hiệp hội viễn thông quốc tế
MRF Media Resource Funtion Chức năng tài nguyên media
MSC Mobile Switching
Center Trung tâm chuyển mạch di động
Function Khối chức năng giải quyết chính sách
RADIUS Remote Authentication
Dial In User Service Dịch vụ chứng thực cuộc gọi người dùng từ xa
SIP Session Initiation
Protocol Giao thức khởi tạo phiên
SLF Subcriber Location
Function Khối chức năng vị trí thuê bao
TP Triger Point Điểm kích hoạt dịch vụ
Trang 9CHƯƠNG 1: TỔNG QUAN KIẾN TRÚC IMS
Trong chương này ta sẽ tìm hiểu về vị trí và vai trò của phân hệ IMS trong kiến trúc mạng di động 3G, những yêu cầu khi xây dựng phân hệ IMS và tổng quan về các giao thức, các thành phần chức năng và các cách nhận dạng người dùng trong kiến trúc IMS
1 Vị trí và vai trò của phân hệ IMS trong kiến trúc mạng di động 3G
Mạng di động 3G được phân chia logic thành mạng truy nhập (Access Network) và mạng lõi (Core Network) Phía trên cơ sở hạ tầng mạng là nền tảng dịch vụ được sử dụng để tạo ra các dịch vụ khác nhau Hình 1.1 chỉ ra kiến trúc mạng 3G UMTS
Hình 1.1 Kiến trúc của mạng UMTS
Mạng hỗ trợ hai kiểu mạng truy nhập khác nhau:
+ Base-station System (BSS) là mạng truy cập GSM
+ Radio Network Subsystem (RNS) là mạng truy cập UMTS
Mạng lõi bao gồm miền chuyển mạch kênh (CS) và miền chuyển mạch gói (PS) Hai miền này khác nhau trong cách chúng xử lý dữ liệu Miền chuyển mạch kênh dành sẵn các kênh cho lưu lượng của người dùng Do đó được sử dụng cho các dịch vụ thời gian thực và dịch vụ hội đàm như dịch vụ thoại và dịch vụ hội nghị video Miền chuyển mạch gói được sử dụng cho các ứng dụng dữ liệu gói từ đầu cuối đến đầu cuối như truyền file, truy cập web và e-mail
Phân hệ IMS như trong hình vẽ là một phần trong miền chuyển mạch gói Chức năng của IMS là cung cấp các dịch đa phương tiện trên nền IP, bao gồm các dịch vụ thời gian thực như trong miền chuyển mạch kênh Do đó IMS sẽ làm cho miền chuyển mạch kênh dần dần được thay thế trong tương lai
2 Các yêu cầu của IMS
IMS được xây dựng và phát triển với mục đích phải kết hợp được những xu hướng công nghệ mới nhất, làm cho mô hình Internet - Mobile trở thành hiện thực, tạo ra một
Trang 10nền tảng chung để phát triển các dịch vụ multimedia đa dạng và tạo ra nhiều lợi nhuận hơn trong việc thúc đẩy khách hàng sử dụng miền chuyển mạch gói trong 3G Để đạt được những mục đích đó thì IMS đã được định nghĩa như là một nền tảng kiến trúc để truyền tải các dịch vụ multimedia IP tới người dùng cuối Nền tảng đó phải thực hiện được những yêu cầu sau:
2.1 Hỗ trợ việc thiết lập các phiên Multimedia IP
IMS có thể truyền tải các dịch vụ đa dạng.Yêu cầu này nhấn mạnh sự cần thiết để cung cấp các dịch vụ chính được truyền tải bởi IMS đó là các phiên multimedia qua mạng chuyển mạch gói Kiểu media trong trường hợp này có thể là audio hoặc video Truyền thông multimedia đã được chuẩn hóa trong các chuẩn hóa trước đây của 3GPP nhưng những kiểu truyền thông multimedia này được thực hiện qua mạng chuyển mạch kênh chứ không phải qua mạng chuyển mạch gói
2.2 Hỗ trợ cơ chế để thỏa thuận QoS
QoS là một trong các vấn đề quan trọng nhất của IMS QoS cho một phiên multimedia cụ thể được quyết định bởi nhiều nhân tố như băng thông lớn nhất Băng thông lớn nhất có thể được cấp phát cho người dùng dựa trên đăng ký của người dùng hoặc dựa trên tình trạng hiện tại của mạng
2.3 Hỗ trợ làm việc liên kết với mạng Internet và mạng chuyển mạch kênh (PSTN)
Hỗ trợ làm việc liên kết vơi Internet là một yêu cầu rõ ràng Mạng Internet sẽ là đích đến của hàng triệu phiên multimedia được bắt đầu trong IMS Khi yêu cầu này đạt được thì số lượng các phiên multimeda sẽ được tăng lên đáng kể
IMS đồng thời cũng hỗ trợ làm việc liên kết với mạng PSTN Những thiết bị đầu cuối IMS đầu tiên sẽ có khả năng kết nối đồng thời với mạng chuyển mạch kênh và mạng chuyển mạch gói Vì thế khi một người dùng muốn gọi cho một người dùng khác
ở trong PSTN hay ở trong mạng di động thì thiết bị đầu cuối IMS chọn miền chuyển mạch kênh để sử dụng
Mặc dù yêu cầu làm việc liên kết với mạng chuyển mạch kênh là một yêu cầu không bắt buộc nhưng hầu hết các thiết bị đầu cuối IMS sẽ hỗ trợ miền chuyển mạch kênh Vì thể yêu cầu này có thể được xem như yêu cầu dài hạn
2.4 Hỗ trợ chuyển vùng
Hỗ trợ chuyển vùng là một yêu cầu cơ bản kể từ mạng di động thế hệ thứ hai Chuyển vùng giúp người dùng có thể liên lạc khi sang một mang khách IMS thừa kế yêu cầu này giúp người dùng duy trì kết nối khi di chuyển sang đất nước khác
2.5 Hỗ trợ điều khiển dịch vụ
IMS giúp nhà cung cấp dịch vụ có thể đưa ra những chính sách với những dịch vụ
mà họ cung cấp cho người dùng Có thể chia những dịch vụ này thành 2 loại:
Trang 11 Những chính sách áp dụng chung đối với tất cả người sử dụng trong mạng
Những chính sách áp dụng riêng lẻ đối với những người dùng cụ thể
Những chính sách chung bao gồm một số các giới hạn do các nhà cung cấp dịch vụ đưa ra như giới hạn sử dụng các bộ codec dung lượng lớn như G711 trong mạng của họ Thay vào đó họ có thể áp dụng những bộ codec dung lượng nhỏ như AMR
Những chính sách riêng lẻ ngược lại được gắn với mỗi một người dùng cụ thể Ví dụ khi một người dùng có thể có một vài đăng ký để sử dụng các dịch vụ IMS mà không bao gồm video Thiết bị đầu cuối IMS có thể hỗ trợ video nhưng trong trường hợp người dùng cố gắng để bắt đầu một phiên multimedia mà bao gồm video thì nhà cung cấp sẽ chặn phiên này
2.6 Hỗ trợ phát triển các dịch vụ
Yêu cầu này ảnh hưởng mạnh mẽ đến thiết kế kiến trúc IMS.Yêu cầu này khẳng định rằng các dịch vụ IMS không cần phải tiêu chuẩn hóa Nó đánh dấu một cột mốc quan trọng trong thiết kế mạng di động, bởi vì trước đây, tất cả các dịch vụ riêng lẻ hoặc là phải chuẩn hóa hoặc là được thực hiện độc quyền Thậm chí khi một dịch vụ đã được chuẩn hóa, cũng không có một đảm bảo chắc chắn dịch vụ sẽ làm việc khi chuyển vùng sang một mạng khác IMS giúp cho triển khai các dịch vụ mới đến người dùng nhanh hơn Trước đây, sự chuẩn hóa các dịch vụ và công việc kiểm tra gây ra sự chậm chễ đáng kể trong việc triển khai dịch vụ IMS làm giảm đáng kể sự chậm trễ này bằng cách tiêu chuẩn hóa khả năng dịch vụ thay vì chuẩn hóa dịch vụ riêng lẻ
3 Tổng quan về các giao thức sử dụng trong IMS
Kiến trúc IMS do 3GPP phát triển dựa trên các giao thức IP được chuẩn hóa bởi IETF Giao thức IP bao gồm các giao thức về điều khiển phiên, các giao thức về chứng thực, cấp quyền và tính toán (AAA) và một số các giao thức khác
3.1 Giao thức điều khiển phiên
Các giao thức điều khiển cuộc đóng vai trò chìa khóa trong bất kì một hệ thống điện thoại nào Trong mạng chuyển mạch kênh, các giao thức điều khiển cuộc gọi quan trọng nhất là TUP (Telephony User Part, ITU-T khuyến nghị Q.721), ISUP ( ISDN User Part, ITU-T, khuyến nghị Q.761) và BICC (Bearer Independent Call Control, ITU-T khuyến nghị Q.1901)
SIP đã được chọn là giao thức điều khiển phiên cho IMS trong nhiều giao thức điều khiển phiên phiên dựa trên IP khác như BICC và H323 SIP được IETF chuẩn hóa trong
Trang 12RFC 3261 (Request for Command) SIP tuân theo mô hình khách - chủ (client-server) SIP được thiết kế dựa trên các nguyên lý cơ bản từ hai giao thức HTTP, SMTP Nên SIP thừa kế hầu hết các đặc tính quan trọng của hai giao thức này Điều này tạo ra sức mạnh cho nó bởi HTTP và SMTP là các giao thức đã rất thành công trong mạng Internet Không giống như H323 và BICC, SIP không phân biệt giao diện người dùng tới mạng (User-to-Network) với giao diện mạng với mạng (Network-to-Network) Trong mô hình SIP chỉ có một giao thức duy nhất hoạt động thông suốt Ngoài ra SIP là một giao thức dưới dạng văn bản do đó nó dễ dàng mở rộng, gỡ rối và phát triển các dịch vụ
3.2 Giao thức hỗ trợ chứng thực, cấp quyền, tính cước
Diameter dựa trên RFC 3588 được chọn là giao thức AAA trong mạng IMS Diameter được phát triển từ giao thức RADIUS (RFC 2865) là một giao thức được sử dụng phổ biến trong Internet để thực hiện chứng thực, cấp quyền và tính cước Ví dụ khi một người dùng quay số đến một nhà cung cấp dịch vụ Internet, máy chủ truy nhập mạng sử dụng RADIUS để chứng thực cấp quyền cho user
Diameter bao gồm một giao thức cơ bản và giao thức này được bổ sung bởi các Diameter ứng dụng Các Diameter ứng dụng là các tùy biến hoặc là các mở rộng Diameter để phù hợp với các môi trường cụ thể
IMS sử dụng Diameter trong nhiều giao diện, mặc dù vậy các giao diện này có thể sử dụng các ứng dụng Diameter khác nhau Ví dụ IMS sử dụng một Diameter ứng dụng trong quá trình thiết lập cuộc gọi nhưng lại sử dụng một Diameter ứng dụng khác trong tính cước
3.3 Các giao thức khác
Bên cạnh SIP và Diameter, IMS còn sử dụng nhiều giao thức khác Giao thức dịch
vụ chính sách mở thông thường COPS (Common Open Policy Service) được dùng để truyền tải chính sách giữa các điểm quyết định dịch vụ PDPs (Policy Decision Points) và các điểm thực hiện chính sách ( Policy Enforcement Points)
H.248 (ITU-T khuyến nghị H.248) được sử dụng bởi các nút báo hiệu để điều khiển các nút trong mặt phẳng media
RTP (Real-Time Transport Protocol, RFC 3550) và RCTP (RTP Control Protocol, RFC 3550) dùng để truyền tải media như video và audio
4 Tổng quan kiến trúc IMS
IMS không được chuẩn hoá theo các nút mà dựa trên chức năng Điều này có nghĩa
là kiến trúc IMS là một tập hợp các chức năng được liên kết với nhau bởi các giao diện Các chức năng có thể được kết hợp lại trong môt nút hoặc một chức năng thể được tách
ra thực hiện trong 2 nút hoặc nhiều hơn Thông thường các nhà cung cấp thường thực hiện một chức năng trong mỗi nút riêng lẻ
Trang 13Hình 1.2 Tổng quan kiến trúc IMS
Hình vẽ 1.2 thể hiện tổng quan kiến trúc IMS Trong hình vẽ này các giao diện báo hiệu trong IMS được thể hiện bằng hai hoặc ba chữ cái
Bên phải của hình vẽ là các thiết bị IMS Phía dưới là thiết bị di động IMS thường được gọi là thiết bị người dùng UE Thiết bị đầu cuối IMS kết nối tới mạng chuyển mạch gói thông qua liên kết vô tuyến IMS đồng thời cũng hỗ trợ các kiểu truy nhập và các thiết bị khác như PDA (Personal Digital Assistant) và máy tính Các thiết bị này có thể truy nhập qua ADSL hoặc WLAN
Phần còn lại của hình vẽ chỉ ra các nút chức năng khác trong kiến trúc lõi của IMS bao gồm:
Cơ sở dữ liệu người dùng: HSS (Home Subcriber Servers) và SLF (Subcriber Location Function)
Chức năng điều khiển phiên, cuộc gọi: CSCF (Call /Sesion Control Function)
Chức năng liên quan đến nguồn media: MRF (Media Resource Fuction) bao gồm bộ điều khiển chức năng nguồn media MRFC (Media Resource Function Controller) và bộ xử lý chức năng nguồn media MRFP (Media Resource Function Processor)
BGCF (Breakout Gateway Control Function)
PSTN gateway bao gồm SGW (Signalling Gateway), MGCF (Media Gateway Controller Function) và MGW (Media Gateway)
Trang 144.1 CSCF - Call/Session Control Function
CSCF là một SIP server Nó là thành phần cơ bản nhất trong kiến trúc IMS
CSCF xử lý báo hiệu SIP Có ba kiểu khác nhau của CSCF:
đáp theo các hướng phù hợp hoặc là đi tới thiết bị IMS hoặc là tới mạng IMS
P-CSCF được chỉ định cho các thiết bị đầu cuối IMS trong quá trình đăng ký và không thay đổi trong quá trình này
P-CSCF bao gồm nhiều chức năng khác nhau và một trong số chúng liên quan tới bảo mật Nó thiết lập một số liên kết đảm bảo IPsec với các thiết bị đầu cuối IMS Những liên kết bảo mật Ipsec này đảm bảo sự toàn vẹn thực thể, ví dụ như khả năng để
dò tìm nội dung của bản tin có bị thay đổi từ khi nó được tạo ra hay không
Một khi P-CSCF đã chứng thực người dùng (như là một phần của sự thiết lập liên kết bảo mật) thì các nút khác trong mạng không cần phải thực hiện các chứng thực người dùng khác nữa vì chúng tin tưởng vào P-CSCF Sự xác nhận của P-CSCF còn có các chức năng khác như cung cấp các dịch vụ cho các cá nhân và các bản ghi tính cước Một chức năng khác nữa của P-CSCF là chúng kiểm tra sự chính xác của bản tin SIP yêu cầu được gửi bởi thiết bị đầu cuối IMS Chức năng này giúp ngăn chặn các thiết bị đầu cuối gửi các bản tin SIP không chính xác
P-CSCF bao gồm một bộ phận nén và giải nén các bản tin SIP (thiết bị đầu cuối IMS cũng bao gồm chức năng này) Bản tin SIP đôi khi có thể rất lớn Trong khi gửi một bản tin qua một kết nối băng thông rộng chỉ mất một thời gian ngắn thì việc gửi một bản tin SIP qua một kênh băng thông hẹp, như một kết nối vô tuyến chẳng hạn, sẽ mất một vài giây Cơ chế dùng để rút ngắn thời gian truyền một bản tin là nén bản tin lại, truyền qua liên kết vô tuyến và giải nén bên phía nhận
P-CSCF có thể bao gồm một PDF PDF cấp quyền sử dụng media và quản lý QoS trên mặt phẳng media
P-CSCF đồng thời tạo ra các thông tin tính cước tới các nút thu thập thông tin tính cước
Trang 15Với mục đích mở rộng và tạo ra dư thừa để dự phòng thông thường trong một mạng IMS có nhiều P-CSCF Mỗi một P-CSCF phục vụ một số thiết bị đầu cuối IMS phụ thuộc vào dung lượng của nó
P-CSCF có thể được đặt tại mạng khách hoặc mạng chủ Trong trường hợp mạng chuyển mạch gói dựa trên GPRS thì P-CSCF luôn đặt trong cùng một mạng với GGSN
Vì vậy GGSN và P-CSCF có thể cùng đặt tại mạng khách hoặc tại mạng chủ
4.1.2 I-CSCF
I-CSCF là SIP proxy được đặt tại biên của miền quản trị Địa chỉ của I-CSCF luôn được liệt kê trong các bản ghi DNS của miền Khi một SIP server tuân theo các thủ tục SIP để tìm chặng SIP tiếp theo cho một bản tin SIP sẽ nhận được địa chỉ của I-CSCF trong miền đích
Ngoài chức năng là một SIP server, I-CSCF còn có một giao diện tới SLF và HSS Giao diện này dựa trên giao thức Diameter Qua giao diện này I-CSCF truy vấn các thông tin về vị trí của người dùng và định tuyến các bản tin SIP tới địa chỉ phù hợp I-CSCF còn có chức năng mã hóa một phần bản tin SIP đang chứa đựng những thông tin nhạy cảm về miền, như số lượng các server trong miền, tên DNS và dung lượng của chúng
Một mạng IMS thường bao gồm nhiều I-CSCF cho mục đích mở rộng và tạo dư thừa
I-CSCF thường nằm tại mạng chủ, mặc dù trong một số trường hợp đặc biệt nó có thể được đặt tại mạng khách
4.1.3 S-CSCF
S-CSCF là nút trung tâm trong mặt phẳng báo hiệu Ngoài chức năng là một SIP server, S-CSCF còn đóng vai trò là một SIP registrar Nó duy trì một gán kết giữa vị trí của người dùng (như địa chỉ IP của thiết bị đầu cuối mà người dùng đăng nhập) và địa chỉ SIP của người dùng trong bản ghi
Giống như I-CSCF, S-CSCF cũng đồng thời thực hiện giao diện tới HSS để thực hiện các mục đích sau:
Tải về các vector chứng thực của người dùng đang truy nhập vào mạng CSCF sử dụng các vector này để chứng thực người dùng
S- Tải về hồ sơ người dùng từ HSS Hồ sơ người dùng bao gồm hồ sơ dịch vụ
Thông báo cho HSS rằng S-CSCF này sẽ phục vụ người dùng trong khoảng thời gian đăng ký
Tất cả báo hiệu SIP mà thiết bị đầu cuối IMS gửi và nhận đều đi qua S-CSCF S-CSCF giám sát từng bản tin SIP và quyết định xem báo hiệu SIP sẽ đi qua một hay nhiều server ứng dụng hoặc để định tuyến tới đích cuối cùng
Một trong những chức năng chính của S-CSCF là cung cấp chức năng định tuyến bản tin SIP Nếu một người dùng quay một số điện thoại thay vì một SIP URI thì S-
Trang 16CSCF cung cấp dịch vụ chuyển đổi địa chỉ, thường dựa trên DNS E.164 Number Translation (IETF)
S-CSCF đồng thời thi hành các chính sách của nhà điều hành mạng Ví dụ một người dùng không có quyền để thiết lập một loại phiên cụ thể như phiên video chẳng hạn Nói cách khác, S-CSCF ngăn chặn người dùng thực hiện những dịch vụ không được cho phép
S-CSCF luôn luôn nằm tại mạng chủ
4.2 Cơ sở dữ liệu
HSS lưu trữ dữ liệu cho tất cả các thuê bao và tất cả dữ liệu liên quan đến dịch vụ của IMS Dữ liệu được lưu trữ trong HSS bao gồm nhận dạng, thông tin đăng ký thuê bao, tham số truy nhập và thông tin kích hoạt dịch vụ Thông tin nhận dạng gồm có hai loại: Nhận dạng người dùng công cộng và nhận dạng người dùng cá nhân Nhận dạng người dùng cá nhân được sử dụng cho mục đích đăng ký và cấp quyền, trong khi đó nhận dạng người dùng công cộng được người dùng sử dụng để liên lạc với những người dùng khác Các tham số truy nhập IMS được khởi tạo để thết lập một phiên và bao gồm các thông số giống như chứng thực người dùng, cấp quyền chuyển vùng và tên của S-CSCF phụ trách người dùng Thông tin kích họat dịch vụ cho phép thực hiện các dịch vụ SIP
HSS cũng bao gồm một số các chức năng của bộ đăng ký vị trí chủ (HLR) và trung tâm nhận thực (AuC)
Hình 1.3 Cấu trúc của HSS
Chức năng HLR hỗ trợ các thực thể trong miền chuyển mạch gói như SGSN và GGSN Điều này cho phép các thuê bao truy nhập tới các dịch vụ trong miền chuyển mạch gói HLR đồng thời cũng hỗ trợ các thực thể trong miền chuyển mạch kênh như MSC/MSC servers Điều này cũng cho phép các thuê bao có thể truy nhập các dịch vụ trong miền chuyển mạch kênh và hỗ trợ chuyển vùng tới những mạng có miền chuyển mạch kênh
Trang 17AuC lưu trữ chìa khóa bí mật cho mỗi một thuê bao di động Chìa khóa này được sử dụng để tạo ra dữ liệu bảo mật linh động cho mỗi một thuê bao Dữ liệu được sử dụng cho sự nhận thực lẫn nhau giữa mạng và IMSI (International Mobile Subscriber Identity) Dữ liệu bảo mật cung cấp sự toàn vẹn thực thể và mã hóa thông tin liên lạc qua đường vô tuyến giữa thiết bị đầu cuối và mạng
Một mạng có thể có nhiều hơn một HSS, phụ thuộc vào số lượng thuê bao và khả năng của các thiết bị và tổ chức của mạng
Nếu mạng có một HSS không cần phải có SLF (Subscription Location function) Ngược lại nếu mạng có nhiều hơn một HSS nhất thiết phải có SLF SLF là một cơ sở dữ liệu đơn giản dùng để ánh xạ địa chỉ thuê bao với HSS tương ứng quản lý thuê bao đó Khi một nút khác truy vấn SLF với đầu vào là một địa chỉ thuê bao thì sẽ nhận được địa chỉ của HSS tương ứng chứa các thông tin liên quan đến thuê bao như là đầu ra
Kích hoạt và phối hợp dịch vụ thực hiện giao thức Diameter với các ứng dụng Diameter xác định cho IMS
4.3 AS (Application server)
AS là các thực thể SIP đảm nhận và thực hiện các dịch vụ Phụ thuộc vào dịch vụ thực tế mà AS có thể hoạt động ở các chế độ SIP proxy, SIP UA hoặc SIP B2BUA AS giao tiếp với S-CSCF bằng SIP
Hình 1.4 Application Server
Trang 18 IM-SSF ( IP Multimedia Service Switching Function): AS này cho phép tái sử dụng dịch vụ CAMEL (Customized Application for Mobible Network Enhanced Logic) được phát triển cho GSM IM-SSF cho phép một gsmSCF (GSM Service Control Function) điều khiển một phiên IMS Một mặt đóng vai trò là một AS và mặt kia đóng vai trò là chuyển mạch dịch vụ giao tiếp với gsmSCF dựa trên giao thức CAP (CAMEL Application Part)
AS có thể được đặt tại mạng chủ hoặc tại mạng của một nhà cung cấp thứ ba Trong trường hợp AS được đặt ngoài mạng chủ thì nó không giao tiếp với HSS
4.4 MRF
MRF (Media Resource Funtion) cung cấp nguồn media trong mạng chủ MRF cung cấp khả năng để play thông báo, trộn các luồng media với nhau, chuyển đổi giữa các loại
mã khác nhau, thu thập thống kê và làm các công việc phân tích media khác
MRF được chia thành MRFC và MRFP MRFC (Media Resource Funtion Control) đóng vai trò như một SIP User Agent và có một giao diện tới S-CSCF MRFC điều khiển nguồn tài nguyên trong MRFP (Media Resource Funtion Processor) thông qua giao diện H.248 MRFP thực hiện tất cả chức năng liên quan đến media như play và trộn media
MRF luôn luôn đặt tại mạng chủ
4.5 BGCF
BGCF (Breakout Getway Control Function) là một thành phần SIP server cơ bản bao gồm chức năng định tuyến dựa trên số điện thoại BGCF chỉ được sử dụng trong những phiên mà bắt đầu từ một thiết bị đầu cuối IMS tới một người dùng trong mạng chuyển mạch kênh như PSTN hoặc là PLMN
Hai chức năng chính của BCCF:
Lựa chọn mạng thích hợp trong trường hợp làm việc với miền chuyển mạch kênh
Lựa chọn PSTN/CS gateway phù hợp
4.6 IMS-ALG và TrGW
IMS hỗ trợ cả IPv4 và IPv6 Ở một số điểm trong phiên multimedia IP việc làm việc chéo giữa hai phiên bản có thể xảy ra Để tránh cho các thiết bị đầu cuối không phải hỗ
Trang 19trợ các chức năng để có thể làm việc liên kết, IMS bổ sung thêm hai thực thể mới đó là: IMS – Application Layer Gateway (IMS-ALG) và Transition Gateway (TrGW) IMS-ALG xử lý các vấn đề về báo hiệu (SIP, SDP …), còn TrGW xử lý lưu lượng media (RTP, RCTP)
Hình 1.5 IMS-ALG và TrGW
Hình 1.5 thể hiện mối quan hệ giữa IMS-ALG và TrGW IMS-ALG thực hiện chức năng như một SIP B2BUA bằng cách duy trì hai chặng báo hiệu độc lập Một chặng hướng tới bên trong mạng IMS và chặng còn lại hướng vào mạng khác Mỗi chặng này
sử dụng các phiên bản IP khác nhau Thêm vào đó, IMS-ALG ghi lại SDP bằng cách thay đổi các địa chỉ IP và các port number tạo ra bởi các thiết bị đầu cuối với một hoặc nhiều địa chỉ IP và port number phân bổ cho TrGW Điều này cho phép lưu lượng media được định tuyến tới TrGW
IMS-ALG giao tiếp với I-CSCF với các luồng lưu lượng tới và với S-CSCF cho các luồng lưu lượng đi thông qua giao diện Mx
TrGW là một NAT-PT/NAPT-PT (Network Address Port Translator-Protocol Translator) TrGW được cấu hình với một tập hợp các địa chỉ IP, được phân bổ tự động cho một phiên đã cho TrGW thực hiện sự chuyển đổi media giữa IPv4 và IPv6
4.7 PSTN/CS gateway
PSTN gateway cung cấp giao diện hướng tới mạng chuyển mạch kênh, cho phép các thiết bị đầu cuối IMS gọi và nhận các cuộc gọi từ PSTN và tới PSTN
Trang 20Hình 1.6 STN/CS Getway giao tiếp với một mạng CS
PSTN gateway cung cấp giao diện hướng tới mạng chuyển mạch kênh, cho phép các thiết bị đầu cuối IMS gọi và nhận các cuộc gọi từ PSTN và tới PSTN
PSTN gateway được phân chia thành những thành phần chức năng sau:
SGW (signalling gateway): Signalling gateway giao tiếp với mặt phẳng báo hiệu của mạng chuyển mạch kênh SGW thực hiện sự chuyển đổi giao thức mức thấp SGW thay thế các giao thức bậc thấp MTP (ITU-T khuyến nghị Q.701) bằng SCTP/IP (Stream Control Transmission Protocol, RFC 2960) Vì vậy, SGW chuyển đổi ISUP (ITU-T khuyến nghị Q.761) hoặc BICC (Bearer-Independent Call Control) trên nền MTP (Message Transfer Part) thành ISUP (ISDN User Part) hoặc BICC trên nền SCTP/IP (Stream Control Tranmission Protocol/Internet Protocol)
MGCF (Media GateWay Control Function): MGCF là nút trung tâm của PSTN/CS gateway Nó thực hiện chuyển đổi giao thức và ánh xạ SIP (giao thức điều khiển cuộc gọi trong IMS) thành ISUP/IP hoặc BICC/IP Ngoài ra, MGCF còn điều khiển nguồn tài nguyên trong MGW (Media GateWay) Giao thức được sử dụng giữa MGCF và MGW là H.248
MGW: (Media Gateway) giao tiếp với mặt phẳng media của PSTN Một mặt MGW có khả năng gửi và nhận mdeia IMS trên nền RTP (Real-time Transport Protocol) Mặt khác MGW sử dụng một hoặc nhiều khe thời gian PCM để kết nối tới mạng chuyển mạch kênh Thêm vào đó, MGW thực hiện việc chuyển đổi mã khi mà thiết bị đầu cuối IMS không hỗ trợ các codec được sử dụng bởi mạng chuyển mạch kênh Một tình huống phổ biến thường xảy ra là thiết bị
Trang 21đầu cuối IMS sử dụng mã AMR (Adaptive Multi-Rate) trong khi đó thiết bị đầu cuối PSTN sử dụng mã G.711
4.8 Mạng chủ và mạng khách
IMS mượn một vài khái niệm của GSM và GPRS như mạng chủ và mạng khách Khi chúng ta sử dụng điện thoại di động trong khu vực ta cư trú là ta đang sử dụng hạ tầng
do các nhà điều hành mạng cung cấp Cơ sở hạ tầng này hình thành mạng chủ
Mặt khác, khi chúng ta chuyển vùng ra ngoài khu vực che phủ của mạng chủ, chúng
ta sử dụng cơ sở hạ tầng được cung cấp bởi một nhà điều hành khác Hạ tầng này được gọi là mạng khách
Để sử dụng được mạng khách thì các nhà điều hành mạng khách và mạng chủ phải
có một thỏa thuận với nhau Các thỏa thuận này có thể là giá cước cuộc gọi, chất lượng dịch vụ hoặc là phương thức qui đổi bảng tính cước
Hầu hết các nút đặt tại mạng chủ nhưng có những nút có thể đặt tại mạng khách hoặc mạng chủ Đó là nút P-CSCF Kiến trúc IMS cho phép hai cấu hình khác nhau cho P-CSCF, tùy thuộc vào vị trí của P-CSCF ở mạng khách hay mạng chủ
Thêm nữa khi mạng truy nhập kết nối IP là mạng GPRS thì vi trị của P-CSCF phụ thuộc vị trí của GGSN Trong tình huống chuyển vùng, GPRS cho phép vị trí của GGSN hoặc ở trong mạng khách hoặc ở trong mạng chủ (Bình thường SGSN luôn ở mạng khách)
Trong IMS cả GGSN và P-CSCF phải nằm trong cùng một mạng Điều này cho phép P-CSCF điều khiển GGSN qua giao diện Go Khi cả P-CSCF và GGSN nằm trong cùng một mạng thì giao diện Go luôn luôn là giao diện hoạt động bên trong và làm cho sự hoạt của nó đơn giản hơn
Hình 1.7 chỉ ra cấu hình trong đó P-CSCF nằm trong mạng khách Cấu hình này là giai đoạn tiếp theo của IMS bởi vì nó yêu cầu IMS phải thực hiện từ mạng khách
Hình 1.7 P-CSCF đặt tại mạng khách
Trang 22Không thể mong đợi việc tất cả các mạng trên thế giới đều triển khai IMS cùng một lúc Do đó cũng không thể mong chờ tất cả các mạng thành phần sẽ cập nhật các GGSN theo cùng một chuẩn tại cùng một thời điểm và cùng bắt đầu cung cấp dịch vụ IMS Vì vậy chúng ta chỉ có thể mong đợi sớm có sự triển khai IMS mà P-CSCF ở trong mạng chủ như hình 1.8
Hình 1.8 chỉ ra một cấu hình hiện tại khi cả P-CSCF và GGSN nằm trong cùng mạng chủ Cấu hình này không yêu cầu sự hỗ trợ IMS từ mạng khách Mạng khách không cần phải có GGSN tuân theo tiêu chuẩn 3GPP release 5 Mạng khác chỉ cần cung cấp liên lạc vô tuyến và SGSN Vì vậy, cấu hình này được thực hiện từ những ngày đầu của IMS
Hình 1.8 P-CSCF đặt tại mạng chủ
Tuy nhiên cấu hình này có những bất lợi so với cấu hình trên bởi vì lưu lượng media phải đi qua mạng chủ rồi mới được định tuyến đến mạng khách Điều này gây ra độ trễ lớn
5 Nhận dạng người dùng trong IMS
Bất cứ một mạng nào đều phải có khả năng để nhận dạng người dùng một cách duy nhất Đây là một thuộc tính cho phép một máy điện thoại có thể rung chuông khi chúng
ta quay một chuỗi số trong mạng PSTN
Trong mạng PSTN, thuê bao được nhận ra bởi một số điện thoại Số điện thoại được gán cho một thuê bao bao gồm các phần: phần cục bộ, mã vùng và mã quốc tế Phụ thuộc vào đích gọi đến là nội hạt, trong quốc gia hay đi quốc tế mà số điện thọai
có thể ngắn hoặc dài Thêm vào đó khi một dịch vụ mới được cung cấp thường có những số đặc biệt để nhận dạng dịch vụ như 113 chẳng hạn IMS cũng cung cấp cơ chế để nhận dạng dịch vụ
Trang 23Nhận dạng người dùng công cộng
Trong IMS có một cách tiền định để nhận dạng người dùng Một thuê bao IMS được phân bổ một hay nhiều nhận dạng người dùng công cộng Nhà điều hành chủ chịu trách nhiệm phân phối nhận dạng người dùng công cộng tới mỗi thuê bao IMS Một nhận dạng người dùng công cộng có thể là SIP URI hoặc một TEL URI Nhận dạng người dùng công cộng được sử dụng để làm những thông tin liên lạc trên tấm card giao dịch Trong IMS, nhận dạng người dùng công cộng được sử dụng để định tuyến báo hiệu SIP
Nhận dạng người dùng công cộng tương ứng với số MSISDN ( Mobile Subcriber ISDN Number) trong GSM
Khi nhận dạng người dùng công cộng chứa một SIP URI, nó thường có dạng:
sip:first.last@operator.com, mặc dù các nhà điều hành IMS có thể thay đổi cấu trúc
này và địa chỉ theo cách của họ Thêm vào đó, nó có thể bao gồm một số điện thoại trong một SIP URI sử dụng định dạng như sau:
SIP :+1-212-555-0293@operator.com ; user=phone
Định dạng này là cần thiết bởi vì SIP yêu cầu rằng URI trong khi đăng ký phải là một SIP URI Vì vậy nó không có khả năng đăng ký một TEL URI trong SIP, mặc dù nó
có khả năng đăng ký một SIP URI mà chứa một số điện thoại
TEL URI là một dạng khác của nhận dạng người dùng công cộng Đây là một TEL URI thể hiện một số điện thoại quốc tế:
tel:+1-212-555-0293
TEL URI cần thiết để có thể gọi từ một thiết bị đầu cuối IMS tới một điện thoại trong PSTN, bởi vì số điện thoại PSTN được thể hiện bởi những chữ số Mặt khác, TEL URI cũng cần thiết nếu một thuê bao PSTN muốn thực hiện một cuộc gọi tới một người dùng trong IMS, bởi vì người dùng PSTN chỉ có thể bấm những chữ số
Mỗi người dùng sẽ được phân bố ít nhất một SIP URI và một TEL URI Lý do để phân bổ nhiều nhận dạng công cộng là một người dùng có thể có nhiều nhóm liên lạc như gia đình, bạn bè, đồng nghiệp…Có thể mỗi nhóm người sẽ biết được các nhận dạng công cộng khác nhau của người dùng đó Điều này thuận tiện cho việc kích hoạt những dịch vụ liên quan
Trong IMS một bản tin đăng ký SIP có thể đăng ký nhiều nhận dạng người dùng công cộng để tiết kiệm thời gian đăng ký và băng thông
5.1 Nhận dạng người dùng cá nhân
Mỗi thuê bao IMS được gán cho một nhận dạng người dùng cá nhân Không giống nhận dạng người dùng công cộng, nhận dạng người dùng cá nhân không có dạng SIP URIs hay TEL URIs, mà có dạng NAI (Network Access Identifier,RFC 2486) Định
dạng của NAI là username@operator.com
Nhận dạng người dùng cá nhân không để định tuyến bản tin SIP mà dành riêng cho mục đích nhận thực và nhận dạng đăng ký thuê bao Nhận dạng người dùng cá nhân
Trang 24thực hiện chức năng giống như IMSI (International Mobile Subcriber Identifier) trong GSM Người dùng không cần phải biết nhận dạng người dùng cá nhân, bởi vì nó được lưu trữ trong một thẻ thông minh, giống như IMSI được lưu trong SIM
5.2 Mối liên hệ giữa nhận dạng người dùng cá nhân và nhận dạng người dùng công cộng
Nhà điều hành phân bổ một hoặc nhiều nhận dạng người dùng công cộng và một nhận dạng người dùng cá nhân cho mỗi người dùng Trong trường hợp của GSM/UMTS thẻ thông minh lưu trữ nhận dạng người dùng cá nhân và ít nhất một nhận dạng người dùng công cộng HSS lưu trữ đồng thời nhận dạng người dùng công cộng và nhận dạng người dùng cá nhân
Mối quan hệ giữa một thuê bao IMS, một nhận dạng người dùng công cộng và một nhận dạng người dùng cá nhân được chỉ ra trên hình 1.9 Một thêu bao IMS được cung cấp chỉ duy nhất một nhận dạng người dùng cá nhân và nhiều nhận dạng người dùng công cộng
3GPP release 6 đã mở rộng mối quan hệ giữa nhận dạng người dùng cá nhân và nhận dạng người dùng công cộng như được chỉ ra trong hình 1.10 Một thuê bao IMS không chỉ được phân bố một mà nhiều nhận dạng người dùng cá nhân Trong trường hợp của UMTS, chỉ có một nhận dạng người dùng cá nhân được lưu trong thẻ thông minh, nhưng người dùng có thể có nhiều thẻ và chứng được lắp vào trong các thiết bị khác nhau
Hình 1.9 Mối liên hệ giữa nhận dạng người dùng cá nhân và công cộng trong Realese 5
Trang 25Hình 1.10 Mối liên hệ giữa nhận dạng người dùng cá nhân và công cộng trong Release 6
5.3 Nhận dạng dịch vụ công công
Khái niệm nhận dạng dịch vụ công cộng được giới thiệu trong release 6 của 3GPP Không giống nhận dạng người dùng công cộng, được phân bố tới người dùng, một nhận dạng dịch vụ công cộng được phân bố cho một dịch vụ được nắm giữ bởi một AS Ví dụ một AS phục vụ một phòng chat được nhận dạng bởi một nhận dạng dịch vụ công cộng
5.4 SIM, USIM và ISIM trong 3GPP
UICC (Universal Integrated Circuit Card) là trung tâm trong thiết kế thiết bị đầu cuối 3GPP UICC là một thẻ thông minh có thể di chuyển được, lưu trữ một số dữ liệu như thông tin đăng ký thuê bao, mã nhận thực, sổ địa chỉ và các tin nhắn Nếu không có UICC thì thiết bị đầu cuối chỉ có thể gọi các số khẩn cấp
UICC cho phép người dùng dễ dàng di chuyển thông tin đăng ký thuê bao của họ sang thiết bị mới bằng cách lắp thẻ thông minh sang thiết bị đó UICC là một khái niệm chung định nghĩa các đặc tính của thẻ thông minh
UICC có thể bao gồm một vài ứng dụng logic như SIM, USIM (Universal Subscriber Identity Module), ISIM (IP multimedia Services Identity Module) UICC còn có các ứng dụng khác như là sổ điện thoại
5.4.1 SIM
SIM lưu trữ một tập hợp các tham số như thông tin đăng ký người dùng, mã nhận thực và các tin nhắn Nó là thành phần cơ bản nhất trong các thiết bị đầu cuối để chúng
có thể hòa mạng Mặc dù khái niệm UICC và SIM là có thể thay đổi cho nhau, UICC
ám chỉ đến thẻ vật lý trong khi đó SIM nói đến một ứng dụng đơn lẻ nằm trong UICC SIM được sử dụng rộng rãi trong mạng GSM
Trang 265.4.2 USIM
USIM là một ứng dụng khác nằm trong UICC USIM cung cấp một tập hợp các tham
số bao gồm thông tin đăng ký thuê bao, thông tin nhận thực, phương pháp thanh toán và lưu trữ tin nhắn.USIM được sử dụng để truy nhập mạng UMTS
Các thiết bị đầu cuối trong mạng chuyển mạch gói và chuyển mạch kênh cần phải có USIM để hoạt động được trong mạng 3G Rõ ràng, cả SIM và USIM có thể cùng tồn tại đồng thời trong UICC để thiết bị đầu cuối có thể sử dụng đồng thời mạng GSM và UMTS
Hình 1.11 Cấu trúc đơn giản hóa của USIM
USIM lưu giữ các thông số sau đây:
IMSI: IMSI là một nhận dạng mà được phân bố đến mỗi người dùng IMSI chỉ được sử dụng để nhận dạng người dùng cho mục đích nhận thực Nhận dạng người dùng cá nhân tương đương với IMSI
MSISDN: Trường này lưu trữ một hoặc nhiều số điện thoại được cấp cho người dùng Nhận dạng người dùng công cộng tương đương với MSISDN
CK(Ciphering Key) và IK( Integrity Key): Đó là những chìa khóa được sử dụng cho mục đích mã hóa và bảo vệ sự toàn vẹn thực thể qua giao diện vô tuyến USIM lưu trữ riêng biệt chìa khóa được sử dụng trong mạng chuyển mạch kênh và chìa khóa trong mạng chuyển mạch gói
Trang 27 Bí mật dài hạn: USIM lưu trữ bí mật dài hạn được sử dụng cho mực đích nhận thực và cho việc tính toán chìa khóa toàn vẹn và chìa khóa mã được sử dụng giữa thiết bị đầu cuối và mạng
SMS( Short Message Service): USIM lưu trữ các bản tin ngắn và các thông tin liên quan như người gửi, người nhận và trạng thái
Các tham số SMS: Trường này trong USIM lưu giữ thông tin cấu hình liên quan tới dịch vụ SMS, như địa chỉ của trung tâm tin nhắn hoặc các giao thức được hỗ trợ
Các thông số MMS: Trường này lưu trữ dữ liệu cấu hình liên quan đến dịch vụ MMS, như địa chỉ của MMS server và địa chỉ của MMS gateway
5.4.3 ISIM
Một ứng dụng thứ ba có thể hiện diện trong UICC là ISIM ISIM có vai trò đặc biệt quan trọng trong IMS, bởi vì nó chứa một tập hợp các thông số được sử dụng làm chứng thực người dùng, nhận dạng người dùng, cấu hình thiết bị đầu cuối khi thiết bị đầu cuối hoạt động trong mạng IMS ISIM có thể tồn tại cùng SIM, USIM hoặc cả hai
Hình 1.12 Cấu trúc của ứng dụng ISIM
Trang 28Các tham số thích hợp được lưu trữ trong ISIM bao gồm:
Nhận dạng người dùng cá nhân: ISIM lưu trữ nhận dạng người dùng cá nhân phân bố cho người dùng Chỉ có một nhận dạng người dùng cá nhân được lưu trữ trong ISIM
Nhận dạng người dùng công cộng: ISIM lưu trữ một hoặc nhiều SIP URI của nhận dạng người dùng công cộng phân bổ tới người dùng
URI của miền mạng chủ: ISIM lưu trữ SIP URI mà chứa tên miền mạng chủ Thông tin này được sử dụng trong suốt thủ tục đăng ký Có thể chỉ có một URI tên miền của mạng chủ được lưu trong ISIM
Bí mật dài hạn: ISIM lưu trữ một bí mật dài hạn được sử dụng cho mục đích nhận thực và tính toán mã toàn vẹn và mã mã hóa sử dụng giữa mạng và thiết
bị đầu cuối Thiết bị đầu cuối sử dụng mã toàn vẹn để bảo vệ sự toàn vẹn báo hiệu SIP mà thiết bị đầu cuối gửi và nhận từ P-CSCF Nếu báo hiệu được mã hóa, thiết bị đầu cuối IMS sử dụng mã mã hóa để mã hóa và giải mã báo hiệu SIP mà thiết bị đầu cuối gửi và nhận từ P-CSCF
Tất cả những thông tin trên chỉ có thể đọc, có nghĩa là người dùng không thể thay đổi giá trị của chúng
Như vậy truy nhập tới mạng IMS dựa trên ISIM hoặc USIM.Mặc dù USIM cũng có thể nhưng sử dụng ISIM vẫn tốt hơn vì nó được thiết kế dành riêng cho IMS Bởi vì tính bảo mật thấp của SIM, nó không được sử dụng để sử dụng để truy nhập tới mạng IMS
Trang 29CHƯƠNG 2: GIAO THỨC HỖ TRỢ CHỨNG THỰC, CẤP QUYỀN, TÍNH CƯỚC TRONG IMS
Giao thức AAA được hiểu là Authentication (chứng thực), Authorization (cấp quyền), Accouting (tính cước) Xác thực và cấp quyền có một mối liên hệ tổng quát trong IMS Trong khi tính cước lại là một chức năng riêng biệt được thực hiện từng nút khác nhau trong mạng Đó cũng chính là lý do để ta nghiên cứu tách bạch hai nhóm đối tượng này
1 Chứng thực và cấp quyền trong IMS
Hình 2.1 thể hiện sơ đồ của chức năng xác thực và cấp quyền trong IMS Có ba giao diện triển khai xác thực và cấp quyền đó là các giao diện Cx, Dx, Sh
Giao diện Cx nối giữa HSS và I-CSCF hay S-CSCF Khi có nhiều hơn một HSS
trong mạng thì cần phải có SLF (Subscription Locator Funtion) để giúp I-CSCF hay CSCF xác định chính xác HSS nào đang lưu trữ thông tin người dùng
S-Giao diện Dx nối một I-CSCF hay S-CSCF tới một SLF
Giao diện Sh nối giữa một HSS và một SIP Application Server hay một OSA
Service Capability Server ( để hoàn thành mô tả về các loại Application Server trong IMS)
Trong tất cả các giao diện này, giao thức sử dụng để liên lạc giữa các nút là giao thức Diameter (được chuẩn hóa trong RFC 3588)
Hình 2.1 Sơ đồ xác thực và cấp quyền trong IMS
Trang 30Diameter được phát triển từ giao thức RADIUS (RFC 2865) là một giao thức được
sử dụng phổ biến trong Internet để thực hiện chứng thực, cấp quyền và tính cước Ví dụ khi một người dùng quay số đến một nhà cung cấp dịch vụ Internet, máy chủ truy nhập mạng sử dụng RADIUS để chứng thực cấp quyền cho user
Giao thức Diameter được chia thành 2 phần là giao thức Diameter cơ bản và Diameter ứng dụng
Giao thức Diameter cơ bản bao gồm những chức năng chính và triển khai ở mọi điểm sử dụng Diameter, không phụ thuộc vào những ứng dụng cụ thể Giao thức Diameter cơ bản cần thiết cho việc khởi tạo các đơn vị dữ liệu Diameter, điều chỉnh khả năng, bắt lỗi và cung cấp khả năng mở rộng
Một Diameter ứng dụng định nghĩa một chức năng ứng dụng cụ thể và đơn vị dữ liệu Mỗi một Diameter ứng dụng được tách rời độc lập nhau
Nhiều ứng dụng là mở rộng của các chức năng cơ bản trong giao thức Diameter Ví
dụ như ứng dụng cho Network Access Server, Server Configurations, Mobile Ipv4, Credit Control hay SIP applications Những ứng dụng này có thể phát triển thêm khi cần thiết Hình 2.2 thể hiện mối quan hệ giữa giao thức Diameter cơ bản và một vài ứng dụng
Hình 2.2 Giao thức Diameter cơ bản và các ứng dụng
Trang 31Giao thức Diameter cơ bản sử dụng cả TCP và STCP để truyền tải, trong đó STCP được ưu tiên hơn
IMS sử dụng Diameter trong nhiều giao diện , mặc dù vậy các giao diện này có thể
sử dụng các ứng dụng Diameter khác nhau.Ví dụ IMS sử dụng một ứng dụng Diameter trong quá trình thiết lập cuộc gọi nhưng lại sử dụng một ứng dụng Diameter khác trong tính cước
Giao thức Diameter cơ bản định nghĩa ra một vài thực thể chức năng để thực hiện các thao tác AAA:
Diameter client: Thực thể chức năng, nằm ở bên rìa của mạng, thực hiện các công
việc truy nhập điều khiển ( ví dụ như Network Access Servers )
Diameter Server: Thực thể chức năng thực hiện công việc xử lý các yêu cầu về
chứng thực, cấp quyền và tính cước cho các vùng miền
Proxy: Thực thể chức năng thực hiện nhiệm vụ chuyển tiếp các bản tin Diameter,
thiết lập các chính sách để giải quyết mối quan hệ về sử dụng và phân phát tài nguyên
Relay: Thực thể chức năng thực hiện chuyển tiếp bản tin Diameter dựa trên các
thông tin quan hệ định tuyến và bảng định tuyến vùng Một Relay tiêu biểu cho tính trong suốt Nó chỉ có thể sửa đổi (chèn hoặc xóa đi) các thông tin về quan hệ định tuyến trong bản tin Diameter chứ không thể sửa đổi các dữ liệu khác
Redirect agent: Thực thể chức năng dùng để chỉ dẫn client liên lạc một cách với
server
Translation agent: Thực thể chức năng thực hiện giao thức vận chuyển giữa giao
thức Dameter và các giao thức AAA khác ví dụ như RADIUS
Diameter node: Thực thể chức năng nói chung triển khai giao thức Diameter và
hoạt động như một Diameter client, Diameter server, relay, redirect agent, hay translation agent
Diameter là giao thức ngang hàng ( peer-to-peer ) chứ không phải giao thức dạng chủ / tớ Có nghĩa là từ mọi nút Diameter đều có thể gửi yêu cầu tới các nút khác Một Diameter client không phải là thực thể chức năng chỉ gửi yêu cầu cũng như một Diameter server không phải là thực thể chức năng chỉ gửi trả lời khi có yêu cầu Thay
vì thế một Diameter client là thực thể chức năng có tính chất điều khiển truy nhập, trong khi Diameter server là thực thể chức năng thực hiện việc chứng thực và cấp quyền Trong Diameter, cả Diameter client và Diameter server đều có thể gửi hoặc nhận các yêu cầu cũng như hồi đáp
Bản tin Diameter ở một trong hai dạng yêu cầu và hồi đáp Một yêu cầu được trả lời bởi một hồi đáp Ngoại trừ một vài trường hợp đặc biệt, nói chung yêu cầu Diameter luôn luôn được trả lời, vì vậy bên gửi yêu cầu luôn nhận được thông tin chính xác về kết quả của yêu cầu đó Trong trường hợp có lỗi, bên gửi có thể dễ dàng phát hiện và gửi lại Diameter là một giao thức mã hóa nhị phân (binary encoded protocol)
Trang 32Cấu trúc bản tin Diameter
Hình 2.3 thể hiện cấu trúc bản tin Diameter Một bản tin Diameter bao gồm 20 octet tiêu đề và một số các cặp giá trị thuộc tính (Atribute Value Pairs - AVPs) Chiều dài của phần tiêu đề là cố định trong mọi bản tin Diameter Còn số lượng các AVPs thì thay đổi phụ thuộc vào từng bản tin Diameter, mỗi một AVPs sẽ chứa dữ liệu về chứng thực, cấp quyền hay tính cước
Hình 2.3 Cấu trúc bản tin Diameter
Trường version cho biết phiên bản của Diameter
Trường Message length cho biết chiều dài của bản tin Diameter bao gồm cả phần tiêu đề ( header )
Trường tiếp theo là Command Flags bao gồm 8 bits cho biết loại bản tin Diameter :
Nếu bit R ( Request ) được bật thì loại bản tin là yêu cầu, ngược lại là bản tin trả lời
Trang 33 Nếu bit P ( Proxiable ) được bật thì bản tin sẽ được chuyển qua proxy server hoặc relay server hoặc redirect server, ngược lại bản tin sẽ chỉ chuyển trong nội bộ
Nếu bit E ( Error ) được bật thì chứng tỏ bản tin có chứa lỗi
Nếu bit T được bật thì bản tin này là bản tin truyền lại
bit còn lại chưa được sử dụng và thường được đặt về 0
Trường Command-Code: độ dài 24 bit cho biết lệnh nào sẽ được thực hiện trong bản tin Diameter, Mã số các lệnh này được quản lý bởi Internet Assigned Numbers Authority ( IANA ) bao gồm các lệnh cho giao thức Diameter cơ bản và cho Diameter ứng dụng
Trường Application – ID xác định loại ứng dụng Diameter nào mà bản tin sẽ được gửi đi, có thể là giao thức Diameter cơ bản hay 1 Diameter ứng dụng nào khác
Trường Hop-by-Hop identifier chứa giá trị được đặt vào của từng chặng trong bản tin yêu cầu Bản tin trả lời sẽ có cùng 1 số Hop-by-Hop identifier với bản tin yêu cầu, do vậy một nút Diameter sẽ dễ dàng so sánh bản tin yêu cầu với bản tin trả lời tương ứng
Trường End-to-End identifier sẽ mang một giá trị cố định không thay đổi khi các bản tin yêu cầu được truyền đi, điều này nhằm xác định các bản tin yêu cầu giống nhau, nút Diameter sẽ gửi lại bản tin trả lời với giá trị End-to-End identifier giống như giá trị nhận được trong bản tin yêu cầu
2.2 Cặp giá trị thuộc tính
Cũng giống như bản tin RADIUS, bản tin Diameter chứa các cặp giá trị thuộc tính (Atribute Value Pairs - AVPs) AVP sẽ chứa dữ liệu trong đó Hình 2.4 mô tả cấu trúc của AVP Mỗi AVP bao gồm các trường :
Trang 34Hình 2.4 Cấu trúc của AVP
AVP Code kết hợp với trường Vendor-ID sẽ xác định duy nhất một thuộc tính Sự thiếu vắng của trường Vendor-ID hoặc giá trị trường này được đặt về 0 biểu thị đây AVP chuẩn theo lý thuyết được định nghĩa trong IETF Số AVP Code 1 đến 255 xác định các thuộc tính đã được định nghĩa trong RADIUS, AVP Code từ 256 trở lên xác định các thuộc tính được định nghĩa riêng trong Diameter
Trường Flags biểu thị :
Sự cần thiết mã hóa để bảo đảm an ninh trong quá trình truyền điểm-điểm
Hỗ trợ AVP có tính chất bắt buộc hay là tùy chọn Nếu bên gửi thông báo rằng có hỗ trợ AVP là bắt buộc và bên thu không hiểu AVP đó thì yêu cầu Diameter sẽ bị từ chối
Tùy chọn trường Vendor-ID có hiển thị hay không
Trường AVP Length biểu thị độ dài của AVP, bao gồm AVP Code, AVP Length, Flags, Vendor-ID (nếu có) và trường Data
Trường Data chứa một vài loại dữ liệu đặc biệt về thuộc tính Độ dài của trường Data có thể là không hoặc nhiều byte Độ dài của dữ liệu có thể biết được nhờ trường AVP Length
Giao thức Diameter cơ bản chỉ rõ một vài định dạng dữ liệu của trường Data : OctetString, Integer32, Integer64, Unsigned32, Unsigned64, Float32, Float64, và Grouped Hầu hết trong số đó là cùng một loại Kiểu Grouped AVP là một AVP có trường dữ liệu là một chuỗi các AVP khác
Những AVP có Code từ 1 đến 255 xác định các thuộc tính đã được định nghĩa trong RADIUS, AVP có Code từ 256 trở lên là AVP được định nghĩa trong Diameter AVP-Code được quản lý bởi IANA
Giao thức Diameter cho phép các ứng dụng có thể xác định định dạng dữ liệu AVP Giao thức cơ bản đã định nghĩa sẵn một vài dữ liệu AVP, những loại quan trọng nhất như:
Địa chỉ để vận chuyển một địa chỉ IPv4 hay một địa chỉ IPv6
Trang 35 Thời gian để miêu tả ngày giờ
UTF8String để trình bày xâu, chuỗi theo bảng mã Unicode : UTF-8
DiameterIdentity để vận chuyển đầy đủ tên miền của nút Diameter
DiameterURI để vận chuyển các AAA URI hay AAAS URI
Enumerated, một bảng số để miêu tả một vài ngữ nghĩa nào đó
2.3 Địa chỉ AAA và AAAS
Giao thức AAA có thể sử dụng một aaa URI hay một aaas URI để xác định tài nguyên AAA Aaas URI biểu thị rằng việc vận chuyển tin cậy phải được sử dụng Cú pháp của những URI này như sau :
"aaa://" FQDN [ port ] [ transport ] [ protocol ]
"aaas://" FQDN [ port ] [ transport ] [ protocol ]
port = ":" 1*DIGIT transport = ";transport=" transport-protocol protocol = ";protocol=" aaa-protocol
transport-protocol = ( "tcp" / "sctp" / "udp" ) aaa-protocol = ( "diameter" / "radius" / "tacacs+" )
Trong đó FQDN là Fully Qualified Domain Name Những URI có thể được chèn vào bằng tùy chọn số cổng, một tùy chọn về giao thức vận chuyển hoặc một tùy chọn giao thức để truy cập tài nguyên AAA Nếu như số cổng không khớp với số cổng mặc định của giao thức Diameter (3868) thì nó sẽ lờ đi Nếu như thông số về vận chuyển không xuất hiện, giao thức Diameter cũng lờ đi Phải chú ý rằng aaa URI và aaas URI
có thể điều chỉnh thích hợp với Diameter, RADIUS và các giao thức khác
Ví dụ về các aaa URI và aaas URI :
aaa://server.home1.net aaas://server.home1.net aaa://server.home1.net:8868 aaa://server.home1.net;transport=tcp;protocol=diameter
2.4 Giao thức Diameter cơ bản
Chúng ta đã thấy bản tin Diameter là một trong hai loại yêu cầu hoặc hồi đáp Một yêu cầu và hồi đáp tương ứng của nó được xác định bởi trường Command-Code trong tiêu đề bản tin Trường Command-Code là một số biểu thị phương thức mà Diameter
Trang 36server muốn tiến hành Một yêu cầu và hồi đáp tương ứng của nó đều có cùng số Command-Code, do vậy cần có cờ Command-Flags để phân biệt yêu cầu và hồi đáp Giao thức Diameter cơ bản (RFC 3588 [60]) đã chỉ rõ các Command-Code đầu tiên Một ứng dụng có thể được mở rộng từ những lệnh cơ bản và thêm vào đó những ứng dụng mới Hình 2.5 liệt kê các các yêu cầu và hồi đáp được định nghĩa trong giao thức Diameter cơ bản
Hình 2.5 Các lệnh cơ bản của Diameter
2.4.1 Bản tin ASR và ASA
ASR (Abort Session Request)
ASA (Abort-Session Answer)
Đây là lệnh cần thiết cho Diameter server khi muốn ngừng cung cấp dịch vụ tới người dùng Bởi vì có những nguyên do mới sẽ xuất hiện không thể biết trước được khi phiên đã được cấp quyền Đó có thể là hết tài khoản, lý do an ninh, bảo mật, hoặc một lý do nào khác Khi một Diameter server quyết định thông báo tới Diameter client
về việc ngừng cung cấp dịch vụ, Diameter server sẽ gửi bản tin Abort-Session-Request (ASR) tới Diameter client Diameter client sẽ trả lời bằng bản tin Abort-Session-Answer (ASA)