HỌc viện công nghệ BƯu chính viễn thông đỒ Án tốt nghiệP ĐẠi họC Đồ án


CHƯƠNG II: NHẬN THỰC TRAO QUYỀN VÀ THANH TOÁN TRONG IMS



tải về 0.54 Mb.
trang5/12
Chuyển đổi dữ liệu15.08.2016
Kích0.54 Mb.
#20189
1   2   3   4   5   6   7   8   9   ...   12

CHƯƠNG II: NHẬN THỰC TRAO QUYỀN VÀ THANH TOÁN TRONG IMS

2.1 Giao thức Diameter


Giao thức Diameter được xác định như một giao thức cơ sở của bộ các ứng dụng Diameter bổ xung chức năng giao thức cơ sở. Giao thức cơ sở chứa chức năng cơ bản và được thực thi trong các nút Diameter, tính độc lập của các ứng dụng đặc biệt này. Các ứng dụng được mở rộng từ các chức năng cơ sở được điều chỉnh cho sử dụng đặc biệt của Diameter trong môi trường đặc biệt. Chẳng hạn, Có một ứng dụng được điều chỉnh cho cấu hình máy chủ truy nhập mạng như cho Ipv4 di động, cho điều khiển thẻ và thậm chí cho SIP. Các ứng dụng mới được phát triển như mở rộng vì các ứng dụng mói được phát triển khi yêu cầu. Hình 2.1 mô tả mối quan hệ giữa giao thức cơ sở Diameter và một số ứng dụng.



Hình 2. 1 Giao thức cơ sở Diameter và các ứng dụng

Diameter chạy trên giao thức truyền tải tin cậy mà cung cấp điều khiển tranh chấp ( ví dụ TCP, SCTP). Đặc biệt, Diameter không chạy trên UDP. Không giống như RADIUS, bản tin Diameter tổn thất được truyền lại tại mỗi chặng. Diameter cung cấp một bản tin mức ứng dụng để diều khiển trạng thái của các kết nối và cho phép khôi phục trong trường hợp lỗi. Diameter cũng cho phép bản tin thanh toán để định tuyến đến các máy chủ khác nhau như các bản tin xác thực/phân quyền ( đây là trường hợp thực tế trong IMS)

Giao thức cơ sở Diameter xác định thực thể chức năng khác nhau cho mục đích thực hiện các chức năng AAA. Dưới đây là các thực thể.

Diameter client: một thực thể chức năng, thường đặt tại biên của mạng thực hiện diều khiển truy nhập. Ví dụ của Diameter client là máy chủ truy nhập mạng và trong IP di động, phương tiện di động.

Diameter server: một thực thể chức năng điều khiển yêu cầu xác thực, phân quyền, và thanh toán cho cho các lĩnh vực đặc biệt.

Proxy: một thực thể chức năng, bổ xung để chuyển tiếp các bản tin diameter, đưa ra quyết định liên quan đến sử dụng và cung cấp tài nguyên. Một proxy phải điều chỉnh các bản tin để thực hiện quyết định chính sách như điều khiển sử dụng tài nguyên, điều khiển nhận và cung cấp.

Relay: môt thực thể chức năng mà chuyển tiếp các bản tin Diameter, dựa vào thông tin định tuyến liên quan và các thực thể bảng định tuyến. Một Relay thương là trong suốt. Nó có thể điều chỉnh các bản tin Diameter chỉ bằng cách chèn hoặc xóa đi dữ liệu định tuyến liên quan nhưng không điều chỉnh dữ liệu khác.

Redirect agent: một thực thể chức năng xem như từ khách đến các máy chủ và cho phép chúng truyền thông trực tiếp.

Translation agent: một thực thể chức năng mà thực hiện phiên dịch giữa Diameter và các giao thức AAA khác như RADIUS.

Diameter node: một thực thể chức năng mà thực thi giao thức diameter và đóng vai trò như diameter client, diameter server, relay, redirect agent hoặc translation agent.

