1. Trang chủ
  2. » Luận Văn - Báo Cáo

tìm hiểu về giao thức diameter

90 1,2K 8

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 90
Dung lượng 1,63 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

tìm hiểu về giao thức diameter

Trang 1

MỤC LỤC

THUẬT NGỮ VIẾT TẮT ii

CHƯƠNG 1: TỔNG QUAN VỀ GIAO THỨC DIAMETER 9

1.1 Giới thiệu: 9

1.2 Khung Diameter 10

1.2 Các thành phần Diameter 11

1.2.1 Thành phần RELAY (Chuyển tiếp) 12

1.2.2 Thành phần PROXY (Ủy quyền) 13

1.2.3 Thành phần REDIRECT (Gửi lại) 13

1.2.4 Thành phần TRANSLATION (Dịch) 14

1.4 Cấu trúc bản tin của Diameter 15

1.4.1 Cấu trúc Header 15

1.4.2 AVP (Attribute value pair) 16

1.5 Một số đặc điểm của giao thức Diameter 19

1.5.1 Vận chuyển 19

1.5.2 Nút ngang cấp Diameter 23

1.5.2 Kết nối và phiên 24

1.5.4 Bảo mật trong Diameter 26

1.5.5 Thanh toán 26

1.5.6 Cơ chế truyền thay thế và xử lý lỗi 27

1.5.7 So sánh với giao thức RADIUS 29

Kết luận 30

CHƯƠNG II: GIAO THỨC DIAMETER TRONG IMS 31

2.1 Thủ tục đăng kí và xóa đăng kí mức ứng dụng với giao diện Cx 31

2.1.1 Đăng kí IMS 31

2.1.2 Thủ tục xóa đăng kí mức ứng dụng 43

2.2 Thủ tục liên quan đến truy vấn thông tin định tuyến (giao diện Dx) 50

2.2.1 Nhận dạng người dùng tới giải đáp HSS 50

2.2.2 Đăng kí trên SLF 54

2.2.3 Mời UE trên SLF 55

2.3 Khởi tạo phiên 56

2.4 Tính cước 57

2.4.1 Kiến trúc tính cước 57

2.4.2 Kiến trúc tính cước ngoại tuyến 57

2.4.3 Kiến trúc tính cước trực tuyến 76

2.4.4 Các AVP sử dụng cho thanh toán trực tuyến và ngoại tuyến 85

Kết luận 88

TỔNG KẾT 89

Tài liệu tham khảo 90

Trang 2

THUẬT NGỮ VIẾT TẮT

Subscriber Line

Đường dây thuê bao số không đồng

bộ

agreement

Thỏa thuận khóa và nhận thực

thanh hình ảnh

Trang 3

Chức năng server tự mồi

Mobile network Enhanced Logic

Ứng dụng theo yêu cầu khách hàng đối với

Đa truy nhập phân chia theo mã

Charging Detail Record

Bản ghi dữ liệu cước, bản ghi chi tiết cước

Network

Mạng lõi chuyển mạch kênh

Trang 4

Protocol

Protocol

Giao thức nhận thực mở rộng

Communications

Hệ thống viễn thông di động toàn cầu

HTTP Hyper Text Transfer Protocol Giao thức truyền tải siêu văn bản

Force

Nhóm đặc trách kỹ thuật về Internet

Subsystem-Media Gateway Function

Chức năng cổng phương tiện – phân

hệ đa phương tiện IP

Switching Function

Chức năng chuyển mạch dịch vụ đa phương tiện IP

Trang 5

IP Internet Protocol Giao thức Internet

Network

Mạng truy nhập kết nối IP

Switching Function

Chức năng chuyển mạch dịch vụ đa phương tiện IP

Trang 6

MID Media stream identification Nhận dạng luồng phương tiện

Bộ điều khiển chức năng tài nguyên

đa phương tiện

Requirements

Yêu cầu server truy nhập mạng

Chuyển mạch gói; server hiện thời

Network

Mạng điện thoại chuyển mạch kênh công cộng

In User Service

Dịch vụ người sử dụng quay số nhận thực từ xa

Trang 7

SA Security association Liên kết bảo mật

SLF Subscription Locator Function Chức năng định vị đăng ký thuê bao

Protocol

Giao thức quản lý mạng đơn giản

Protocol

Giao thức điều khiển truyền dẫn

Trang 8

UA User Agent Tác nhân người dùng

Telecommunications System

Hệ thống viễn thông di động toàn cầu

Module

Môđun nhận dạng thuê bao toàn cầu

network

Mạng truy nhập vô tuyến mặt đất UMTS

Trang 9

CHƯƠNG 1: TỔNG QUAN VỀ GIAO THỨC DIAMETER

1.1 Giới thiệu:

Giao thức AAA RADIUS được phát triển vào năm đầu thập niên 90 Tại thời điểm đó Internet sử dụng rất khác, mọi người sử dụng quay số để kết nối Internet Người sử dụng muốn truy cập vào Internet đến một Server cụ thể nào đó, người đó phải cung cấp thông tin về user và password Trong hầu hết các trường hợp, thông tin về user name và password không được lưu ở máy chủ đáp ứng truy cập mà được lưu ở một nơi khác, có thể là Lightweight Directory Access Protocol (LADP) Do đó nảy sinh vấn đề cần một giao thức truyền thông đáng tin cậy để trao đổi thông tin giữa máy chủ truy cập và máy lưu thông tin về user name và password Vì thế, năm 1995 RADIUS ra đời, được dùng để chứng thực, quản lý quyền truy cập dịch vụ, thông tin tài khoản người dùng Giao thức AAA (Authentication, Authorization and Accounting) là giao thức cho việc chứng thực, cấp phép và tính cước

Khi công nghệ di động ngày càng phát triển thì RADIUS không đáp ứng được yêu cầu về QoS và không hỗ trợ chuyển vùng Điều này là một trở ngại lớn trong sự phát triển dịch vụ Cùng với sự phát triển của web 2.0 và sự tăng lên không ngừng của các router và server truy nhập mạng (NAS) do đó yêu cầu thay đổi và cần có giao thức để thay thế RADIUS

Vào tháng 9 năm 2003 một giao thức AAA Diameter mới được IETF chuẩn hóa trong RFC 3588 Giao thức Diameter được phát triển giải quyết vấn đề mà RADIUS còn bỏ ngỏ Trong ứng dụng mới như mạng truy nhập nội bộ không dây (WLAN) và Voice over IP (VoIP) Diameter tốt hơn và phù hợp hơn đối với người dùng chuyển vùng

Giao thức Diameter bao gồm: Diameter Base Protocol (giao thức Diameter nền tảng) và Diameter Application (ứng dụng Diameter) Giao thức Diameter nền tảng cần thiết cho việc phân phối các đơn vị dữ liệu, khả năng thương lượng, kiểm soát lỗi và khả năng mở rộng Ứng dụng Diameter định nghĩa những ứng dụng dữ liệu riêng Diameter dựa trên RFC 3588 được chọn là giao thức AAA trong mạng IMS

Hiện tại giao thức Diameter được dùng để tập trung, hạn chế, hỗ trợ truy nhập mạng IP Giao thức Diamter được thiết kế nhằm cải tiến giao thức RADIUS

Trang 10

Đích đến của nó là tối đa hóa khả năng và cho chuyển đổi đơn giản hơn từ RADIUS sang Diameter Vi dụ với bản tin Diameter, như bản tin RADIUS nhưng

có thêm cặp giá trị thuộc tính (AVP)

Hình 1.1 Tổng quan về Diameter

1.2 Khung Diameter

Hình 1.2 Kiến trúc phân lớp giao thức Diameter

Giao thức Diameter bao gồm giao thức cơ bản và ứng dụng giao thức Diameter chỉ ra trong hình 2.2 Các ứng dụng mở rộng của giao thức Diameter cơ bản:

Hình 1.3 Giao thức cơ bản Diameter

Trang 11

Trong giao thức cơ bản chức năng được hỗ trợ cho tất cả các dịch vụ, như là

cơ chế truyền tin cậy, truyền bản tin và xử lý lỗi

Giao thức cơ sở Diameter (Diameter Base Protocol) sử dụng cả giao thức điều khiển truyền dẫn – Transmission Control Protocol (TCP) [RFC 793] và Giao thức điều khiển luồng truyền dẫn – Stream Control Transmission Protocol (SCTP) [RFC 2960] để truyền dữ liệu Sự khác nhau giữa các nút Diameter là liên kết nối với cấu trúc ngang cấp peer-to-peer Khung Diameter cho phép kiểu và cấu trúc ứng dụng push và pull Giao thức cơ bản Diameter định nghĩa tiêu để Diameter và cặp giá trị thuộc tính AVP (AVPs) Ứng dụng có thể mở rộng với việc định nghĩa bản tin mới và các AVP và trong đơn vị dữ liệu giao thức (PDU-Protocol Data Units)

Khả năng thích hợp ngược với giao thức, giao thức Diameter không chia sẻ PDU chung với RADIUS Cần có một bộ dịch để dịch giữa Diameter và RADIUS

1.2 Các thành phần Diameter

Diameter là một giao thức ngang hàng peet-to-peer, tại bất kỳ một thành phần nào cũng có thể thiết lập một yêu cầu Trong Diameter có 3 thành phần chính là: Server, Client và Agent Diameter máy khách là thiết bị đầu cuối của mạng thực hiện truy vấn và sử dụng dịch vụ Tác nhân Diameter có thể là Relay, Proxy, Redirect hoặc Translation (dịch bản tin)

Diameter thiết lập chứng thực, cấp quyền và thanh toán cho từng vùng cụ thể đó là nơi có server đặt trong đó

Thành phần Diameter thực hiện một số yêu cầu trong khi đó một số thì không Một thành phần có thể là một kiểu thành phần hoặc là server đối với một vài yêu cầu, nhưng cũng có thể là thành phần hoặc máy chủ cho yêu cầu khác

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 được nhận 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

Trang 12

1.2.1 Thành phần RELAY (Chuyển tiếp)

Được sử dụng để truyền bản tin tới đích tương ứng, tùy thuộc vào thông tin chứa trong bản tin Thành phần Relay cho phép thay đổi bản tin bằng cách thêm vào hoặc bỏ đi thông tin định tuyến, nhưng không cho phép sửa đổi các phần khác của bản tin Thông tin định tuyến này được thực hiện dựa vào bảng định tuyến được lưu trữ tại nút mạng Bảng định tuyến này chứa các trường sau: tên miền, mã ứng dụng, hoạt động cục bộ, nhận dạng Server, cấu hình tĩnh hoặc động, thời gian hết hạn Thông tin tên miền được chứa trong bản tin UE sử dụng để tìm kiếm một entry Mã ứng dụng ứng với trường Vendor ID trong bản tin Diameter Mã này được định nghĩa bởi IANA, mỗi ứng dụng có một ID khác nhau Ví dụ:

0 Bản tin Diameter

2 Mobile-IP

3 Chức năng tài khoản

Mã ứng dụng được dùng như trường thứ quan trọng thứ hai để tìm kiếm một entry Trường hoạt động cục bộ chứa một trong 4 giá trị: Local, Relay, Proxy, Redirect Dựa vào trường này mà thành phần Relay sẽ biết xử lý gói tin hay chuyển tiếp gói tin Trường nhận dạng Server để xác định nút mạng kế tiếp cần đi đến Cấu hình tĩnh hay động cho biết entry này được cấu hình tĩnh hoặc tự động tìm ra nút kế tiếp Nếu là cấu hình động thì có thời gian hết hạn mà entry đó phải được cập nhật lại

Tổng hợp những yêu cầu đến các miền khác nhau và phân bố gói tin đến đích thích hợp giúp giảm nhẹ cấu hình máy chủ truy cập cũng như thuận tiện cho việc thay thế, thêm hoặc bỏ máy chủ truy cập

Thành phần Relay sẽ không duy trì trạng thái phiên mà chỉ duy trì trạng thái giao dịch để thực hiện chức năng Accounting, tức là ghi lại các hành động của

người dùng sau khi đã thực hiện một chức năng nào đó trong hệ thống

Hình 1.4: Thành phần Relay

Trang 13

1.2.2 Thành phần PROXY (Ủy quyền)

Giống như thành phần Relay, thành phần Proxy định tuyến các bản tin Diameter sử dụng bảng định tuyến Thành phần Proxy có thể được sử dụng cho truyền gói tin, nhưng không giống như thành phần Relay, thành phần Proxy có thể thay đổi nội dung bản tin chứa bên trong và do dó cung cấp giá trị dịch vụ, bắt buộc qui tắc trên bản tin khác nhau, hoặc thực hiện quản lý nhiệm vụ cho vùng cụ thể Khi mà thành phần Proxy thay đổi bản tin thì việc không có bảo mật đầu cuối cũng

có thể xảy ra

Hình 1.5: Thành phần PROXY

1.2.3 Thành phần REDIRECT (Gửi lại)

Thành phần Redirect có thể cho một Agent biết nơi để tìm thấy Diameter server, ví dụ như server mạng nhà cho từng người dùng cụ thể Hoạt động như 1 kho chứa cấu hình tập trung cho nút Diameter khác Khi nó nhận 1 bản tin, nó kiểm tra trong bảng định tuyến và gửi trở lại bản tin trả lời với thông tin gián tiếp tới bên gửi Bởi vì thành phần Redirect không thiết lập bản tin, chúng cũng không thay đổi bản tin Khi một yêu cầu vào thành phần Proxy, thành phần Redirect cho biết server mạng nhà được đặt ở đâu Sau đó thành phần Proxy có thể thiết lập kết nối tới server mạng nhà Hình 1.6 chỉ ra rằng làm thực thể Redirect hoạt động như thế nào Hình 1.6 dưới đây là giống như hình 1.5 nhưng lúc này tác nhân Proxy không biết địa chỉ để liên lạc với nút Diameter về example.com Do đó nó tìm kiếm thông tin trong thực thể Redirect trong vùng của nó để lấy địa chỉ:

Trang 14

Diameter Client Thực thể

Diameter Proxy

Diamerter Server

miền khác

Tìm kiếm (example.com) -> xử lý nội bộ

Example.com Example.net

Thành phần Diameter REDIRECT (gửi lại)

2 Yêu cầu 3 Gửi lại

Hình 1.6: Thành phần Redirect

Vậy, thành phần Redirect thực hiện việc định tuyến các bản tin sang tên miền khác Nó đã sử dụng bảng định tuyến để xác định chặng tiếp theo của đường đi đến đích đã được yêu cầu Thay vì tự định tuyến những yêu cầu, thành phần Redirect sẽ

đáp ứng lại địa chỉ của chặng kế tiếp để thành phần Proxy định tuyến

1.2.4 Thành phần TRANSLATION (Dịch)

Trong những thành phần đã có, có thành phần đặc biệt gọi là thành phần dịch Tương ứng với tên gọi của thành phần này chức năng chính của nó chính là chuyển đổi bản tin từ giao thức AAA sang dạng khác Thực thể Translation có thể cung cấp khả năng tương thích ngược

Hình 1.7: Thực thể Diameter Translation

Hình 1.7 chỉ ra rằng cách 1 thực thể Translation chuyển từ giao thức Radius sang giao thức Diameter Thành phần Translation sử dụng để tương thích với các dịch vụ trên cơ sở hạ tầng mạng sẵn có phổ biến như Radius, Tacacs,

Trang 15

1.4 Cấu trúc bản tin của Diameter

Bản tin Diameter chứa một header và một số cặp giá trị thuộc tính AVP Header gồm nhiều trường với dữ liệu dạng nhị phân giống header của giao thức IP

Hình 1.8: Cấu trúc bản tin Diameter