Diameter là một giao thức ngang hàng khác với giao thức Client/server. Có nghĩa là, không giống với các giao thức cho phép mô hình client/server, trong Diameter bất cứ một hàng nào có thể gửi yêu cầu một cách không đồng bộ đến hàng khác. Chú ý rằng, không giống như giao thức client/server, một Diameter client không là thực thể chức năng mà gửi một trả lời đến yêu cầu. Thay vào đó, Diameter client là thực thể chức năng điều khiển truy nhập, trong đó một Diameter server là thực thể chức năng thực hiện xác thực và phân quyền. Trong Diameter, cả Diameter client và Diameter server có thể gửi cũng như trả lời các yêu cầu.

Bản tin diameter cũng là yêu cầu hoặc trả lời. Một yêu cầu được trả lời bằng một trả lời đơn. Trừ môt số trường hợp, các yêu cầu Diameter luôn luôn được trả lời vì nơi gửi yêu cầu luôn nhận thông tin chính xác về yêu cầu và, trong trường hợp lỗi phía thu có thể dễ dàng khôi phục. Diameter là một giao thức mã hóa nhị phân.

2.1.1 Các phiên Diameter


Chúng ta đã dùng thuật ngữ phiên (session) trong Context của SIP/SDP và với nghĩa là phiên đa phương tiện. Theo SDP (RFC 2327(115) ), một phiên đa phương tiện là : ” một tập hợp phía phát và thu đa phương tiện và các luồng dữ liệu từ phía phát đến phía thu. Một ví dụ của phiên đa phương tiện là hội nghị đa phương tiện.”

Tiêu biểu, một phiên đa phương tiện trong SIP được định giới bởi chuyển giao INVITE va BYE. Diameter cũng giới thiệu cùng một thuật ngữ với một nghĩa rộng hơn và phải cận thận tránh sự rối loạn giữa cả hai thuật ngữ. Dựa theo giao thức cơ sỏ Diameter (RFC 3588) một phiên Diameter là : “một tiến triển liên quan của một sự kiện dành cho hoạt động đặc biệt “

Chẳng hạn, trong Context của một người sử dụng quay đến một máy chủ truy nhập đường truyền một phiên bao gồm tất cả các bản tin Diameter được trao đổi giữa máy chủ truy nhập đường truyền và Diameter server từ thời điểm người sử dụng quay số đến khi kết nối ngắt. Trong trường hợp IMS một phiên Diameter có thể bao gồm tất cả bản tin được trao đổi giữa S-CSCF (đóng vai trò như một Diameter client) và HSS ( đóng vai trò như Diameter server) từ thời điểm người sử dụng đăng kí trong IMS đến khi người dùng không còn đăng kí.

Khi chúng ta dùng thuật ngữ Phiên trong Context của Diameter chúng ta xem như Phiên Diameter như là một phiên đa phương tiện.


2.1.2 Dạng của một bản tin Diameter


Một bản tin Diameter bao gồm tiêu đề 20 octet và một số AVP (attribute value pair). Chiều dài của phần tiêu đề là cố định, nó luôn luôn có trong các bản tin Diameter. Số AVPs là thay đổi, phụ thuộc vào bản tin Diameter thực tế. Một AVP là một khối dữ liệu ( thường xác thực, phân quyền hoặc thanh toán ).



Hình 2. 2 Dạng của bản tin Diameter

Phần tiêu đề được chia thành các trường. Theo hình 2.2 một tiêu đề Diameter bắt đầu vói trường phiên bản (version). Tại thời điểm này chỉ có phiên bản 1. Trường độ dài bản tin (Length) chứa chiều dài của bản tin Diameter bao gồm cả phần tiều đề và các AVP trong tiêu đề Diameter.



Trường cờ lệnh (Command Flag) chỉ ra:

  • Bản tin là yêu cầu hay trả lời;

  • Bản tin là ủy nhiệm hay không

  • Bản tin chứa một lỗi giao thức tương ứng vói dạng của một bản tin Diameter hay không

  • Bản tin là bản tin được phát lại hay không

Trường mã lệnh (Command Code) xác định lện thực ( ví dụ yêu cầu hay trả lời). Các bản tin yêu cầu và trả lời chia sẻ một không gian địa chỉ mã lệnh giống nhau. Cờ trình bày trong trường mã lệnh chỉ ra bản tin là yêu cầu (request) hay trả lời (anwser).

Trường ID ứng dụng ( Application-ID) xác định ứng dụng Diameter để truyền bản tin. Chẳng hạn, trường ID có thể xác định ứng như giao thức cơ sở Diameter, ứng dụng máy chủ truy cập mạng, ứng dụng Ipv4 di dộng hoặc ứng dụng Diameter khác.

Trường nhận dạng chặng – chặng( Hop by hop identifier ) chứa một giá trị mà mỗi chặng thiết lập khi gửi một yêu cầu. Trả lời có cùng số nhận dạng chặng vì một nút Diameter có thể dễ dàng liên hệ trả lời với yêu cầu tương ứng. Mỗi nút Diameter đối với một yêu cầu Diameter thay đổi theo giá trị của trường nhận dạng chặng-chặng ( hop by hop ).

Phía gửi yêu cầu thiết lập giá trị của trường nhận dạng đầu cuối – đầu cuối là một giá trị tĩnh không thay đổi tại mỗi nút khi nút Diameter ủy nhiệm yêu cầu. Cùng vói số nhận dạng host bộ nhận dạng đầu cuối đầu cuối được sử dụng để phát hiện các yêu cầu trùng lặp. Nút Diameter tạo ra một câu trả lời giữ cùng giá trị tìm thấy trong yêu cầu.


2.1.3 Cặp giá trị thuộc tính AVP


Các bản tin Diameter giống như bản tin RADIUS truyền tải một tập hợp của các cặp giá trị thuộc tính (AVPs). Một AVP là một khối dữ liệu. hình 2.6 mô tả cấu trúc của một AVP. Mỗi AVP chứa một mã AVP, cờ, chiều dài AVP, một ID sản xuất tùy chọn, và Dữ liệu.



Hình 2. 3 Cấu trúc của AVP

Mã AVP kết hợp vói trường ID sản xuất (vendor-ID) xác định duy nhất thuộc tính. Sự vắng mặt của trường ID hoặc trường ID với một giá trị là 0 chỉ ra AVP tiêu chuẩn trong một đặc tả của IETF. Các số mã AVP nằm trong dải từ 1 đến 255 xác định thuộc tính từ hoặc đã định nghĩa bởi RADIUS. 256 số AVP và cao hơn xác định thuộc tính riêng của Diameter.



Trường cờ chỉ rõ:

  • Yêu cầu mã hóa để đảm bảo bảo mật đầu cuối – đầu cuối;

  • Hỗ trợ cho AVP là bắt buộc hoặc tùy chọn. Nếu phía phát xác định hỗ trợ cho AVP là bắt buộc và phía thu không hiểu AVP thì yêu cầu Diameter bị từ chối;

Trường vendor-ID có thể có hoặc không.

Trường chiều dài AVP xác định độ dài AVP bao gồm mã AVP, chiều dài AVP, cờ, Vendor-ID (nếu có) và trường dữ liệu.

Trường dữ liệu chứa dữ liệu riêng đối vói thuộc tính. Trường có chiều dài là 0 hoặc nhiều octet. Chiều dài dữ liệu bắt nguồn từ trường chiều dài AVP.

Giao thức cơ sở Diameter xác định một số dạng của trường dữ liệu: Octetstring, interger32, interger64, unsigned32, ungisn64, Float32, Float64,và Grouped.

Diameter cung cấp các ứng dụng bắt nguồn từ các dạng của AVP. Giao thức cơ sở đã định nghĩa một số loại AVP, vấn đề quan trong nhất của AVP như sau.


  • Địa chỉ được chuyển thành địa chỉ IPv4 hoặc IPv6

  • Thời gian (time) để trình bày ngày và giờ

  • UTF8String để trình bày sâu kí tự mã hóa UTF-8.

  • DiameterIdentity để chuyển tên miền tiêu chuẩn đầy đủ của nút Diameter.

  • DiameterURI để chuyển đổi một AAA hoặc AAAS URI.

  • Enumerated, một giá trị thuộc về số thể hiện vài ngữ nghĩa.