1.4.1 Cấu trúc Header

Application – ID Hop – by – Hop Identifier End – to – End Identifier

Hình 1.9: Cấu trúc Header của giao thức Diameter

Giải thích ý nghĩa các trường:

 Version: được thiết lập bằng 1, ứng với phiên bản hiện nay của giao thức

Diameter là 1

 Command Flags: trường này dài 8 bit Có dạng RPETrrrr, có ý nghĩa như sau:

 R (request): nếu bằng 1, đây là bản tin yêu cầu Nếu bằng 0 là bản tin đáp ứng

 P (proxiable): nếu bằng 1, bản tin có thể chuyển tiếp bởi Proxy, Relay hoặc Redirect Nếu bằng 0 thì bản tin sẽ được xử lý tại nút

 E (error): Nếu bằng 1, bản tin đáp ứng chữa lỗi giao thức, và bản tin sẽ không phù hợp với mô tả ABNF Nếu bằng 9 trong bản tin yêu cầu và không lỗi

 T (potentially re-transmitted massage): Bít này bằng 1 khi liên kết bị đứt, bản tin yêu cầu bị trùng hoặc không có trả lời từ Server

 r: dự trữ, luôn bằng 0

 Command Code: trường này dài 24 bit, được quản lý bởi IANA, giá trị từ 0 –

24 dùng riêng cho Radius, 16777214 và 16777215 dùng thí nghiệm, các số còn lại dùng trong giao thức Diameter

Trang 16

 Application-ID: dài 32 bit, dùng để xác định tên ứng dụng do IANA quản lý

Ứng dụng có thể là một ứng dụng dành cho việc chứng thực, một ứng dụng quản lý tài khoản người dùng hoặc một ứng dụng cụ thể của một nhà sản xuất nào đó Nó là một dãy số từ 0x00000001 đến 0x00ffffff Sau đây là một số Application-ID:

Application ID trong header phải giống với nội dung chứa trong AVP

 Hop-by-Hop Identifier: dài 32 bit, giúp phù hợp giữa bản tin yêu cầu và đáp

ứng trong 1 kết nối trong 1 thời gian

 End-to-End Identifier: xác định bản tin bị trùng

1.4.2 AVP (Attribute value pair)

AVP chứa thông tin chứng thực, ủy quyền, và thông tin về tài khoản người dùng để định tuyến, bảo mật, thông tin cấu hình có liên quan đến yêu cầu và đáp ứng bản tin Mỗi AVP chứa AVP header và AVP data

Giải thích ý nghĩa các trường:

Trường cờ AVP, 8 bit

Trang 17

Nếu đặt, bảo mật đầu cuối được cần đến

Reserved, trường dành riêng, 5 bit

Kích cỡ của tiêu đề AVP và dữ liệu trong các byte

Trường chiều dài, cho biết chiều dài AVP không có phần độn

Dữ liệu Diameter AVP có thể có kiểu định dạng sau: OctetString, Interger32, Interger64, Unsigned32, Unsigned64, Float32, Float64 và Grouped

Grouped các AVP được sử dụng cho nhiều AVP trong 1 AVP Trong trường hợp này trường dữ liệu AVP chứa nhiều AVP

Trường Vendor ID, 32 bit

Trường này được đưa ra khi mà bit V được đặt trong trường cờ của AVP Trường này chứa IANA đã gán giá trị “Mã quản lý cá nhân mạng SMI” (SMI Network Management Private Enterprise Codes), được mã hóa theo thứ tự Bất kì nhà sản xuất đều bổ sung một Vendor-specific Diameter AVP để sử dụng Vendor

ID của riêng họ với quản lý không gian địa chỉ AVP của riêng mình, đảm bảo rằng chúng không xung đột với bất kì AVP vendor-specific của các nhà sản xuất khác, và trong ứng dụng tương lai Khi mà trường này không có thì phải chèn thêm các bit giá trị 0 vào

Trường mã lệnh 32 bit

Khi kết hợp với định danh nhà sản xuất thì thuộc tính được định danh duy nhất Giá trị AVP từ 1 đến 255 được dành riêng cho RADIUS mà không có trường Vendor ID Giá trị AVP từ 256 trở lên sử dụng cho Diameter, được cấp phát bởi

Trang 19

1.5 Một số đặc điểm của giao thức Diameter

1.5.1 Vận chuyển

Giao thức Diameter sử dụng cả 2 giao thức truyền tải TCP và SCTP Tuy nhiên SCTP được chọn nhiều hơn trong các kết nối có định hướng giữa các thành phần Diameter, nó có thể chia nhiều luồng độc lập vào trong một kết nối SCTP, thay vì giữ tất cả các luồng đó riêng như trong TCP Diameter khách hỗ trợ 1 trong

2 giao thức, trong khi đó các thực thể khác và server phải hỗ trợ cả 2 Một nút Diameter có thể khởi tạo kết nối từ port nguồn tới một đích mà nó chấp nhận kết nối, và phải chuẩn bị để nhận kết nối trên cổng 3868 Một cơ chế là không sử dụng

Trang 20

nhiều hơn 1 kết nối vận chuyển với nút ngang cấp, trừ phi trường hợp nhiều nút tồn tại và mỗi trường hợp là kết nối riêng biệt và được cho phép xử lý

Khi không có kết nối vận chuyển tồn tại với nút ngang cấp, việc cố gắng kết nối theo chu kì sẽ được tiến hành Cách cư xử này được thiết lập thông qua Tc Timer, với giá trị là 30s

i SCTP

SCTP được thiết kế để truyền bản tin báo hiệu PSTN trên mạng IP, nhưng cũng có thể cho các ứng dụng khác rộng hơn SCTP được phát triển sau và có cấu trúc phức tạp hơn TCP SCTP được thiết kế để sử dụng trong điều kiện yêu cầu độ tin cậy và gần thời gian thực, nó cung cấp những dịch vụ sau tới người dùng:

 Xác thực lỗi truyền của người dùng

 Phân chia tệp dữ liệu để phù hợp với MTU của từng mạng

 Chuỗi bản tin người dùng được sắp xếp với đa luồng, với sự tùy chọn thứ tự nơi đến của từng bản tin riêng biệt

 Đóng gói tùy chọn nhiều bản tin người dùng vào trong một gói SCTP

 Khả năng chịu đựng lỗi mạng thông qua hỗ trợ multi-homing một trong hai hay cả hai đầu cuối liên kết

Thiết kế SCTP bao gồm tránh tắc nghẽn và chống lại quá trình flood và tấn công giả mạo

Trang 21

Giải thích ý nghĩa các trường:

 Một gói chứa một đoạn khởi đầu có giá trị thẻ xác minh là 0

 Gói chứa một đoạn SHUT_DOWN với bit T được đặt có xác nhận thẻ copy

từ gói với đoạn SHUT_DOWN

 Gói chứa một đoạn ABORT sẽ có xác nhận thẻ đã copy từ gói với ABORT

đã được gửi

Tổng kiểm tra 32 bit

Chứa tổng kiểm tra của gói tin SCTP STCP sử dụng thuật toán Adler-32 cho tính toán tổng kiểm tra

ii TCP

Giao thức TCP (Transmission Control Protocol) cung cấp dịch vụ truyền thông dữ liệu định hướng truyền thống cho các chương trình - dịch vụ chuyển dòng (stream) tin cậy TCP cung cấp một mạch ảo, còn được gọi là kết nối Nó cấp khả năng đứt quãng, kiểm tra lỗi và điều khiển luồng

Trang 22

Hình 1.12: Cấu trúc tiêu đề TCP