2.1.4 AAA và AAA URIs


Giao thức AAA có thể dùng aaa hoặc aaas URI để xác định tài nguyên AAA. Aaas URI chỉ rõ bảo mật truyền tải được sử dụng, Cấu trúc của URIs

“ aaa :// “ FQDN [ port ] [transport ] [protocol]

“aaas:// “ FQDN [port ] [transprot ] [protocol ]

Port = “:”1*DIGIT

Transport = “;transport=”transport-protocol

Protocol = “;protoco=” aaa-protocol

Transport-protocol = { “tcp”/”sctp”/”udp”}

Aaa-protocol ={“diameter”/ “radius”/ “taccacs +”}

Trong đó FQDN là tên miên tiêu chuẩn đầy đủ. URIs có thể thêm số cổng tùy chọn, một giao thức truyền tải tùy chọn, hoặc một giao thức tùy chọn để truy nhập tài nguyên AAA. Nếu số cổng không được biểu diễn cổng Diameter ngầm định (3868) được giả định. Nếu tham số giao thức không được biểu điễn, giao thức SCTP được sử dụng. Nếu tham số giao thức không được biểu diễn, Diameter được sử dụng. chúng ta cần chú ý rằng aaa và aaas URI có thể thích nghi Diameter, RADIUS, và các giao thức khác.

Vài ví dụ của aaa và aaas URIs:

aaa:// server.homel.net

aaas:// server.homel.net

aaa:// server.homel.net:8868

aaa:// server.homel.net;transport=tcp,protocol=diameter


2.1.5 Các lệnh cơ sở của Diameter


Command-name

Abbreviation

Command code

Abort-Sessionnn-Request

ASR

274

Abort-Session-Answer

ASA

274

Accounting-Request

ACR

271

Accouting-Answer

ACA

271

Capabilities-Exchange-Request

CER

275

Capabilities-Exchange-Answer

CEA

275

Device-Watchdog-Request

DWR

280

Device-Watchdog-Answer

DWA

280

Disconnect-Peer-Request

DPR

282

Disconnect-Peer-Answer

DPA

282

Re-Auth-Request

RAR

258

Re-Auth-Answer

RAA

258

Session-Termination-Request

STR

275

Session-Termination-Answer

STA

275

Bảng 2. 1 Các lệnh cơ sở Diameter

Chúng ta đã biết các bản tin Diameter yêu cầu hoặc trả lời. Một yêu cầu và bản tin trả lời tương ứng được xác định bởi một mã lệnh chung trong phần tiêu đề Diameter. Mã lệnh là một số chỉ rõ hành động của Diameter server cần thực hiện. Khi một yêu cầu và trả lời tương ứng của nó dùng chung không gian địa chỉ mã lệnh, chúng ta hướng đến trường cờ lệnh (command-flag) để tìm ra lệnh nào là yêu cầu hoặc trả lời.

Giao thức cơ sở Diameter (RFC 3588) xác định một số mã lệnh ban đầu. Một ứng dụng có thể mở rộng các lệnh cơ bản đó và thêm ứng dụng mới-các lệnh riêng. Bảng 2.1 chỉ ra tập hợp trả lời và yêu cầu ban đầu được định nghĩa trong giao thức cơ sở Diameter.

Thông thường, mỗi bản tin được viết tắt từ tên nguyên thủy của nó. Chẳng hạn, bản tin Abort-Session-Request (hủy bỏ phiên yêu cầu và trả lời ) được xem như bản tin ASR.



Hủy bỏ phiên yêu cầu và trả lời (ASR, ASA)

Hủy bỏ phiên là rất cần thiết đối với một Diameter server để dừng dịch vụ cung cấp đối với người sử dụng bởi vì có nhiều nguyên nhân mới không thể dự đoán trước khi phiên được trao quyền.