Giải thích ý nghĩa các trường:

 Source port, Destination port (cổng nguồn, cổng đích): chứa các giá trị cổng TCP để xác định các chương trình ứng dụng tại hai đầu kết nối Mỗi khi TCP nhận gói dữ liệu từ IP, nó sẽ gỡ bỏ phần đầu IP và đọc phần đầu TCP

 Sequence Number (số thứ tự): xác định vị trí trong chuỗi các byte dữ liệu trong segment của nơi gửi

 Acknowledgment Number (số xác nhận): xác định số octet mà nguồn đang đợi để nhận kế tiếp Lưu ý là Sequence Number để chỉ đến lượng dữ liệu theo cùng chiều với segment, trong khi giá trị Acknowledgment Number để chỉ đến dữ liệu ngược lại với segment đến

 Header length (độ dài tiêu đề): chứa một số nguyên để xác định độ dài của phần đầu segment, được tính theo bội số của 32 bit Giá trị này là cần thiết vì

có phần Options có độ dài thay đổi, tùy thuộc vào những lựa chọn đã được đưa vào

 Unused (dự phòng): được dành riêng để sử dụng trong tương lai

 Flags (bít mã): gồm có 6 bít để xác định mục đích và nội dung của segment, diễn dịch các nội dung trong phần đầu dựa vào nội dung các bit Ví dụ segment chỉ chuyển tải ACK, hoặc chỉ chuyển đưa dữ liệu hay để tải những yêu cầu để thiết lập hoặc ngắt nối

 Window (cửa sổ): thông báo cho máy tính đầu cuối kích thước vùng đêm cho quá trình truyền

 Urgent pointer (con trỏ khẩn cấp): yêu cầu kết nối gửi dữ liệu ngoài dòng xác định, chương trình nhận phải được thông báo lập tức ngay khi dữ liệu đến cho dù nó nằm ở đâu trong vùng dữ liệu Sau khi xử lý xong dữ liệu khẩn

Trang 23

cấp, TCP thông báo cho chương trình ứng dụng trở về trạng thái thông thường

Đơn vị truyền giữa hai phần mềm TCP trên hai máy được gọi là segment Các segment được trao đổi để thiết lập kết nối, để truyền dữ liệu, để gửi các ACK (thông báo xác nhận đã nhận dữ liệu), để thông báo kích thước của cửa sổ (nhằm tối

ưu hóa quá trình truyền và nhận dữ liệu) và để ngắt kết nối

Nút Diameter có tối thiểu 2 nút trên miền, nút thứ cấp và nút sơ cấp Các nút Diameter được kết nối được lưu trữ trong bảng ngang cấp

Việc khám phá ngang cấp làm cho giao thức Diameter đơn giản hơn và hiệu quả hơn Việc làm này diễn ra khi mà nút có thể cần khám phá ra thực thể Diameter đầu tiên hoặc khi máy khách cần khám phá ra thực thể khác cho quá trình xử lý xa hơn Cơ chế này dựa trên chuẩn IETF Cơ chế này được cấu hình bằng tay cho vị trí thực thể (cấu hình tĩnh), Giao thức vị trí dịch vụ (SRVLOC) (RFC 2608) và Server tên miền (DNS) (RFC 1034, RFC 1035)

Khi hai nút muốn thiết lập kết nối, chúng sử dụng bản tin trao đổi để tìm kiếm các nút và khả năng trao đổi Khả năng trao đổi có thể sử dụng tại các nút kế tiếp Sau khi yêu cầu khả năng trao đổi luôn là bản tin trả lời khả năng trao đổi

Khi nút mất kết nối, yêu cầu ngắt kết nối được sử dụng để cho nút biết việc ngắt kết nối tầng vận chuyển, và nút sẽ không kết nối lại trừ khi nó có lý do nào đó Khi nút ngắt kết nối mà không có bản tin Disconect-Peer nút sẽ cố gắng liên lạc lại theo chu kì

Đối với 1 nút Diameter, khám phá vị trí ngang cấp cũng giống như cấu hình định tuyến sẽ được lưu trữ sử dụng 2 bảng Diameter

Trang 24

Peer Table, bảng ngang cấp được sử dụng để lưu trữ địa chỉ host của các nút Diameter Thông tin khác được tìm thấy một cách tự động như là tình trạng, thông tin bảo mật, cũng có trong bảng định tuyến

Peer Routing Table, yêu cầu chú ý bản tin định tuyến Đầu tiên chính là tên vùng và tên ứng dụng, đó được coi như là tiêu chuẩn cho bản tin định tuyến Bước tiếp theo chính là lấy được đích bản tin, có thể là Proxy, Relay, Redirect hoặc Local

Cơ chế Local nghĩa là bản tin nên đuợc xử lý nội bộ thay vì chuyển tới nút khác

1.5.2 Kết nối và phiên

Sau khi nút ngang cấp phù hợp được tìm ra, bước thực hiện tiếp theo là kết nối tới nút đó Một kết nối vật lý giữa các nút Diameter được thiết lập Nó là bắt buộc cho giao thức Diameter chạy TCP hoặc SCTP So sánh với UDP, sử dụng trong Radius, 2 giao thức này cung cấp truyền tin cậy hơn, nó có tính chất quan trọng trong ứng dụng trao đổi thông tin thanh toán

Giao thức Diameter đưa ra cấu trúc cơ bản là cấu trúc ngang hàng peer, có thể có hơn nhiều 1 kết nối được thiết lập cho từng nút cụ thể Giao thức Diameter định nghĩa 1 cách rõ ràng nút Diameter phải được thiết lập 1 kết nối giữa

peer-to-2 nút ngang cấp tại vùng nhỏ, hoạt động như là điểm sơ cấp và thứ cấp Dĩ nhiên kết nối sẽ được thiết lập khi cần

So sánh với kết nối, phiên là kết nối logic giữa 2 nút Diameter, và có thể là nhiều kết nối Một phiên trên thực tế là khái niệm các chuỗi các hành động trong khung thời gian, và có tác động lẫn nhau giữa nút Diameter client và Diameter server trong khoảng thời gian được đưa ra Mỗi phiên trong Diameter được kết hợp với 1 nhận dạng phiên (Session –ID) client mà là tổng quát và duy nhất Session-ID được sử dụng để nhận dạng từng phiên riêng biệt trong suốt quá trình liên lạc

Trang 25

client Các thực thể server

Phiên người dùng X

Bảo mật từng chặng Bảo mật từng chặng

Hình 1.13: Phiên và kết nối trong Diameter

Khởi tạo phiên

Như hầu hết kiểu kết nối client-server, 1 phiên Diameter bắt đầu bởi bản tin yêu cầu từ máy khách tới máy chủ Diameter khách sẽ gửi 1 bản tin yêu cầu nhận thực chứa session-id duy nhất không trùng với bản tin khác tới Diameter server (hoặc Diameter proxy nếu bản tin chuyển yêu cầu) Chú ý rằng AVPs được sử dụng cho nhận thực và cấp quyền cho ứng dụng cụ thể và chúng không định nghĩa trong giao thức cơ bản Diameter

Sau khi chấp nhận bản tin yêu cầu nhận thực, Diameter server có thể bao gồm AVP cấp quyền thời gian sống trong bản tin trả lời AVP này được sử dụng để chỉ định thời gian tính bằng giây cho Diameter client cần để nhận thực lại Sau khi hết thời gian Diameter server sẽ kết thúc phiên từ danh sách phiên và xoá tài nguyên cấp phát cho phiên đó

Phiên

Trong suốt phiên, Diameter server có thể bắt đầu bản tin yêu cầu nhận thực lại và cấp quyền lại Với dịch vụ trả cước, kiểu của bản tin yêu cầu được sử dụng để kiểm tra có hay không người dùng vẫn sử dụng dịch vụ, nếu không có Server sẽ bỏ

đi phiên để tránh tình trạng tính thêm cước

Do đó, Origin-State-id AVP được sử dụng cho giao diện của chấp nhận kết thúc phiên Bản tin request của người gửi sẽ bao gồm AVP này, và bởi vì nó được yêu cầu cho giá trị của AVP này bên nhận bản tin yêu cầu này có thể kết luân rằng phiên này đã khoá, theo một cách khác bởi vì thiết bị truy nhập có thể bị ngắt hoặc

Trang 26

bởi vì một vài tình trạng khác Bên nhận bản tin yêu cầu có thể bỏ đi phiên trong danh sách, giải phóng tài nguyên

Kết thúc phiên

Bản tin kết thúc phiên được sử dụng duy nhất trong quá trình nhận thực và cấp quyền và khi mà trạng thái phiên được duy trì Đối với dịch vụ thanh toán, bản tin dừng tính cước được sử dụng

Bản tin kết thúc phiên có thể khởi tạo bởi Diamter khách hoặc Diameter chủ Khi 1 phiên được coi là ngắt, Diameter khách gửi 1 bản tin yêu câu kết thúc phiên tới Diameter server AVP kết thúc có trong bản tin yêu cầu này để nói với Diameter server rằng lý do tại sao phiên lại kết thúc Thông thường, nếu Diameter server tìm thấy phiên nên kết thúc bởi vì người dùng có thể hết tài khoản hoặc chỉ cho mục đích quản trị-Diameter server gửi bản tin yêu cầu huỷ bỏ phiên (Abort-Session-Request) tới Diameter khách Tuy nhiên, Diameter khách có thể quyết định không đóng phiên này lại thậm chí khi nhận được bản tin kết thúc phiên từ server, và nó vẫn để người dùng duy trì dịch vụ

1.5.4 Bảo mật trong Diameter

Các Diameter client, như là NAS (server truy cập mạng) và thực thể di động

hỗ trợ bảo mật IP (IPsec) và hỗ trợ TLS Diameter server phải hỗ trợ cả 2 đó là TLS

và IPsec Giao thức Diameter không được sử dụng khi không có bất kì cơ chế hỗ trợ nào (TLS hoặc IPsec)

Nhiều gợi ý đưa ra rằng IPsec có thể được sử dụng tại biên và trong lưu lượng nội phù hợp đối với NAS để hỗ trợ Có gợi ý đưa ra trong liên miền sử dụng TLS

Khi kết nối Diameter không được bảo vệ bởi IPsec, các bản tin CER/CEA chứa Inband-Security-ID AVP với giá trị của TLS Đối với sử dụng TLS, TLS bắt đầu với cả 2 đầu cuối trong trạng thái mở, sau khi hoàn thành trao đổi bản tin CER/CEA Khi thủ tục bắt đầu TLS hoàn thành, tất cả các bản tin sau sẽ được gửi thông qua TLS Nếu thủ tục bắt đầu thất bại, cả 2 đầu cuối sẽ đóng trạng thái

1.5.5 Thanh toán

Chức năng tổng quát của thanh toán được mô tả trong giao thức cơ bản Thanh toán dựa trên một server với khả năng truyền thời gian thực về thông tin

Trang 27

thanh toán Một mô hình server trực tiếp nghĩa là thiết bị tạo ra bản ghi thanh toán kèm với sự cấp quyền server

Khi một Diameter khách nhận thực và cấp quyền thành công, nó gửi một bản tin thành toán (ACR) tới server Bản tin trả lời (ACA) được sử dụng để đáp ứng lại

Dịch vụ thanh toán có thể là trường hợp ‘1 lần’ hoặc kéo dài trong thời hạn nhất định Khi nó là kiểu thứ hai, bản ghi kiểu thanh toán AVP có giá trị là Start (bắt đầu), Stop (dừng), và có thể là Interm (chuyển tiếp)

Trong giao thức cơ bản một vài AVP được định nghĩa đưa ra trong bản tin thanh toán Đối với ứng dụng khi người dùng nhận dịch vụ từ thiết bị truy nhập khác (ứng với session-id), như là Mobile IPv4, định danh nhiều phiên thanh toán AVP có thể được sử dụng

1.5.6 Cơ chế truyền thay thế và xử lý lỗi

Có 2 kiểu lỗi có thể xảy ra: lỗi giao thức và lỗi ứng dụng Lỗi giao thức là lỗi tại mức cơ bản của giao thức bao gồm vấn đề định tuyến Lỗi ứng dụng là vấn đề với chức năng cụ thể trong ứng dụng Diameter

Khi việc vận chuyển lỗi được phát hiện tại một nút, bản tin đang chờ xử lý sẽ được gửi tới nút thay thế và bit T trong trường cờ sẽ được đặt Đây là cơ chế truyền thay thế của Diameter

Để một nút Diameter thực hiện thủ tục truyền thay thế, đó là điều cần thiết cho nút duy trì hàng đợi bản tin đang chờ xử lý Khi bản tin trả lời được nhận, bản tin yêu cầu tương ứng trong hàng đợi sẽ bị xóa bỏ khỏi hàng đợi Trường định dạng từng chặng hop-by-hop được sử dụng để khớp bản tin trả lời với yêu cầu hàng đợi (RFC 3588)

Để hỗ trợ việc phát hiện lỗi, giao thức Diameter định nghĩa bản tin Dogwatch-Request Khi 2 nút Diameter không thể trao đổi bản tin trong một khoảng thời gian dài, bản tin này được gửi từ một trong số các nút này để phát hiện các vấn đề có thể xảy ra trong mạng Đối với các lỗi khác nhau, giá trị Result-Code AVP cho biết rằng yêu cầu có được gửi thành công hoặc xảy ra lỗi Mỗi bản tin Diameter trả lời có 1 Result-Code AVP

Device-Giá trị Result-Code AVP được sử dụng để báo cáo lỗi giao thức được đưa ra trong bản tin trả lời với bit E được đặt Khi 1 bản tin yêu cầu được nhận mà nguyên

Trang 28

nhân là do lỗi giao thức, 1 bản tin trả lời được gửi trả lại với bit E được đặt, và Result-Code AVP được đặt tương ứng với giá trị lỗi giao thức Khi bản tin trả lời được gửi trở lại bên gửi bản tin yêu cầu, mỗi thực thể Proxy hoặc Relay có thể tác động lên bản tin

Diameter

RELAY 1

Diameter RELAY 2

Diameter RELAY 3

Diameter Home Server

1 Yêu cầu

2 Trả lời + đặt bit E

3 Yêu cầu

Link hỏng

Hình 1.14: Ví dụ về lỗi giao thức và bản tin trả lời

Hình 1.14 đưa ra 1 ví dụ về bản tin chuyển đi bởi Diameter Relay Khi bản

tin được nhận bởi Relay2, và nó phát hiện ra nó không thể gửi bản tin yêu cầu tới server mạng nhà, 1 bản tin trả lời được gửi trả lại với bit E được đặt và Result-Code AVP đặt thành Diameter-Unable-To-Deliver Đưa ra trường hợp lỗi giao thức, Relay1 có tác động đặt biệt, với lỗi đưa ra, nó cố gắng định tuyến bản tin thông qua Relay3 thay thế

Hình 1.15: Ví dụ về lỗi ứng dụng bản tin trả lời

Hình 1.15 đưa ra 1 ví dụ về bản tin Diameter mà nguyên nhân là do lỗi ứng

dụng Khi lỗi ứng dụng xảy ra, bit R trong trường cờ sẽ được xóa và thêm vào Result-Code AVP giá trị phù hợp Ứng dụng lỗi không liên quan tới bất kì proxy hay relay, và do đó bản tin sẽ gửi ngược trở lại tới bên gửi bản tin yêu cầu

Trang 29

1.5.7 So sánh với giao thức RADIUS

Diameter cung cấp những chức năng mà giao thức khác cũng có thể cung cấp, ví dụ như truy nhập mạng như Radius, điều khiển chính sách như dịch vụ chính sách mở chung (COPS) (RFC 2748) và cổng điều khiển như là H.248/Megaco (RFC 3525)

Tuy nhiên giao thức Diameter được thiết kế để bổ sung một số thuộc tính thiếu sót của giao thức Radius như giao thức vận chuyển, bảo mật, các tác nhân hỗ trợ, khả năng thỏa thuận, khám phá ngang hàng, bản tin khởi tạo phục vụ, kích cỡ

thuộc tính dữ liệu tối đa được đưa ra trong bảng 1.2

Bảng 1.2: Tổng kết sự khác nhau giữa Diameter và Radius

hướng (TCP hoặc SCTP)

Giao thức không có hướng

(UDP)

Tác nhân hỗ trợ Relay, Proxy, Redirect,

Bản tin khởi tạo phục vụ

Được hỗ trợ, ví dụ bản tin nhận thực lại, kết thúc

tính

Hỗ trợ duy nhất thuộc tính vendor-specific

Trang 30

Kết luận

Trong chương này đã trình bày một cách tổng quan về giao thức Diameter: lịch sử, khung Diameter, các thành phần Diamter gồm có các thành phần như Relay, Proxy, Redirect, Translation, định dạng bản tin, một số đặc điểm của giao thức cơ bản Diameter như vận chuyển, nút ngang cấp, kết nối và phiên, thanh toán, bảo mật… Như vậy, chương này đã đưa ra cái nhìn tổng quan về một số khía cạnh về giao thức Diameter và đây là nền tảng cho các vấn đề chi tiết liên quan một số thủ tục trong IMS liên quan đến giao thức Diameter

Trang 31

CHƯƠNG II: GIAO THỨC DIAMETER TRONG IMS

2.1 Thủ tục đăng kí và xóa đăng kí mức ứng dụng với giao diện Cx

2.1.1 Đăng kí IMS

Đầu tiên đăng ký IMS, để cho phép UE sử dụng các dịch vụ IMS, UE phải đạt được kết nối IP mang và tìm ra một điểm thực thể IMS, ví dụ P-CSCF Trong trường hợp UE truy nhập GPRS, UE thực hiện thủ tục gia nhập GPRS và kích hoạt một ngữ cảnh giao thức dữ liệu gói (PDP) cho báo hiệu SIP

Đăng ký IMS gồm 2 pha: phần bên trái của hình 2.1 chỉ ra pha đầu tiên – mạng mời gọi UE như thế nào? Phần bên phải của hình 2.1 chỉ ra pha 2- UE đáp trả sự mời gọi và hoàn thành đăng ký ra sao?

1- 2 REGISTER

6 – 7 401

5.Dữ liệu nhận thực

3 Gán S-CSCF

4 REGISTER

P-CSCF I-CSCF S-CSCF

Hình 2.1 Lưu đồ đăng ký IMS mức cao

Đầu tiên, UE gửi một yêu cầu đăng ký SIP để tìm ra P-CSCF Yêu cầu này sẽ bao gồm yêu cầu, nhận dạng được đăng ký và một tên miền mạng nhà (địa chỉ của I-CSCF) P-CSCF xử lý yêu cầu REGISTER và sử dụng tên miền mạng nhà được cung cấp để quyết định địa chỉ IP của I-CSCF I-CSCF lần lượt sẽ liên hệ với server thuê bao nhà (HSS) để tìm các khả năng yêu cầu cho lựa chọn S-CSCF Sau khi lựa chọn được S-CSCF, I-CSCF chuyển yêu cầu REGISTER tới S-CSCF

S-CSCF nhận ra rằng người sử dụng chưa được cấp phép, bởi vậy gói dữ liệu nhận thực từ HSS và thông báo tới người dùng với câu trả lời 401- không được phép Sau đó, UE sẽ tính toán câu trả lời để chứng thực và gửi một yêu cầu REGISTER khác tới P-CSCF P-CSCF lại tìm I-CSCF và I-CSCF sẽ lần lượt tìm S-CSCF Cuối cùng S-CSCF kiểm tra câu trả lời và nếu đúng với profile người dùng tải từ HSS và chấp nhận

Trang 32

đăng ký với câu trả lời 200 OK Ngay khi UE được cấp phép thành công, UE có thể khởi tạo và nhận các phiên Trong thủ tục đăng ký cả UE và P-CSCF đều biết được S-CSCF nào trong mạng sẽ phục vụ UE

Bảng 2.1 Thông tin được lưu trước, trong và sau quá trình đăng ký

Node Trước khi đăng ký Trong khi đăng ký Sau khi đăng ký

UE

Địa chỉ P-CSCF, tên miên

nhà, giấy ủy nhiệm, nhận

dạng người dùng công

khai, nhận dạng người

dùng riêng

Địa chỉ P-CSCF, tên miền mạng, giấy

Địa chỉ P-CSCF, tên miền mạng, giấy ủy

người dùng công khai đăng ký ẩn, nhận dạng người dùng cá nhân,

Điểm vào mạng cuối cùng (S-CSCF), địa chỉ UE, nhận dạng người dùng công khai được đăng ký (và các nhận dạng người dùng đăng ký ẩn), ID nhận

riêng, kết hợp bảo mật, địa chỉ của CCF

I-CSCF

địa chỉ P-CSCF, địa chỉ S-CSCF

Tên hoặc địa chỉ HSS, profile người dùng tên hoặc địa chỉ ủy quyền,

ID người dùng công khai hoặc riêng, địa

Trang 33

Profile người dùng bao gồm cấp nhập trạng thái đăng ký của các nhận dạng người dùng công khai, tên S-CSCF

Trách nhiệm của UE là giữ cho hoạt động đăng ký của nó bằng cách làm tươi đăng ký một cách định kỳ Nếu UE không làm tươi sự đăng ký, khi ấy S-CSCF sẽ im lặng loại bỏ đăng ký khi nào khoảng thời gian đăng ký hết hiệu lực Khi UE muốn đăng ký lại từ IMS, đơn giản UE gửi một yêu cầu REGISTER kể cả giá trị thời gian đăng ký bằng không (hết hiệu lực)

i Luồng thông tin đăng kí với người dùng chưa đăng kí

Đăng kí mức ứng dụng có thể được thực hiện sau khi đã đăng kí truy nhập, và sau đó kết nối IP cho báo hiệu được tích cực từ mạng truy nhập Mục đích của luồng thông tin đăng kí là để các thuê bao có thể chuyển mạng Với các thuê bao di chuyển trong mạng nhà của nó, mạng nhà sẽ thực hiện vai trò của các thành phần mạng nhà và các thành phần của mạng khách

Phiên kết cuối di động cho thuê bao sẽ được định tuyến tới S-CSCF hoặc tới một MGCF (nếu thuê bao đang chuyển mạng vào một mạng kế thừa) Khi một phiên kết cuối di động thiết lập vào một CSCF đã được trao quyền để định tuyến các phiên thì CSCF sẽ truy vấn các thông tin định tuyến từ HSS

Điểm tham chiếu Cx Diameter sẽ hỗ trợ CSCF thu nhận thông tin định tuyến từ HSS Kết quả thu được là các tham số truyền báo hiệu S-CSCF (ví dụ địa chỉ IP)

Mã lệnh cho ứng dụng giao diện Cx/Dx được cấp phát bởi IANA trong IETF RFC 3589 Đối với những câu lệnh này, trường định danh ứng dụng được đặt thành

16777216 (nhận dạng ứng dụng của ứng dụng giao diện Cx/Dx)

Khi một người dùng đăng ký với mạng, UE gửi một yêu cầu REGISTER để tìm

ra P-CSCF, tìm ra thực thể mạng nhà của người dùng, I-CSCF Sau đó I-CSCF trao đổi các bản tin với HSS (UAR và UAA)

Trang 34

Bảng 2.2 Mã lệnh trong giao diện Cx và Dx

Khi I-CSCF nhận được một yêu cầu REGISTER SIP từ P-CSCF qua điểm tham chiếu Mw nó sẽ cầu khẩn một truy vấn trạng thái đăng ký người dùng, được biết trong chuẩn là lệnh yêu cầu cấp phép người dùng (UAR User – Authorization - Request) này bao gồm: Câu lệnh UAR, được chỉ định với trường mã lệnh là 300(3GPP) và bit R được đặt trong trường cờ, được gửi bởi Diameter khác tới Diameter server để yêu cầu cấp quyền đăng kí tới server

Trang 35

 User name AVP – chứa tên người dùng;

 Nhận dạng người dùng chung – nhận dạng để đăng ký; AVP này chứa nhận dạng chung của người dùng trong IMS Cú pháp của AVP này tương ứng SIP URL (IETF RFC 3261 và IETF RFC 2396)hoặc TEL URL (định nghĩa trong IETF RFC 3966 );

 Nhận dạng mạng khách (Visited-Network-Identifier) các nhận dạng mạng IMS khách trong trường hợp chuyển vùng IMS Dựa trên nhận dạng này HSS có thể thực hiện giới hạn chuyển vùng; Mạng nhà dựa vào trường nhận này để tìm mạng khách

 Thông tin định tuyến – bao gồm địa chỉ của HSS nếu CSCF nhận biết Nếu CSCF không biết địa chỉ của HSS, lúc này SLF được sử dụng để quyết định một HSS chính xác;

I- Loại cấp phép – ba giá trị có thể cho loại các phần tử thông tin cấp phép được định nghĩa:

o REGISTRATION – bao gồm giá trị hiệu lực với yêu cầu REGISTER khác 0

Trang 36

o REGISTRATION_CAPABILITIES – bao gồm giá trị hiệu lực trong yêu cầu đăng ký khác 0 và I-CSCF truy vấn các khả năng S-CSCF (ví dụ: khi gán S-CSCF trước đây không đáp ứng)

o DE-REGISTRATION – bao gồm giá trị hiệu lực trong yêu cầu REGISTER

là bằng 0

Sau khi nhận được lệnh UAR, HSS gửi một lệnh trả lời cấp phép người dùng (UAA User- Authorization- Answer) Câu lệnh UAA, được chỉ định với trường mã lệnh là 300(3GPP) và bit R bị xóa trong trường cờ, được gửi bởi Diameter Server để đáp lại yêu cầu trước đó Experimental-Result AVP có thể chứa một giá trị AVP đưa

Trang 37

 Kết quả - cho biết kết quả của lệnh UAR;

 Tên và các khả năng S-CSCF phụ thuộc vào trạng thái đăng ký hiện thời của người sử dụng;

 Các khả năng S-CSCF được gửi về nếu người dùng không có tên S-CSCF được gán trong HSS hoặc nếu I-CSCF yêu cầu các khả năng S-CSCF rõ ràng;

 Mặt khác, tên S-CSCF được gửi trả lại Khi các khả năng được gửi về I-CSCF cần thực hiện lựa chọn S-CSCF

Kết quả là I-CSCF nhận được các khả năng CSCF, miễn là ở đó trước đây CSCF chưa được gán Dựa trên các khả năng nhận được I-CSCF lựa chọn một S-CSCF phù hợp

S-Thông tin khả năng được truyền giữa HSS và I-CSCF trong cặp giá trị thuộc tính (AVP – attribute value pair) các khả năng server AVP các khả năng server bao gồm:

 AVP khả năng bắt buộc - loại AVP này là không đánh dấu và bao gồm các khả năng bắt buộc của S-CSCF Mỗi khả năng bắt buộc có hiệu lực trong mạng của nhà vận hành riêng biệt sẽ được chỉ định một giá trị đơn nhất

 AVP khả năng tùy chọn - loại AVP này là không đánh dấu và bao gồm các khả năng tùy chọn của S-CSCF Mỗi khả năng tùy chọn có hiệu lực trong mạng của nhà vận hành riêng biệt sẽ được chỉ định một giá trị đơn nhất

 AVP tên server - AVP này bao gồm một URI SIP được dùng để nhận dạng một server SIP

Dựa trên các AVP khả năng tùy chọn và bắt buộc, nhà vận hành có thể phân bổ các người dùng giữa các S-CSCF, được quyết định bởi các khả năng khác nhau (các khả năng quy định cho các dịch vụ người dùng, ưu tiên nhà vận hành trên cơ sở mỗi người dùng…) mà mỗi S-CSCF có thể có Trách nhiệm của nhà vận hành là xác định (có thể dựa trên chức năng được đưa ra bởi mỗi S-CSCF đã được lắp đặt trong mạng) chính xác các khả năng bắt buộc và tùy chọn Lựa chọn đầu tiên, I-CSCF sẽ chọn S-CSCF mà có toàn bộ các khả năng bắt buộc và tùy chọn cho người dùng Nếu không thực hiện được, khi đó I-CSCP áp dụng một thuật toán “best-fit” (thích hợp nhất) Không có các thuật toán lựa chọn nào là chuẩn

*[Route - Record]

Trang 38

Sử dụng AVP tên server, một nhà vận hành có thể hướng các người sử dụng đến các S-CSCF đích; ví dụ có một S-CSCF riêng cho cùng công ty hoặc nhóm phần

tử một dịch vụ VPN (mạng riêng ảo) hoặc tạo ra gán S-CSCF rất đơn giản

Quá trình đăng kí với người dùng chưa đăng kí diễn ra như sau:

1 Sau khi UE nhận được kênh báo hiệu từ mạng truy nhập, nó có thể thực hiện đăng kí IMS Để làm điều đó UE gửi luồng thông tin đăng kí tới Proxy (nhận dạng chung, nhận dạng riêng, tên miền mạng nhà, địa chỉ IP của UE)

2 Khi nhận thông tin đăng kí, P-CSCF thực hiện kiểm tra “tên miền mạng nhà”

để tìm thực thể mạng nhà (e g I-CSCF) Proxy sẽ gửi luồng thông tin đăng kí tới I-CSCF (tên/ địa chỉ P-CSCF, nhận dạng chung, nhận dạng riêng, nhận dạng mạng P-CSCF, địa chỉ IP của UE) Một kĩ thuật phân tích tên–địa chỉ được sử dụng để quyết định mạng nhà từ tên miền mạng nhà Nhận dạng P-CSCF là một chuỗi các nhận dạng tại mạng nhà, mạng đó là mạng mà ở đó P-CSCF được lắp đặt (ví dụ nhận dạng mạng P-CSCF có thể là tên miền của mạng P-CSCF)

Hình 2.2: Đăng kí với người dùng chưa đăng kí

3 I-CSCF sẽ gửi thông tin lên giao diện Cx để truy vấn HSS (nhận dạng thuê bao chung, nhận dạng thuê bao riêng, nhận dạng mạng P-CSCF qua giao diện

Dx với bản tin LIR)

Trang 39

HSS sẽ thực hiện kiểm tra người dùng đã được đăng kí hay chưa HSS sẽ chỉ thị người dùng đó có được phép đăng kí vào P-CSCF hay không tùy theo thuộc tính thuê bao của người dùng và những giới hạn của nhà khai thác mạng

4 Đáp ứng truy vấn Cx sẽ được gửi từ HSS tới I-CSCF có chứa tên của S-CSCF

mà HSS biết Nếu như sự kiểm tra ở HSS không thành công, đáp ứng truy vấn

Cx sẽ loại bỏ đăng kí (với bản tin LIA)

5 Nếu như I-CSCF không được cung cấp tên của S-SCF thì I-CSCF sẽ gửi một bản tin Cx-Select-pull (nhận dạng thuê bao chung, nhận dạng thuê bao riêng) tới HSS để yêu cầu các thông tin liên quan đến S-CSCF được yêu cầu để nó

có thể lựa chọn S-CSCF

6 HSS sẽ gửi Cx-select-pull-resp tới I-CSCF

7 I-CSCF sử dụng tên của S-CSCF để có thể quyết định địa chỉ của S-CSCF nhờ kĩ thuật phân tích tên–địa chỉ I-CSCF cũng sẽ quyết định tên của một điểm giao tiếp mạng nhà phù hợp nhờ thông tin nhận được từ HSS Điểm giao tiếp mạng nhà có thể là chính S-CSCF hoặc một I-CSCF phù hợp trong trường hợp ẩn cấu hình mạng Nếu một I-CSCF được lựa chọn như một điểm giao tiếp mạng nhà để thực hiện ẩn cấu hình mạng, nó sẽ khác với I-CSCF đóng vai trò tiếp nhận thông tin đăng kí, và nó sẽ cho phép nhận tên các S-CSCF từ thông tin giao tiếp nhà I-CSCF sẽ gửi luồng thông tin đăng kí (tên/ địa chỉ của P-CSCF, nhận dạng chung, nhận dạng riêng, nhận dạng mạng P-CSCF, địa chỉ IP của UE, I-CSCF (THIG) trong trường hợp mạng muốn ẩn cấu hình) tới S-CSCF đã được chọn đó Điểm giao tiếp mạng nhà sẽ được P-CSCF sử dụng để gửi báo hiệu thiết lập phiên tới mạng nhà

8 S-CSCF sẽ gửi Cx-put (nhận dạng chung, nhận dạng riêng, tên S-CSCF) tới HSS HSS sẽ lưu trữ tên S-CSCF cho thuê bao đó (Sử dụng câu lệnh SAR)

9 HSS sẽ gửi Cx-put-resp tới I-CSCF để báo nhận bản tin Cx-put đã gửi (Sử dụng câu lệnh SAA)

10 Khi nhận thông tin từ Cx-put- resp, S-CSCF sẽ gửi luồng thông tin Cx-pull (nhận dạng thuê bao chung, nhận dạng thuê bao riêng) tới HSS để cho phép tải về các thông tin có liên quan tới các thuộc tính thuê bao cho nó S-CSCF

sẽ lưu trữ các tên/ địa chỉ của P-CSCF khi được cung cấp từ mạng khách Sự

mô tả tên và địa chỉ này để mạng nhà có thể chuyển tiếp báo hiệu phiên kết thúc tiếp đó tới UE (sử dụng bản tin PAR)

Trang 40

11 HSS gửi trả lời bằng bản tin Cx-pull-resp tới S-CSCF Thông tin người dùng được chuyển từ HSS tới S-CSCF gồm một hay nhiều thông tin tên/ địa chỉ cần cho quá trình truy nhập các mặt bằng điều khiển dịch vụ khi người sử dụng đã được đăng kí tại S-CSCF S-CSCF sẽ lưu trữ thông tin cho người dùng đã được chỉ định Hơn nữa thông tin tên/ địa chỉ, thông tin bảo mật cũng có thể được gửi cho S-CSCF sử dụng (Sử dụng bản tin PAA)

12 Dựa trên bộ lọc tiêu chuẩn, S-CSCF sẽ gửi thông tin đăng kí tới mặt bằng điều khiển dịch vụ và thực hiện bất cứ thủ tục điều khiển dịch vụ thích hợp nào

13 S-CSCF sẽ đáp lại luồng thông tin 200 OK (thông tin giao tiếp mạng nhà) tới I-CSCF Nếu một I-CSCF được lựa chọn như một điểm giao tiếp mạng nhà để thực hiện ẩn cấu hình mạng, I-CSCF sẽ thực hiện mã hóa địa chỉ S-CSCF vào trong thông tin giao tiếp mạng nhà

14 I-CSCF sẽ gửi thông báo 200 OK tới P-CSCF I-CSCF sẽ giải phóng tất cả thông tin đăng kí sau khi gửi luồng thông tin 200 OK

15 P-CSCF sẽ lưu trữ thông tin giao tiếp mạng nhà và sẽ gửi luồng thông tin 200

OK tới UE

ii Luồng thông tin đăng kí lại cho người dùng đã đăng kí

Đăng kí lại mức ứng dụng theo định kì được thiết lập bởi UE để làm tươi lại một sự đăng kí đã tồn tại hoặc để cập nhật những thay đổi về trạng thái đăng kí của

UE Đăng kí lại được thực hiện theo cách xử lí như “luồng thông tin đăng kí với người dùng chưa đăng kí” Khi được khởi tạo bởi UE dựa vào thời gian đăng kí đã được thiết lập trong lần đăng kí trước, UE sẽ giữ một bộ định thời ngắn hơn so với định thời đăng

kí ở mạng

Ngày đăng: 30/10/2015, 17:48

HÌNH ẢNH LIÊN QUAN

Hình  1.6: Thành phần Redirect - tìm hiểu về giao thức diameter
nh 1.6: Thành phần Redirect (Trang 14)
Hình  2.2: Đăng kí với người dùng chưa đăng kí - tìm hiểu về giao thức diameter
nh 2.2: Đăng kí với người dùng chưa đăng kí (Trang 38)
Hình  2.3:  Đăng kí lại với người dùng đã được đăng kí - tìm hiểu về giao thức diameter
nh 2.3: Đăng kí lại với người dùng đã được đăng kí (Trang 41)
Hình  2.5:  Xóa đăng kí khởi tạo mạng – hết thời gian đăng kí - tìm hiểu về giao thức diameter
nh 2.5: Xóa đăng kí khởi tạo mạng – hết thời gian đăng kí (Trang 46)
Hình  2.7:  Xóa đăng kí ứng dụng khởi tạo mạng-mặt bằng dịch vụ - tìm hiểu về giao thức diameter
nh 2.7: Xóa đăng kí ứng dụng khởi tạo mạng-mặt bằng dịch vụ (Trang 49)
Hình  2.9:  Đăng kí trên SLF(trường hợp 2) - tìm hiểu về giao thức diameter
nh 2.9: Đăng kí trên SLF(trường hợp 2) (Trang 55)
Hình  2.12:  Kiến trúc tính cước  IMS ngoại tuyến - tìm hiểu về giao thức diameter
nh 2.12: Kiến trúc tính cước IMS ngoại tuyến (Trang 58)
Hình  2.13:  Biểu đồ chuỗi bản tin cho thiết lập phiên (di động) - tìm hiểu về giao thức diameter
nh 2.13: Biểu đồ chuỗi bản tin cho thiết lập phiên (di động) (Trang 63)
Hình  2.14:  Bảng chuỗi bản tin cho thiết lập phiên (kết thúc di động) - tìm hiểu về giao thức diameter
nh 2.14: Bảng chuỗi bản tin cho thiết lập phiên (kết thúc di động) (Trang 64)
Hình  2.15:  Biểu đồ chuỗi bản tin đối với môi trường thay đổi - tìm hiểu về giao thức diameter
nh 2.15: Biểu đồ chuỗi bản tin đối với môi trường thay đổi (Trang 65)
Hình  2.16:  Biểu đồ chuỗi bản tin cho từ bỏ phiên - tìm hiểu về giao thức diameter
nh 2.16: Biểu đồ chuỗi bản tin cho từ bỏ phiên (Trang 66)
Hình  2.17    đưa  ra  sự  giải  quyết  Diameter  mà  yêu  cầu  để  dỡ  bỏ  trên  phiên  SIP - tìm hiểu về giao thức diameter
nh 2.17 đưa ra sự giải quyết Diameter mà yêu cầu để dỡ bỏ trên phiên SIP (Trang 67)
Hình  2.18: Biều đồ chuỗi bản tin cho thiết lập phiên (PSTN khởi tạo) - tìm hiểu về giao thức diameter
nh 2.18: Biều đồ chuỗi bản tin cho thiết lập phiên (PSTN khởi tạo) (Trang 68)
Hình  2.20: Biểu đồ chuỗi bản tin cho dỡ bỏ phiên (PSTN khởi tạo) - tìm hiểu về giao thức diameter
nh 2.20: Biểu đồ chuỗi bản tin cho dỡ bỏ phiên (PSTN khởi tạo) (Trang 70)
Hình  2.21:  Biểu đồ chuỗi bản tin cho gỡ bỏ phiên (IMS khởi tạo) - tìm hiểu về giao thức diameter
nh 2.21: Biểu đồ chuỗi bản tin cho gỡ bỏ phiên (IMS khởi tạo) (Trang 71)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w