Khi một Diameter server quyết định hướng dẫn Diameter client dùng cung cấp dịch vụ, Diameter server gủi một bản tin yêu cầu hủy bỏ phiên (ASR) đến Diameter client. Diameter client báo cáo thi hành lệnh trong bản tin trả lời hủy bỏ phiên (ASA).

Bản tin yêu cầu và trả lời thanh toán (ACR, ACA)

Một nút Diameter phải cần báo cáo sự kiện thanh toán đối với một Diameter server mà cung cấp các dịch vụ thanh toán. Diameter cung cấp lệnh yêu cầu thanh toán (ACR) trong đó một Diameter client thông báo yêu cầu sử dụng dịch vụ đối với Diameter server. Câu lệnh bao gồm thông tin giúp cho Diameter server ghi lại thời điểm sự kiện bắt đầu hoặc kết thúc dịch vụ.



Yêu cầu và trả lời dung lượng trao đổi (CER, CEA)

Bản tin Diameter đầu tiên mà các nút Diameter trao dổi khi kết nối truyền tải được thiết lập là bản tin yêu cầu dung lượng trao đổi (CER) và bản tin trả lời dung lượng trao đổi (CEA). Bản tin mang nhận dạng của nút và khả năng của nó ( phiên bản giao thức, hỗ trợ ứng dụng Diameter, hỗ trợ cơ cấu bảo mật, …)



Yêu cầu và Trả lời ngắt kết nối ngang hàng (DPR, DPA)

Một nút Diameter thiết lập một kết nối truyền tải vói một nút Diameter ngang hàng mà muốn đóng kết nối truyền tải. trong trường hợp này nút Diameter gửi yêu cầu ngắt kết nối ngang hàng (DPR) đến nút ngang hàng để chỉ rõ ngắt kết nối giao thức truyền tải. Bản tin DPR chuyển ý nghĩa yêu cầu đến nút ngang hàng không tái thiết lập kết nối trừ khi nó là cần thiết.



Yêu cầu và trả lời xác thực lại (RAR, RAA)

Tại bất cứ thời điểm nào, nhưng đặc biệt trong các phiên diễn ra trong thời gian dài, Diameter server phải yêu cầu xác thực lại người sử dụng để xác nhận lại không có vấn đề xảy ra. Một Diameter server muốn xác thực lại người sử dụng gửi một bản tin yêu cầu tái xác thực đến một Diameter client. Client đáp ứng vói bản bản tin tái trao quyền lại.



Yêu cầu và trả lời kết thúc phiên (STR, STA)

Một Diameter client báo cáo đến một Diameter server là có một người dùng muốn dừng sử dụng dịch vụ bằng cách gủi bản tin yêu cầu kết thúc phiên (STR). Diameter server trả lời với bản tin trả lời kết thúc phiên (STA).

Chẳng hạn, nếu một máy chủ dial up báo cáo rằng một kết nối dial up đã ngắt, sau đó Diameter client gửi bản tin STR đến Diameter server.


Каталог: data -> file -> 2015 -> Thang02
Thang02 -> Những câu nói hay về tình yêu bằng Tiếng Anh I used to think that dreams do not come true, but this quickly changed the moment I laid my eyes on you
Thang02 -> Những bài thơ hay về ngày quốc tế phụ nữ 8-3
Thang02 -> Những từ tiếng Anh thường hay viết tắt
Thang02 -> VĂn khấN Đi chùa cầu bình an, may mắn và giải hạn năm mớI
Thang02 -> Exercise 1: Mark the letter A, B, c or d to indicate the correct answer to each of the following questions
Thang02 -> Maersk logistics quốc tế và Việt Nam (Đan Mạch)
Thang02 -> Tài Liệu Bồi Dưỡng Học Sinh Giỏi Lớp 7 Period 1 tenses summary (Tóm tắt)
Thang02 -> Vietnam National University, Hanoi College of foreign languages Post graduate Department o0o nguyễn phưƠng ngọc an Action research on the effects of Pre writing
Thang02 -> Chuyên đề tốt nghiệp Trường Học Viện Tài Chính

tải về 0.54 Mb.

Chia sẻ với bạn bè của bạn:
1   2   3   4   5   6   7   8   9   ...   12




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương